Sådan tilføjer du brugerdefinerede knapper til Nav Bar på Samsung Galaxy S8/S8+

En vejledning om, hvordan du tilføjer brugerdefineret knap til navigeringslinjen på Samsung Galaxy S8 eller Samsung Galaxy S8+. Kræver ikke root-adgang.

Samsungs Galaxy S8 og Galaxy S8+ er to af de hotteste smartphones på markedet, i høj grad takket være de store fremskridt, som Samsung har gjort med deres skærmteknologi. Siden Samsung havde til formål at reducere rammerne så meget som muligt med deres nye flagskibsenheder, er virksomheden endelig sluppet af med de kapacitive taster, der engang var hæfteklammer i Samsung-hardware. I stedet er der softwarenavigationstaster, som til en vis grad kan ændres i Samsung Experience UI.

Som sædvanlig mangler lagerimplementeringen af ​​navbar-tuneren dog ret meget i dens tilpasningsmuligheder. Det meste af tilpasningen er centreret omkring hjemknappen - du kan ændre følsomheden, og om den direkte låser telefonen op eller ej. Selvom der er en mulighed for at ændre knaplayoutet, er det eneste layout, du kan skifte til, et omvendt layout, hvorved bagsiden og seneste-tasten vendes.

Vi hos XDA-Developers ser altid ud over, hvad producenten tilbyder, for at finde flere måder at tilpasse din telefon på. Det er derfor, vi i dag introducerer en metode til tilføje yderligere knapper til navigationslinjen på Samsung Galaxy S8 og S8+.

Hvis du har fulgt XDA-portalen (som du burde være), har du måske set mit indlæg i sidste måned om hvordan tilpasning af navbaren kunne udføres i Android 7.X enheder uden at kræve System UI-mods, brugerdefinerede ROM'er eller root-adgang af nogen art. Metoden involverer direkte ændring af de indstillinger, der er ansvarlige for tuning af nav-bjælken, selvom GUI'en til at ændre nav-bjælken er blevet skjult for brugeren. Dette skyldes, at koden, der udgør den skjulte nav-bar-tuner, har været i Android Open Source Project (AOSP) repositories siden Android Nougat, men det var det ikke indtil Android O at Google afslørede denne aktivitet under System UI Tuner. Men så længe softwaren, der blev leveret på din enhed, der kører Android Nougat, ikke fjernede koden bag navbar-tuneren helt, er det muligt at bruge denne funktion uden at vente.

Ændring af navigationslinjen involverer at sende shell-kommandoer enten via ADB eller en app, der har fået tilladelsen WRITE_SECURE_SETTINGS. På grund af det faktum, at rode med ADB er noget, mange mennesker ikke er bekendt med, XDA Senior Member pafonb udviklet en app kaldet Brugerdefineret navigationslinje for at gøre alt lettere for dig.

Da tusindvis af mennesker begyndte at teste hans app, begyndte mange brugere på Galaxy S8 og Galaxy S8+ at støde på hyppige system-UI-nedbrud, når de forsøgte at bruge appen. Vi således antaget at det var umuligt at ændre nav-bjælken ud over Samsungs implementering - men den antagelse er siden blevet fundet forkert. Sådan gør du netop det.

Tilføjelse af brugerdefinerede knapper til Nav Bar på Galaxy S8 eller S8+

Efter nogle indledende tests opdagede vi, at de samme shell-kommandoer, som vi var indsender min originale tutorial fungerer også på Galaxy S8 og S8+, men med en stor advarsel. De originale nøgler til bagside, hjem, seneste og IME-skifter SKAL være tilstede uanset hvilket layout du bruger. Hvis en af ​​disse nøgler mangler, vil systembrugergrænsefladen begynde at gå ned gentagne gange. Ydermere vil enhver tast, du føjer til navigationslinjen, se lidt mærkelig ud, når Samsungs navbar skifter automatisk farver til en hvid baggrund, men jeg kigger på måder at omgå dette mindre ulejlighed.

Uanset hvad, lad os dykke ned i de kommandoer, du skal lære for at ændre navigeringslinjen på din Samsung Galaxy-enhed. Den første ting du skal gøre er at konfigurere ADB på din maskine.

Opsætning af ADB

Først, download ADB-binæren direkte fra Google til dit bestemte operativsystem og udpak det til en separat mappe på din computer. Næste, installere den rigtige driver til din Samsung-telefon. Aktiver derefter "USB Debugging" i Indstillinger --> Udviklerindstillinger. Hvis du ikke kan se Udviklerindstillinger, skal du aktivere det ved at gå til Indstillinger --> Om telefon og derefter trykke på Byg nummer 7 gange. Sørg endelig for, at ADB fungerer ved at starte en kommandoprompt i samme mappe som ADB-binæren (hold shift + højreklik --> "åbn kommandoprompt her") og kør følgende kommando:

adb devices

Hvis du ser din enheds serienummer (og der ikke står uautoriseret), er du gylden. Hvis du ser en pop-up på din telefon, der beder dig om at give din computer ADB-adgang, så sig ja. Hvis du ikke ser nogen af ​​dem ske, så prøv at genstarte din computer/telefon og tilslut den igen til din computer. Ellers prøv at geninstallere driveren.

Ændring af Nav Bar - ADB-metoden

Syntaksen til at ændre navigationslinjen er som følger:

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

hvor KEYCODE_CONSTANT refererer til konstanten af ​​a KeyEvent og ikonstien er filen URI, der giver dig mulighed for at angive et brugerdefineret ikon, der skal tilføjes til nav-linjen. Jeg har fundet ud af, at ikoner i størrelsen 64x64 fungerer ret godt til vores formål. Du kan downloade mange gratis ikoner fra IkonerDB internet side.

Som et eksempel er kommandoen, jeg sendte for at tilføje en navigeringslinjetast, der starter Gmail-appen, denne:

settings put secure sysui_nav_bar "key(65:file:///storage/emulated/0/NavIcons/gmail.png),back; home; recent, menu_ime"

Da vi absolut skal have back, home, recent og menu_ime et eller andet sted i kommandoen, betyder det, at vi desværre ikke kan erstatte disse aktienøgler, så vi kan bruge vores egne brugerdefinerede nav-bjælkeikoner. Men i det mindste kan vi lege med afstanden for at kunne passe flere brugerdefinerede nøgler ind eller for bare at få det layout, vi foretrækker. For eksempel:

settingsputsecuresysui_nav_bar "space[#],back[#];home[#];recent[#],menu_ime[#]"

Værdien i parentes er en relativ størrelsesmultiplikator, som giver dig mulighed for at formindske eller udvide knappens bredde. Bemærk, at typiske værdier for den relative størrelsesmultiplikator bør forblive mellem 0,85-1,15, ellers vil knapper begynde at optage alt for lidt eller for meget bredde til virkelig at være brugbare. Forsøg ikke at sætte "0" for den relative størrelse i et forsøg på at skjule navigeringsbjælken - du vil bare ende med at gå ned i systembrugergrænsefladen.

I tilfælde af at du roder med noget og ender med system-UI-nedbrud, kan du vende tilbage til standardlayoutet for navigationslinjen ved at indtaste en af ​​følgende to kommandoer:

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

Som en påmindelse om nogle af de skøre ting, du kan gøre med den skjulte Android Nougat nav-bar-tuner, er her et skærmbillede af et nav-bar-layout, som en af ​​vores læsere har lavet til at fnise.

Er videnskaben gået for vidt? Credits: AndyYan

Ændring af Nav Bar - App Metode

Jeg er sikker på, at dette er den del, de fleste af jer virkelig er interesserede i. XDA seniormedlem pafonb's Brugerdefineret navigationslinje app ville gøre alt dette nemmere. Udvikleren har for nylig fundet ud af, hvordan man opsnapper visse KeyEvents, der kalder bestemte apps - der er op til 5 KeyEvents, som han fandt ud af, hvordan man kunne opsnappe i alt. Den nøjagtige forklaring på, hvordan han fik dette til at virke, er ikke nødvendig her, så vi vil ikke gå i detaljer. Med det i tankerne var udvikleren i stand til at opdatere appen (startende med version 0.5.0), så du kan i det væsentlige udføre den handling, du vil.

For eksempel tilføjede udvikleren for nylig muligheden for at tilføje en handling, der trækker statuslinjen ned, starte en app efter dit valg direkte, og vigtigst af alt at udløse en Tasker arrangement. Især Tasker-begivenhedsfunktionen er den mest fantastiske del, for gennem Tasker er mængden af ​​handlinger, du kan udføre, ubegrænset. Hvis du vil have din navigeringslinjeknap til at gøre noget, kan den gøre det. Kombiner dette med den allerede eksisterende Tasker Profile-integration, og du kan kontekstuelt ændre nav-bjælken på din enhed for kun at tilføje visse nøgler under de betingelser, du vælger.

For at bruge disse specielle funktioner i appen, skal du uddele $1,99 for at opgradere til pro-versionen af ​​appen. På nuværende tidspunkt, for at bruge appen på din Samsung Galaxy S8/S8+, skal du have den seneste betaversion (0.7.0). Appen registrerer automatisk, om du bruger en Galaxy S8/S8+, og deaktiverer nogle funktioner, der får din enhed til at begynde at gå ned.

Jeg har fået at vide af udvikleren, at han stadig arbejder på at gøre appen klar til stabil udgivelse for brugere på disse Samsung-telefoner. Lige nu ville jeg vent et par dage på, at udvikleren opdaterer sin app så du har en nem måde at ændre navigationslinjen på uden at skulle bruge ADB-kommandoer. Udvikleren er hurtig til at opdatere sin app - siden appen blev udgivet for mindre end en måned siden, har den allerede set adskillige tilføjelser til funktioner.


Konklusion

Hvis du dog er eventyrlysten nok, kan du lege med den skjulte nav-bar-tuner allerede ved at bruge den syntaks, jeg har vist tidligere. De fleste mennesker vil sandsynligvis vente på, at Custom Navigation Bar-appen bliver opdateret - jeg ville bare gerne have denne nyhed derude, så alle vores Galaxy S8/S8+-venner ved, hvad de kan forvente. Jeg vil fortsætte med at poste tutorials relateret til nav-bar-tuneren, hvor min næste fokuserer på, hvordan man tilføjer dobbelt-/trick-klik til nav-bar-knapperne.

Støt venligst XDA-udviklere på den måde, du kan! Vi opdagede for nylig, at der var adskillige blogs, der var klippet, kopieret, indsat vores originale selvstudier og andet indhold, der blev delt af vores brugere på foraene. Disse blogs har forsøgt at tage æren for den enorme indsats, vi gør med at kompilere disse tutorials i stedet for at levere kvalitetsindhold alene. Du finder ikke selvstudier som dem, vi har skrevet i vores tutorials kategori eller tutorials fra vores fora andre steder.

Følg os på Twitter, Google+, Facebook, eller Youtube. Tjek vores XDA Labs app for en hurtig måde at gennemse vores fora (og overveje at få XDA reklamefri også!) på din mobilenhed! Tak, og hold øje med vores næste tutorial!