diff --git a/src/com/android/settings/network/telephony/SatelliteSetting.java b/src/com/android/settings/network/telephony/SatelliteSetting.java index 314fb3ac4c8..7e9e61d07ed 100644 --- a/src/com/android/settings/network/telephony/SatelliteSetting.java +++ b/src/com/android/settings/network/telephony/SatelliteSetting.java @@ -92,6 +92,14 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } mActivity = getActivity(); + + mSatelliteManager = mActivity.getSystemService(SatelliteManager.class); + if (mSatelliteManager == null) { + Log.d(TAG, "SatelliteManager is null, do nothing."); + finish(); + return; + } + mSubId = mActivity.getIntent().getIntExtra(SUB_ID, SubscriptionManager.INVALID_SUBSCRIPTION_ID); @@ -104,7 +112,6 @@ public class SatelliteSetting extends RestrictedDashboardFragment { } mTelephonymanager = mActivity.getSystemService(TelephonyManager.class); - mSatelliteManager = mActivity.getSystemService(SatelliteManager.class); } @Override diff --git a/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java b/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java index 153698c381b..9ca0294ebe6 100644 --- a/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java +++ b/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java @@ -64,6 +64,10 @@ public class SatelliteSettingPreferenceController extends return UNSUPPORTED_ON_DEVICE; } + if (mSatelliteManager == null) { + return UNSUPPORTED_ON_DEVICE; + } + final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId); final boolean isSatelliteAttachSupported = carrierConfig.getBoolean( CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL);