如何在 iOS SDK 中检查用户的设备

Gag*_*iOS 4 ios

我正在尝试修复我的应用程序中的Sim Swap问题。我想要一种独特的方式来识别用户的电话。所以尝试了以下情况

  • 我知道我们无法按照以下链接从用户设备获取手机 IMEI 和其他信息

链接1 链路2

  • 我可以使用 identifierForVendor 但它也会在每次安装应用程序时发生变化。

  • 第三个选项是使用DeviceCheck API 来识别设备,但它仅在 iOS 11 中提供。

请让我知道如何在 Sim Swap 的情况下识别用户设备和临时禁用用户的帐户。

Jar*_*ger 5

您必须将 UUID 保留在钥匙串中,因为卸载应用程序后钥匙串数据仍然存在

iOS 将钥匙串信息作为敏感信息进行管理。您可以使用 SwiftKeychainWrapper库轻松访问您的钥匙串。

苹果文档对 SIM 卡更改的说明:https : //developer.apple.com/documentation/coretelephony/cttelephonynetworkinfo

编码示例:

let uuid = UIDevice.current.identifierForVendor?.uuidString
KeychainWrapper.standard.set(uuid, forKey: "appUUID")
Run Code Online (Sandbox Code Playgroud)

每当您想获取 appUUID 时,只需从钥匙串中获取:

let uuid = KeychainWrapper.standard.string(forKey: "appUUID")
Run Code Online (Sandbox Code Playgroud)

注意:您还可以在重新安装应用程序后检查您的 UUID 是否更改并将其更新为钥匙串。