From c24e219fc17565c643305d90773d7f71bd168e4e Mon Sep 17 00:00:00 2001 From: Nathan Harold Date: Tue, 12 Mar 2019 15:51:42 -0700 Subject: [PATCH] Opportunistic Sub Grouping Keys in CarrierConfig Add two keys to allow new subscriptions to be added into subscription groups before carrier config changes are broadcast. Bug: 123721160 Test: atest SubscriptionInfoUpdaterTest Change-Id: Ib6f811b70e41eba897b9bde0c0aeb0c880169f66 --- .../telephony/CarrierConfigManager.java | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index 1bb1bc4b534fa..0dd661413dfdf 100755 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -2557,6 +2557,48 @@ public class CarrierConfigManager { public static final String KEY_5G_ICON_CONFIGURATION_STRING = "5g_icon_configuration_string"; + /** + * Passing this value as {@link KEY_SUBSCRIPTION_GROUP_UUID_STRING} will remove the + * subscription from a group instead of adding it to a group. + * + * TODO: Expose in a future release. + * + * @hide + */ + public static final String REMOVE_GROUP_UUID_STRING = "00000000-0000-0000-0000-000000000000"; + + /** + * The UUID of a Group of related subscriptions in which to place the current subscription. + * + * A grouped subscription will behave for billing purposes and other UI purposes as though it + * is a transparent extension of other subscriptions in the group. + * + *

If set to {@link #REMOVE_GROUP_UUID_STRING}, then the subscription will be removed from + * its current group. + * + * TODO: unhide this key. + * + * @hide + */ + public static final String KEY_SUBSCRIPTION_GROUP_UUID_STRING = + "key_subscription_group_uuid_string"; + + /** + * A boolean property indicating whether this subscription should be managed as an opportunistic + * subscription. + * + * If true, then this subscription will be selected based on available coverage and will not be + * available for a user in settings menus for selecting macro network providers. If unset, + * defaults to “false”. + * + * TODO: unhide this key. + * + * @hide + */ + public static final String KEY_IS_OPPORTUNISTIC_SUBSCRIPTION_BOOL = + "key_is_opportunistic_subscription_bool"; + + /** The default value for every variable. */ private final static PersistableBundle sDefaults; @@ -2948,6 +2990,8 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_AUTO_CANCEL_CS_REJECT_NOTIFICATION, false); sDefaults.putBoolean(KEY_ALWAYS_SHOW_PRIMARY_SIGNAL_BAR_IN_OPPORTUNISTIC_NETWORK_BOOLEAN, false); + sDefaults.putString(KEY_SUBSCRIPTION_GROUP_UUID_STRING, ""); + sDefaults.putBoolean(KEY_IS_OPPORTUNISTIC_SUBSCRIPTION_BOOL, false); } /**