E' possibile lanciare l'installazione di un aggiornamento di una propria app dall'interno della stessa?
Supponiamo che io abbia scaricato il nuovo file apk da un mio host e lo abbia copiato in xui.DefaultFolder
Per eseguirlo ho trovato questi due spezzoni di codice ma non mi funziona nessuno dei due.
Premetto che sto usando B4XPages
Come si vede differiscono perche a uno viene usato SetType e ad un altro SetComponent, oltre che nella sintassi del Target
Come posso fare?
Supponiamo che io abbia scaricato il nuovo file apk da un mio host e lo abbia copiato in xui.DefaultFolder
Per eseguirlo ho trovato questi due spezzoni di codice ma non mi funziona nessuno dei due.
Premetto che sto usando B4XPages
B4X:
'Primo spezzone
Dim Intent1 As Intent
Dim Target as String
Target = "file://" & File.Combine(xui.DefaultFolder, "nuovoapk.apk")
Intent1.Initialize(Intent1.ACTION_VIEW, Target)
Intent1.SetType("application/vnd.android.package-archive")
StartActivity(Intent1)
'qui ottengo l'errore
'android.os.FileUriExposedException: file:///data/user/0/b4a.NewAPK/files/znuovoapk.apk exposed beyond app through Intent.getData()
'Secondo spezzone
Dim Intent1 As Intent
Dim Target as String
Target = File.Combine(xui.DefaultFolder, "nuovoapk.apk")
Intent1.Initialize(Intent1.ACTION_VIEW, Target)
Intent1.SetComponent("com.android.packageinstaller/.PackageInstallerActivity")
StartActivity(Intent1)
'qui ottengo l'errore
'android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.packageinstaller/com.android.packageinstaller.PackageInstallerActivity};
' have you declared this activity in your AndroidManifest.xml?
Come posso fare?
Last edited: