En handledning för att aktivera OK Google kommandoordsdetektering på vissa Huawei- och Honor-telefoner som använder den proprietära "Emy"-rösttjänsten.
Förra veckan visade jag hur man gör tvinga OK Google kommandoordsidentifiering att fungera på vilken enhet som helst när skärmen var avstängd.
Även om det säkert kan vara användbart i vissa fall, kräver det att användare har root-åtkomst för att aktivera och är också lite batterihungrig eftersom det hindrar din enhet från att gå in i ett djupt viloläge. Det skulle därför vara att föredra om enheten hade hårdvarustöd för offline-kommandoordsigenkänning.
När jag först fick Huawei Mate 9 blev jag förvånad över att se att "OK Google" alltid på inte var tillgängligt. Med tanke på att Mate 9 är en premium flaggskeppsenhet packad med massor av sensorer, verkade det konstigt att Huawei inte skulle ha en dedikerad co-processor för att hantera röstigenkänning. Det verkar dock som att jag hade fel från början. Huawei Mate 9 (och senare fick jag veta att många flaggskepp Huawei/Honor-enheter) stöder röstigenkänning offline -
Undangömt i Inställningar --> Smart assistans --> Röststyrning är en meny för "Voice wakeup" som låter dig ställa in ett kommandoord för att väcka enheten och starta några grundläggande kommandon. Du kan fråga tjänsten, som heter "Emy", för att hitta din telefon eller ringa en viss kontakt, men förutom det är det ganska nedslående jämfört med Googles röstkommandon.
Men uppsidan är att Huaweis röstassistent kan tillkallas även när skärmen är avstängd (och det stöder till och med anpassade kommandoord för att starta), vilket är den funktionalitet vi saknade från Google-appen på Huawei-enheter. Därför har jag kommit på ett sätt att dra nytta av Huaweis "OK Emy" för att istället starta Googles röstsökning så att vi på ett omvägande sätt kan uppnå "OK Google" när skärmen är avstängd.
Säg hej då till Emy och hej till Google
Som ni kan se i videon tillkallar jag "OK Emy" som kort blinkar med Huaweis egenutvecklade röstinteraktionstjänst innan jag öppnar upp Googles röstsökning. Detta fungerar även när skärmen är avstängd, även om jag inte kan visa det med en skärminspelning.
För att ställa in detta behöver du bara automatiseringsappen Tasker. Installera Tasker (eller någon annan automatiseringsapp som du väljer, men den här handledningen är byggd för Tasker eftersom det är den enda appen jag har erfarenhet av) och aktivera dess tillgänglighetstjänst. Tasker behöver en tillgänglighetstjänst så att den kan övervaka ändringar i fönstertillståndet, vilket är vad vi kommer att använda för att upptäcka när Emy har aktiverats.
Om du har erfarenhet av Tasker kan du utöka växlingen nedan för att se profilens beskrivning och snabbt replikera den här profilen själv. Om du inte är bekant med Tasker, fortsätt att läsa för steg-för-steg-instruktioner.
Profilbeskrivning
Profile: Mate 9 OK Google (182)
Event: Variable Set [ Variable:%WIN Value:sound triggerUserVariablesOnly:Off ]
Enter: Anon (191)
A1: Wait[ MS: 0 Seconds: 1 Minutes: 0 Hours: 0 Days: 0 ]
A2: Launch App [ App: Google: Voice Search Data: Exclude From Recent Apps: Off Always StartNew Copy:Off ]
Läs mer
Det första du vill göra är att skapa en ny profil i Tasker. På huvudskärmen trycker du på + ikonen i det nedre högra hörnet. Tryck på Händelse sammanhang och välj Variabler --> Variabeluppsättning. Ange för variabeln %VINNA och för Värdet ange "ljud trigger" (utan parentes). "Sound trigger" är namnet på fönstret som dyker upp när Emy aktiveras, så den här profilen kommer att aktiveras när fönsteretiketten (%WIN) fylls i med den texten.
Därefter kommer du att skapa uppgiften som är kopplad till den här profilen. Tasker kommer att be dig skapa en ny uppgift och namnge den, men det är inte viktigt att namnge den, så tryck bara på bockmarkeringen för att komma till skärmen för uppgiftsredigering. Tryck längst ner + och gå till Uppgift --> Vänta och ställ in den att vänta på 1 sekund. Detta är för att förhindra en bugg från Googles röstsökning där det tidsgränsar om det anropas direkt efter Emy. När du har lagt till den åtgärden trycker du på + igen och denna gång gå till App --> Starta appen. Scrolla ner tills du ser Google app. Lång press på "Google" för att visa sin lista över tillgängliga aktiviteter och bläddra ned för att välja VoiceSearchActivity.
Det är allt! Tasker bör nu börja övervaka ändringar i fönstrets tillstånd och kommer att aktivera denna profil när fönstret visas etiketten matchar "ljudtrigger" i vilket fall den kommer att vänta 1 sekund innan den startar Googles röstsökningsaktivitet.
För att få den här funktionen att verka ännu mer sömlös kan du ändra Emys hotword till "OK Google" så det blir som om Huaweis Emy är totalt oengagerad. Vi använder det bara eftersom det är den enda tjänsten på Huawei-enheter som kan väcka telefonen vid hotword-detektering!
Ladda ner och importera profil
Som alltid tillhandahåller vi skriptets XML-fil som du kan ladda ner och importera. Ladda bara ned filen från länken nedan och spara den var som helst på ditt interna minne. Öppna Tasker och inaktivera nybörjarläge i Inställningar. Gå sedan tillbaka till huvudskärmen och tryck länge på fliken "Profil" upptill. Du bör se ett popup-fönster med ett av alternativen "Importera". Tryck på det och bläddra till var du sparade .prf.xml-filen och välj den filen att importera. Se till att du kommer ihåg det aktivera Tasker's Accessibility Service annars fungerar den här profilen inte!
Ladda ner profilen från AndroidFileHost
Vi hoppas att du tycker att det här tipset är användbart. Låt oss veta i kommentarerna nedan om detta fungerar för dig!