diff options
| author | PauloftheWest <paulofthewest@google.com> | 2014-12-05 19:21:45 +0000 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2014-12-05 19:21:45 +0000 |
| commit | a754c6ba05cf9d693a7d65342310ec05a6fd2ca0 (patch) | |
| tree | 930f33c5f74cf0efff6feaedf41fe1f4557065d8 /src/com/android/settings | |
| parent | 9a73365ed7a66ffdf7507b4d040f97debde3b00e (diff) | |
| parent | d831733fabc672842e5519d724c05c8b835824b6 (diff) | |
| download | packages_apps_Settings-a754c6ba05cf9d693a7d65342310ec05a6fd2ca0.tar.gz packages_apps_Settings-a754c6ba05cf9d693a7d65342310ec05a6fd2ca0.tar.bz2 packages_apps_Settings-a754c6ba05cf9d693a7d65342310ec05a6fd2ca0.zip | |
am d831733f: am 651474d0: am 4d7a6248: Merge "Fixed a Settings crash when entering SIM status" into lmp-mr1-dev
* commit 'd831733fabc672842e5519d724c05c8b835824b6':
Fixed a Settings crash when entering SIM status
Diffstat (limited to 'src/com/android/settings')
| -rw-r--r-- | src/com/android/settings/deviceinfo/SimStatus.java | 52 |
1 files changed, 27 insertions, 25 deletions
diff --git a/src/com/android/settings/deviceinfo/SimStatus.java b/src/com/android/settings/deviceinfo/SimStatus.java index 2afdb844a..ce8484d44 100644 --- a/src/com/android/settings/deviceinfo/SimStatus.java +++ b/src/com/android/settings/deviceinfo/SimStatus.java @@ -153,7 +153,7 @@ public class SimStatus extends PreferenceActivity { } } - mSir = mSelectableSubInfos.get(0); + mSir = mSelectableSubInfos.size() > 0 ? mSelectableSubInfos.get(0) : null; if (mSelectableSubInfos.size() > 1) { setContentView(R.layout.sim_information); @@ -363,33 +363,35 @@ public class SimStatus extends PreferenceActivity { } private void updatePhoneInfos() { - final Phone phone = PhoneFactory.getPhone(SubscriptionManager.getPhoneId( + if (mSir != null) { + final Phone phone = PhoneFactory.getPhone(SubscriptionManager.getPhoneId( mSir.getSubscriptionId())); - if (UserHandle.myUserId() == UserHandle.USER_OWNER - && mSir.getSubscriptionId() != SubscriptionManager.INVALID_SUBSCRIPTION_ID) { - if (phone == null) { - Log.e(TAG, "Unable to locate a phone object for the given Subscription ID."); - return; - } - - mPhone = phone; - mPhoneStateListener = new PhoneStateListener(mSir.getSubscriptionId()) { - @Override - public void onDataConnectionStateChanged(int state) { - updateDataState(); - updateNetworkType(); - } - - @Override - public void onSignalStrengthsChanged(SignalStrength signalStrength) { - updateSignalStrength(signalStrength); + if (UserHandle.myUserId() == UserHandle.USER_OWNER + && mSir.getSubscriptionId() != SubscriptionManager.INVALID_SUBSCRIPTION_ID) { + if (phone == null) { + Log.e(TAG, "Unable to locate a phone object for the given Subscription ID."); + return; } - @Override - public void onServiceStateChanged(ServiceState serviceState) { - updateServiceState(serviceState); - } - }; + mPhone = phone; + mPhoneStateListener = new PhoneStateListener(mSir.getSubscriptionId()) { + @Override + public void onDataConnectionStateChanged(int state) { + updateDataState(); + updateNetworkType(); + } + + @Override + public void onSignalStrengthsChanged(SignalStrength signalStrength) { + updateSignalStrength(signalStrength); + } + + @Override + public void onServiceStateChanged(ServiceState serviceState) { + updateServiceState(serviceState); + } + }; + } } } private OnTabChangeListener mTabListener = new OnTabChangeListener() { |
