我正在尝试将Google移动广告SKD安装到我的Xcode项目中。我安装了Cocoapods,然后将Podfile初始化为我的项目:
# Uncomment the next line to define a global platform for your project
platform :ios, '10.2'
target 'Cubical' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for Cubical
target 'CubicalTests' do
inherit! :search_paths
# Pods for testing
end
target 'CubicalUITests' do
inherit! :search_paths
# Pods for testing
end
end
但是,我不明白为什么我的主项目(Cubical)中有目标。我从未真正使用过CubicalTests或CubicalUITests,因为我不需要测试我的UI或任何代码片段。 我在考虑删除这两个文件夹。
我的问题是,
1)从Xcode项目中删除Tests和UITests文件夹有什么缺点吗?如果我这样做,我可以简单地从我的Podfile中删除这两个目标吗?
2)假设我要保留这两个目标。我是否必须将pod添加到所有三个目标?或者两个嵌套目标是否继承目标“Cubical”
的任何pod3)我是否需要将链接框架添加到Google移动广告SDK?或者这已经由Cocoapods完成了吗?
我的最终吊舱看起来像这样:
# Uncomment the next line to define a global platform for your project
platform :ios, '10.2'
target 'Cubical' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
pod 'Google-Mobile-Ads-SDK'
# Pods for Cubical
target 'CubicalTests' do
inherit! :search_paths
# Pods for testing
end
target 'CubicalUITests' do
inherit! :search_paths
# Pods for testing
end
end
答案 0 :(得分:4)
问题1:
删除Tests
,CubicalUITests
目标时,没有问题。文件夹,如果你不需要执行那种测试。
问题2 :
您可以与以下几个目标共享pod,
def shared
pod 'Google-Mobile-Ads-SDK'
end
target 'Target1' do
shared
end
target 'Terget2' do
shared
end
多个目标的全局广告
#Global Pod for all targets
pod 'Google-Mobile-Ads-SDK'
target 'target1' do
pod 'Fabric' #Pod for nested Target. i.e., Google-Mobile-Ads-SDK + Fabric
end
target 'target2' do
pod 'RadioButton'#Pod for nested Target. i.e., Google-Mobile-Ads-SDK + RadioButton
end
嵌套目标的窗格
#Global Pod for all targets
pod 'Google-Mobile-Ads-SDK'
target 'target1' do
pod 'RadioButton' #Available for target1 and target2
target 'target2 copy' do
pod 'Fabric' #Available for target2 only
end
end
问题3:
链接的框架由cocoapods自动完成。请参阅here您需要使用没有cocoapods的框架链接框架。