.xcscheme文件中的XML元素做什么

.xcscheme文件中的XML元素做什么,xml,xcode,Xml,Xcode,我正在创建一个rakeexe,用于向xcode项目添加覆盖率。我正在使用gemxcodeproj。我需要创建一些版本控制方案并运行覆盖率脚本 我一直在制定自己的计划,但进展缓慢。我觉得如果我理解了这些元素的含义,我就能更快地调试 <?xml version="1.0" encoding="UTF-8"?> <Scheme LastUpgradeVersion = "0500" version = "1.3"> <BuildAction

我正在创建一个rakeexe,用于向xcode项目添加覆盖率。我正在使用gemxcodeproj。我需要创建一些版本控制方案并运行覆盖率脚本

我一直在制定自己的计划,但进展缓慢。我觉得如果我理解了这些元素的含义,我就能更快地调试

<?xml version="1.0" encoding="UTF-8"?>
   <Scheme
    LastUpgradeVersion = "0500"
  version = "1.3">
  <BuildAction
    parallelizeBuildables = "YES"
  buildImplicitDependencies = "YES">
     <BuildActionEntries>
     <BuildActionEntry
        buildForTesting = "YES"
        buildForRunning = "YES"
        buildForProfiling = "YES"
        buildForArchiving = "YES"
        buildForAnalyzing = "YES">
        <BuildableReference
           BuildableIdentifier = "primary"
           BlueprintIdentifier = "7B80F18918187FA5005578A0"
           BuildableName = "TestProj.app"
           BlueprintName = "TestProj"
           ReferencedContainer = "container:TestProj.xcodeproj">
        </BuildableReference>
     </BuildActionEntry>
  </BuildActionEntries>
  </BuildAction>
   <TestAction
  selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
  selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
  shouldUseLaunchSchemeArgsEnv = "YES"
  buildConfiguration = "Coverage">
  <Testables>
     <TestableReference
        skipped = "NO">
        <BuildableReference
           BuildableIdentifier = "primary"
           BlueprintIdentifier = "7B80F1A418187FA5005578A0"
           BuildableName = "TestProjTests.xctest"
           BlueprintName = "TestProjTests"
           ReferencedContainer = "container:TestProj.xcodeproj">
        </BuildableReference>
     </TestableReference>
      </Testables>
    <PostActions>
     <ExecutionAction
        ActionType =      "Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction">
        <ActionContent
           title = "Run Script"
           scriptText = "/bin/sh ${SRCROOT}/bin/coverage.sh">
           <EnvironmentBuildable>
              <BuildableReference
                 BuildableIdentifier = "primary"
                 BlueprintIdentifier = "7B80F18918187FA5005578A0"
                 BuildableName = "TestProj.app"
                 BlueprintName = "TestProj"
                 ReferencedContainer = "container:TestProj.xcodeproj">
              </BuildableReference>
           </EnvironmentBuildable>
        </ActionContent>
     </ExecutionAction>
  </PostActions>
   </TestAction>
     <LaunchAction
  selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
  selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
  launchStyle = "0"
  useCustomWorkingDirectory = "NO"
  buildConfiguration = "Debug"
  ignoresPersistentStateOnLaunch = "NO"
  debugDocumentVersioning = "YES"
  allowLocationSimulation = "YES">
  <AdditionalOptions>
  </AdditionalOptions>
  </LaunchAction>
    <ProfileAction
  shouldUseLaunchSchemeArgsEnv = "YES"
  savedToolIdentifier = ""
  useCustomWorkingDirectory = "NO"
  buildConfiguration = "Release"
  debugDocumentVersioning = "YES">
  </ProfileAction>
 <AnalyzeAction
    buildConfiguration = "Debug">
   </AnalyzeAction>
  <ArchiveAction
  buildConfiguration = "Release"
  revealArchiveInOrganizer = "YES">
    </ArchiveAction>
    </Scheme>

请注意,这只是非iOS开发者的部分回答,因为我相信这个问题符合以下条件:

回答所有这些值意味着什么,对于没有参与您的项目的人来说,这将是非常耗时和浪费时间的(尽管信息已经公开了)。工程需要涉猎文档和无休止的网站,以便在需要时回答哪怕是一小部分信息

谷歌更独特的东西 下面的所有内容都是我在谷歌搜索了大约15分钟后所能做到的(当然,我将要引用的Titolo资源发表于2015年,你的问题发表于2013年):

由于我不是一个iOS开发者,我不能谈论这些类型资源的有效性;然而,它们似乎是合法的。我在谷歌上搜索了BlueprintIdentifier,因为它看起来很独特,并且能够找到一些

以下XML正文的目的(以及理解它所需的术语):


其他的呢 @Antarr Byrd早些时候在评论中发布的文档确实涵盖了这些内容。例如,
BuildableIdentifier
是用于
BuildableReference
节点的

我越是回到谷歌,读得越多,我就越相信所有这些价值观都被文档充分记录了下来。它们可能不是预期的格式,但肯定有文档记录


文档是人类书写的“东西”的结果。写这篇文章的人可能并不总是以易于消化的方式组织起来;然而,这并不意味着信息不存在

你看过文件了吗?文档没有提供这些值的含义的答案。
<BuildActionEntry
    buildForTesting = ""
    buildForRunning = ""
    buildForProfiling = ""
    buildForArchiving = ""
    buildForAnalyzing = "">
    <BuildableReference
       BuildableIdentifier = ""
       BlueprintIdentifier = ""
       BuildableName = ""
       BlueprintName = ""
       ReferencedContainer = "">
    </BuildableReference>
 </BuildActionEntry>