UIWebView的GoogleSignInSDK用法

问题描述 投票:0回答:3

谁知道从哪个版本的 GoogleSignInSDK(iOS) 中删除了 UIWebView 的用法,4.4.0 版本是否涵盖了这一点?

ios google-signin
3个回答
5
投票

由于没有提及,关于此事,在官方Release Notes中,您可以使用this答案中的建议来确定哪个版本删除了对

UIWebView
的引用。

在项目目录中运行

grep -r UIWebView .
命令,将输出出现“UIWebView”字符串的文件,甚至是二进制文件

我继续在一个空项目中安装了

GoogleSignIn
。看来4.4.0版本仍然使用
UIWebView
。项目目录下
grep -r UIWebView .
的结果是:

~ grep -r UIWebView .
./Pods/GoogleSignIn/CHANGELOG.md:- Supports sign-in via UIWebView rather than app switching to a browser,
Binary file ./Pods/GoogleSignIn/Frameworks/GoogleSignIn.framework/GoogleSignIn matches

显然

GoogleSignIn.framework
内的二进制文件包含这样的引用。

但是从 5.0.0 版本开始,仅在

UIWebView
README.md
文件中引用了
CHANGELOG.md

~ grep -r UIWebView .
./Pods/AppAuth/README.md:for the auth request. `UIWebView` and `WKWebView` are explicitly *not*
./Pods/GoogleSignIn/CHANGELOG.md:- Supports sign-in via UIWebView rather than app switching to a browser,

因此,如果您想在 App Store 中上传新应用程序,您可能需要至少升级到版本 5.0.0。


2
投票

上个月我遇到了这个问题。查了很多资料终于解决了这个问题,方法如下。

  1. 只需注释掉所有 pod 库并仅尝试使用此 pod 文件

    pod 'GoogleSignIn'
    

然后采取

 pod install 
  1. 然后将此行粘贴到终端中

    ~ grep -r UIWebView .

注意:注意上面一行的最后一个字母中有一个点(.),并检查是否找到“UIWebView”。

  1. 如果没有找到“UIWebView”,那么这个 pod 文件就可以了。

  2. 再次解开一个pod文件并重复步骤1、步骤2和步骤3。需要一一对应,因为一个 pod 文件可能依赖于另一个 pod 文件。

如果您仔细遵循这些步骤,那么我希望“UIWebView”将从所有 pod 文件中删除。


0
投票

现在我可以通过使用来修复 pod 'GoogleSignIn', '~> 6.0.2'

这条线救了我的命。 希望这有帮助。

https://github.com/googlesamples/google-signin-unity/pull/205#issuecomment-1370534648

//可以解决iOS上google登录失败的问题

// GoogleSignInSDK 不再使用 UIWebView。

PS。我在 2023 年使用 Unity 2021.3.25f1 :D

© www.soinside.com 2019 - 2024. All rights reserved.