Come aggiungere icone personalizzate alla barra di navigazione in Android O

Un tutorial su come aggiungere icone personalizzate di tua scelta alla barra di navigazione in Android O, così saprai sempre cosa rappresenta la tua chiave personalizzata.

Se hai seguito la nostra copertura su Android O, allora potresti aver visto i nostri tutorial su come modificare la barra di navigazione in attiva/disattiva la modalità immagine nell'immagine, abilitare tasti di controllo multimediale durante la riproduzione di musica, e oggi come aggiungere pulsanti avanti/precedente per sfogliare rapidamente le tue e-mail. I possibili usi dell'a barra di navigazione personalizzabile sono enormi e i nostri primi tre tutorial sono solo la superficie. Ma anche se abbiamo un paio di tutorial più utili da condividere con i nostri lettori, c'è una cosa di cui dovevamo parlare prima di passare ai tutorial successivi: come aggiungere icone personalizzate ai tasti della barra di navigazione in Android O.

Il nuovo personalizzatore della barra di navigazione di Android O, accessibile tramite SystemUI Tuner, consente di impostare un codice su un tasto di navigazione. (Promemoria: per accedere a SystemUI Tuner, devi abbassare la barra di stato e premere a lungo sull'icona a forma di ingranaggio in alto a destra finché non viene visualizzato un messaggio di avviso che ti informa che SystemUI Il sintonizzatore è ora accessibile.) Poiché ci sono così tanti codici chiave, Android O non offre un'icona per ogni codice chiave che puoi posizionare sulla barra di navigazione, ma ti consente invece di selezionare tra 6 icone:

cerchio, più, meno, Sinistra, Giusto, E menù.

Dato che abbiamo capito come impostare manualmente i codici chiave dai comandi della shell, volevamo anche capire quali possibilità di icone fossero disponibili. Per prima cosa abbiamo scoperto che i due tasti della barra di navigazione sono definiti come due proprietà di sistema nel file Impostazioni. Classe sicura. Queste due proprietà prendono il nome sysui_nav_bar_left E sysui_nav_bar_right, corrispondenti rispettivamente al tasto della barra di navigazione sinistra e al tasto della barra di navigazione destra. Le proprietà accettano un valore stringa, uno di entrambi clipboard, menu_ime, O key(KEYCODE_KEY:ICON_RESOURCE).

Utilizzando un dispositivo Google Pixel di prova con Android O Developer Preview, abbiamo scoperto che le 6 icone mostrati per impostazione predefinita corrispondono a particolari risorse di contenuto contenute nella SystemUI, rappresentate da a URI.

  1. com.android.systemui/2131230944 (cerchio)
  2. com.android.systemui/2131230848 (più)
  3. com.android.systemui/2131231002 (meno)
  4. com.android.systemui/2131230907 (Sinistra)
  5. com.android.systemui/2131231004 (Giusto)
  6. com.android.systemui/2131230913 (menù)

Poiché questi valori sono stati estratti da Google Pixel, è possibile che queste risorse di icone non siano le stesse su altri dispositivi Google che eseguono Android O Developer Preview. Ma poiché la risorsa icona è un URI di contenuto, siamo in grado di sostituirlo con uno schema di URI di file a cui puntare qualsiasi icona memorizzata sul nostro dispositivo.

Come impostare le icone personalizzate della barra di navigazione in Android O

Un URI di file è simile al seguente:

file:///storage/emulated/0/PATH/TO/FILE

Combinando questo con la nostra conoscenza dell'impostazione dei codici chiave personalizzati sopra, ora possiamo impostare qualsiasi immagine arbitraria come nostra icona da mostrare nella barra di navigazione. Ad esempio, se voglio impostare il tasto sinistro della barra di navigazione su KEYCODE_DPAD_DOWN (#20) con un'icona freccia giù personalizzata salvata come down.png e il tasto destro della barra di navigazione su KEYCODE_DPAD_UP (#19) con un'icona freccia su personalizzata salvata come up.png, entrambe le icone memorizzate nella radice della mia memoria interna, i miei comandi sarebbero simili a questi:

settings put secure sysui_nav_bar_left key(20:file:///storage/emulated/0/down.png)
settings put secure sysui_nav_bar_right key(19:file:///storage/emulated/0/up.png)

Puoi inserire questi comandi utilizzando una shell ADB o concedendo il file WRITE_SECURE_SETTINGS permesso di SecureTask e quindi utilizzare Tasker per attivare le modifiche alla barra di navigazione in base a determinate condizioni, come ho delineato nei miei tutorial precedenti (e mostrerò anche in un altro tutorial).

Come ottenere icone personalizzate per la barra di navigazione

Naturalmente, date le dimensioni della barra di navigazione, non puoi semplicemente posizionare qualsiasi immagine scaricata da Internet. L'immagine deve avere le giuste dimensioni, altrimenti apparirà troppo piccola o molto probabilmente troppo ingrandita. Ottenere la tua immagine nella dimensione corretta può essere una sfida se non hai già esperienza con PhotoShop o altri software di manipolazione delle immagini, ma fortunatamente ci sono siti Web che offrono molte icone gratuite che possiamo utilizzo.

La prima cosa che dovrai fare è determinare le metriche di visualizzazione del tuo dispositivo, che è qualcosa che potresti già conoscere, ma in caso contrario, puoi cercalo su Material.io. Successivamente, dovrai correlare la densità del tuo display con un grafico di riferimento delle icone per determinare le dimensioni delle icone di cui avrai bisogno. Infine, usa il servizio gratuito database delle icone per scaricare l'icona che cerchi nella giusta dimensione.

Assicurati di salvare le icone che utilizzerai in una cartella particolare come /NavIcons e di assegnare alle icone un nome semplice a cui puoi facilmente fare riferimento nei tuoi comandi.


Ci auguriamo che questo tutorial ti sia utile! Per quanto mi riguarda, personalmente, uno dei miei maggiori dubbi con il personalizzatore della barra di navigazione è stata l'impossibilità di selezionare icone personalizzate per i tasti di navigazione in modo da sapere sempre immediatamente cosa stanno facendo i miei tasti di navigazione. Ma ora abbiamo capito come posizionare le nostre chiavi personalizzate E icone personalizzate alle nostre condizioni, possiamo iniziare a sfruttare realmente la nostra barra di navigazione.