亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

熱修復學習(1):Sophix

標簽:
Android

Sophix 是阿里发布的技术 ,hotfix的升级版,接入方式是我用过最简单的,补丁由阿里云平台管理,有收费标准

集成

1注册 账号,并且进入热修复平台管理
阿里云

图片.png


如果没有这个选项说明没开通,在产品服务下找到热修复并且开通,这里就不演示了,都是下一步操作。
1创建一个项目

图片.png


获取Appid 并且进入管理获取appSecret和RSA密钥

图片.png


图片.png


2 android studio集成方式
在build.gradle中添加maven仓库地址和Sophix依赖

图片.png


在Manifest添加需要的权限 和平台上添加应用的appid,appSecret,RSA密钥

图片.png


图片.png


在application类中初始化sophix


public class App extends Application {    @Override
    public void onCreate() {        super.onCreate();
        initSophix();
    }    private  void initSophix(){
        SophixManager.getInstance().setContext(this)
                .setAppVersion("1.0")
                .setAesKey(null)
                .setEnableDebug(true)
                .setPatchLoadStatusStub(new PatchLoadStatusListener() {                    @Override
                    public 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) {                            // 表明新补丁生效需要重启. 开发者可提示用户或者强制重启;
                            // 建议: 用户可以监听进入后台事件, 然后调用killProcessSafely自杀,以此加快应用补丁,详见1.3.2.3
                          //这里慎重选择强制关闭 ,容易产生闪退的错觉
                        } else {                            // 其它错误信息, 查看PatchStatus类说明
                        }
                    }
                }).initialize();// queryAndLoadNewPatch不可放在attachBaseContext 中,否则无网络权限,建议放在后面任意时刻,如onCreate中
        SophixManager.getInstance().queryAndLoadNewPatch();
    }
}

3补丁测试
初次运行

image.png


运行之后显示

image.png


修改代码--打包--生成补丁


修改代码


生成补丁


添加版本


上传补丁


杀死app之后重启的效果

4总结
1· Sophix集成简单,不需要配置繁琐的各种参数。
2· Sophix支持即时生效,做过两次测试第一次是更新一个吐息好像没关闭就生效了,第二次按上面的代码做的更新 关闭之后才生效的。
3· Sophix支持run instant,而tinker不支持。编译中不支持run instant,不能直接运行测试!
4· Sophix的补丁用阿里自身的SophixPatchTool工具打包生成,不是在AS中生成的,比较方便。

阿里热修复各版本的差异



作者:tmyzh
链接:https://www.jianshu.com/p/b6c492e745f5


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消