如何在Swift中获得设备的唯一ID ?
我需要一个ID在数据库中使用,并在我的社交应用程序中作为我的web服务的API-key。一些东西来跟踪这个设备的日常使用情况,并限制其对数据库的查询。
如何在Swift中获得设备的唯一ID ?
我需要一个ID在数据库中使用,并在我的社交应用程序中作为我的web服务的API-key。一些东西来跟踪这个设备的日常使用情况,并限制其对数据库的查询。
当前回答
我试过了
let UUID = UIDevice.currentDevice().identifierForVendor?.UUIDString
而不是
let UUID = NSUUID().UUIDString
这很有效。
其他回答
你可以在UIDevice类中使用identifierForVendor公共属性
let UUIDValue = UIDevice.currentDevice().identifierForVendor!.UUIDString
print("UUID: \(UUIDValue)")
编辑 斯威夫特3:
UIDevice.current.identifierForVendor!.uuidString
最后编辑
斯威夫特2.2
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let userDefaults = NSUserDefaults.standardUserDefaults()
if userDefaults.objectForKey("ApplicationIdentifier") == nil {
let UUID = NSUUID().UUIDString
userDefaults.setObject(UUID, forKey: "ApplicationIdentifier")
userDefaults.synchronize()
}
return true
}
//Retrieve
print(NSUserDefaults.standardUserDefaults().valueForKey("ApplicationIdentifier")!)
Swift 3。X最新工作代码,使用方便;
let deviceID = UIDevice.current.identifierForVendor!.uuidString
print(deviceID)
if (UIDevice.current.identifierForVendor?.uuidString) != nil
{
self.lblDeviceIdValue.text = UIDevice.current.identifierForVendor?.uuidString
}
我试过了
let UUID = UIDevice.currentDevice().identifierForVendor?.UUIDString
而不是
let UUID = NSUUID().UUIDString
这很有效。