Благодарение на новото разрешение, внедрено в Android Oreo, системните приложения вече могат да настройват слушатели, за да откриват продължително натискане на клавишите за сила на звука.
Добавянето на допълнителна функционалност към различни хардуерни и софтуерни бутони на нашите устройства е нещо, което ентусиастите на Android правят от известно време. Повечето хора знаят за приложения като Картограф на бутони от XDA Recognized Developer flar2, и дори говорихме за други решения за ремапър назад, когато беше пуснат Galaxy S8. Въпреки че тези решения се справят с тези действия по определен начин, Google изглежда внедрява слушател в Android Oreo за продължително натискане на клавишите за сила на звука. Това означава, че потенциално приложенията в бъдеще може да са в състояние да реагират на продължително натискане на клавиша за сила на звука, дори докато сте на екрана е изключено, което може да се използва за прехвърляне на често искана функция от потребителски ROM - управление на музикални песни с клавиш за сила на звука преси.
Искаме да споменем това тази функция всъщност не е активиран в насочената към потребителя компилация, която имаме на разположение в момента. Поддръжка за него обаче е налице, както се вижда от ангажимента, който намерихме, и това означава, че може да бъде активиран от OEM за вашето конкретно устройство. Както споменахме, традиционните приложения за пренасочване работят, като откриват дали е изпратено KeyEvent (при продължително натискане тези приложения измерват времето между събитие за натискане на клавиш и нагоре, докато при двойно натискане те измерват времето между натисканията надолу), но тези KeyEvents се изпращат само докато екранът е На. Освен това те също обикновено изискват използването на услуга за достъпност, което може да наложи данък върху производителността.
Вашето типично решение за пренасочване на бутони може да се счита за заобиколно решение, което да се използва за включване или изключване на фенерчето, отваряне на приложение, издърпване надолу на панела за уведомяване и т.н. Въпреки това, това, което Google внедри в Android Oreo, прави тази крачка напред, като позволява на системните приложения сами да настройват тези слушатели за продължително натискане на бутоните за сила на звука. Това може да позволи на потребителя да задейства нещо в самото приложение, след като платформата открие, че бутонът за сила на звука е бил задържан за няколко секунди.
Начинът, по който Google е включил поддръжка за това в Android Oreo, това ще работи само за "привилегировани" (известни още като предварително инсталирана система) приложения веднага. OEM просто трябва да позволи на привилегированото приложение да има android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER
разрешение за да настроите слушателя. Въпреки това успяхме да предоставим разрешения като тези с ADB команди, така че е възможно онези от нас, които са запознати, да могат ръчно да зададат това и за приложения на трети страни.