0

我有一个使用谷歌地图的应用程序。由于使用 Android 中的新 Api,如果用户没有最新的 Google 地图应用程序,地图将无法工作,有什么方法可以让我的应用程序知道用户安装的版本?而且...我的应用程序可以知道 Google Play 中的最后一个版本吗?

4

1 回答 1

2

如果用户没有最新的谷歌地图应用程序,地图将无法工作,有什么方法可以让我的应用程序知道用户安装的版本?

您的应用不关心 Google 地图的版本。您的应用关心是否安装了 Play 服务框架。

我的示例应用程序,例如这个应用程序,使用一个AbstractMapActivity包含检查 Play 服务框架的详细信息的一个调用readyToGo()

  protected boolean readyToGo() {
    int status=
        GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);

    if (status == ConnectionResult.SUCCESS) {
      return(true);
    }
    else if (GooglePlayServicesUtil.isUserRecoverableError(status)) {
      ErrorDialogFragment.newInstance(status)
                         .show(getSupportFragmentManager(),
                               TAG_ERROR_DIALOG_FRAGMENT);
    }
    else {
      Toast.makeText(this, R.string.no_maps, Toast.LENGTH_LONG).show();
      finish();
    }

    return(false);
  }

true如果isGooglePlayServicesAvailable()它本身返回,这将返回true。否则,如果可能,它将显示一个对话框(有一个ErrorDialogFragment内部类),引导用户安装 Play Services Framework。或者,它会显示一个Toast不可恢复的问题(尽管生产代码应该使用其他东西,比如面包块)。

GooglePlayServicesUtil自己的一套 JavaDocs

于 2013-03-26T13:44:03.033 回答