Fixed incorrect metered/unmetered APN in AP-assisted mode
From now all data traffic through IWLAN will be unmetered. Only
data through cellular will be checked for metered/unmetered.
Test: Unit tests
Bug: 132433959
Merged-In: I871026ee49f71f546bb96f6121d185f46594cadf
Change-Id: I871026ee49f71f546bb96f6121d185f46594cadf
(cherry picked from commit 41407eec57867164b74f285aee6a4927a75be4e6)
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index f9bd565..2cd63ae 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -91,6 +91,7 @@
import android.telephony.VisualVoicemailSmsFilterSettings;
import android.telephony.cdma.CdmaCellLocation;
import android.telephony.data.ApnSetting;
+import android.telephony.data.ApnSetting.ApnType;
import android.telephony.emergency.EmergencyNumber;
import android.telephony.gsm.GsmCellLocation;
import android.telephony.ims.ProvisioningManager;
@@ -7041,8 +7042,7 @@
Phone phone = getPhone(subId);
if (phone == null) return false;
- boolean isMetered = ApnSettingUtils.isMeteredApnType(ApnSetting.getApnTypeString(
- apnType), phone);
+ boolean isMetered = ApnSettingUtils.isMeteredApnType(apnType, phone);
return !isMetered || phone.getDataEnabledSettings().isDataEnabled(apnType);
} finally {
Binder.restoreCallingIdentity(identity);
@@ -7050,7 +7050,7 @@
}
@Override
- public boolean isApnMetered(int apnType, int subId) {
+ public boolean isApnMetered(@ApnType int apnType, int subId) {
enforceReadPrivilegedPermission("isApnMetered");
// Now that all security checks passes, perform the operation as ourselves.
@@ -7059,8 +7059,7 @@
Phone phone = getPhone(subId);
if (phone == null) return true; // By default return true.
- return ApnSettingUtils.isMeteredApnType(ApnSetting.getApnTypeString(
- apnType), phone);
+ return ApnSettingUtils.isMeteredApnType(apnType, phone);
} finally {
Binder.restoreCallingIdentity(identity);
}