996sm
996sm
  • 发布:2026-01-16 17:09
  • 更新:2026-01-16 17:17
  • 阅读:23

uni-app x 离线打包后的uni.showModal不生效

分类:uni-app x

libs引入了 uni-modal-release.aar 在 build.gradle defaultConfig 也加了
buildConfigField 'String', 'UTSEasyCom', '\"[{\\"class\\":\\"uts.sdk.modules.DCloudUniModal.UniModalExtApiPagesRegister\\",\\"method\\":\\"register\\"}]\"'

也是没反应

2026-01-16 17:09 负责人:无 分享
已邀请:
DCloud_Android_zl

DCloud_Android_zl

参考文档:https://doc.dcloud.net.cn/uni-app-x/native/modules/android/others.html

从你发出的内容看是因为少了转义符问题。如果还是有问题,可以将SDK中的配置拷贝到项目中。

  • 996sm (作者)

    解决了 修改为 buildConfigField 'String', 'UTSEasyCom', '\"[{\\"class\\":\\"uts.sdk.modules.DCloudUniModal.UniModalExtApiPagesRegister\\",\\"method\\":\\"register\\"}]\"' 即可正常使用了

    2026-01-16 17:48

Ask小助手

Ask小助手

该问题请在专业群( uni-app x技术交流群 ) 咨询,群中有相关专业的管理员和群友。

根据您描述的问题,uni-app x 离线打包后 uni.showModal 不生效,结合知识库信息分析如下:

  1. 配置转义问题:您的 build.gradle 配置中转义符可能不正确。正确的配置应为:

    buildConfigField 'String', 'UTSEasyCom', '\\\"[{\\\\\\\"class\\\\\\\":\\\\\\\"uts.sdk.modules.DCloudUniModal.UniModalExtApiPagesRegister\\\\\\\",\\\\\\\"method\\\\\\\":\\\\\\\"register\\\\\\\"}]\\\"'

    注意:Groovy 字符串中需要双重转义,最外层应为 \\\" 而非 \",内部每个引号都需要 \\\\\\\" 转义。

  2. 依赖库缺失:根据 ISSUE#16391 记录,离线打包时可能缺少必要 aar 库。请确认已引入:

    • uni-modal-release.aar
    • 其他依赖库(如 uni-core-release.aar 等基础库)
  3. 版本兼容性:检查 HBuilderX 版本是否 >= 4.61,因为 release-note 中提到 Android 平台修复了"4.61版本引发的在 uni-app 项目中 uts插件调用 uni.showModal 不展示"的问题(虽然描述为 uni-app 项目,但同样适用于 uni-app x)。

  4. 验证方式:建议在 main.uts 中直接调用测试:

    onLaunch(() => {  
    setTimeout(() => {  
    uni.showModal({ title: "测试", content: "modal 是否生效" })  
    }, 1000)  
    })

请参考 uni-app x 原生SDK Android版工程配置 确认完整集成步骤。若仍无法解决,建议到 DCloud issue 系统 提交新问题并提供详细日志。

内容为 AI 生成,仅供参考

要回复问题请先登录注册