ios iPhone:团队代理以外的开发人员可以构建应用程序进行分发吗

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/629057/
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

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-30 15:44:18  来源:igfitidea点击:

iPhone: Can a dev other than team agent build an app for distribution

iosiphone

提问by

I have a company iphone dev account.

我有一个公司的 iphone 开发帐户。

According to the doc, only the team-agent is allowed to submit a distribution cert and download the distribution provisioning profile.

根据文档,只有团队代理才能提交分发证书并下载分发配置文件。

  1. Can a team only have 1 Team Agent?
  1. 一个团队只能有 1 个团队代理吗?

Also, if that is the case, is there a way around this to allow multiple devs the option to build a distributed version of the app?

另外,如果是这种情况,有没有办法允许多个开发人员选择构建应用程序的分布式版本?

I have another developer who I would like to build and submit the app to itunes. I tried giving him the distribution cert and distribution profile. When he dragged and dropped them into xcode, and checked out windows->organize, it complains

我有另一位开发人员,我想构建并将应用程序提交给 iTunes。我试着给他分发证书和分发配置文件。当他将它们拖放到 xcode 中并检查 windows->organize 时,它​​会抱怨

"assigning identity matching this profile cannot be found in your keychain"

“在您的钥匙串中找不到与此配置文件匹配的身份分配”

So this leads me to believe I need to get my key chain credentials on his machine. I tried exporting a private key and giving it to him, but he was unable to install it.

所以这让我相信我需要在他的机器上获取我的钥匙链凭证。我尝试导出私钥并将其提供给他,但他无法安装它。

Is there anything else I can do?

还有什么我可以做的吗?

I honestly thing its really silly if apple expects one developer to be responsible for building all apps for a company. Hopefully I'm wrong and there is a way to get multiple developers access to building a distribution of an app.

老实说,如果苹果希望一个开发人员负责为一家公司构建所有应用程序,那真的很愚蠢。希望我错了,有一种方法可以让多个开发人员访问构建应用程序的分发版。

Thank you

谢谢

回答by rob5408

NOTE: This process is heavily simplified in XCode 4 (although not personally tested by me) with importing and exporting of developer profiles through the Organizer window (Developer Profile section).

注意:这个过程在 XCode 4 中得到了极大的简化(虽然我没有亲自测试过),通过管理器窗口(开发人员配置文件部分)导入和导出开发人员配置文件。

This is how I got it working.

这就是我让它工作的方式。

1) Login to the iOS Provisioning Portal as the Agent.

1) 以代理身份登录 iOS Provisioning Portal。

2) Run through the process of making the Distribution Certificate Signing Request / Provisioning Profile: http://developer.apple.com/iphone/manage/distribution/index.action. These instructions a re super long, but pretty clear and necessary.

2) 运行制作分发证书签名请求/配置文件的过程:http: //developer.apple.com/iphone/manage/distribution/index.action。这些说明非常长,但非常清晰和必要。

3) Pay extra attention to the section "Obtaining your iOS Distribution Certificate" > "Saving your Private Key and Transferring to Other Systems" on that page. It describes how to generate and save the Agent's .p12 file.

3) 请特别注意该页面上的“获取您的 iOS 分发证书”>“保存您的私钥并传输到其他系统”部分。它描述了如何生成和保存代理的 .p12 文件。

4) Now invite other developer(s) to be part of the team in the Member Center: https://developer.apple.com/membercenter/index.action#invitations

4) 现在在会员中心邀请其他开发者加入团队:https: //developer.apple.com/membercenter/index.action#invitations

5) Back in the iOS Provisioning Portal, download the app's Distribution Certificate (Certificates > Distribution (tab)). Should be named "distribution_identity.cer"

5) 返回 iOS Provisioning Portal,下载应用程序的分发证书(证书 > 分发(选项卡))。应命名为“distribution_identity.cer”

6) Now download the Distribution Provisioning Profile (Provisioning > Distribution (tab)). Should be named "whatever_you_named_it.mobileprovision"

6) 现在下载分发供应配置文件(供应 > 分发(选项卡))。应该命名为“whatever_you_named_it.mobileprovision”

7) Email those two files along with the Agent's .p12 file to your other developer machine.

7) 将这两个文件与代理的 .p12 文件一起通过电子邮件发送到您的另一台开发人员机器。

8) On the developer's machine, double-click the distribution_identity.cer file and it should load up in Keychain Access

8) 在开发者的机器上,双击 distribution_identity.cer 文件,它应该会在 Keychain Access 中加载

9) Drag the .p12 file to Keychain and it should automatically put the identity under the certificate

9) 将 .p12 文件拖到 Keychain 中,它应该会自动将身份放在证书下

10) Drag the whatever_you_named_it.mobileprovision file into XCode.

10) 将whatever_you_named_it.mobileprovision 文件拖到XCode 中。

11) In each of the Project and Build's Info windows, set the Code Signing Identity to the "iPhone Distribution - Your Company" identity which should now be available.

11) 在每个 Project 和 Build 的 Info 窗口中,将代码签名标识设置为现在应该可用的“iPhone Distribution - Your Company”标识。

Hope that helps. Rob

希望有帮助。抢

回答by LightMan

Just another tutorial step by step, but slightly different, the certificates have been already installed in the team's agent keychain, so it explains how to export the .p12 files from the keychain:

只是另一个逐步教程,但略有不同,证书已经安装在团队的代理钥匙串中,因此它解释了如何从钥匙串导出 .p12 文件:

how-to-share-an-ios-distribution-certificate

How-to-share-an-ios-distribution-certificate

回答by Sophie Alpert

You definitely should be able to build your app with a distribution certificate and profile on your coworker's machine.

您绝对应该能够在您同事的机器上使用分发证书和配置文件构建您的应用程序。

Are you sure that the distribution certificate and provisioning profile are installed correctly? If you can build apps with the development certificate but not the deployment one, check to make sure that everything's properly installed in the keychain and that the correct provisioning profile is selected in the settings for the active target.

您确定分发证书和配置文件安装正确吗?如果您可以使用开发证书而不是部署证书构建应用程序,请检查以确保所有内容都正确安装在钥匙串中,并且在活动目标的设置中选择了正确的配置文件。

回答by digdog

You can copy the private key in this way, but it's really UNSAFE:

可以通过这种方式复制私钥,但确实不安全:

Give him your login.keychain file (located in ~/Library/Keychains/), and let him open it with Keychain.app, and ask him to drag your private key to his login.keychain.

给他你的 login.keychain 文件(位于 ~/Library/Keychains/),让他用 Keychain.app 打开它,让他把你的私钥拖到他的 login.keychain 中。

Apple also said you should keep your private key secured, if you need to reinstall your system, make sure you backup the login.keychain file.

Apple 还表示您应该保护您的私钥,如果您需要重新安装系统,请确保备份 login.keychain 文件。