如何在没有 Apple Developer 帐户的情况下在 xcode 6 中创建 ipa?

Posted

技术标签:

【中文标题】如何在没有 Apple Developer 帐户的情况下在 xcode 6 中创建 ipa?【英文标题】:How to create ipa in xcode 6 without Apple Developer account? 【发布时间】:2015-01-11 18:28:05 【问题描述】:

需要为 Ad-Hoc 分发生成 .ipa 文件。客户只提供了证书、私钥和配置文件,这些足以在 Xcode 5 之前创建 .ipa。但在 Xcode 6.1 中,当我导出为 Save For Ad Hoc Deployment 时,它会给出消息

To save for Ad Hoc Deployment, you need to add an Apple ID account that is enrolled in the ios Developer Program for the development team 'xxxxxxxxxx'

是否有任何方法可以在没有开发者帐户凭据的情况下创建 .ipa

【问题讨论】:

【参考方案1】:

从某些时候(例如 Swift 和 Xcode7)开始,当您要制作一个更复杂的构建公式时 - xcodebuild 需要 exportOptionsPlist 参数:

xcodebuild -exportArchive -exportOptionsPlist app.plist  -archivePath app.xcarchive -exportPath app.ipa

并且 app.plist 包含:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
    <key>method</key>
    <string>app-store</string>
    <key>uploadSymbols</key>
    <true/>
    </dict>
</plist>

【讨论】:

Getting: "error: exportArchive: No profiles for 'com.MyApp' were found" with Recovery-Suggestion: "Xcode couldn't find any iOS App Store provisioning profiles matching 'com.MyApp'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild." 添加-allowProvisioningUpdates 选项只会将输出更改为:Team "MyTeam" does not have permission to create "iOS App Store" provisioning profiles. 仍然没有关于这个解决方案的答案?【参考方案2】:

3 种方法可以创建 .ipa 无需 命令和 Apple 开发者帐户

1.快速和最佳

(适用于所有 Xcode、所有 Mac OS,捆绑包可用于 OTA 链接,如 Diawi)

    只需通过设置正确的代码签名身份从 XCode 构建 (Command+B) 您的应用程序 从左下角的XCode's文件搜索,搜索.app(在产品目录下) 右键单击此 .app 文件并选择 在 Finder 中显示 现在,创建目录并将其命名为Payload,将.app 复制到Payload 目录中。 存档/压缩(.zip)此 Payload 目录,将文件扩展名从 .zip 重命名为 .ipa

2。从组织者中提取 .ipa

(适用于所有 Xcode、所有 Mac OS)

    创建存档 转到组织者 通过右键单击并选择在Finder中显示获取存档的位置

    现在右键单击此 .xcarchive 文件并选择显示包内容

    转到路径Products &gt; Applications &gt; YourAppFile

    在 Mac 上打开 iTunes,然后从 Apps 选项卡中的上述路径拖放此 YourAppFile。 (注意:删除之前有相同标识符的应用)

    现在在 iTunes 的 应用程序 选项卡下右键单击您的应用程序,然后选择 在 Finder 中显示,这是您的 .ipa 文件!!!


3.对于拥有 Xcode 5.x 的开发人员

注意: Xcode 5.x 不适用于 El Capitan,通过这种方式,您可以使用任何 Xcode 存档,但您需要 Xcode 5.x 才能创建 .ipa)

    使用任何 Xcode 版本创建存档。 关闭 Xcode。 转到 Xcode 5.x 的管理器窗口,然后从存档选项卡中选择您的存档。 在右上角选择Export,单击标题为Save for Ad Hoc Deployment的单选按钮 单击Next 并选择所需的代码签名身份以保存.ipa

【讨论】:

你好。这个ipa文件不能安装在iphone中 多年来一直使用这些方法 :-) 检查您是否使用了正确的配置文件 第二种方法适用于 xcode 8.3.2。第一个不起作用。 免费的Apple ID 是正确的code signing identity 吗?【参考方案3】:

您还可以使用 Xcode 6 和最新的以下步骤创建 IPA 文件:

    创建项目的构建文件Command+B 转到 Products 文件夹,它会显示应用程序文件,右键单击“在 Finder 中显示”。 创建一个空文件夹并将其命名为“Payload”,然后将您的应用文件复制到该文件夹​​中。 存档有效负载文件夹并将 zip 文件重命名为 YourApp.ipa

【讨论】:

最佳、快速、简单的解决方案!!只是为了更详细地澄清这个答案:创建有效负载空文件夹->创建一个空文件夹并将其命名为“有效负载”。 @DaxeshPatel 我如何进入这个“产品”文件夹? 发现 Products 文件夹位于您使用左键单击和“显示包内容”进入的文件夹的根目录中。顺便说一句,这个解决方案有效..谢谢。 @SmartHome 是的,你是对的。虽然它会右键单击。 这适用于我在 Xcode 7.2 中在 iOS 9.3 设备上运行应用程序。注意:本文中的“存档”仅表示(右键单击)“压缩”。【参考方案4】:

还有更好的方法,无需执行所有命令行操作。

选择“保存用于临时部署”并单击下一步。 然后打开“选择开发团队”下拉菜单。它将在底部有“使用本地歌唱资产”选项。选择此选项并单击选择。

给你。构建将由 Xcode 创建,无需 Apple ID 帐户。

【讨论】:

正确。不幸的是,该选项在 Xcode 6 中不可用。它仅在 Xcode 7 中可用。 xCode 7 中的“Save for Ad Hoc Development”选项在哪里? @JungleJim,请查看随附的问题图片。 @AsifBilal 谢谢,但如果没有开发者帐户,我首先不知道如何进入该屏幕。当我在连接了 iOs 设备的情况下转到 [Product][Archive] 时,它只会显示“构建失败”。通用 iOs 设备也是如此。当我为模拟器进行构建时,构建成功,但是当我单击 [Product] 时,[Archive] 会褪色并且无法选择。还是我一开始就去错误的地方进入“组织者 - 档案”屏幕? @JungleJim,当您使用 iOS 设备访问 [Product][Archive] 时,尝试找出它引发“Build Failed”错误的原因。找出原因后,解决它。并按照上述步骤构建 ipa 文件。【参考方案5】:

另一种解决方案是使用 Xcode 5.1。

【讨论】:

【参考方案6】:

终于找到了一种使用xcodebuild 命令创建.ipa build 的方法。

    右键单击管理器上的Archive。 点击Show in Finder

    您可以在 Finder 中看到 .xcarchive 文件。

    打开Terminalcd.xcarchive路径。

    使用以下命令生成.ipa文件。

这会将.ipa 保存在桌面上。

xcodebuild -exportArchive -exportFormat ipa -archivePath <FILE_NAME>.xcarchive -exportPath ~/Desktop/<FILE_NAME>.ipa

仍在寻找更好的解决方案,不知道为什么 Apple 从 Xcode 6 中删除了此功能 :(

【讨论】:

我想在第 3 步之后复制 .xcarchive 并将其粘贴到桌面上,然后在第 4 步中打开终端并 cd 到桌面而不是长文件路径:P 我尝试使用 Xcode 6.1 做同样的事情,但我的 IPA 无法安装在设备上。我想出了解决方案,您需要在上述命令中使用“-exportProvisioningProfile ”选项指定您的配置文件名称。 @PankajRathor 的值是什么。是我的名字出现在 Xcode 应用程序设置的“常规”->“身份”选项卡下的“团队”下吗? 这个答案现在可能已经过时了。 无效选项'-exportFormat'

以上是关于如何在没有 Apple Developer 帐户的情况下在 xcode 6 中创建 ipa?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 iTunesAccount 帐户添加或链接到其他人的 Apple Developer 帐户?

将开发者添加到 Apple Developer 帐户

如何使用 https://developer.apple.com 生成 iOS 开发证书?

无法在两个 Apple Developer 帐户之间转移应用

iTunes Connect 和 Apple Developer Portal

如果我更改与 Apple Developer 帐户关联的 Apple id,会发生啥情况?