Make WifiTracker lifecycle aware
Bug: 66953027 Test: m -j checkbuild Change-Id: I004c889b887a67614a5e0b6ae62fdbf8d6070ebd
This commit is contained in:
@@ -37,9 +37,7 @@ import android.net.wifi.WifiManager;
|
|||||||
import android.net.wifi.WpsInfo;
|
import android.net.wifi.WpsInfo;
|
||||||
import android.nfc.NfcAdapter;
|
import android.nfc.NfcAdapter;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.HandlerThread;
|
|
||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
import android.os.Process;
|
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.support.annotation.VisibleForTesting;
|
import android.support.annotation.VisibleForTesting;
|
||||||
import android.support.v7.preference.Preference;
|
import android.support.v7.preference.Preference;
|
||||||
@@ -162,8 +160,6 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
private WifiTracker mWifiTracker;
|
private WifiTracker mWifiTracker;
|
||||||
private String mOpenSsid;
|
private String mOpenSsid;
|
||||||
|
|
||||||
private HandlerThread mBgThread;
|
|
||||||
|
|
||||||
private AccessPointPreference.UserBadgeCache mUserBadgeCache;
|
private AccessPointPreference.UserBadgeCache mUserBadgeCache;
|
||||||
|
|
||||||
private PreferenceCategory mConnectedAccessPointPreferenceCategory;
|
private PreferenceCategory mConnectedAccessPointPreferenceCategory;
|
||||||
@@ -211,9 +207,6 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
addPreferences();
|
addPreferences();
|
||||||
|
|
||||||
mIsRestricted = isUiRestricted();
|
mIsRestricted = isUiRestricted();
|
||||||
|
|
||||||
mBgThread = new HandlerThread(TAG, Process.THREAD_PRIORITY_BACKGROUND);
|
|
||||||
mBgThread.start();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addPreferences() {
|
private void addPreferences() {
|
||||||
@@ -237,18 +230,12 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
mUserBadgeCache = new AccessPointPreference.UserBadgeCache(getPackageManager());
|
mUserBadgeCache = new AccessPointPreference.UserBadgeCache(getPackageManager());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDestroy() {
|
|
||||||
mBgThread.quit();
|
|
||||||
super.onDestroy();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityCreated(Bundle savedInstanceState) {
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
|
|
||||||
mWifiTracker = WifiTrackerFactory.create(
|
mWifiTracker = WifiTrackerFactory.create(
|
||||||
getActivity(), this, mBgThread.getLooper(), true, true, false);
|
getActivity(), this, getLifecycle(), true, true);
|
||||||
mWifiManager = mWifiTracker.getManager();
|
mWifiManager = mWifiTracker.getManager();
|
||||||
|
|
||||||
mConnectListener = new WifiManager.ActionListener() {
|
mConnectListener = new WifiManager.ActionListener() {
|
||||||
@@ -350,8 +337,6 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
// On/off switch is hidden for Setup Wizard (returns null)
|
// On/off switch is hidden for Setup Wizard (returns null)
|
||||||
mWifiEnabler = createWifiEnabler();
|
mWifiEnabler = createWifiEnabler();
|
||||||
|
|
||||||
mWifiTracker.startTracking();
|
|
||||||
|
|
||||||
if (mIsRestricted) {
|
if (mIsRestricted) {
|
||||||
restrictUi();
|
restrictUi();
|
||||||
return;
|
return;
|
||||||
@@ -430,7 +415,6 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStop() {
|
public void onStop() {
|
||||||
mWifiTracker.stopTracking();
|
|
||||||
getView().removeCallbacks(mUpdateAccessPointsRunnable);
|
getView().removeCallbacks(mUpdateAccessPointsRunnable);
|
||||||
getView().removeCallbacks(mHideProgressBarRunnable);
|
getView().removeCallbacks(mHideProgressBarRunnable);
|
||||||
super.onStop();
|
super.onStop();
|
||||||
@@ -1137,7 +1121,7 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
|
|
||||||
// Add saved Wi-Fi access points
|
// Add saved Wi-Fi access points
|
||||||
final List<AccessPoint> accessPoints =
|
final List<AccessPoint> accessPoints =
|
||||||
WifiTracker.getCurrentAccessPoints(context, true, false, false);
|
WifiTracker.getCurrentAccessPoints(context, true, false);
|
||||||
for (AccessPoint accessPoint : accessPoints) {
|
for (AccessPoint accessPoint : accessPoints) {
|
||||||
data = new SearchIndexableRaw(context);
|
data = new SearchIndexableRaw(context);
|
||||||
data.title = accessPoint.getSsidStr();
|
data.title = accessPoint.getSsidStr();
|
||||||
|
Reference in New Issue
Block a user