我刚刚开始研究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)我的操作与他说的相同,但更新弹出对话框未进入我的应用程序
第1步:我从Playstore应用设置了测试模式
第2步:我在inappsharing上上传版本代码-10个应用程序
第3步:共享链接并从链接下载应用程序
第4步:根据android视频屏幕截图,我上传了具有相同版本的新版本。
第5步:点击新生成的链接。
步骤6:再次打开应用程序 (但弹出对话框未打开,state = UPDATE_NOT_AVAILABLE)
答案 0 :(得分:0)
我承认这不是理想的选择,但是您可以通过更传统的内部测试轨道之一测试应用内更新来开始。如果可以,那么您知道您的应用程序代码很好,这只是内部应用程序共享的问题。
答案 1 :(得分:0)
应用内更新仅适用于拥有该应用的用户帐户。因此,在使用该帐户测试应用内更新之前,请确保您使用的帐户至少已从Google Play下载了一次应用。
请确保您正在测试应用内更新的应用具有与Google Play可用的应用ID相同的应用ID,并使用相同的签名密钥进行签名。
由于Google Play只能将应用程序更新为更高版本的代码,因此请确保您要测试的应用程序的版本代码比更新版本的代码低。
确保该帐户符合条件并且Google Play缓存是最新的。为此,在测试设备上登录Google Play商店帐户后,请按照以下步骤操作:
注意:应用内更新功能适用于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