summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChen Xu <fionaxu@google.com>2021-07-23 18:09:01 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2021-07-23 18:09:01 +0000
commit3731a3914a6b26ffcc9e771742c50ac85f26222d (patch)
tree4ffe9e3109342ac8ad389f5c244d6b38601c2bd3 /src
parenta085f7a3b08de524ae18893f1e7f0b4b0c069d0d (diff)
parentf1e913b20b038b5c0521400961ca8d8d6e359638 (diff)
downloadCellBroadcastReceiver-3731a3914a6b26ffcc9e771742c50ac85f26222d.tar.gz
Merge "check sim state to avoid cachining the wrong resources before sim loaded" into sc-dev
Diffstat (limited to 'src')
-rw-r--r--src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java b/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java
index 3a47428cc..b1e8f6829 100644
--- a/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java
+++ b/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java
@@ -33,6 +33,7 @@ import android.os.UserManager;
import android.os.Vibrator;
import android.telephony.CarrierConfigManager;
import android.telephony.SubscriptionManager;
+import android.telephony.TelephonyManager;
import android.util.Log;
import android.view.MenuItem;
import android.widget.Switch;
@@ -847,8 +848,14 @@ public class CellBroadcastSettings extends CollapsingToolbarBaseActivity {
* @return The resource
*/
public static @NonNull Resources getResources(@NonNull Context context, int subId) {
+ // based on the latest design, subId can be valid earlier than mcc mnc is known to telephony
+ // check if sim is loaded to avoid caching the wrong resources.
+ TelephonyManager tm = context.getSystemService(TelephonyManager.class);
+ boolean isSimLoaded = tm.getSimApplicationState(SubscriptionManager.getSlotIndex(subId))
+ == TelephonyManager.SIM_STATE_LOADED;
if (subId == SubscriptionManager.DEFAULT_SUBSCRIPTION_ID
- || !SubscriptionManager.isValidSubscriptionId(subId) || !sUseResourcesForSubId) {
+ || !SubscriptionManager.isValidSubscriptionId(subId) || !sUseResourcesForSubId
+ || !isSimLoaded) {
return context.getResources();
}