通过 cocoapods 在 swift 项目(iOS 8.0 目标)中添加 Facebook Pop 是不可能的
Posted
技术标签:
【中文标题】通过 cocoapods 在 swift 项目(iOS 8.0 目标)中添加 Facebook Pop 是不可能的【英文标题】:Adding Facebook Pop in swift project (iOS 8.0 target) through cocoapods impossible 【发布时间】:2015-07-24 10:04:29 【问题描述】:我正在尝试使用 Cocoapods 将 FB 著名的动画框架“Pop”添加到我的项目中。
这个过程对我来说似乎很简单,但不知何故我收到了一个链接器错误:
我通过CocoaPods安装Pop的过程如下:
-我转到终端中的根项目文件夹并执行pod init
。这将创建我的Podfile
-我打开我的Podfile
并添加pod 'pop', '~> 1.0'
:
# Uncomment this line to define a global platform for your project
# platform :ios, '6.0'
target 'Test' do
pod 'pop', '~> 1.0'
end
target 'TestTests' do
end
-然后,我执行pod install
,它将CocoaPods 添加到我的项目中。
-我在我的终端中获得此信息:
[!] Please close any current Xcode sessions and use `Test.xcworkspace` for this project from now on.
-我打开该文件而不是我的常规项目,我收到一堆错误和警告:
为什么会这样?我究竟做错了什么?我错过了什么?我是否跳过了程序中的某些内容?
另外,我在 Xcode 的测试项目中的框架下得到一个红色文件(我猜它没有找到正确的文件):
我认为手动安装会更容易,但我不知道该怎么做。如果有人知道该怎么做,我将非常感谢您能就此事提供任何帮助,如果没有,通过 cocoapods 正确安装它就可以了。
非常感谢任何帮助!
提前谢谢你!
干杯!
【问题讨论】:
【参考方案1】:在您的 podfile 中,添加以下行:
inhibit_all_warnings! # this will disable all the warnings for all pods
然后再次运行 pod install,这将从您的构建中删除与 pod 相关的所有警告(无需担心它们)。
至于红色的,似乎它们没有连接到 POP 框架,而是连接到 Facebook SDK(POP 不需要 AFAIK 才能工作)。你确定你没有错过一些你忘记添加到你的 pod 文件的其他库吗?
【讨论】:
为了使这更容易,我刚刚创建了一个空白项目并在那里安装了 cocoapods。我在 cmets 之后添加了该行,它似乎可以编译。你知道我如何使用这个框架吗?我需要使用头文件吗? 您需要使用桥接头(如果您还没有,请按照本教程操作:bohemianpolymorph.wordpress.com/2014/07/11/…)。然后,将 #import "POP.h" 添加到该桥接头。然后你就可以在你的应用中到处使用 pop。 我确实有一个桥接头。我有点得到它的工作。现在我只能看到方法,例如 pop_addAnimation 和 pop_addAnimationForKey... 但每当我尝试从 POP 类创建对象时,例如 POPBasicAnimation ->var animation:POPBasicAnimation = POPBasicAnimation()
它说 Use of undeclared type 'POPBasicAnimation'
... 所以我没有得到类文件?我猜??以上是关于通过 cocoapods 在 swift 项目(iOS 8.0 目标)中添加 Facebook Pop 是不可能的的主要内容,如果未能解决你的问题,请参考以下文章
Alamofire 不会使用 Cocoapods 构建空的 Swift 项目
静态 Swift 框架未能通过 CocoaPods 验证,并显示“未定义的架构符号”
MagicalRecord 如何使用 CocoaPods 设置新的 Swift 项目使用:branch => 'develop' 即 2.3.0-beta.5