如何从控制台 xcodebuild 创建用于无线传输的 IPA 和 manifest.plist

How to create an IPA and manifest.plist for over-the-air from the console xcodebuild

我有一个分两步收集 ipa 文件的脚本。 第一步是构建存档:

def buildArchive(nameProject, typeMode, dirBuild, dirArch):
  print('[--] Run Build Archive')
  rArch = subprocess.run(['xcodebuild',
    'archive',
    '-verbose',
    '-scheme', '{}'.format(nameProject),
    '-configuration', '{}'.format(typeMode),
    '-derivedDataPath', '{}'.format(dirBuild),
    '-archivePath', '{}/project.xcarchive'.format(dirArch),
    '-allowProvisioningUpdates'],
    capture_output=True)
  if rArch.returncode != 0:
    if rArch.stderr:
      print('[EE] output: {}'.format(rArch.stdout.decode('UTF-8')))
      print('[EE] error: {}'.format(rArch.stderr.decode('UTF-8')))
    else:
      print('[EE] output: {}'.format(rArch.stdout.decode('UTF-8')))
    sys.exit(rArch.returncode)

第二步是创建IPA文件:

def buildIpa(dirArch, dirDistr):
  print('[--] Run Build Ipa')
  rIpa = subprocess.run(['xcodebuild',
    '-exportArchive',
    '-verbose',
    '-archivePath', '{}/project.xcarchive'.format(dirArch),
    '-exportPath', '{}'.format(dirDistr),
    '-exportOptionsPlist', './{}'.format("ExportOptions.plist")],
    capture_output=True)
  if rIpa.returncode != 0:
    if rIpa.stderr:
      print('[EE] error: {}'.format(rIpa.stderr.decode('UTF-8')))
    else:
      print('[EE] output: {}'.format(rIpa.stdout.decode('UTF-8')))
    sys.exit(rIpa.returncode)

我认为在第一步(构建存档)中,我需要添加一些密钥来收集有关清单的其他信息。但我不明白该怎么做。请告诉我在哪里可以阅读它。 在 Xcode 中,这是通过附加选项完成的:

原来很简单。有必要通过 XCode 创建一个带有附加参数(无线)的 ipa 文件,然后将 ExportOptions.plist 文件复制到文件夹中。它已经包含其他参数。