我使用Google+ SDK通过Google+登录应用。如果用户被重定向到登录页面并点击cancel
按钮,则会抛出以下错误。
Error Domain=com.google.GooglePlusPlatform Code=-1 "Unknown error" UserInfo=0xd5e37b0 {NSLocalizedDescription=Unknown error},
在Code
中设置的 NSError
不能用于区分用户取消登录或任何其他错误的事件。因为相同的Code
用于其他错误。以下是一个例子。
Error Domain=com.google.GooglePlusPlatform Code=-1 "Mismatched authentication" UserInfo=0xd5968e0 {NSLocalizedDescription=Mismatched authentication},
检查错误信息不是一种可靠的方式。
然后如何检查?
答案 0 :(得分:-3)
请确保在出现错误时退出。
-(void)finishedWithAuth: (GTMOAuth2Authentication *)auth
error: (NSError *) error {
if (error) {
// use nslog to get the exact error
// make sure you do this in case of error, sign out the user.
[[GPPSignIn sharedInstance] signOut];
} else {
GPPSignIn *signIn = [GPPSignIn sharedInstance];
NSLog(@"User ID:%@", signIn.userID);
NSLog(@"User Email:%@", signIn.userEmail);
}
}