Захват медиа-кнопки на Android >=4.0 (работает на 2.3)

Я написал сервис, который использует BroadcastReceiver для захвата одной из мультимедийных кнопок ("кнопка воспроизведения" на гарнитуре), и он отлично работает на Android 2.3. x (HTC Nexus One или HTC Desire)

Когда я пытался запустить на Android 4.0.3 (Samsung Nexus S), он не работает (мое приложение не получает намерение "android.intent.action.MEDIA_BUTTON" а кнопка "воспроизведение" ведет себя как обычно: останавливает/запускает музыку).

Содержание манифеста:

...
<приложение
Android:icon="@drawable/ic_launcher"
android:label="@string/имя_приложения" >
 
 <намерение-фильтр android:priority="10000">
 
 
 
...

Есть ли способ заставить его работать на Android 4.0.3?


редактировать: я попробовал предложенное решение, я добавил действие и запустил его, но мой получатель все еще не получает намерение. Что более странно, регистрация приемника по коду тоже не работает:
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.about_and_activation_view);

    Log.d("MR", "onCreate - " + getIntent().getAction());

    mReceiver = new MediaButtonIntentReceiver();
    registerReceiver(mReceiver, new IntentFilter(Intent.ACTION_MEDIA_BUTTON));
}

Я совсем запутался.

10
задан Marek R 11 May 2012 в 10:34
поделиться