2017-04-24 24 views
0

我需要兩個功能,我沒有找到支持。首先是通過bash腳本更改Xcode配置的名稱。爲此,我嘗試過:Xcode 8通過命令行更改配置

xcodebuild -target "target name" -configuration existingConfig CONFIGURATION=newConfigName 

上述命令執行成功,但不會更改配置名稱。它只是編寫源代碼。這可能是預期的,但我正在使用xcodebuild。

要更改配置名稱,我還查看了xcconfig文件。例如,我會在Xcode中創建一個名爲項目名稱,existingConfigName.xcconfig,我想補充一個新的配置名稱,它像這樣:上面我怕我沒有使用

CONFIGURATION = NewConfigName 

然而,在該實例正確的xcconfig文件。這個地方有沒有很好的參考?

我沒有找到支持的第二項功能是通過bash或通過xcconfig實時添加新配置。

最終,我想使用bash來執行此操作,但我也向其他意見公開,不包括打開Xcode來執行此操作。我在這裏使用git子模塊,並在CI構建時添加動態配置,這是此問題的源頭。

可能有一個更簡單的方法來做到這一點,但我想我會在這裏首先提出我的問題,看看我是否在正確的軌道上。

回答

0

有一種叫做Xcodeproj的紅寶石,它也被CocoaPods使用。它基本上允許您將項目文件看作一個對象,進行更改並最終保存。下面的代碼應該回答你的問題的第一部分,約重命名:

#!/usr/bin/ruby 
require 'xcodeproj' 

project_path = '../folder/yourproject.xcodeproj' 
project = Xcodeproj::Project.open(project_path) 

project.build_configurations.each do |configuration| 
    if configuration.name == "existingConfig" 
     configuration.name = "NewConfigName" 
    end 
end 

project.save() 

添加一個新的配置也應該是可能的Xcodeproj,但是這是我還沒有完成。 文檔在這裏找到:

https://github.com/CocoaPods/Xcodeproj http://www.rubydoc.info/gems/xcodeproj/Xcodeproj/Project