Jak wyłączyć automatyczne odtwarzanie Bluetooth na dowolnym telefonie z Androidem

Czy kiedykolwiek podłączyłeś telefon do swojego ulubionego głośnika lub zestawu samochodowego Bluetooth i odkryłeś, że aplikacje takie jak Muzyka Google Play, Pandora lub Soundcloud automatycznie zaczynają grać?

Może to być dość denerwujące dla tych użytkowników, którzy wolą wybrać własną preferowaną aplikację do odtwarzania multimediów. Niestety, chyba że dane urządzenie Bluetooth pozwala na wyłączenie automatycznego odtwarzania, niewiele można zrobić, aby zapobiec wysłaniu polecenia odtwarzania na urządzenie.

Jeśli szukasz rozwiązań tego problemu w Internecie, być może natknąłeś się na kilka stron, które sugerują dość prymitywną metodę rozwiązania tego problemu. Polega ona na przejściu do strony ustawień profili Bluetooth dla poszczególnych urządzeń Bluetooth i wyłączeniu profilu audio multimediów. Nazywam to „prymitywnym” rozwiązaniem, ponieważ chociaż zapobiega automatycznemu odtwarzaniu, musisz ręcznie wrócić i ponownie włączyć ten profil, zanim będziesz mógł ponownie użyć urządzenia Bluetooth do odtwarzania multimediów.

Profile Bluetooth

Istnieje jednak lepsza metoda rozwiązania tego problemu. Jeśli przeczytałeś któryś z moich poprzednich samouczków, prawdopodobnie już zgadłeś, że wiąże się to z użyciem Taskera. Tym razem jednak nie będziesz musiał używać żadnej innej aplikacji / wtyczki, a rozwiązanie jest dość łatwe do wdrożenia nawet dla początkujących użytkowników Tasker. Oto jak to będzie działać.


Zrozumienie funkcji autoodtwarzania Bluetooth w systemie Android

Zasadniczo dzieje się po podłączeniu urządzenia Bluetooth, które wysyła polecenie autoodtwarzania, ponieważ to polecenie jest postrzegane jako KeyEvent do przełączania odtwarzania / pauzy w Androidzie. Aplikacje z odbiornikiem MediaButtonReceiver mogą następnie zareagować na to zdarzenie Media Button.

Ale jeśli masz wiele aplikacji, które mogą zareagować na ten zamiar, skąd Android wie, która aplikacja faktycznie rozpocznie odtwarzanie? Działa to tak, że Android śledzi ostatnią aplikację, która żąda odebrania zdarzeń Media Button. Każda nowa aplikacja medialna może przejąć kontrolę nad zdarzeniami klucza Media Button, wywołując setMediaButtonReceiver w AudioManager, a ta aplikacja będzie obsługiwać zdarzenia klucza Media Button, dopóki inna aplikacja nie zażąda kontroli. Możesz faktycznie sprawdzić, która aplikacja jest aktualnie ustawiona na reagowanie na te kluczowe zdarzenia, wprowadzając następujące polecenie ADB:

adb shell settings get secure media_button_receiver

Na moim urządzeniu to polecenie wygenerowało następujące dane wyjściowe:

com.google.android.music/com.google.android.music.playback.MediaButtonIntentReceiver

To jest odbiornik transmisji skonfigurowany przez Muzykę Google Play w celu reagowania na kluczowe zdarzenia Media Button. Więc jeśli podłączę urządzenie Bluetooth, mój telefon automatycznie rozpocznie odtwarzanie w Muzyce Google Play.

Możemy skorzystać z tego faktu, dzięki Taskerowi odpowiadającemu na kluczowe zdarzenia Media Button. W ten sposób Tasker przejmie polecenie przełączania odtwarzania / pauzy, zapobiegając reakcji jakiejkolwiek innej aplikacji i tym samym rozpoczynając odtwarzanie. Oto, jak to się robi.


Wyłącz autoodtwarzanie Bluetooth za pomocą Taskera

Jak wspomniano wcześniej, będziesz potrzebował Tasker do tego projektu. Tym razem jednak nie będziesz potrzebować żadnych dodatkowych wtyczek. Nie jestem pewien, jak możesz to powielić w innych aplikacjach automatyzacyjnych, ponieważ nie znam ich zestawu funkcji, ale możesz go wypróbować.

Najpierw otwórz Tasker i utwórz nowy profil, naciskając ikonę + . Wybierz kontekst stanu, jak pokazano poniżej, i wybierz Net -> BT Connected. W tym miejscu naciśnij ikonę lupy pod polem Nazwa lub Adres i wybierz wszystkie urządzenia Bluetooth, na których chcesz zapobiec automatycznemu odtwarzaniu.

Następnie musimy utworzyć nasze zadanie. Nie trzeba przejmować się nadaniem jej nazwy, ponieważ będzie tu tylko jedna Akcja i nie będzie ona używana w innym Profilu. Po przejściu do ekranu tworzenia zadania naciśnij przycisk + w dolnej środkowej części ekranu, aby utworzyć akcję. Przejdź do Media -> Zdarzenia przycisku mediów i wybierz Grab z menu rozwijanego. Z mojego doświadczenia wynika, że ​​nie musiałem wybierać „Użyj nowego interfejsu API”, ale jeśli ostatecznie ten projekt nie działa, możesz wrócić i włączyć to pole wyboru.

Gdy skończysz, Tasker powinien teraz automatycznie ustawić się jako odbiornik przycisku mediów w Androidzie po połączeniu z wybranymi urządzeniami Bluetooth. W ten sposób wysyłana akcja odtwarzania / pauzy nie zostanie odebrana przez żadną aplikację multimedialną, ale przez Tasker.

Nie martw się, ponieważ nie oznacza to, że Tasker będzie przechwytywał kluczowe zdarzenia Media Button w nieskończoność. Jak wspomniano wcześniej, każda aplikacja może poprosić o wykonanie tej czynności, więc kiedy ręcznie uruchomisz odtwarzanie na wybranym odtwarzaczu multimedialnym, przejmie on kontrolę nad słuchaniem kluczowych zdarzeń przycisku Media.


Wniosek

Oczywiście nie mogę przetestować tego na każdym urządzeniu, ale przetestowałem to wiele razy, włączając ten profil w trybie włączania / wyłączania i kilkakrotnie podłączając / odłączając urządzenie Bluetooth. Działało tak, jak się spodziewałem, ale będziesz musiał spróbować sam.

Tym razem nie dostarczę profilu do zaimportowania, ponieważ profil ten jest niewiarygodnie łatwy w konfiguracji, a także wymaga ręcznej zmiany profilu, aby mimo to wybrać własne urządzenia Bluetooth. Daj mi znać, jeśli ten profil działa dla Ciebie i / lub masz jakieś sugestie dotyczące ulepszeń!