ios - 我们在 iOS 上有哪个唯一设备标识符在安装/删除/重新安装应用程序时不会改变

标签 ios swift uuid

我想同时收集安装事件(在新应用上)和帐户创建事件(在所有旧应用上)。

为确保唯一性并防止欺诈(即每次安装都应对应一个唯一的设备,如果在同一台设备上卸载并重新安装该应用程序,则应保持相同的事件)我们可以使用硬件标识符可以在卸载后继续存在。

在 Android 手机上,IMEI 可用作唯一标识符,但此解决方案在 iOS 上不可重复,因为出于隐私原因,Apple 不授予对任何硬件或唯一标识符的访问权限。

我尝试了以下链接中提出的方法:

  1. link1

  2. link2

  3. link3

    从链接 1 和 3 我试过:

    让 deviceID = UIDevice.current.identifierForVendor!.uuidString

但这并没有提供一个唯一的 ID,一旦卸载并重新安装该应用程序,该 ID 将保持不变。

请问有没有更好的方法让我快速处理这个问题。谢谢!

最佳答案

如果您想要识别用户的设备,即使用户重新安装您的应用,您可以使用 iOS 11 中引入的设备检查 API。

您的服务器可以在苹果设备上使用生成的 token 。有关详细信息,请参阅以下文档

https://developer.apple.com/documentation/devicecheck/dcdevice/2902276-generatetoken

关于ios - 我们在 iOS 上有哪个唯一设备标识符在安装/删除/重新安装应用程序时不会改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49672876/

相关文章:

ios - 如何区分单击并按下UIButton iOS

html - IOS8 : whole page scrolls down when input in fixed footer gets focus

ios - 自定义 ttf 字体使 Spritekit 在 SWIFT 中的转换变慢

mysql - 如何将 bigIncrements ('id' ) 转换为 uuid ('id' ) 作为主键?

standards - UUID 的人类可读替代方案

ios - CIPerspectiveTransform 的行为

ios - Cocos2d - 第一个 CCAction 不显示变化

ios - Swift - AWS Cognito-Facebook 登录

iOS按钮标题颜色不会改变

bluetooth - 哪些范围的蓝牙 UUID 可用于供应商定义的配置文件?