阿里新推出了一个新的热更新框架叫:Sophix据说很牛逼我引用下阿里官方的说法!
因为以前并没有搞过热更新,所以想进行一番实验,本来想说下具体的步骤但是真的没什么好说的因为官方文档上都已经很详细了,大家可以点击官方文档。
大致的热更新步骤就是:
生成apk(这个称为old_apk)->改变代码->生成新的apk(这个称为new_apk)。官方提供了一个生成patch的工具,文档里面有下载地址(不管是sdk的版本和工具的版本最好用最新的)。之后打开后台把patch传上去官方还提供了一个测试工具你可以先测试再发布。
在这里主要说一下这个热更新框架到底能更新那些东西:
框架还是很强大的基本上都可以更新,使用中遇到什么问题了吗?当然了,除了推送的不及时不说还有一些,需要注意的点,就是在后台输入的APK的版本号必须和setAppVersion("1.1.3")(是apk的版本号和patch没关系昂)是一样的他会根据这个名字去找对应的apk然后进行更新。还有一个问题就是,假如已经打过一个或者多个补丁了那么热修复就不起作用就需要进行冷修复,也就是需要重启才能使补丁有效果,但是,如果用户用着用着突然杀掉这个进程那是相当的不友好啊,解决的办法我也想好有知道的可以阐述下自己的想法。其他的问题就没有什么了,其实遇到的问题不少但是自己解决了以后发现很简单没必要写下来,如果遇到什么问题就去加阿里钉钉的群:11734260来提问,有专人解答
最后再次提醒大家:一定要用最近的SDK和测试工具,patch生成工具,还有一点就是在打包的时候把Instant Run关掉(要不可能会出现明明代码已经改动了但是还是显示的没有变化)