summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--telephony/java/android/telephony/TelephonyManager.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 869bb90..7173637 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -1501,7 +1501,16 @@ public class TelephonyManager {
* @see #getSimState
*/
public String getSimOperator() {
- long subId = getDefaultSubscription();
+ long subId = SubscriptionManager.getDefaultDataSubId();
+ if (!SubscriptionManager.isUsableSubIdValue(subId)) {
+ subId = SubscriptionManager.getDefaultSmsSubId();
+ if (!SubscriptionManager.isUsableSubIdValue(subId)) {
+ subId = SubscriptionManager.getDefaultVoiceSubId();
+ if (!SubscriptionManager.isUsableSubIdValue(subId)) {
+ subId = SubscriptionManager.getDefaultSubId();
+ }
+ }
+ }
Rlog.d(TAG, "getSimOperator(): default subId=" + subId);
return getSimOperator(subId);
}