1***@qq.com
1***@qq.com
  • 发布:2026-04-02 14:36
  • 更新:2026-04-02 15:48
  • 阅读:86

【报Bug】uniapp自定义基座及发布云打包失败Error code = 0

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 5.05

手机系统: Android

手机系统版本号: Android 16

手机厂商: 荣耀

手机机型: v100

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

运行-自定义基座,发行-云打包

预期结果:

自定义基座成功,云打包成功

实际结果:

[HBuilder] 13:51:29.149 项目 als-tms-driver-app-5-app- [UNIDDB7193]的打包状态:
[HBuilder] 13:51:29.149 时间: 2026-04-02 13:49:17 类型: Android云端证书 打包失败 错误日志: https://app.liuyingyong.cn/build/errorLog/b039c340-2e57-11f1-843a-af985872f87c

bug描述:

前几天都一切正常,昨天尝试自定义基座就一直失败,云证书打包也失败,也尝试过回退HBX4.87版本依旧无效,这期间没有改动代码,错误日志仅有


Appid: UNIDDB7193
HBuilderX版本号:5.05
uniapp 编译器版本: 5.05
云打包服务器SDK版本: 5.05
Error code = 0
Error message:
String could not be parsed as XML


难以定位问题,mainfest文件(如下)也未发现明显格式错误

{  
    "name" : "testApp",  
    "appid" : "__UNI__DDB7193",  
    "description" : "test",  
    "versionName" : "0.0.1",  
    "versionCode" : 3,  
    "transformPx" : false,  
    "app-plus" : {  
        "usingComponents" : true,  
        "nvueStyleCompiler" : "uni-app",  
        "compilerVersion" : 3,  
        "splashscreen" : {  
            "alwaysShowBeforeRender" : true,  
            "waiting" : true,  
            "autoclose" : true,  
            "delay" : 0,  
            "background" : "#FFFFFF",  
            "images" : {  
                "android" : "/static/logo144.png",  
                "ios" : "/static/logo144.png"  
            }  
        },  
        "modules" : {  
            "Location" : {},  
            "SQLite" : {},  
            "Push" : {},  
            "Camera" : {}  
        },  
        "debug" : true,  
        "compilerOptions" : {  
            "optimization" : {  
                "js" : {  
                    "compress" : false,  
                    "obfuscate" : false  
                }  
            },  
            "debug" : true  
        },  
        "distribute" : {  
            "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.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.INTERNET\" />",  
                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\" />",  
                    "<uses-permission android:name=\"android.permission.CAMERA\" />",  
                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\" />",  
                    "<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.SET_ALARM\" />",  
                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\" />",  
                    "<uses-feature android:name=\"android.hardware.camera\" />",  
                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\" />",  
                    "<uses-permission android:name=\"android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS\" />",  
                    "<uses-permission android:name=\"android.permission.FOREGROUND_SERVICE\" />",  
                    "<uses-permission android:name=\"android.permission.FOREGROUND_SERVICE_LOCATION\" />",  
                    "<uses-permission android:name=\"android.permission.POST_NOTIFICATIONS\" />",  
                    "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\" />",  
                    "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\" />",  
                    "<uses-permission android:name=\"android.permission.ACCESS_BACKGROUND_LOCATION\" />",  
                    "<uses-permission android:name=\"android.permission.GET_PACKAGE_SIZE\" />",  
                    "<uses-feature android:name=\"android.hardware.location.gps\" />"  
                ]  
            },  
            "ios" : {  
                "permissions" : {  
                    "Location" : {  
                        "desc" : "获取位置信息用于任务导航和位置跟踪"  
                    }  
                },  
                "dSYMs" : false  
            },  
            "icons" : {  
                "android" : {  
                    "xxhdpi" : "static/logo144.png"  
                }  
            },  
            "sdkConfigs" : {  
                "push" : {},  
                "ad" : {}  
            }  
        }  
    },  
    "quickapp" : {},  
    "mp-weixin" : {  
        "appid" : "",  
        "setting" : {  
            "urlCheck" : false  
        },  
        "usingComponents" : true,  
        "permission" : {  
            "scope.userLocation" : {  
                "desc" : "获取位置信息用于任务导航和位置跟踪"  
            }  
        }  
    },  
    "mp-alipay" : {  
        "usingComponents" : true  
    },  
    "mp-baidu" : {  
        "usingComponents" : true  
    },  
    "mp-toutiao" : {  
        "usingComponents" : true  
    },  
    "uniStatistics" : {  
        "enable" : false  
    },  
    "vueVersion" : "3",  
    "locale" : {  
        "zh-Hans" : {  
            "uni.chooseImage.cancel" : "取消",  
            "uni.chooseImage.sourceType.camera" : "相机",  
            "uni.chooseImage.sourceType.album" : "相册",  
            "uni.showActionSheet.cancel" : "取消"  
        },  
        "zh-Hant" : {  
            "uni.chooseImage.cancel" : "取消",  
            "uni.chooseImage.sourceType.camera" : "相機",  
            "uni.chooseImage.sourceType.album" : "相冊",  
            "uni.showActionSheet.cancel" : "取消"  
        },  
        "en" : {  
            "uni.chooseImage.cancel" : "Cancel",  
            "uni.chooseImage.sourceType.camera" : "Camera",  
            "uni.chooseImage.sourceType.album" : "Album",  
            "uni.showActionSheet.cancel" : "Cancel"  
        }  
    }  
}  
2026-04-02 14:36 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com (作者)

根本没用,都不是一个东西?

Ask小助手

Ask小助手

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

评审意见

1. 反馈内容完整性评估

优点:

  • 提供了完整的manifest.json源码,便于排查配置问题
  • 包含了环境信息(HBuilderX 5.05、Windows 10、Android等)
  • 提供了具体的错误码(Error code = 0)和错误信息(String could not be parsed as XML)
  • 说明了问题发生的时间线和已尝试的解决方案(回退版本)

不足之处:

  • 关键配置信息缺失:虽然提供了manifest.json,但未说明当前项目是从旧版本升级而来,或是否手动调整过权限配置格式
  • 复现步骤过于简略:仅描述"运行-自定义基座",未说明是否使用自定义证书、是否勾选原生插件、是否使用安心打包等关键选项
  • 错误日志不完整:仅提供了错误日志链接,未粘贴完整的错误堆栈信息,不利于快速定位问题

2. Bug有效性判断

该问题成立,且知识库中有明确解决方案。

根据知识库记录,此问题是由于 manifest.json中Android权限配置格式与当前HBuilderX版本不匹配 导致的。

问题根因分析:
您当前使用的是HBuilderX 5.05(≥4.71),但manifest.json中权限配置位于 app-plus -> distribute -> android -> permissions 节点下,这是4.71以下版本的配置格式。

HBuilderX 4.71及以上版本要求权限配置必须在 app-android -> distribute -> permissions 节点下。

解决方案:
请将manifest.json中的权限配置从:

"app-plus": {  
  "distribute": {  
    "android": {  
      "permissions": [...]  
    }  
  }  
}

本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent

调整为:

"app-android": {  
  "distribute": {  
    "permissions": [  
      "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\" />",  
      // ... 其他权限  
    ]  
  }  
}

本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent

详细文档参考:Android平台额外添加权限

建议操作:

  1. 在HBuilderX中打开manifest.json的可视化界面
  2. 进入"Android配置" -> "权限配置",重新勾选所需权限,让IDE自动写入正确格式
  3. 删除旧版 app-plus -> distribute -> android -> permissions 节点下的配置

3. 是否为概念性问题

不属于基本概念问题,属于版本升级后的配置迁移问题。用户未意识到HBuilderX 4.71+版本对Android权限配置路径做了结构性调整。

4. 对用户的建议

建议后续提交bug反馈时:

  1. 提供完整的错误日志文本(而非仅链接)
  2. 说明项目是否从旧版本升级而来
  3. 如果涉及打包失败,请说明具体的打包配置选项(自定义证书/云端证书、是否使用安心打包等)

当前问题可通过调整manifest.json权限配置路径解决,无需回退HBuilderX版本。

内容为 AI 生成,仅供参考

要回复问题请先登录注册