我有一个使用谷歌地图的应用程序。由于使用 Android 中的新 Api,如果用户没有最新的 Google 地图应用程序,地图将无法工作,有什么方法可以让我的应用程序知道用户安装的版本?而且...我的应用程序可以知道 Google Play 中的最后一个版本吗?
问问题
96 次
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 回答