boton actualizar app y permisos Bluetooth para android 13 v4.01.16

This commit is contained in:
cvaldes1201
2024-01-17 18:08:54 -06:00
parent 58a19bbf87
commit ea2e131981
8 changed files with 516 additions and 436 deletions

View File

@@ -18,7 +18,56 @@ End Sub
Private Sub B4XPage_Created (Root1 As B4XView)
Root = Root1
'load the layout to Root
Root.Color = Colors.Transparent
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
Try
Do While Not(CanRequestPackageInstalls)
MsgboxAsync($"Por favor permita que ${Application.PackageName} instale actualizaciones"$, "Instalar actualización")
Wait For Msgbox_Result(Result As Int)
Dim in As Intent
in.Initialize("android.settings.MANAGE_UNKNOWN_APP_SOURCES", "package:" & Application.PackageName)
StartActivity(in)
Loop
Catch
Log("updateAvailable() Error - " & LastException.Message)
End Try
If appUpdater.newApp.update Then
ofreceActualizacion
Else
sinActualizacion
End If
End Sub
'////////////////////////////////////////////////////////////////////////////////////////////
'//// Esta es una actividad usada por el servicio appUpdater para mostrar notificaciones
'//// cuando hay alguna actualizacion de apk.
'////////////////////////////////////////////////////////////////////////////////////////////
public Sub CanRequestPackageInstalls As Boolean
' // https://www.b4x.com/android/forum/threads/version-safe-apk-installation.87667/#content
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim PackageManager As JavaObject = ctxt.RunMethod("getPackageManager", Null)
Return PackageManager.RunMethod("canRequestPackageInstalls", Null)
End Sub
Sub ofreceActualizacion
If Msgbox2(appUpdater.newApp.newMsg,"Actualización disponible","Si","","No",Null) = DialogResponse.Positive Then 'ignore
' StartService(DownloadService)
CallSubDelayed(appUpdater, "download_newApk")
End If
B4XPages.MainPage.ocultaProgreso
StartActivity(Main)
' Activity.Finish
B4XPages.ShowPage("Login")
End Sub
Sub sinActualizacion
Msgbox(appUpdater.newApp.okMsg, "Aplicación al corriente") 'ignore
' StartActivity(Main)
B4XPages.MainPage.ocultaProgreso
B4XPages.ShowPage("Login")
End Sub