Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c24e219f authored by Nathan Harold's avatar Nathan Harold
Browse files

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
parent 7871659f
Loading
Loading
Loading
Loading
+44 −0
Original line number Diff line number Diff line
@@ -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.
     *
     * <p>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);
    }

    /**