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

Commit d5a96ebd authored by Jack Yu's avatar Jack Yu Committed by Automerger Merge Worker
Browse files

Added issue detector for incorrect unmetered flag am: eb145df9

Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/telephony/+/1544171

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I79d8af386b887b9686214f095c151990113736e2
parents f5304430 eb145df9
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -50,6 +50,7 @@ import android.telephony.AccessNetworkConstants;
import android.telephony.AccessNetworkConstants.TransportType;
import android.telephony.Annotation.ApnType;
import android.telephony.Annotation.DataFailureCause;
import android.telephony.AnomalyReporter;
import android.telephony.Annotation.DataState;
import android.telephony.Annotation.NetworkType;
import android.telephony.CarrierConfigManager;
@@ -108,6 +109,7 @@ import java.util.Collection;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.Consumer;
@@ -1648,6 +1650,16 @@ public class DataConnection extends StateMachine {
        if ((mUnmeteredUseOnly && !mRestrictedNetworkOverride) || mUnmeteredOverride
                || (mSubscriptionOverride & SUBSCRIPTION_OVERRIDE_UNMETERED) != 0) {
            result.addCapability(NetworkCapabilities.NET_CAPABILITY_TEMPORARILY_NOT_METERED);
            if (result.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
                    && (mPhone.getRadioAccessFamily() & TelephonyManager.NETWORK_TYPE_BITMASK_NR)
                    == 0) {
                String message = "Unexpected TEMPORARILY_NOT_METERED on devices not supporting NR.";
                loge(message);
                // Using fixed UUID to avoid duplicate bugreport notification
                AnomalyReporter.reportAnomaly(
                        UUID.fromString("9151f0fc-01df-4afb-b744-9c4529055248"),
                        message);
            }
        } else {
            result.removeCapability(NetworkCapabilities.NET_CAPABILITY_TEMPORARILY_NOT_METERED);
        }