Kongzue APP更新工具:Githubandroid
1.3.0:修復安卓8.0設備上安裝崩潰的問題;git
1.4.0:修復進度顯示可能存在問題的bug;github
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
複製代碼
字段 | 含義 | 是否必須 |
---|---|---|
info | 更新日誌 | 可選 |
ver | 版本號 | 可選 |
downloadUrl | 下載地址 | 必須 |
me(Context) | 上下文索引 | 必須 |
packageName | 包名 | 必須 |
onDownloadListener | 下載監聽器 | 可選 |
須要的權限:bash
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET"/>
複製代碼
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="您的包名">
<uses-permission android:name="android.permission.INTERNET"/>
<application
...>
...
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="您的包名.fileProvider"
android:grantUriPermissions="true"
android:exported="false">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_path"/>
</provider>
</application>
</manifest>
複製代碼
接下來在 res 目錄下建立文件夾 xml,並添加文件 file_path.xml:服務器
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<paths>
<external-path path="" name="download"/>
</paths>
</resources>
複製代碼
updateInfo = new UpdateInfo()
.setInfo("1.上線了極力要求以致於沒法再拒絕的收入功能\n" +
"2.出行的二級分類加入了地鐵、地鐵、地鐵\n" +
"3.「關於」新增應用商店評分入口,大家知道怎麼作\n" +
"4.「關於」還加入了GitHub地址,情懷+1s\n" +
"5.全新的底層適配框架,優化更多機型")
.setVer("v2.5")
.setDownloadUrl("http://paywhere.kongzue.com/downloads/paywhere.apk");
複製代碼
UpdateUtil updateUtil = new UpdateUtil(MainActivity.this, BuildConfig.APPLICATION_ID);
複製代碼
updateUtil.doUpdate(updateInfo);
複製代碼
下載完成後會自動調用安裝。網絡
UpdateUtil updateUtil = new UpdateUtil(MainActivity.this, BuildConfig.APPLICATION_ID)
.setOnDownloadListener(new UpdateUtil.OnDownloadListener() {
@Override
public void onStart(long downloadId) {
Log.i("MainActivity", "onStart: 下載開始");
}
@Override
public void onDownloading(long downloadId, int progress) {
Log.i("MainActivity", "onStart: 下載中:"+progress);
}
@Override
public void onSuccess(long downloadId) {
Log.i("MainActivity", "onStart: 下載完成");
}
})
複製代碼
可選的更新提示對話框 KongzueUpdateSDK 提供了一個可選使用的簡易更新提示對話框,調用方法以下:app
UpdateUtil updateUtil = new UpdateUtil(MainActivity.this, BuildConfig.APPLICATION_ID)
.showNormalUpdateDialog(updateInfo,
"檢查到更新(" + updateInfo.getVer() + ")",
"從商店下載",
"直接下載",
"取消");
複製代碼
引入方法:框架
implementation 'com.kongzue.kongzueupdatesdk:kongzueupdatesdk:1.4.0'
複製代碼
額外的小工具:ide
UpdateUtil.isWifi() //判斷Wifi狀態
UpdateUtil.isShowProgressDialog = true; //是否開啓進度對話框(默認開啓)
複製代碼