前言
Android有些功能需要user unlocked之后才能使用,因此在启动前需要判断一下当前Android设备是否unlocked。
这简单记录一下,方便自己查阅。
正文
判断isUserUnlocked
启动某些功能时通过下面方式判断一下是否已经可以启动了。
public boolean isUserUnlocked() {
UserManager userManager = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
return userManager != null && userManager.isUserUnlocked();
}
监听UserUnlocked状态
存在此时还存于locked,也就是上面isUserUnlocked()返回false时了,需要监听系统Intent.ACTION_USER_UNLOCKED等准备好再次启动对应的功能。
IntentFilter intentFilter = new IntentFilter(Intent.ACTION_USER_UNLOCKED);
registerReceiver(mUnLockReceiver, intentFilter);
注意,广播注册需要在isUserUnlocked()判断之前,要不然存在时序问题。先监听广播,然后在判断是否unlocked。
private final BroadcastReceiver mUnLockReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(null== intent || null==intent.getAction()){
return;
}
//这里处理需要的
}
};
当然最后记得注销广播咯,这里不附上。
参考文章
无
推荐访问 读书导航 简单的可以自定义的导航主页。
历史上的今天
暂无评论...
随机推荐
FileProvider的使用
前言自Android 7.0开始,Android 框架开启了严格模式(StrictMode),禁止应用将file:///开头的Uri共享给其他的应用读写文件,否则会收到FileUriExposedException的异常。因此,Android提供了新的文件共享机制FileProvider。记录...
Java Consumer的使用
前言今天有空整理一下Consumer<T> 接口的使用,一般用于回调中。这里简单记录一下。正文Consumer<T>接口是java 1.8才有的,定义如下://java.util.function.Consumer@FunctionalInterfacepu...
大卫.索罗:孤独
在这美妙的黄昏,我的身心融为一体,大自然的一切尤显得与我相宜。夜幕降临了,风儿依然在林中呼啸,水仍在拍打着堤岸,一些生灵唱起了动听的催眠曲。伴随黑夜而来的并非寂静,猛兽在追寻猎物。这些大自然的更夫使得生机勃勃的白昼不曾间断。我的近邻远在一英里开外,举目四望,不见一片房舍,只有距我半英里地的黑暗的山...
林夕:赏味期限
那还是你和好友说着想要去很多很多地方的年纪。你踢踢踏踏地在走廊里面一边走一边数着自己到底想去多少个地方,好友跟在你的后面臭着一张脸喊,好高骛远的家伙,离开这里看谁天天陪你。你转身去拉她的手,笑得相当谄媚,说你可以陪我一起去呀。好友摇着手告诉你去去去,先把英文考及格了再说吧。所谓好友到底可以好成...
[摘]Android混淆从入门到精通
前言本文摘抄,网上都写的很不错,我就摘抄于此。简介作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只是网上搜一些成型的混淆规则粘贴进自己项目,并没有对混淆有个深入的理解。本篇...
史铁生:有关庙的回忆
据说,过去北京城内的每一条胡同都有庙,或大或小总有一座。这或许有夸张成分。但慢慢回想,我住过以及我熟悉的胡同里,确实都有庙或庙的遗迹。在我出生的那条胡同里,与我家院门斜对着,曾经就是一座小庙。我见到它时它已改作油坊,庙门、庙院尚无大变,惟走了僧人,常有马车运来大包小包的花生、芝麻,院子里终日磨声隆...