阿里雲熱修復 Sophix 使用和灰度發佈 根據標籤來進行測試


1.3.2.6 setTags接口 [v3.2.7新增]
該參數設置端上拉取補丁包時的標籤,可以支持條件更爲豐富的灰度發佈,以下爲簡單示例:

試用
List<String> tags = new ArrayList<>();
tags.add("test");
//此處調用在initialize()方法前
SophixManager.getInstance().setTags(tags);
試用
List<String> tags = new ArrayList<>();
tags.add("production");
//此處調用在initialize()方法前
SophixManager.getInstance().setTags(tags);
如上,設置不同的tags,同一版本號下,可以打兩個或者多個基線包,線上發佈時用production的基線包,測試環境用test的基線包,這樣就可以測試同一版本號下的同一個補丁了,兩個環境互不影響。tags可以add多個,結構爲前後非空字符串即可。生成補丁時,用同樣tags的基線包和修復包。

阿里雲 熱修復 使用文檔 和函數說明 地址: 

https://help.aliyun.com/document_detail/93825.html?spm=a2c4g.11186623.6.580.492371c1mQOBkh#h2-1-4-4

 

2.官方使用文檔地址和工具下載地址

 

阿里雲 熱更新 研發平臺
    https://emas.console.aliyun.com/?spm=5176.2020520001.aliyun_sidebar.46.34ab4bd3xZNL5B#/product/3613296/hotfix/25230400/2

    熱更新 添加流程

    1.登陸之後,點擊左側菜單欄 -> 應用管理 .可以添加應用包名一定要和應用apk 包名一致 。
    2.在app build.gradle 中,添加應用 庫地址 ,

        repositories {

            //阿里雲倉庫
            maven {
                url "http://maven.aliyun.com/nexus/content/repositories/releases"
            }
        }

        和 加載庫地址
        implementation 'com.aliyun.ams:alicloud-android-hotfix:3.2.8'

    3.Application 添加初始化代碼

    @Override
        protected void attachBaseContext(Context base) {
            super.attachBaseContext(base);
            MultiDex.install(this);
            initHotfix();
        }
    4.在主頁 查詢並加載 補丁包 --  SophixManager.getInstance().queryAndLoadNewPatch();
      例如: 本應用中 在spalshAcy 應用啓動第一個頁面 查詢補丁包;

    熱更新官方文檔
        https://help.aliyun.com/document_detail/69874.html?spm=a2c4g.11174283.6.553.2fb13ca0BAqKte

    生成補丁工具 地址:

        https://help.aliyun.com/document_detail/93826.html?spm=a2c4g.11186623.2.10.23d65b84yIBmsH

    調試補丁工具 地址:
        生成補丁後,在掃描驗證補丁 點擊 hotfixBug 下載補丁調試工具
        http://ams-hotfix-repo.oss-cn-shanghai.aliyuncs.com/hotfix_debug_tool-release.apk?spm=5176.2020520107.0.0.52da2ae9kWEcim&file=hotfix_debug_tool-release.apk

    熱更新官方 demo 調試學習地址 :
        https://github.com/aliyun/alicloud-android-demo/tree/master/hotfix_android_demo?spm=a2c4g.11186623.2.44.6e0261dbstWWLJ

3.使用的注意事項: 

1、確保沒有新增四大組件,沒有修改AndroidManifest.xml和入口Application中的代碼。

2、如果使用了混淆,確保打包使用的新舊包的混淆保持已經確保一致,如新包apply了舊包的mapping文件。

3、如果使用了加固,確保打包使用的新舊包都是加固前的正常包。

4、如果有資源修復,確保沒有修改通知欄圖標、啓動圖標資源以及RemoteViews等系統負責展示的資源。

5、如果有SO庫的修復,確保所需要修復的SO都是以System.loadLibrary的方式,而不是以具體路徑的方式進行加載。


6、注意設置裏填好籤名信息

7、注意打補丁的舊包和新包都是未進行加固的包

8、在控制檯添加版本時注意版本號填寫要和需要熱修復的app版本一致

9、補丁打完上傳到控制檯後要用補丁測試工具掃描二維碼熱更新試試,看是否能成功,並測試打好補丁後的app

10、測試OK後先進行灰度測試,然後再全量發佈

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章