首页 文章

iOS设备特定的唯一标识符

提问于
浏览
0

有没有办法为IOS设备生成唯一ID?

我有一个框架,可以帮助应用程序从中获取登录令牌,我使用identifierForVendor没有问题,因为所有消费者应用程序都是从同一供应商发布的,但我想从不同的发布者添加另一个,并将该应用程序添加到链,identifierForVendor不再是工作,

我也不能使用钥匙串,因为他们使用不同的团队ID,

所以,如果还有其他办法可以告诉我吗?

3 回答

  • 0

    如果我没有弄错,Apple已撤销对真实设备标识符(UDID)的访问权限,而是提供伪标识符以限制其恶意使用 .

    请参阅前一个答案https://stackoverflow.com/a/19402414/28305 .

  • 1

    UDID不再可用,因此您可以使用

    UIDevice.currentDevice().identifierForVendor?.UUIDString
    

    更多here

    或者您可以使用iOS 11中提供的DeviceCheck framework

    只需在Apple Developer帐户中创建一个新密钥并生成一个令牌

    DCDevice.current.generateToken(completionHandler:)
    

    注意:您必须仅使用真实设备来接收令牌 .

    你可以找到很好的教程here

  • 0

    简短回答:不是因为数据隐私问题(至少在官方声明中) .

    Apple阻止访问“标识符”,如UDID和MAC地址等硬件数据 . 即使目前存在诸如字段之外,只要它被一定数量的人利用,它将很快被删除或混淆 .

    唯一可能工作一段时间的是尝试获取当前设备的browser fingerprint .

相关问题