Så här lägger du till medieuppspelningskontroller i navigeringsfältet när du spelar musik

Tasker-profil som lägger till mediauppspelningskontroller i navigeringsfältet när du spelar musik. Fungerar på enheter med Android Nougat (7.0+) som Google Nexus och Pixels.

Ända sedan Google först introducerade konceptet med mjukvarans navigeringsnycklar till Android har användare bett om ett sätt att anpassa vilka nycklar som är tillgängliga för användarna. Även om anpassade ROM har erbjudit denna nivå av anpassning i flera år, är det bara i första Android O Developer Preview hittar vi en officiell metod från Google för att ändra navigeringsfältet. Men precis som många funktioner före den, dök inte denna navbar-tuner upp från ingenstans, och testade faktiskt i hemlighet för Android Nougat. Det var dock först nyligen som vi upptäckte att denna dolda navbar-tuner i Android Nougat kan faktiskt nås utan att behöva root-åtkomst, ett anpassat ROM eller systemgränssnittsmods. Därför har en ny väg för rotlös anpassning öppnats för många användare, och idag kommer vi att guida dig genom en populär begäran:

hur man lägger till medieuppspelningskontroller i navigeringsfältet när du spelar musik (Android 7.0+, ingen root behövs!)

Som du kan se i skärmdumpen ovan, min testenhet (en orootad, bootloader-låst Google Nexus 6-enhet på Android 7.0 Nougat) har standarduppsättningen av navigeringsknappar tills musikuppspelning initieras i Google Play Musik. När musikuppspelningen börjar läggs två nya tangenter till i navigeringsfältet: en knapp för att spela föregående spår och en knapp för att spela nästa spår. Dessa tangenter stannar i navigeringsfältet tills jag avvisar Google Play Musik - på så sätt kan jag fortfarande använda min telefonen för andra appar samtidigt som jag behåller dessa uppspelningskontrollknappar tills jag bestämmer mig för att jag har lyssnat klart på musik.

Även om min skärmdump ovan visar att den här inställningen används för Google Play Musik, kan den enkelt ändras för att fungera med praktiskt taget alla musik, podcast eller radioapp som finns där ute - så länge den appen visar ett meddelande under uppspelning och accepterar medieföregående/nästa tangenter (båda mycket troligt). Denna handledning är något modifierad från min original handledning riktad till Android O-användare, men många, många fler användare kommer att kunna dra fördel av denna handledning eftersom den inte är begränsad till användare som kör Android O Developer Preview. Med det sagt, låt oss börja.


Krav

Systemet Krav: Du behöver en Android 7.0+-enhet som är kompatibel med AOSP-navigeringsfältsanpassaren. Google Nexus, Pixel och vissa Sony/HTC-telefoner är kända för att fungera. De flesta enheter som är nära lager Android har sannolikt inte tagit bort AOSP navigeringsfältsanpassaren och borde fungera. Detta betyder att det troligen inte kommer att fungera på din lager LG, Samsung eller Huawei/Honor-enhet. Se avsnittet "kompatibilitet". i det första inlägget i denna tråd. (Obs: din enhets OEM kanske inte finns med i den tråden. Det enda sättet att veta säkert om din enhet är kompatibel är att prova appen, vilket vi kommer att visa dig hur du gör nedan.)

Appkrav:

  • Anpassad navigeringsfält (Gratis för 2 profiler)
  • Tasker ($2.99)
  • Aviseringslyssnare (Fri)

Inställning: Anpassad navigeringsfält

Anledningen till att vi behöver anpassad navigeringsfält är uppenbart - det här programmet är det som gör att vi kan ändra navigeringsfältet för att visa dessa medieuppspelningsknappar. (Tekniskt sett behöver vi faktiskt inte den här appen för dessa ändringar eftersom vi kan använda skalkommandon eller andra Tasker-plugins, men för att göra saker enklare för våra användare kommer vi att visa hur för att ställa in detta med denna underbara app.) Notification Listener behövs för att övervaka vilka notiser som skickas till statusfältet, så att vi vet när musikuppspelningen har startat och slutade. Slutligen är Tasker automationsappen som överbryggar klyftan mellan Notification Listener och Custom Navigation Bar - den använder Notification Listener för att upptäcka när musik har startat/slutat och sedan utlösa anpassad navigeringsfält för att ändra navigeringsfältet följaktligen.

Det första vi behöver göra är att se till att det till och med är möjligt att ändra navigeringsfältet på din enhet. Om din enhet är en av de som listas som kompatibla i Tråd för anpassad navigeringsfält, då är chansen stor att det blir det. Vi kan verifiera genom att gå igenom den korta handledningen som följer med den här appen.

Installera appen från Google Play Butik, öppna sedan appen och fortsätt genom de inledande skärmarna. Anpassad navigeringsfält kommer att be dig att ge den en viss behörighet som heter WRITE_SECURE_SETTINGS för att fortsätta använda appen. Det finns två sätt du kan göra detta på, som anges i ansökan.

  1. Om du har en rotad enhet kommer Custom Navigation Bar att begära superanvändaråtkomst. Bevilja det och appen kommer automatiskt att ge sig själv denna behörighet.
  2. Om din enhet inte är rootad måste du ge tillståndet via ADB. Öppna en kommandotolk/terminal på din maskin och skriv sedan in följande kommando: adb shell pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS

När du har gett appen denna behörighet genom någon av de två metoderna ovan, fortsätter appen med ett kompatibilitetstest. Om ditt navigeringsfält inte ändras har du tyvärr ingen tur. Om ditt navigeringsfält ändras till att visa en högerpil, så grattis att din enhet stöds! Vi kan nu gå vidare till att ändra vårt navigeringsfält.

Inställning: Notification Listener

För att Notification Listener ska kunna avlyssna aviseringar måste vi ge den en särskild behörighet som kallas "notification access"-tillstånd. Denna behörighet ges inte via en standarddialog för behörighet, utan måste ges via en speciell inställningsmeny av användaren. Lyckligtvis är detta väldigt enkelt att göra. Öppna helt enkelt appen Notification Listener och appen kommer att bugga dig för att aktivera denna behörighet. Tryck bara på knappen så tar appen dig till skärmen där du kan ge appen denna behörighet. Aktivera aviseringsåtkomst för appen.


Handledning

När du har bekräftat att Custom Navigation Bar är kompatibel med din enhet och att aviseringsåtkomst är aktiverad för Notification Listener, är det dags att ställa in allt detta. Det första vi behöver göra är att skapa en ny profil i Custom Navigation Bar som, när den är aktiverad, kommer att lägga till en föregående/nästa nyckel till vårt navigeringsfält. Här är steg-för-steg-instruktionerna:

  1. Öppna anpassad navigeringsfält och tryck på Profiler under avsnittet Automation.
  2. Tryck på + ikonen uppe till höger för att lägga till en ny profil.
  3. Tryck på profilen som just skapades.
  4. Under profilsektionen, tryck på namn för att namnge profilen. Namnge det Mediakontroll.
  5. Tryck på under avsnittet "Extra vänsterknapp". Typ. Välj Nyckelkod som typen.
  6. Nu under avsnittet "Extra vänsterknapp" kommer du att se ytterligare två alternativ. Knacka på Nyckelkod.
  7. Scrolla ner och hitta Media Föregående nyckel.
  8. Tryck nu på Ikon under "Extra vänsterknapp." Välj för ikonen hoppa över föregående.
  9. Upprepa steg 5-8 men för "Extra högerknapp." Den här gången blir dock nyckelkoden Media Nästa och ikonen ska vara hoppa över nästa.
  10. Testa din profil genom att rulla tillbaka upp och kontrollera Aktiverad. Om du ser föregående/nästa navigeringsknappar längst ner, så fungerar den här profilen!

Nu när vi har konfigurerat profilen för anpassad navigeringsfält kommer vi att skapa vår Tasker-profil som aktiverar/inaktiverar den här profilen när musik spelas. Först kommer vi att skapa profilen som kommer att utlösas när vår musik/podcast/radioapp publicerade ett meddelande. Här är steg-för-steg-instruktionerna:

  1. Öppna Tasker och skapa en ny profil genom att trycka på +-ikonen längst ner till höger.
  2. Välj Händelse sammanhang.
  3. Knacka på Plugin.
  4. Välj Aviseringslyssnare plugin.
  5. Välj aviseringslyssnare handling som dyker upp.
  6. Tryck på pennikonen för att öppna Notification Listeners konfiguration.
  7. Lämna meddelandehändelsen som Postad men under appar väljer du den eller de appar som du vill övervaka. Till exempel valde jag Google Play Musik här. Tryck på bockikonen uppe till höger när du är klar.
  8. Tillbaka i Tasker, tryck på bakåtpilen uppe till vänster för att gå tillbaka till Taskers huvudskärm.
  9. Tasker kommer att be dig att bifoga en uppgift till den här profilen vi just skapade. Välj för att skapa en ny uppgift. Bry dig inte om att namnge uppgiften.
  10. När du är i Tasker's Task redigeringsskärm, lägg till en ny åtgärd genom att trycka på +-knappen längst ner i mitten.
  11. Välj Plugin från åtgärdskategorierna.
  12. Välj den Anpassad navigeringsfält plugin.
  13. Tryck på pennikonen igen som denna gång tar oss till Custom Navigation Bars konfigurationssida.
  14. För handlingen lämna det som "Aktivera profil." Under Välj profil väljer du Mediakontroll. Tryck på bocken uppe till höger när du är klar.
  15. Tryck tillbaka och sedan tillbaka en gång till tills du är på Taskers huvudskärm.

Ovanstående Tasker-profil som vi skapade kommer att aktivera Media Control Custom Navigation Bar-profilen för att lägga till mediauppspelningen när mediauppspelningen börjar, men nu måste vi inaktivera Media Control-profilen när vi stänger mediaappens underrättelse. Här är instruktionerna:

  1. Skapa en ny profil och välj Händelse sammanhang.
  2. Gå till Plugin --> Notification Listener --> Notification Listener.
  3. Välj den här gången under "Aviseringshändelse". Tog bort. Välj igen samma app(er) som du vill övervaka. Jag valde Google Play Musik här. Tryck på bockmarkeringen när du är klar.
  4. Gå tillbaka till Taskers huvudskärm där den kommer att be dig lägga till en uppgift i den här nya profilen. Lägg till en uppgift men bry dig inte om att namnge den.
  5. När du är i Tasker's Task-redigeringsskärm lägger du till en ny åtgärd. Gå till Plugin --> Anpassad navigeringsfält.
  6. Denna gång för "Action" välj till Inaktivera profil men återigen välj Mediakontroll profil. Tryck på bockknappen upptill när du är klar.
  7. Gå ut ur uppgiften tillbaka till Taskers huvudskärm.

När du har skapat båda Tasker-profilerna, en för när medieappens avisering läggs upp och en annan för när samma avisering(ar) tas bort, är du klar. Tasker kommer nu att visa medieuppspelningsknappar i ditt navigeringsfält när mediauppspelningen har startat, och rensa navigeringsfältet från dessa tangenter när mediauppspelningen har avslutats!


Använda skalkommandon

Med tanke på hur enkelt det är att använda XDA Senior Member pafonbs Anpassad navigeringsfält app, jag ser inte riktigt behovet av att tillhandahålla detaljerade steg-för-steg-instruktioner om hur man gör detta med andra Tasker-plugins som t.ex. SecureTask eller AutoTools (eller körskalfunktionen i Tasker). Det är dock säkert möjligt, och jag kommer åtminstone att ge en sammanfattning av de kommandon du behöver för att replikera den här inställningen utan att använda paphonbs app.

Det första du behöver göra är att installera antingen SecureTask eller AutoTools. Du måste ge WRITE_SECURE_SETTINGS behörighet till vilken app du än väljer för att styra navigeringsfältet.

För SecureTask:

adbshellpmgrantcom.balda.securetaskandroid.permission.WRITE_SECURE_SETTINGS

För AutoTools:

adbshellpmgrantcom.joaomgcd.autotoolsandroid.permission.WRITE_SECURE_SETTINGS

Därefter måste du ladda ner ikonerna som du kommer att använda för föregående/nästa nycklar. Du behöver ikonerna i PNG-format, och vad gäller storleken kan du bestämma storleken på ikonerna du behöver genom att slå upp din enhetens mätvärden för displaydensitet på Material.io och korrelerar det med en ikonstorlek referensdiagram. IconsDB.com är en bra resurs för gratis ikoner. Spara ikonerna du kommer att använda som previous.png och next.png i en mapp som heter /NavIcons i rotkatalogen på din lagring.

Slutligen kommer du att ange det här kommandot för att visa mediakontrollknapparna:

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)"

där nyckel #88 refererar till KEYCODE_MEDIA_PREVIOUS och nyckel #87 hänvisar till KEYCODE_MEDIA_NEXT.

Sedan för att återställa dina navigeringsknappar till standardlayouten (dvs. när du sveper bort medieuppspelningsmeddelandet), anger du det här kommandot:

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

I huvudsak kommer Tasker-profilens inställningar att vara exakt samma eftersom Notification Listeners konfiguration ovan inte kommer att ändras. Men om du väljer att inte använda appen Custom Navigation Bar för att styra navigeringsfältet, kan du använda ovanstående två skalkommandon som ett alternativ. Observera bara att, om du inte är rotad och använder "kör skal"-åtgärden i Tasker, är processen för att få dessa kommandon till SecureTask eller AutoTools helt upp till dig. Det är verkligen inte så svårt att göra, men många användare tycker att det är lättare att använda Paphonbs app, så jag kommer inte gå in på så mycket mer detaljer här.


Slutsats

Det var allt för den här handledningen. I framtida handledningar kommer jag att visa upp fler potentiella praktiska användningsområden för att ändra ditt navigeringsfält, särskilt på ett kontextuellt sätt med en automatiseringsapp som Tasker.

Vänligen stöd XDA-utvecklare på alla sätt du kan! Vi upptäckte nyligen att det fanns flera bloggar som klippte, kopierade, klistrade in våra ursprungliga handledningar och annat innehåll som delas av våra användare på forumen. Dessa bloggar har försökt ta åt sig äran för den enorma mängd ansträngning vi gör för att sammanställa dessa tutorials snarare än att tillhandahålla kvalitetsinnehåll på egen hand. Du kommer inte att hitta tutorials som de vi har skrivit i vår tutorials kategori eller tutorials från våra forum någon annanstans.

Följ oss på Twitter, Google+, Facebook, eller Youtube. Kolla in vår XDA Labs app för ett snabbt sätt att bläddra i våra forum (och överväg att skaffa XDA annonsfri också!) på din mobila enhet, och kolla in vår nyligen släppta XDA-flöde app om du äger en OnePlus 3 eller OnePlus 3T! Tack och håll utkik efter vår nästa handledning!