使用Ruby XcodeProj创建Xcode项目

bty*_*ype 3 ruby xcode cocoapods

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

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

我想出了使用XcodeProj的想法,CocoaPods使用它来生成包含Pods的项目.所以这不应该是不可能的.我也找到了XcodeProject,但这似乎是只读的.

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

Fab*_*bio 14

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

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

  • 如果属性是String,则可以直接编辑它.
  • 如果属性存储对象,则需要请求项目创建新对象,以便它有机会分配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')
Run Code Online (Sandbox Code Playgroud)

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

  • 此代码段不适用于当前版本的xcodeprj."初始化"方法需要两个参数.`initialize':错误的参数个数(0表示1..2)(ArgumentError) (2认同)