編輯點評:手機上的軟件更新庫工具
安卓手機軟件應(yīng)用app更新庫工具,版本更新app是一個開源的工具,AppUpdate擁有簡單,小巧可隨意定制的功能,便捷的管理手機上的應(yīng)用更新,支持使用自己的對話框更新,使用版本庫內(nèi)置的對話框更新,簡單使用,便捷操作,有需要的可下載體驗。
版本更新庫軟件原理
1、當(dāng)調(diào)用了設(shè)置了最新的VersionCode,則內(nèi)部會自動判斷是否顯示對話框、下載和安裝apkVersionCode()
適配Android 13通知運行權(quán)限,且當(dāng)設(shè)置時,點擊對話框的升級按鈕會申請通知欄權(quán)限,無論是否同意都將會繼續(xù)下載showNotification(true)
當(dāng)設(shè)置強制更新時,顯示的對話框會顯示下載進度條forcedUpgrade(true)
2、當(dāng)沒有調(diào)用apkVersionCode(),就可以把它當(dāng)成一個下載器,內(nèi)部只會進行下載和安裝
3、由于Android 10限制后臺應(yīng)用啟動Activity,所以下載完成會發(fā)送一個通知至通知欄(忽略showNotification的值,需要允許發(fā)送通知)
版本更新app使用方法
第一步:app/build.gradle添加依賴
implementation 'io.github.azhon:appupdate:4.3.4'
由于GooglePlay政策禁止應(yīng)用內(nèi)更新,所以可以通過多渠道的方式進處理
第二步:創(chuàng)建DownloadManager
Kotlin
val manager = DownloadManager.Builder(this).run {
apkUrl("your apk url")
apkName("appupdate.apk")
smallIcon(R.mipmap.ic_launcher)
//設(shè)置了此參數(shù),那么內(nèi)部會自動判斷是否需要顯示更新對話框,否則需要自己判斷是否需要更新
apkVersionCode(2)
//同時下面三個參數(shù)也必須要設(shè)置
apkVersionName('v4.2.2')
apkSize("7.7MB")
apkDescription("更新描述信息(取服務(wù)端返回數(shù)據(jù))")
//省略一些非必須參數(shù)...
build()
}
manager?.download()
Java
第三步:混淆打包,只需保持Activity、Service不混淆
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Service
使用技巧
框架內(nèi)部支持國際化(其他語言只需要在對應(yīng)的string.xml中取相同的名字即可)
如果你需要修改框架內(nèi)部的一些文字,你只需要在string.xml中取相同的名字即可以覆蓋框架內(nèi)設(shè)定的
查看版本庫中的Log只需要過濾AppUpdate開頭的Tag
支持校驗安裝包的MD5避免重復(fù)下載,只需要Builder設(shè)置安裝包的MD5即可
下載完成 打開新版本后刪除舊安裝包文件
主要功能
支持Java、Kotlin
支持AndroidX
支持后臺下載
支持強制更新
支持自定義下載過程
支持Android4.1及以上版本
支持通知欄進度條展示,適配到Android 13
支持中文/繁體/英文語言(國際化)
支持自定義內(nèi)置對話框樣式
支持取消下載(如果發(fā)送了通知欄消息,則會移除)
支持下載完成,打開新版本后刪除舊安裝包文件
不需要申請存儲權(quán)限
使用HttpURLConnection下載,未集成其他第三方框架
更新日志
4.2.1更新
1.支持Android4.1及以上版本
2.支持自定義下載過程
3.支持通知欄進度條展示
4.支持文字國際化
5.使用Kotlin協(xié)程重構(gòu)
熱門評論
最新評論