aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/com/android/internal/telephony/ServiceStateTracker.java
diff options
context:
space:
mode:
authorYashdev Singh <yashdevs@codeaurora.org>2016-09-08 19:31:01 -0700
committerYashdev Singh <yashdevs@codeaurora.org>2016-09-12 13:12:52 -0700
commit4a179434ef45ac04e633acbfed517e63657f6add (patch)
tree35fcb40bc16d72a0223fdbe48c44e1b27238657c /src/java/com/android/internal/telephony/ServiceStateTracker.java
parenta5c4045289a4e7741a5add2c14d83f96a1543009 (diff)
downloadandroid_frameworks_opt_telephony-4a179434ef45ac04e633acbfed517e63657f6add.tar.gz
android_frameworks_opt_telephony-4a179434ef45ac04e633acbfed517e63657f6add.tar.bz2
android_frameworks_opt_telephony-4a179434ef45ac04e633acbfed517e63657f6add.zip
Telephony: Fix RUIM app mcc/mnc issue.
if mUiccAppType is RUIM: use RuimRecords for mcc/mnc lookup. else Use mIccRecords of mUiccAppType for mcc/mnc. Above algorithm mandates that mUiccAppType MUST always be correct for current configuration. This is controlled by VOICE_RADIO_TECH and mPrecisePhoneType For the configuration where simcard has only RuimApp and SimApp. - In home network, VOICE_RADIO_TECH would indicate 1x. - This would result in enforcing that phonetype be CDMA. - MCC/MNC lookup on GsmCdmaPhone would result in using RuimRecords. - *#0000# would show RuimRecords parameters. - In roaming GSM networks, VOICE_RADIO_TECH would indicate 3GPP RAT value. - this would force phone type to change from cdma >> GSM. - SimRecords would be used in mcc/mnc lookup. - *#0000# would show SimRecords parameters. For the configuration where simcard has CsimApp, UsimApp and Isimapp. - In home/roaming network, VOICE_RADIO_TECH would indicate 3GPP-rats/1x/LTE - GsmCdmaPhone would use SimRecords irrespective of VOICE_RADIO_TECH value. - *#0000# would show SimRecords or RuimRecords parameters based on current phoneType and VOICE_RADIO_TECH. For the configurations where simcard has Csimapp or just RuimApp. - RuimRecords would be used in mcc/mnc lookup. - *#0000# woud show RuimRecords parameters. Change-Id: Id2ac103c1d6fc6a3dbe6849f73ce92f84b5305ad
Diffstat (limited to 'src/java/com/android/internal/telephony/ServiceStateTracker.java')
-rw-r--r--src/java/com/android/internal/telephony/ServiceStateTracker.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/java/com/android/internal/telephony/ServiceStateTracker.java b/src/java/com/android/internal/telephony/ServiceStateTracker.java
index c02fff082..1374fe3a0 100644
--- a/src/java/com/android/internal/telephony/ServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/ServiceStateTracker.java
@@ -580,9 +580,7 @@ public class ServiceStateTracker extends Handler {
mCi.unregisterForAvailable(this);
mCi.unSetOnRestrictedStateChanged(this);
- if (mPhone.isPhoneTypeCdmaLte()) {
- mPhone.registerForSimRecordsLoaded(this, EVENT_SIM_RECORDS_LOADED, null);
- }
+ mPhone.registerForSimRecordsLoaded(this, EVENT_SIM_RECORDS_LOADED, null);
mCellLoc = new CdmaCellLocation();
mNewCellLoc = new CdmaCellLocation();
mCdmaSSM = CdmaSubscriptionSourceManager.getInstance(mPhone.getContext(), mCi, this,
@@ -4226,7 +4224,8 @@ public class ServiceStateTracker extends Handler {
public void powerOffRadioSafely(DcTracker dcTracker) {
synchronized (this) {
if (!mPendingRadioPowerOffAfterDataOff) {
- if (mPhone.isPhoneTypeGsm() || mPhone.isPhoneTypeCdmaLte()) {
+ if (mPhone.isPhoneTypeGsm() || mPhone.isPhoneTypeCdma()
+ || mPhone.isPhoneTypeCdmaLte()) {
int dds = SubscriptionManager.getDefaultDataSubscriptionId();
// To minimize race conditions we call cleanUpAllConnections on
// both if else paths instead of before this isDisconnected test.