I don't understand Xcode 5's provisioning profile automatic management

1.6k views Asked by At

I am the "Agent" on an Apple Developer Account with a team of four other developers (five Apple IDs total). The other developers on the account have an Access and Roles level of "Member." We'll use Sally Smith as my example team member on Acme Development Co.

In Xcode 5, Sally Smith puts in her Apple ID into the Accounts tab of Preferences and sees Acme Development Co listed under the names of teams she is a member of.

If she clicks "View Detail..." she sees nothing in the Signing Identities box and nothing in the Provisioning Profiles box. Clicking refresh:

  1. Prompts her to submit a certificate signing request to Apple
  2. Sends me an email from the Developer Portal for CSR approval
  3. Finally downloads her developer certificate into her keychain

Now, Sally Smith needs to add her device to the Developer Portal. She plugs it in, clicks "Use For Development" in Xcode 5's Organizer window, and then she receives an error that she doesn't have access privileges to add devices to the Acme Development Co account. As far as I can tell, she cannot proceed on her own. So, I manually copy + paste the UDID into the Developer Portal.

Okay, now how do we get Provisioning Profiles onto Sally's computer?

If Sally clicks the refresh button on the Acme Development Co team sheet in the Accounts section of Preferences, then she doesn't download anything.

If I click the refresh button on the Acme Development Co team sheet in the Accounts section of Preferences, then I get new Provisioning Profiles. Back to Sally's machine - still nothing.

What am I doing wrong?

I've read the "App Distribution Guide" specifically the section on "Maintaining Identifiers, Devices, and Profiles" (link here). Of particular interest is the quote:

Because Xcode creates and manages team provisioning profiles for you, you only create a development provisioning profile if you want to restrict development of an app to specific team members and devices.

Correct. I don't want to "restrict development of an app to specific team members and devices."

I already know how to do this manually through the Developer Portal: upload CSR, download certs, create App IDs, manually add device IDs, create Provisioning Profiles, download them to my machine. I'm not interested in those answers.

My question is how do I let Xcode do this for me and my team members automatically through the Accounts tab of Preferences.

1

There are 1 answers

0
user3735647 On

I have the feeling that there you are linking somehow the devices you test on and certificates from the way I read your post. I might be wrong tho, however:

I have a similar problem that forces me to download a certificate manually for the simple reason that I am not admin/agent of the developer account. If you want your team member to be able to create archives with its member privileges you got one of two options:

  1. You either send her the downloaded Certificate that was used to create the provisioning profile.

  2. If you don't want to give her the certificate you can sign her own certificate request, but in this situation you need to remake the provisioning profile with her signed certificate.

I am so afraid that this will be also the answer to my question.. I really hope that someone will prove me wrong.

Forgot to add, the answer to your final question is that you can't let xcode handle those automatically, unless you sign certificates for every single one of them, and use them to create profiles for every single one of them.