Kaip pakeisti naršymo juostos piktogramas arba pertvarkyti mygtukus be šaknų

Šiame vadove parodysime, kaip pakeisti naršymo juostos piktogramas arba pertvarkyti mygtukus, jei naudojate „Nuga“. Nereikia šaknies.

Tie iš jūsų, kurie vadovauja pirmiesiems Android O kūrėjo peržiūra galėjo žaisti su savo paslėpta naršymo juostos tinkinimo priemonė esantis SystemUI Tuner. Šis naršymo juostos tinkinimo įrankis iš tikrųjų buvo naudojamas AOSP kelis mėnesius, tačiau buvo manoma, kad vienintelis būdas jį pasiekti naudojant „Android Nougat“ buvo sistemos vartotojo sąsajos APK modifikacija, kuriai, žinoma, reikės root prieigos. Tik šią savaitę sužinojome, kad „Android Nougat“ paslėptas naršymo juostos tinkinimo įrankis gali iš tikrųjų galima pasiekti nereikalaujant root prieigos, pasirinktinio ROM arba sistemos vartotojo sąsajos modifikacijos. Naudodami šią funkciją galime pakeisti naršymo juostos piktogramas, sukeisti klavišus arba pridėti papildomų mygtukų.

Teisingai – naršymo juostą galima modifikuoti visiškai įprastoje, neįsišaknijusioje ROM su užrakinta įkrovos programa. Funkcijos, kurios, žmonių manymu, apsiriboja „Android O“, iš tikrųjų pasiekiamos visiems, naudojantiems „Android Nougat“ „Nexus“, „Pixel“, „OnePlus“ ir kai kuriuose „Sony“, „HTC“ ir „Motorola“ telefonuose. Jei jūsų įrenginyje veikia programinė įranga, kuri yra artima Google programinei įrangai (atsiprašau Samsung ir Huawei / Honor vartotojų), tikėtina, kad jūsų įrenginyje yra paslėptas AOSP naršymo juostos tinkinimo įrankis, kurį galime naudoti. Šiame vadove parodysiu, kaip galite naudoti naršymo juostos tinkinimo priemonę 

pakeiskite mygtukų piktogramas į tai, ko norite, arba pertvarkykite jas tokia tvarka, kokia norite.

„Google Pixel Nav“ juosta „Nexus 6“.

Atvirkštinė naršymo juosta „Nexus 6“.

Navigacijos juostos keitimas – sąranka

Reikalavimai: jums reikės įrenginio, suderinamo su AOSP naršymo juostos tinkinimo priemone. Žr. skyrių „Suderinamumas“. šioje temoje. (Pastaba: jūsų įrenginio OĮG arba tipas gali būti nenurodytas toje gijoje. Vienintelis būdas įsitikinti, ar jūsų įrenginys suderinamas, yra jį išbandyti. Toliau parodysime, kaip tai padaryti.

Yra du būdai, kaip pakeisti naršymo juostą. Vienas yra su programa, o kitas - per ADB apvalkalo komandas (taip veikia programa). Parodysime abu, kad būtų užbaigti, tačiau atminkite, kad šiuo metu negalite keisti atsarginių naršymo juostos piktogramų naudodami programą, kol kūrėjas neatnaujins savo programos, įtraukdamas šią funkciją.

Pirmas dalykas, kurį turime padaryti, yra įsitikinti, kad netgi galima keisti naršymo juostą jūsų įrenginyje. Jei jūsų įrenginys yra vienas iš tų, kurie išvardyti kaip suderinami Pasirinktinė naršymo juostos gija, tada didelė tikimybė, kad taip ir bus. Galime tai patikrinti per trumpą mokymo programą, kuri pridedama prie šios programos.

Įdiekite programą iš „Google Play“ parduotuvės (ir taip pat užsiregistruoti beta versijos testavimui kad vėliau galėtume panaudoti eksperimentinę funkciją naršymo juostai pertvarkyti). Tada atidarykite programą ir eikite į įvadinius ekranus. Pasirinktinė naršymo juosta paprašys suteikti jai tam tikrą leidimą, vadinamą WRITE_SECURE_SETTINGS, kad galėtumėte toliau naudoti programą. Tai galite padaryti dviem būdais, kaip nurodyta paraiškoje.

  1. Jei turite įsišaknijusį įrenginį, atidarykite Terminalo emuliatorius savo telefone ir įvesdami suteikite jam root prieigą su. Tada įveskite šią komandą: pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS
  2. Jei jūsų įrenginys nėra įsišaknijęs, turėsite suteikti leidimą per ADB. Įrenginyje atidarykite komandų eilutę / terminalą ir įveskite šią komandą: adb shell pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS

Suteikę programai šį leidimą vienu iš dviejų anksčiau nurodytų būdų, programa atliks suderinamumo testą. Jei naršymo juosta nesikeičia, jums, deja, nesiseka. Jei naršymo juosta pasikeičia ir rodomas rodyklės dešinėn mygtukas, sveikiname, kad jūsų įrenginys palaikomas! Dabar galime pereiti prie naršymo juostos modifikavimo.


Naršymo juostos mygtukų išdėstymas iš naujo

Programos metodas

Dabar, kai nustatėte programą, labai, labai lengva pertvarkyti naršymo juostos mygtukus. Kad galėtumėte tai padaryti, turite naudoti tinkintos naršymo juostos programos beta versijos testavimą, todėl prieš tęsdami grįžkite ir įsitikinkite, kad esate beta versijos kanale.

Jei naudojate beta versiją, pamatysite skyrių pavadinimu eksperimentiniai patobulinimai pagrindiniame nustatymų skyriuje. Bakstelėkite tai ir pamatysite parinktis, leidžiančias pakeisti esamus grįžimo, namų ir naujausius klavišus. Čia galite lengvai pertvarkyti savo klavišus, pakeitę mygtuką „Atgal“ į apžvalgos mygtuką (naujausią), o apžvalgos (naujausius) – į mygtuką „Atgal“. Arba pakeiskite juos kaip tik norite – čia nėra jokių apribojimų. Pakeitę raktus taip pat galite žaisti su išdėstymo parinktimis naršymo juostos nustatymų meniu.

ADB metodas

Ir štai kaip tą patį padaryti naudojant ADB komandas, jei to pageidaujate. Komanda, kurią keisime, yra saugaus nustatymo nuostata, vadinama sysui_nav_bar. Ši nuostata yra eilutė, kurioje yra naršymo juostos išdėstymas. Numatytoji nuostatos struktūra yra tokia

space, back; home; recent, space

Tarpas reiškia tuščią erdvę, skiriančią naršymo juostos klavišus vienas nuo kito, o atgal, pagrindinis ir naujausias – 3 numatytuosius naršymo juostos mygtukus. Pavyzdžiui, jei norime pakeisti atgal ir naujausią raktą, turėtume pakeisti eilutę taip

space, recent; home; back, space

Pastaba: jei bandote įvesti bet kurią iš šių komandų iš įsišaknijusios apvalkalo aplinkos, pvz., Terminalo emuliatorius jūsų telefone, tada prieš siųsdami komandas turėsite praleisti „adb shell“ juos.

Dabar, norėdami iš tikrųjų modifikuoti šią eilutę, turime naudoti ADB apvalkalo komandą su šia sintaksė

adb shell settings put secure sysui_nav_bar "STRING"

Taigi komanda, kurią siųstume sukeisti naujausius ir atgal klavišus, atrodytų taip

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

Kaip galite atspėti, tai yra gana lanksti. Raktus galime perkelti taip, kaip norime, pakeisdami nuostatos eilutės reikšmę. Pavyzdžiui, apverstus naršymo juostos klavišus galime sureguliuoti į kairę arba dešinę, pakeisdami dviejų tarpų vietą:

Kairėn išlyginta:

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

Teisingai pagrįsta:

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

Tačiau taip pat galime pakeisti naršymo juostos mygtukus, kad jie būtų visiškai kitokie nei standartiniai grįžimo, namų ar naujausių klavišų, pvz., siųsti vieną iš daugelio KeyEvents. Šiuo faktu pasinaudosime kitame skyriuje, kuriame parodysime, kaip pakeisti naršymo juostos mygtukų piktogramas.


Individualizuotos naršymo juostos piktogramos

Dabar sekantis skyrius gali neatrodyti kaip didžiulis sandoris dėl to, kad yra gaususprogramosįjungta „Play“ parduotuvė, kuri žada pakeisti naršymo juostą be šaknies. Ir jie veikia, tačiau daugelis vartotojų praneša, kad šios programos yra klaidingos tam tikrose programose, pvz., „Chrome“, žaidžiant viso ekrano vaizdo įrašus ar kai kuriuos žaidimus. Be to, daugelyje šių programų reikia įgalinti pritaikymo neįgaliesiems paslaugą, kad galėtumėte stebėti programas, kad žinotumėte, kada pakeisti naršymo juostos spalvą. gali sumažinti našumą. Galiausiai, jei per ilgai pasitikite šiomis programomis, staiga nustebsite pamatę, kad jos nustos veikti, kai pasirodys „Android O“, nes bus išleista kita „Android“ versija. sunaikina šių programų galimybes piešti ant sistemos vartotojo sąsajos elementų.

Mūsų naudojamas metodas yra pagrįstas „Google“ įdiegtu naršymo juostos derintuvu, todėl jis neturi nė vienos iš šių problemų. Tačiau šiuo metu yra viena problema, apie kurią norime būti iš anksto: jei pasirinksite šį metodą keisti namų mygtuką, tada ilgai paspaudus pagrindinio puslapio mygtuką, veiksmas nebeveiks tai reiškia, kad nebegalite greitai pasiekti „Google Assistant“ iš namų mygtuko. Jei jums tai tinka, tada kaip pakeisti naršymo juostoje esančias piktogramas.

Pirmas dalykas, kurį turėsite padaryti, tai atsisiųsti piktogramas, kuriomis norite pakeisti numatytąsias naršymo juostos klavišų piktogramas. Pateiksiu atsisiuntimo nuorodas, kad galėtumėte patraukti „Google Pixel“ naršymo juostos piktogramas, bet jūs turite rasti savo piktogramas, jei norite dar ko nors. Jums reikės PNG formato piktogramų, o dėl dydžio galite nustatyti reikalingų piktogramų dydį ieškodami savo įrenginio ekrano tankio metriką Material.io ir koreliuojant tai su an piktogramos dydžio nuorodų lentelė.

Kreditai už šių „Google Pixel“ naršymo juostos piktogramų ištraukimą atitenka XDA vyresniajam nariui dariomrk. parsisiųsti šį archyvą, jei turite 1920x1080p ekranas ir tai, jei turite 2560x1440p ekraną. Išskleiskite bet kurio ZIP failo turinį į aplanką, pavadintą „NavIcons“, esantį jūsų saugyklos šakniniame kataloge.

Kai turėsite piktogramas tinkamoje vietoje, įveskite šią ADB apvalkalo komandą (įspėjimas, ji ilga):

adb shell settings put secure sysui_nav_bar "space, key(4:file:///storage/emulated/0/NavIcons/back.png);key(3:file:///storage/emulated/0/NavIcons/home.png);key(187:file:///storage/emulated/0/NavIcons/recents.png),space"

Ši komanda pakeičia atgal, namų ir naujausius klavišus į KeyEvents, kurie atlieka tą pačią funkciją. Visų pirma nugara pakeičiama KEYCODE_BACK, namai pakeičiami KEYCODE_HOME, o naujausias pakeičiamas į KEYCODE_APP_SWITCH. Šie raktų kodai atlieka lygiai tą pačią funkciją, bet kadangi mes naudojame KeyEvents, galime nurodyti, kokią piktogramą norime jiems naudoti. Šiuo atveju nukreipiame į back.png, home.png ir nesens.png, kuriuos išsaugojome /NavIcons.

Tačiau pakeitę atsarginius klavišus į KeyEvents, prarandame galimybę ilgai paspausti pagrindinį mygtuką, nes šiuo metu nėra būdo atpažinti ilgai paspaudus imituojamų klavišų įvesties įvykius.

Suprantu, kad šiuo metu šis metodas gali neatrodyti idealus ar lengvai įgyvendinamas, tačiau šio rašymo metu tinkintos naršymo juostos programa nebuvo atnaujinta, kad būtų galima pridėti savo piktogramas. Šiuo metu mano metodas (būtent taip ta programa veikia, o kai programa bus atnaujinta, ji susidurs su tuo pačiu apribojimu) yra tai, kaip naršymo juostoje galite gauti bet kokias pasirinktines piktogramas.


Štai šiai pamokai. Ateities vadovėliuose parodysiu galimus praktinius naršymo juostos keitimo būdus, ypač atsižvelgiant į kontekstą, naudojant automatizavimo programą, pvz., Tasker. Sekti vadovėlių kategorija XDA kad gautumėte naujausius patarimus ir gudrybes, kuriuos skelbiame.