Android 乱七八糟的设置记录

2024-04-20 22:58

本文主要是介绍Android 乱七八糟的设置记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Android 乱七八糟的设置记录

1、添加永不休眠

frameworks/base/packages/SettingsProvider/res/values/defaults.xml

<integer name="def_screen_off_timeout">0</integer> // 默认休眠时间设为0

frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java

    private void updateLockScreenTimeout() {synchronized (mScreenLockTimeout) {boolean enable = (mAllowLockscreenWhenOn && mAwake &&mKeyguardDelegate != null && mKeyguardDelegate.isSecure(mCurrentUserId));if (mLockScreenTimerActive != enable) {if (enable) {if (localLOGV) Log.v(TAG, "setting lockscreen timer");mHandler.removeCallbacks(mScreenLockTimeout); // remove any pending requestsif (mLockScreenTimeout != 0) { // 添加判断,时间为0则永不休眠,不为0继续执行mHandler.postDelayed(mScreenLockTimeout, mLockScreenTimeout);}} else {if (localLOGV) Log.v(TAG, "clearing lockscreen timer");mHandler.removeCallbacks(mScreenLockTimeout);}mLockScreenTimerActive = enable;}}}

frameworks/base/services/core/java/com/android/server/power/PowerManagerService.java

    private void updateUserActivitySummaryLocked(long now, int dirty) {// Update the status of the user activity timeout timer.if ((dirty & (DIRTY_WAKE_LOCKS | DIRTY_USER_ACTIVITY| DIRTY_WAKEFULNESS | DIRTY_SETTINGS)) != 0) {mHandler.removeMessages(MSG_USER_ACTIVITY_TIMEOUT);long nextTimeout = 0;if (mWakefulness == WAKEFULNESS_AWAKE|| mWakefulness == WAKEFULNESS_DREAMING|| mWakefulness == WAKEFULNESS_DOZING) {......//  如果设置时间为0,则跳过 {if (mScreenOffTimeoutSetting != 0) { // never screenOffif (mUserActivitySummary != 0 && nextTimeout >= 0) {Message msg = mHandler.obtainMessage(MSG_USER_ACTIVITY_TIMEOUT);msg.setAsynchronous(true);mHandler.sendMessageAtTime(msg, nextTimeout);}} else {mUserActivitySummary |= USER_ACTIVITY_SCREEN_BRIGHT;}// }} else {mUserActivitySummary = 0;}......}}

packages/apps/Settings/res/values/arrays.xml

<string-array name="screen_timeout_entries"><!-- 设置中添加never选项 --><item>never</item><string-array name="screen_timeout_values" translatable="false"><!-- 设置中添加nerver时间 0  --><item>0</item>

2、刷完bootimage WIFI无法打开

相同环境下编译 vendor/qcom/opensource/wlan/prima/ 目录下代码,生成 pronto_wlan.ko
push到机器 vendor/lib/modules/pronto/ 目录即可

3、设置persist.sys属性值

属性值以persist.sys.开头的属于持久化的,即重启后设置的值依然保存。需要系统权限,即使用系统签名并在AndroidManifest.xml 声明android:sharedUserId=“android.uid.system”

4、android 源码网站

https://www.androidos.net.cn/sourcecode

5、fastboot 常见指令

fastboot erase system 擦除分区

fastboot getvar secure 查看是否secure boot签名的

fastboot --set-active=a 设置A/B分区

6、签名及查看签名

java -jar signapk.jar testkey.x509.pem testkey.pk8 old.apk new.apk

keytool -printcert -file META-INF/CERT.RSA

7、Linux权限说明

权限说明(共十位):一些系统文件有权限限制,随意push不同步修改还原权限会导致手机无法开机,例如build.prop文件
-rw-------
1位:d:文件夹
-:文件
2-4位:当前用户权限
5-7位:当前用户所在组权限
8-10位:其他用户权限
权限都有三个二进制数字组成,代表不同的权限。
如:二进制110 —> rw- 转换为十进制为6 代表rw-可读可写
  111 rwx 转换为十进制为7 代表rwx可读可写可运行

chown root:shell xxx 修改文件用户和组,仅限root用户使用
chmod 0777 xxx 修改文件权限为0777

这篇关于Android 乱七八糟的设置记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/921542

相关文章

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

在Spring Boot中集成RabbitMQ的实战记录

《在SpringBoot中集成RabbitMQ的实战记录》本文介绍SpringBoot集成RabbitMQ的步骤,涵盖配置连接、消息发送与接收,并对比两种定义Exchange与队列的方式:手动声明(... 目录前言准备工作1. 安装 RabbitMQ2. 消息发送者(Producer)配置1. 创建 Spr

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

PostgreSQL 默认隔离级别的设置

《PostgreSQL默认隔离级别的设置》PostgreSQL的默认事务隔离级别是读已提交,这是其事务处理系统的基础行为模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一 默认隔离级别概述1.1 默认设置1.2 各版本一致性二 读已提交的特性2.1 行为特征2.2

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/