Search code examples
iosxcodexamarin.formsprovisioning-profile

iOS Free Provisioning + AppleID questions


I have a Xamarin Forms App, runs fine on Android, released, now testing on iOS. On Simulator, works fine. Now I want to test on a Real Device. First without any Apple Developer Program subscription using Free Provisioning, and if works, then distribute on Play Store with Apple Developer Program subscription. Reading about Free Provisioning this Xamarin document:

The Apple ID being used must not be connected to any Apple Developer Program.
The Bundle ID used in your app must be unique and cannot have been used in another app previously. Any Bundle ID used with free provisioning CAN NOT be re-used again.

What do these two limitation mean exactly?

1) The Apple ID being used must not be connected to any Apple Developer Program
I have 1 Apple ID, but after tested my App with free provisioning, I want to connect to Apple Developer Program (obviously), as I want to release my App in the App Store. So what is this limitation exactly? I need to create a temporary 2nd Apple ID just for 'Free Provisioning', and when testing on my phone is done, switch back to the real one, which is going to be connected to Apple Dev. Program?

2) Any Bundle ID used with free provisioning CAN NOT be re-used again.
I don't have much knowledge about iOS development, but what it means, I have to rename the Bundle ID (this is like package name for Android?) in VS for the iOS App, THEN I can run via Free Provisioning on my Device? And when testing done, rename back to the original name?

3) If I just connect my friend iPhone to my computer, can I just install my App with Free Provisioning
Question, his AppleID on the phone will be obviusly different to my one on XCode? Does this matter? Or I have to login with my AppleID on that IPhone too? I know it's valid for 1 week, but that's ok, just for testing.

Thanks


Solution

  • 1) The Apple ID being used must not be connected to any Apple Developer Program

    Apple Developer Program means you have paid for it. There are three types of certifications you can choose(enterprise, company, personal). There's no need to create a new apple ID if you just use it for free provisioning. It means if the apple ID has already registered as a paid developer then can't connect to it again.

    2) Any Bundle ID used with free provisioning CAN NOT be re-used again.

    Bundle ID is the unique identifier. Not because you have used it with free provisioning. Even though you are using a real provisioning this identifier must be one and only. So when you are deploying a demo project, please add some suffix with it(demo, test).

    3) If I just connect my friend iPhone to my computer, can I just install my App with Free Provisioning

    No issue with that, you can both use his or yours. It's just for testing. When you have a real developer certification, there will be a max test device limitation. But now never mind.