庫地址:
https://github.com/YaYaG/LightUpdateApp
集成方式 :
1 引入 jitpack:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
2 添加依賴
dependencies {
implementation 'com.github.YaYaG:LightUpdateApp:1.0.1'
}
使用方式:
兼容 Android 6.0 7.0 8.0及以上
1.在res中創(chuàng)建xml文件夾,并創(chuàng)建file_paths.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:ignore="MissingDefaultResource">
<paths>
<external-cache-path name="download" path=""/>
<external-path name="download" path="" />
</paths>
</resources>
2.在AndroidManifest.xml中配置:
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
3.代碼實現(xiàn):
//這里隨便下載一個應用 QQ極速版 作為實例
private String apkUrl = "https://qd.myapp.com/myapp/qqteam/QQ_JS/qqlite_4.0.0.1025_537062065.apk";
....
UpdateApp.getInstance()
.setAutoInatall(true)//是否彈起安裝apk
.setUpdateListener(new UpdateListener() {
@Override
public void start() {
btn1.setEnabled(false);
}
@Override
public void progress(int progress) {
mTextView.setText("進度:" + progress);
}
@Override
public void downFinish() {
mTextView.setText("進度:完成");
//不自動安裝 可以調(diào)用 該方法 安裝
// UpdateApp.getInstance().startInstall(MainActivity.this);
}
@Override
public void downFail(Throwable throwable) {
mTextView.setText("失敗" + throwable.getMessage());
}
}).downloadApp(this, apkUrl, R.mipmap.ic_launcher_round, R.mipmap.ic_launcher);
該庫是簡易版的更新庫,彈框及其他需要自己去定義,獲取到的apkUrl 及版本號是否更新判斷后 再使用該庫。
覺得不錯點個Star吧