首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GIDSignIn白屏在iOS 9上

GIDSignIn白屏在iOS 9上
EN

Stack Overflow用户
提问于 2016-02-13 03:10:10
回答 5查看 1.3K关注 0票数 6

我在iOS 8上实现了Google登录,一切都正常。但是当我在iOS 9上调用这一行时:

代码语言:javascript
复制
GIDSignIn.sharedInstance().signIn()

我能第一次登录。但是,如果我取消了,下次我尝试登录时,它会显示一个普通用户审批web视图的白色屏幕。

这种情况甚至发生在我删除应用程序并重新安装它时,这意味着某些东西可能在OS级别上被缓存。

唯一的解决方案是重新打开iOS模拟器或重新启动iPhone。

我试过all these answers却没有运气。我也尝试过GIDSignIn.sharedInstance().signIn().allowsSignInWithWebView = true,希望通过Safari授权可能有效,但是Safari从未打开。我的Podfile有pod 'Google/SignIn',所以我不认为这是一个版本问题。

我对此感到困惑,因为这超出了我的应用程序的范围,我所能想到的就是解构一个工作示例应用程序,并逐行比较它的设置。

有人有链接到一个工作的示例应用程序吗?

EN

回答 5

Stack Overflow用户

发布于 2017-02-07 21:37:06

所以,我和你有同样的问题。我花了好几个小时来尝试每件事。我终于找到了一个解决方案,这可能不是100%正确的,但它对我有效,并解决了问题。

这就是我在我的项目中所做的。首先,我自己实现了三个GIDSignInUIDelegate函数,这与正式文档是冲突的,因为我的GIDSignInUIDelegate是UIViewController的子类。但是我正在使用我的自定义签名按钮,当我遵循google的官方文档时,它不起作用。所以我尝试了所有的方法,发现一切都奏效了。

在您实现委托函数之后,需要做两件主要的事情。

  1. 在下面的函数中,设置viewController.view.layoutIfNeeded() 函数符号(_ signIn: GIDSignIn!,present viewController: UIViewController!) {//这一行解决了没有显示viewController.view.layoutIfNeeded() viewController.view.layoutIfNeeded()self.present问题的登录web (viewController,viewController: true,func :nil})
  2. 不要在ViewDidLoad()中设置此委托 GIDSignIn.sharedInstance().uiDelegate = self

相反,在按钮操作中设置它们。否则,它会继续显示委托。

希望它能帮助你解决问题。

票数 5
EN

Stack Overflow用户

发布于 2016-04-30 16:29:01

我也面临着同样的问题。事实上,在一个视图控制器中,它是为我工作的,而另一个视图控制器是不工作的。

如果我在某个Button方法中调用[[GIDSignIn sharedInstance] signIn]而不是in,它对我很有用。但是如果我在viewDidLoad里面调用它,我就会得到白色的屏幕。

我找到了另一个解决办法,但我不同意,因为我认为这不可靠。

代码语言:javascript
复制
[self performSelector:@selector(LogActionPresed:) withObject:self afterDelay:3.5];

其中LogActionPresed是内部调用[[GIDSignIn sharedInstance] signIn]的方法

另一个可行的解决方案是在viewDidAppear中调用此方法

代码语言:javascript
复制
- (void) viewDidAppear:(BOOL)animated {
    [self LogActionPresed:self];
}
票数 2
EN

Stack Overflow用户

发布于 2017-08-22 08:53:40

在iOS 10上,我观察到,如果呈现视图控制器位于UINavigationController的堆栈中,它就能工作。如果呈现视图控制器不在这样的堆栈中,则web视图将保持空和白。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35375624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档