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
參考