SystemInfo.deviceUniqueIdentifier

来源:互联网 发布:查看所有node版本号 编辑:程序博客网 时间:2024/06/03 20:18


Android: SystemInfo.deviceUniqueIdentifier is anonymized by calculating the MD5 sum of IMEI/MEID, ANDROID_ID or WiFi MAC - whichever is available.


IMEI

  • 只有Android手机才有, IMEI号是一串15位的号码,比如像这样 359881030314356
TelephonyManager TelephonyMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);String szImei = TelephonyMgr.getDeviceId(); 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • 需要权限<uses-permission android:name="android.permission.READ_PHONE_STATE" />

  • 通常用户会因为你向他们要了这个权限而给你一个差评,因为他们觉得你就是在窃取他们的隐私,很明显,你就是在收集一些数据

Android ID

  • 这个是不靠谱的,因为有时候它是null的,文档中明确说明,如果你恢复了出厂设置,那他就会改变的。而且如果你root了手机,你也可以改变这个ID
String m_szAndroidID = Secure.getString(getContentResolver(), Secure.ANDROID_ID); 
  • 1
  • 2
  • 1
  • 2
  • 它返回的是9774d56d682e549c这样一串东西,倒是不需要什么权限

WLAN MAC地址

  • 这也可以得到一个独一无二的ID号,返回的是 00:11:22:33:44:55 。但是当没有wifi的时候,我们是无法获得数据的。
WifiManager wm = (WifiManager)getSystemService(Context.WIFI_SERVICE);String m_szWLANMAC = wm.getConnectionInfo().getMacAddress();
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • 需要权限android.permission.ACCESS_WIFI_STATE


参考:

http://www.ceeger.com/forum/read.php?tid=11577

http://blog.csdn.net/nugongahou110/article/details/47003257

0 0