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:
@@ -52,6 +52,7 @@ package android.net {
|
||||
method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context);
|
||||
method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
|
||||
method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
|
||||
method @Nullable public static String getMobileDataPreferredApps(@NonNull android.content.Context);
|
||||
method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context);
|
||||
method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context);
|
||||
method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int);
|
||||
@@ -69,6 +70,7 @@ package android.net {
|
||||
method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo);
|
||||
method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
|
||||
method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
|
||||
method public static void setMobileDataPreferredApps(@NonNull android.content.Context, @Nullable String);
|
||||
method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int);
|
||||
method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String);
|
||||
method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int);
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user