为什么这个广播接收器不能在棒棒糖中工作?

时间:2015-03-16 16:00:56

标签: android android-intent broadcastreceiver android-5.0-lollipop intentfilter

我在Manifest中声明了这个广播接收器:

    <receiver android:name="classes.VoiceLaunchReceiver" >
        <intent-filter>
            <action android:name="android.intent.action.USER_PRESENT" />
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>

每当用户解锁并打开屏幕时,它就会发挥作用。它在Jellybean 4.3及更低版本中完美运行。 为什么它不适用于Lollipop?

(我已经知道系统发送了这个意图,我想要的是用接收器检测它)

1 个答案:

答案 0 :(得分:1)

好的,我通过添加两个内容解决了这个问题:一个权限,以及接收者意图过滤器内的类别标记。清单中的所有内容:

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
        <receiver android:name="classes.VoiceLaunchReceiver" >        
             <intent-filter>
                <action android:name="android.intent.action.USER_PRESENT" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </receiver>

有时当我尝试制作自己的项目时,我没有看到原来的Android演示版获得了许可。