views:

946

answers:

2

This is a question that has been bugging me for a while. I started my app (now submitted -- not yet approved) not wishing to get into the mess that is APNS (Push).

I did the following:

iPhone Developer Center: Provisioning Portal->Provisioning: Then I created a Development and a Distribution Provisioning Profile. I installed both in XCode. Everything hunky dory. The Development profile scares me a bit by expiring so soon (90 days) but I can remove it from the iPhone(s) and sign it with a new one later. I tested using the Development profile, and later to submitted it by signing it with the Distribution profile. I then uploaded the Distribution profile-signed app to iTunesConnect (app store).

Okay, I understand that much. Now, what I don't understand is this: Now that I understand the theories and methods behind how Push works, I am wishing to add it to my app.

I already went under: iPhone Developer Center: Provisioning Portal->App IDs: and created a Development Provisioning Profile and Distribution Provisioning Profile there (push & in-app purchase enabled).

Here is where it gets confusing to me. All the books and docs I have read say that I have to sign the app with this "App ID" provisioning profile (push-enabled) from now on.

Does that mean I no longer ever use the previously created provisioning profiles?

If I were to import these "App ID" provisioning profiles into Xcode they will exist alongside my previously generated "non-push" profiles. ~/Library/Mobile Devices/Provisioning Profiles now has 2 files. One Devel and one Distrib. It will now have 4 even though for this app I will not use the "non-push" anymore right? (actually, since they are locked by using bundle-codes and app ids i will never use it again if all of my further versions of this app use Push?)

Confused.

Can anyone enlighten me? Why not use the "App ID" profiles in the first place for everyone -- even if you are not gonna use push? Would keep it simpler. Should I only generate "Push Enabled" profiles from now on -- even if i am not sure I am gonna use push (or for that matter in-app purchase)?

Please give me some insight. I do not wanna do this wrong.

Thanks!

Jann

+1  A: 

Based on what you stated,

All the books and docs I have read say that I have to sign the app with this "App ID" provisioning profile (push-enabled) from now on.

it seems that your original certificates will not be valid. I am not sure why Apple does this, but they make it quite clear that provisions using Push are NOT the same as those that do not.

My assumption is based on this: A provisioning profile that has a "wildcard" bundle ID cannot use APNS. They are very strict about what is what.

I am not sure of the reason either, but I would assume it has to do with security and other factors.

Moshe
A: 

I think there would be some edit options besides downloading options for provisioning files. not sure much on this..

Pramod Jain