Apple Sneaks A Big Change Into iOS 5: Phasing Out Developer Access To The UDID

Apple is making a lot of big changes to its mobile operating system with iOS 5, which is dribbling out in betas for developers ahead of a general release later this year. But there is one big change some developers are just starting to take notice of that Apple isn’t talking about that much. In a recent update to the documentation for iOS 5 (which is only available to registered Apple developers, but a copy was forwarded to me), Apple notes that it will be phasing out access to the unique device identifier, or UDID, on iOS devices such as iPhones and iPads.

This is a big deal, especially for any mobile ad networks, game networks or any app which relies on the UDID to identify users. Many apps and mobile ad networks, for instance, uses the UDID or a hashed version to keep track of who their users are and what actions they have taken. App publishers are now supposed to create their own unique identifiers to keep track of users going forward, which means they may have to throw all of their historical user data out the window and start from scratch.

Here is the language from the Apple Developer documentation:

Deprecated in iOS 5.0

uniqueIdentifier
An alphanumeric string unique to each device based on various hardware details. (read-only) (Deprecated in iOS 5.0. Instead, create a unique identifier specific to your app.)

The change may be in response to privacy concerns or as a way to pre-empt them. Mobile ad networks, for instance, use the UDID to target ads. It is not clear whether Apple itself will stop relying on the UDID as a unique identifier for iAds, Game Center or other services. “I guarantee Apple will not stop using UDID,” predicts one mobile industry CEO. If Apple does continue to use UDID for itself but denies it to developers that would be an “extremely lopsided change.” It would give Game Center and iAds yet one more advantage over competing third-party services.

If you are an iPhone developer, please weigh in with your comments below. How much of a hassle will this change cause, or is it just a minor annoyance?