我尝试在我的应用程序中使用 appUpdateManager,当我发布更新时,我可以在 PlayMarket 上看到它,所以当我在 playMarket 上打开我的应用程序页面时,有一个“更新”按钮,但我的方法 appUpdateInfo.updateAvailability() 总是返回UPDATE_NOT_AVAILABLE 和方法 appUpdateInfo.availableVersionCode() 总是返回 0。这是我的代码。拜托,任何想法都会对我有用。提前致谢。
public class CheckVersionFragment extends Fragment {
@BindView(R.id.ll_updating)
LinearLayout ll_updating1;
private AppUpdateManager appUpdateManager;
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
ConnectivityManager connectivityManager = (ConnectivityManager) requireActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager.getActiveNetwork() == null)
launchMainFragment();
else
checkVersion();
}
public void checkVersion() {
appUpdateManager = AppUpdateManagerFactory.create(requireActivity().getApplicationContext());
appUpdateManager.registerListener(installStateUpdatedListener);
com.google.android.play.core.tasks.Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo();
appUpdateInfoTask.addOnFailureListener(fail ->launchMainFragment());
appUpdateInfoTask.addOnSuccessListener(appUpdateInfo -> {
if (appUpdateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE) {
if ((appUpdateInfo.availableVersionCode() / 10) - (CURRENC_VERSION_CODE / 10) > 0)
mandatoryUpdate(appUpdateInfo);
else
optionalUpdate(appUpdateInfo);
} else
launchMainFragment();
});
}