获取设备唯一识别码和Mac地址
来源:互联网 发布:阿里云空间 客户端 编辑:程序博客网 时间:2024/04/30 09:04
下面这个工具类提供了一些方法,可以获取设备AndroidID、IMEI、序列号、以及由他们组成的唯一识别码、网卡的MAC地址、蓝牙MAC地址。代码如下:
DeviceInfoUtil:
package com.home;import java.util.UUID;import android.bluetooth.BluetoothAdapter;import android.content.Context;import android.content.Intent;import android.net.wifi.WifiInfo;import android.net.wifi.WifiManager;import android.provider.Settings.Secure;import android.telephony.TelephonyManager;public class DeviceInfoUtil {/** * 得到设备AndroidID,需要设备添加 Google账户 * * @param context * @return */public static String getAndroidID(Context context) {String androidID = Secure.getString(context.getContentResolver(),Secure.ANDROID_ID);return androidID;}/** * 得到设备IMEI值 * * @param context * @return */public static String getIMEI(Context context) {TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);return tm.getDeviceId();}/** * 得到设备序列号 * * @param context * @return */public static String getSimSerialNumber(Context context) {TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);return tm.getSimSerialNumber();}/** * 得到设备唯一识别码 * * @param context * @return */public static String getUniqueNumber(Context context) {String androidID = getAndroidID(context);String imei = getIMEI(context);String simSerialNumber = getSimSerialNumber(context);UUID uuid = new UUID(androidID.hashCode(),((long) imei.hashCode() << 32) | simSerialNumber.hashCode());return uuid.toString();}/** * 获取设备本身网卡的MAC地址 * * @param context * @return */public static String getWLANMACAddress(Context context) {String macAddress = "";WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);WifiInfo info = wm.getConnectionInfo();if (info != null) {macAddress = info.getMacAddress();} else {macAddress = "No Wifi Device";}return macAddress;}/** * 获取蓝牙MAC地址 * * @param context * @return */public static String getBluetoothMACAddress(Context context) {String btMacAddress = "";BluetoothAdapter ba = BluetoothAdapter.getDefaultAdapter();if (ba != null) {if (!ba.isEnabled()) {btMacAddress = "Bluetooth not open";// 启动蓝牙Intent in = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);context.startActivity(in);} else {btMacAddress = ba.getAddress();}} else {btMacAddress = "No Bluetooth Device";}return btMacAddress;}}
权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/><uses-permission android:name="android.permission.BLUETOOTH"/>
0 0
- 获取设备唯一识别码和Mac地址
- (转)获取设备唯一识别码和Mac地址
- 获取Android设备唯一识别码
- Android设备获取唯一识别码
- Android 获取设备唯一识别码
- 获取Android设备的唯一识别码
- 如何获取Android设备唯一识别码
- 获取Android设备的唯一识别码
- 如何获取Android设备唯一识别码
- 获取Android设备的唯一识别码UUID
- Android设备获取IMEI唯一识别码
- Unity获取安卓设备唯一识别码
- 设备唯一识别码
- 获取Android设备的唯一识别码|设备号|序号|UUID
- 获取Android设备的唯一识别码|设备号|序号|UUID
- 获取Android设备的唯一识别码|设备号|序号|UUID
- 获取Android设备的唯一识别码|设备号|序号|UUI
- 获取Android设备的唯一识别码|设备号|序号|UUID
- TextView中使用一个字符串替换字符串str中start到end的子字符串
- ios笔试题
- Linux学习笔记之——用户、用户组、文件属性权限、目录概念
- 【中国制造】能讯半导体发布用于LTE基站的国产氮化镓微波晶体管
- Ubuntu 12.04更新源
- 获取设备唯一识别码和Mac地址
- Android示例代码:如何实现一个文字列表
- 文章分享代码
- V4L2用户空间和kernel层driver的交互过程
- Android 解锁屏启动过程
- 在linux下查看指定进程的所运行的CPU核
- 心一跳爱就开始煎熬 每一分每一秒 火在少 爱就开始煎熬
- 第四章 贪心算法
- 怎样使用批处理命令来删除文件