如何在没有 Xcode 的情况下提交 iOS 应用程序?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/7924085/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How do I submit an iOS app WITHOUT Xcode?
提问by Olie
I am a contract developer. I have written an app (yes, using Xcode!) for a client and now we are ready to ship. 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.
我是合约开发商。我已经为客户编写了一个应用程序(是的,使用 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. (I don't know nor do I want my client's dev account credentials.)
这一切在 6 个月前 [相当] 简单,但我们现在是 Xcode 4,该过程似乎简化为只允许开发人员(团队代理)构建、存档、验证和提交到他自己的帐户。(我不知道也不想要我客户的开发帐户凭据。)
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.
作为最后的手段,我可以把我的电脑拖到他的办公室让他登录,但这并不能扩展到真正的远程工作,这是我所做的大部分工作。我希望有一个解决方案,让我向客户端发送一个带有说明的项目符号列表的二进制文件。
回答by chown
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"
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
Once complete, your app package has been uploaded to the iTunes Store. Click "Next"
You are "Done"!
Your App will show a Status of "Upload Received"
打开后选择“下一步”
输入您的 iTunes Connect Apple ID 和密码,然后选择“下一步”
验证后选择“下一步”
选择您的应用程序,然后单击“下一步”
确认应用兼容性
“选择”要上传的二进制文件
选择并点击“下一步”
点击“发送”开始上传
通过 iTunes Store 进行身份验证需要一些时间
完成后,您的应用程序包已上传到 iTunes Store。点击下一步”
你已经“完成”了!
您的应用程序将显示“已接收上传”状态
Links:
链接:
Apple Doc - Using Application Loader
automating-over-the-air-deployment-for-iphone
How To Upload Your App To iTunes Connect Using Application Loader
回答by Olie
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.
- Make sure code-sign for RELEASE uses client's App-Store profile.
- Get this the same way you did in Xcode 3.2, you need his profile, certificate and private key.
- Build ARCHIVE.
- SHARE archive.
- DO NOT RE-SIGN!
- 编辑方案。
- 设置归档方案以使用 RELEASE 配置。
- 确保 RELEASE 的代码签名使用客户的 App-Store 配置文件。
- 以与在 Xcode 3.2 中相同的方式获取此信息,您需要他的个人资料、证书和私钥。
- 建立档案。
- 共享存档。
- 不要重新签名!
Send binary to client
向客户端发送二进制文件
(Email or whatever.)
(电子邮件或其他。)
Client uses ApplicationLoaderto upload.
客户端使用ApplicationLoader上传。
Watch out for this Xcode/Newsstand problem
(Go up-vote that Q&A if you ran into the problem and it saved your bacon! :)
(如果您遇到问题,请对该问答进行投票,它挽救了您的培根!:)
回答by Olie
I'd send your client Application Loader
(as long as they run OSX 10.6.8+
). It's in /<path-to-xcode-folder>/Applications/Utilities
. Send that .app
over and they should be able to submit a binary with it. You'll still have to walk them through it, but Apple provides a PDF for that.
我会发送您的客户Application Loader
(只要他们运行OSX 10.6.8+
)。它在/<path-to-xcode-folder>/Applications/Utilities
. 发送它.app
,他们应该能够提交一个二进制文件。你仍然需要引导他们完成它,但 Apple 提供了一个 PDF 文件。
回答by Priyanshu Srivastava
There are 2 options: either through Xcode it self using archiving or else making the build and submitting it using application loader. But both involve Xcode and a developer account. So I don`t think that there is any chance of you doing it without using Xcode.
有 2 个选项:通过 Xcode 它自己使用存档,或者使用应用程序加载器进行构建和提交。但两者都涉及 Xcode 和开发者帐户。所以我不认为你有任何机会在不使用 Xcode 的情况下做到这一点。
回答by C?ur
Nowadays, Application Loader is deprecated in favor of Apple's Transporter.
如今,不推荐使用 Application Loader 以支持 Apple 的Transporter。
Package your App as an .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}”
Send the .ipa to client.
- Use Apple's Transporterto upload the .ipa to App Store Connect without Xcode.
将您的应用程序打包为 .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}”
将 .ipa 发送给客户端。
- 使用 Apple 的Transporter将 .ipa 上传到 App Store Connect,无需 Xcode。