1. 程式人生 > >獲取Android系統的唯一識別碼

獲取Android系統的唯一識別碼

在計算機上,我們習慣用MAC地址來標誌一臺計算機。在Android裝置上,可以用IMIE或者Android ID來標誌一個裝置。 看一下Android上怎樣獲取這樣的資訊。 一個是TelephonyManager的getDeviceId,另外一個是Settings.System的ANDROID_ID 這裡貼一段測試程式碼:
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 arcticocean
 * 獲取系統的唯一標識
 */
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位的數字,在裝置第一次啟動的時候隨機生成並在裝置的整個生命週期中不變。(如果重新進行出廠設定可能會改 變)