Cocoapod安装后直接获取主项目

Cam*_*mer 4 ruby cocoapods

在为 a 创建 CocoaPod Podspec 时,vendored_framework我需要安装一个 shell 脚本,以便build_phases在主项目中的所有其他脚本之后运行。我发现做到这一点的唯一方法是.xcodeprojPodfile.

post_install do |installer|
  project_name = Dir.glob("*.xcodeproj").first
  project = Xcodeproj::Project.open(project_name)
  project.targets.each do |target|
    inject_shell_script_build_phase(target)
  end
  project.save
end
Run Code Online (Sandbox Code Playgroud)

鉴于pod installorpod update正在运行并且显然已经有了此信息,这似乎很荒谬。有没有一种方法可以project直接获取引用,而无需对项目文件名进行全局或硬编码?

Har*_*ngh 5

这应该可以解决问题...注意钩子post_integrate。否则我的更改会被覆盖(被忽略?),除非我通过直接打开文件来完成。

post_integrate do |installer|
  project =  installer.aggregate_targets[0].user_project
  project.targets.each do |target|
    inject_shell_script_build_phase(target)
  end
  project.save
end
Run Code Online (Sandbox Code Playgroud)