Update PhoneGlobals, PhoneInterfaceManager and CdmaConference to use carrierconfig.
Moved variables:
support_swap_after_merge
ignore_sim_network_locked_events
dtmf_type_enabled
world_phone
Bug: b/20270007
Change-Id: I12619f16b6a085b57edc1248b8445705bf5b11de
diff --git a/src/com/android/phone/PhoneGlobals.java b/src/com/android/phone/PhoneGlobals.java
index b931340..e71d1fb 100644
--- a/src/com/android/phone/PhoneGlobals.java
+++ b/src/com/android/phone/PhoneGlobals.java
@@ -48,6 +48,7 @@
import android.os.UserHandle;
import android.preference.PreferenceManager;
import android.provider.Settings.System;
+import android.telephony.CarrierConfigManager;
import android.telephony.ServiceState;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
@@ -238,7 +239,7 @@
// TODO: This event should be handled by the lock screen, just
// like the "SIM missing" and "Sim locked" cases (bug 1804111).
case EVENT_SIM_NETWORK_LOCKED:
- if (getResources().getBoolean(R.bool.ignore_sim_network_locked_events)) {
+ if (getCarrierConfig().getBoolean(CarrierConfigManager.BOOL_IGNORE_SIM_NETWORK_LOCKED_EVENTS)) {
// Some products don't have the concept of a "SIM network lock"
Log.i(LOG_TAG, "Ignoring EVENT_SIM_NETWORK_LOCKED event; "
+ "not showing 'SIM network unlock' PIN entry screen");
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 3045903..3b629d5 100644
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -37,6 +37,7 @@
import android.provider.Settings;
import android.telecom.PhoneAccount;
import android.telecom.TelecomManager;
+import android.telephony.CarrierConfigManager;
import android.telephony.CellInfo;
import android.telephony.IccOpenLogicalChannelResponse;
import android.telephony.NeighboringCellInfo;
@@ -2294,12 +2295,12 @@
@Override
public boolean canChangeDtmfToneLength() {
- return mPhone.getContext().getResources().getBoolean(R.bool.dtmf_type_enabled);
+ return mApp.getCarrierConfig().getBoolean(CarrierConfigManager.BOOL_DTMF_TYPE_ENABLED);
}
@Override
public boolean isWorldPhone() {
- return mPhone.getContext().getResources().getBoolean(R.bool.world_phone);
+ return mApp.getCarrierConfig().getBoolean(CarrierConfigManager.BOOL_WORLD_PHONE);
}
@Override
diff --git a/src/com/android/services/telephony/CdmaConference.java b/src/com/android/services/telephony/CdmaConference.java
index 6a55efe..3423a3e 100755
--- a/src/com/android/services/telephony/CdmaConference.java
+++ b/src/com/android/services/telephony/CdmaConference.java
@@ -18,9 +18,11 @@
import android.content.Context;
import android.content.res.Resources;
+import android.os.Bundle;
import android.telecom.Conference;
import android.telecom.Connection;
import android.telecom.PhoneAccountHandle;
+import android.telephony.CarrierConfigManager;
import com.android.internal.telephony.Call;
import com.android.internal.telephony.CallStateException;
@@ -165,9 +167,11 @@
Context context = PhoneGlobals.getInstance();
if (context != null) {
- Resources r = context.getResources();
- if (r != null) {
- supportSwapAfterMerge = r.getBoolean(R.bool.support_swap_after_merge);
+ CarrierConfigManager configManager = (CarrierConfigManager) context.getSystemService(
+ Context.CARRIER_CONFIG_SERVICE);
+ Bundle b = configManager.getConfig();
+ if (b != null) {
+ supportSwapAfterMerge = b.getBoolean(CarrierConfigManager.BOOL_SUPPORT_SWAP_AFTER_MERGE);
Log.d(this, "Current network support swap after call merged capability is "
+ supportSwapAfterMerge);
}