Skip to content

安卓项目使用 AppUpdate 接入参考

AppUpdate 项目介绍

AppUpdate 是一个Android版本更新库,简单、轻量、可随意定制。 支持Java、Kotlin。

接入示例

增加仓库地址,修改文件 settings.gradle

groovy
pluginManagement {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

引入依赖

groovy
dependencies {
   implementation 'io.github.azhon:appupdate:4.3.6'
   implementation 'com.github.toolsetlink:upgradelink-api-android:1.0.18'
}

img_1.png

2.获取到 accessKey 和 secretKey。

img_5.png

3.创建一个URL应用,即可获取到 应用唯一标识

img.png

4.配置应用版本。

img_2.png

5.配置升级规则。

img_3.png

使用 AppUpdate 示例代码进行获取升级策略。

用 AppUpdate 示例代码 <使用自己的对话框更新> 举例:

kotlin
private fun startUpdate1() {
    AlertDialog.Builder(this@MainActivity)
        .setTitle(R.string.dialog_title)
        .setMessage(R.string.dialog_msg)
        .setPositiveButton(R.string.dialog_confirm) { _, _ ->
            startUpdate2()
        }.create()
        .show()
}

代码引入相关类:

kotlin
import com.toolsetlink.upgradelink.api.Client;
import com.toolsetlink.upgradelink.api.models.UrlUpgradeRequest;
import com.toolsetlink.upgradelink.api.models.UrlUpgradeResponse;

修改代码:

kotlin
private fun startUpdate1() {

    // 初始化 client
    val accessKeyId = "mui2W50H1j-OC4xD6PgQag"
    val accessKeySecret = "PEbdHFGC0uO_Pch7XWBQTMsFRxKPQAM2565eP8LJ3gc"
    val client: Client = Client(accessKeyId, accessKeySecret)

    // 使用 getUrlUpgrade 方法, 组装请求参数
    val urlRequest = UrlUpgradeRequest(
        "uJ47NPeT7qjLa1gL3sVHqw",  // 应用唯一标识,上面步骤已获取到
        1, // 当前应用版本,需要调整为传入当前应用的版本号
        0, // 期望升级版本号,默认为0,为获取最新版本
        android.os.Build.MODEL, // 设备型号
        android.os.Build.DEVICE, // 设备唯一标识,可自定义生成规则,用来标识唯一设备
    )

    // 这里可以根据实际情况设置 urlRequest 的属性
    client.getUrlUpgrade(urlRequest, object : Client.Callback<UrlUpgradeResponse> {
        override fun onSuccess(result: UrlUpgradeResponse) {

            // 切换到主线程显示对话框
            runOnUiThread {
                AlertDialog.Builder(this@MainActivity)
                    .setTitle(result.msg)
                    .setMessage(result.data.promptUpgradeContent)
                    .setPositiveButton(R.string.dialog_confirm) { _, _ ->
                        System.err.println("startUpdate2")
                    }
                    .create()
                    .show()
            }
        }
        override fun onFailure(e: Exception) {
            System.err.println("Url 升级失败: " + e.message)
        }
    })


}

点击按钮,即可获取到最新的升级策略。

img_4.png

img_6.png