aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2019-07-17 06:05:00 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2019-07-17 06:05:00 +0000
commitb4d825c68882899d95c9922bccb9aa4f8f9858da (patch)
tree458c300602a2560e19911b6fdd822b4d03ebfbc5
parentc107ab887189160d8e7184231fe20b8102cc43b9 (diff)
parenteba1e3ddcd39f92cb81d6fc33839f73f062f8be2 (diff)
downloadtelephony-b4d825c68882899d95c9922bccb9aa4f8f9858da.tar.gz
Merge "DUT can not show carrier name correctly." into qt-r1-dev
-rwxr-xr-xsrc/java/com/android/internal/telephony/ServiceStateTracker.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/java/com/android/internal/telephony/ServiceStateTracker.java b/src/java/com/android/internal/telephony/ServiceStateTracker.java
index fc9ec6682a..79fbedde76 100755
--- a/src/java/com/android/internal/telephony/ServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/ServiceStateTracker.java
@@ -70,6 +70,7 @@ import android.telephony.NetworkRegistrationInfo;
import android.telephony.PhysicalChannelConfig;
import android.telephony.Rlog;
import android.telephony.ServiceState;
+import android.telephony.ServiceState.RilRadioTechnology;
import android.telephony.SignalStrength;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
@@ -1812,7 +1813,7 @@ public class ServiceStateTracker extends Handler {
* data roaming status. If TSB58 roaming indicator is not in the
* carrier-specified list of ERIs for home system then set roaming.
*/
- final int dataRat = mNewSS.getRilDataRadioTechnology();
+ final int dataRat = getRilDataRadioTechnologyForWwan(mNewSS);
if (ServiceState.isCdma(dataRat)) {
final boolean isVoiceInService =
(mNewSS.getVoiceRegState() == ServiceState.STATE_IN_SERVICE);
@@ -5161,7 +5162,7 @@ public class ServiceStateTracker extends Handler {
}
final boolean isDataInService =
(currentServiceState.getDataRegState() == ServiceState.STATE_IN_SERVICE);
- final int dataRegType = currentServiceState.getRilDataRadioTechnology();
+ final int dataRegType = getRilDataRadioTechnologyForWwan(currentServiceState);
if (isDataInService) {
if (!currentServiceState.getDataRoaming()) {
currentServiceState.setDataRoamingType(ServiceState.ROAMING_TYPE_NOT_ROAMING);
@@ -5478,4 +5479,15 @@ public class ServiceStateTracker extends Handler {
}
return operatorName;
}
+
+ @RilRadioTechnology
+ private static int getRilDataRadioTechnologyForWwan(ServiceState ss) {
+ NetworkRegistrationInfo regInfo = ss.getNetworkRegistrationInfo(
+ NetworkRegistrationInfo.DOMAIN_PS, AccessNetworkConstants.TRANSPORT_TYPE_WWAN);
+ int networkType = TelephonyManager.NETWORK_TYPE_UNKNOWN;
+ if (regInfo != null) {
+ networkType = regInfo.getAccessNetworkTechnology();
+ }
+ return ServiceState.networkTypeToRilRadioTechnology(networkType);
+ }
}