Вы можете использовать это (Swift 3):
UIDevice.current.identifierForVendor!.uuidString
Для более старых версий:
UIDevice.currentDevice().identifierForVendor
или если вам нужна строка:
UIDevice.currentDevice().identifierForVendor!.UUIDString
Больше не существует способа однозначно идентифицировать устройство после того, как пользователь удалил приложение (я). В документации говорится:
Значение этого свойства остается неизменным, пока приложение (или другое приложение от того же поставщика) установлено на устройстве iOS. Значение изменяется, когда пользователь удаляет все приложения этого поставщика с устройства и впоследствии переустанавливает одно или несколько из них.
Вы также можете прочитать эту статью Мэтта Томпсона для получения более подробной информации:
http://nshipster.com/uuid-udid-unique-identifier/
Обновление для Swift 4.1 , вам нужно будет использовать:
UIDevice.current.identifierForVendor?.uuidString