简体   繁体   English

如何在没有 Xcode 的情况下提交 iOS 应用程序?

[英]How do I submit an iOS app WITHOUT Xcode?

I am a contract developer.我是一名合同开发商。 I have written an app (yes, using Xcode.) for a client and now we are ready to ship.我已经为客户编写了一个应用程序(是的,使用 Xcode。),现在我们可以发货了。 I would like to send him a copy of his app which he can sign and submit to the iTunes app store but HE DOES NOT HAVE OR USE XCODE.我想向他发送一份他的应用程序副本,他可以签名并提交到 iTunes 应用程序商店,但他没有或使用 XCODE。

(While it's a backup plan, I prefer not to walk him through the process of downloading and installing Xcode (through app store now -- gak.) and then the build & submit that way.) (虽然这是一个备用计划,但我不想引导他完成下载和安装 Xcode 的过程(现在通过应用商店——gak。)然后以这种方式构建和提交。)

This was all [fairly] simple 6 months ago, but we're Xcode 4 now, and the process appears streamlined to only allow the developer (team agent) to build, archive, verify & submit to his own account. 6 个月前,这一切 [相当] 简单,但我们现在是 Xcode 4,并且流程看起来很精简,只允许开发人员(团队代理)构建、存档、验证和提交到他自己的帐户。 (I don't know nor do I want my client's dev account credentials.) (我不知道也不想要我客户的开发帐户凭据。)

As a last resort, I could haul my computer to his office and let him sign-in on it, but that doesn't scale to truly remote work, which is the bulk of what I do.作为最后的手段,我可以把我的电脑拖到他的办公室,让他在上面登录,但这并不适合真正的远程工作,这是我所做的大部分工作。 I'm hoping for a solution that involves me sending a binary to the client with a bullet-list of instructions.我希望有一个解决方案,涉及我向客户端发送二进制文件和指令列表。

Build your App into an .app file with a "Release" schema:将您的应用程序构建到具有“发布”架构的 .app 文件中:

 xcodebuild -target "${PROJECT_NAME}" -sdk "${TARGET_SDK}" -configuration Release

Package your App as an .ipa:将您的应用程序打包为 .ipa:

/usr/bin/xcrun -sdk iphoneos PackageApplication -v "${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}”

Then, run Application Loader (Download/Install Application Loader 2.9 if necessary):然后,运行Application Loader (如有必要,请下载/安装Application Loader 2.9 ):

open -a /Developer/Applications/Utilities/Application\ Loader.app
  • After it opens select "Next"打开后选择“下一步”

    在此处输入图片说明

  • Enter your iTunes Connect Apple ID and Password and select "Next"输入您的 iTunes Connect Apple ID 和密码,然后选择“下一步”

    在此处输入图片说明

  • After your authenticated select "Next"验证后选择“下一步”

    在此处输入图片说明

  • Select your App and click "Next"选择您的应用程序,然后单击“下一步”

    在此处输入图片说明

  • Confirm App compatability确认应用兼容性

    在此处输入图片说明

  • "Choose" the binary file to upload “选择”要上传的二进制文件

    在此处输入图片说明

  • Select and click "Next"选择并点击“下一步”

    在此处输入图片说明

  • Start the upload by clicking "Send"点击“发送”开始上传

    在此处输入图片说明

  • It will will take a few moments to authenticate through the iTunes Store通过 iTunes Store 进行身份验证需要一些时间

    在此处输入图片说明

  • Once complete, your app package has been uploaded to the iTunes Store.完成后,您的应用程序包已上传到 iTunes Store。 Click "Next"点击下一步”

    在此处输入图片说明

  • You are "Done"!你已经“完成”了!

    在此处输入图片说明

  • Your App will show a Status of "Upload Received"您的应用程序将显示“已接收上传”状态

    在此处输入图片说明


Links:链接:

Apple Doc - Using Application Loader Apple Doc - 使用应用程序加载器

automating-over-the-air-deployment-for-iphone 为 iphone 自动进行空中部署

How To Upload Your App To iTunes Connect Using Application Loader 如何使用应用程序加载器将您的应用程序上传到 iTunes Connect

I have accepted chown's answer as the correct one since it is very detailed and led me to the eventual solution, but I wanted to add this bullet-list answer for any future viewers who might want to see things cheat-sheet style.我已接受 chown 的答案作为正确答案,因为它非常详细并引导我找到最终解决方案,但我想为任何可能希望查看备忘单样式的未来观众添加此项目符号列表答案。

Building the binary构建二进制文件

  • Edit schemes.编辑方案。
  • Set archive scheme to use RELEASE configuration.设置归档方案以使用 RELEASE 配置。
  • Make sure code-sign for RELEASE uses client's App-Store profile.确保 RELEASE 的代码签名使用客户的 App-Store 配置文件。
    • Get this the same way you did in Xcode 3.2, you need his profile, certificate and private key.以与在 Xcode 3.2 中相同的方式获取此信息,您需要他的个人资料、证书和私钥。
  • Build ARCHIVE.建立档案。
  • SHARE archive.共享存档。
    • DO NOT RE-SIGN!不要重新签名!

Send binary to client向客户端发送二进制文件

(Email or whatever.) (电子邮件或其他。)

Client uses ApplicationLoader to upload.客户端使用ApplicationLoader上传。

Watch out for this Xcode/Newsstand problem注意这个 Xcode/报亭问题

(Go up-vote that Q&A if you ran into the problem and it saved your bacon! :) (如果您遇到问题,请对该问答进行投票,它挽救了您的培根!:)

Nowadays, Application Loader is deprecated in favor of Apple's Transporter .如今,不推荐使用 Application Loader 以支持 Apple 的Transporter

  1. Package your App as an .ipa:将您的应用程序打包为 .ipa:

     xcodebuild -target "${PROJECT_NAME}" -sdk "${TARGET_SDK}" -configuration Release /usr/bin/xcrun -sdk iphoneos PackageApplication -v "${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}”
  2. Send the .ipa to client.将 .ipa 发送给客户端。

  3. Use Apple's Transporter to upload the .ipa to App Store Connect without Xcode.使用 Apple 的Transporter将 .ipa 上传到 App Store Connect,无需 Xcode。

I'd send your client Application Loader (as long as they run OSX 10.6.8+ ).我会发送您的客户端Application Loader (只要它们运行OSX 10.6.8+ )。 It's in /<path-to-xcode-folder>/Applications/Utilities .它在/<path-to-xcode-folder>/Applications/Utilities Send that .app over and they should be able to submit a binary with it.发送那个.app ,他们应该能够用它提交一个二进制文件。 You'll still have to walk them through it, but Apple providesa PDF for that .你仍然需要引导他们完成它,但 Apple 提供了一个 PDF 文件

There are 2 options: either through Xcode it self using archiving or else making the build and submitting it using application loader.有 2 个选项:通过 Xcode 它自己使用存档,或者使用应用程序加载器进行构建和提交。 But both involve Xcode and a developer account.但两者都涉及 Xcode 和开发者帐户。 So I don`t think that there is any chance of you doing it without using Xcode.所以我不认为你有任何机会在不使用 Xcode 的情况下做到这一点。

There are two ways to upload build to app store connect有两种方法可以将构建上传到应用商店连接

  1. Using Xcode or使用 Xcode 或
  2. Using any of the applications "Application Loader" or the "Transporter" application from app store使用应用商店中的任何应用程序“Application Loader”或“Transporter”应用程序

Note: You have to login with the same credentials as of app store connect注意:您必须使用与应用商店连接相同的凭据登录

Good Luck !!!祝你好运 !!!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM