2

我不想详细说明我使用它的目的,但基本上我有一个 python 脚本,可以将应用程序的内容下载到 Xcode 项目中的链接文件夹中。该脚本还包含有关应用程序名称的信息以及其他详细信息。

目前我只是让脚本下载文件,并对 Info.plist 文件进行更改,包括我手动生成的包标识符。之后我跑

xcodebuild -workspace <workspace> -scheme <scheme> -configuration Release archive

我遇到了这个问题,这导致它构建和存档调试配置,所以我基本上删除了该配置,现在它使用发布配置构建。

该过程确实在我的“档案”选项卡中的组织器中放置了一个新项目;但是,如果我尝试将其安装在我的设备上(该设备为我的团队提供了任何捆绑包的配置文件),我会收到“找不到此可执行文件的有效配置文件”错误。我已经尝试使用我的开发人员和分发配置文件对其进行签名(两者都设置为通配符以匹配任何捆绑标识符)

现在,我在 Info.plist 中只更改了 3 件事(我最终将不得不修改图标文件,可能还有闪屏,但现在可以等待)

  • CFBundleDisplayName
  • CFBundleName
  • CFBundle标识符

通常这些值指向一个环境变量${ProductName},我想我可以尝试将我的团队的前缀添加到 BundleIdentifier

我想我主要要问的是,我还需要设置什么吗?我是否需要为特定应用程序从 Apple 创建/下载配置文件?我是否应该考虑为每个应用程序创建新的目标,而不是破解项目 Info.plist 来创建新的应用程序存档?

任何帮助,将不胜感激。~谢谢

4

1 回答 1

0

看来,当您存档时,您应该使用您的开发人员证书进行签名。然后,当您单击分发...按钮(App Store 或 Ad Hoc)时,XCode 的存档选项卡将对其进行适当的签名(可能会覆盖任何以前的签名)。在您在 iTunesConnect 上创建并填写详细信息并且它处于“准备二进制上传”状态之前,它不会执行 App Store(甚至验证) 。

In short I haven't found an easy way to take an archive file and load it directly onto a test device. You will have use the distribute functionality with an Ad Hoc provision and then install that to the device. Fortunately, if you use wildcard provisions you can enter the bundle identifier manually at iTunesConnect so there's no need to create and download new provision files using this functionality.

于 2012-06-27T15:27:49.437 回答