问题形容
APP 扫码 mPaas 小程序弹出 toast 信息:” 利用更新谬误(50002)”。
起因剖析
通过扫码进行真机调试的失常流程如下:
- 在小程序 IDE 生成二维码,以供手机客户端扫描,同时会将小程序包上传至 mPaaS 控制台的小程序公布中。
- 手机客户端扫描此二维码后,会被动通过 RPC 申请去拉取控制台中的 AMR 文件。
当调用 MDS 小程序更新接口后,若没有获取对应的小程序信息,就会提醒“利用更新谬误(50002)”。这类问题可能的起因包含:
- 服务端尚未公布,包含:
-
- 控制台未公布上传的小程序。
- 小程序刚公布,但服务端尚未收到刚公布的小程序。
- 客户端版本不在范畴内。
- 申请信息和服务端公布的规定不匹配。
排查思路
1. 过滤日志
在 Android Studio 控制台的日志信息中过滤关键字 DynamicRelease。查看 UnionResourceInfo 中是否有 Item 信息。
- 失常状况下,会含有 item 信息,示例如下:
- 若未蕴含 item 信息,则为异样,示例如下:
2. 查看接入真机预览和调试性能
依照 Android 小程序接入真机预览与调试中的步骤查看查看接入真机预览和调试是否正确。
3. 查看客户端版本范畴
版本号对应 Android 我的项目 versionName 值。只有当最低版本号 < 以后 App 版本号 < 最高版本号时,能力失常的拉取小程序。若不在这个范畴,App 启动小程序时就会拉取失败,报 “ 利用更新谬误 ”。
所以举荐在最低版本输出 0.0.0.0,最高版本不填写(示意无限大)。
注意事项
因为在小程序 IDE 上传、预览、真机调试会主动将小程序上传至控制台,无需用户在控制台批改配置信息,所以在创立小程序时,不举荐从小程序公布中增加小程序包,防止出现主门路不统一。如要批改小程序,能够在小程序 IDE 中批改。
4. 查看主入口门路
查看 mPaaS 控制台中填写的小程序主入口门路是否与小程序 IDE 中的主入口门路统一。
mPaaS 控制台默认主门路格局为:/index.html#xxx/xxx/xxx/xxx
,其中 #
前方的 xxx/xxx/xxx/xxx
是小程序的 app.json
中的 pages
中的第一个值。
工单帮助
如果仍然不能解决问题,请筹备好相干问题的复现 Demo 工程,通过阿里云工单零碎分割 mPaaS 售后技术支持。
撰文:刘启洋
-END-