问题 1 一个项目中,主工程包含了pod子工程,其他静态类库工程,也想引用pod时,怎么办?
目录结构如下:
MainProject
Pods.xcconfig
Pods
SubProject1
Pods.xcconfig
解决办法:
1 在子工程SubProject1下也建一个Pods.xcconfig,复制其内容,只修改
PODS_ROOT = ../MainProject/Pods
如今,CocoaPods使用越来越多,几乎每个项目都会使用到。有时候我们的项目可能是有几个模块组成的,每个模块都可以作为一个单独的工程,然后所有的工程都供主工程使用,这就是多工程联编,如何利用pods的Podfile来实现这个功能,下面就为大家提供这种情况下Podfile的写法:
workspace 'Myworkspace'
xcodeproj 'MyApp/MyApp.xcodeproj'
xcodeproj 'MySDK1/MySDK1.xcodeproj'
xcodeproj 'MySDK2/MySDK2.xcodeproj'
target :MyApp do
platform :ios, '6.0'
pod 'AFNetworking', '~> 2.1.0'
pod 'SDWebImage', '~> 3.4'
pod 'FlurrySDK', '~> 5.0.0'
xcodeproj 'MyApp/MyApp.xcodeproj'
end
target :MySDK1 do
platform :ios, '6.0'
pod 'AFNetworking', '~> 2.1.0'
pod 'SDWebImage', '~> 3.4'
pod 'FlurrySDK', '~> 5.0.0'
xcodeproj 'MySDK1/MySDK1.xcodeproj'
end
target :MySDK2 do
platform :ios, '6.0'
pod 'AFNetworking', '~> 2.1.0'
pod 'SDWebImage', '~> 3.4'
xcodeproj 'MySDK2/MySDK2.xcodeproj'
end
1. 指定工作区文件名字
2. 声明需要包含进来的所有工程的工程文件相对路径
3. 指明该工程内哪个target需要使用pods功能。一个工程可能有多个target,并不是所有的target都需要pods的第三方库,所以根据需要选择。
4. 指定iOS的版本,需要导入的第三方库(此处又有多种写法,在此不作详述,大家可以到此处去看,比较详细:http://guides.cocoapods.org/syntax/podfile.html#xcodeproj)
这样做的前提是,在一个目录下,把需要的工程都建好,然后在各个工程同级目录建Podfile,最后进入Podfile的目录,执行pod install, pods便会帮我们生成Myworkspace文件,用xcode打开Myworkspace文件,所有的工程都已经被导入,设置好项目间的引用关系,就可以开始开发了。
目录结构:
MyApp