本文實例講述了Android ScreenLockReceiver監聽鎖屏功能。分享給大家供大家參考,具體如下:
監聽屏幕鎖屏狀態(注冊接受者--執行業務--注銷接受者)
public class AppLockService extends Service { private ActivityManager am; private KeyguardManager keyguardManager; private LockScreenReceiver receiver; @Override public void onCreate() { // TODO Auto-generated method stub super.onCreate(); am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); keyguardManager = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE); //注冊鎖屏廣播接收者 IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_SCREEN_OFF); receiver = new LockScreenReceiver(); registerReceiver(receiver, filter); new Thread(){ public void run() { //一直在監聽鎖屏動作,一旦監聽到,便執行操作 while(true){ boolean isLockScreen = keyguardManager.inKeyguardRestrictedInputMode(); /**此處可作相應操作*/ } }; }.start(); } private final class LockScreenReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { tempAppLocks.clear(); } } @Override public void onDestroy() { super.onDestroy(); //取消鎖屏的廣播監聽 unregisterReceiver(receiver); }}
希望本文所述對大家Android程序設計有所幫助。
新聞熱點
疑難解答