2015-10-02 21 views
32

C'è un intento per andare alla schermata "Autorizzazioni app" della mia applicazione in Android-M?Vai alla schermata App permessi app della mia app

Sto preparando la mia app per Android-M e con il nuovo modello di autorizzazioni. Ho seguito tutti i passaggi indicati nel link

https://developer.android.com/training/permissions/requesting.html

tutto è impostato e tutto è bene accetto che se l'utente ha verificato il pulsante "Mai chiedere di nuovo" e ha negato il permesso, il prossimo lancio voglio dare all'utente la possibilità di accedere alle "Autorizzazioni app" dell'applicazione e modificare lui stesso il permesso, se mai cambia idea. Volevo renderlo un po 'più semplice per l'utente esperto non tecnologico, fornendo un pulsante che portasse l'utente direttamente alla schermata "Autorizzazioni app" della mia applicazione. C'è un modo? (Sarebbe molto meglio che dare le istruzioni per l'uso come MenuSettingsApplicationsManage Applications → selezionare applicazione)

Grazie per l'aiuto!

risposta

55

No, non è necessario passare direttamente alla schermata Autorizzazioni.

Tuttavia, proprio come nelle versioni precedenti di Android, si può puntare le persone a pagina dei dettagli di impostazione dell'applicazione utilizzando il codice come:

Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, 
    Uri.fromParts("package", getPackageName(), null)); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 

Ciò consentirà loro di colpire un solo pulsante (il pulsante Autorizzazioni su quello schermo) prima che possano accedere alle autorizzazioni.

Si noti che come per il UX around asking for permissions, si consideri che collega alla pagina delle impostazioni solo come ultima risorsa e solo nei casi in cui l'autorizzazione è necessaria per la vostra applicazione di funzionare a tutti - idealmente, si dovrebbe mostrare un forte razionale quando shouldShowRequestPermissionRationale() restituisce true (ad esempio, l'ha negato una volta ma non ha premuto "non chiedere più") in modo che la seconda volta che l'utente visualizza una finestra di dialogo di autorizzazione sappia esattamente perché è necessaria tale autorizzazione. Ciò significa che gli utenti che digitano "non chiederlo mai più" dovrebbero essere considerati un segnale molto forte che l'utente non ti concederà mai tale autorizzazione.

+0

Grazie per la risposta. Sto visualizzando un messaggio adeguato che spiega perché il permesso è richiesto come suggerito e suggerito anche nel link developer.android. Immagino che arrivare alla pagina delle impostazioni dell'app sia abbastanza vicino e hai ragione, se non ho questa autorizzazione, l'app è praticamente inutile quindi è la mia ultima risorsa. A questo punto, accederà alle impostazioni dell'app e concederà l'autorizzazione o il salvataggio dell'applicazione. Grazie ancora Ian! – luckylukein

+0

È possibile accedere almeno alla schermata dei permessi globali? Quello che elenca tutte le autorizzazioni, di tutte le app? –

+0

È strano che questo dovrebbe essere considerato l'ultima risorsa. Voglio dire, immagino di poter capire che vogliono che tu usi le API di autorizzazione "ufficiali", ma il fatto che abbiano fatto call requestPermissions asincroni significa che non puoi implementare il modello M senza ricorrere quasi interamente alla ricerca della tua app. – eidylon

Problemi correlati