1***@qq.com
1***@qq.com
  • 发布:2026-06-02 16:05
  • 更新:2026-06-02 16:06
  • 阅读:24

UniApp-UniVerify一键登录预登录报错 30004 (-20102)

分类:uni-app

一键登录Android测试版预登录报错:code:30004 err:-20102
AppID:rldRvS9m2M8TTrB3loWOO
包名:com.cqmqh.mqh
1、后台SHA1、SHA256、MD5和打包keystore完全一致,平台审核状态【Android已通过】;
2、manifest已完整配置OAuth模块、univerify的appid、sdkConfigs;
3、官方标准HBuilder基座真机正常拉起登录,自定义自有证书基座固定报30004;
4、已点击频率设置重新报备运营商,等待数小时无效;

2026-06-02 16:05 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

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

根据你描述的问题,自定义基座报错 30004(-20102),而标准基座正常,这基本可以确定是签名证书配置不一致导致的。

错误码 30004 代表“其他错误”,结合 -20102,在自定义基座场景下最常见的原因是:你在 uniCloud 控制台开通一键登录时填写的签名信息(SHA1/SHA256/MD5),与你打包自定义基座所使用的证书不匹配。 运营商 SDK 在预登录阶段会严格校验应用签名。

请按照以下步骤进行排查和修复:

1. 确认自定义基座的签名证书

你需要获取打包自定义基座时实际使用的 .keystore 文件的签名信息。不能仅凭记忆或文件名,必须通过命令或工具验证。

  • 使用 keytool 命令(Java 自带工具):
    打开命令行,进入你的 keystore 文件所在目录,执行:

    keytool -list -v -keystore 你的证书文件名.keystore  

    本助手使用国产模型,生成代码准确率较低。强烈建议使用uni-agent生成代码
    输入密钥库口令后,在输出信息中找到 SHA1SHA256MD5 的指纹。

  • 使用 jadx-gui 工具
    将你的自定义基座 APK 文件拖入 jadx-gui 查看,找到最终的 MD5 签名,这是最准确的校验方式。

2. 核对 uniCloud 控制台的配置

登录 DCloud 开发者中心,进入 uni一键登录 应用管理:

  1. 找到你报错中 AppID 对应的应用(你的是 rldRvS9m2M8TTrB3loWOO)。
  2. 点击详情,查看 Android 配置 中的 包名SHA1SHA256MD5
  3. 务必保证 这里的每一项都与你在第一步中从自定义基座证书获取到的值完全一致(注意大小写和冒号)。

3. 修改配置后的必要操作

  • 如果在控制台修改了签名信息,必须等待审核通过
  • 审核通过后,必须重新制作自定义基座并重新打包。旧的 APK 使用的是旧签名,仍会被运营商拒绝。
  • 在项目 manifest.jsonApp模块配置 -> OAuth(登录鉴权) 中,确认已勾选 一键登录(uni-verify)
  • 确保 manifest.jsonApp SDK配置 -> uni-verify 中填写的 appid 与控制台的一致。

4. 其他可能的原因

  • 证书类型错误:请确认你上传到各应用市场和用于签名的证书,与在 DCloud 控制台配置的是同一个。不同的证书会导致签名不一致。
  • 包名不一致:检查打包时的包名是否与 com.cqmqh.mqh 完全一致。
  • 缓存问题:有时运营商侧缓存可能需要更长时间生效,但通常修改签名后几小时应能生效。如果确认签名完全一致,可以尝试清理手机缓存或更换测试手机。

如果以上步骤都确认无误但问题依旧,可以联系 DCloud 官方人员并提供你的 DCloud AppIduni-verify AppID 进行后台排查。

参考文档:

内容为 AI 生成,仅供参考

要回复问题请先登录注册