通过内部应用共享在应用更新中进行测试

时间:2019-11-22 09:53:49

标签: android in-app-update internal-app-sharing

我刚刚开始研究inApp更新。所有代码均按照google document

完成
appUpdateManager.getAppUpdateInfo().addOnSuccessListener(new OnSuccessListener<AppUpdateInfo>() {
        @Override
        public void onSuccess(AppUpdateInfo result) {

            tvPackageName.setText("packagename : "+result.packageName());
            tvCurrentVersionCode.setText("Current version: " + BuildConfig.VERSION_CODE);
            tvAvailableVersion.setText("available version : "+result.availableVersionCode());
            tvUpdateAvailibility.setText("update availibility :  "+ result.updateAvailability());
            tvInstallStatus.setText("install status:  "+ result.installStatus());


            if (result.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE &&
                    result.isUpdateTypeAllowed(AppUpdateType.FLEXIBLE)) {

                try {
                    appUpdateManager.startUpdateFlowForResult(
                            result, AppUpdateType.FLEXIBLE, activity, RC_APP_UPDATE);
                } catch (IntentSender.SendIntentException e) {
                    e.printStackTrace();
                }

            } else if (result.installStatus() == InstallStatus.DOWNLOADED) {
                popupSnackbarForCompleteUpdate();
            } else {
                Log.e("issue", "checkForAppUpdateAvailability: something else");
            }
        }
    });

但是现在非常重要的部分是通过内部应用共享

来测试应用内更新

为此,我关注了test_inappupdate with internal app sharing*

的视频(Android Dev Summit '19)

我的操作与他说的相同,但更新弹出对话框未进入我的应用程序

enter image description here

第1步:我从Playstore应用设置了测试模式
第2步:我在inappsharing上上传版本代码-10个应用程序
第3步:共享链接并从链接下载应用程序
第4步:根据android视频屏幕截图,我上传了具有相同版本的新版本。
第5步:点击新生成的链接。
步骤6:再次打开应用程序 (但弹出对话框未打开,state = UPDATE_NOT_AVAILABLE)
enter image description here

5 个答案:

答案 0 :(得分:0)

我承认这不是理想的选择,但是您可以通过更传统的内部测试轨道之一测试应用内更新来开始。如果可以,那么您知道您的应用程序代码很好,这只是内部应用程序共享的问题。

答案 1 :(得分:0)

  • 应用内更新仅适用于拥有该应用的用户帐户。因此,在使用该帐户测试应用内更新之前,请确保您使用的帐户至少已从Google Play下载了一次应用。

  • 请确保您正在测试应用内更新的应用具有与Google Play可用的应用ID相同的应用ID,并使用相同的签名密钥进行签名。

  • 由于Google Play只能将应用程序更新为更高版本的代码,因此请确保您要测试的应用程序的版本代码比更新版本的代码低。

  • 确保该帐户符合条件并且Google Play缓存是最新的。为此,在测试设备上登录Google Play商店帐户后,请按照以下步骤操作:

    1. 确保您完全关闭Google Play Store App.
    2. 打开Goog​​le Play商店应用,然后转到“我的应用和游戏”标签。
    3. 如果您要测试的应用没有显示可用更新,   check that you’ve properly set up your testing tracks.
  

注意:应用内更新功能适用于API级别21或更高版本   并且仅适用于Play商店中的那些应用。

答案 2 :(得分:0)

您是否在Google Studio中使用其他帐户进行应用程序开发?您需要连接到获得该应用程序ID和密钥的acc。

答案 3 :(得分:0)

该视频提供了过时的信息。重新上传相同的捆绑软件/应用程序无助于测试应用内更新。我成功地将两个连续的版本推送到Internal App Sharing。

请查看此答案以获取详细信息:https://jsfiddle.net/sores/1emj47q9/38/

答案 4 :(得分:0)

在测试设备上,仅单击内部应用程序共享链接以获取应用程序的更新版本。单击链接后,请勿从显示的Google Play商店页面安装应用程序。 从设备的应用程序抽屉或主屏幕中打开应用程序。现在,您的应用应该可以使用该更新了,您可以测试应用内更新的实现。

https://developer.android.com/guide/playcore/in-app-updates#internal-app-sharing