Throw everything you thought you knew about Apple UDIDs out the window. Historically, Apple’s UDIDs have always been a hexadecimal string exactly 40 characters long. Last week, Apple released new hardware. Most notably the iPhone XS, iPhone XS Max, and iPhone XR. On those new devices, they seem to have changed the format of UDIDs. They are now a string of 8 characters, then a hyphen followed by 16 more characters. XXXXXXXX-XXXXXXXXXXXXXXXX
I have no idea why they’d make such a change. It will likely have little to no impact on developers. We use an internal tool that checked the length of a string to determine if the UDID was from an iOS device or an Android device. It made the (now incorrect) assumption that an iOS UDID would be always be exactly 40 characters long. I imagine people may have other pieces of software out there that they’ve written with this same assumption for one reason or another, who will also run into problems. But beyond that, this change is mostly just an oddity for us to “huh” at.
1 reply on “These Aren’t Your Dad’s UDIDs”
How do you even access the UDID, since the relevant APIs were deprecated in iOS 6, and just serve ffffffff followed by the identfierForVendor’s hex digits, no hyphens?