根據(jù)hyman老師的視頻進行的實操,對碰到的問題進行整理歸納。
視頻地址:
https://www.imooc.com/video/19998
應(yīng)用內(nèi)升級的必要性:
apk上架周期慢,無法回退
可以小規(guī)模實驗(灰度)以及試錯(新功能實驗,穩(wěn)定性檢測)
可以快速收斂版本(新功能覆蓋、嚴重bug修復(fù))
app中存在的幾種形式
用戶啟動時靜默檢測,提示更新(感覺這個用的最多)
用戶手動在設(shè)置頁,點擊檢測更新(以前公司用過這個)
實現(xiàn)流程

image.png
案例實現(xiàn)步驟
網(wǎng)絡(luò)模塊設(shè)計
1.考慮通過```接口隔離``具體實現(xiàn)
2.使用okhttp完成接口實現(xiàn),實現(xiàn)get請求
這里之所以采用接口隔離原則,是因為技術(shù)更新太快,如果不封裝的話,新技術(shù)到來時,替換成本太大了,所以還是要用接口隔離起來,替換起來方便沒有風(fēng)險。
安裝apk以及做一些細節(jié)處理
用戶下載過程中cancel,如果及時的取消請求、中斷下載;
apk的完成性校驗(md5)
設(shè)計到的適配工作
** 避免android存儲卡操作**
使用應(yīng)用內(nèi)部的cache文件夾,避免涉及到存儲卡
Android N FileProvider適配
應(yīng)用安裝,涉及到文件uri的傳遞 ,需要適配
Android O對應(yīng)用安裝進行的權(quán)限的限制
需要引入安裝權(quán)限
Android P對http網(wǎng)絡(luò)請求的約束
在Android P上,默認不允許直接使用http的請求,需要使用https,會給出解決方案,如果強制使用的話,會拋出異常,需要進行相關(guān)的適配才行。