Prilagajanje vrstice za krmarjenje je bilo ves čas skrito v Stock Nougat... in nikoli ni potreboval Root

Prilagajanje navigacijske vrstice Android O je bilo v sistemu Android Nougat ves čas skrito. No, to smo vsi vedeli, vendar se je izkazalo, da nikoli ni potreboval roota!

Tukaj dvignite roke: koliko vas dejansko teče prvi Predogled za razvijalce za Android O? Ne samo, da je Developer Preview na voljo le peščici Googlovih naprav, ampak res ni primeren kot vsakodnevni gonilnik. Seveda nikoli ni bil namenjen uporabi s strani povprečnega uporabnika, ampak bolj kot preizkusna steza za razvijalce, da zagotovijo, da bodo njihove aplikacije delovale, ko Android O uradno izide. Vendar to ne pomeni, da se ne moremo zabavati in si ogledati, kaj je notri. Ena najbolj razburljivih funkcij, ki prihajajo v naprave Android O, je prilagoditev navigacijske vrstice ki se nahaja v System UI Tuner. Kaj pa, če vam povemo, da ta izjemna prilagoditev vrstice za krmarjenje ni na voljo samo uporabnikom v predogledu za razvijalce za Android O? Tako je, pravzaprav ta funkcija že deluje na Androidu 7.X Nougat in tudi ne potrebuje korenskega dostopa.

obrazna dlan. Ko sem napisal svoje vadnice o kontekstualnem spreminjanju navigacijske vrstice v sistemu Android O sem domneval, da bodo ti lupinski ukazi, ki sem jih pošiljal, delovali samo v sistemu Android O. Izkazalo se je, da to ni res – ti ukazi dejansko dobro delujejo v sistemu Android Nougat. zdaj, poznava se skoraj 9 mesecev da bi lahko prilagajanje navigacijske vrstice omogočili v sistemu Android Nougat, vendar je prvotno odkritje od uporabnikov zahtevalo spremenite APK SystemUI do izpostavi nastavitev nastavitve navigacijske vrstice. To je bila očitno velika ovira, ki jo je bilo treba premagati za mnoge uporabnike, saj ne zahteva samo korenskega dostopa, ampak zahteva tudi, da se APK SystemUI deprevede in popravi za vsako posamezno posodobitev. Vendar pa niti ne potreba če želite spremeniti SystemUI, da razkrije to dejavnost uglaševalnika vrstice za krmarjenje, lahko vseeno spremenite vrstico za krmarjenje ročno prek ukazov lupine!

Opozorilo: od nekaterih uporabnikov smo slišali, da prilagajanje vrstice za krmarjenje ne deluje na najnovejši delovni različici Android 7.1.2 beta na Google Pixel. Preizkusite te ukaze na lastno odgovornost. Zaradi varnosti priporočam, da preizkusite to prilagoditev z uporabo aplikacije, ki jo je razvil paphonb objavljeno spodaj namesto ukazov ADB. Če z njegovo aplikacijo ne deluje, NE poskušajte ukazov ADB!

Lahko potrdimo, da ta skrita prilagoditev vrstice za krmarjenje v sistemu Android Nougat deluje na naslednjih napravah:

  • Google Nexus 6
  • Google Nexus 5X
  • Google Nexus 6P
  • Google Pixel
  • Google Pixel XL
  • OnePlus 3
  • OnePlus 3T
  • Telefoni Sony Xperia

Zdi se, da prilagojevalnik vrstice za krmarjenje deluje na kateri koli napravi ali ROM-u, ki ni odstranil implementacije AOSP, zato večina naprav, ki imajo standardno ali skoraj standardno strojno programsko opremo, ki temelji na sistemu Android 7.X Nougat, bi morala delovati.


Ročno spreminjanje navigacijske vrstice v sistemu Android Nougat deluje zelo podobno kot v sistemu Android O. Lahko pošljete lupinski ukaz ADB, da spremenite določeno nastavitev, ali dodelite dovoljenje WRITE_SECURE_SETTINGS aplikaciji, kot je npr. SecureTask oz AutoTools tako da lahko nadzorujejo spreminjanje nastavitev. Varna nastavitev, ki nadzoruje gumbe navigacijske vrstice. Z uporabo Tasker, lahko kontekstualno spremenite tudi navigacijsko vrstico.

Dodelitev WRITE_SECURE_SETTINGS za SecureTask ali AutoTools je preprosta, saj morate samo vnesti katerega koli od naslednjih ukazov lupine ADB, za kar ni treba biti rootan.

Za SecureTask:

adbshellpmgrantcom.balda.securetaskandroid.permission.WRITE_SECURE_SETTINGS

Za AutoTools:

adbshellpmgrantcom.joaomgcd.autotoolsandroid.permission.WRITE_SECURE_SETTINGS

Nato je sintaksa za spreminjanje navigacijske vrstice naslednja:

settings put secure sysui_nav_bar "key(KEYCODE_CONSTANT: file:///path/to/icon.png),back; home; recent, key(KEYCODE_CONSTANT: file:///path/to/icon.png)"

Lahko preuredite razporeditev tipk, dodate presledke na levo ali desno, da premaknete gumbe (tipkanje space bo v navigacijsko vrstico dodal prazno režo) izberite ikone po meri, spremenite kode tipk itd. kot želite, tako da sledite tej sintaksi. Tukaj je na primer ukaz, ki bi ga uporabil za dodajanje a KEYCODE_MENU gumb in a KEYCODE_FORWARD gumb v moji navigacijski vrstici za izboljšanje izkušnje brskanja v Chromu:

settings put secure sysui_nav_bar "key(82:file:///storage/emulated/0/NavIcons/menu.png),back; home; recent, key(125:file:///storage/emulated/0/NavIcons/forward.png)"

Poti ikon, na katere se sklicuje ukaz, so ikone po meri, iz katerih sem prenesel IconsDB. Ustrezno velikost ikone sem pridobil tako, da sem pogledal gostoto zaslona svoje naprave Material.io nato korelacijo te gostote z ustrezno velikost ikone z referenčno tabelo.

Če želim povrniti svojo navigacijsko vrstico nazaj na privzeto postavitev, bi vnesel ta ukaz:

settings put secure sysui_nav_bar "space, back; home; recent, space"

Če spremljate moje vadnice za Android O, se vam bo ta sintaksa zdela znana. Če ne, potem ne skrbite. Za to obstaja aplikacija.


Navigacijska vrstica po meri

Starejši član XDA paphonb je razvila aplikacijo, imenovano Navigacijska vrstica po meri ki opravi vse delo namesto vas in spremeni gumbe navigacijske vrstice. Aplikacija je zelo enostavna za uporabo, saj temelji na orodju za prilagajanje navigacijske vrstice Android O. Vendar je bila aplikacija kodirana tako, da vam omogoča uporabo ikon po meri (podobno kot v moji vadnici), vključuje možnost ustvarjanja profilov, med katerimi lahko hitro preklapljate, in poleg tega ima Podpora za Tasker, tako da lahko kontekstualno spremenite navigacijsko vrstico glede na poljubna merila želim.

Vse kar morate storiti je, da namestite aplikacijo in ji nato dodelite dovoljenje WRITE_SECURE_SETTINGS z izdajo naslednjega ukaza v ADB:

adbshellpmgrantxyz.paphonb.systemuitunerandroid.permission.WRITE_SECURE_SETTINGS

Ko odprete aplikacijo, bo aplikacija ugotovila, ali vaša naprava podpira spreminjanje navigacijske vrstice ali ne. Poskušal bo predstaviti tipko »naprej« na sredini vaše navigacijske vrstice. Če se prikaže, lahko spremenite svojo navigacijsko vrstico. Če ne, vam bo aplikacija sporočila, da nimate sreče.

Aplikacija je prost vendar zahteva, da kupite različico pro, če želite ustvariti več kot 2 profila. Ta aplikacija vsekakor olajša spreminjanje vaše navigacijske vrstice, zato menim, da je cena vredna tega, vendar če imate znanje in izkušnje, lahko izvedete vse funkcije, ki jih ta aplikacija ponuja prek Taskerja in SecureTask/AutoTools.


Možnosti prilagajanja

S to aplikacijo + Tasker lahko počnete veliko stvari. Opisal sem veliko takih primerov v mojih vajah, toda tukaj je kratek seznam nekaj stvari, ki jih lahko poskusite:

  • Prikaz kontrolnikov za predvajanje predstavnosti med predvajanjem glasbe
  • Pokažite tipko naprej/nazaj, ko ste v Gmailu za hitro kroženje med e-pošto
  • Prikaži tipke za pomikanje gor/dol, ko uporabljate Chrome
  • Pokaži levi/desni kazalec, ko je prikazana tipkovnica
  • Prikaži gumb za meni/naprej, ko uporabljate Chrome
  • Med telefonskim klicem pokažite bližnjico do stikov in gumb za končanje klica

Teh sem si izmislil, ko sem se poigraval z uglaševalnikom vrstice za krmarjenje v sistemu Android O, vendar bi morali delovati enako s skritim uglaševalnikom vrstice za krmarjenje v sistemu Android Nougat.

Popolnoma sem presenečen, da je trajalo toliko časa, da je nekdo ugotovil, da ta uglaševalec vrstice za krmarjenje deluje v sistemu Android Nougat brez roota. Če pomislimo na to, je povsem logično, da deluje brez roota. Navsezadnje modifikacija SystemUI razkrije samo fragment nastavitev za zagon dejavnosti uglaševalnika vrstice za krmarjenje, ni tako, kot da ta mod dejansko doda funkcijo v SystemUI - vedno je bila tam. Ukazi lupine nam omogočajo samo spreminjanje navigacijske vrstice, ne da bi izpostavili to dejavnost SystemUI, aplikacija paphonb pa vse to olajša.


Kako želite prilagoditi svojo navigacijsko vrstico? Sporočite nam v komentarjih spodaj!