Android 谷歌+;共享停止工作

Android 谷歌+;共享停止工作,android,google-plus,Android,Google Plus,我有一个android应用程序,我正在按照说明实现共享 我设法使它工作起来。第二天我又回来了,我在logcat中得到了这个输出: G+ on connection failed ConnectionResult{statusCode=SIGN_IN_REQUIRED, resolution=PendingIntent{422d8470: android.os.BinderProxy@422d8410}} 我已经三次检查了api控制台,删除了我的OAuth clientID,并再次输入了新的内

我有一个android应用程序,我正在按照说明实现共享

我设法使它工作起来。第二天我又回来了,我在logcat中得到了这个输出:

 G+ on connection failed ConnectionResult{statusCode=SIGN_IN_REQUIRED, resolution=PendingIntent{422d8470: android.os.BinderProxy@422d8410}}

我已经三次检查了api控制台,删除了我的OAuth clientID,并再次输入了新的内容。这并没有解决它。你知道我可以做些什么来修复它吗?

你可以得到登录所需的连接结果,原因有很多,例如:

  • 如果调用
    PlusClient.clearDefaultAccount()
  • 如果您在或通过调用
    PlusClient.revokeAccessAndDisconnect()断开应用程序的连接
  • 如果您的应用程序请求除以前请求的授权范围之外的授权范围
对于需要登录,您收到的ConnectionResult包含可用于解决问题的PendingEvent。在示例的示例中,代码使用以下代码处理
onConnectionFailed
中的错误:

@Override
public void onConnectionFailed(ConnectionResult result) {
    if (result.hasResolution()) {
        try {
            result.startResolutionForResult(this, REQUEST_CODE_RESOLVE_ERR);
        } catch (SendIntentException e) {
            mPlusClient.connect();
        }
    }
    // Save the result and resolve the connection failure upon a user click.
    mConnectionResult = result;
}
result.startResolutionForResult()
将显示帐户选择器或权限对话框以解决上述问题,并将控制权返回到ActivityResult
,例如:

@Override
protected void onActivityResult(int requestCode, int responseCode, Intent intent) {
    if (requestCode == REQUEST_CODE_RESOLVE_ERR && responseCode == RESULT_OK) {
        mConnectionResult = null;
        mPlusClient.connect();
    }
}

此时,调用
PlusClient.connect()
应该会成功。

我用您的版本替换了onConnectionFailed,现在可以正常工作了,thanks@Lee,正确的解决方案,但收到一条toast消息“发生内部错误”。对此您有所了解。请提前感谢…@jagdish-尝试启用详细日志记录,并查看LogCat中显示的内容。在命令行上运行此命令:adb shell setprop log.tag.GooglePlusPlatformVERBOSE@Lee我们应该将请求\代码\解决\错误设置为什么?Thanks@superuser请求\代码\解析\错误可以是任何整数常量。您的活动可能有多个开始点,以获得结果,所有这些点都返回到onActivityResult。请求\代码\解决\错误帮助您区分开始解决登录错误的意图与可能开始的其他意图。