Android之判断手机黑屏以及锁屏
【摘要】 1、黑屏
/** * 判断是否黑屏 * @param c * @return */ public final static boolean isScreenLocked(Context c) { android.app.KeyguardManager mKeyguardManager = (KeyguardManager) c.getSystemSer...
1、黑屏
-
/**
-
* 判断是否黑屏
-
* @param c
-
* @return
-
*/
-
public final static boolean isScreenLocked(Context c) {
-
-
android.app.KeyguardManager mKeyguardManager = (KeyguardManager) c.getSystemService(c.KEYGUARD_SERVICE);
-
return !mKeyguardManager.inKeyguardRestrictedInputMode();
-
-
}
2、锁屏
锁屏的判断,没有直接的方法,但是在Android的监听机制中,有一些事件可以进行判断:
Intent.ACTION_SCREEN_ON //当按下电源键,屏幕亮起的时候
Intent.ACTION_SCREEN_OFF //当按下电源键,屏幕变黑的时候
Intent.ACTION_USER_PRESENT //当解除锁屏的时候
我们当时的应用环境是在某一个activity中使用,并且该activity已经继承了其他类,所以采用了动态注册的方法:
1、在oncreate()方法中,注册监听事件
-
// 注册事件
-
registerReceiver(myReceiver, new IntentFilter(Intent.ACTION_SCREEN_ON));
-
registerReceiver(myReceiver, new IntentFilter(Intent.ACTION_SCREEN_OFF));
-
registerReceiver(myReceiver, new IntentFilter(Intent.ACTION_USER_PRESENT));
-
private BroadcastReceiver myReceiver = new BroadcastReceiver() {
-
-
@Override
-
public void onReceive(Context context, Intent intent) {
-
// TODO Auto-generated method stub
-
if (Intent.ACTION_SCREEN_ON.equals(intent.getAction()) ) {//当按下电源键,屏幕亮起的时候
-
-
}
-
if (Intent.ACTION_SCREEN_OFF.equals(intent.getAction()) ) {//当按下电源键,屏幕变黑的时候
-
islockScreen = true;
-
}
-
if (Intent.ACTION_USER_PRESENT.equals(intent.getAction()) ) {//当解除锁屏的时候
-
islockScreen = false;
-
}
-
}
-
};
文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。
原文链接:chenyu.blog.csdn.net/article/details/51372757
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)