Firebase Google签名显示网站名称为url的空白safari页面

时间:2017-03-01 08:38:27

标签: ios objective-c firebase firebase-authentication google-signin

我正在将Firebase与Google签名集成。它与我的虚拟项目工作正常但在我的项目中它显示了空白的safari页面,其中包含"网站名称"点击GIDSignInButton时。

This is screen shot of safari page

我认为有一些项目设置正在影响我的Firebase Google签名代码。

请建议。

3 个答案:

答案 0 :(得分:0)

我找到了这个问题的原因。 我在我的项目中使用AMSlideMenu库作为侧面板,对safari有影响。这很奇怪但是在移除侧面板之后一切正常。

答案 1 :(得分:0)

我的问题的原因是在展示Google签名视图控制器时[UIApplication sharedApplication].keyWindownil

我创建了一个方法,用于检索并重新分配keyWindow以显示窗口和Google Signing SDK以继续工作。

- (void) signIn:(GIDSignIn *)signIn presentViewController:(UIViewController *)viewController
{
    UIViewController *topViewController = [WindowUtils GetTopMostController];
    [topViewController presentViewController:viewController animated:YES completion:nil];
}

WindowUtils.m

+ (UIViewController*) GetTopMostController
{
    UIViewController *topController = [UIApplication sharedApplication].keyWindow.rootViewController;
    if(topController == nil)
    {
        UIWindow *keyWindow = [[[UIApplication sharedApplication] delegate] window];
        //reassign the keywindow
        [keyWindow makeKeyAndVisible];
        topController = keyWindow.rootViewController;
    }

    return topController;
}

答案 2 :(得分:-1)

重新启动手机似乎对我有用。