Android编程实现禁止系统锁屏与解锁亮屏的方法
本文实例讲述了Android编程实现禁止系统锁屏与解锁亮屏的方法。分享给大家供大家参考,具体如下:
需求:
某个时刻任务执行完毕,关闭屏幕,某时刻再开启屏幕继续执行任务
通常情况下,不设置屏幕常亮,系统会自动锁屏,锁屏后不能从代码解锁(疑问),所以我的做法是只让系统关闭屏幕,但不锁屏!
WakeLock lock, unLock; KeyguardManager km; KeyguardLock kl;
unLock = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "bright"); // 得到键盘锁管理器对象 km = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE); kl = km.newKeyguardLock("unLock");
void lockScreen() { // 锁屏 kl.reenableKeyguard(); // 释放wakeLock,关灯 if(unLock.isHeld()) unLock.release(); } void unLockScreen() { // 点亮屏幕 if(!unLock.isHeld()) unLock.acquire(); // 解锁 kl.disableKeyguard(); }
测试代码,调用测试代码后,你手动按电源键锁屏,5s后你会看到屏幕亮起
{ lockScreen(); getListView().getHandler().postDelayed(new Runnable() { @Override public void run() { unLockScreen(); } }, 5000); break; }
希望本文所述对大家Android程序设计有所帮助。
相关推荐
-
Android唤醒、解锁屏幕代码实例
解锁.唤醒屏幕用到KeyguardManager,KeyguardLock,PowerManager,PowerManager.WakeLock 所需权限: 复制代码 代码如下: <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.DISABLE_KEYGUARD" /&
-
Android指纹解锁方法解析
我先说说这两种的方式的不同之处吧 第一种: 在调动成功之后 不会让你指纹解锁 而是调转到当初你设置指纹解锁时的 手势解锁页面 第二种: 在调动成功之后,是进行指纹解锁 不调转 你直接把手指放到金属感应环 上面进行指纹验证 大家可以根据需求 自行选择 ok 那就亮代码了 第一种: xml 布局: 一个 文本显示 一个按钮(不解释) MainActivity.java源码 public class MainActivity extends FragmentActivity { Fingerprint
-
使用Android自定义控件实现滑动解锁九宫格
本文概述: 滑动解锁九宫格的分析: 1.需要自定义控件: 2.需要重写事件onTouchEvent(); 3.需要给九个点设置序号和坐标,这里用Map类就行: 4.需要判断是否到滑到过九点之一,并存储滑到过的点的序号,而且需要一个方法可以返回它们,这里用List类就行: 滑动解锁当前还是比较流行的,今天写了个简单的滑动解锁九宫格的例程,分享出来让初学者看看. 我的是这样的: Demo 首先,自定义一个View /** * 九宫格 */ public class NineGridView ext
-
Android实现九宫格解锁的方法
相信大家都有使用九宫格解锁,比如在设置手机安全项目中,可以使用九宫格解锁,提高安全性,以及在使用支付功能的时候,为了提高安全使用九宫锁,今天就为大家介绍Android实现九宫格的方法,分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下: 布局文件如下: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas
-
android滑动解锁震动效果的开启和取消
如果我们需要根据设置中的触摸震动开关来开启和取消滑动解锁的震动效果,就需要做以下修改了. 在LockScreen.java类中的LockScreen方法中的 复制代码 代码如下: else if (mUnlockWidget instanceof MultiWaveView) { MultiWaveView multiWaveView = (MultiWaveView) mUnlockWidget; multiWaveView.setVibrateEnabled(Setti
-
轻松实现Android自定义九宫格图案解锁
Android实现九宫格图案解锁,自带将图案转化成数字密码的功能,代码如下: LockPatternView.java package com.jackie.lockpattern; import android.content.Context; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Point; import android.text.TextUtils; i
-
android 九宫格滑动解锁开机实例源码学习
效果图由于网站占时不能上传,以后补上. NinePointLineView.java 复制代码 代码如下: package org.demo.custon_view; import org.demo.utils.MLog; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; imp
-
Android点亮屏幕或屏幕解锁和锁定以及其他相关权限实现代码
1.Android屏幕常亮/点亮 复制代码 代码如下: //保持屏幕常亮 PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, LOCK_TAG); mWakeLock.acquire(); 复制代码 代码如下: //释
-
Android 监听锁屏、解锁、开屏 功能代码
1.首先定义 ScreenListener package com.app.lib; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.PowerManager; /** * Created by ${zyj} on 2016/6
-
Android自定义滑动解锁控件使用详解
最近的项目里用到了,在网上找不到合适的,于是自己写了个简单的,带回弹效果: 可以自定义的属性有: <!-- 滑动解锁控件 xml配置属性 --> <declare-styleable name="SlideToUnlockView"> <attr name="slideImageViewWidth" format="dimension"/><!-- 滑块宽度 --> <attr name=&q
随机推荐
- 第7天:CSS入门
- 利用vbscript脚本修改文件内容,此适用于自动化的操作中
- java用接口、多态、继承、类计算三角形和矩形周长及面积的方法
- js实现简洁的TAB滑动门效果代码
- php实现网站顶踩功能的完整前端代码
- Java性能优化技巧汇总
- Jquery Easyui自定义下拉框组件使用详解(21)
- php curl登陆qq后获取用户信息时证书错误
- Jquery中获取iframe的代码
- 基于jQuery的360图片展示实现代码
- Android中判断有无可用网络的代码(是否是3G或者WIFI网络)
- 希尔排序算法的C语言实现示例
- Java比较两个List的值是否相等的方法
- Android弹出窗口实现方法
- node.js中的fs.appendFile方法使用说明
- 利用PHP将部分内容用星号替换
- Linux(Ubuntu) adb 无法识别的问题解决方法
- 数据视窗为您提供20M免费PHP空间
- 基于并发服务器几种实现方法(总结)
- python3 判断列表是一个空列表的方法