Учебное пособие, которое поможет Pokemon Go (и другим приложениям) не красть фокус звука без рута. Не позволяет Play Music, Spotify и PocketCasts останавливать воспроизведение!
Несмотря на падение популярности, Покемон Го все еще имеет тонна фанатов играю в игру каждый день. Хотя большинство проблем игры были связанный с изменой, есть и другие, более мелкие, которые раздражают существующих пользователей. Одна из таких проблем связана с фокусировкой звука в Android. Пользователи, которые любят слушать музыку или подкасты во время игры в Pokemon Go, обнаруживают, что воспроизведение звука сразу же прекращается при запуске игры. Для этого пользователям необходимо вручную перезапустить воспроизведение в своих любимых мультимедийных приложениях, таких как Google Play Music, Spotify или PocketCasts. Сегодня я собираюсь показать вам, как не дать Pokemon Go (или любому другому приложению) украсть постоянный фокус звука. без рута.
Что происходит при запуске Pokemon Go, так это то, что он запрашивает фокус звука у системы, а это означает, что любое существующее воспроизведение мультимедиа в том же потоке громкости будет
уклонился. Проблема здесь в том, что аудиосистема Android опирается на систему уважения среди приложений. Android не выбирает, какие приложения должны быть приоритетными для удержания фокуса, вместо этого он полагается на приложения, запрашивающие и отпускающие фокус по мере необходимости. Таким образом, поскольку Pokemon Go запрашивает фокусировку звука при запуске, другие приложения не могут помешать ему взять на себя громкость мультимедиа.Некоторые приложения, такие как Poweramp или Подкаст-наркоман есть экспериментальные настройки для удержания фокуса звука, чтобы другие приложения не украли его, но, очевидно, многие мультимедийные приложения этого не делают. Некоторые пользователи придумали собственный способ сохранить фокус звука с помощью Tasker. профили, и я бы, вероятно, попробовал, если бы не было лучшего способа, но, к счастью, есть. Он предполагает использование скрытой команды ADB для доступа к интерфейсу командной строки системы управления разрешениями Android, известной как appops. С помощью одной команды вы можете запретить Pokemon Go (или любому другому приложению) снова фокусироваться на звуке!
Метод, который мы здесь используем, предназначен для стандартных, нерутированных пользователей, которые не используют какие-либо специальные ПЗУ. Пользователи пользовательских ПЗУ, например пользователи LineageOS, могут иметь доступ к более мощному методу управления разрешениями, который позволяет им обойти необходимость в этой команде.
Не позволяйте Pokemon Go использовать аудиофокус — Учебное пособие
- Загрузите и установите драйверы USB для вашего устройство - скорее всего, необходимо только в Windows.
- Загрузите Бинарный файл АБР для вашей ОС и извлеките файл в любую папку на вашем компьютере.
- На телефоне откройте «Настройки», затем найдите пункт «О телефоне».
- Прокрутите вниз, чтобы найти значение «Номер сборки», и нажмите на него 7 раз, чтобы включить режим разработчика.
- Вернитесь в главное меню в настройках, введите «Параметры разработчика».
- Включите здесь режим отладки по USB, как показано ниже.
- Подключите телефон к компьютеру и на телефоне измените режим USB с режима «только зарядка» на режим «передача файлов (MTP)».
- Вернитесь к ПК и перейдите туда, где вы извлекли двоичный файл ADB.
- Откройте командную строку в этом каталоге ADB. В Windows самый простой способ сделать это — нажать Shift+щелчок правой кнопкой мыши. В контекстном меню выберите опцию «Открыть командное окно здесь». Пользователи Mac или Linux откройте терминал.
- Введите следующую команду:
adb devices
- Это запустит демон ADB. Если вы впервые запускаете ADB, вы увидите приглашение с просьбой авторизовать соединение. Разрешить это.
- Повторно запустите команду, начиная с шага 10, и вы увидите серийный номер вашего устройства в выходных данных. Если да, переходите к следующему шагу. Если нет, переустановите драйверы.
- (Необязательный): если вы хотите запретить другому приложению, кроме Pokemon Go, использовать аудиофокус, установите Инспектор приложений app и найдите пакет, указанный под именем приложения.
- Отправьте следующую команду:
adb shell
- Затем выполните эту команду:
cmd appops set
. Например, для Pokemon Go команда будет такой:TAKE_AUDIO_FOCUS ignore cmd appops set com.nianticlabs.pokemongo TAKE_AUDIO_FOCUS ignore
Обновление: если приведенная выше команда у вас не работает, попробуйте исключить «cmd» из команды. Я слышал, что это может понадобиться, если вы используете Android 6.0 Marshmallow или более раннюю версию.
- Если в окне не появилось сообщение об ошибке, все должно было сработать. Поздравляем! Теперь Pokemon Go не помешает Google Play Music, Spotify, PocketCasts или любому другому приложению играть поверх него!
Объяснение
Как упоминалось в начале, мы используем командную строку для взаимодействия с appops — пользовательской системой Android для обработки разрешений приложений. По умолчанию существует лишь несколько разрешений, которые пользователи могут переключать через пользовательский интерфейс настроек. Некоторые пользовательские ПЗУ (например, LineageOS с его Privacy Guard) предоставляют больше разрешений, которые вы можете ограничить, но для нерутированных пользователей единственный способ управлять этими разрешениями — через командную строку.
В любом случае, конкретное разрешение, которое мы ограничиваем, android.permission.TAKE_AUDIO_FOCUS
которое любое приложение, которое запрашивает его в своих AndroidManifest.xml
файл предоставляется автоматически при установке. Благодаря приведенной выше команде appops мы можем отобрать это разрешение у Pokemon Go. больше не запрашивает фокусировку звука и, следовательно, больше не может блокировать другие музыкальные приложения или приложения подкастов на вашем телефоне. играю.
Хотя приведенное выше руководство предназначено для пользователей Pokemon Go, технически вы можете сделать то же самое для любого другого приложения. Просто измените имя пакета на шаге 15, указав любое другое приложение. Просто будьте осторожны и не ограничивайте это разрешение волей-неволей, потому что Google намеренно скрыл это разрешение от ограничения, чтобы пользователи не испортили ситуацию.
Другие замечательные уроки, подобные этому, смотрите в нашем категория обучающих программ. Будьте в курсе последних новостей с приложением XDA Labs.