L'ultima versione B4A attualmente è la 11.
Ciao, credo che l'errore sia qui:
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
Sub Activity_PermissionResult (Permission As String, Result As Boolean)
Log(Permission & " : " & Result)
Log(File.DirRootExternal)
End Sub
Quell'evento viene richiamato ogni volta che usi "CheckAndRequest"..
Spero di esserti stato di aiuto, saluti ?
No, se sta usando le B4XPages nel suo progetto, il nome dell'evento dev'essere quello che ha messo, B4XPage_PermissionResult. Senza B4XPages, allora è Activity_PermissionResult.
Credo che il problema stia nell'eseguire consecutivamente il CheckAndRequest.
Così dovrebbe funzionare:
For Each permission As String In Array(rp.PERMISSION_WRITE_EXTERNAL_STORAGE, rp.PERMISSION_CAMERA)
rp.CheckAndRequest(permission)
Wait For B4XPage_PermissionResult (permission As String, Result As Boolean)
If Result = False Then
ToastMessageShow("Permesso negato", True)
' Qui agisci di conseguenza - chiudi l'app, suppongo.
Return
End If
Next
Nota che non dovresti usare DirRootExternal, ci sono problemi a seconda della versione del dispositivo Android sul quale verrà installata l'app.
Meglio usare sempre xui.DefaultFolder (che in B4A corrisponde a DirInternal). Altrimenti, leggi i punti 9 (e 8) di questi suggerimenti/raccomandazioni di Erel:
https://www.b4x.com/android/forum/t...t-erel-recommends-to-avoid.133280/post-842277
P.S. Ci sono cascato ?, era una domanda del 18 giugno!