这个问题来自于Is there a unique Android device ID?
我对这个问题的答案做了整理,包括将另一篇文章加入进来作为补充,可以完美解决此问题。
作者提出的问题:
Android设备有没有唯一的id?如果有的话,我怎么通过java代码获得这个id?
答案:
我读了stack OverStack上每一个答案,谷歌的开发者博客和Android文档,我认为’Pseudo ID’ 是最好的选择。
首先先来看看我们为什么不选用其他的方法:
User Email
用户可以更改他们的email (非常不可靠)
API5+需要权限
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
- API14+需要权限
<uses-permission android:name="android.permission.READ_CONTACTS" />
(How to get the Android device’s primary e-mail address)
用户手机号
用户可以更改他们的手机号 (非常不可靠)
需要权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
IMEI
- 只有Android手机才有, IMEI号是一串15位的号码,比如像这样 359881030314356
TelephonyManager TelephonyMgr = (TelephonyManager)getSystemService(TELEPHON