2

我已经使用灵活的更新流程在我的 Android 应用程序中实现了应用内更新。我正在检查并请求更新 MainActivity 的 onCreate()

更新应用程序时,始终安装失败,错误代码-100ERROR_INTERNAL_ERROR中提及。谁能帮我解决这个问题

val appUpdateManager = AppUpdateManagerFactory.create(this)
appUpdateManager.registerListener { state ->
    if (state.installStatus() == InstallStatus.FAILED) {
        Log.e("::MG::", "appUpdateManager:Status.FAILED")
        Log.e("::MG::", "appUpdateManager:ErrorCode:"+state.installErrorCode())
    }

    if (state.installStatus() == InstallStatus.DOWNLOADED) {
        //sBR(mainhell, resources.getString(R.string.exit))
        val snackbar = Snackbar.make(
            mainhell,
            "Update has been downloaded. \nDo you want to install?",
            Snackbar.LENGTH_INDEFINITE
        )
            .setAction("INSTALL") {
                //If Downloaded Install Update
                val i = Intent(applicationContext, MainActivity::class.java)
                finish()
                startActivity(i)
                appUpdateManager.completeUpdate()
            }
        snackbar.setActionTextColor(Color.YELLOW)
        snackbar.show()

    }
}

val appUpdateInfoTask = appUpdateManager.appUpdateInfo
appUpdateInfoTask.addOnSuccessListener { appUpdateInfo ->
    when {
        appUpdateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE &&
                appUpdateInfo.isUpdateTypeAllowed(AppUpdateType.FLEXIBLE)
        -> {
        appUpdateManager.startUpdateFlowForResult(
                    appUpdateInfo,
                    AppUpdateType.FLEXIBLE,
                    this,
                    FLEXIBLE_UPDATE
                )
        }
        appUpdateInfo.installStatus() == InstallStatus.DOWNLOADED -> {
            if (appUpdateManager != null) {
                appUpdateManager.completeUpdate()
            }
        }
    }
}

登录

E/::MG::: appUpdateManager:InstallStatus.FAILED 
E/::MG::: appUpdateManager:installErrorCode:-100
4

1 回答 1

0

有点晚了,但得到了这个并设法修复它:当您尝试从调试版本升级到发布 apk 时,会发生 errcode -100。它不会允许的。

如果您在开发时处于调试模式,并尝试更新到在 Play 商店中使用发布标志发布的 APK,则可能会发生这种情况。

解决方案只是使用相同的目标 release<->release apks update,或 debug<-> debug (如果您的应用商店 APK 是发布版本,则可能无法实现)。

于 2021-04-01T16:32:04.673 回答