1. 程式人生 > >Android 解鎖和鎖屏廣播必須手動用程式碼註冊

Android 解鎖和鎖屏廣播必須手動用程式碼註冊

對於解鎖和鎖屏這種用的比較頻繁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);