. usedefaultaccount()的googleapicclient不能正常工作



我试图从Google Play服务初始化历史API。现在,自从我们更新了我们的应用程序,.useDefaultAccount()方法不能正常工作,连接结果失败。这将导致登录提示出现在我们的应用程序中,用户需要选择他们的帐户。我们希望防止这种情况发生。有办法做到吗?

如何创建客户端对象并连接它(在AsyncTask中):

GoogleApiClient apiClient = new GoogleApiClient.Builder(context)
                    .addApi(Fitness.HISTORY_API)
                    .useDefaultAccount()
                    .build();
            ConnectionResult connectionResult = apiClient.blockingConnect();
            if (!connectionResult.isSuccess()) {
                if (connectionResult.hasResolution() && context instanceof Activity) {
                    try {
                        connectionResult.startResolutionForResult((Activity) context, 1);
                    } catch (IntentSender.SendIntentException e) {
                        // Utter Failure
                    }
                }
            }
            return null;

Google API客户端应该建立在活动的onCreate方法上,而不是在AsyncTask中。尝试将代码块移动到适当的类中。这可能是您获得SendIntentException的原因。

确保在onActivityResult()中正确处理帐户选择结果。如果您没有连接到GoogleApiClient,对话框将继续显示。

相关内容

  • 没有找到相关文章

最新更新