微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检测iOS Google登录是不完整的.

“不完整”我指的是一个特定的用户之旅

>用户打开iOS应用程序,并选择Google登录.
> Google SDK会将用户导航到G应用程序进行登录(如果G未安装,则为Webview).
>用户远离Google导航(例如轻触主屏幕按钮),而不接受或拒绝所请求的权限.
>用户导航回iOS应用程序.

使用Facebook SDK,当应用程序激活时,如果用户通过呼叫跟随类似的旅程,则登录会话将关闭

[FBAppCall handleDidBecomeActive];

Google SDK似乎没有任何优先级.

如何检测到用户从未完成Google登录旅程?

使用iOS7,Google SDK

pod’google-plus-ios-sdk’,’〜> 1.5′

解决方法

根据所描述的情况,用户已经跳过Google登录的身份验证过程,或者通过点击主屏幕导航到主屏幕.

第一路:

在此基础上,GPPSignInDelegate从未被调用

- (void)finishedWithAuth: (GTMOAuth2Authentication *)auth
                   error: (NSError *) error {
    NSLog(@"Received error %@ and auth object %@",error,auth);
}

现在,如果开发人员在NSUserDefault或plist或本地数据库中保存Google Plus auth密钥,那么他直接在AppDelegate的didBecomeActive方法中检查它.

-(void)applicationDidBecomeActive:(UIApplication *)application
{
  //Check whether Google Plus auth key is present from the stored location or variable    
}

第二路:

在applicationDidBecomeActive方法中,可以直接检查验证是否完成

-(void)applicationDidBecomeActive:(UIApplication *)application
    {
       if ([[GPPSignIn sharedInstance] authentication]) {
             // The user has  signed in properly
           }
        else
         {
               // The user has  not  signed in properly
         }
    }

原文地址:https://www.jb51.cc/iOS/336016.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐