热修复系列文章5 —— 热修复--Tinker可能出现的问题

1. onLoadPatchListenerReceiveFail code为-2

解决方案来源:热修复——Tinker的集成与使用
报错原文如下:

receive a patch file: /storage/emulated/0/patch_signed_7zip.apk, file size:4751
patch loadReporter onLoadPatchListenerReceiveFail: patch receive fail: /storage/emulated/0/patch_signed_7zip.apk, code: -2

出现这种情况,请按如下进行排查:

  1. 查看文件路径是否正常。
//关于/storage/emulated/0/patch_signed_7zip.apk
其中/storage/emulated/0/可通过Environment.getExternalStorageDirectory().getAbsolutePath();获取,
//是跟下面调用的方法的最后一个参数相对应
TinkerInstaller.onReceiveUpgradePatch(getApplicationContext(), Environment.getExternalStorageDirectory().getAbsolutePath() + "/patch_signed_7zip.apk");相对应的
  1. 查看清单文件中是否有添加SD卡访问权限。
  2. 如果你的手机是Android7.0请要考虑FileProvider(Android7.0不支持直接访问sd卡)。

2. Tinker does not support instant run mode,

Error:A problem occurred configuring project ':app'. > Tinker does not support instant run mode, please trigger build by assembleDebug or disable instant run in 'File->Settings...'.

解决办法:
去掉instance run
参考链接:https://www.aliyun.com/jiaocheng/11766.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容