Live data from Hacker News

iOS developers: Say goodbye to UDIDs

developer.apple.com

11–20 of 45 posts

Re: iOS developers: Say goodbye to UDIDs

#11
post #9

It's not a big deal. Just use the: [[ASIdentifierManager sharedManager] advertisingIdentifier]; for advertising across apps from different vendors or: [[UIDevice currentDevice] identifierForVendor]; for tracking your own library of apps or save a: CFUUIDCreate(); for tracking a specific app. Developers who are upset that these IDs could be changed by the user if they restore their device or deliberately reset them ar…

> but if you truly need long-term persistent, unique identification users, have them log into your service instead of trying to steal their identity without permission. I think the idea here is that some services just plain don't have login flows, and are marginal enough that they might see massive use-decreases if they begin to hassle their users to create yet another account to use their service. If the user loses…

That makes no sense.

UDIDs are fundamentally flawed methods of associating data on your server with your users. The data loss scenario is similar to a scenario inherent in using UDIDs. Buying a new device means that you've lost all your data, with no way to restore it to the new device (besides creating a fully-fledged sign up system, which you've ruled out.)

Vendor identifiers fix this. The vendor identifier is only lost when the app is uninstalled. It's backed up and can be restored onto new devices when you upgrade.

Do you really think it's surprising to lose your data when you uninstall an app? It completely follows the "Principle of Least Surprise" to lose your data, it explicitly says you'll lose it when you uninstall apps. If you want to persist data beyond the lifecycle of an app installation, you should probably consider a sign up system at that point.

Re: iOS developers: Say goodbye to UDIDs

#13

It's not a big deal. Just use the: [[ASIdentifierManager sharedManager] advertisingIdentifier]; for advertising across apps from different vendors or: [[UIDevice currentDevice] identifierForVendor]; for tracking your own library of apps or save a: CFUUIDCreate(); for tracking a specific app. Developers who are upset that these IDs could be changed by the user if they restore their device or deliberately reset them ar…

I've been using this library for my projects:

https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for...

MAC Address based solutions are still okay right?

Re: iOS developers: Say goodbye to UDIDs

#14
post #2

I vaguely remember some apps using the MAC address of the WiFi interface as an identifier. Has this been banned yet?

Maybe yes maybe no, but either way that's not a good solution. iOS 6 - use vendor identifier iOS 5 - create an ID via CFUUIDCreate() and save it iOS 4 - can be safely excluded from support

> Maybe yes maybe no, but either way that's not a good solution.

I'm asking this as an end user - I want to see this usage banned so that apps cannot track me using the MAC address.

Re: iOS developers: Say goodbye to UDIDs

#15
post #13

It's not a big deal. Just use the: [[ASIdentifierManager sharedManager] advertisingIdentifier]; for advertising across apps from different vendors or: [[UIDevice currentDevice] identifierForVendor]; for tracking your own library of apps or save a: CFUUIDCreate(); for tracking a specific app. Developers who are upset that these IDs could be changed by the user if they restore their device or deliberately reset them ar…

I've been using this library for my projects: https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for... MAC Address based solutions are still okay right?

Access to MAC addresses will likely never go away.

Also, if you don't need to identify devices per se, you can fallback on a generated GUID which you persist via NSUserDefaults.

It'll identify the user for the lifespan of that app install on the device.

Re: iOS developers: Say goodbye to UDIDs

#16
Was there ever a good reason for using UDID anyway? The only examples I've seen are user tracking for ads (has privacy issues) or a horribly broken login system.

Anyone bothered by this is probably doing something wrong.

Re: iOS developers: Say goodbye to UDIDs

#17

It's not a big deal. Just use the: [[ASIdentifierManager sharedManager] advertisingIdentifier]; for advertising across apps from different vendors or: [[UIDevice currentDevice] identifierForVendor]; for tracking your own library of apps or save a: CFUUIDCreate(); for tracking a specific app. Developers who are upset that these IDs could be changed by the user if they restore their device or deliberately reset them ar…

One problem with both advertisingIdentifier and identifierForVendor is that they are iOS 6+ only. That shuts out 10% of my user base.

Re: iOS developers: Say goodbye to UDIDs

#18
post #14

Earlier quoted context omitted.

Maybe yes maybe no, but either way that's not a good solution. iOS 6 - use vendor identifier iOS 5 - create an ID via CFUUIDCreate() and save it iOS 4 - can be safely excluded from support

> Maybe yes maybe no, but either way that's not a good solution. I'm asking this as an end user - I want to see this usage banned so that apps cannot track me using the MAC address.

[deleted]

Re: iOS developers: Say goodbye to UDIDs

#19
The real story here is not the UDID ban which we knew was coming (and is easily counter-able as demonstrated in the comments already), but the forced iPhone 5 support.

Now this wouldn't be an issue except that Apple doesn't allow you to support the iPhone 5 without targeting iOS 4.3 or higher. So this kills off support for iOS 3.1.3-4.2. This might not seem like such a bad thing, but if you're targeting certain demographics like kids (as I am), it cuts off a significant percentage (7% in my case) of users.

Re: iOS developers: Say goodbye to UDIDs

#20
post #19

The real story here is not the UDID ban which we knew was coming (and is easily counter-able as demonstrated in the comments already), but the forced iPhone 5 support. Now this wouldn't be an issue except that Apple doesn't allow you to support the iPhone 5 without targeting iOS 4.3 or higher. So this kills off support for iOS 3.1.3-4.2. This might not seem like such a bad thing, but if you're targeting certain demog…

Here's the announcement from Apple: https://developer.apple.com/news/?id=3212013b
Post reply on HN