platform :ios, '7.0' // 指定所支持系统和最低版本
inhibit_all_warnings! //屏蔽所有warning
def pods //定义依赖宏
pod 'AFNetworking', '~> 2.2'
pod 'NYXImagesKit', '~> 2.3'
pod 'FXKeychain', '~> 1.5'
pod 'BlocksKit', '~> 2.2.0'
pod 'NSString-Hashes', '~> 1.2.1'
pod 'FrameAccessor', '~> 1.3.2'
pod 'MWFeedParser', '~> 1.0.1'
pod 'RegexKitLite', '~> 4.0'
pod 'MBProgressHUD', '~> 0.8'
end
//指定"安装完成,但是生成的工程还没有写入磁盘"时要执行的操作
post_install do |installer_representation|
installer_representation.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ARCHS'] = 'armv7 arm64'
end
end
end
target "v2ex-dev" do
pods //使用宏
end
target "v2ex" do
pods //使用宏
end
Architectures:这是指你想支持的指令集,比如:armv7,armv7s,或者可以用$(ARCHS_STANDARD_32_BIT)这样的参数
Valid Architectures:这是指你即将编译的指令集
Build Active Architecture Only:是否只编译当前设备适用的指令集(如果这个参数设为YES,那么如果你用iPhone 6调试,最终生成的一个支持arm64指令集的Binary;如果你用iPhone4编译,最终生成一个支持armv7指令集的Binary,所以一般在DEBUG模式下设为YES,RELEASE设为NO)
这里,我们编译最终支持的指令集是Architectures和Valid Architectures两个参数的交集。
另外,列一下目前常见iOS设备的指令集:
ARMv8/ARM64: iPhone 6(Plus), iPhone 5s, iPad Air(2), Retina iPad Mini(2,3)ARMv7s: iPhone 5, iPhone 5c, iPad 4 ARMv7: iPhone 3GS, iPhone 4, iPhone 4S, iPod 3G/4G/5G, iPad, iPad 2, iPad 3, iPad Mini ARMv6: iPhone, iPhone 3G, iPod 1G/2G
参考
1. CocoaPods中Podfile详解
2.CocoaPods使用注意事项
3.Podfile语法参考(译)
4.CocoaPods为多个target添加依赖库