Sådan tilføjes medieafspilningskontroller til Nav Bar, når du afspiller musik

Tasker-profil, der tilføjer medieafspilningskontroller til navigeringslinjen, når du afspiller musik. Fungerer på Android Nougat (7.0+) enheder som Google Nexus og Pixels.

Lige siden Google først introducerede konceptet med softwarenavigationsnøgler til Android, har brugere efterspurgt en måde at tilpasse, hvilke nøgler der er tilgængelige for brugerne. Selvom brugerdefinerede ROM'er har tilbudt dette niveau af tilpasning i årevis, er det kun i første Android O Developer Preview finder vi en officiel metode fra Google til at ændre navigeringslinjen. Men ligesom mange funktioner før den dukkede denne nav-bar-tuner ikke op ud af ingenting, og var faktisk i hemmelighed i test for Android Nougat. Det var dog først for nylig, at vi opdagede, at denne skjulte nav-bar-tuner i Android Nougat kan faktisk tilgås uden brug af root-adgang, en brugerdefineret ROM eller System UI-mods. Derfor har en ny mulighed for rodløs tilpasning åbnet op for mange brugere, og i dag vil vi guide dig gennem en populær anmodning:

hvordan du tilføjer medieafspilningskontroller til navigeringslinjen, når du afspiller musik (Android 7.0+, ingen root nødvendig!)

Som du kan se i skærmbilledet ovenfor, er min testenhed (en Google Nexus 6-enhed uden rod, bootloader-låst på Android 7.0 Nougat) har standardsættet med navigeringstaster, indtil musikafspilning startes i Google Play Musik. Når musikafspilningen begynder, tilføjes to nye taster til navigeringslinjen: en knap til at afspille det forrige nummer og en knap til at afspille det næste nummer. Disse taster bliver på navigeringslinjen, indtil jeg afviser Google Play Musik-notifikationen - på den måde kan jeg stadig bruge min telefon til andre apps, mens jeg beholder disse afspilningskontroltaster, indtil jeg beslutter mig for, at jeg er færdig med at lytte til musik.

Selvom mit skærmbillede ovenfor viser, at denne opsætning bruges til Google Play Musik, kan den nemt ændres til at fungere med stort set al musik, podcast eller radioapp, der er derude - så længe den app viser en meddelelse under afspilning og accepterer forrige/næste medietaster (begge meget sandsynligt). Denne tutorial er lidt ændret fra min original tutorial rettet mod Android O-brugere, men mange, mange flere brugere vil være i stand til at drage fordel af denne tutorial, da den ikke er begrænset til brugere, der kører Android O Developer Preview. Når det er sagt, lad os komme i gang.


Krav

System Krav: Du skal bruge en Android 7.0+-enhed, der er kompatibel med AOSP-navigationslinjens tilpasning. Google Nexus, Pixel og nogle Sony/HTC-telefoner er kendt for at virke. De fleste enheder, der er tæt på lager-Android, har sandsynligvis ikke fjernet AOSP-navigationslinjens tilpasning og burde fungere. Dette betyder, at det sandsynligvis ikke vil fungere på din almindelige LG, Samsung eller Huawei/Honor-enhed. Se afsnittet "kompatibilitet". i det første indlæg i denne tråd. (Bemærk: din enheds OEM er muligvis ikke opført i den tråd. Den eneste måde at vide med sikkerhed, om din enhed er kompatibel, er at prøve appen, som vi viser dig, hvordan du gør nedenfor.)

App Krav:

  • Brugerdefineret navigationslinje (Gratis for 2 profiler)
  • Tasker ($2.99)
  • Notifikationslytter (Gratis)

Opsætning: Brugerdefineret navigationslinje

Grunden til, at vi har brug for brugerdefineret navigationslinje, er indlysende - denne applikation er, hvad der vil tillade os at ændre nav-bjælken for at vise disse medieafspilningstaster. (Teknisk har vi faktisk ikke brug for denne app til disse ændringer, da vi kan bruge shell-kommandoer eller andre Tasker-plugins, men for at gøre tingene lettere for vores brugere, vil vi vise hvordan for at konfigurere dette ved hjælp af denne vidunderlige app.) Notification Listener er nødvendig for at overvåge, hvilke notifikationer der sendes til statuslinjen, så vi ved, hvornår musikafspilning er startet og sluttede. Endelig er Tasker automatiseringsappen, der bygger bro mellem Notification Listener og Custom Navigation Bar - den bruger Notification Listener for at registrere, hvornår musikken er startet/sluttet, og derefter udløse Custom Navigation Bar for at ændre navigationslinjen derfor.

Den første ting, vi skal gøre, er at sikre, at det overhovedet er muligt at ændre navigationslinjen på din enhed. Hvis din enhed er en af ​​dem, der er angivet som kompatible i Tråd til brugerdefineret navigationslinje, så er chancerne for det. Vi kan bekræfte ved at køre gennem den korte vejledning, der følger med denne app.

Installer appen fra Google Play Butik, åbn derefter appen og fortsæt gennem de indledende skærmbilleder. Custom Navigation Bar vil bede dig om at give den en bestemt tilladelse kaldet WRITE_SECURE_SETTINGS for at fortsætte med at bruge appen. Der er to måder, du kan gøre dette på, som det står i ansøgningen.

  1. Hvis du har en enhed med rod, vil Custom Navigation Bar anmode om superbrugeradgang. Giv det, og appen vil automatisk give sig selv denne tilladelse.
  2. Hvis din enhed ikke er rootet, skal du give tilladelsen gennem ADB. Åbn en kommandoprompt/terminal på din maskine, og indtast derefter følgende kommando: adb shell pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS

Når du har givet appen denne tilladelse via en af ​​de to ovenstående metoder, fortsætter appen med en kompatibilitetstest. Hvis din nav-bar ikke ændrer sig, så er du desværre uheldig. Hvis din navigeringslinje ændres til at vise en højre pilknap, så tillykke, at din enhed understøttes! Vi kan nu gå videre til at ændre vores navigeringslinje.

Opsætning: Notifikationslytter

For at Notification Listener kan opsnappe notifikationer, skal vi give den en særlig tilladelse kendt som "notification access"-tilladelsen. Denne tilladelse gives ikke gennem en standard tilladelsesdialog, men skal gives via en særlig indstillingsmenu af brugeren. Heldigvis er dette meget nemt at gøre. Du skal blot åbne Notification Listener-appen, og appen vil fejle dig for at aktivere denne tilladelse. Bare tryk på knappen, og appen fører dig til skærmen, hvor du kan give appen denne tilladelse. Aktiver meddelelsesadgang for appen.


Tutorial

Når du har bekræftet, at Custom Navigation Bar er kompatibel med din enhed, og at notifikationsadgang er aktiveret for Notification Listener, er det tid til at konfigurere alt dette. Den første ting, vi skal gøre, er at oprette en ny profil i brugerdefineret navigationslinje, der, når den er aktiveret, tilføjer en forrige/næste nøgle til vores navigeringslinje. Her er trin-for-trin instruktionerne:

  1. Åbn Custom Navigation Bar og tryk på Profiler under afsnittet Automation.
  2. Tryk på + ikonet øverst til højre for at tilføje en ny profil.
  3. Tryk på den profil, der lige blev oprettet.
  4. Tryk på under sektionen Profil Navn for at navngive profilen. Navngiv det Mediekontrol.
  5. Tryk på under afsnittet "Ekstra venstre knap". Type. Vælg Nøgle kode som typen.
  6. Nu under afsnittet "Ekstra venstre knap" vil du se to yderligere muligheder. Trykke på Nøgle kode.
  7. Rul ned og find Medier Tidligere nøgle.
  8. Tryk nu på Ikon under "Ekstra venstre knap." For ikonet vælg spring forrige over.
  9. Gentag trin 5-8 men for "Ekstra højre knap." Denne gang bliver nøglekoden dog Medier næste og ikonet skal være spring næste.
  10. Test din profil ved at rulle tilbage op og kontrollere Aktiveret. Hvis du ser de forrige/næste nav-taster nederst, så virker denne profil!

Nu hvor vi har oprettet profilen Custom Navigation Bar, vil vi oprette vores Tasker-profil, der aktiverer/deaktiverer denne profil, når der afspilles musik. Først vil vi oprette den profil, der udløses, når vores musik/podcast/radio-app sendte en notifikation. Her er trin-for-trin instruktionerne:

  1. Åbn Tasker og opret en ny profil ved at trykke på +-ikonet nederst til højre.
  2. Vælg Begivenhed sammenhæng.
  3. Trykke på Plugin.
  4. Vælg Notifikationslytter plugin.
  5. Vælg notifikationslytter handling, der dukker op.
  6. Tryk på blyantikonet for at åbne Notification Listeners konfiguration.
  7. Lad notifikationsbegivenheden være som indsendt men under apps vælg den eller de app(er), du vil overvåge. For eksempel valgte jeg Google Play Musik her. Tryk på fluebenet øverst til højre, når du er færdig.
  8. Tilbage i Tasker skal du trykke på tilbage-piletasten øverst til venstre for at gå tilbage til Tasker's hovedskærm.
  9. Tasker vil bede dig om at vedhæfte en opgave til denne profil, vi lige har lavet. Vælg for at oprette en ny opgave. Gider ikke navngive opgaven.
  10. Når du er i Taskers opgaveredigeringsskærm, skal du tilføje en ny handling ved at trykke på +-knappen nederst i midten.
  11. Vælg Plugin fra handlingskategorierne.
  12. Vælg Brugerdefineret navigationslinje plugin.
  13. Tryk på blyantikonet igen, som denne gang bringer os til Custom Navigation Bars konfigurationsside.
  14. For handlingen lad det være "Aktiver profil." Under Vælg profil skal du vælge Mediekontrol. Tryk på fluebenet øverst til højre, når du er færdig.
  15. Tryk tilbage og derefter tilbage en gang til, indtil du er på Taskers hovedskærm.

Ovenstående Tasker-profil, vi oprettede, aktiverer profilen mediekontrol Custom Navigation Bar for at tilføje medieafspilningen taster, når medieafspilning begynder, men nu skal vi deaktivere mediekontrolprofilen, når vi afviser medieappens notifikation. Her er instruktionerne:

  1. Opret en ny profil og vælg Begivenhed sammenhæng.
  2. Gå til Plugin --> Notification Listener --> Notification Listener.
  3. Vælg denne gang under "Meddelelseshændelse". Fjernet. Vælg igen den eller de samme app(er), som du vil overvåge. Jeg valgte Google Play Musik her. Tryk på fluebenet, når du er færdig.
  4. Gå tilbage til Taskers hovedskærm, hvor den vil bede dig om at tilføje en opgave til denne nye profil. Tilføj en opgave, men lad være med at navngive den.
  5. Når du er i Taskers opgaveredigeringsskærm, skal du tilføje en ny handling. Gå til Plugin --> Brugerdefineret navigationslinje.
  6. Denne gang for "Action" skal du vælge til Deaktiver profil men vælg igen Mediekontrol profil. Tryk på afkrydsningsknappen øverst, når du er færdig.
  7. Gå ud af opgaven tilbage til Taskers hovedskærm.

Når du har lavet begge Tasker-profiler, en til hvornår medieappens meddelelse bliver sendt og en anden til når de samme meddelelse(r) er fjernet, er du færdig. Tasker vil nu vise medieafspilningstaster i din navigeringslinje, når medieafspilning er startet, og rydde navigeringslinjen for disse taster, når medieafspilning er afsluttet!


Brug af Shell-kommandoer

I betragtning af hvor nemt det er at bruge XDA Senior Member pafonb's Brugerdefineret navigationslinje app, ser jeg ikke rigtig behovet for at give detaljerede trin-for-trin instruktioner om, hvordan man gør dette med andre Tasker-plugins som f.eks. SecureTask eller Autoværktøjer (eller run shell-funktionen i Tasker). Det er dog bestemt muligt, og jeg vil i det mindste give en oversigt over de kommandoer, du skal bruge for at replikere denne opsætning uden brug af paphonbs app.

Den første ting du skal gøre er at installere enten SecureTask eller AutoTools. Du skal give WRITE_SECURE_SETTINGS-tilladelsen til den app, du vælger, for at styre navbar-tuneren.

Til SecureTask:

adbshellpmgrantcom.balda.securetaskandroid.permission.WRITE_SECURE_SETTINGS

For AutoTools:

adbshellpmgrantcom.joaomgcd.autotoolsandroid.permission.WRITE_SECURE_SETTINGS

Dernæst skal du downloade de ikoner, som du vil bruge til de forrige/næste nøgler. Du skal bruge ikonerne i PNG-formatet, og hvad angår størrelsen, kan du bestemme størrelsen på de ikoner, du har brug for, ved at slå op enhedens skærmtæthedsmålinger på Material.io og korrelerer det med en ikonstørrelse referencediagram. IconsDB.com er en god ressource til gratis ikoner. Gem de ikoner, du skal bruge, som previous.png og next.png i en mappe kaldet /NavIcons i rodmappen på dit lager.

Til sidst skal du indtaste denne kommando for at vise mediekontrolknapperne:

settings put secure sysui_nav_bar "key(88:file:///storage/emulated/0/NavIcons/previous.png),back; home; recent, key(87:file:///storage/emulated/0/NavIcons/next.png)"

hvor nøgle #88 refererer til KEYCODE_MEDIA_PREVIOUS og nøgle #87 henviser til KEYCODE_MEDIA_NEXT.

Derefter for at gendanne dine navigeringslinjetaster til standardlayoutet (dvs. Når du stryger medieafspilningsmeddelelsen væk), skal du indtaste denne kommando:

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

I det væsentlige vil opsætningen af ​​Tasker-profilen være nøjagtig den samme, da Notification Listeners konfiguration ovenfor ikke ændres. Men hvis du vælger ikke at bruge Custom Navigation Bar-appen til at styre navigeringslinjen, så kan du bruge de to ovenstående shell-kommandoer som et alternativ. Bemærk blot, at medmindre du er rodfæstet og bruger "run shell"-handlingen i Tasker, er processen for at få disse kommandoer ind i SecureTask eller AutoTools helt op til dig. Det er virkelig ikke så svært at gøre, men mange brugere synes bare at bruge paphonbs app nemmere at bruge, så jeg vil ikke gå meget mere i detaljer her.


Konklusion

Det var det for denne tutorial. I fremtidige tutorials vil jeg vise flere potentielle praktiske anvendelser ved at ændre din nav-bjælke, især på en kontekstuel måde ved hjælp af en automatiseringsapp som Tasker.

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 vil ikke finde tutorials 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, og se vores nyligt udgivne XDA feed app, hvis du ejer en OnePlus 3 eller OnePlus 3T! Tak, og hold øje med vores næste tutorial!