android 获取手机的唯一标识符

/* 获取设备唯一标识码 mac */
	public static String getDeviceId(Context context) {
		 
		StringBuilder deviceId = new StringBuilder();
		 
		// 渠道标志
		deviceId.append("a");
		 
		try {
			//wifi mac地址
			WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
			WifiInfo info = wifi.getConnectionInfo();
			String wifiMac = info.getMacAddress();
			
			if(!wifiMac.equals(null)){
				deviceId.append("wifi");
				deviceId.append(wifiMac);
				Log.i("getDeviceId : ", deviceId.toString());
				return deviceId.toString();
			}
		 
			//IMEI(imei)
			TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
		 	String imei = tm.getDeviceId();
		 	if(!imei.equals(null)){
				deviceId.append("imei");
				deviceId.append(imei);
				Log.i("getDeviceId : ", deviceId.toString());
				return deviceId.toString();
		 	}
		 
		 	//序列号(sn)
		 	String sn = tm.getSimSerialNumber();
			if(!sn.equals(null)){
				deviceId.append("sn");
				deviceId.append(sn);
				Log.i("getDeviceId : ", deviceId.toString());
				return deviceId.toString();
			}
		 
		 	//如果上面都没有, 则生成一个id:随机码
//		 	String uuid = getUUID(context);
//			if(!isEmpty(uuid)){
//				deviceId.append("id");
//				deviceId.append(uuid);
//				Log.e("getDeviceId : ", deviceId.toString());
//				return deviceId.toString();
//			}
			 
		 } catch (Exception e) {
			 e.printStackTrace();
			 //deviceId.append("id").append(getUUID(context));
		 }
		 
		Log.i("getDeviceId : ", deviceId.toString());
		 
		return deviceId.toString();
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值