Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> 項目優化之熱更新,項目優化

項目優化之熱更新,項目優化

編輯:關於android開發

項目優化之熱更新,項目優化


熱更新方案:使用騰訊的tinker,對於加固的apk(360和應用寶2個渠道)不支持 不加固的apk:使用熱更新方案,無需安裝,所有不加固的文件共用一個更新包 加固的apk:使用下載新的完整apk的方案,重新安裝,後台管理補丁時先上傳加固的補丁apk再上傳不加固共用的補丁文件     增加補丁配置文件(每次發布補丁時,此配置文件一定要修改): package com.lolaage.tbulu; /**  * description : 補丁相關配置  */ public class PatchConfiger {     /**      * 補丁版本號,每發布一個補丁包,+1      */     public static final int PatchVersion = 0;     /**      * 加固的版本,不能用於熱更新,需要下載完整的apk,然後安裝升級修復      */     public static final HashSet<String> StrengthChannels = new HashSet<>();     static {         StrengthChannels.add("36012");         StrengthChannels.add("yyb13");     } }     操作流程:(版本信息:VersionName-VersionCode-PatchVersion,例如5.1.5-520-0) 例如(至少保證下面流程能走通): 1、我們應用市場發布版本5.1.5-520-0   2、發現5.1.5-520-0有嚴重bug,更新補丁版本5.1.5-520-1(更新補丁,PatchVersion+1) 客戶端工作: 修復bug之後(並修改PatchConfiger.PatchVersion+1),生成一個5.1.5-520版本的補丁包patch1.zip, 以及加固的渠道(36012、yyb13)的完整補丁apk:5.1.5-520-1-36012.apk, 5.1.5-520-1-yyb13.apk 上傳補丁包和補丁apk   3、發現5.1.5-520-1還有問題,更新補丁版本5.1.5-520-2(更新補丁,PatchVersion+1) 客戶端工作: 修復bug之後(並修改PatchConfiger.PatchVersion+1),生成一個5.1.5-520版本的補丁包patch2.zip, 以及加固的渠道(36012、yyb13)的完整補丁apk:5.1.5-520-2-36012.apk, 5.1.5-520-2-yyb13.apk 上傳補丁包和補丁apk   4、增加很多需求,應用市場發布新版本5.1.6-530-2   5、發現5.1.6-530-2有嚴重bug,更新補丁版本5.1.6-530-3(更新補丁,PatchVersion+1) 客戶端工作: 修復bug之後(並修改PatchConfiger.PatchVersion+1),生成一個5.1.6-530版本的補丁包patch3.zip, 以及加固的渠道(36012、yyb13)的完整補丁apk:5.1.6-530-3-36012.apk, 5.1.6-530-3-yyb13.apk 上傳補丁包和補丁apk   6、發現5.1.6-530-3還有問題,更新補丁版本5.1.6-530-4(更新補丁,PatchVersion+1) 客戶端工作: 修復bug之後(並修改PatchConfiger.PatchVersion+1),生成一個5.1.6-530版本的補丁包patch4.zip, 以及加固的渠道(36012、yyb13)的完整補丁apk:5.1.6-530-4-36012.apk, 5.1.6-530-4-yyb13.apk 上傳補丁包和補丁apk     服務端需要維護所有補丁文件的管理,至少包含信息: PatchVersion(補丁版本)  VersionCode(版本號)  Channel(渠道號)  Description(補丁描述)  PatchFileId(補丁文件下載id)  FileSize(文件大小)   PatchType(補丁類型,apk=0,patch=1)  ReleaseTime(發布時間) 可以通過VersionCode、Channel查詢出PatchVersion最大的記錄 補丁都是基於某一個版本號,例如:5.1.6-530-4補丁只能用於5.1.6-530版本,不能用於5.1.5-520版本!     修改接口: 1、新增checkPatchVersion接口(新增,獲取某個版本的補丁信息) 傳參:channel、version、patchVersion(本地當前補丁版本號) 返回:haveNewPatch(是否有新的補丁),如果有新的補丁版本,還需要返回patchVersion(最新的補丁版本號)、Description、PatchFileId、FileSize、PatchType、ReleaseTime 使用情況:1、checkApkVersion檢測到沒市場更新後調用;2、checkApkVersion檢測到有市場更新,但是用戶取消更新後,調用     測試流程(每次補丁升級都必須至少修改.java代碼、布局文件、圖片資源文件): 1、發布5.1.5-520-0、5.1.5-520-1,驗證: 5.1.5-520-0版本是否能升級到5.1.5-520-1 2、發布5.1.5-520-2,驗證: 5.1.5-520-0版本是否能升級到5.1.5-520-2 5.1.5-520-1版本是否能升級到5.1.5-520-2 3、發布5.1.6-530-2、5.1.6-530-3,驗證: 5.1.5-520-0版本是否能升級到5.1.6-530-3 5.1.5-520-1版本是否能升級到5.1.6-530-3

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved