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

Commit 149edbd8 authored by Jack Yu's avatar Jack Yu Committed by Gerrit Code Review
Browse files

Merge "Fixed incorrect metered/unmetered APN in AP-assisted mode"

parents ec7a701a a255aeab
Loading
Loading
Loading
Loading
+0 −16
Original line number Diff line number Diff line
@@ -835,13 +835,6 @@ public class CarrierConfigManager {
    public static final String KEY_CARRIER_METERED_ROAMING_APN_TYPES_STRINGS =
            "carrier_metered_roaming_apn_types_strings";

    /**
     * Default APN types that are metered on IWLAN by the carrier
     * @hide
     */
    public static final String KEY_CARRIER_METERED_IWLAN_APN_TYPES_STRINGS =
            "carrier_metered_iwlan_apn_types_strings";

    /**
     * CDMA carrier ERI (Enhanced Roaming Indicator) file name
     * @hide
@@ -2840,15 +2833,6 @@ public class CarrierConfigManager {
                new String[]{"default", "mms", "dun", "supl"});
        sDefaults.putStringArray(KEY_CARRIER_METERED_ROAMING_APN_TYPES_STRINGS,
                new String[]{"default", "mms", "dun", "supl"});
        // By default all APNs should be unmetered if the device is on IWLAN. However, we add
        // default APN as metered here as a workaround for P because in some cases, a data
        // connection was brought up on cellular, but later on the device camped on IWLAN. That
        // data connection was incorrectly treated as unmetered due to the current RAT IWLAN.
        // Marking it as metered for now can workaround the issue.
        // Todo: This will be fixed in Q when IWLAN full refactoring is completed.
        sDefaults.putStringArray(KEY_CARRIER_METERED_IWLAN_APN_TYPES_STRINGS,
                new String[]{"default"});

        sDefaults.putIntArray(KEY_ONLY_SINGLE_DC_ALLOWED_INT_ARRAY,
                new int[]{
                    4, /* IS95A */
+17 −0
Original line number Diff line number Diff line
@@ -1272,6 +1272,23 @@ public class ApnSetting implements Parcelable {
        return apnValue;
    }

    /**
     * Get supported APN types
     *
     * @return list of APN types
     * @hide
     */
    @ApnType
    public List<Integer> getApnTypes() {
        List<Integer> types = new ArrayList<>();
        for (Integer type : APN_TYPE_INT_MAP.keySet()) {
            if ((mApnTypeBitmask & type) == type) {
                types.add(type);
            }
        }
        return types;
    }

    /**
     * @param apnTypeBitmask bitmask of APN types.
     * @return comma delimited list of APN types.