iOS 5改变了uniqueIdentifier代码?

发布于 2024-12-12 06:56:54 字数 604 浏览 0 评论 0原文

该函数

[[UIDevice currentDevice] uniqueIdentifier]

在 iOS 5 中已弃用,我在这个项目中使用 MAC 地址找到了解决方案: https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for-iOS-5

好的,解决了。但现在我发现 iOS 5 改变了 uniqueIdentifier 返回的代码格式。

在 iOS 4.x 中,它的格式如下:

93F38DEB-3C0B-5C09-B746-0DFDFDDB297C

现在 iOS 5,相同的函数以这种格式返回:

93f38deB3c0b5c09b7460dfdfddb297c

任何人都知道如果代码有改变吗?不同的只是同一设备的格式或代码真的不同吗?

The function

[[UIDevice currentDevice] uniqueIdentifier]

Is deprecated in iOS 5 and I found the solution in this project using the MAC address: https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for-iOS-5

Ok, it is solved. But now I discovery that iOS 5 CHANGED the format of code that uniqueIdentifier return.

In iOS 4.x it is in this format:

93F38DEB-3C0B-5C09-B746-0DFDFDDB297C

Now the iOS 5, the same function return in this format:

93f38deB3c0b5c09b7460dfdfddb297c

Anyone know if the code changed at all? It is different only is format or the code in really different for the same device?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

我们的影子 2024-12-19 06:56:54

MAC 地址 是附加到网络接口的(据称)全局唯一标识符,尽管它们可以会在很多方面被改变。

Apple 用于提供访问权限的uniqueidentifier 附加到设备硬件且不可更改,这使其非常适合跨应用程序和会话跟踪用户。如果我不得不猜测的话,这也是苹果删除它的原因。无法跨应用程序和会话跟踪用户会增加用户设备上的隐私。

如果苹果最终出于同样的原因删除对 MAC 地址的访问,我不会感到惊讶,所以它可能会让您受益 检查跟踪设备的其他选项

A MAC Address is a (supposedly) globally unique identifier attached to a network interface, though they can be changed in many ways.

The uniqueidentifier that Apple used to provide access to was attached to the device hardware and not changeable, which made it excellent for tracking a user across apps and sessions. That's also the reason Apple is removing it, if I had to guess. Not having a way to track users across apps and sessions increases a user's privacy on their devices.

I wouldn't be surprised if Apple removes access to the MAC Address eventually for the same reasons, so it might benefit you to examine other options for tracking devices.

无声静候 2024-12-19 06:56:54

[[UIDevice currentDevice] uniqueIdentifier] 仍将为您提供与以前相同的结果。您链接到的项目不是 1:1 替换,它是一种替代方案,使用不同的实现为您提供类似的解决方案,因此两个字符串是不同的。

[[UIDevice currentDevice] uniqueIdentifier] will still give you the same result as before. The project that you link to is not a 1:1 replacement, it is an alternative that gives you a similar solution using a different implementation, thus the two string are different.

躲猫猫 2024-12-19 06:56:54

您不应该在 iOS 5 上使用唯一标识符。这就是您需要知道的全部内容。

iOS 上的唯一标识符始终是多余的并且是一个巨大的安全威胁。其他操作系统没有唯一标识符,没有它们也可以运行。

  1. 您始终可以在服务器上生成唯一标识符并将其发送到您的设备。
  2. 您始终可以使用系统函数从某些独特的系统属性(例如 MAC)生成它们。在 iOS 上,您可以使用 CFUUIDCreate 创建唯一标识符。该标识符在不同设备和不同时间之间是唯一的(每次调用它时您都会获得不同的标识符),但您可以保存它们(例如保存到钥匙串中)。

You shouldn't use unique identifier on iOS 5. That's all you need to know.

The unique identifier on iOS was always something redundant and a big security threat. Other operating systems don't have unique identifiers and they can live without them.

  1. You can always generate unique identifiers on your server and send them to your device.
  2. You can always generate them from some unique system property (e.g. MAC), using system functions. On iOS you can create a unique identifier using CFUUIDCreate. This identifier is unique across devices and across time (you'll get a different identifier every time you call it) but you can save them (e.g. into keychain).
夜灵血窟げ 2024-12-19 06:56:54

代码已更改!!!!!

UniqueIdentifier 不再唯一!!!

第一种格式有 36 个十六进制长度

93F38DEB-3C0B-5C09-B746-0DFDFDDB297C

第二个有 40 个十六进制!!!!!

因为这个,它改变了。我不知道它是否会在标识符中附加更多的六角形,但更大的尺寸改变了一切。

The code CHANGED!!!!!

UniqueIdentifier is no more UNIQUE!!!

The first format have 36 hexa lenght

93F38DEB-3C0B-5C09-B746-0DFDFDDB297C

The second have 40 hexa!!!!!

Because this, it changed. I don't know if it append more hexa to identifier, but the bigger size changed al all.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文