如何识别设备(唯一标识符、CFUUIDRef、设备令牌?)

Posted

技术标签:

【中文标题】如何识别设备(唯一标识符、CFUUIDRef、设备令牌?)【英文标题】:How to identify a device (unique identifier, CFUUIDRef, device token?) 【发布时间】:2012-06-12 12:56:16 【问题描述】:

我们的应用程序允许用户做一件事,而且只能做一次。一些数据被发送到服务器,用户得到一些回报。但是,用户只需重新安装应用程序即可再次使用此功能。

您如何防止这种情况发生?由于“[[UIDevice currentDevice] uniqueIdentifier]”已被弃用并可能导致拒绝???,解决这个问题的最佳方法是什么?

提前致谢

【问题讨论】:

What is a long-term method I can use to uniquely identify an ios device? 的可能重复项 【参考方案1】:

你可以使用

OpenUDID

#include "OpenUDID.h"
NSString* openUDID = [OpenUDID value];

从这里获取 Link to repository

【讨论】:

太棒了!谢谢。两个问题。我是否需要以某种方式与用户确认我保存了此 ID?我必须在我的应用程序中添加 OpenUDID Seals/logo 吗?谢谢 向用户确认不,添加印章标志,我不这么认为,我从来没有这样做过:D 是的,但很糟糕。它不使用 ARC! @SeptiadiAgus 我同意,但现在我看不到更好的跨平台解决方案。【参考方案2】:

试试这个

#include "OpenUDID.h"
NSString* openUDID = [OpenUDID value];

【讨论】:

【参考方案3】:

使用 SecureUDID 也可以解决您的问题。SecureUDID 是一种机制,它以域名和密钥作为输入。它更安全且 100% 独一无二。通过使用此逻辑,如果用户重新启动设备或重新安装应用程序,UDID 也永远不会更改。

【讨论】:

以上是关于如何识别设备(唯一标识符、CFUUIDRef、设备令牌?)的主要内容,如果未能解决你的问题,请参考以下文章

无法唯一识别设备? [复制]

使用唯一标识符flutter / android识别设备

如何获取Android设备唯一识别码

设备唯一标识方法(Unique Identifier):如何在Windows系统上获取设备的唯一标识 zz

获取安卓设备唯一标识,看着一篇就够了

Android设备标识