Sommario:
Android 6.0 Marshmallow è tecnicamente vecchio di una settimana. (Meno se si considera la data della caduta del codice, suppongo.) Ma è stato nello stato di anteprima dello sviluppatore per mesi e gli sviluppatori sono stati in grado di inviare app che utilizzano il nuovo livello API (e quindi le nuove autorizzazioni) per un poco tempo fa.
Quindi, se stai eseguendo Marshmallow su un telefono Nexus (e dovresti davvero farlo), inizierai a correre nel nuovo schema di autorizzazioni man mano che le app vengono aggiornate. Uno dei miei primi esempi di questo è stato con Twitter. (E complimenti a Twitter per essere uno dei primi.)
Come lo fa Twitter …
Considera questo screenshot, che vedrai quando apri Twitter per la prima volta. Twitter vorrebbe utilizzare la mia posizione attuale per personalizzare la mia esperienza. Ok perché no. Mi piace la mia posizione e mi piacciono le esperienze migliori. Lo permetterò.
Quindi entra in gioco la nuova autorizzazione in Marshmallow. Voglio dare a Twitter l'accesso a ciò a cui ho detto che volevo dargli accesso? Sì, certamente. Ecco perché ho premuto OK la prima volta.
Il fatto è che la prima finestra di dialogo di Twitter non ha nulla a che fare con il fatto di consentire l'autorizzazione per la mia posizione. Attiva semplicemente la finestra di dialogo del sistema. Ma è un po 'più amichevole rispetto alla finestra di dialogo delle autorizzazioni di Android.
Tenere conto:
Twitter: "Twitter vorrebbe utilizzare la tua posizione attuale per personalizzare la tua esperienza".
Android: "Consenti a Twitter di accedere alla posizione di questo dispositivo?"
Due domande simili a autorizzazioni che fanno la stessa domanda, ma solo una consente effettivamente qualsiasi cosa.
Il primo mi dice cosa vuole fare e, soprattutto, perché vuole farlo. Quest'ultimo è principalmente lo stesso tipo di semplice ma vago permesso-parlare che siamo arrivati a detestare da Android. Ed è una specie di bisogno, suppongo. Ma è qui che l'app che richiede l'autorizzazione - quella prima finestra di dialogo da Twitter - diventa ancora più importante. Invece di darmi immediatamente l'opzione "Non consentire / OK", Twitter dovrebbe prendere un'altra frase per dirmi quale sarà il prossimo. "Twitter vorrebbe utilizzare la tua posizione attuale per personalizzare la tua esperienza. Se sei forte, fai clic su" consenti "nella schermata successiva." O qualcosa in tal senso. Quindi hai un contesto migliore per la richiesta di autorizzazione e l'utente è pronto per ciò che sta per accadere - e non è così ripetitivo.
Sono due punti fermi per l'utente ed è difficile. Ma è un punto dolente una tantum. E ne vale la pena, credo, per farci prestare un po 'più di attenzione al pericoloso (che è il termine tecnico) che le app potrebbero richiedere. D'altra parte, l'iconografia e il contesto potrebbero significare che non devi dirmi che stai per chiedere l'autorizzazione per la fotocamera, poiché ho appena toccato l'icona della fotocamera.
Ecco come lo dice Google:
In alcune circostanze, potresti voler aiutare l'utente a capire perché l'app richiede un'autorizzazione. Ad esempio, se un utente avvia un'app di fotografia, probabilmente l'utente non sarà sorpreso dal fatto che l'app richieda l'autorizzazione per utilizzare la fotocamera, ma l'utente potrebbe non capire perché l'app desidera accedere alla posizione o ai contatti dell'utente. Prima di richiedere un'autorizzazione, è necessario considerare di fornire una spiegazione all'utente. Tieni presente che non vuoi sopraffare l'utente con spiegazioni; se fornisci troppe spiegazioni, l'utente potrebbe trovare l'app frustrante e rimuoverla.
Come lo fa Facebook …
Diamo un'occhiata a come Facebook - un'altra app che è già stata aggiornata per le nuove autorizzazioni.
Ahhhh, la rara richiesta di doppio permesso. Questo è ciò che ottieni da Facebook quando premi l'icona della fotocamera per un nuovo aggiornamento dello stato. OK, ho tradito un po ': ricevi questa doppia notifica se neghi il permesso di archiviazione la prima volta, quando tenta di popolare le anteprime di ciò che è nella tua galleria. Ma è ben fatto. Facebook ti dice cosa vuole e perché lo vuole.
E poi ti ripeterai di nuovo. Sì, vorrei che Facebook avesse il permesso di chiedere al mio telefono di fare qualcosa.
Ma, ancora una volta, è il primo pulsante "Consenti" con cui ho un problema. In realtà non consente a nient'altro che la finestra di dialogo di sistema di chiederti di nuovo esattamente la stessa cosa. E devi farlo solo una volta.
Come funziona Hangouts …
Ecco un altro esempio, questa volta in Google Hangouts. Colpire le icone della fotocamera o della galleria durante una conversazione attiverà solo la finestra di dialogo del sistema. Non esiste una richiesta superflua prima di quella effettiva che concede le autorizzazioni. (E, ancora una volta, direi che va bene. Quando tocco un'icona della fotocamera, ottenere una richiesta per l'autorizzazione della fotocamera ha già un contesto.)
Dove penso che Google abbia fatto davvero un buon lavoro è stato con questo esplicativo di prima visione per l'autorizzazione dei contatti, che è assolutamente necessario per far funzionare l'app. Innanzitutto indica perché deve accedere ai tuoi contatti. Colpire "Avanti" quindi presenta la richiesta di autorizzazione del sistema. Che dice "Avanti" e non "Consenti" è ciò che è veramente importante lì. L'uno scorre nell'altro. Ovviamente non vuoi fare ogni richiesta di autorizzazione a schermo intero come questa. Ma per qualcosa di abbastanza importante da presentare al primo giro, è molto ben fatto.
Il passaggio alle autorizzazioni di runtime è importante e importante. Ma possono essere un piccolo processo di apprendimento.
Devo ammettere che sto facendo un po 'di montagna da una talpa qui. Devi solo affrontarlo la prima volta per un'app. Ma le autorizzazioni sono importanti. (E penso che il passaggio alle autorizzazioni di runtime sia buono.) Una spiegazione delle autorizzazioni è buona. Anche il doppio stop può essere trascurato nel nome di farti sembrare prima di saltare. Spiega il permesso all'utente, ma non fargli credere di averlo già autorizzato una volta, solo per farlo effettivamente fare un passo dopo nella richiesta di sistema. Solo che non mi piace ripetermi è tutto.
E come sempre, sei libero di revocare le autorizzazioni ogni volta che vuoi. In tal caso, l'app chiederà nuovamente l'autorizzazione la prossima volta che proverai a utilizzare tale funzionalità.
Il punto è che noi come utenti abbiamo qualcosa di nuovo a cui abituarci qui. Ma anche gli sviluppatori di app.
Aggiornamento: per un ascolto più tecnico di tutto questo - e, a proposito, la conferma che il modo in cui Facebook e Twitter stanno facendo le cose non è del tutto ideale - dai un'occhiata all'episodio 33 del podcast di Android Developers Backstage.