我在服务中生成以下代码:
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.intent.action.MEDIA_BUTTON");
intentFilter.setPriority(2147483647);
registerReceiver(broadcastReceiver,intentFilter);
这就是接收器
public BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
playNext(); // play the next music
}
};
但我从不接广播,我不知道为什么。每次我点击耳机,下面就会显示
I/MediaButtonContentReceiver:句柄操作:android.intent.action.MEDIA_BUTTONI/MediaButtonContentReceiver:action=1,repeatCount=0,command=togglepause,keycode=keycode_HEADSETOOK
罗科是对的。
您可能需要获得权限:
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
如果您的班级中有多个接受者:您注册了"broadcastReceiver",但将其命名为"broadcastReceiver1*"