post_install do |installer|? installer.pods_project.build_configurations.each do |config|? ? config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
? end
end
這段代碼通常用于在使用 CocoaPods 時矗愧,修復(fù)與 Apple Silicon(M1 或 M2 芯片)相關(guān)的模擬器構(gòu)建問題钥平。
背景:
在 M1/M2 芯片的 Mac 上運行 iOS 模擬器時参歹,由于某些第三方庫未完全支持 ARM64 架構(gòu)只祠,可能會導(dǎo)致構(gòu)建失敗。
EXCLUDED_ARCHS是 Xcode 中的一個構(gòu)建設(shè)置伟件,用于指定需要排除的架構(gòu)蛙粘。通過將arm64排除在模擬器的構(gòu)建之外过牙,可以避免相關(guān)問題。
代碼解釋:
post_install鉤子:在執(zhí)行pod install后粪薛,這個鉤子可以對生成的 Pods 項目進行配置調(diào)整悴了。
installer.pods_project.build_configurations:遍歷 Pods 項目的所有構(gòu)建配置(如Debug和Release)。
config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]']:將模擬器的 ARM64 架構(gòu)排除违寿。
修改后的 Pods 項目配置:
這段代碼相當于在生成的 Pods 項目的構(gòu)建設(shè)置中湃交,手動添加以下設(shè)置:
plaintext
復(fù)制代碼
EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
使用場景:
當使用 M1/M2 Mac 且模擬器構(gòu)建失敗時使用。
如果你的項目沒有遇到相關(guān)問題藤巢,可以不加這段代碼搞莺。
運行方式:
將代碼添加到項目的Podfile文件中。
執(zhí)行以下命令:
bash
復(fù)制代碼
pod install
注意事項:
如果未來所有依賴的庫都完全支持 ARM64掂咒,可以移除這段代碼才沧。
如果項目中有其他特殊的構(gòu)建要求,請根據(jù)需要調(diào)整EXCLUDED_ARCHS的設(shè)置绍刮。
4o