Android监听解锁屏幕广播

目的:用户解锁屏幕开启程序

public class ActionReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
            Intent intent1;
            if (LoginUtils.INSTANCE.isLogin()) {
                intent1 = new Intent(context, MainActivity.class);
            } else {
                intent1 = new Intent(context, LoginFragment.class);
            }
            intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(intent1);
    }

}


 首先创建一个接收器继承自BroadCastReceiver,重写onReceive方法,我再这首先判断了用户是否登录,登陆过就进入主界面,至于FLAG_ACTIVITY_NEW_TASK这个的意思就是,我们在广播中开启一个Activity的时候必须给intent(意图)设置Flag的,因为我们处在非Activity的环境中,大家都知道Activity存在于Activity栈中,所以我们在广播中开启一个Activity就需要一个新的任务栈容纳你要启动的Activity,这里指的是Mainactivity,如果所跳转的Activity所在的栈存在,会直接把这个栈移过来。最后不要忘了在清单文件注册 
  


    
        
    


 
  

你可能感兴趣的:(Android,屏幕解锁广播,广播,安卓)