<Android> 系统设置frameworks更改

本文介绍如何通过修改Android系统的特定文件来实现个性化定制,包括移除锁屏、调整屏幕休眠时间、开启未知来源安装等,旨在提升用户体验并解决常见问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下基于Android 5.1, 部分为6.0.


1. 去除LockScreen

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

def_lockscreen_disabled -> true


2. 去除全屏提示 "从顶部向下滑动即可退出全屏模式"

frameworks/base/policy/src/com/android/internal/policy/impl/ImmersiveModeConfirmation.java


3. 系统KEY拦截

frameworks\base\policy\src\com\android\internal\policy\impl\PhoneWindowManager.java


4. 程序无响应崩溃

frameworks/base/services/core/java/com/android/server/am/AppErrorDialog.java

frameworks\base\services\core\java\com\android\server\am\AppNotRespondingDialog.java


5. 更改屏幕休眠时间

packages\apps\Settings\src\com\android\settings\DisplaySettings.java

修改:

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

中与之对应的 <integer name="def_screen_off_timeout">60000<\integer>


6. 外置SD卡无法写

frameworks\base\data\etc\platform.xml:



7. 打开未知来源

frameworks\base\packages\SettingsProvider\res\values\defaults.xml:

<bool name="def_install_non_market_apps">true</bool>


8. 隐藏正在优化界面

frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java:


9. 隐藏底部虚拟按键

frameworks\base\core\res\res\values\dimens.xml:



10. 禁用通知中心

frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\PhoneStatusBarView.java:



11.  禁用系统状态栏下拉

frameworks\base\core\res\res\values\dimens.xml:


frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\PhoneStatusBar.java:



12.  默认开启开发者选项中的showtouch/pointer location

packages\apps\Settings\src\com\android\settings\SettingsActivity.java:



13. 系统屏幕超时不进行休眠

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




安装配置:frameworks/base/core/res/res/values/config <!-- Whether to only install system packages on a user if they're allowlisted for that user type. These are flags and can be freely combined. 0 - disable allowlist (install all system packages; no logging) 1 - enforce (only install system packages if they are allowlisted) 2 - log (log non-allowlisted packages) 4 - any package not mentioned in the allowlist file is implicitly allowlisted on all users 8 - same as 4, but just for the SYSTEM user 16 - ignore OTAs (don't install system packages during OTAs) Common scenarios: - to enable feature (fully enforced) for a complete allowlist: 1 - to enable feature for an incomplete allowlist (so use implicit allowlist mode): 5 - to enable feature but implicitly allowlist for SYSTEM user to ease local development: 9 - to disable feature completely if it had never been enabled: 16 - to henceforth disable feature and try to undo its previous effects: 0 Note: This list must be kept current with PACKAGE_WHITELIST_MODE_PROP in frameworks/base/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java --> <integer name="config_userTypePackageWhitelistMode">13</integer> <!-- 1+4+8 --> 默认安装的系统进程 //frameworks/base/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java ArrayMap<String, Long> determineWhitelistedPackagesForUserTypes(SystemConfig sysConfig) { //安装白名单 final ArrayMap<String, Set<String>> whitelist = sysConfig.getAndClearPackageToUserTypeWhitelist(); //安装黑名单 final ArrayMap<String, Set<String>> blacklist = sysConfig.getAndClearPackageToUserTypeBlacklist(); ... } 相关配置文件:xx/preinstalled-packages-xxx.xml <config> <!-- Settings (Settings app) --> <install-in-user-type package="com.android.settings"> <install-in user-type="SYSTEM" /> <install-in user-type="FULL" /> <install-in user-type="PROFILE" /> <do-not-install-in user-type="android.os.usertype.profile.CLONE" /> </install-in-user-type> </config>分析给出的内容
06-10
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值