1***@qq.com
1***@qq.com
  • 发布:2026-02-28 09:36
  • 更新:2026-02-28 09:36
  • 阅读:19

【报Bug】HBuilderX 打包安卓权限异常

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

HBuilderX类型: 正式

HBuilderX版本号: 4.87

手机系统: Android

手机系统版本号: Android 15

手机厂商: 华为

手机机型: 暂无,是云端打包问题

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
 /* android打包配置 */  
            "android" : {  
                "permissions" : [  
                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",  
                    "<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>",  
                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",  
                    "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",  
                    "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",  
                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",  
                    "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>",  
                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",  
                    "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",  
                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",  
                    "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",  
                    "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",  
                    "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",  
                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",  
                    "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",  
                    "<uses-feature android:name=\"android.hardware.camera\"/>",  
                    "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",  
                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"  
                ],  
                "abiFilters" : [ "armeabi-v7a", "arm64-v8a" ],  
                "schemes" : "uni.f82eb56,uni-f82eb56,unif82eb56,f82eb56"  
            },

操作步骤:

配置权限直接提交打包

预期结果:

配置权限无误,能够正常打包

实际结果:

Appid: UNIF82EB56
HBuilderX版本号:4.87
uniapp-cli版本: 4.87
uniapp 编译器版本: 4.87
云打包服务器SDK版本: 4.87

Error code = -5000
Error message:
Error permissions: parse data as xml failed in manifest.json(android permissions) - '<uses-permissionandroid:name=\"android.permission.CHANGE_NETWORK_STATE\"/>'
[\"<uses-permissionandroid:name=\\"android.permission.CHANGE_NETWORK_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.READ_CONTACTS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.VIBRATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.READ_LOGS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_WIFI_STATE\\"\/>\",\"<uses-featureandroid:name=\\"android.hardware.camera.autofocus\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.WRITE_CONTACTS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_NETWORK_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.CAMERA\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.RECORD_AUDIO\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.GET_ACCOUNTS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.MODIFY_AUDIO_SETTINGS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.READ_PHONE_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.CHANGE_WIFI_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.WAKE_LOCK\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.CALL_PHONE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.FLASHLIGHT\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_COARSE_LOCATION\\"\/>\",\"<uses-featureandroid:name=\\"android.hardware.camera\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_FINE_LOCATION\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.WRITE_SETTINGS\\"\/>\"]

bug描述:

安卓权限已配置,格式反复检查无误,进行云端打包报错如下:

HBuilderX云打包编译错误信息?

Error code = -5000
Error message:
Error permissions: parse data as xml failed in manifest.json(android permissions) - '<uses-permissionandroid:name=\"android.permission.CHANGE_NETWORK_STATE\"/>'
[\"<uses-permissionandroid:name=\\"android.permission.CHANGE_NETWORK_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.READ_CONTACTS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.VIBRATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.READ_LOGS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_WIFI_STATE\\"\/>\",\"<uses-featureandroid:name=\\"android.hardware.camera.autofocus\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.WRITE_CONTACTS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_NETWORK_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.CAMERA\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.RECORD_AUDIO\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.GET_ACCOUNTS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.MODIFY_AUDIO_SETTINGS\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.READ_PHONE_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.CHANGE_WIFI_STATE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.WAKE_LOCK\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.CALL_PHONE\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.FLASHLIGHT\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_COARSE_LOCATION\\"\/>\",\"<uses-featureandroid:name=\\"android.hardware.camera\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.ACCESS_FINE_LOCATION\\"\/>\",\"<uses-permissionandroid:name=\\"android.permission.WRITE_SETTINGS\\"\/>\"]

2026-02-28 09:36 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

作为 DCloud 官方人员,对该 bug 反馈进行评审如下:


✅ 一、反馈完整性评审

项目 状态 说明
BUG 标题 明确指出了“安卓权限异常”及打包错误
BUG 描述 描述了配置权限后打包失败,提供了错误码和错误信息
代码示例 提供了 manifest.json 中 android.permissions 的完整配置
复现步骤 ⚠️ 描述为“配置权限直接提交打包”,略显简略,但结合错误信息可复现
预期结果 明确“配置无误,应能正常打包”
实际结果 提供了完整的云端打包错误日志
分类信息 提供了 HBuilderX 版本、平台、Vue 版本等关键信息

结论:反馈内容基本完整,具备复现条件,无需补充。


✅ 二、bug 是否成立

根据知识库中明确说明:

“app” -> “permissions” 节点配置的数据格式不正确,手动删除此 permissions 节点数据。在 manifest.json 的可视化界面中配置。”
——来源:优先知识库 - uniapp云平台打包

该用户配置如下:

"android" : {  
  "permissions" : [  
    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",  
    ...  
  ]  
}

问题根因

  • 用户将 完整的 XML 标签字符串 作为数组元素写入 permissions,这是错误格式;
  • 正确格式应为 仅权限名使用官方提供的配置方式
  • 云端打包服务器尝试解析这些字符串为 XML,导致 parse data as xml failed

✅ 三、是否为基本概念问题

是。该问题属于 manifest.json 中 Android 权限配置格式错误,并非平台兼容性或功能缺陷。


✅ 四、官方建议

请用户按以下方式修正配置:

✅ 正确写法(推荐):

在 manifest.json 的「App模块权限配置」中可视化勾选所需权限;
或在「源码视图」中按如下格式配置:

"app-plus": {  
  "distribute": {  
    "android": {  
      "permissions": [  
        "android.permission.CHANGE_NETWORK_STATE",  
        "android.permission.READ_CONTACTS",  
        "android.permission.CAMERA"  
      ]  
    }  
  }  
}

注意:不需要写 <uses-permission ... />,只需写权限名。


✅ 五、结论

该 bug 反馈有效,非平台 bug,而是配置格式错误导致。
建议用户按官方文档格式重新配置权限后重新打包即可解决。

如需进一步帮助,可参考文档:Android平台额外添加权限

内容为 AI 生成,仅供参考

要回复问题请先登录注册