Hola:
1.- Que hay que hacer para que la aplicacion, al instalarse, cree un acceso directo en el "escritorio"??
Tienes que añadir esto al manifest:
<activity android:windowSoftInputMode="stateHidden" android:launchMode="singleTop" android:name="shortcutactivity"
android:label="Add Shortcut" android:screenOrientation="unspecified">
<intent-filter>
<action android:name="android.intent.action.CREATE_SHORTCUT"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
android:name es el nombre en minúsculas de la actividad de acceso directo.
android:label es el título que aparecerá en la lista de accesos directos
Luego en el código debes poner:
Sub Activity_Create(FirstTime As Boolean)
Dim shortcutIntent As Intent
shortcutIntent.Initialize("", "")
shortcutIntent.SetComponent("anywheresoftware.b4a.samples.test/.main") ' <--- cambiar para coincidir con el nombre del paquete / y activity
shortcutIntent.PutExtra("from_shortcut", True)
Dim in As Intent
in.Initialize("", "")
in.PutExtra("android.intent.extra.shortcut.INTENT", shortcutIntent)
in.PutExtra("android.intent.extra.shortcut.NAME", "Prueba Acceso Directo")
in.PutExtra("android.intent.extra.shortcut.ICON", LoadBitmap(File.DirAssets, "LogoPequeño.png"))
Activity.SetActivityResult(-1, in)
Activity.Finish
End Sub
Despues debes comprobar si se puso en marcha
Sub Activity_Resume
Dim in As Intent
in = Activity.GetStartingIntent
Log(in)
If in.HasExtra("from_shortcut") AND in.GetExtra("from_shortcut") = True Then
Msgbox("Acceso directo ejecutado", "")
End If
End Sub
2.- He tenido que modificar la estructura de mi base de datos sqlite, como puedo hacer que cuando instale la nueva versión, machaque la anterior base de datos??? Lo he intentado mediante codigo, pero me la cargo cada vez que abro el programa
Crea un archivo donde pongas la versión de la base de datos, cuando arranques comparala con la actual (pon el valor en alguna variable) , luego si la versión es menor machaca la antigua y graba el fichero con la versión actual, asi cuando vuelvas a entrar al ser la misma no la machacará.
Digo lo de poner la version en el fichero, por que asi cada vez que actualices la base de datos solo tendras que modifcar en tu programa esa variable y asi machacaras la version anterior. Tambien puedes poner en el fichero el valor de una variable a True o False, pero poniendo la versión la tienes para versiones posteriores
Saludos