Add MOBILE_DATA_PREFERRED_APPS setting

This setting is OEM upstream requirement for mobile data
preferred apps feature.

Bug: 171872461
Test: atest FrameworksNetTests
Merged-In: Ic5e0515b2b948de3d333c8d8e073d0b15514562a
Change-Id: Iba17bf68cffbe39d1c08ad94364b41bbf851bf57
This commit is contained in:
paulhu
2021-03-25 13:17:58 +08:00
committed by Lorenzo Colitti
parent 6865eb6dda
commit 7a4eeed62f
2 changed files with 35 additions and 0 deletions

View File

@@ -332,6 +332,14 @@ public class ConnectivitySettingsManager {
public static final String NETWORK_METERED_MULTIPATH_PREFERENCE =
"network_metered_multipath_preference";
/**
* A list of apps that should go on cellular networks in preference even when higher-priority
* networks are connected.
*
* @hide
*/
public static final String MOBILE_DATA_PREFERRED_APPS = "mobile_data_preferred_apps";
/**
* Get mobile data activity timeout from {@link Settings}.
*
@@ -893,4 +901,29 @@ public class ConnectivitySettingsManager {
Settings.Global.putString(
context.getContentResolver(), NETWORK_METERED_MULTIPATH_PREFERENCE, preference);
}
/**
* Get the list of apps(from {@link Settings}) that should go on cellular networks in preference
* even when higher-priority networks are connected.
*
* @param context The {@link Context} to query the setting.
* @return A list of apps that should go on cellular networks in preference even when
* higher-priority networks are connected or null if no setting value.
*/
@Nullable
public static String getMobileDataPreferredApps(@NonNull Context context) {
return Settings.Secure.getString(context.getContentResolver(), MOBILE_DATA_PREFERRED_APPS);
}
/**
* Set the list of apps(to {@link Settings}) that should go on cellular networks in preference
* even when higher-priority networks are connected.
*
* @param context The {@link Context} to set the setting.
* @param list A list of apps that should go on cellular networks in preference even when
* higher-priority networks are connected.
*/
public static void setMobileDataPreferredApps(@NonNull Context context, @Nullable String list) {
Settings.Secure.putString(context.getContentResolver(), MOBILE_DATA_PREFERRED_APPS, list);
}
}