更新时间:2023-09-20 15:04:10
在Android中,你可以得到三种不同的唯一的ID。
IMEI(你在你的code已经有了)
TelephonyManager telephonyManager =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
字符串ID =(getDeviceID1(telephonyManager));
字符串android_id = Secure.getString(的getContext()。getContentResolver()
Secure.ANDROID_ID);
蓝牙地址(这也将是唯一的每个设备)
私人BluetoothAdapter mBtAdapter;//获取本地蓝牙适配器
mBtAdapter = BluetoothAdapter.getDefaultAdapter();
串deviceMacAddress = mBtAdapter.getAddress();
Possible Duplicate:
Is there a unique Android device ID?
I used below code to get android device IMEI and How can I change below code to get android device Unique 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));
}
In Android, you can get three different Unique Ids.
IMEI ( which you have in your code already )
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String id = (getDeviceID1(telephonyManager));
String android_id = Secure.getString(getContext().getContentResolver(),
Secure.ANDROID_ID);
Bluetooth Address ( this will also be unique for each device )
private BluetoothAdapter mBtAdapter;
// Get the local Bluetooth adapter
mBtAdapter = BluetoothAdapter.getDefaultAdapter();
String deviceMacAddress = mBtAdapter.getAddress();