我想修复 Cocoapods 错误,当它为扩展目标添加 Embed Pods Frameworks
构建阶段时。那里不需要这些阶段。
https://github.com/CocoaPods/CocoaPods/issues/4203
我写了脚本来删除它
puts "Deleting not needed phases…"
project_path = "Keyboard.xcodeproj"
project = Xcodeproj::Project.open(project_path)
project.targets.each do |target|
if target.name.include?("Extension")
phase = target.shell_script_build_phases.find { |bp| bp.name == 'Embed Pods Frameworks' }
if !phase.nil?
puts "Deleting Embed Pods Frameworks phase…"
target.build_phases.delete(phase)
end
end
end
project.save
我可以在
pod install
之后手动运行这个脚本,但我想以某种方式将它添加到 Podfile 中。它在 post_install
钩子(Hook)中不起作用post_install do |installer|
...
end
因为
UserProjectIntegrator.integrate!
是在 post_install
之后调用的,它会覆盖我的更改。有没有办法将这个脚本集成到 Podfile 中?
最佳答案
最简洁的答案是不。
长答案:
从 pod install --verbose
的输出中,构建阶段 Embed Pods Frameworks
添加到 Integrating client project
中,该代码在 Podfile 中的 post_install 步骤之后运行。
这就是为什么你应该在 pod install 完成运行后单独执行这个脚本。
关于cocoapods - Hook Podfile 以编辑我的项目文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33846361/