【问题标题】:Tutorial or Guide for Scripting Xcode Build Phases编写 Xcode 构建阶段脚本的教程或指南
【发布时间】:2011-11-25 07:35:00
【问题描述】:

我想使用 Xcode 中的脚本将一些文件添加到编译源构建阶段,该脚本从一些文件夹引用中提取。到目前为止,我还没有找到太多的文档。

  1. 用于编写 Xcode 构建阶段脚本的一般文档(或好的教程)在哪里?
  2. 如何将文件添加到编译源阶段?
  3. 如何发现有关项目的信息以及其中的文件夹引用?
  4. 如果我想用 Ruby 或 Python 与 bash 脚本编写脚本,是否有任何特殊注意事项?

【问题讨论】:

  • 我正在尝试做同样的事情,您是否设法获得了一个脚本来执行此操作?我的问题是我在构建过程中修改了 project.pbxproj,所以 Xcode 不会在同一个构建过程中刷新编译源,只为下一个构建。

标签: python ruby xcode build-automation


【解决方案1】:

要使用脚本将文件添加到Compile Sources 构建阶段,您需要以编程方式操作项目的project.pbxproj 文件。

一般来说,您可以通过将project.pbxproj 文件解析为内存中的数据结构,通过编程接口操作该数据结构,然后将数据结构写入新的project.pbxproj 文件来完成此操作。

有几个项目可能会帮助你做到这一点,我还没有尝试过:

这里是一系列博客文章,其中包含有关 XCode project.pbxproj 文件的内容和格式的一般信息。

最后,可能值得注意的是,对于非常简单的操作,特别是如果您不担心 project.pbxproj 文件的外观会被弄乱,您可以按照 this Stack Overflow answer 的建议来解析 @ 987654336@ 命令行文件如下:

plutil -convert xml1 -o - myproj.xcodeproj/project.pbxproj

解析愉快!

【讨论】:

  • 虽然以这种方式完成这项工作的可能性很大,但按小时付费将是犯罪行为。
  • 不要依赖 plutil 来完成这项工作,我只是遇到了一些情况,它产生了损坏的数据,甚至没有显示警告消息。
猜你喜欢
  • 1970-01-01
  • 2010-11-23
  • 2020-09-04
  • 1970-01-01
  • 1970-01-01
  • 2015-01-18
  • 1970-01-01
  • 1970-01-01
  • 2011-10-26
相关资源
最近更新 更多