uni-app 强制移除的权限打包后通过ADB命令查看还是存在
uni-app 强制移除的权限打包后通过ADB命令查看还是存在
| 信息类别 | 详细信息 |
|---|---|
| 产品分类 | uniapp/App |
| PC开发环境 | Windows |
| PC版本号 | win11 |
| HBuilderX | 正式 |
| HBuilderX版本号 | 4.85 |
| 手机系统 | Android |
| 手机版本号 | Android 13 |
| 手机厂商 | 华为 |
| 手机机型 | 三星 |
| 页面类型 | vue |
| Vue版本 | vue2 |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |
示例代码:
额外添加权限配置
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_LOGS"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_MEDIA_VISUAL_USER_SELECTED"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.WRITE_APN_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
强制移除权限配置
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES\"/>
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO\"/>
操作步骤:
打包为谷歌play版本包,上传至play商城 然后下载通过adb命令查看版本包权限
### 预期结果:
强制移除的权限不存在
实际结果:
强制移除的权限还是存在
### bug描述:
将代码打包成aab版本包上传至play商场,下载内测版本后检查权限发现强制移除的权限还是存在
相关图片:

更多关于uni-app 强制移除的权限打包后通过ADB命令查看还是存在的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于uni-app 强制移除的权限打包后通过ADB命令查看还是存在的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在 uni-app 中,通过 manifest.json 的 modules 配置或原生插件配置移除权限时,需要注意权限依赖关系。根据你的配置,你尝试移除 READ_MEDIA_IMAGES 和 READ_MEDIA_VIDEO 权限,但云端打包时这些权限可能被其他模块或插件隐式引入。
常见原因包括:
- 模块依赖:某些 uni-app 模块(如媒体选择、文件读写)可能自动引入媒体权限。
- 插件权限:如果使用了第三方原生插件,插件可能声明了这些权限。
- Android 版本适配:Android 13 及以上版本对媒体权限进行了细分,旧模块可能仍依赖
READ_EXTERNAL_STORAGE,而系统会自动映射到新权限。
建议检查:
- 在
manifest.json的App模块权限配置中,确认已取消勾选所有不必要的模块。 - 检查是否使用了
uni.chooseImage、uni.chooseVideo等 API,这些会触发媒体权限。 - 排查所有原生插件,确保插件未声明这些权限。
如果问题持续,可以尝试在 manifest.json 的 源码视图 中,于 app-plus -> distribute -> android 下添加:
"permissions": {
"remove": [
"android.permission.READ_MEDIA_IMAGES",
"android.permission.READ_MEDIA_VIDEO"
]
}

