Make ApplicationsState.Session lifecycle-aware
Bug: 66682989 Test: RunSettingsRoboTests Change-Id: Idf56788fcae22639b7bf604a8c73cd5f0ff2da16
This commit is contained in:
@@ -92,7 +92,7 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
|
||||
mApplicationFeatureProvider = FeatureFactory.getFactory(activity)
|
||||
.getApplicationFeatureProvider(activity);
|
||||
mState = ApplicationsState.getInstance(activity.getApplication());
|
||||
mSession = mState.newSession(this);
|
||||
mSession = mState.newSession(this, getLifecycle());
|
||||
mDpm = new DevicePolicyManagerWrapper(
|
||||
(DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE));
|
||||
mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE);
|
||||
@@ -107,7 +107,6 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
mSession.resume();
|
||||
mAppsControlDisallowedAdmin = RestrictedLockUtils.checkIfRestrictionEnforced(getActivity(),
|
||||
UserManager.DISALLOW_APPS_CONTROL, mUserId);
|
||||
mAppsControlDisallowedBySystem = RestrictedLockUtils.hasBaseUserRestriction(getActivity(),
|
||||
@@ -118,16 +117,10 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
mSession.pause();
|
||||
super.onPause();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
stopListeningToPackageRemove();
|
||||
mSession.release();
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
|
@@ -50,15 +50,15 @@ public abstract class AppStateBaseBridge implements ApplicationsState.Callbacks
|
||||
|
||||
public void resume() {
|
||||
mHandler.sendEmptyMessage(BackgroundHandler.MSG_LOAD_ALL);
|
||||
mAppSession.resume();
|
||||
mAppSession.onResume();
|
||||
}
|
||||
|
||||
public void pause() {
|
||||
mAppSession.pause();
|
||||
mAppSession.onPause();
|
||||
}
|
||||
|
||||
public void release() {
|
||||
mAppSession.release();
|
||||
mAppSession.onDestroy();
|
||||
}
|
||||
|
||||
public void forceUpdate(String pkg, int uid) {
|
||||
|
@@ -988,7 +988,7 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
if (DEBUG) Log.i(TAG, "Resume! mResumed=" + mResumed);
|
||||
if (!mResumed) {
|
||||
mResumed = true;
|
||||
mSession.resume();
|
||||
mSession.onResume();
|
||||
mLastSortMode = sort;
|
||||
if (mExtraInfoBridge != null) {
|
||||
mExtraInfoBridge.resume();
|
||||
@@ -1002,7 +1002,7 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
public void pause() {
|
||||
if (mResumed) {
|
||||
mResumed = false;
|
||||
mSession.pause();
|
||||
mSession.onPause();
|
||||
if (mExtraInfoBridge != null) {
|
||||
mExtraInfoBridge.pause();
|
||||
}
|
||||
@@ -1015,7 +1015,7 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
}
|
||||
|
||||
public void release() {
|
||||
mSession.release();
|
||||
mSession.onDestroy();
|
||||
if (mExtraInfoBridge != null) {
|
||||
mExtraInfoBridge.release();
|
||||
}
|
||||
|
@@ -66,7 +66,7 @@ public class ManageDomainUrls extends SettingsPreferenceFragment
|
||||
setPreferenceScreen(getPreferenceManager().createPreferenceScreen(getContext()));
|
||||
mApplicationsState = ApplicationsState.getInstance(
|
||||
(Application) getContext().getApplicationContext());
|
||||
mSession = mApplicationsState.newSession(this);
|
||||
mSession = mApplicationsState.newSession(this, getLifecycle());
|
||||
setHasOptionsMenu(true);
|
||||
}
|
||||
|
||||
@@ -75,24 +75,6 @@ public class ManageDomainUrls extends SettingsPreferenceFragment
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
mSession.resume();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
mSession.pause();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
mSession.release();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRunningStateChanged(boolean running) {
|
||||
}
|
||||
|
@@ -32,7 +32,6 @@ import com.android.settings.DividerPreference;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.applications.AppStateBaseBridge.Callback;
|
||||
import com.android.settings.applications.AppStateSmsPremBridge.SmsState;
|
||||
import com.android.settings.core.instrumentation.MetricsFeatureProvider;
|
||||
import com.android.settings.notification.EmptyTextSettings;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
@@ -53,7 +52,7 @@ public class PremiumSmsAccess extends EmptyTextSettings implements Callback, Cal
|
||||
super.onCreate(icicle);
|
||||
mApplicationsState = ApplicationsState.getInstance((Application)
|
||||
getContext().getApplicationContext());
|
||||
mSession = mApplicationsState.newSession(this);
|
||||
mSession = mApplicationsState.newSession(this, getLifecycle());
|
||||
mSmsBackend = new AppStateSmsPremBridge(getContext(), mApplicationsState, this);
|
||||
}
|
||||
|
||||
@@ -66,21 +65,18 @@ public class PremiumSmsAccess extends EmptyTextSettings implements Callback, Cal
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
mSession.resume();
|
||||
mSmsBackend.resume();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
mSmsBackend.pause();
|
||||
mSession.pause();
|
||||
super.onPause();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
mSmsBackend.release();
|
||||
mSession.release();
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
|
@@ -61,7 +61,7 @@ public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
(Application) getContext().getApplicationContext());
|
||||
mDataSaverBackend = new DataSaverBackend(getContext());
|
||||
mDataUsageBridge = new AppStateDataUsageBridge(mApplicationsState, this, mDataSaverBackend);
|
||||
mSession = mApplicationsState.newSession(this);
|
||||
mSession = mApplicationsState.newSession(this, getLifecycle());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -78,7 +78,6 @@ public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
mDataSaverBackend.refreshWhitelist();
|
||||
mDataSaverBackend.refreshBlacklist();
|
||||
mDataSaverBackend.addListener(this);
|
||||
mSession.resume();
|
||||
mDataUsageBridge.resume();
|
||||
}
|
||||
|
||||
@@ -87,7 +86,6 @@ public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
super.onPause();
|
||||
mDataSaverBackend.remListener(this);
|
||||
mDataUsageBridge.pause();
|
||||
mSession.pause();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -64,7 +64,7 @@ public class UnrestrictedDataAccess extends SettingsPreferenceFragment
|
||||
(Application) getContext().getApplicationContext());
|
||||
mDataSaverBackend = new DataSaverBackend(getContext());
|
||||
mDataUsageBridge = new AppStateDataUsageBridge(mApplicationsState, this, mDataSaverBackend);
|
||||
mSession = mApplicationsState.newSession(this);
|
||||
mSession = mApplicationsState.newSession(this, getLifecycle());
|
||||
mShowSystem = icicle != null && icicle.getBoolean(EXTRA_SHOW_SYSTEM);
|
||||
mFilter = mShowSystem ? ApplicationsState.FILTER_ALL_ENABLED
|
||||
: ApplicationsState.FILTER_DOWNLOADED_AND_LAUNCHER;
|
||||
@@ -109,7 +109,6 @@ public class UnrestrictedDataAccess extends SettingsPreferenceFragment
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
mSession.resume();
|
||||
mDataUsageBridge.resume();
|
||||
}
|
||||
|
||||
@@ -117,13 +116,11 @@ public class UnrestrictedDataAccess extends SettingsPreferenceFragment
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
mDataUsageBridge.pause();
|
||||
mSession.pause();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
mSession.release();
|
||||
mDataUsageBridge.release();
|
||||
}
|
||||
|
||||
|
@@ -28,7 +28,6 @@ import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.ResolveInfo;
|
||||
import android.content.pm.UserInfo;
|
||||
import android.content.res.Resources;
|
||||
import android.net.Uri;
|
||||
import android.os.AsyncTask;
|
||||
@@ -77,7 +76,7 @@ import java.util.List;
|
||||
*/
|
||||
//TODO(b/35810915): Make InstalledAppDetails use this controller
|
||||
public class AppButtonsPreferenceController extends AbstractPreferenceController implements
|
||||
PreferenceControllerMixin, LifecycleObserver, OnResume, OnPause, OnDestroy,
|
||||
PreferenceControllerMixin, LifecycleObserver, OnResume, OnDestroy,
|
||||
ApplicationsState.Callbacks {
|
||||
public static final String APP_CHG = "chg";
|
||||
|
||||
@@ -144,7 +143,7 @@ public class AppButtonsPreferenceController extends AbstractPreferenceController
|
||||
|
||||
if (packageName != null) {
|
||||
mAppEntry = mState.getEntry(packageName, mUserId);
|
||||
mSession = mState.newSession(this);
|
||||
mSession = mState.newSession(this, lifecycle);
|
||||
lifecycle.addObserver(this);
|
||||
} else {
|
||||
mFinishing = true;
|
||||
@@ -179,7 +178,6 @@ public class AppButtonsPreferenceController extends AbstractPreferenceController
|
||||
|
||||
@Override
|
||||
public void onResume() {
|
||||
mSession.resume();
|
||||
if (isAvailable() && !mFinishing) {
|
||||
mAppsControlDisallowedBySystem = RestrictedLockUtils.hasBaseUserRestriction(mActivity,
|
||||
UserManager.DISALLOW_APPS_CONTROL, mUserId);
|
||||
@@ -192,15 +190,9 @@ public class AppButtonsPreferenceController extends AbstractPreferenceController
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
mSession.pause();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
stopListeningToPackageRemove();
|
||||
mSession.release();
|
||||
}
|
||||
|
||||
private class UninstallAndDisableButtonListener implements View.OnClickListener {
|
||||
|
Reference in New Issue
Block a user