Урок за това как да спрете вибрациите от всяко приложение за Android на вашия телефон с помощта на проста ADB команда. Елиминирайте вибриращите реклами и нежеланите вибрации на играта.
Онлайн рекламите продължават да намират нови начини да ви дразнят. През последните няколко години една конкретна форма на онлайн реклама измъчва мобилните устройства: вибриращата реклама. Използвайки Vibration API, рекламите вибрираха на телефона ви досадно грабват вниманието ви. Този проблем е бил известен от години, но Google много се забави с разрешаването на проблема. Само с версия 60 на Chrome вибриращите реклами са премахнати, но към момента версия 60 е достъпна само в каналите Beta, Dev и Canary на Chrome. Всъщност обаче има начин ръчно да спрете вибрациите всякакви Приложение за Android на вашия телефон - без напълно да поставяте телефона си в безшумен режим. Това означава, че няма да се налага да чакате разработчиците на приложения да актуализират своите приложения, така че да не могат да вибрират телефона ви.
Спрете вибрациите от всяко приложение за Android
Методът, който прилагаме, е доста прост. Всичко, което ще правим, е да ограничим разрешението, което позволява на приложението да използва вибрационния двигател на устройството, като изпрати ADB команда. При това приложението не може да вибрира телефона ви. Преди да започнем, трябва да инсталираме приложение, за да можем да разберем какво е името на пакета за приложението, което искаме да спре вибрациите на нашия телефон. Не се притеснявайте, това е напълно безплатно (и малко) приложение.
Цена: Безплатно.
4.2.
- Инсталирайте USB драйверите за вашия конкретно устройство, вероятно е необходимо само ако сте на Windows.
- Изтеглете ADB двоичен файл за вашата ОС.
- Разархивирайте ZIP файла в леснодостъпна папка на подобни файлове за изтегляне.
- Отидете в Настройки на телефона си, намерете опцията Всичко за телефона.
- Намерете стойността „Номер на компилация“ тук и я докоснете 7 пъти, за да активирате режима за разработчици.
- Върнете се в главното меню в Настройки и влезте в Опции за разработчици.
- Активирайте USB режима за отстраняване на грешки.
- Включете телефона си в компютъра и го сменете от режим „само зареждане“ на режим „прехвърляне на файлове (MTP)“. Това не винаги е необходимо, но може да се изисква на вашето устройство, за да работи ADB.
- Върнете се на компютъра и отидете до директорията, където сте извлекли двоичния файл на ADB по-рано.
- Стартирайте команден ред (терминал на Mac/Linux) в тази ADB директория. В Windows най-бързият начин да направите това е да задържите Shift и след това да щракнете с десния бутон. В контекстното меню, което се появява, изберете опцията „отваряне на командния ред тук“.
- Веднъж в командния ред или терминала, въведете следната команда, за да проверите дали можем да се свържем с устройството:
adb devices
- Това ще стартира ADB демона. Ако за първи път стартирате ADB, ще видите подкана с молба да разрешите връзка. Позволи го.
- Сега изпълнете отново командата от стъпка 11 и ще видите серийния номер на вашето устройство в изхода. Ако е така, значи сте готови да продължите напред. Ако не, опитайте да инсталирате отново драйверите.
- Намерете пакета за приложението, което искате да ограничите от вибриране на телефона, като отворите App Inspector, отидете на App List и след това докоснете приложението.
- Изпълнете следната команда, за да влезете в обвивката на вашия телефон:
adb shell
- След това изпълнете тази команда, за да ограничите приложението да използва вибрационния мотор:
cmd appops set
VIBRATE ignore - Няма да видите никакво потвърждение в подканата, но стига да не получите съобщение за грешка, трябваше да работи.
Обяснение
Така че това, което правим тук, е ограничаване на разрешението android.permission.VIBRATE
от приложение по наш избор. Това разрешение се определя от приложенията в техните AndroidManifest.xml
файл и при инсталиране приложението се предоставя автоматично. Въпреки че можете да ограничите някои разрешения от приложения с помощта на вградения мениджър на разрешения, разрешението VIBRATE не е едно от тях.
Вместо това ограничаваме това разрешение, като използваме cmd appops
команда. Това е интерфейс на командния ред към "appops" - системата на Android за управление на разрешения, насочена към потребителя. Чрез достъп до тази система чрез обвивка на ADB имаме достъп до ограничаване на много повече разрешения, отколкото обикновено бихме могли. Едно от тези разрешения, които можем да отменим, е разрешението VIBRATE. И като правим това, спираме вибрациите, тъй като приложението вече не може да използва вибрационния двигател на телефона ви без необходимото разрешение.
Google не иска да можете да ограничите това разрешение нормално, затова го скриха от настройките. Това е така, защото много приложения разчитат на вибриране на телефона ви по законни причини, като например хаптична обратна връзка за определени действия или като ви уведомяват за нещо. Google остави в командния ред възможността да попречи на приложение да вибрира телефона ви, така че разработчиците да могат да тестват как ще работи тяхното приложение, ако телефонът няма вибрационен мотор. Въпреки това, устройствата без вибрационни двигатели са толкова рядко явление, че тази команда в повечето случаи остава неизползвана.
И все пак, само защото тази скрита команда не се използва от разработчиците, не означава, че не можем да я използваме добре. Наистина, благодарение на тази команда можем да спрем вибрациите от всяко приложение за Android някога отново! Няма нужда да чакате Google да актуализира стабилната версия на Chrome или Opera да актуализира Opera Mini, можете сами да спрете вибриращите реклами точно сега! Освен това, ако знаете за някое приложение, което ви създава главоболия, като вибрира телефона ви твърде много (и те не ви позволяват да изключите това), сега можете да спрете и това да се случи. Надяваме се, че следва Google Chrome рекламен блокер убива тези видове реклами, въпреки че сме имали само няколко дни за тестване тази нова функция.