Remove context from applicationFeatureProvider

ApplicationFeatureProvider is created by using application context,
no need pass context in when get.

Bug: 286764889
Test: m Settings
Change-Id: I7f8dfe5716b7b55e0ff984f7603875d7896e2313
This commit is contained in:
Chaohui Wang
2023-07-03 13:52:39 +08:00
parent de771725c4
commit 778c2dc3d5
17 changed files with 41 additions and 37 deletions

View File

@@ -90,8 +90,8 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
super.onCreate(savedInstanceState);
mFinishing = false;
final Activity activity = getActivity();
mApplicationFeatureProvider = FeatureFactory.getFactory(activity)
.getApplicationFeatureProvider(activity);
mApplicationFeatureProvider = FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider();
mState = ApplicationsState.getInstance(activity.getApplication());
mSession = mState.newSession(this, getSettingsLifecycle());
mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE);

View File

@@ -138,9 +138,9 @@ public class AppButtonsPreferenceController extends BasePreferenceController imp
"Fragment should implement AppButtonsDialogListener");
}
final FeatureFactory factory = FeatureFactory.getFactory(activity);
final FeatureFactory factory = FeatureFactory.getFeatureFactory();
mMetricsFeatureProvider = factory.getMetricsFeatureProvider();
mApplicationFeatureProvider = factory.getApplicationFeatureProvider(activity);
mApplicationFeatureProvider = factory.getApplicationFeatureProvider();
mState = state;
mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE);
mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE);

View File

@@ -40,8 +40,8 @@ public class LongBackgroundTasksDetailsPreferenceController extends
public LongBackgroundTasksDetailsPreferenceController(Context context, String key) {
super(context, key);
mAppFeatureProvider = FeatureFactory.getFactory(context)
.getApplicationFeatureProvider(context);
mAppFeatureProvider = FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider();
}
@VisibleForTesting

View File

@@ -53,8 +53,8 @@ public class TimeSpentInAppPreferenceController extends LiveDataController {
public TimeSpentInAppPreferenceController(Context context, String preferenceKey) {
super(context, preferenceKey);
mPackageManager = context.getPackageManager();
mAppFeatureProvider = FeatureFactory.getFactory(context)
.getApplicationFeatureProvider(context);
mAppFeatureProvider = FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider();
}
public void setPackageName(String packageName) {

View File

@@ -30,8 +30,8 @@ public class LongBackgroundTaskController extends BasePreferenceController {
public LongBackgroundTaskController(Context context, String preferenceKey) {
super(context, preferenceKey);
mAppFeatureProvider = FeatureFactory.getFactory(context)
.getApplicationFeatureProvider(context);
mAppFeatureProvider = FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider();
}
@Override

View File

@@ -38,8 +38,8 @@ public abstract class AdminGrantedPermissionsPreferenceControllerBase
String[] permissions) {
super(context);
mPermissions = permissions;
mFeatureProvider = FeatureFactory.getFactory(context)
.getApplicationFeatureProvider(context);
mFeatureProvider = FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider();
mAsync = async;
mHasApps = false;
}

View File

@@ -79,7 +79,7 @@ public abstract class ApplicationListFragment extends DashboardFragment
@Override
public void buildApplicationList(Context context,
ApplicationFeatureProvider.ListOfAppsCallback callback) {
FeatureFactory.getFactory(context).getApplicationFeatureProvider(context)
FeatureFactory.getFeatureFactory().getApplicationFeatureProvider()
.listAppsWithAdminGrantedPermissions(mPermissions, callback);
}
@@ -120,8 +120,8 @@ public abstract class ApplicationListFragment extends DashboardFragment
@Override
public void buildApplicationList(Context context,
ApplicationFeatureProvider.ListOfAppsCallback callback) {
FeatureFactory.getFactory(context).getApplicationFeatureProvider(context).
listPolicyInstalledApps(callback);
FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider().listPolicyInstalledApps(callback);
}
}
}

View File

@@ -34,8 +34,8 @@ public class EnterpriseInstalledPackagesPreferenceController
public EnterpriseInstalledPackagesPreferenceController(Context context, boolean async) {
super(context);
mFeatureProvider = FeatureFactory.getFactory(context)
.getApplicationFeatureProvider(context);
mFeatureProvider = FeatureFactory.getFeatureFactory()
.getApplicationFeatureProvider();
mAsync = async;
}

View File

@@ -69,8 +69,8 @@ public class EnterpriseSetDefaultAppsListPreferenceController extends
super(context);
mPm = packageManager;
mParent = parent;
final FeatureFactory factory = FeatureFactory.getFactory(context);
mApplicationFeatureProvider = factory.getApplicationFeatureProvider(context);
final FeatureFactory factory = FeatureFactory.getFeatureFactory();
mApplicationFeatureProvider = factory.getApplicationFeatureProvider();
mEnterprisePrivacyFeatureProvider = factory.getEnterprisePrivacyFeatureProvider(context);
mUserFeatureProvider = factory.getUserFeatureProvider(context);
buildAppList();

View File

@@ -37,8 +37,8 @@ public class EnterpriseSetDefaultAppsPreferenceController
public EnterpriseSetDefaultAppsPreferenceController(Context context) {
super(context);
final FeatureFactory factory = FeatureFactory.getFactory(context);
mApplicationFeatureProvider = factory.getApplicationFeatureProvider(context);
final FeatureFactory factory = FeatureFactory.getFeatureFactory();
mApplicationFeatureProvider = factory.getApplicationFeatureProvider();
mUserFeatureProvider = factory.getUserFeatureProvider(context);
}

View File

@@ -84,7 +84,7 @@ abstract class FeatureFactory {
abstract fun getDashboardFeatureProvider(context: Context): DashboardFeatureProvider
abstract val dockUpdaterFeatureProvider: DockUpdaterFeatureProvider
abstract fun getApplicationFeatureProvider(context: Context): ApplicationFeatureProvider
abstract val applicationFeatureProvider: ApplicationFeatureProvider
abstract val localeFeatureProvider: LocaleFeatureProvider
abstract fun getEnterprisePrivacyFeatureProvider(

View File

@@ -66,15 +66,6 @@ import com.android.settingslib.spaprivileged.framework.common.devicePolicyManage
* [FeatureFactory] implementation for AOSP Settings.
*/
open class FeatureFactoryImpl : FeatureFactory() {
private val applicationFeatureProvider by lazy {
ApplicationFeatureProviderImpl(
appContext,
appContext.packageManager,
AppGlobals.getPackageManager(),
appContext.devicePolicyManager,
)
}
private val dashboardFeatureProvider by lazy { DashboardFeatureProviderImpl(appContext) }
private val enterprisePrivacyFeatureProvider by lazy {
@@ -120,7 +111,14 @@ open class FeatureFactoryImpl : FeatureFactory() {
DockUpdaterFeatureProviderImpl()
}
override fun getApplicationFeatureProvider(context: Context) = applicationFeatureProvider
override val applicationFeatureProvider by lazy {
ApplicationFeatureProviderImpl(
appContext,
appContext.packageManager,
AppGlobals.getPackageManager(),
appContext.devicePolicyManager,
)
}
override val localeFeatureProvider by lazy { LocaleFeatureProviderImpl() }

View File

@@ -43,7 +43,7 @@ class AppDisableButton(
private val packageManager = context.packageManager
private val userManager = context.userManager
private val devicePolicyManager = context.devicePolicyManager
private val applicationFeatureProvider = featureFactory.getApplicationFeatureProvider(context)
private val applicationFeatureProvider = featureFactory.applicationFeatureProvider
@Composable
fun getActionButton(app: ApplicationInfo): ActionButton? {

View File

@@ -60,7 +60,7 @@ private class AppTimeSpentPresenter(
private val intent = Intent(Settings.ACTION_APP_USAGE_SETTINGS).apply {
putExtra(Intent.EXTRA_PACKAGE_NAME, app.packageName)
}
private val appFeatureProvider = featureFactory.getApplicationFeatureProvider(context)
private val appFeatureProvider = featureFactory.applicationFeatureProvider
fun isAvailable() = context.packageManager.queryIntentActivitiesAsUser(
intent, ResolveInfoFlags.of(0), app.userId

View File

@@ -53,6 +53,8 @@ import com.android.settings.wifi.WifiTrackerLibProvider;
import com.android.settings.wifi.factory.WifiFeatureProvider;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import org.jetbrains.annotations.NotNull;
/**
* Test util to provide fake FeatureFactory. To use this factory, call {@code setupForTest} in
* {@code @Before} method of the test class.
@@ -177,8 +179,9 @@ public class FakeFeatureFactory extends FeatureFactory {
return dockUpdaterFeatureProvider;
}
@NotNull
@Override
public ApplicationFeatureProvider getApplicationFeatureProvider(Context context) {
public ApplicationFeatureProvider getApplicationFeatureProvider() {
return applicationFeatureProvider;
}

View File

@@ -93,7 +93,7 @@ class FakeFeatureFactory : FeatureFactory() {
override val dockUpdaterFeatureProvider: DockUpdaterFeatureProvider
get() = TODO("Not yet implemented")
override fun getApplicationFeatureProvider(context: Context) = mockApplicationFeatureProvider
override val applicationFeatureProvider = mockApplicationFeatureProvider
override val localeFeatureProvider: LocaleFeatureProvider
get() = TODO("Not yet implemented")

View File

@@ -53,6 +53,8 @@ import com.android.settings.wifi.WifiTrackerLibProvider;
import com.android.settings.wifi.factory.WifiFeatureProvider;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import org.jetbrains.annotations.NotNull;
/**
* Test util to provide fake FeatureFactory. To use this factory, call {@code setupForTest} in
* {@code @Before} method of the test class.
@@ -176,8 +178,9 @@ public class FakeFeatureFactory extends FeatureFactory {
return dockUpdaterFeatureProvider;
}
@NotNull
@Override
public ApplicationFeatureProvider getApplicationFeatureProvider(Context context) {
public ApplicationFeatureProvider getApplicationFeatureProvider() {
return applicationFeatureProvider;
}