Я столкнулся с той же проблемой 2 года назад, я решил эту проблему, сохранив значение в цепочке для ключей.
Я использовал библиотеку ниже для хранения значения в цепочке для ключей.
Ссылка: Класс оболочки брелка
Пример кода для сохранения uuid на устройстве:
let deviceId = UIDevice.currentDevice().identifierForVendor?.UUIDString ?? ""
// Saving Id in keyChain
KeychainWrapper.defaultKeychainWrapper().setString(deviceId, forKey: "CurrentDeviceId")
Считывание данных из цепочки для ключей.
let previousDeviceId = KeychainWrapper.defaultKeychainWrapper().stringForKey("CurrentDeviceId")
ifpreviousDeviceId
значение равно nil or blank
, затем приложение устанавливается на устройство в первый раз, иначе ваше приложение было установлено на устройство более одного раза.