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

Commit 3e713e09 authored by fionaxu's avatar fionaxu
Browse files

Initial change on carrier signal filtering

- add new carrier config
- configure defaultcarrierapp as the default receiver for redirection
  signal

Bug: 30958215
Test: runtest --path
frameworks/opt/telephony/tests/telephonytests/src/com/android/internal/telephony

Change-Id: I094c39fe21e6883d2acef8f7479b948fc77ce14e
Merged-In: CHANGE-ID I14bb1a885d1eaca9a144eb1e1caca72339d67d2e
parent cfb19e3a
Loading
Loading
Loading
Loading
+42 −36
Original line number Diff line number Diff line
@@ -809,39 +809,6 @@ public class CarrierConfigManager {
     */
     public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string";

    /**
     * A list of component name of carrier signalling receivers which are interested in intent
     * android.intent.action.CARRIER_SIGNAL_REDIRECTED.
     * Example:
     * <item>com.google.android.carrierPackageName/.CarrierSignalReceiverNameA</item>
     * <item>com.google.android.carrierPackageName/.CarrierSignalReceiverNameB</item>
     * @hide
     */
    public static final String KEY_SIGNAL_REDIRECTION_RECEIVER_STRING_ARRAY =
            "signal_redirection_receiver_string_array";

    /**
     * A list of component name of carrier signalling receivers which are interested in intent
     * android.intent.action.CARRIER_SIGNAL_REQUEST_NETWORK_FAILED.
     * Example:
     * <item>com.google.android.carrierPackageName/.CarrierSignalReceiverNameA</item>
     * <item>com.google.android.carrierPackageName/.CarrierSignalReceiverNameB</item>
     * @hide
     */
    public static final String KEY_SIGNAL_DCFAILURE_RECEIVER_STRING_ARRAY =
            "signal_dcfailure_receiver_string_array";

    /**
     * A list of component name of carrier signalling receivers which are interested in intent
     * android.intent.action.CARRIER_SIGNAL_PCO_VALUE.
     * Example:
     * <item>com.google.android.carrierPackageName/.CarrierSignalReceiverNameA</item>
     * <item>com.google.android.carrierPackageName/.CarrierSignalReceiverNameB</item>
     * @hide
     */
    public static final String KEY_SIGNAL_PCO_RECEIVER_STRING_ARRAY =
            "signal_pco_receiver_string_array";

    /**
     * Defines carrier-specific actions which act upon
     * android.intent.action.CARRIER_SIGNAL_REDIRECTED, used for customization of the
@@ -894,6 +861,42 @@ public class CarrierConfigManager {
    public static final String KEY_CARRIER_DEFAULT_REDIRECTION_URL_STRING_ARRAY =
            "carrier_default_redirection_url_string_array";

    /**
     * Each config includes the componentName of the carrier app, followed by a list of interesting
     * signals(declared in the manifest) which could wake up the app.
     * @see com.android.internal.telephony.TelephonyIntents
     * Example:
     * <item>com.google.android.carrierAPK/.CarrierSignalReceiverA:
     * android.intent.action.CARRIER_SIGNAL_REDIRECTED,
     * android.intent.action.CARRIER_SIGNAL_PCO_VALUE
     * </item>
     * <item>com.google.android.carrierAPK/.CarrierSignalReceiverB:
     * android.intent.action.CARRIER_SIGNAL_PCO_VALUE
     * </item>
     * @hide
     */
    public static final String KEY_CARRIER_APP_WAKE_SIGNAL_CONFIG_STRING_ARRAY =
            "carrier_app_wake_signal_config";

    /**
     * Each config includes the componentName of the carrier app, followed by a list of interesting
     * signals for the app during run-time. The list of signals(intents) are targeting on run-time
     * broadcast receivers only, aiming to avoid unnecessary wake-ups and should not be declared in
     * the app's manifest.
     * @see com.android.internal.telephony.TelephonyIntents
     * Example:
     * <item>com.google.android.carrierAPK/.CarrierSignalReceiverA:
     * android.intent.action.CARRIER_SIGNAL_REQUEST_NETWORK_FAILED,
     * android.intent.action.CARRIER_SIGNAL_PCO_VALUE
     * </item>
     * <item>com.google.android.carrierAPK/.CarrierSignalReceiverB:
     * android.intent.action.CARRIER_SIGNAL_REQUEST_NETWORK_FAILED
     * </item>
     * @hide
     */
    public static final String KEY_CARRIER_APP_NO_WAKE_SIGNAL_CONFIG_STRING_ARRAY =
            "carrier_app_no_wake_signal_config";

    /**
     * Determines whether the carrier supports making non-emergency phone calls while the phone is
     * in emergency callback mode.  Default value is {@code true}, meaning that non-emergency calls
@@ -1276,10 +1279,13 @@ public class CarrierConfigManager {
        sDefaults.putInt(KEY_CDMA_ROAMING_MODE_INT, CDMA_ROAMING_MODE_RADIO_DEFAULT);

        // Carrier Signalling Receivers
        sDefaults.putStringArray(KEY_SIGNAL_REDIRECTION_RECEIVER_STRING_ARRAY, null);
        sDefaults.putStringArray(KEY_SIGNAL_DCFAILURE_RECEIVER_STRING_ARRAY, null);
        sDefaults.putStringArray(KEY_SIGNAL_PCO_RECEIVER_STRING_ARRAY, null);
        sDefaults.putString(KEY_CARRIER_SETUP_APP_STRING, "");
        sDefaults.putStringArray(KEY_CARRIER_APP_WAKE_SIGNAL_CONFIG_STRING_ARRAY,
                new String[]{
                        "com.android.carrierdefaultapp/.CarrierDefaultBroadcastReceiver:" +
                                "android.intent.action.CARRIER_SIGNAL_REDIRECTED"
                });
        sDefaults.putStringArray(KEY_CARRIER_APP_NO_WAKE_SIGNAL_CONFIG_STRING_ARRAY, null);

        // Default carrier app configurations
        sDefaults.putStringArray(KEY_CARRIER_DEFAULT_ACTIONS_ON_REDIRECTION_STRING_ARRAY,