从pod

时间:2017-07-06 13:07:54

标签: swift xcode cocoapods xcodeproj

为私有框架构建自定义窗格,在我的主项目中,我使用自定义OTHER_SWIFT_FLAGS。

理论上,应该可以在安装期间根据主项目覆盖pod的设置,但是没有关于如何执行此操作的文档。

到目前为止,我的尝试失败了,任何暗示? 看起来像项目(https://guides.cocoapods.org/syntax/podfile.html#project)应该是要走的路,但是再没有文档。

1 个答案:

答案 0 :(得分:2)

所以基本上它看起来像这样。 访问xcode项目,然后访问pod并循环遍历每个配置以设置正确的值。

post_install do |installer|
require 'xcodeproj'
project_path = 'pathTo/myProj.xcodeproj' # path to your xcode project
project = Xcodeproj::Project.open(project_path)
project.targets.each do |target|
    if target.name == 'myTarget' # name of the target in your main project containing the custom flag
        installer.pods_project.targets.each do |podTarget|
            if podTarget.name == 'myPod' #name of your pod
                target.build_configurations.each do |targetConfig|
                    podTarget.build_configurations.each do |podConfig|
                        podConfig.build_settings["OTHER_SWIFT_FLAGS"] = targetConfig.build_settings["OTHER_SWIFT_FLAGS"]
                    end
                end

            end
        end
    end
end