如何在swift中生成设备特定的唯一uuid

Posted

技术标签:

【中文标题】如何在swift中生成设备特定的唯一uuid【英文标题】:How to generate device specific unique uuid in swift 【发布时间】:2017-04-05 05:49:59 【问题描述】:

我想生成一个特定于设备的随机 uuid,即使用户卸载我的所有应用并重新安装它也不会改变,这与 identifierforvendor 不同。我怎样才能做到这一点是 Swift

【问题讨论】:

【参考方案1】:

您可以使用以下函数来创建 UUID:

func getUniqueDeviceIdentifierAsString() -> String 
    var appName: String? = (Bundle.main.infoDictionary?[(kCFBundleNameKey as? String)] as? String)
    var strApplicationUUID: String = SSKeychain.password(forService: appName, account: "incoding")
    if strApplicationUUID == nil 
        strApplicationUUID = UIDevice.current.identifierForVendor.uuidString
        SSKeychain.setPassword(strApplicationUUID, forService: appName, account: "incoding")
    
    return strApplicationUUID

参考:How to preserve identifierForVendor in ios after uninstalling ios app on device?

【讨论】:

【参考方案2】:

您需要创建随机 UUID 并将其保存到钥匙串。试试下面的链接

https://github.com/taka0125/TAKUUID

【讨论】:

以上是关于如何在swift中生成设备特定的唯一uuid的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Dart 中生成唯一 id

如何在 Python 中生成可重现(带有种子)的随机 UUID

Java中生成的UUID(全局唯一标识符-----(唯一)-------)

如何在 C++ 中生成 UUID,而不使用 boost 库?

如何在 SAP UI5 代码中生成 UUID? [复制]

Hive中生成随机唯一标识ID的方法