我想更改android设备的MAC地址?

时间:2012-04-23 07:10:29

标签: android

我使用wifi接口获取设备的MAC地址:

WifiManager wifiMan = (WifiManager) this.getSystemService(
                Context.WIFI_SERVICE);
WifiInfo wifiInf = wifiMan.getConnectionInfo();
String macAddr = wifiInf.getMacAddress();

有没有办法在没有wifi接口的情况下检索mac地址?

同时确认我能否更改Android设备的MAc地址?

请确认我的android框架是否支持这些东西?

1 个答案:

答案 0 :(得分:0)

MAC地址唯一标识网络适配器(例如WiFi或蓝牙),因此您必须访问该适配器以检索其MAC地址。要获取蓝牙适配器的MAC地址,您可以使用:

BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter();
if (btAdapter != null) {
    String mac = btAdapter.getAddress();
}

请注意,此代码需要android.permission.BLUETOOTH权限,并且获取WiFi适配器MAC的代码需要android.permission.ACCESS_WIFI_STATE权限。此外,当适配器关闭时,这两个代码可能都不起作用。

MAC欺骗有this post(返回错误的MAC地址)但欺骗只能在root电话上进行。如果你谷歌你可能会发现有关MAC欺骗的更多信息。