本文实例讲述了获取Android系统唯一识别码的方法。分享给大家供大家参考。具体如下:
在计算机上,我们习惯用MAC地址来标志一台计算机。在Android设备上,可以用IMIE或者Android ID来标志一个设备。
看一下Android上怎样获取这样的信息。
一个是TelephonyManager的getDeviceId,另外一个是Settings.System的ANDROID_ID
这里贴一段测试代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package com.npc4.android.imie; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.telephony.TelephonyManager; import android.util.Log; import android.provider.Settings.System; /** * @author lixinso * 获取系统的唯一标识 */ public class IMIE extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.main); getImieStatus(); getAndroidId(); } private void getImieStatus() { TelephonyManager tm = (TelephonyManager) this .getSystemService(Context.TELEPHONY_SERVICE); String deviceId = tm.getDeviceId(); Log.e( "DEVICE_ID " , deviceId + " " ); } private void getAndroidId(){ String androidId = System.getString(getContentResolver(), System.ANDROID_ID); Log.e( "ANDROID_ID" , androidId + " " ); } } |
tm.getDeviceId()表示唯一的设备ID,例如对于GSM手机返回IMEI,对于CDMA手机返回MEID,如果设备不可用则返回NULL,比如在模拟器上。
System.getString(getContentResolver(), System.ANDROID_ID)表示一个64位的数字,在设备第一次启动的时候随机生成并在设备的整个生命周期中不变。(如果重新进行出厂设置可能会改变)
希望本文所述对大家的Android程序设计有所帮助。