Fix fail to search by input "4G Calling"

Fixed step:
1.Update resource xml file in SearchIndexProvider.
2.Add keywords for preference title array.
3.Initizlize data member.
When getAvailabilityStatus called by updateNonIndexableKeys,
the data member should be initialized,
otherwise it always returns CONDITIONALLY_UNAVAILABLE

Fixes: 137155154
Test: manual
Change-Id: Id06d78bffdeba247741dcfe81e9ed7e179141397
This commit is contained in:
Stanley Wang
2019-07-29 17:10:56 +08:00
parent 31ef40552b
commit 7b489d57a8
5 changed files with 17 additions and 4 deletions

View File

@@ -72,6 +72,7 @@ public class Enhanced4gLtePreferenceController extends TelephonyTogglePreference
@Override
public int getAvailabilityStatus(int subId) {
init(subId);
final PersistableBundle carrierConfig = mCarrierConfigManager.getConfigForSubId(subId);
final boolean isVisible = subId != SubscriptionManager.INVALID_SUBSCRIPTION_ID
&& mImsManager != null && carrierConfig != null
@@ -105,9 +106,9 @@ public class Enhanced4gLtePreferenceController extends TelephonyTogglePreference
super.updateState(preference);
final SwitchPreference switchPreference = (SwitchPreference) preference;
final boolean show4GForLTE = mCarrierConfig.getBoolean(
CarrierConfigManager.KEY_SHOW_4G_FOR_LTE_DATA_ICON_BOOL);
CarrierConfigManager.KEY_SHOW_4G_FOR_LTE_DATA_ICON_BOOL);
int variant4glteTitleIndex = mCarrierConfig.getInt(
CarrierConfigManager.KEY_ENHANCED_4G_LTE_TITLE_VARIANT_INT);
CarrierConfigManager.KEY_ENHANCED_4G_LTE_TITLE_VARIANT_INT);
if (variant4glteTitleIndex != VARIANT_TITLE_ADVANCED_CALL) {
variant4glteTitleIndex = show4GForLTE ? VARIANT_TITLE_4G_CALLING : VARIANT_TITLE_VOLTE;
@@ -135,6 +136,9 @@ public class Enhanced4gLtePreferenceController extends TelephonyTogglePreference
}
public Enhanced4gLtePreferenceController init(int subId) {
if (mSubId == subId) {
return this;
}
mSubId = subId;
mTelephonyManager = TelephonyManager.from(mContext).createForSubscriptionId(mSubId);
mCarrierConfig = mCarrierConfigManager.getConfigForSubId(mSubId);

View File

@@ -119,7 +119,7 @@ public class MobileNetworkSettings extends RestrictedDashboardFragment {
MobileNetworkUtils.getSearchableSubscriptionId(context));
if (FeatureFlagPersistent.isEnabled(getContext(), FeatureFlags.NETWORK_INTERNET_V2) &&
mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
return Arrays.asList(
new DataUsageSummaryPreferenceController(getActivity(), getSettingsLifecycle(),
this, mSubId));
@@ -275,7 +275,10 @@ public class MobileNetworkSettings extends RestrictedDashboardFragment {
final ArrayList<SearchIndexableResource> result = new ArrayList<>();
final SearchIndexableResource sir = new SearchIndexableResource(context);
sir.xmlResId = R.xml.mobile_network_settings;
sir.xmlResId = FeatureFlagPersistent.isEnabled(context,
FeatureFlags.NETWORK_INTERNET_V2)
? R.xml.mobile_network_settings_v2
: R.xml.mobile_network_settings;
result.add(sir);
return result;
}