Skip to content Skip to sidebar Skip to footer

Getting The Mac Address Of The Device- When Wifi Is Off

I am finding the MAC address of the Android Device using the following code: WifiManager manager = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo info = manager.get

Solution 1:

Why not enable the Wifi momentarily until you get the MAC address and then disable it once you are done getting the MAC address?

Of course, doing this is if getting the MAC address is absolutely important.

UNTESTED CODE

WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);

if(wifiManager.isWifiEnabled()) {
    // WIFI ALREADY ENABLED. GRAB THE MAC ADDRESS HERE
    WifiInfo info = wifiManager.getConnectionInfo();
    String address = info.getMacAddress();
} else {
    // ENABLE THE WIFI FIRST
    wifiManager.setWifiEnabled(true);

    // WIFI IS NOW ENABLED. GRAB THE MAC ADDRESS HERE
    WifiInfo info = wifiManager.getConnectionInfo();
    String address = info.getMacAddress();
}

You will need these permission setup in the Manifest

<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"></uses-permission><uses-permissionandroid:name="android.permission.UPDATE_DEVICE_STATS"></uses-permission><uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>

I am not entirely sure if the UPDATE_DEVICE_STATS permission is necessary in this case. Please try it out before deciding to keep it.

Post a Comment for "Getting The Mac Address Of The Device- When Wifi Is Off"