仿qq锁屏弹窗

在网络上找了很多资源,发现很多都喜欢用广播来做例子,我这边用最简单的方式来实现

在你要弹出的activity里面的onCreate,如下设置

Window win = getWindow();win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON); 
Drawable wallPaper = WallpaperManager.getInstance(this).getDrawable();win.setBackgroundDrawable(wallPaper);

setContentView(R.layout.activity_message);// 这里你自定义xml

1.在任何activity,监听一个点击事件,然后点击是操作如下

Handler mHandler=new Handler();mHandler.postDelayed(new Runnable() { @Override public void run() { KeyguardManager km = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE); if (km.inKeyguardRestrictedInputMode()) { 
// 处于锁屏状态 
Intent alarmIntent = new Intent(setting.this, MessageActivity.class); alarmIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(alarmIntent); }else{ ToastUtil.showInfo("没有锁屏~"); } }}, 3000);

// 备注,点击后,app退到后台,然后息屏等待3s

在AndroidManifest.xml加入权限,


这种方法可以让你,马上体验到效果,

你可能感兴趣的:(仿qq锁屏弹窗)