Cocoapod:使用 post 安装挂钩重新定义预处理宏
Cocoapod : Redefining preprocess macro using post install hook
我想更新我的广告连播以让用户 activating/desactivating 一个功能。
为此,我在 podspec
中添加了预处理器宏:
s.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => 'FEATURE=1' }
现在,对于用户来说,正确的做法(据我所知)应该是在 podfile
中使用 post 安装挂钩来更改 [=15] 的定义=]
post_install do |installer_representation|
installer_representation.project.targets.each do |target|
if target.name == "Pods-MyPod"
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', 'FEATURE=0']
end
end
end
end
但它什么也没做... FEATURE
值仍然是 1
我是不是做错了什么?
编辑:
我确实看过这个answer,但没有帮助。
最后,我找到了一个可用的版本。
post_install do |installer_representation|
installer_representation.pods_project.targets.each do |target|
if target.name == "Pods-MyPod"
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = ['COCOAPODS=1', 'FEATURE=0']
end
end
end
end
我想更新我的广告连播以让用户 activating/desactivating 一个功能。
为此,我在 podspec
中添加了预处理器宏:
s.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => 'FEATURE=1' }
现在,对于用户来说,正确的做法(据我所知)应该是在 podfile
中使用 post 安装挂钩来更改 [=15] 的定义=]
post_install do |installer_representation|
installer_representation.project.targets.each do |target|
if target.name == "Pods-MyPod"
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', 'FEATURE=0']
end
end
end
end
但它什么也没做... FEATURE
值仍然是 1
我是不是做错了什么?
编辑: 我确实看过这个answer,但没有帮助。
最后,我找到了一个可用的版本。
post_install do |installer_representation|
installer_representation.pods_project.targets.each do |target|
if target.name == "Pods-MyPod"
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = ['COCOAPODS=1', 'FEATURE=0']
end
end
end
end