使用GooglePlayServicesUtil.getErrorDialog()的GoogleMaps安卓应用

时间:2013-03-06 21:35:55

标签: android google-maps google-play-services

所以在这里的文档中

http://developer.android.com/google/play-services/setup.html

它说用isGooglePlayServicesAvailable()检查播放服务的状态,如果不正常则显示错误对话框。

这似乎对我来说很好,对话框显示它没有安装打开游戏商店的按钮似乎都没问题。我的问题是关于onActivityResult()中返回的结果。

我们必须将requestCode传递给getErrorDialog(),然后我会在onActivityResult中恢复正常,但我更关心resultCode返回。到目前为止,我的所有测试都得到了0(RESULT_CANCELLED)。我想知道是否有任何方法可以知道播放服务是否已成功安装?

现在我只是假设RESULT_CANCELLED意味着他们至少进入了Play商店并开始下载,并且显示另一个对话框,说“请在播放服务完成安装后重新启动此应用程序” “后跟finish()

这是处理它的最佳方法吗?或者是否有一个案例我错过了它将返回RESULT_OK的地方,我可以继续我的应用程序工作而不重新启动它?

1 个答案:

答案 0 :(得分:1)

我必须说今天我尝试了,而且我从未调用过onActivityResult()。

当取消对话框时,我的OnCancelListener(getErrorDialog()参数)被调用,当从PlayStore返回时,无论是否安装Google Play服务,我的应用程序都会被销毁。

更重要的是,在安装Google Play服务时,会在安装开始时调用onDestroy()。

我想也许这是一个更新的行为,我认为是因为你可以在后台安装结束之前从Play商店返回。

尽管如此,我发现了几个带示例代码的链接,如果用RESULT_OK调用onActivityResult(),可能会确认,这意味着你可以继续:

http://developer.android.com/training/location/activity-recognition.html

http://developer.android.com/training/location/retrieve-current.html

希望有所帮助