Loading src/com/android/settings/network/telephony/SatelliteSetting.java +44 −22 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.settings.network.telephony; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_MANUAL; import static android.telephony.CarrierConfigManager.KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT; import static android.telephony.CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL; import static android.telephony.CarrierConfigManager.KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING; Loading Loading @@ -68,14 +71,15 @@ public class SatelliteSetting extends RestrictedDashboardFragment { static final String SUB_ID = "sub_id"; static final String EXTRA_IS_SERVICE_DATA_TYPE = "is_service_data_type"; static final String EXTRA_IS_SMS_AVAILABLE_FOR_MANUAL_TYPE = "is_sms_available"; private Activity mActivity; private CarrierConfigManager mCarrierConfigManager; private SatelliteManager mSatelliteManager; private PersistableBundle mConfigBundle; private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; private String mSimOperatorName = ""; private boolean mIsServiceDataType = false; private boolean mIsSmsAvailableForManualType = false; public SatelliteSetting() { super(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS); Loading Loading @@ -108,8 +112,8 @@ public class SatelliteSetting extends RestrictedDashboardFragment { mSubId = mActivity.getIntent().getIntExtra(SUB_ID, SubscriptionManager.INVALID_SUBSCRIPTION_ID); mConfigBundle = fetchCarrierConfigData(mSubId); mCarrierConfigManager = mActivity.getSystemService(CarrierConfigManager.class); if (!isSatelliteAttachSupported(mSubId)) { Log.d(TAG, "SatelliteSettings: KEY_SATELLITE_ATTACH_SUPPORTED_BOOL is false, " + "do nothing."); Loading @@ -118,6 +122,8 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } mIsServiceDataType = getIntent().getBooleanExtra(EXTRA_IS_SERVICE_DATA_TYPE, false); mIsSmsAvailableForManualType = getIntent().getBooleanExtra( EXTRA_IS_SMS_AVAILABLE_FOR_MANUAL_TYPE, false); mSimOperatorName = getSystemService(TelephonyManager.class).getSimOperatorName(mSubId); } Loading Loading @@ -171,12 +177,14 @@ public class SatelliteSetting extends RestrictedDashboardFragment { the check icon with guidance that satellite is included in user's mobile plan */ messagingPreference.setTitle(R.string.title_have_satellite_plan); if (com.android.settings.flags.Flags.satelliteOemSettingsUxMigration()) { if (mIsServiceDataType) { Preference connectivityPreference = findPreference( PREF_KEY_YOUR_SATELLITE_DATA_PLAN); connectivityPreference.setTitle(R.string.title_have_satellite_data_plan); connectivityPreference.setIcon(icon); connectivityPreference.setVisible(true); } } } else { /* Or, it will show the blocked icon with the guidance that satellite is not included in user's mobile plan */ Loading @@ -191,7 +199,7 @@ public class SatelliteSetting extends RestrictedDashboardFragment { messagingPreference.setSummary(spannable); /* The link will lead users to a guide page */ messagingPreference.setOnPreferenceClickListener(pref -> { String url = readSatelliteMoreInfoString(mSubId); String url = readSatelliteMoreInfoString(); if (!url.isEmpty()) { Uri uri = Uri.parse(url); Intent intent = new Intent(Intent.ACTION_VIEW, uri); Loading Loading @@ -224,7 +232,7 @@ public class SatelliteSetting extends RestrictedDashboardFragment { getSubjectString(), mSimOperatorName)); final String[] link = new String[1]; link[0] = readSatelliteMoreInfoString(mSubId); link[0] = readSatelliteMoreInfoString(); if (link[0] != null && !link[0].isEmpty()) { footerPreference.setLearnMoreAction(view -> { if (!link[0].isEmpty()) { Loading @@ -243,6 +251,9 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } private boolean isSatelliteEligible() { if (isCarrierRoamingNtnConnectedTypeManual()) { return mIsSmsAvailableForManualType; } try { Set<Integer> restrictionReason = mSatelliteManager.getAttachRestrictionReasonsForCarrier(mSubId); Loading @@ -254,26 +265,37 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } } private String readSatelliteMoreInfoString(int subId) { if (mConfigBundle == null) { mConfigBundle = mCarrierConfigManager.getConfigForSubId(subId, KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING); if (mConfigBundle.isEmpty()) { private PersistableBundle fetchCarrierConfigData(int subId) { CarrierConfigManager carrierConfigManager = mActivity.getSystemService( CarrierConfigManager.class); PersistableBundle bundle = CarrierConfigManager.getDefaultConfig(); try { bundle = carrierConfigManager.getConfigForSubId(subId, KEY_SATELLITE_ATTACH_SUPPORTED_BOOL, KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING, KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT); if (bundle.isEmpty()) { Log.d(TAG, "SatelliteSettings: getDefaultConfig"); mConfigBundle = CarrierConfigManager.getDefaultConfig(); bundle = CarrierConfigManager.getDefaultConfig(); } } catch (IllegalStateException exception) { Log.d(TAG, "SatelliteSettings exception : " + exception); } return bundle; } private String readSatelliteMoreInfoString() { return mConfigBundle.getString(KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING, ""); } private boolean isSatelliteAttachSupported(int subId) { PersistableBundle bundle = mCarrierConfigManager.getConfigForSubId(subId, KEY_SATELLITE_ATTACH_SUPPORTED_BOOL); if (bundle.isEmpty()) { Log.d(TAG, "SatelliteSettings: getDefaultConfig"); bundle = CarrierConfigManager.getDefaultConfig(); private boolean isCarrierRoamingNtnConnectedTypeManual() { return CARRIER_ROAMING_NTN_CONNECT_MANUAL == mConfigBundle.getInt( KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT, CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC); } return bundle.getBoolean(KEY_SATELLITE_ATTACH_SUPPORTED_BOOL, false); private boolean isSatelliteAttachSupported(int subId) { return mConfigBundle.getBoolean(KEY_SATELLITE_ATTACH_SUPPORTED_BOOL, false); } // This is for a word which first letter is uppercase. e.g. Satellite messaging. Loading src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java +63 −39 Original line number Diff line number Diff line Loading @@ -16,6 +16,10 @@ package com.android.settings.network.telephony; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_MANUAL; import static android.telephony.CarrierConfigManager.KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT; import static android.telephony.CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL; import static android.telephony.NetworkRegistrationInfo.SERVICE_TYPE_DATA; import static android.telephony.NetworkRegistrationInfo.SERVICE_TYPE_SMS; Loading @@ -23,7 +27,6 @@ import android.content.Context; import android.content.Intent; import android.os.PersistableBundle; import android.provider.Settings; import android.telephony.CarrierConfigManager; import android.telephony.TelephonyCallback; import android.telephony.TelephonyManager; import android.telephony.satellite.NtnSignalStrength; Loading Loading @@ -53,17 +56,18 @@ import java.util.Set; public class SatelliteSettingPreferenceController extends TelephonyBasePreferenceController implements DefaultLifecycleObserver { private static final String TAG = "SatelliteSettingPreferenceController"; CarrierConfigCache mCarrierConfigCache; SatelliteManager mSatelliteManager; private TelephonyManager mTelephonyManager = null; @VisibleForTesting final CarrierRoamingNtnModeCallback mCarrierRoamingNtnModeCallback = new CarrierRoamingNtnModeCallback(); CarrierConfigCache mCarrierConfigCache; SatelliteManager mSatelliteManager; private TelephonyManager mTelephonyManager = null; @Nullable private Boolean mIsSatelliteEligible = null; private boolean mIsServiceDataType = false; private boolean mIsSatelliteSmsAvailableForManualType = false; private boolean mIsCarrierSatelliteAttachSupported = false; private boolean mIsCarrierRoamingNtnConnectedTypeManual = false; public SatelliteSettingPreferenceController(@NonNull Context context, @NonNull String key) { super(context, key); Loading @@ -72,6 +76,14 @@ public class SatelliteSettingPreferenceController extends mTelephonyManager = context.getSystemService(TelephonyManager.class); } private static void logd(String message) { Log.d(TAG, message); } private static void loge(String message) { Log.e(TAG, message); } @Override public int getAvailabilityStatus(int subId) { if (!Flags.carrierEnabledSatelliteFlag()) { Loading @@ -83,11 +95,7 @@ public class SatelliteSettingPreferenceController extends return UNSUPPORTED_ON_DEVICE; } final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId); final boolean isSatelliteAttachSupported = carrierConfig.getBoolean( CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL); return isSatelliteAttachSupported ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; return mIsCarrierSatelliteAttachSupported ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; } @Override Loading Loading @@ -130,6 +138,8 @@ public class SatelliteSettingPreferenceController extends intent.putExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_AS_SUBSETTING, true); intent.putExtra(SatelliteSetting.SUB_ID, mSubId); intent.putExtra(SatelliteSetting.EXTRA_IS_SERVICE_DATA_TYPE, mIsServiceDataType); intent.putExtra(SatelliteSetting.EXTRA_IS_SMS_AVAILABLE_FOR_MANUAL_TYPE, mIsSatelliteSmsAvailableForManualType); mContext.startActivity(intent); return true; } Loading @@ -146,13 +156,35 @@ public class SatelliteSettingPreferenceController extends logd("init(), subId=" + subId); mSubId = subId; mTelephonyManager = mTelephonyManager.createForSubscriptionId(subId); final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId); if (carrierConfig == null) { logd("init(), no carrier config data"); return; } mIsCarrierSatelliteAttachSupported = carrierConfig.getBoolean( KEY_SATELLITE_ATTACH_SUPPORTED_BOOL); mIsCarrierRoamingNtnConnectedTypeManual = CARRIER_ROAMING_NTN_CONNECT_MANUAL == carrierConfig.getInt( KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT, CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC); } private void updateSummary(Preference preference) { if (preference == null) { logd("updateSummary - no Preference"); return; } if (mSatelliteManager == null) { logd("updateSummary - no SatelliteManager"); return; } if (mIsCarrierRoamingNtnConnectedTypeManual) { preference.setSummary(mIsSatelliteSmsAvailableForManualType ? R.string.satellite_setting_enabled_summary : R.string.satellite_setting_disabled_summary); } else { try { Set<Integer> restrictionReason = mSatelliteManager.getAttachRestrictionReasonsForCarrier(mSubId); Loading @@ -170,13 +202,6 @@ public class SatelliteSettingPreferenceController extends preference.setSummary(R.string.satellite_setting_disabled_summary); } } private static void logd(String message) { Log.d(TAG, message); } private static void loge(String message) { Log.e(TAG, message); } @VisibleForTesting Loading @@ -197,12 +222,11 @@ public class SatelliteSettingPreferenceController extends logd("Satellite preference is not initialized yet"); return; } if (isDataAvailable) { mIsServiceDataType = true; mPref.setTitle(R.string.title_satellite_setting_connectivity); } else if (isSmsAvailable) { mPref.setTitle(R.string.satellite_setting_title); } mIsServiceDataType = isDataAvailable; mIsSatelliteSmsAvailableForManualType = isSmsAvailable; mPref.setTitle(isDataAvailable ? R.string.title_satellite_setting_connectivity : R.string.satellite_setting_title); updateSummary(mPref); } @Override Loading Loading
src/com/android/settings/network/telephony/SatelliteSetting.java +44 −22 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.settings.network.telephony; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_MANUAL; import static android.telephony.CarrierConfigManager.KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT; import static android.telephony.CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL; import static android.telephony.CarrierConfigManager.KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING; Loading Loading @@ -68,14 +71,15 @@ public class SatelliteSetting extends RestrictedDashboardFragment { static final String SUB_ID = "sub_id"; static final String EXTRA_IS_SERVICE_DATA_TYPE = "is_service_data_type"; static final String EXTRA_IS_SMS_AVAILABLE_FOR_MANUAL_TYPE = "is_sms_available"; private Activity mActivity; private CarrierConfigManager mCarrierConfigManager; private SatelliteManager mSatelliteManager; private PersistableBundle mConfigBundle; private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; private String mSimOperatorName = ""; private boolean mIsServiceDataType = false; private boolean mIsSmsAvailableForManualType = false; public SatelliteSetting() { super(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS); Loading Loading @@ -108,8 +112,8 @@ public class SatelliteSetting extends RestrictedDashboardFragment { mSubId = mActivity.getIntent().getIntExtra(SUB_ID, SubscriptionManager.INVALID_SUBSCRIPTION_ID); mConfigBundle = fetchCarrierConfigData(mSubId); mCarrierConfigManager = mActivity.getSystemService(CarrierConfigManager.class); if (!isSatelliteAttachSupported(mSubId)) { Log.d(TAG, "SatelliteSettings: KEY_SATELLITE_ATTACH_SUPPORTED_BOOL is false, " + "do nothing."); Loading @@ -118,6 +122,8 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } mIsServiceDataType = getIntent().getBooleanExtra(EXTRA_IS_SERVICE_DATA_TYPE, false); mIsSmsAvailableForManualType = getIntent().getBooleanExtra( EXTRA_IS_SMS_AVAILABLE_FOR_MANUAL_TYPE, false); mSimOperatorName = getSystemService(TelephonyManager.class).getSimOperatorName(mSubId); } Loading Loading @@ -171,12 +177,14 @@ public class SatelliteSetting extends RestrictedDashboardFragment { the check icon with guidance that satellite is included in user's mobile plan */ messagingPreference.setTitle(R.string.title_have_satellite_plan); if (com.android.settings.flags.Flags.satelliteOemSettingsUxMigration()) { if (mIsServiceDataType) { Preference connectivityPreference = findPreference( PREF_KEY_YOUR_SATELLITE_DATA_PLAN); connectivityPreference.setTitle(R.string.title_have_satellite_data_plan); connectivityPreference.setIcon(icon); connectivityPreference.setVisible(true); } } } else { /* Or, it will show the blocked icon with the guidance that satellite is not included in user's mobile plan */ Loading @@ -191,7 +199,7 @@ public class SatelliteSetting extends RestrictedDashboardFragment { messagingPreference.setSummary(spannable); /* The link will lead users to a guide page */ messagingPreference.setOnPreferenceClickListener(pref -> { String url = readSatelliteMoreInfoString(mSubId); String url = readSatelliteMoreInfoString(); if (!url.isEmpty()) { Uri uri = Uri.parse(url); Intent intent = new Intent(Intent.ACTION_VIEW, uri); Loading Loading @@ -224,7 +232,7 @@ public class SatelliteSetting extends RestrictedDashboardFragment { getSubjectString(), mSimOperatorName)); final String[] link = new String[1]; link[0] = readSatelliteMoreInfoString(mSubId); link[0] = readSatelliteMoreInfoString(); if (link[0] != null && !link[0].isEmpty()) { footerPreference.setLearnMoreAction(view -> { if (!link[0].isEmpty()) { Loading @@ -243,6 +251,9 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } private boolean isSatelliteEligible() { if (isCarrierRoamingNtnConnectedTypeManual()) { return mIsSmsAvailableForManualType; } try { Set<Integer> restrictionReason = mSatelliteManager.getAttachRestrictionReasonsForCarrier(mSubId); Loading @@ -254,26 +265,37 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } } private String readSatelliteMoreInfoString(int subId) { if (mConfigBundle == null) { mConfigBundle = mCarrierConfigManager.getConfigForSubId(subId, KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING); if (mConfigBundle.isEmpty()) { private PersistableBundle fetchCarrierConfigData(int subId) { CarrierConfigManager carrierConfigManager = mActivity.getSystemService( CarrierConfigManager.class); PersistableBundle bundle = CarrierConfigManager.getDefaultConfig(); try { bundle = carrierConfigManager.getConfigForSubId(subId, KEY_SATELLITE_ATTACH_SUPPORTED_BOOL, KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING, KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT); if (bundle.isEmpty()) { Log.d(TAG, "SatelliteSettings: getDefaultConfig"); mConfigBundle = CarrierConfigManager.getDefaultConfig(); bundle = CarrierConfigManager.getDefaultConfig(); } } catch (IllegalStateException exception) { Log.d(TAG, "SatelliteSettings exception : " + exception); } return bundle; } private String readSatelliteMoreInfoString() { return mConfigBundle.getString(KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING, ""); } private boolean isSatelliteAttachSupported(int subId) { PersistableBundle bundle = mCarrierConfigManager.getConfigForSubId(subId, KEY_SATELLITE_ATTACH_SUPPORTED_BOOL); if (bundle.isEmpty()) { Log.d(TAG, "SatelliteSettings: getDefaultConfig"); bundle = CarrierConfigManager.getDefaultConfig(); private boolean isCarrierRoamingNtnConnectedTypeManual() { return CARRIER_ROAMING_NTN_CONNECT_MANUAL == mConfigBundle.getInt( KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT, CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC); } return bundle.getBoolean(KEY_SATELLITE_ATTACH_SUPPORTED_BOOL, false); private boolean isSatelliteAttachSupported(int subId) { return mConfigBundle.getBoolean(KEY_SATELLITE_ATTACH_SUPPORTED_BOOL, false); } // This is for a word which first letter is uppercase. e.g. Satellite messaging. Loading
src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java +63 −39 Original line number Diff line number Diff line Loading @@ -16,6 +16,10 @@ package com.android.settings.network.telephony; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC; import static android.telephony.CarrierConfigManager.CARRIER_ROAMING_NTN_CONNECT_MANUAL; import static android.telephony.CarrierConfigManager.KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT; import static android.telephony.CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL; import static android.telephony.NetworkRegistrationInfo.SERVICE_TYPE_DATA; import static android.telephony.NetworkRegistrationInfo.SERVICE_TYPE_SMS; Loading @@ -23,7 +27,6 @@ import android.content.Context; import android.content.Intent; import android.os.PersistableBundle; import android.provider.Settings; import android.telephony.CarrierConfigManager; import android.telephony.TelephonyCallback; import android.telephony.TelephonyManager; import android.telephony.satellite.NtnSignalStrength; Loading Loading @@ -53,17 +56,18 @@ import java.util.Set; public class SatelliteSettingPreferenceController extends TelephonyBasePreferenceController implements DefaultLifecycleObserver { private static final String TAG = "SatelliteSettingPreferenceController"; CarrierConfigCache mCarrierConfigCache; SatelliteManager mSatelliteManager; private TelephonyManager mTelephonyManager = null; @VisibleForTesting final CarrierRoamingNtnModeCallback mCarrierRoamingNtnModeCallback = new CarrierRoamingNtnModeCallback(); CarrierConfigCache mCarrierConfigCache; SatelliteManager mSatelliteManager; private TelephonyManager mTelephonyManager = null; @Nullable private Boolean mIsSatelliteEligible = null; private boolean mIsServiceDataType = false; private boolean mIsSatelliteSmsAvailableForManualType = false; private boolean mIsCarrierSatelliteAttachSupported = false; private boolean mIsCarrierRoamingNtnConnectedTypeManual = false; public SatelliteSettingPreferenceController(@NonNull Context context, @NonNull String key) { super(context, key); Loading @@ -72,6 +76,14 @@ public class SatelliteSettingPreferenceController extends mTelephonyManager = context.getSystemService(TelephonyManager.class); } private static void logd(String message) { Log.d(TAG, message); } private static void loge(String message) { Log.e(TAG, message); } @Override public int getAvailabilityStatus(int subId) { if (!Flags.carrierEnabledSatelliteFlag()) { Loading @@ -83,11 +95,7 @@ public class SatelliteSettingPreferenceController extends return UNSUPPORTED_ON_DEVICE; } final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId); final boolean isSatelliteAttachSupported = carrierConfig.getBoolean( CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL); return isSatelliteAttachSupported ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; return mIsCarrierSatelliteAttachSupported ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; } @Override Loading Loading @@ -130,6 +138,8 @@ public class SatelliteSettingPreferenceController extends intent.putExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_AS_SUBSETTING, true); intent.putExtra(SatelliteSetting.SUB_ID, mSubId); intent.putExtra(SatelliteSetting.EXTRA_IS_SERVICE_DATA_TYPE, mIsServiceDataType); intent.putExtra(SatelliteSetting.EXTRA_IS_SMS_AVAILABLE_FOR_MANUAL_TYPE, mIsSatelliteSmsAvailableForManualType); mContext.startActivity(intent); return true; } Loading @@ -146,13 +156,35 @@ public class SatelliteSettingPreferenceController extends logd("init(), subId=" + subId); mSubId = subId; mTelephonyManager = mTelephonyManager.createForSubscriptionId(subId); final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId); if (carrierConfig == null) { logd("init(), no carrier config data"); return; } mIsCarrierSatelliteAttachSupported = carrierConfig.getBoolean( KEY_SATELLITE_ATTACH_SUPPORTED_BOOL); mIsCarrierRoamingNtnConnectedTypeManual = CARRIER_ROAMING_NTN_CONNECT_MANUAL == carrierConfig.getInt( KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT, CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC); } private void updateSummary(Preference preference) { if (preference == null) { logd("updateSummary - no Preference"); return; } if (mSatelliteManager == null) { logd("updateSummary - no SatelliteManager"); return; } if (mIsCarrierRoamingNtnConnectedTypeManual) { preference.setSummary(mIsSatelliteSmsAvailableForManualType ? R.string.satellite_setting_enabled_summary : R.string.satellite_setting_disabled_summary); } else { try { Set<Integer> restrictionReason = mSatelliteManager.getAttachRestrictionReasonsForCarrier(mSubId); Loading @@ -170,13 +202,6 @@ public class SatelliteSettingPreferenceController extends preference.setSummary(R.string.satellite_setting_disabled_summary); } } private static void logd(String message) { Log.d(TAG, message); } private static void loge(String message) { Log.e(TAG, message); } @VisibleForTesting Loading @@ -197,12 +222,11 @@ public class SatelliteSettingPreferenceController extends logd("Satellite preference is not initialized yet"); return; } if (isDataAvailable) { mIsServiceDataType = true; mPref.setTitle(R.string.title_satellite_setting_connectivity); } else if (isSmsAvailable) { mPref.setTitle(R.string.satellite_setting_title); } mIsServiceDataType = isDataAvailable; mIsSatelliteSmsAvailableForManualType = isSmsAvailable; mPref.setTitle(isDataAvailable ? R.string.title_satellite_setting_connectivity : R.string.satellite_setting_title); updateSummary(mPref); } @Override Loading