听说这个可以两行代码实现热修复,瞬间按耐不住了,
正好公测阶段,申请了一下权限,等了将近一天吧,通过了认证。然后就是开开心心去尝试了


以下是尝试中遇到的问题:
额,,等会说吧,要不先说一下怎么接入,虽然产品文档已经很透明了,但是还是说一下吧


  • 导包都会哈

  • 这里我用的Kotlin 编写的,在Application 中实现需要添加的代码,也就是这两行代码实现热修复

// initialize最好放在attachBaseContext最前面
SophixManager.getInstance().setContext(this).setAppVersion(appVersion).setAesKey(null).setEnableDebug(true).setPatchLoadStatusStub(new PatchLoadStatusListener() {@Overridepublic void onLoad(final int mode, final int code, final String info, final int handlePatchVersion) {// 补丁加载回调通知if (code == PatchStatus.CODE_LOAD_SUCCESS) {// 表明补丁加载成功} else if (code == PatchStatus.CODE_LOAD_RELAUNCH) {// 表明新补丁生效需要重启. 开发者可提示用户或者强制重启;// 建议: 用户可以监听进入后台事件, 然后应用自杀} else if (code == PatchStatus.CODE_LOAD_FAIL) {// 内部引擎异常, 推荐此时清空本地补丁, 防止失败补丁重复加载// SophixManager.getInstance().cleanPatches();} else {// 其它错误信息, 查看PatchStatus类说明}}}).initialize();
// queryAndLoadNewPatch不可放在attachBaseContext 中,否则无网络权限,建议放在后面任意时刻,如onCreate中
SophixManager.getInstance().queryAndLoadNewPatch();

然后就完了—zzz


像之前玩Tinker的时候可没这么简单

好了接下来就是问题所在了

很简单的问题,我弄了一上午,最后发现一句关键的话

1.4 版本管理说明说明一:patch是针对客户端具体某个版本的,patch和具体版本绑定eg. 应用当前版本号是1.1.0, 那么只能在后台查询到1.1.0版本对应发布的补丁, 而查询不到之前1.0.0旧版本发布的补丁.
说明二:针对某个具体版本发布的新补丁, 必须包含所有的bugfix, 而不能依赖补丁递增修复的方式, 因为应用仅可能加载一个补丁eg. 针对1.0.0版本在后台发布了一个补丁版本号为1的补丁修复了bug1, 然后发现此时针对这个版本补丁1修复的不完全, 代码还有bug2, 在后台重新发布一个补丁版本号为2的补丁, 那么此时补丁2就必须同时包含bug1和bug2的修复才行, 而不是只包含bug2的修复(bug1就没被修复了)

我当时手贱改了一下

SophixManager.getInstance().setContext(this).setAppVersion(“1.0.1”)//注意下我写的是1.0.1

实际中我测试的版本是1.0 –而且我在版本=控制台写的也是1.0,
这就尴尬了,轮询器查找不到1.0.1版本jar 文件。

后来改了一下,瞬间世界观崩塌,好伤心一下子好用了~~


问题二:加固
加固问题,Tinker 不支持加固,后来我就没深入尝试,但是Sophix 可以呀,但是不能拿加固完成的版本作为旧包,新包。
你需要的只是在加固之前生成差异包,不然会无法生成jar 文件

问题三:四大组件
对于Sophix 不能创建四大组件的问题,我想了一下,我觉得我们可以尝试一下在旧版本先占几个坑,作为空实现,我们起名 TextActivity1,记得在清单文件中注册一下
我们发布后发现出问题了,肿么办,OK ,现在只需要在我们占的坑TextActivity1中实现方法以及逻辑,最后通过intent 跳转一下,啦啦啦 —成功


不用谢我,推荐一波个人网站,喜欢的话请收藏吧,
–! 臣跪谢

Sophix热修复问题以及加固相关推荐

  1. 阿里SopHix热修复框架

    2015年以来,Android开发领域里对热修复技术的讨论和分享越来越多,同时也出现了一些不同的解决方案,如QQ空间补丁方案.阿里AndFix以及微信Tinker(Bugly sdk也集成Tikner ...

  2. android Tinker 热修复 乐固加固后友盟打多渠道包之后的补丁失效

    继上一篇 android tinker 热修复使用及注意事项  生成了热修复的补丁; 现在的需求是这样的,我想把这个包用腾讯乐固加固,然后生成多渠道包,希望这个补丁能修复所有这些渠道的包,经过测试,直 ...

  3. 阿里Sophix热修复体验

    前言: 之前看了关于热修复的相关文章,想找个代码试试,奈何感觉使用起来有些麻烦,之后就不了了之.看到了阿里的Sophix,嗯,感觉不那么复杂,步骤简单,就着手自己敲了敲.主要记录下自己找了很久,费时步 ...

  4. android热补丁作用,Android热修复之 - 阿里开源的热补丁

    这里就有一个概念那就AndFix.apatch补丁用来修复方法,接下来我们看看到底是怎么实现的. 1.2 生成apatch包 假如我们收到了用户上传的崩溃信息,我们改完需要修复的Bug,这个时候就会有 ...

  5. 类加载机制实现Android热修复

    本文通过类加载机制实现Android热修复,Demo实现的功能:检测服务器是否存在补丁,存在即下载补丁,安装补丁,重启APP生效.支持多个补丁包修复:如果已经下载了多个补丁包,重启app对补丁包进行排 ...

  6. (十四)Tinker 热修复原理及手写实现

    版权声明:本文为博主原创文章,未经博主允许不得转载. 本文纯个人学习笔记,由于水平有限,难免有所出错,有发现的可以交流一下. 一.热修复 热补丁方案有很多,其中比较出名的有阿里的 AndFix.美团的 ...

  7. 阿里最强热修复:Sophix 超高速集成与踩坑

    超高速集成 public class SophixStubApplication extends SophixApplication {private final String TAG = " ...

  8. 阿里移动热修复Sophix使用体验

    2019独角兽企业重金招聘Python工程师标准>>> Android 热修复是个热门技术,各大公司都推出了自己的热修复框架,阿里也推出了全新的Sophix,我决定写个Demo 测试 ...

  9. 阿里云热修复sophix详解

    现在网上有几种常用的app热修复技术,个人感觉阿里云热修复操作比较简单,主要几个步骤,创建app---下载sdk---集成(AS和eclipse)---生成补丁---发布补丁(可以本地调试).下面详细 ...

  10. 【云栖风向标】VOL.5:横空出世!热修复方案Sophix

    摘要:业界首个非侵入式热修复方案重磅推出,颠覆移动端传统更新流程!阿里妈妈首次公开自研CTR预估核心算法MLR-更多新鲜云资讯,尽在云栖风向标! 本期目录 1. 业界首个非侵入式热修复方案Sophix ...

最新文章

  1. Eclipse Class Decompiler——Java反编译插件(转)
  2. 第3周实践项目7 删除链表元素最大值
  3. 机房配电柜、机柜线缆施工标准做法及线缆入柜方式
  4. Efficient Graph-Based Image Segmentation
  5. OpenCV 自动调取摄像头并显示屏幕
  6. lenovo Think Centre TCM 开发环境搭建
  7. ssm架构 开源项目_6个开源架构项目签出
  8. 成都鸿蒙脱模剂厂家,现场体验荣耀智慧屏与鸿蒙OS,荣耀Life成都店与您共享锐科技...
  9. aliez歌词_Aliez歌词
  10. django数据库事务
  11. PHP的静态变量和引用函数
  12. Vivado的安装以及使用_入门
  13. FS68001电动牙刷无线充电IC
  14. 用matlab编写程序求一组数的均值,用matlab编写一段程序,求加权平均值。
  15. 仿QQ音乐的歌词滚动
  16. uchome 标签讲解
  17. 原代码审计笔记-安全缺陷
  18. 2020-11-07 Mybatis
  19. 2021-10-13爬虫requests总结
  20. Android权限(permission)大全

热门文章

  1. wsimport命令介绍
  2. presscad图层LIsp_PRESSCAD常见问题处理方法
  3. 关于DBSCAN聚类算法
  4. 公众号运营工具有哪些?
  5. ArcMap符号库 .style 和 .ServerStyle 制作过程:(对两区划定实例分析)
  6. Java微服务架构图(仅供参考,不一定适用)
  7. MATLAB图像检索系统GUI设计
  8. Radon 变换原理和应用
  9. 《鸟哥Linux私房菜之基础篇》(第四版)学习笔记 —— 1、Linux是什么与如何学习
  10. 鸟哥linux私房菜pdf及配套视频分享