怎么在Android中利用ScreenLockReceiver监听锁屏

今天就跟大家聊聊有关怎么在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中利用ScreenLockReceiver监听锁屏有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。