views:

43

answers:

1

My iphone app downloads user specific data from our web server. How can I identify a unique user/device? cookie? ip address? or do I need them to register first?

What are some issues I need to be aware of? best practices?

A: 

You can get the devices UUID by calling

[[UIDevice currentDevice] uniqueIdentifier]

You probably should register the user when the app is launched for the first time. There shouldn't be any issues that people haven't already found answers to and that you can find by searching SO or google.

Can generate your own UUID's using CFUUID

Conceited Code
wouldn't that annoy first time users?
Yaso
@Yaso Sending unique ids to your servers behind peoples backs would likely annoy your users due to privacy concerns. Atleast with registration, your users basically acknowledge your usage of data with your servers.
5ound
There isn't any important information that someone can use when they have the devices UUID. There is probably an app that collects on your iPhone or iPod touch right now (TapTap, Any game with OpenFeint, etc...). If you think the registration would be annoying you can leave it out and just use the UUID to identify them with out collecting any other information. If you are really concerned about privacy then you can generate your own UUID using CFUUID (Check answer again).
Conceited Code
UUID's are totally anonymous, there's no way to get back a user name from them. Note that what may annoy the user, is if they have multiple devices (say iPad and iPhone) and expect the software to know about both of them... which is why at least the option of some kind of registration might be good.Also if you only go by UUID if the user sells their device they have also sold the account they use with you.
Kendall Helmstetter Gelner