将 iPhone 存档交给经销商
我为外部经销商开发了一个应用程序。现在,他们想要发布该应用程序。
我决定使用 Xcode 创建完整应用程序的 xcarchive。但我对包标识符有疑问。我是否需要选择一个标识符,然后分销商创建配置文件和证书?
如果您能告诉我我需要寻找什么,那就太好了!
I've developed an application for an extern distributor. Now, they want to publish the application.
I decided to create an xcarchive of the complete app with Xcode. But I have problems with the bundle identifier. Have I to choose an identifier and the distributor creates the provisiong profile and the certificate?
Would be great if you can tell me what I have to look for!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您的经销商需要拥有“公司”Apple 开发者帐户。
他们邀请您作为“成员”加入他们的组织,
您接受他们的邀请。
下次您登录developer.apple.come时,您将看到一个团队下拉列表(您的团队和他们的团队),
选择他们的团队。
现在,转到 iOS 配置门户 -> 证书。生成开发者证书。他们必须批准这一点,所以让他们知道请求即将到来。
一旦您拥有开发人员证书,他们将需要为相关 AppID 制作\修改开发人员配置文件,并在配置文件中启用您的证书。
创建此配置文件后,您可以下载它。
现在您拥有了完整的捆绑 ID(GUID 和“com.customer.app”)。
现在您将要发布的 Code Sign Identity 更改为“iPhone Developer”。
您可以使用开发人员配置文件构建并存档应用程序。
在管理器中,您将看到刚刚构建的应用程序,右键单击该应用程序并执行“在查找器中显示”。
压缩 .XCARCHIVE 文件并将其发送给您的经销商。
他们将解压缩并双击 .XCARCHIVE 文件,这会将其导入到 XCode 的管理器中。
他们可以从 Organizer 中使用用于编译应用程序的相同捆绑 ID 重新签名“iPhone 分发”应用程序。
他们可以按照他们认为合适的方式分发它。
Your Distributor needs to have a "Company" Apple Developer Account.
They invite you to their organization as a "Member"
You accept their invitation.
the next time you login to developer.apple.come you will be presented with a Team droplist (your team and their team)
Select Their team.
Now, go to the iOS provisioning Portal->Certificates. Generate a Developer Certificate. they will have to approve this, so let them know the request is coming.
Once you have a Developer Certificate they will need to make\modify a Developer Provisioning Profile, with your certificate enabled in the Profile, for the AppID in question.
Once this Profile is created you download it.
Now you have their Full Bundle ID (the GUID and the "com.customer.app")
Now you change Code Sign Identity for Release to "iPhone Developer".
You Build and Archive the app using the Developer Provisioning Profile.
In the Organizer you will see the app you just built, right-click on the app and do a "show in finder".
Zip up the .XCARCHIVE file and send it to your Distributor.
They will unzip and double-click on the .XCARCHIVE file, this will import it into their XCode's Organizer.
From Organizer they can ReSign the app for "iPhone Distribution" using the same Bundle ID that was used to compile the app.
They can distribute it as they see fit.
我假设您为此使用 xCode 4 (或更高版本)。
您需要打开方案编辑器(“运行”和“停止”按钮旁边的下拉菜单包含此内容)。选择“存档”方案并确保它正在构建应用程序的发布(或分发)副本,而不是调试版本。
问题的推测部分,每个发行商可能有所不同,我假设您的发行商已经设置为 iOS 开发人员(即他们已经可以在应用程序商店上分发),我只是将捆绑包标识符设置为适当的 com.app 。分销商名称.应用程序名称。
在 xCode 4 中,您无需担心任何配置文件等或证书,只需将其存档并将其发送给经销商即可。只需向他们发送捆绑包 ID 的注释,如果他们使用的是 xCode 4,他们应该能够自己在 xCode 中进行所有代码签名。
如果经销商对此不满意,他们通常只会给我们发电子邮件,然后我们会解决。但只需存档应用程序的发布版本并将其发送给他们,让他们知道您用作捆绑包 ID 的内容(如果您随着开发的进展而增加了版本号,也让他们知道版本号)。
I'll assume that you're using xCode 4 (or above ) for this.
You're going to want to open your scheme editor (The drop down menu next to the 'Run' and 'Stop' button contains this). Select the 'Archive' scheme and make sure that it's building a release (or distribution ) copy of your app and not a debug version.
The speculative part of the question, it's probably different for each distributor, I'm assuming your distributor is already set up as an iOS Developer (ie they can distribute on the app store already) I just set the bundle identifier to something appropriate com.nameOfDistributor.nameOfApp.
In xCode 4 you don't need to worry about any provisioning profiles etc, or certificates, just archive that up and send it to the distributor. Just send them a note of what the bundle ID was, and they should be able to do all the code signing in xCode themselves if they're using xCode 4 that is.
If the distributor is unhappy with that they usually just email us back and we sort it out. But just archive the release build of the app and send it to them letting them know what you used as a bundle id (also let them know the version number if you've been incrementing that as development has progressed).