既然 Application Loader 不再包含在 Xcode 11中,如何上传 IPA

我有点不敢问这个问题,因为这个问题对我来说似乎很严重,但我没有看到任何人对此感到恐慌。我有点害怕听起来有点疯狂,但我还是决定这么做:

正如我们可以在苹果的文章 最新提交资料中读到的:

从 Xcode 11开始,Application Loader 不再包含在 有关如何使用 Xcode 将应用程序上传到 AppStore Connect 的详细信息,请参阅 Xcode 帮助。

对于使用 Phonegap 构建服务的个人和组织来说,在知道我们无法访问 Xcode 项目文件的情况下,询问自己如何将 IPA 放到网上是合法的。

苹果给了我们一个新的工具,叫做 档案管理员,但是我们可以在 文件上读到:

在“归档”组织程序中,选择要上载的归档文件,然后 单击“分发应用程序”。

好的,我的存档在哪里? 一个 IPA 被认为是一个存档吗? 我如何将我的 IPA 集成到这个软件中?

也许我还没有找到摆在我面前的解决方案,但是现在我特别担心如果没有可替代的应用程序加载器工具,Phonegap 构建的未来。

那么,你是否也面临着同样的问题,你是否找到了解决方案? (除了迁移到科尔多瓦)

我知道由于 UIWebView 的贬值和 Cordova 与 WKWebView 的低兼容性,混合应用程序的寿命不会很长,但我不能相信苹果决定在没有任何警告的情况下终止 Phonegap 的构建。和往常一样,Phonegap 的队伍不是很健谈。

剪辑

好吧,用下面的命令传输你的 ipa 是可能的,但是它工作了吗? 因为我有 Xcode (10)的旧版本,所以当 Xcode 11发布的时候它将被弃用?

xcrun altool --upload-app --type ios --file "path/to/application.ipa" --username "YOUR_ITMC_USER" --password "YOUR_ITMC_PASSWORD"
68604 次浏览

I am using XCode 11 GM Seed 2 (11A420a). I've tried

xcrun altool --upload-app --type ios --file "path/to/application.ipa"
--username "YOUR_ITMC_USER" --password "YOUR_ITMC_PASSWORD"

But it didn't work for me as it were generating an error code like "Error Domain=ITunesSoftwareServiceErrorDomain Code=-22014.

I generated an App Store API Key (see https://appstoreconnect.apple.com/access/api), saved in in my ~/.appstoreconnect/private_keys directory and made this bash script named applicationloader.sh:

#!/bin/bash
APPFILE=$1
set -euo pipefail


# key is in ~/.appstoreconnect/private_keys
KEY="<the key part of the AuthKey_key.p8 file>"
ISSUER="<YOUR ISSUER ID>"
xcrun altool --upload-app --type ios --file $APPFILE --apiKey $KEY --apiIssuer $ISSUER

Then (after a chmod a+x applicationloader.sh) I just type

applicationloader.sh app.ipa

and the app uploads to testflight no problem.

Hope this helps.

November 2019 - the new "Transporter" app

enter image description here

  1. You have to get, from the ordinary mac app store, the Apple app "Transporter". To be clear click the ordinary "App Store" icon, in the icon bar, on your mac, as if you were an ordinary consumer and not a dev. Search "Apple Transporter" and get it. ("Transporter" is totally free).

  2. In current Xcode. As usual, increase the build number, disconnect tethered phones, and click "Archive" as usual. (Don't forget to not-select a simulator!)

  3. When complete, click "Distribute App" in the usual way. Do select "App Store Connect" in the usual way. But. Then select Export ... do NOT select upload.

enter image description here

  1. You will be asked where to save to - be sure to choose your Desktop.

  2. A folder (not file) will be left on your desktop. Notice the current time of day to distinguish the correct folder. (It's annoying when you get the wrong folder!)

  3. In the folder is an ".ipa" file. Everything else is NOT used / of no value whatsoever.

  4. Launch the "Transporter" app. Simply drag only the ipa file into the Transporter app.

Useful Transporter app Tip:

Be sure to look at the Preferences of the Transporter app. It is possible to get rid of (one) of the useless "OK" clicks.

--

Historic notes -

At one point, around Sept 2019, incredibly, appstoreconnect was *not working in Safari for some months. You had to use Chrome. (No, really!) This is now all irrelevant.

Enzo's answer works like a charm. But for those who are confusing like me you need to generate an app-specific password here: https://appleid.apple.com/account/manage

(I know, I'm responding to Enzo's answer here but I'm unable to comment)

From Console you can do:

xcrun altool --upload-app --type ios --file <Path-to-ipa> --username <Username> --password <One-time-pass>

Remember to use the one time pass from https://appleid.apple.com/account/manage and to omit the double quotes on PATH, USERNAME, and PASSWORD

Apple transporter

There is also a new app that Apple released that allows developers to send files to App Store Connect

https://apps.apple.com/us/app/transporter/id1450874784?mt=12

Xcode supports uploading apps from the Organizer window or from the command line with xcodebuild or xcrun altool. Application Loader is no longer included with Xcode. (29008875)

xcrun altool --upload-app --type ios --file <Path> --username <Username> --password <One-time-pass>

Apple also launched transporter app to upload direct ipa to itunes connect.

What exactly does this mean "the key part of the AuthKey_key.p8 file" Sorry unable to comment, why everything these days so bloody annoyingly complicated when it needn't be

Apple today announced that it is making a new version of its Transporter developer application available on the Mac App Store. This app allows developers to easily upload files to App Store Connect and more.

Available in the Mac AppStore

Transporter

Apple Just launched transporter app to submit app to itunesconnect

https://apps.apple.com/us/app/transporter/id1450874784?mt=12

Apple Has introduced Transporter App on App Store you can download it and use it instead of Application Loader

Okay, where's my archive? Is an IPA considered an archive? How do I integrate my IPA into this software?

The archive section will create your IPA file, and let you upload it directly to the apple developer area, ready to submit to the store.

In Xcode, from the menu at the top click "Product" and then "Archive". Follow the onscreen instructions. At this point your IPA file is created. You can choose to automatically distribute your file to the appstore, but I suggest clicking the "Validate App" option first, which will re-request the correct certificates/provisions and give you a summary of any issues. If no issues you can click "Distribute App" and it will upload the IPA file to your Appstore Connect (formerly iTunes Connect) area.

Here are 3 options for 2020 upload tools from apple

https://help.apple.com/app-store-connect/#/devb1c185036

Upload your app binary files with Xcode

Upload your app binary files with altool

Upload your app binary files with the Transporter app