Díky novému oprávnění implementovanému v Android Oreo jsou nyní systémové aplikace schopny nastavit posluchače tak, aby detekovaly dlouhé stisky tlačítek hlasitosti.
Přidávání dalších funkcí k různým hardwarovým a softwarovým tlačítkům na našich zařízeních je něco, co nadšenci pro Android již nějakou dobu dělají. Většina lidí ví o aplikacích jako např Mapovač tlačítek od XDA Recognized Developer vzplanutí2a dokonce jsme o tom mluvili další remapper řešení zpět, když vyšel Galaxy S8. Zatímco tato řešení zvládla tyto akce určitým způsobem, Google vypadá, že implementuje posluchače v Android Oreo pro dlouhé stisknutí tlačítek hlasitosti. To znamená, že potenciálně mohou být aplikace v budoucnu schopny reagovat na dlouhé stisknutí tlačítka hlasitosti, i když jsou na obrazovce je vypnuto, což lze použít k přenesení často žádané funkce z vlastních ROM - ovládání hudební stopy pomocí tlačítka hlasitosti lisy.
To chceme zmínit tato funkce není ve skutečnosti povoleno v uživatelsky orientovaném sestavení, které máme právě k dispozici. Jeho podpora však existuje, jak dokazuje potvrzení, které jsme našli, a to znamená, že může být povoleno výrobcem OEM pro vaše konkrétní zařízení. Jak již bylo zmíněno, tradiční přemapovací aplikace fungují tak, že detekují, zda byla odeslána událost KeyEvent (dlouhým stisknutím tyto aplikace měří čas mezi událost klávesy dolů a klávesy nahoru, zatímco při dvojitém stisknutí měří čas mezi stisknutími klávesy), ale tyto události kláves se odesílají pouze tehdy, když je obrazovka na. Kromě toho také obvykle vyžadují použití služby přístupnosti, která může být zdaněním výkonu.
Vaše typické řešení přemapování tlačítek lze považovat za řešení, které lze použít k zapínání nebo vypínání svítilny, otevírání aplikace, stahování oznamovacího panelu a tak dále. To, co Google implementoval do systému Android Oreo, to však posouvá o krok dále a umožňuje systémovým aplikacím samy nastavit tyto posluchače s dlouhým stisknutím tlačítka hlasitosti. To by mohlo uživateli umožnit spustit něco v samotné aplikaci, jakmile platforma zjistí, že tlačítko hlasitosti bylo na několik sekund podrženo.
Způsob, jakým Google zahrnul podporu pro toto v Android Oreo, bude fungovat pouze pro „privilegované“ (aka předinstalované systémové) aplikace hned po vybalení. OEM pouze musí povolit privilegované aplikaci, aby měla android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER
povolení pro nastavení posluchače. Dokázali jsme však udělit oprávnění, jako jsou tato, pomocí příkazů ADB, takže je možné, že ti z nás, kteří to vědí, toto mohou ručně nastavit i pro aplikace třetích stran.