Android程序主动点亮&解锁屏幕的实现

Android灭屏、锁屏状态下如何点亮弹出界面 Android锁屏状态下,如何像微信视频通话一样弹出界面 阅读详情

在android开发中,经常会遇到一些情形需要程序主动维持屏幕的点亮状态,或者自己点亮屏幕并且解除屏幕锁定状态,这时可以用下面的方法予以解决。

 

 

情形一:类似于阅读软件,在阅读过程中忽视系统的屏幕超时设置保持屏幕长亮。可以直接

在 onCreat() 方法中加上下面一句:

 

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

 

 

情形二:类似于闹钟,在锁屏状态下点亮屏幕。方法如下:

 

在AndroidManifest.xml中加上permission 权限:

<uses-permissionandroid:name="android.permission.WAKE_LOCK" />

 

在onCreat() 方法中添加以下语句:

 

//电源管理器

PowerManagerpm = (PowerManager)getSystemService(POWER_SERVICE);

WakeLockmWakelock = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP|PowerManager.SCREEN_DIM_WAKE_LOCK,"SimpleTimer");

 

flags参数说明:

PARTIAL_WAKE_LOCK: Screen off, keyboardlight off 

SCREEN_DIM_WAKE_LOCK: screen dim, keyboardlight off 

SCREEN_BRIGHT_WAKE_LOCK: screen bright,keyboard light off 

FULL_WAKE_LOCK: screen bright, keyboardbright

ACQUIRE_CAUSES_WAKEUP:当获得WAKE_LOCK时强制立即点亮屏幕和键盘

ON_AFTER_RELEASE:释放锁时重置activity timer

 

 

重载Avtivity的onResume()和onDestroy方法:

 

@Override

protectedvoid onResume() {

// TODOAuto-generated method stub

super.onResume();

mWakeLock.acquire();//点亮

}

 

@Override

protectedvoid onDestroy() {

// TODOAuto-generated method stub

mWakeLock.release();//关闭

super.onDestroy();

}

 

情形三:类似于来电,有时程序不仅仅需要主动点亮屏幕还需要解除屏幕的锁定状态。此时可以在情形二的基础上增添以下的代码:

 

在AndroidManifest.xml中加上permission 权限:

<uses-permissionandroid:name="android.permission.DISABLE_KEYGUARD" />

 

增加解除屏幕锁定的语句:

 

//键盘锁管理器对象  

KeyguardManager km= (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);  

 //这里参数”unLock”作为调试时LogCat中的Tag

KeyguardLockkl = km.newKeyguardLock("unLock");   

kl.disableKeyguard();  //解锁

 

Android从熄屏唤醒屏幕 【代码】Android从熄屏唤醒屏幕 阅读详情

相关推荐

电脑使用python操控安卓手机

一、电脑下载并安装SDK Platform Tools 下载后的文件:platform-tools_r30.0.4-windows.zip(大约12M) 接着解压文件到指定目录 解压后的路径与文件,接着为工具目录添加系统环境变量 验证安装结果 #执行命令 adb version 验证安装结果 手机连接电脑USB后执行adb devices 查看手机连接状态 查询已连接设备/模拟器:adb devices 此处连接手机,需要手机在开发者模式开启USB调试功能。顺便也开启模拟按键功能,后面会用到。

lojloj的博客 1万+

安卓广播监听按键事件和屏幕熄屏亮屏监听

安卓广播监听按键事件和屏幕熄屏亮屏监听,BroadcastReceiver使用

Frida + FART 联手:解锁更强大的 Android 脱壳新姿势

主动调用时 dump 得到的 dex (*_dex_file.dex)和此时 dex 中的所有类列表,以及该 dex 中所有函数的 CodeItem( bin 文件)Execute 脱壳点得到的 dex (*_dex_file_execute.dex)和 dex 中的所有类列表( txt 文件)枚举出所有 ClassLoader 后,再结合 FART 的 api 就可以实现动态加载 dex 的脱壳。增强 FART 的脱壳能力:解决对抗 FART 的壳、动态加载的 dex 的 dump 和修复;

1519

Android 10亮屏、熄屏和自动调光

Android 10 亮屏、息屏、自动亮度代码流程

mart!nhu的博客 1万+

Android 监听屏幕亮灭屏事件

Android 监听屏幕亮灭屏事件

qq_27494201的博客 850

Py-Scrcpy安卓投屏终极指南:Python控制实现无线屏幕镜像

在当今移动优先的时代,如何高效地在电脑上操作安卓设备成为开发者和普通用户共同面临的挑战。Py-Scrcpy客户端应运而生,这款基于Python的安卓投屏工具让你能够通过简单的代码实现设备的远程控制与屏幕镜像。无需root权限,无需复杂配置,只需几行Python代码即可开启全新的设备管理体验。 ## 5大应用场景:解锁安卓投屏的真正价值 **自动化测试**:告别手动点击,通过Python脚本实现

gitblog_00177的博客 828

长沙理工大学第十二届ACM大赛-重现赛C 安卓图案解锁 (模拟)

链接:https://ac.nowcoder.com/acm/contest/1/C来源:牛客网 安卓图案解锁 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262144K 64bit IO Format: %lld 题目描述 栗主席(lizi)是某xxxx大学的一个不得了...

weixin_30780221的博客 521

android12 提高滑动解锁灵敏度

提高滑动解锁灵敏度,

darling_user的博客 235

Android 禁止锁屏与禁止系统自动旋转屏幕

一. 应用程序界面禁止锁屏 KeyguardManager mKeyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE); KeyguardLock mKeyguardLock = mKeyguardManager.newKeyguardLock(&quot;&quot;);//初始化键盘锁,可以锁定...

攻城狮的物联网基地 2907

小米手机解锁BL 当前未连接手机 解决办法

小米手机解锁BL 当前未连接手机 解决办法。

CocoHall的博客 3562

初识安卓逆向

本文简单介绍了安装逆向的分类和基本准备工具。

2401_89571490的博客 1052

Android系统中默认值的意义列表

在SettingsProvider中设置系统中默认值,我们可以在frameworks\base\packages\SettingsProvider\res\values\default.xml文件中看到常用的一些默认值,这次我就来详细解释下这里面默认的意义。当然,这不是全部的默认值,全部默认值得定义要在frameworks\base\core\java\android\provider\Settings.java中查看。 default.xml中名称 类型 意义 def_dim_scree

Android8.x和Android9.x平台user版本打开UART输出并支持控制台输入和user版本adb root的方法 225

Windows Subsystem for Android 完整指南:从零开始轻松运行安卓应用

Windows Subsystem for Android(WSA)是微软为Windows 11用户带来的革命性功能,它让你在电脑上直接运行安卓应用,无需安装第三方模拟器。无论你是普通用户想玩手机游戏,还是开发者需要测试应用,WSA都能提供原生级的安卓体验。本指南将带你从入门到精通,轻松掌握WSA的所有实用技巧。 ## 为什么选择WSA?三大核心优势解析 🚀 相比传统安卓模拟器,WSA拥有三

gitblog_00398的博客 321

Win11安卓子系统(WSA)新手指南:从零到一,开启桌面安卓生态

本文详细介绍了Win11安卓子系统(WSA)的安装与配置指南,从硬件检查到系统设置,再到两种安装方案和进阶优化技巧,帮助用户轻松开启桌面安卓生态。特别适合需要在Windows环境下运行安卓应用的用户,提升工作效率和娱乐体验。

weixin_29698641的博客 382

别再到处找了!用这个神秘链接一键打开WSA安卓子系统原生设置(附桌面快捷方式创建)

本文揭秘了通过`wsa://`协议一键访问WSA安卓子系统原生设置的终极方案,解决了Windows 11用户无法直接使用完整安卓功能的痛点。详细介绍了三种调用方法(浏览器直连、桌面快捷方式、批处理脚本),并扩展了协议的高级应用场景与疑难解答,帮助用户像操作真机一样自由掌控WSA设置。

weixin_33739541的博客 435

采访Philipp Crocoll:安卓平台上Java和C#的整合

在这个采访中,我们跟开源开发者Philipp Crocoll讨论了关于Keepass2Android的相关话题。Keepass2Android不仅具有强大的密码存储的功能,还是在一个单独的安卓应用同时使用Java和C#的很好的案例。\InfoQ:能否介绍一下Keepass2Android设计初衷是为了解决什么问题?\\Keepass 2是一个强大的密码管理器,我已经使用了很长一段时间。它有一些很好...

cpongo5 153

安卓应用开发环境

本文会持续更新修改,主要记录在安卓应用开发中,遇到的一些问题和解决方案。

Watom_663的博客 1876

Appium第二天

屏幕解锁: package com.APPtest.class4; import java.io.File;import java.io.IOException;import java.net.MalformedURLException;import java.net.URL; import org.apache.commons.io.FileUtils;import org.openqa....

weixin_30785593的博客 65
上一篇: Android五子棋棋盘的绘制
下一篇: 映射IP使模拟器可以通信
pku_android
博客等级 码龄15年 450粉丝 151原创
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值