【问题标题】:Why identifierForVendor Is not return unique UUID为什么 identifierForVendor 不返回唯一的 UUID
【发布时间】:2019-07-04 17:50:22
【问题描述】:

在 swift 中,我们想要唯一的设备 ID 的应用程序。但如果我重新安装相同的应用程序,将不会获得唯一的 UUID。

以下是我们获取 UUID 的方式:

if let uuid = UIDevice.current.identifierForVendor?.uuidString { print(uuid) }

【问题讨论】:

  • 到目前为止你尝试过什么?如果您不提供代码或明确的问题,我们将无法为您提供帮助。
  • 如果让 uuid = UIDevice.current.identifierForVendor?.uuidString { print(uuid) }
  • 我想要唯一的设备 ID,但如果我重新安装应用程序,它会返回不同
  • 编辑您的问题以包含您的程序 - 不要将其作为评论留下。请参阅 How do I ask a good question?Minimal, Reproducible Example
  • “我想要唯一的设备 ID,但如果我重新安装应用程序,它会返回不同的” - 它应该会改变。来自identifierForVendor 的文档:“当应用程序(或来自同一供应商的另一个应用程序)安装在 iOS 设备上时,此属性中的值保持不变。当用户删除所有该供应商的设备中的应用程序,然后重新安装其中的一个或多个。使用 Xcode 安装测试版本或使用 ad-hoc 分发在设备上安装应用程序时,该值也可能发生变化。"

标签: swift unique uniqueidentifier unique-key deviceid


【解决方案1】:

仔细阅读文档

https://developer.apple.com/documentation/uikit/uidevice/1620059-identifierforvendor

在多种情况下,identifierForVendor 不会循环到给定设备上的新唯一值。

您公司的应用很可能仍有匹配的捆绑包 ID。这将阻止 vendorID 被刷新。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-16
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    • 2012-03-29
    • 1970-01-01
    • 1970-01-01
    • 2017-11-10
    相关资源
    最近更新 更多