diff options
Diffstat (limited to 'libs/WifiTrackerLib/src')
-rw-r--r-- | libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java | 14 | ||||
-rw-r--r-- | libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java | 14 |
2 files changed, 20 insertions, 8 deletions
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java index d873c25e5..71420b9ad 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java @@ -16,6 +16,7 @@ package com.android.wifitrackerlib; +import static android.net.wifi.WifiInfo.DEFAULT_MAC_ADDRESS; import static android.net.wifi.WifiInfo.sanitizeSsid; import static androidx.core.util.Preconditions.checkNotNull; @@ -277,16 +278,21 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry @Override public String getMacAddress() { + if (mWifiInfo != null) { + final String wifiInfoMac = mWifiInfo.getMacAddress(); + if (!TextUtils.isEmpty(wifiInfoMac) + && !TextUtils.equals(wifiInfoMac, DEFAULT_MAC_ADDRESS)) { + return wifiInfoMac; + } + } if (mWifiConfig == null || getPrivacy() != PRIVACY_RANDOMIZED_MAC) { final String[] factoryMacs = mWifiManager.getFactoryMacAddresses(); if (factoryMacs.length > 0) { return factoryMacs[0]; - } else { - return null; } - } else { - return mWifiConfig.getRandomizedMacAddress().toString(); + return null; } + return mWifiConfig.getRandomizedMacAddress().toString(); } @Override diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java index 6fef5e961..56cd16503 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java @@ -20,6 +20,7 @@ import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED_AUTHENTICATION_NO_CREDENTIALS; import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD; import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_ENABLED; +import static android.net.wifi.WifiInfo.DEFAULT_MAC_ADDRESS; import static android.net.wifi.WifiInfo.sanitizeSsid; import static androidx.core.util.Preconditions.checkNotNull; @@ -312,16 +313,21 @@ public class StandardWifiEntry extends WifiEntry { @Override public String getMacAddress() { + if (mWifiInfo != null) { + final String wifiInfoMac = mWifiInfo.getMacAddress(); + if (!TextUtils.isEmpty(wifiInfoMac) + && !TextUtils.equals(wifiInfoMac, DEFAULT_MAC_ADDRESS)) { + return wifiInfoMac; + } + } if (mWifiConfig == null || getPrivacy() != PRIVACY_RANDOMIZED_MAC) { final String[] factoryMacs = mWifiManager.getFactoryMacAddresses(); if (factoryMacs.length > 0) { return factoryMacs[0]; - } else { - return null; } - } else { - return mWifiConfig.getRandomizedMacAddress().toString(); + return null; } + return mWifiConfig.getRandomizedMacAddress().toString(); } @Override |