Wednesday, May 16, 2012

iPhone Certificate Fog




This question is, in some ways, a follow up on my earlier question regarding Push Notifications. After much time wasted I have more or less concluded that the issues I am running into, particularly with Titanium, are down to my not configuring my Keychain in the right order. I am now contemplating redoing it all from scratch but thought it best to first post a question here to establish the right way. Here is what I am planning to do




  1. Log in to my Apple iOS provisioning portal account, download and install the Apple WWDRCA cert

  2. Open up KeyChain and create a new certificate signing request. I call it myname.certS... .

  3. Go to the provisioning portal account and use the CSR created above to secure my development and production certificates.

  4. Download and install those certs on my machine by double clicking on them

  5. Back in the provisioning portal create my first appID - call it, com.example.push

  6. Back in KeyChain create a new csr - push.certSig... .

  7. Back in the provisioning portal choose the new appID and configure it for Push using the new csr

  8. Still in the provisioning portal select Devices and add the UUIDs for the devices on which I want to test my app

  9. Still in the provisioning portal select Provisioning and create a new development and production provisioning profile for the app. The latter has AdHoc selected. Use the certificates created earlier. At this stage assign only one device in each profile.

  10. Submit the profile, wait then edit it and add the remaining devices - I am doing this because I have read that there is bug somewhere that stops the provisioning profile from using the Push configuration for the appID in question the first time round

  11. Download and install the two provisioning profiles



Well as I write I have followed all of these steps. I then wrote and compiled a simple Titanium mobile project and tried the Install To Device option with the AdHoc profile created above. Everything went swimmingly well and I got my IPA. I took the IPA and fed it to TestFlightApp which reported Invalid Profile: developer build entitlements must have get-task-allow set to true. So I tried again with the Development profile. This time round TestFlightApp accepted the IPA. In installed it on my iPad but still find that registerForPushNotifications is going away into the ether with nothing being reported - no success, no erors... just a defeaning silence.



I have to admit that I am at my wits end here. I am clearly doing something wrong but I haven't got the foggiest idea what it could be. If I had a million dollars I would give em away to anyone who could set me on the right track. Well I don't so I hope someone just puts me on the right track out of sheer goodness





No comments:

Post a Comment