导航:首页 > 操作系统 > hotpatchandroid

hotpatchandroid

发布时间:2022-08-12 01:37:33

android热更新框架哪个好

一.基础知识

1.阿里的热更新框架已经开源 了。但已经很久没有更新过新版本了。当前的版本只支持到了 Android 4.4。由于 5.0 起新的 ART 虚拟机、更严格的 SELinux 策略以及对 64 位的支持之类的事,使得 Xposed 都在开发上做了很多调整。我不知道 Dexposed 现在是否支持,但至少阿里没有开源。

2.在本地动态执行远端下发的代码是极度危险的行为。利用此方法执行非法代码等或用于绕过 Google Play 等市场的审查是违反相关协议的,也是对用户极度不负责任的行为。

3.在一些访问非常密集的地方使用热更新可能会对效率产生相对比较大的影响,应该避免使用.

4.我们可以对 Java 的 ScriptEngine 进行一些封装成为一个 HotPatch 类使得它更适合做热更新的工作。

5.首先,检查热更新补丁的管道一定要建立在 https 上,因为下发代码是极其危险的,如果被劫持,后果是无法想象的。其次,请求时最好自动带上 Android 版本、手机型号、地区、版本号等信息,以方便更精确地下发,千万不能下发错。

6.Java在运行时加载对应的类是通过ClassLoader来实现的,ClassLoader本身是一个抽象来,Android中使用PathClassLoader类作为Android的默认的类加载器

7.我们的如果想做hotpatch,一定要保证我们的hotpacth dex文件出现在dexElements列表的前面。

二.常用的热更新技术框架:

基于QQ空间的HotFix →→ 要使用到android dex分包方案→拆分dex的项目的话,可以参考一下谷歌的multidex方案实现.

大众点评的NuWa←项目补丁自动化做的很完整
alibaba/AndFix

阿里巴巴的DexPosed
dalvik_patch实现multidex
使用React-Native实现app热部署的一次实践
alibaba/AndFix

三、常用的热更新技术框架比较

Advantage
disadavantage
NuWa
1,可以新增类和字段,
2,兼容到6.0系统
1,基本原理是classloader,类加载器
2,不能修改资源文件,如图片布局等(可通过动态布局实现)
AndFix
1, 支持Android2.3到6.0版本
2, 支持arm与x86系统架构
3, 支持dalvik和ART的runtime
4, 不需要重启App即可应用补丁
1,不能新增类和字段,
2,不能修改资源文件,
3,不能修改manifest文件
4,不能新增成员变量
5,不能使用加固后的apk制作pacth文件
四、github地址
网络的同学的实现 HotFix
点评的同学的实现 Nuwa
阿里的同学的实现 AndFix
另:AndFix对static的支持不太好,下面是试验的Demo:
添加了一个静态的字段addString:

通过AndFix来制作patch会直接报错:

阅读全文

与hotpatchandroid相关的资料

热点内容
好看爱情网 浏览:304
泰国电影女主叫小草 浏览:543
模具设计的命令如何用 浏览:990
华为云桌面服务器多少钱一台 浏览:271
木工数控刀具路径编程 浏览:275
用电脑看高清电影在哪里看 浏览:242
老外从墙壁穿越的电影 浏览:813
下人电影完整版下载 浏览:589
云服务器下载服务 浏览:241
pdf如何插入页码 浏览:637
ps选择命令大全 浏览:826
qq聊天记录恢复文件夹 浏览:646
电脑公共盘加密码 浏览:459
韩国电影两个字 浏览:971
鸿蒙系统怎么给App加速 浏览:190
女主叫男主三叔姓战 浏览:377
骁骑校全部小说顺序 浏览:394
如何将iphone手机照片转到安卓手机 浏览:31
从本地邮件到服务器是什么协议 浏览:226
外国片公交车男女主 浏览:234