Google 登录 CocoaPods 在 Swift 中安装?

Google Sign in CocoaPods Install in Swift?

我目前正在开发一个基于 Swift 的应用程序,该应用程序混合使用了 Objective-C 和基于 Swift 的 Cocoapods。
我的 Podfile 看起来像这样:

source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '8.0'
use_frameworks!

pod 'SDWebImage', '~> 3.6'
pod 'Alamofire', '~> 1.2'
pod 'Google/SignIn'

在我添加 Google 登录之前,我的 pods 运行良好。
当我执行 pod install 时,出现以下错误:

[!] The 'Pods' target has transitive dependencies that include static
binaries: (~/Pods/GoogleAppUtilities/Libraries/libOpenInChrome.a, 
~/Pods/GoogleAuthUtilities/Libraries/libGTMOAuth2_internal.a, 
~/Pods/GoogleAuthUtilities/Libraries/libGTMOAuth2_external.a, 
~/Pods/GoogleNetworkingUtilities/Libraries/libGTMSessionFetcher_full.a, 
~/Pods/GoogleNetworkingUtilities/Libraries/libGTMSessionFetcher_core.a, 
~/Pods/GoogleSymbolUtilities/Libraries/libGSDK_Overload.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_iPhone.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_core.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_UIFont+LineHeight.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_SystemVersion.a, 
~/GoogleUtilities/Libraries/libGTM_StringEncoding.a, 
~/GoogleUtilities/Libraries/libGTM_RoundedRectPath.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_Regex.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_NSStringXML.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_NSStringHTML.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_NSScannerJSON.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_NSDictionary+URLArguments.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_KVO.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_GTMURLBuilder.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_DebugUtils.a, 
~/Pods/GoogleUtilities/Libraries/libGTM_AddressBook.a, and 
~/Pods/GoogleUtilities/Libraries/libGTMStackTrace.a)

此外,一旦我添加 Google 登录,我的其他 pods 的所有模块映射和伞头就会消失,破坏所有这些。

来自 Cocoa

This issue 的 pods 似乎提到这个问题与我对 !use_frameworks 的使用有关,但仅建议解决方法 (--use-libraries) pod 发布端,不是从用户的角度。这是我需要等待 Google 在他们的 podspec 中修复的东西,还是我可以做些什么来让登录 pod 工作?

如果没有,Google是否仍然提供了一种无需 Cocoa 即可手动安装此 SDK 的方法pods?

我在另一个项目运行 'pod lib lint'时遇到了同样的错误。我通过包含 --use-libraries 和 --allow-warnings 命令行指令来修复它。也许这可以帮助您解决问题。

pod lib lint --use-libraries --allow-warnings

不久前我遇到了同样的错误。我刚刚删除了

use_frameworks!

来自 podfile,现在工作正常。

尝试下面的 pod

pod 'GoogleSignIn', '~> 2.2'

我通过将它添加到我的桥接中来让它工作 header:

#import <GooglePlus/GooglePlus.h>
#import <GoogleOpenSource/GoogleOpenSource.h>

然后 swift 可以访问 google 登录:)

我回答这个问题已经很晚了,但 pod install 问题似乎是 Cocoapods 本身的问题。我将 Cocoapods 更新到最新版本(现在是 0.39.0),我能够安装所有 Google pods。然后我可以按照 niebloomj 在 中的建议向我的桥接头添加行,并访问 Swift.

中的所有库