首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android唯一UDID

Android唯一UDID
EN

Stack Overflow用户
提问于 2012-10-06 05:19:00
回答 2查看 1.8K关注 0票数 0

谁能告诉我,我所使用的代码是否是获取唯一id的正确方式?我怀疑我可能被骗了,这可能会在我公司的管理层面上造成问题……

代码语言:javascript
复制
final TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String UDID = tm.getDeviceId();
EN

回答 2

Stack Overflow用户

发布于 2012-10-06 05:21:18

这是调用getDeviceId()的正确方式。这可能不是唯一的标识符,因为并不是所有的设备都是手机,而且一些手机有bug。有关更多详细信息,请参阅this Android Developers Blog post

票数 4
EN

Stack Overflow用户

发布于 2012-10-06 08:15:41

如果你想要一个唯一的android标识符,你会看到有很多问题,你可以通过一个简单的谷歌搜索来解决。类似于CommonsWare提到的内容。

但是,您仍然可以获得唯一的标识符。真正的问题是你想要识别什么。是用户还是设备?

如果您想要识别特定用户:

你想要IMSI值。

代码语言:javascript
复制
final TelephonyManager tm = (TelephonyManager)context`.getSystemService(Context.TELEPHONY_SERVICE);

String UDID = tm.getSubscriberId()

如果要标识硬件,则需要IMEI值:

代码语言:javascript
复制
final TelephonyManager tm = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);

String UDID = tm.getDeviceId()

现在:我建议使用getDeviceID()选项,因为它对隐私的影响较小。

但您可以进一步执行步骤事件,并在存储该值之前对其进行散列。

但是,如果您不能获得正确的返回值,您总是可以做一些事情,比如让用户输入他们的电话号码,并通过sms进行验证。然后使用它作为标识符。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12754181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档