如何测试com.google.android.gms.common.api.Status#hassolution&;开始解决结果?

如何测试com.google.android.gms.common.api.Status#hassolution&;开始解决结果?,android,google-play-services,google-signin,Android,Google Play Services,Google Signin,我正在使用Google登录到,并希望测试我是否使用和正确,但我不知道如何触发hasResolution为true且startResolutionForResult启动活动的代码路径 状态来自,GoogleSignInResult是通过类似的代码获得的 有人知道一种简单的方法(手动)测试吗?打开手机的设置应用程序>应用程序>谷歌播放服务>菜单>“卸载更新” 然后,您可能需要单击“禁用”按钮来禁用它的出厂安装版本 您现在可能会看到一些应用程序(Gmail、Drive等)发出大量错误通知,表示无法找到

我正在使用Google登录到,并希望测试我是否使用和正确,但我不知道如何触发hasResolution为true且startResolutionForResult启动活动的代码路径

状态来自,GoogleSignInResult是通过类似的代码获得的


有人知道一种简单的方法(手动)测试吗?

打开手机的设置应用程序>应用程序>
谷歌播放服务
>菜单>“卸载更新”

然后,您可能需要单击“禁用”按钮来禁用它的出厂安装版本

您现在可能会看到一些应用程序(Gmail、Drive等)发出大量错误通知,表示无法找到
Google Play Services


您还应该在应用程序中获取您的
onConnectionFailed
,以便在我获得
hassolution()
ConnectionResult
时更新
Play服务,当谷歌Play服务被禁用或需要更新时返回
false
。这意味着我将显示Google错误对话框,其中包含启动
Intent
以启用或更新应用程序的操作。您知道将
hasResolution()
设置为
true
的另一种方法吗?您正在显示具有意图的对话框?然后这意味着hasResolution返回true(否则将没有要执行的操作)。我认为如果GPS有更新,并且您已经安装了Play并使用活动的internet连接,hasResolution应该返回true。
hasResolution()
实际返回
false
,行为必须已经改变,然而,我发现我可以使用
GoogleApiAvailability
获取错误代码的
意图。它支持
服务缺失
服务版本
需要更新
服务禁用
。这使我能够通过一个按钮内联显示要解决的错误,并返回到显示任何其他错误代码的Google错误对话框。