Botón de captura de medios en Android> = 4.0 (funciona en 2.3)
Escribí un servicio que utiliza BroadcastReceiver para capturar uno de los botones multimedia ("botón de reproducción" de un auricular), y funciona perfectamente en Android 2.3.x (HTC Nexus One o HTC Desire)
Cuando intenté ejecutarme en Android 4.0.3 (Samsung Nexus S) no funciona (mi aplicación no recibe la intención "android.intent.action.MEDIA_BUTTON" y el botón "jugar" se comporta como de costumbre: se detiene / comienza música).
Contenido del manifiesto:
...
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<receiver android:name=".buttonreceiver.MediaButtonIntentReceiver" >
<intent-filter android:priority="10000" >
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</receiver>
...
¿Hay manera de hacerlo funcionar en Android 4.0.3
edición: probé la solución propuesta, agregué acción y la ejecuté, pero mi receptor aún no recibe la intención. Lo que es más extraño al registrar el receptor por código tampoco funciona:@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));
}
Ahora estoy totalmente confundido.