summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/network
diff options
context:
space:
mode:
authorSongFerngWang <songferngwang@google.com>2020-05-19 20:19:16 +0800
committerSongFerng Wang <songferngwang@google.com>2020-05-19 12:32:57 +0000
commit414f8b8fe6218349f93526674de8836d0a92e9ae (patch)
treeb87578f8208d01a2e2fa350ee7bc2f155b665d48 /src/com/android/settings/network
parenta5eb615038ce2e15217a32e12e78854dae4e2ecd (diff)
downloadpackages_apps_Settings-414f8b8fe6218349f93526674de8836d0a92e9ae.tar.gz
packages_apps_Settings-414f8b8fe6218349f93526674de8836d0a92e9ae.tar.bz2
packages_apps_Settings-414f8b8fe6218349f93526674de8836d0a92e9ae.zip
Add corresponding code for the new NR condition
Bug: 155915216 Test: make RunSettingsRoboTests ROBOTEST_FILTER=\ EnabledNetworkModePreferenceControllerTest (Pass) Change-Id: I171ea0a8adc621ad5e9dc5cd2090e431b923e775
Diffstat (limited to 'src/com/android/settings/network')
-rw-r--r--src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java19
-rw-r--r--src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java5
2 files changed, 17 insertions, 7 deletions
diff --git a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
index 6917549cb2..26c206da84 100644
--- a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
+++ b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
@@ -204,13 +204,16 @@ public class EnabledNetworkModePreferenceController extends
.createForSubscriptionId(mSubId);
final PersistableBundle carrierConfig = mCarrierConfigManager.getConfigForSubId(mSubId);
+ final boolean isNrEnabledFromCarrierConfig = carrierConfig != null
+ && carrierConfig.getBoolean(CarrierConfigManager.KEY_NR_ENABLED_BOOL);
mAllowed5gNetworkType = checkSupportedRadioBitmask(
mTelephonyManager.getAllowedNetworkTypes(),
TelephonyManager.NETWORK_TYPE_BITMASK_NR);
- mSupported5gRadioAccessFamily = checkSupportedRadioBitmask(
- mTelephonyManager.getSupportedRadioAccessFamily(),
+ mSupported5gRadioAccessFamily = isNrEnabledFromCarrierConfig
+ && checkSupportedRadioBitmask(mTelephonyManager.getSupportedRadioAccessFamily(),
TelephonyManager.NETWORK_TYPE_BITMASK_NR);
mIsGlobalCdma = mTelephonyManager.isLteCdmaEvdoGsmWcdmaEnabled()
+ && carrierConfig != null
&& carrierConfig.getBoolean(CarrierConfigManager.KEY_SHOW_CDMA_CHOICES_BOOL);
mShow4gForLTE = carrierConfig != null && carrierConfig.getBoolean(
CarrierConfigManager.KEY_SHOW_4G_FOR_LTE_DATA_ICON_BOOL);
@@ -573,7 +576,7 @@ public class EnabledNetworkModePreferenceController extends
*/
private void add5gEntry(int value) {
boolean isNRValue = value >= TelephonyManagerConstants.NETWORK_MODE_NR_ONLY;
- if (mSupported5gRadioAccessFamily && mAllowed5gNetworkType && isNRValue) {
+ if (showNrList() && isNRValue) {
mEntries.add(mContext.getString(R.string.network_5G)
+ mContext.getString(R.string.network_recommended));
mEntriesValue.add(value);
@@ -592,7 +595,7 @@ public class EnabledNetworkModePreferenceController extends
+ " supported5GRadioAccessFamily: " + mSupported5gRadioAccessFamily
+ " allowed5GNetworkType: " + mAllowed5gNetworkType);
mEntries.add(mContext.getString(R.string.network_global));
- if (mSupported5gRadioAccessFamily & mAllowed5gNetworkType) {
+ if (showNrList()) {
mEntriesValue.add(
TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA);
} else {
@@ -601,11 +604,15 @@ public class EnabledNetworkModePreferenceController extends
}
}
+ private boolean showNrList() {
+ return mSupported5gRadioAccessFamily && mAllowed5gNetworkType;
+ }
+
/**
* Add LTE entry. If device supported 5G, show "LTE" instead of "LTE (recommended)".
*/
private void addLteEntry(int value) {
- if (mSupported5gRadioAccessFamily) {
+ if (showNrList()) {
mEntries.add(mContext.getString(R.string.network_lte_pure));
} else {
mEntries.add(mContext.getString(R.string.network_lte));
@@ -617,7 +624,7 @@ public class EnabledNetworkModePreferenceController extends
* Add 4G entry. If device supported 5G, show "4G" instead of "4G (recommended)".
*/
private void add4gEntry(int value) {
- if (mSupported5gRadioAccessFamily) {
+ if (showNrList()) {
mEntries.add(mContext.getString(R.string.network_4G_pure));
} else {
mEntries.add(mContext.getString(R.string.network_4G));
diff --git a/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java b/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java
index 91d01d36a1..d6aed676d4 100644
--- a/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java
+++ b/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java
@@ -55,6 +55,7 @@ public class Enhanced4gBasePreferenceController extends TelephonyTogglePreferenc
Preference mPreference;
private PhoneCallStateListener mPhoneStateListener;
private boolean mShow5gLimitedDialog;
+ boolean mIsNrEnabledFromCarrierConfig;
private boolean mHas5gCapability;
@VisibleForTesting
Integer mCallState;
@@ -95,6 +96,8 @@ public class Enhanced4gBasePreferenceController extends TelephonyTogglePreferenc
mShow5gLimitedDialog = carrierConfig.getBoolean(
CarrierConfigManager.KEY_VOLTE_5G_LIMITED_ALERT_DIALOG_BOOL);
+ mIsNrEnabledFromCarrierConfig = carrierConfig.getBoolean(
+ CarrierConfigManager.KEY_NR_ENABLED_BOOL);
return this;
}
@@ -244,7 +247,7 @@ public class Enhanced4gBasePreferenceController extends TelephonyTogglePreferenc
private boolean isDialogNeeded() {
Log.d(TAG, "Has5gCapability:" + mHas5gCapability);
- return mShow5gLimitedDialog && mHas5gCapability;
+ return mShow5gLimitedDialog && mHas5gCapability && mIsNrEnabledFromCarrierConfig;
}
private void show5gLimitedDialog(ImsMmTelManager imsMmTelManager) {