在某些三星 Galaxy 手机中,当我们按下耳机按钮时,音乐播放器就会启动。我想禁用此功能。按下耳机按钮后,我想做另一项任务。
我怎样才能做到这一点?
仅在我的Intent.ACTION_MEDIA_BUTTON
应用程序中收到,音乐播放器不应收到意图。这样音乐播放器就不会启动,我会在我的应用程序中做我想做的事情。
在某些三星 Galaxy 手机中,当我们按下耳机按钮时,音乐播放器就会启动。我想禁用此功能。按下耳机按钮后,我想做另一项任务。
我怎样才能做到这一点?
仅在我的Intent.ACTION_MEDIA_BUTTON
应用程序中收到,音乐播放器不应收到意图。这样音乐播放器就不会启动,我会在我的应用程序中做我想做的事情。
有点晚了,但这对其他人有用。
在清单文件中,将您的意图过滤器优先级设置为“高”(android:priority)。我认为文档的最高可能值是 999。
<receiver android:name="media_button">
<intent-filter android:priority="999">
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</receiver>
然后在您的接收器代码中中止广播到其他意图。您可以通过调用abortBroadcast()函数来做到这一点。
public class media_button extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_MEDIA_BUTTON.equals(intent.getAction())) {
//your code ...
//abort other actions
this.abortBroadcast();
}
}
}