【发布时间】:2011-08-29 21:02:29
【问题描述】:
我的应用使用设备的电话号码来获取有关用户联系人的有意义的信息。 它可以在 Android 和 iOS 上运行。
在电话上,我只是使用 10 位数(无国家代码)电话号码作为用户的唯一标识符。这甚至适用于 Android 模拟器(它有自己的失效号码),尽管 iPhone 模拟器返回一个空白号码(我可以很容易地忽略这种情况)。
现在我开始在非手机设备上进行测试。虽然他们仍然有可用的联系人,但他们不再有电话号码。一种简单的方法是在 iOS 中使用 UDID 以及在 Android 中使用的任何等价物。但是,我有 2 个问题需要解决:
UDID 不统一。我需要一个 10 个字符的密钥。有没有办法将 n 个字符散列成 10 个字符,避免冲突? (我可以忍受非常低概率的碰撞)
更大的问题:我刚刚读到Apple is blocking UDID access as of iOS 5。如果需要维护一个 10 个字符的密钥,我应该使用什么来代替它?
感谢您的宝贵时间。
【问题讨论】:
标签: android ios hash identifier udid