Search code examples
objective-cxcodepush-notificationprovisioning-profile

why can't we select provisioning profiles and code signing in xcode 6.1.1 for push notifications


I'm trying to get push notifications to work for both development and production environments

So far it seems like everything is working fine. I followed the steps in the Ray Wenderlich tutorial http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1 and the console seems to be using the php script fine. After all, it says "Message successfully delivered"

However, the notification is not coming through even though the app registers for notifications correctly.

The only thing I can think of that isn't working is that the provisioning profile is attached to a wildcard. So I thought I'd manually change the provisioning profile. But in the Build Settings under the Code Signing there is no longer a list of profiles when I click to change it. Instead it just brings up a stupid text view where you can type stuff. It's blank and has nothing for neither Debug or Release builds.

Am I the only one with this issue?

Again, the provisioning profiles being wrong is just a theory. I don't actually know if it's what's causing the issue.

The strange thing is though... The push notifications were working on development yesterday but not today and literally nothing has changed.



I deleted all the provisioning profiles.

I deleted the app.

I restarted the computer

I downloaded all the provisioning profiles

I restarted the computer

The app doesn't ask if it I want it to receive push notifications even though it used to.

Nothing server side has changed.

The .pem files are still the same when it was working for development and not for production.

The .pem files are made with the correct development and distribution certificates and keys.

The app still does not receive push notifications.

What is wrong?


Solution

  • release builds give a different token than debug builds. Open the console to see your log of the token. remove the log after you're done so no one will see it.