iOS和Android的移动设备唯一性

13

我正在寻找一种安全地识别移动设备的方法,使用唯一标识符。每次我在特定设备上安装我的应用程序时,我应该得到相同的唯一标识符。此标识符将上传到服务器后端并保存供以后参考。

这必须在不依赖手机IMEI号码的情况下实现。苹果早就禁止了iOS的IMEI号码,而谷歌也可能在明天禁止Android的IMEI号码。

对于Android,至少有 ANDROID_ID。那么对于iOS呢?一点办法都没有吗?

一定有一种标准、可靠的方法可以在Android和iOS上实现这一点。我对任何/全部/付费/免费/本地/第三方解决方案感兴趣。其他公司是如何解决这个问题的?

我已经阅读了以下文章:

1. 识别应用程序安装

2. 是否有唯一的Android设备ID?

3. 为每个Android设备获取唯一ID签名

4. iOS上的持久、跨安装设备标识符:使用钥匙串

5. UIDevice uniqueIdentifier已弃用-现在该怎么办?

6. 始终在iOS 7中获得唯一的设备ID

7. iOS7 - 设备唯一标识符.

8. 将UUID作为唯一标识符实现并保存在Keychain中.

我想超越此方法。还有什么其他的方法可以采用?是否有一种全面、一劳永逸的、万无一失的解决方案呢?


IOS的MAC地址或UUID - Dhaval Parmar
2个回答

5

从您列出的帖子中,已经有了对您问题的答案:在iOS上,将生成的UUID保存到钥匙串中,以便它在重新安装后仍然存在。但是,恢复出厂设置会清除该UUID,您应该意识到这个限制。这不是一个万无一失的解决方案,因为它受到苹果平台的限制,但仍然足够好,并被许多应用程序使用。


谢谢。这不是我想要的全面答案,但我现在会接受它。 - Yash Sampat

2
一年前我写了一篇关于iOS的“防弹”解决方案的文章:https://blog.onliquid.com/persistent-device-unique-identifier-ios-keychain/。我的解决方案使用了苹果的IFA或IFV,如果这些ID不可用,则会回退到随机UUID。所选择的唯一ID在本地存储于你的NSUserDefaults和Keychain中(当然不会同步到iCloud)。 这样你就可以卸载并重新安装应用程序,设备ID保持不变。 我在数百万台设备上使用这种方法,没有任何问题;) 祝好, Miguel

谢谢你的回答... 我会把它传达给iOS团队...他们仍在继续解决这个问题... :) - Yash Sampat

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接