由于Google SignIn引起的iOS拒绝。 最新的Google SignIn(4.0.0)去safari

我们的应用被苹果拒绝了

devise – 4.0

我们注意到,当用户使用Google+login时,用户被带到Safarilogin或注册帐户,这提供了糟糕的用户体验。

下一步

请修改您的应用,以便用户在应用中使用Google+login。 您可以通过更新到最新的Google+ SDK来完成此操作。

我们build议您使用Safari View Controller API在您的应用程序中显示网页内容。 Safari浏览器控制器允许在应用程序中显示URL并检查来自embedded式浏览器的证书,以便客户可以validation网页URL和SSL证书,以确认他们将自己的login凭据input合法页面。

我正在使用pod,并拥有最新的Google SignIn库,而不是GooglePlus。 图书馆4.0.0(15/05/2016),发行说明

https://developers.google.com/identity/sign-in/ios/release 

移除allowSignInWithBrowser并允许来自GIDSignIn的SignInWithWebView属性。

这意味着我没有办法在iOS 8上强制它具有默认的iOS 9行为(在应用程序中打开浏览器之类的Safari浏览器)。 安装Google应用或Google+应用没有任何区别。

试图降级到2.4.0使用cocoa豆荚,但它说

分析依赖关系[!]无法满足以下要求:

  • Google/SignIn (= 2.4.0)需要Podfile
  • Google/SignIn (= 2.4.0)需要Podfile

有任何想法吗? 感谢在前面

最后,我设法通过降级到允许SignInWithBrowser并允许SignInWithWebView属性的GoogleSignIn 3.0.0进行更改并获得它的支持。

 allowsSignInWithBrowser = NO allowsSignInWithWebView = YES 

为了使所有东西都build立起来,必须改变这个pod文件(有了google analytics也使得这个东西变得非常困难,导致依赖)。

希望Google工程师更新SignIn 4.0.0,因为我不喜欢拥有旧的库,但是我不能让我的应用程序被拒绝,直到Google更改库

 pod 'Google/Analytics' pod 'GoogleSignIn', '3.0.0' pod 'Google/SignIn' pod 'Google', '2.0.4' pod 'GoogleAppUtilities' pod 'GoogleAuthUtilities' pod 'GoogleNetworkingUtilities' 

祝你们好运,感谢Paulw11,他做了一个testing项目,在iOS8上看到了同样的问题。 同时,告诉评论人员,App Store中的其他(甚至是大型)应用程序都是使用webview的,即使iOS9,不仅仅是iOS8,也没有帮助,因为他们说这不能成为其他应用程序的原因,而且他们正在努力拒绝其他也一样。

如果有任何更改,例如新的GoogleSignIn库,请作出新的答案!