** NOTE: this is not going to work under iOS 7 **
Apple stopped supporting a unique identifier for iOS. This source code solves the problem. It generates a unique identifier based on the mac address of the device in combination with the bundle identifier.
What you need to do:
UIDevice+IdentifierAdditionto your project.
if your are using ARC in your project, you have to add the
-fno-objc-arcflag to both files. Apple ARC Guidelines
[[UIDevice currentDevice] uniqueDeviceIdentifier]to retrieve the unique identifier (it's a hash of your Bundle ID + MAC address)
[[UIDevice currentDevice] uniqueGlobalDeviceIdentifier]to retrieve a global unique identifier (it's a hash of the MAC address, used for tracking between different apps).
have fun and follow gekitz ;)
//Thanks to Erica Sadun for her UIDevice+Hardware Addition (used for the mac address retrieval).
see license file.