使用Ruby XcodeProj创建Xcode项目

时间:2013-04-08 06:32:06

标签: ruby xcode cocoapods

我有这样的想法,即创建一个类似于rails设置应用程序的命令行实用程序。 它应该自动创建Xcode项目,设置单元测试,设置Frank,安装最常用的Cocoapods并设置项目结构。

目前没有这样的事情,我真的想拥有它并开源它。 昨天我在其他问题上挣扎,但没有找到最新消息。

我想出了使用XcodeProj的想法,CocoaPods使用它来生成包含Pod的项目。所以这不应该是不可能的。我还发现了XcodeProject,但这似乎是只读的。

有人(可能是Cocoapods的开发人员)可以给我一个提示从哪里开始,因为Xcodeproj gem非常缺乏文档。

1 个答案:

答案 0 :(得分:14)

开始使用Xcodeproj的最佳位置是Xcodeproj::Project类。

打开项目后,Xcodeproj API可以轻松编辑所有已知属性。但是,您需要记住以下概念:

  • 如果属性是String,则可以直接编辑它。
  • 如果某个属性存储了一个对象,则需要向该项目询问create a new,以便它有机会分配一个UUID。
  • 如果您正在编辑存储对象列表的属性,则只能使用ObjectList公开的方法。
  • Xcodeproj在为属性赋值时执行类型检查。

以下经过轻微测试的代码应该有助于您开始创建一个名为Test的新项目,其目标名为App,用于iOS 6.0的部署目标,它将Class.h和Class.m文件添加到项目中,从而确保Class。 m包含在目标中。

require 'xcodeproj'

proj = Xcodeproj::Project.new
app_target = proj.new_target(:application, 'App', :ios, '6.0')
header_ref = proj.main_group.new_file('./Class.h')
implm_ref = proj.main_group.new_file('./Class.m')
app_target.add_file_references([implm_ref])

proj.save_as('Test.xcodeproj')

请告诉我们,打开一个问题,您发现哪些部分文档令人困惑。对于更多的业力,请使用拉取请求。