Android的:不能注册的BroadcastReceiver [英] Android:unable to register BroadcastReceiver
本文介绍了Android的:不能注册的BroadcastReceiver的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想用java,而不是清单注册一个接收器,因为当我的应用程序已接近我不需要这个接收器的工作。
I am trying to register a receiver using java and not the manifest, as I don't need this receiver work when my app is close.
如果我用我的清单接收工作做好:
If I use the manifest my receiver work well:
<receiver android:name=".services.PlayerService$RemoteControlReceiver" >
<intent-filter>
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</receiver>
如果我在活动注册它没有清单,这并不在所有的工作:
If I register it in my activity without the manifest, this don't work at all:
IntentFilter filter = new IntentFilter();
{
filter.addAction("android.intent.action.MEDIA_BUTTON");
}
registerReceiver(RemoteControlReceiver, filter);
我并不需要使用清单,我想控制耳机的按钮,只有当我的应用程序是开放的。
I don't need to use the manifest, as I want to control the headset button only when my app is open.
推荐答案
使用 Intent.ACTION_MEDIA_BUTTON
而不是 android.intent.action.MEDIA_BUTTON
为
IntentFilter filter = new IntentFilter(Intent.ACTION_MEDIA_BUTTON);
filter.setPriority(10000);
registerReceiver(RemoteControlReceiver, filter);
这篇关于Android的:不能注册的BroadcastReceiver的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文