“android.intent.action.CAMERA_BUTTON”的广播接收器不起作用

时间:2018-01-22 06:34:49

标签: android broadcastreceiver

我想检测用户按下的相机按钮。我已尝试使用 android.intent.action.CAMERA_BUTTON BroadcastReceiver来执行此操作。但它不起作用。有人能帮助我吗?

manifest我有这个接收器:

<receiver
    android:name=".receivers.ActionReceiver"
    android:enabled="true"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.CAMERA_BUTTON" />
    </intent-filter>
</receiver>

这是我的BroadcastReceiver

public class ActionReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        Log.e("receive status", "camera usage");
    }
}

1 个答案:

答案 0 :(得分:0)

试试这个

在清单文件中添加此权限。

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />

在接收器中添加此行。 <category android:name="android.intent.category.DEFAULT" />

<receiver
    android:name=".receivers.ActionReceiver"
    android:enabled="true"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.CAMERA_BUTTON" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</receiver>