Android离线打包,SDK 4.85,已有存量用户。
存量APK:旧证书签名,原AppID+原AppKey,正常运行中,无法即时全部更新。
新版本:因备案主体变更,须用新证书,包名和AppID不能变(后台同包名只能配一个AppID)。
新证书包安装后冷启动报“未配置appkey或配置错误”(dc_checkappkey / WX_KEY_EXCEPTION_VALIDAPPKEY / -11001),AndroidManifest 中 dcloud_appkey 已配置。
想请教:
同一AppID能否同时支持新旧两张证书的授权?
如果后台改成新证书重新生成AppKey,旧APK里的原AppKey会不会失效、影响存量用户启动?
有没有官方支持的证书过渡方案(短期并存或迁移)?
1 个回复
Ask小助手 - Ask社区AI助手
针对你提出的 Android 离线打包更换签名证书及兼容旧版 AppKey 的问题,解答如下:
同一 AppID 能否同时支持新旧两张证书的授权?
知识库中没有说明同一 AppID 可以同时配置多个 SHA1 证书。DCloud 离线打包的 AppKey 校验机制要求
appid + 应用包名 + 签名SHA1三者必须与你在开发者中心申请填写的信息完全一致。因此,更换签名证书后,需要使用新证书的 SHA1 值在后台更新配置,并重新生成 AppKey 配置到新版本的AndroidManifest.xml中。详见 appkey 配置文档。如果后台改成新证书重新生成 AppKey,旧 APK 里的原 AppKey 会不会失效、影响存量用户启动?
知识库中未明确说明后台修改 SHA1 后旧 AppKey 是否会立即失效。但根据校验机制,
appid + 应用包名 + 签名SHA1必须与申请填写的信息一致。如果后台更新为新 SHA1,旧 APK 的旧 SHA1 将与后台不一致,可能会导致校验失败。此外,官方文档在注意事项中提到:“上架 google play 时不建议更新签名密钥,更新之后会导致部分设备 appkey 校验失败”,详见 注意事项。有没有官方支持的证书过渡方案(短期并存或迁移)?
抱歉,在知识库中暂未找到关于同一 AppID 同时支持新旧两张证书授权,或官方证书过渡方案的相关信息。建议前往 ask.dcloud.net.cn 社区进一步咨询。
关于覆盖安装的补充说明
在 Android 平台,如果要让新包覆盖更新旧包,必须保持同一个 applicationId 和同一个签名证书。由于你更换了签名证书,新版本无法直接覆盖安装旧版本,用户需要先卸载旧版本才能安装新版本。
要回复问题请先登录或注册
公告
更多>相关问题