我使用下面的代码来获取Android设备IMEI,我如何更改下面的代码来获取Android设备唯一ID。
String getDeviceID1(TelephonyManager phonyManager){
String id = phonyManager.getDeviceId();
if (id == null){
id = "not available";
}
int phoneType = phonyManager.getPhoneType();
switch(phoneType){
case TelephonyManager.PHONE_TYPE_NONE:
return "" + id;
case TelephonyManager.PHONE_TYPE_GSM:
return "" + id;
case TelephonyManager.PHONE_TYPE_CDMA:
return "" + id;
/*
* for API Level 11 or above
* case TelephonyManager.PHONE_TYPE_SIP:
* return "SIP";
*/
default:
return "" + id;
}
//I used to show IMEI
TextView textDeviceID = (TextView)findViewById(R.id.deviceid);
//retrieve a reference to an instance of TelephonyManager
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
textDeviceID.setText(getDeviceID1(telephonyManager));
}
答案 0 :(得分:14)
在Android中,您可以获得三种不同的唯一ID。
IMEI(您的代码中已有)
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String id = (getDeviceID1(telephonyManager));
String android_id = Secure.getString(getContext().getContentResolver(),
Secure.ANDROID_ID);
蓝牙地址(每个设备也是唯一的)
private BluetoothAdapter mBtAdapter;
// Get the local Bluetooth adapter
mBtAdapter = BluetoothAdapter.getDefaultAdapter();
String deviceMacAddress = mBtAdapter.getAddress();