Я делаю приложение, используя обработчик ACTION_MEDIA_BUTTON, но, похоже, оно всегда перехватывается MX Player или Apollo, и я не получаю Intent
Я пробовал как приоритет 1000, так и 2147483647, установленный в теге, и сразу после конструктора с помощью setPriority.
Приложения работают, когда нет MX Player или Apollo
Я также пробовал использовать приложение Headset Interceptor из google play, я пытался запретить события в MX Player с помощью приложения Autostarts - ничего не помогает.
в onCreate:
IntentFilter filter = new IntentFilter(Intent.ACTION_MEDIA_BUTTON);
filter.addAction(Intent.ACTION_HEADSET_PLUG);
filter.setPriority(1000);
registerReceiver(receiver, filter);
в приемнике
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_MEDIA_BUTTON.equals(intent.getAction())) {
// NEVER REACHES HERE WHEN MX PLAYER PRESENT. WORKS IF NOT
в манифесте
<receiver
android:name="BCreceiver"
android:enabled="true">
<intent-filter android:priority="1000">
<action android:name="android.intent.action.MEDIA_BUTTON" />
<action android:name="android.intent.action.HEADSET_PLUG" />
</intent-filter>
</receiver>
android:priority="999"
или меньше;SYSTEM_HIGH_PRIORITY
Constant Value: 1000
Applications should never use filters with this or higher priorities.
- person Benny   schedule 16.10.2017