1

In my iOS application, the user has to register their unique device for full access of the app. The registration is done in the backend.

My Problem:

I need an `unique identifier` from the iPhone for the above purpose, 
and which should be same even after the user uninstalled and reinstalled the app.

It seems like apple doesn't allow the developer to fetch:

  • UUID
  • UDID
  • IMEI Number
  • Device Token (If there is no push notification registration, and my app also have no push notifications)
  • advertisingIdentifier (if there is no/proper Ad integration)

And the followings are not seems to be the same after reinstallation:

  • MAC Address
  • identifierForVendor
  • My own UUID creation at first start up with CFUUIDCreate.

I know this question may seems like duplicate. But I searched a lot in Stack,Google and so many blogs and sites. But couldn't able to find a proper solution. If someone knows this, please guide me. Thanking you in advance.

Thampuran
  • 644
  • 5
  • 22
  • 1
    What happens when the user sells/gives away their current device and gets a new one? Will the new owner get access to their account? – Tom Harrington Nov 16 '14 at 16:41
  • 1
    It would be better to have the user register with a username/password. If you **really** need per-device identification, then you can generate a UUID and store it in the keychain. – The Paramagnetic Croissant Nov 16 '14 at 17:05
  • You need an alternative scheme and we can help you finding one if we get a better understanding what role the Unique Device Id would have – Lucas van Dongen Nov 16 '14 at 17:27
  • @TomHarrington: Yes, otherwise, the owner have to deauthenticate the registratin for the particular device from the back end UI. – Thampuran Nov 16 '14 at 17:38
  • @TheParamagneticCroissant: No, we can't because, this app has to show several details depending on the device, before login, and the user login at every time seems like a mess to my client. – Thampuran Nov 16 '14 at 17:40
  • @Thampuran In reply to your comment on the answer (you should have commented to the question, not the answer). Why would Apple care if you store data in the keychain? – rmaddy Nov 16 '14 at 17:45
  • @rmaddy: Sorry for that. And thanks for the suggestion. But, one more, will this work if iCloud KeyChain synchronisation is enabled? – Thampuran Nov 16 '14 at 17:48
  • If your app is setup to work with iCloud keychain then that would be a problem since all of the user's devices would end up sharing the same UUID you generate. So don't enable iCloud keychain support in your app. – rmaddy Nov 16 '14 at 17:52
  • @rmaddy: Ok, :) Thank you very much for your valuable time and effort. :) – Thampuran Nov 16 '14 at 18:11

0 Answers0