🚀 HyperOS 2.0 关闭 MIUI 优化后的 Tricks
接之前的帖子:HyperOS 2.0 在关闭 MIUI 优化 虽然恢复了更原生的 Android 体验,但一些常用功能(如小窗)失效或权限管理部分失效(如自启动)。
折腾了一下,一些发现分享给坛友。
1. 完善小窗功能 💻
关闭 MIUI 优化后,小窗功能无法正常使用。通过开发者选项中的两个设置可以修复
2. 权限管理:App Manager 控制应用权限 🛡️
关闭 MIUI 优化后,设置中自带的权限管理部分会失效,导致许多关键权限无法正常设置,例如获取应用列表、自动启动和后台运行等。 由于App ops很久没更新了,App Manager (项目地址:https://github.com/MuntashirAkon/AppManager) 可以作为替代品,而且有很多优秀的功能。
App Manager 在 ADB 无线调试 开启后,可以调整应用的 App Ops 权限。App Ops 包含 AOSP(Android 15) 自带的 151 个权限(ID 从 0 到 150,部分可调整),还包括 MIUI/HyperOS 自定义的 52 个权限(ID 从 10001 到 10053)。
📌 注意:小米需要开启USB调试和USB调试(安全模式),其中安全模式必须登录小米账号(不得不再次吐槽)。
- AOSP App Ops 权限列表:可以在 https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/app/AppOpsManager.java 查看详细的 AOSP 权限定义。
- MIUI/HyperOS App Ops 权限列表:这些小米自定义权限可以在 [https://dumps.tadiphone.dev/dumps/xiaomi/dada] 中的
framework.jar反编译后获取。或者可以在[https://miuirom.org/]下载完整 ROM 包。
AOSP是源码可以直接查看,以下是 MIUI/HyperOS 自定义 App Ops 权限的列表:
| OP 常量 | ID | 说明 |
|---|---|---|
| OP_WIFI_CHANGE | 10001 | Wi-Fi 状态变更权限 |
| OP_BLUETOOTH_CHANGE | 10002 | 蓝牙状态变更权限 |
| OP_DATA_CONNECT_CHANGE | 10003 | 数据连接变更权限 |
| OP_SEND_MMS | 10004 | 发送彩信权限 |
| OP_READ_MMS | 10005 | 读取彩信权限 |
| OP_WRITE_MMS | 10006 | 写入彩信权限 |
| OP_BOOT_COMPLETED | 10007 | 开机启动权限 |
| OP_AUTO_START | 10008 | 自动启动权限 |
| OP_NFC_CHANGE | 10009 | NFC 状态变更权限 |
| OP_DELETE_SMS | 10010 | 删除短信权限 |
| OP_DELETE_MMS | 10011 | 删除彩信权限 |
| OP_DELETE_CONTACTS | 10012 | 删除联系人权限 |
| OP_DELETE_CALL_LOG | 10013 | 删除通话记录权限 |
| OP_EXACT_ALARM | 10014 | 精确闹钟权限 |
| OP_ACCESS_XIAOMI_ACCOUNT | 10015 | 访问小米账户权限 |
| OP_NFC | 10016 | NFC 权限 |
| OP_INSTALL_SHORTCUT | 10017 | 安装快捷方式权限 |
| OP_READ_NOTIFICATION_SMS | 10018 | 读取通知短信权限 |
| OP_GET_TASKS | 10019 | 获取任务权限 |
| OP_SHOW_WHEN_LOCKED | 10020 | 锁屏显示权限 |
| OP_BACKGROUND_START_ACTIVITY | 10021 | 后台启动 Activity 权限 |
| OP_GET_INSTALLED_APPS | 10022 | 获取已安装应用权限 |
| OP_SERVICE_FOREGROUND | 10023 | 前台服务权限 |
| OP_GET_ANONYMOUS_ID | 10024 | 获取匿名 ID 权限 |
| OP_GET_UDEVICE_ID | 10025 | 获取设备 ID 权限 |
| OP_SHOW_DEAMON_NOTIFICATION | 10026 | 显示守护进程通知权限 |
| OP_BACKGROUND_LOCATION | 10027 | 后台位置权限 |
| OP_READ_SMS_REAL | 10028 | 真实读取短信权限 |
| OP_READ_CONTACTS_REAL | 10029 | 真实读取联系人权限 |
| OP_READ_CALENDAR_REAL | 10030 | 真实读取日历权限 |
| OP_READ_CALL_LOG_REAL | 10031 | 真实读取通话记录权限 |
| OP_READ_PHONE_STATE_REAL | 10032 | 真实读取电话状态权限 |
| OP_POST_LOCAL_NOTIFICATION | 10033 | 发布本地通知权限 |
| OP_ACCESS_GALLERY | 10034 | 访问图库权限 |
| OP_ACCESS_SOCIALITY | 10035 | 访问社交功能权限 |
| OP_ACCESS_LOCATION_REAL | 10036 | 真实访问位置权限 |
| OP_GET_OAID | 10037 | 获取 OAID 权限 |
| OP_GET_OAID_USER | 10038 | 获取用户 OAID 权限 |
| OP_GET_PHONE_NUMBER_OPERATOR | 10039 | 获取运营商电话号码权限 |
| OP_SEC_CONTROL_DNS | 10040 | 安全控制 DNS 权限 |
| OP_CAN_BE_RECORDED | 10041 | 可录制权限 |
| OP_MEDIA_PROJECTION | 10042 | 媒体投影权限 |
| OP_ANDROID_LOCATION_REAL | 10043 | Android 真实位置权限 |
| OP_SHAKE | 10044 | 摇一摇权限 |
| OP_LIVE_WALL_PAPER | 10045 | 动态壁纸权限 |
| OP_RECORD_VOICE_CALL | 10046 | 录制语音通话权限 |
| OP_INDEPENDENT_STORAGE | 10047 | 独立存储权限 |
| OP_GUIDE_INSTALL | 10048 | 引导安装权限 |
| OP_FORBIDDEN_CHAIN | 10049 | 禁止链式调用权限 |
| OP_DEVICE_ID | 10050 | 设备 ID 权限 |
| OP_READ_RECORD | 10051 | 读取记录权限 |
| OP_READ_NOTE | 10052 | 读取笔记权限 |
| OP_AUTO_START_SWITCH | 10053 | 自动启动开关权限 |
在上述权限中,10008 (自动启动)、10022(获取应用列表)、10037 (获取 OAID) 和 10044 (摇一摇) 比较常见。
10008 (自动启动):这个权限不仅控制开机自启动,还包括允许应用在后台被唤醒。如果取消了这个权限,即使是微信这等应用,也可以被系统彻底清除后台。
10022 (获取应用列表):AOSP中的 QUERY_ALL_PACKAGES 在HyperOS中不管用,小米通过 10022 控制可获取应用列表权限。
10044 (摇一摇):这个权限对应的是获取设备动作与方向的权限。
📌 Bilibili 后台自启动问题 🤔:即使关闭了 10008 (自动启动) 权限,目前 Bilibili 仍然有服务自启动(ijk media player 流媒体服务)
欢迎交流!
评论 (0)