如何指定哪些更新需要立即更新,以及哪些可以通过Google的应用内更新API灵活地进行?

时间:2019-05-23 12:59:03

标签: android android-app-bundle in-app-update

我已按照Google网站上的步骤操作support in app updates。但是,我对如何指定哪些更新是“立即”和哪些更新是“灵活”感到困惑。我没有在Google Play开发者控制台中看到任何标志。还是我应该编写自己的API以根据版本代码在服务器上进行检查?

这是我的实现方式:

        appUpdateManager.appUpdateInfo.addOnSuccessListener { updateInfo ->
        Log.e("launcher", "appUpdateInfo $updateInfo")
        Log.e("launcher", "updateAvailablility ${updateInfo.updateAvailability()}")
        Log.e("launcher", "availableVersion ${updateInfo.availableVersionCode()}")
        if (updateInfo.updateAvailability()
                == UpdateAvailability.DEVELOPER_TRIGGERED_UPDATE_IN_PROGRESS) {
            // If an in-app update is already running, resume the update.
            appUpdateManager.startUpdateFlowForResult(
                    updateInfo,
                    IMMEDIATE,
                    this,
                    REQUEST_UPDATE);
        } else if (updateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE && updateInfo.isUpdateTypeAllowed(IMMEDIATE)) {
            appUpdateManager.startUpdateFlowForResult(updateInfo, IMMEDIATE, this, REQUEST_UPDATE)
        } else if (updateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE && updateInfo.isUpdateTypeAllowed(FLEXIBLE)) {
            dialog(getString(R.string.update_recommended_title), getString(R.string.update_required_content), getString(R.string.update_required_positive), {
                appUpdateManager.startUpdateFlowForResult(updateInfo, FLEXIBLE, this, REQUEST_UPDATE)
            }, getString(R.string.update_recommended_negative), {
            })

        }
    }

1 个答案:

答案 0 :(得分:0)

今天,您需要使用自己的API或在versionCode中对其进行编码。