如何从控制台 xcodebuild 无线创建 IPA 和 manifest.plist

Posted

技术标签:

【中文标题】如何从控制台 xcodebuild 无线创建 IPA 和 manifest.plist【英文标题】:How to create an IPA and manifest.plist for over-the-air from the console xcodebuild 【发布时间】:2021-07-01 17:29:49 【问题描述】:

我有一个脚本,它分两步收集 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 中,这是通过一个附加选项完成的:

【问题讨论】:

Swift 标签是干什么用的? 不需要,抱歉 【参考方案1】:

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

【讨论】:

以上是关于如何从控制台 xcodebuild 无线创建 IPA 和 manifest.plist的主要内容,如果未能解决你的问题,请参考以下文章

通过 xcodebuild 命令更改目标属性

在没有 Xcode 的情况下创建存档

使用 xcodebuild 从命令行构建 Cocoa 应用程序后,如何运行它?

20m的移动宽带,如何设置使访客网络下载速度不超过1m/s?

ac怎么设置 ac如何设置

如何使用 xcodebuild 构建特定架构?