java - 耳机 蓝牙 (nokia) 按钮 接听电话 接收 Android >4.0

标签 java android android-intent bluetooth

我在 stackoverflow 中搜索我的问题的答案,我看到了很多信息,但我没有找到解决我的问题的方法。 我尝试接收按钮诺基亚耳机蓝牙调用接收。

在 list 中我有:

 <receiver android:name=".ButtonBroadcastReceiver">
        <intent-filter android:priority="1000000000">
            <action android:name="android.intent.action.MEDIA_BUTTON" />
            <action android:name="android.media.VOLUME_CHANGED_ACTION" />
        </intent-filter>
    </receiver>

接下来我要上课了

public class ButtonBroadcastReceiver extends BroadcastReceiver {


    public ButtonBroadcastReceiver() {
        super();
    }
    @Override
    public void onReceive(Context context, Intent intent) {
        Log.v("TTT", "KJEEEEEEEEEEEEEEEEEEEEEEEE");
        if (Intent.ACTION_MEDIA_BUTTON.equals(intent.getAction())) {
            /* handle media button intent here by reading contents */
            /* of EXTRA_KEY_EVENT to know which key was pressed    */
        }
    }
}

在我使用的 onCreate Activity 中

  mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
        ComponentName  mediaButtonReceiver = new ComponentName(getPackageName(), ButtonBroadcastReceiver.class.getName());

        mAudioManager.registerMediaButtonEventReceiver(mediaButtonReceiver);

当我使用 + 或 - 调高/调低音量时,它起作用了! (在日志中我有我的消息)但是当我尝试单击按钮以接收时,通话记录是干净的。

最佳答案

我通过捕捉按下电源按钮时触发的事件解决了这个问题。在这种情况下,它是 SCREEN_ON 标志。这里:capture hard-button events when phone is locked?

关于java - 耳机 蓝牙 (nokia) 按钮 接听电话 接收 Android >4.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35014942/

相关文章:

android - onResume() 中的 getIntent() 始终返回相同的操作,如何使用它?

android - 注意 Honeycomb 或更高版本 Android 的外部 USB 存储的变化

java - Intellij-IDEA:如果导入 block 有错误,则展开导入 block

java - 为什么使用静态枚举?

java - 在我的 android 项目上添加数字密码字段时出错

android - 如何只显示一次 Firebase 数据?

java - Intent 未开始 Activity

java - Wildfly 或 JBoss EAP 7 上的 Restcomm USSD 网关

java - 如何通过部分行键过滤HBase的扫描?

java - AlarmManager 在两个特定时间