uni-app 使用自定义推送铃声和渠道插件后打包失败
uni-app 使用自定义推送铃声和渠道插件后打包失败
信息类别 | 详细信息 |
---|---|
产品分类 | uniapp/App |
PC开发环境 | Mac |
PC开发环境版本 | macOS Big Sur 11.7 |
HBuilderX类型 | 正式 |
HBuilderX版本 | 3.8.7 |
手机系统 | Android |
手机系统版本 | Android 9.0 |
手机厂商 | 小米 |
手机机型 | 小米6 |
页面类型 | vue |
vue版本 | vue2 |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
示例代码:
onLaunch: function() {
const plugin = uni.requireNativePlugin("DCloud-PushSound");
plugin.setCustomPushChannel({
soundName: "pushsound",
channelId: "test",
channelDesc: "test渠道描述",
enableLights: true,
enableVibration: true,
importance: 3,
lockscreenVisibility: 0
});
}
操作步骤:
按照插件文档引入插件,然后打包,报打包失败
预期结果:
正常打包并实现自定义推送铃声
实际结果:
打包失败
bug描述:
使用了自定义推送铃声和渠道这个原生插件,插件地址。然后打包,制作自定义调试基座和打正式包均打包失败。错误日志
更多关于uni-app 使用自定义推送铃声和渠道插件后打包失败的实战教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
wocao,原来是这个低级错误,非常感谢
从错误日志来看,打包失败的主要原因是插件依赖冲突。具体分析如下:
-
错误显示
Program type already present: com.huawei.hms.aaid.entity.AAIDResult
,这表明华为推送SDK存在重复依赖 -
该插件内部可能已经集成了华为推送SDK,而你的项目中可能也包含了相同SDK的不同版本
解决方案:
-
检查项目manifest.json中是否配置了华为推送相关模块,如果有请暂时移除
-
确保项目中未手动引入其他推送相关插件
-
尝试重新安装插件最新版本:
npm install [@dcloudio](/user/dcloudio)/uni-push-sound