对于解锁和锁屏这种用的比较频繁action,谷歌做了限制,必须手动用代码注册。
如果还用下面的静态注册方式是不生效的。
<receiver
android:name=".receiver.ScreenLockReceiver"
android:enabled="true"
android:exported="false">
<intent-filter>
<action android:name="android.intent.action.SCREEN_OFF" />
<action android:name="android.intent.action.SCREEN_ON" />
<action android:name="android.intent.action.ACTION_USER_PRESENT" />
</intent-filter>
</receiver>
注册广播(手动代码注册广播接收者)
Intent intent=new Intent(this,UpdateService.class);
startService(intent);
mScreenLockReceiver = new ScreenLockReceiver();
IntentFilter filter = new IntentFilter();
//添加action
filter.addAction("android.intent.action.SCREEN_OFF");
//注册广播接收者
this.registerReceiver(mScreenLockReceiver,filter);