Loading packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java +34 −16 Original line number Diff line number Diff line Loading @@ -123,7 +123,8 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro /** * Synchronization lock for managing concurrency between main and worker threads. * * <p>This lock should be held for all modifications to {@link #mInternalAccessPoints}. * <p>This lock should be held for all modifications to {@link #mInternalAccessPoints} and * {@link #mScanner}. */ private final Object mLock = new Object(); Loading Loading @@ -168,6 +169,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro private static final String WIFI_SECURITY_OWE = "OWE"; private static final String WIFI_SECURITY_SUITE_B_192 = "SUITE_B_192"; @GuardedBy("mLock") @VisibleForTesting Scanner mScanner; Loading Loading @@ -276,10 +278,12 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro * <p>Sets {@link #mStaleScanResults} to true. */ private void pauseScanning() { synchronized (mLock) { if (mScanner != null) { mScanner.pause(); mScanner = null; } } mStaleScanResults = true; } Loading @@ -289,6 +293,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro * <p>The score cache should be registered before this method is invoked. */ public void resumeScanning() { synchronized (mLock) { if (mScanner == null) { mScanner = new Scanner(); } Loading @@ -297,6 +302,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro mScanner.resume(); } } } /** * Start tracking wifi networks and scores. Loading Loading @@ -743,7 +749,6 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro } private void updateNetworkInfo(NetworkInfo networkInfo) { /* Sticky broadcasts can call this when wifi is disabled */ if (!isWifiEnabled()) { clearAccessPointsAndConditionallyUpdate(); Loading Loading @@ -880,19 +885,26 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro * true. */ private void updateWifiState(int state) { if (isVerboseLoggingEnabled()) { Log.d(TAG, "updateWifiState: " + state); } if (state == WifiManager.WIFI_STATE_ENABLED) { synchronized (mLock) { if (mScanner != null) { // We only need to resume if mScanner isn't null because // that means we want to be scanning. mScanner.resume(); } } } else { clearAccessPointsAndConditionallyUpdate(); mLastInfo = null; mLastNetworkInfo = null; synchronized (mLock) { if (mScanner != null) { mScanner.pause(); } } mStaleScanResults = true; } mListener.onWifiStateChanged(state); Loading @@ -919,12 +931,18 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro private int mRetry = 0; void resume() { if (isVerboseLoggingEnabled()) { Log.d(TAG, "Scanner resume"); } if (!hasMessages(MSG_SCAN)) { sendEmptyMessage(MSG_SCAN); } } void pause() { if (isVerboseLoggingEnabled()) { Log.d(TAG, "Scanner pause"); } mRetry = 0; removeMessages(MSG_SCAN); } Loading Loading
packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java +34 −16 Original line number Diff line number Diff line Loading @@ -123,7 +123,8 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro /** * Synchronization lock for managing concurrency between main and worker threads. * * <p>This lock should be held for all modifications to {@link #mInternalAccessPoints}. * <p>This lock should be held for all modifications to {@link #mInternalAccessPoints} and * {@link #mScanner}. */ private final Object mLock = new Object(); Loading Loading @@ -168,6 +169,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro private static final String WIFI_SECURITY_OWE = "OWE"; private static final String WIFI_SECURITY_SUITE_B_192 = "SUITE_B_192"; @GuardedBy("mLock") @VisibleForTesting Scanner mScanner; Loading Loading @@ -276,10 +278,12 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro * <p>Sets {@link #mStaleScanResults} to true. */ private void pauseScanning() { synchronized (mLock) { if (mScanner != null) { mScanner.pause(); mScanner = null; } } mStaleScanResults = true; } Loading @@ -289,6 +293,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro * <p>The score cache should be registered before this method is invoked. */ public void resumeScanning() { synchronized (mLock) { if (mScanner == null) { mScanner = new Scanner(); } Loading @@ -297,6 +302,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro mScanner.resume(); } } } /** * Start tracking wifi networks and scores. Loading Loading @@ -743,7 +749,6 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro } private void updateNetworkInfo(NetworkInfo networkInfo) { /* Sticky broadcasts can call this when wifi is disabled */ if (!isWifiEnabled()) { clearAccessPointsAndConditionallyUpdate(); Loading Loading @@ -880,19 +885,26 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro * true. */ private void updateWifiState(int state) { if (isVerboseLoggingEnabled()) { Log.d(TAG, "updateWifiState: " + state); } if (state == WifiManager.WIFI_STATE_ENABLED) { synchronized (mLock) { if (mScanner != null) { // We only need to resume if mScanner isn't null because // that means we want to be scanning. mScanner.resume(); } } } else { clearAccessPointsAndConditionallyUpdate(); mLastInfo = null; mLastNetworkInfo = null; synchronized (mLock) { if (mScanner != null) { mScanner.pause(); } } mStaleScanResults = true; } mListener.onWifiStateChanged(state); Loading @@ -919,12 +931,18 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro private int mRetry = 0; void resume() { if (isVerboseLoggingEnabled()) { Log.d(TAG, "Scanner resume"); } if (!hasMessages(MSG_SCAN)) { sendEmptyMessage(MSG_SCAN); } } void pause() { if (isVerboseLoggingEnabled()) { Log.d(TAG, "Scanner pause"); } mRetry = 0; removeMessages(MSG_SCAN); } Loading