.xcscheme文件中的XML元素有何功能

时间:2013-10-24 19:30:09

标签: xml xcode

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

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

<?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>

1 个答案:

答案 0 :(得分:0)

预先警告,这只是非iOS开发人员的部分答案,因为我认为这个问题符合closing because of a lack of research的条件:

回答那些所有这些值的意思是过度耗费时间,浪费那些没有参与项目的人(尽管这些信息在那里)。工程需要涉及文档和无尽的网站,以便在需要时回答一小部分信息。

Google更独特的东西

以下所有内容都是我在大约十五分钟的谷歌搜索中所能做到的(授予,我将要参考的Titolo资源在2015年发布,您的问题在2013年)

由于我不是iOS开发人员,我无法谈论这些类型资源的有效性;然而,他们似乎合法。我用Google搜索BlueprintIdentifier,因为它看起来很独特,能够找到一些good stuff on the second page of Google

Michelle Titolo has done a good job of describing以下XML主体的目的(以及理解它所需的术语):

<BuildActionEntry
    buildForTesting = ""
    buildForRunning = ""
    buildForProfiling = ""
    buildForArchiving = ""
    buildForAnalyzing = "">
    <BuildableReference
       BuildableIdentifier = ""
       BlueprintIdentifier = ""
       BuildableName = ""
       BlueprintName = ""
       ReferencedContainer = "">
    </BuildableReference>
 </BuildActionEntry>

其他东西怎么样

@Antarr Byrd早期在评论中发布的文档涵盖了这些 。例如,对于BuildableIdentifier节点,BuildableReference covered under the documentationlike LaunchActionhttps://reactjs.org/docs/forms.html#controlled-components为{{3}}。

我回到谷歌的次数越多,我阅读的越多,我就越相信文档中充分记录了所有这些值。它们可能不是预期的格式,但它们肯定是有记录的。

文档是人类编写的东西&#34;的结果。写这篇文章的人可能并不总是以易懂的方式组织起来;但是,这并不意味着信息不存在。