iOS Dev: Certificates and hiring a freelancer - ios

I have hired a freelancer to build an app for me. I have an individual dev account to which I have added him as a technical user. He has requested either that I send him distribution and development certs plus a provisioning profile OR to make him an admin role in iTunes Connect.
Should I create certificates with my name/email and send them to him? Or with his name/email? Or should I just make him an admin? What is the best/safest course of action? This is just for testing purposes and I will be receiving the source code upon project completion.
Totally new to iOS dev and have been scrounging around the web for a definitive answer. Sorry if this is rudimentary!
Thanks!

You don't need to add him as a Admin at all. If he has a free developer account you can sent him a request to add to your developer account team and can create a development and distribution profile from which developer can download. For certificate request developer need to send the request from him Mac and can download it from developer.apple.com.
For other option i am not sure if it will work because from latest XCode environment developer account needs to be added in Xcode but give it a try.
Other option if you don't at all want to give access to your developer account will be. Create and download the developer and distribution profile and share it with Freelancer.
For Certificate you would be requiring a Mac. Below is a process of creating a certificate:
http://www.aquafadas.com/en/documentation/sample-page/developer-apple-com-2/generating-your-development-certificate/
https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html
Now goto your KeyChain access and can see your certificate there:
Right Click your certificate and export "iPhone Developer..." or "iPhone Distribution.." . Save it to your desktop. It will be a .p12 file and will ask for password while saving.
Share this .p12 file with the freelancer along with password. Share both Developer and Distribution certificate.
So now your freelancer has both Developer and Distribution certificate and provisional profile.

Since he is not the one that will be submitting the app to AppStore, then he should not be an admin. So the admin account is with your credentials.
Usually, if he is an iOS freelancer, most likely he already has an Apple account. So after he creates a certificate signing request, you should generate a development certificate for him, in order to test on real devices - that is, you must add his user to your created team.
However, the certificates-accounts process is not so easy, so I'd recommend you to also read: http://escoz.com/blog/demystifying-ios-certificates-and-provisioning-files/ .

Related

Is it possible to install provison profile through shared access?

Another developer shared his app with my dev account. But in that case I do not get access to the provision profiles. But my Xcode does not want to run that app on my iPhone. Asks me provision profile.
He also sent me the provision profile(downloaded it and sent me file) but I cannot still install it.
How I can solve the problem without username/password credentials of the creator?
Yes, but you will need to have the developer send you the signing identity for the provisioning profile. This will consist of the iOS Developer Certificate (.cer) and the private key for the certificate (usually a .p12). With those things, you should be able to build and sign the app without the developer having to give you their Apple developer credentials.

iOS Second Developer Certificate

My situation is that I have just hired a second developer to work remotely. He doesn't have a developer account and would like to send me his progress.
At the moment he is using my Apple Developer account with a temporary password but this is not ideal, is there a way that he can have a certificate and I can reset my password?
My Apple developer account is set up as individual by the way
Thanks
If you are not going to extensively adding and removing the devices then the easiest way is to add all the devices, create dev and distribution profiles and certificate download all in your Xcode then simply export and send to him and he can simply import and use the local signing assists option not the online account .
You can export the certificate and the private key for the certificate in the Keychain Access application. You could then send the developer the key, certificate, and the provisioning profile to the other developer, who could then build the app with your provisioning profiles, without direct access to your developer account.
This will be a bit of a hassle if the other developer needs to do a lot of device maintenance on the developer profile (adding / removing devices). If that's not the case, I would simply send him the necessary files and reset your password to prevent having to share full access to the account.

Infact of removing, Member from iOS developer program.

I developed an iPad Application for one of my client.
It was in-house application. They have Apple Enterprise License. So they invite me as a Admin. So I logged in to their portal and created a distribution certificate and in-house provisioning profile. Using that profile I build the project and created an .IPA file and sent it to the client to distribute among their users.
Now they are planing to delete me from iOS developer program. They are not going to do anything to certificate and provisioning profile I created in their portal. I want to confirm that my app is going to run even after they delete me from their account. I search the web but could not find a trusted source.
Please help.
Since I did not get any response I checked it by myself. I created a admin using one of my client's Enterprise account. Then I created a certificate. Then I delete that admin. Then login to the portal using another admin using same machine. I was able to build app using that certificate. So It seems deleting admin account wont effect on the certificate.

iOS Appstore App Update - Code Signing

I have a doubt on Code Signing during Appstore submission. I already submitted an app to appstore with the profiles and certs created and its currrently in appstore. Unfortunately, i lost my machine where i had backup of those profiles and certs. I know that Prov Profile can be downloaded from my developer account.
My Doubt here is, 1) As i dont have backup of .p12, should i need to raise a request for new certificate from my keychain and proceed with that?
2) If so, will users can be able to upgrade the existing app from the appstore?
Thanks in Advance.
Here are your answers
1) As I don't have backup of certificate and .p12, should I need to raise a request for new certificate from my keychain and proceed with that?
Don't worry, when you like to give new update for your application, create new .p12 file and use it. Certificates are used to basically authenticate your machine with developer account.
2) If so, will users can be able to upgrade the existing app from the appstore?
No problem for users, as app store distribution provisioning profile works very different from developer provisioning profile, so no user needs to update.
Just for your info: the signing files for Android are very important, not for iPhone application. For Android, if signing keys are lost, you cannot update apps, whereas for iPhone you can create new certificates and update your apps.
Yes, you can just request a new production certificate from your new machine.
Then use it for your old provisioning profile for the app.
Yes without private key in your keychain, You cant use the existing provision files created with that private key. So you need to create a new Developer/Distribution certificates in developer portal with new Certificates. This will not affect the existing application in appstore.

iOS Publishing App via Apple Developer Invitation

Hey guys I have to publish an App with a foreign Apple Account. I got the invitation and now I can download the Distribution Provisionig Profile. However I also need the valid signing identity - that means that I also have to create a Distribution Certificate but this option is disabled or I only can create a Development Certificate (like shown in the screenshot below).
Am I right that this Distribution Certificate has to be created by the Account Owner? What exactly does he have to do in order to get the available Distribution Provisioning Profile to work on my machine?
I Would be glad for some hints!
The account owner has to export both the distribution certificate and the private key and share them with you. You install them on your computer and everything should work.

Resources