0

当用户通过灵活的应用更新下载应用时

appUpdateManager?.startUpdateFlowForResult(it, AppUpdateType.FLEXIBLE, activity, REQUEST_CODE_FLEXI_UPDATE)

但忘记或意外跳过单击重新启动应用程序按钮,该按钮执行以下操作:

            appUpdateManager?.completeUpdate()

然后应用程序更新不可用。即使我尝试使用清晰的应用程序数据,它也不起作用。看起来一旦通过 inappupdate 下载应用程序并跳过安装,您就会被卡住,它不会再询问。

appUpdateManager?.appUpdateInfo?.addOnSuccessListener { appUpdateInfo ->
            if (appUpdateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE && appUpdateInfo.isUpdateTypeAllowed(AppUpdateType.FLEXIBLE)) {
                updateAvailable.value = true
            }
        }

有针对这个的解决方法吗?其他事情正在运行,它在 Playstore 上运行,只是在寻找此类用例的解决方案。

另外如何获取正在下载的应用程序的进度值,在文档中找不到。就我而言,onActivityResult一直在打电话,但哪个键给出了进度值?

还面临不同用例的另一个问题:java.lang.reflect.InvocationTargetException while inappupdate android if retries

4

1 回答 1

0

您应该根据文档检查appUpdateInfo.installStatus() == InstallStatus.DOWNLOADED应用程序重启并completeUpdate()在某个时间点调用。

于 2020-01-13T11:21:45.047 回答