在Android app中实现灭屏、亮屏操作_安卓 app 关闭屏幕-程序员宅基地

因为某些需求需要在app中实现灭屏、亮屏操作,网上有许多相关介绍的博客,但很遗憾,自己一一尝试都未能成功,最终参考了Android反射调用goToSleep实现一键锁屏、亮屏才成功实现了。

不过在实际操作中还是有点小问题,因为只有系统级别的应用才能使goToSleep生效,我自己实际测试将apk放置于/system/priv-app/下还是会提醒权限不足,不知道是不是系统版本的问题,后面自己将apk做了系统签名就可以获得权限了。

签名的方法:

所需文件:

build\target\product\security\platform.pk8

build\target\product\security\platform.x509.pem

out\host\linux-x86\framework\signapk.jar

在你自己的工程根目录下新建文件夹xxx,将上述文件以及需要签名的apk放在该目录下后运行:

java -Djava.library.path=../out/host/linux-x86/lib64 -jar signapk.jar platform.x509.pem platform.pk8 app-debug.apk app-debug-signed.apk即可完成签名

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u012852605/article/details/105809285

智能推荐

系统设计原则之里氏代换原则_系统设计原则 原子化 单一化-程序员宅基地

文章浏览阅读1.3k次。之前讲述的“开-闭”原则是系统设计的主原则,做到这点是一件很不容易的工作。但是也不是高不可攀的,除此原则以外还有其他的一些设计原则为实现或者说尽可能的达到“开-闭”提供有效的手段和工具。如果将“开-闭”原则比喻成一个人在移动这一行为的话,那么一下所讲述的原则就好比是人的脚,交通工具等一样,她们都是附属于“开-闭”原则的。让我们先看看里氏代换原则吧!! 里氏代换原则 Liskov Subs_系统设计原则 原子化 单一化

Webpack搭建完整Typescript开发环境_webpact typescript安装babel-polyfill-程序员宅基地

文章浏览阅读1w次,点赞4次,收藏7次。前言IDE提供了强大的纠错与补全能力,但是对于从开发时的编程语言实时转译,提供开发本地服务器以及自动刷新,到转为生产环境代码的编译,压缩,混淆代码以及打包,还是交给一些第三方工具的吧,对,我说的就是Typescript代替Javascript进行前端开发,第三方工具就说的是神器webpack。在此记录一下,下一次直接复制粘贴 :-p需求开发环境即时编译为js,并自动刷新页面生产环境将es6/e_webpact typescript安装babel-polyfill

超硬核!数据库学霸笔记,考试/面试随便秒杀_设计表每个人设计一张表,至少具有四个属性,并列举这个关系当中的所有候选码-程序员宅基地

文章浏览阅读7.6w次,点赞3.2k次,收藏6.5k次。废话不多说,上干货是兔老大的传统了,收藏就完事了。数据库系统概论四个基本概念数据:数据库中存储的基本对象,描述一个事物的符号记录,数据和其语义不可分开说数据库(DB):是长期储存在计算机内、有组织的、可共享的大量数据的集合。数据库管理系统:一个管理数据的软件主要功能:数据定义功能:(1)提供数据定义语言(DDL):创建表(CREATE),修改表(ALTER),删除表(DROP);(2)定义数据库中的数据对象操纵功能:提供数据操纵语言(DML,即增删改查的操._设计表每个人设计一张表,至少具有四个属性,并列举这个关系当中的所有候选码

[转]OpenSessionInViewFilter作用及配置-程序员宅基地

文章浏览阅读427次。一、作用Spring为我们解决Hibernate的Session的关闭与开启问题。 Hibernate 允许对关联对象、属性进行延迟加载,但是必须保证延迟加载的操作限于同一个 Hibernate Session 范围之内进行。如果 Service 层返回一个启用了延迟加载功能的领域对象给 Web 层,当 Web 层访问到那些需要延迟加载的数据时,由于加载领域对象的 Hibernate Sess

BT1120中的串行传输-程序员宅基地

文章浏览阅读566次。BT1120不仅支持并行传输,也定义了并行传输。详细说明可以看ITU-R BT1120,在这里只做概述和总结。转载于:https://www.cnblogs.com/zhongguo135/p/8405665.html_bt1120传输速率

Parameter tasks is deprecated, use target instead-程序员宅基地

文章浏览阅读4.1k次。原因:<tasks></tasks><plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.8</version&g..._parameter tasks is deprecated, use target instead

随便推点

Linux下普通用户安装配置rsync_rsyncd能不能用普通用户启动-程序员宅基地

文章浏览阅读1.1k次。场景:使用普通用户jx,将host1上的myfiles目录同步到host2的myfiles安装:Redhat7.8,服务器端和客户端,都使用yum install rsync即可安装的版本:3.1.2配置—rsync服务端(172.16.0.2)—普通用户jxmkdir /home/jx/rsyncdvi /home/jx/rsyncd/rsyncd.conf# 自定义端口port=88873# 普通用户需要将uid和gid注释掉,否则会报错setgroups failed: Oper_rsyncd能不能用普通用户启动

oracle表导出TXT文件,Oracle如何把海量数据导出到一个txt文本中-程序员宅基地

文章浏览阅读2.2k次。第一种:利用spool。缺点:性能较差利用Oracle中的Spool缓冲池技术可以实现Oracle数据导出到文本文件。1)、在OraclePL/SQL中输入缓冲开始命令,并指定输出的文件名:spoold:output.txt2)、在命令行中随便输入你的SQL查询:selectmobilefromcustomer;selectmobilefromclient;……3)、在命令行中输入..._oracle 使用utl_file导出txt sql

Mac 安装flutter 踩坑记-程序员宅基地

文章浏览阅读319次。完整版请看链接:http://b36d5043.wiz03.com/share/s/2Prl132RpQ3x2XpA4I2oTa2204K0FF0vB4J42tWIEQ04UrAg首先下载flutter SDK; 解压的/Users/app/下下载: Android Studio 并且安转,默认选项,知道安转安装完成,有些需要提供权限。安装https://www.j..._macbook java15 flutter noclass

炼数成金数据分析课程---12、统计学常用知识-程序员宅基地

文章浏览阅读119次。炼数成金数据分析课程---12、统计学常用知识一、总结一句话总结:大纲+实例快速学习法主要讲的是统计学和编程的结合:在代码里面怎么把这些统计学敲出来1、学习统计学一般学习哪两方面的内容?描述统计学假设检验◆描述统计学-集中趋势-离散趋势-偏态◆假设检验-基本原理-基本概率2、统计学可以分为哪两类?..._炼数成金 hmm

plus.push.getClientInfo获取客户端标识clientid_plus.push.getclientinfo()-程序员宅基地

文章浏览阅读5.2k次。方案一:let pinf = plus.push.getClientInfo();let cid = pinf && pinf.clientid || ''; //客户端标识有可能取不到clientId,或者为‘undefined’ ‘null' 等字符串由于可能取不到,然后使用方案二,异步获取方案二:plus.push.getClientInfoAsync((info) => { cid = info.clientid; }, err =&g_plus.push.getclientinfo()

Verilog仿真事件队列-程序员宅基地

文章浏览阅读876次。1.分层的事件队列2.执行事件的队列3.仿真时间的计算4.同一层事件,无先后顺序这个点:觉得Verilog与systemVerilog比较,Verilog比较笼统,systemVerilog则比较细分。在Verilog眼中无论testbench、dut还是assertion都是code。所以先把code吃进来,然后有一个时间轴参数,仅仅处理set t = 0时刻的code...._verilog 事件队列

推荐文章

热门文章

相关标签