Italian azzerare le autorizzazioni

3394509365

Active Member
Licensed User
Longtime User
Buonasera, ho questa routine con la quale chiedo le autorizzazioni

B4X:
Sub PermessoCartellaFoto
    Dim  rp As RuntimePermissions
    
    rp.CheckAndRequest(rp.PERMISSION_WRITE_EXTERNAL_STORAGE)' permesso singolo
    
    'rp.Check(rp.PERMISSION_WRITE_EXTERNAL_STORAGE)' permesso singolo
    
    Wait For Activity_PermissionResult (permission As String, Result As Boolean)
    
    If Result Then

        CC.Initialize("CC")
            
    Else
        ToastMessageShow("No permission!!!", True)
        Return
    End If

End Sub



nel manifest ho questo :

B4X:
AddManifestText(
<uses-permission
  android:name="android.permission.WRITE_EXTERNAL_STORAGE"
  android:maxSdkVersion="19" />
)


siccome sono in fase di debug, ma avendo dato l' eutorizzazione la prima volta poi non riesco a simularlo altre volta.
Anche reinstallando l' app sia da telefono che da simulatore.

Cì è un modo per azzerare i permessi? e ripartire come se dovessero ancora essere dati per la prima volta ?

Spero di essere stato chiaro
 

drgottjr

Expert
Licensed User
Longtime User
in settings ---> apps ---> permissions cerca la tua app.
spegni (o avvia) tutti i permessi che si applicono. tu (e l'utente) puoi cambiare i permessi in ogni momento così. l'app partirá da zero
 

3394509365

Active Member
Licensed User
Longtime User
provato, grazie, non funziona lo stesso.


ho la versione di android 8 deve chiederle le autorizzazioni
 
Last edited:

Sagenut

Expert
Licensed User
Longtime User
Hai provato a disinstallare l'app prima di lanciare di nuovo la compilazione?
 

3394509365

Active Member
Licensed User
Longtime User
si, certo ho fatto pulizia sul telefono in tutto e per tutto.
Ma non è che sbaglio qualcosa nel codice ?
 

3394509365

Active Member
Licensed User
Longtime User
forse mancava questo:
B4X:
Public  SQLDataBasePath = File.DirRootExternal & "/" & "cartella" As String

domani rirpovo
 

3394509365

Active Member
Licensed User
Longtime User
ecco l' errore

B4X:
sbagliato
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="14"/>
giusto
<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="28"/>


usavo un aversione vecchia dell' sdk
 

Sagenut

Expert
Licensed User
Longtime User
Hai aggiornato anche i percorsi di Android.jar e Javac.exe?
 

3394509365

Active Member
Licensed User
Longtime User
si, purtroppo sono partito da un programmino vecchio che avevo fatto in VB4 v. 2 .... addirittura non ho ilmodulo Starter e adesso devo vedere come fare ad inserirlo senza fare casini. ma intento i permessi funzionano.

era sbagliato solo il manifest
 

LucaMs

Expert
Licensed User
Longtime User
addirittura non ho ilmodulo Starter e adesso devo vedere come fare ad inserirlo senza fare casini.
Non puoi fare casini, crea un servizio e dagli il nome Starter, poi copiaci tutto ciò che trovi nello Starter che trovi appena avvii B4A.
Insomma, questo:
B4X:
#Region  Service Attributes 
    #StartAtBoot: False
    #ExcludeFromLibrary: True
#End Region

Sub Process_Globals
    'These global variables will be declared once when the application starts.
    'These variables can be accessed from all modules.

End Sub

Sub Service_Create
    'This is the program entry point.
    'This is a good place to load resources that are not specific to a single activity.

End Sub

Sub Service_Start (StartingIntent As Intent)
    Service.StopAutomaticForeground 'Starter service can start in the foreground state in some edge cases.
End Sub

Sub Service_TaskRemoved
    'This event will be raised when the user removes the app from the recent apps list.
End Sub

'Return true to allow the OS default exceptions handler to handle the uncaught exception.
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
    Return True
End Sub

Sub Service_Destroy

End Sub
 

3394509365

Active Member
Licensed User
Longtime User
ok provato, fatto, inserito.

Adesso devo capire a che serve e se mi serve, visto che la mia app l' ho trasformata venendo dalla versioneB4A 2.. e prima non c' era lo Starter

Sto leggendo la spiegazione

''''''''''''' tratto dalla spiegazione ........................
Ciò significa che il servizio Starter è il posto migliore per inizializzare tutte le risorse a livello di applicazione.
Altri moduli possono accedere in sicurezza a queste risorse.
Il servizio di avvio deve essere il percorso predefinito per tutte le variabili globali del processo pubblico. Oggetti SQL, dati letti da file e bitmap utilizzati da più attività devono essere inizializzati nel sottotit Service_Create del servizio Starter.
 
Last edited:
Top