Android更新App版本、更新Android版本

庫地址:

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吧

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容