如何唯一识别iOS设备

乌鲁木齐

在我当前的应用程序中,我必须让用户从不同的iOS设备登录到他们的帐户。目前,我正在根据令牌值进行用户身份验证。但是为了支持多个设备登录,我必须找到另一种方法来执行此操作。

因此,我想到了将设备uuid和令牌一起保存以进行身份​​验证和安全性。然后,我知道我不能使用设备的uuid,而必须使用identifierForVendor始终提供或不提供用户或设备信息的设备。

因此,有人可以建议在ios中为同一用户帐户实现此多设备登录功能的更好和正确的方法吗?

莫斯塔法·伯格

您已经知道不允许使用设备的UUID,但是,您可以生成自己的UUID并将其存储在设备的UserDefaults中。

使用identifierForVendor并不是100%可靠的,因为它只能在iOS6及更高版本上使用,并且用户可以选择不将其提供给您,这是一个不好的选择。

这是我前一段时间从互联网复制的一些代码,直到今天仍在使用,稍后将尝试查找源并更新我的答案。编辑:

这将为您生成一个UUID并将其存储在UserDefaults中:

- (NSString *)createUUID
{
  CFUUIDRef theUUID = CFUUIDCreate(NULL);
  CFStringRef string = CFUUIDCreateString(NULL, theUUID);
  CFRelease(theUUID);
  [[NSUserDefaults standardUserDefaults] setObject:(__bridge NSString *)string forKey:@"UUID"];
  [[NSUSerDefaults standardUserDefaults] synchronize];
  return (__bridge NSString *)string;
}

并且每当您需要读取生成的UUID时:

- (NSString*)UUID
{
    return [[NSUserDefaults standardUserDefaults] ObjectForKey:@"UUID"];
}

现在,您也可以选择将自己的用户ID附加到该ID上,这样您就可以知道将哪个UUID链接到了该用户。

这只是它应该如何工作的粗略概图

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何唯一识别iOS设备

来自分类Dev

如何唯一识别Android设备以跟踪设备

来自分类Dev

如何唯一识别Android设备以跟踪设备

来自分类Dev

您如何唯一标识iOS设备?

来自分类Dev

您如何唯一标识iOS设备?

来自分类Dev

唯一识别用户的设备

来自分类Dev

如何在iOS设备中获取唯一ID?

来自分类Dev

如何从iOS设备获取唯一身份?

来自分类Dev

唯一标识多个用户的iOS设备

来自分类Dev

如何识别客户的唯一性?

来自分类Dev

我如何唯一地识别USB`集线器6-0:1.0:端口2`上的哪个设备?

来自分类Dev

如何在不使用登录系统(iOS)的情况下识别唯一用户

来自分类Dev

如何达到android设备的唯一ID?

来自分类Dev

MDM Systems(Airwatch,MobileIron)如何确定iOS7上设备的唯一性?

来自分类Dev

MDM Systems(Airwatch,MobileIron)如何确定iOS7上设备的唯一性?

来自分类Dev

唯一识别硬盘

来自分类Dev

唯一识别硬盘

来自分类Dev

iOS中的私有唯一设备标识符

来自分类Dev

iOS7-设备唯一标识符

来自分类Dev

为IOS中的所有设备创建唯一的UUID?

来自分类Dev

唯一的设备标识

来自分类Dev

如何在多个应用程序中识别iOS设备?

来自分类Dev

什么可以唯一识别电话?电话号码?串号?设备编号?

来自分类Dev

如何唯一地识别选择器?

来自分类Dev

如何唯一地识别过程

来自分类Dev

如何识别数据框中的唯一项?

来自分类Dev

如何唯一识别chromecast chrome发送者?

来自分类Dev

如何识别唯一值实例并找到总和

来自分类Dev

给定行中重复的数据,如何识别唯一的行号