我希望在Android SDK中不支持多個SIM卡。只有我們可以獲得當前網絡運營商或SIM運營商的名稱,並且如果您沒有SIM卡,結果將是「」。 這將工作,但只對主要運營商 從API 22,現在你可以檢查多張SIM卡。看看Android的文檔:https://developer.android.com/reference/android/telephony/SubscriptionManager.html#getActiveSubscriptionInfoList%28%29
對於API> = 22:
final SubscriptionManager subscriptionManager = SubscriptionManager.from(context);
final List<SubscriptionInfo> activeSubscriptionInfoList = subscriptionManager.getActiveSubscriptionInfoList();
for (SubscriptionInfo subscriptionInfo : activeSubscriptionInfoList) {
final CharSequence carrierName = subscriptionInfo.getCarrierName();
final CharSequence displayName = subscriptionInfo.getDisplayName();
final int mcc = subscriptionInfo.getMcc();
final int mnc = subscriptionInfo.getMnc();
final String subscriptionInfoNumber = subscriptionInfo.getNumber();
}
對於API> = 23
TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
if (manager.getPhoneCount() == 2) {
// Dual sim
}
唯一的辦法是分開來寫每一個手機型號代碼,因爲每個製造商都做出了自己的固件修改,以及它們在Google推出之前用於雙卡的自己的API。所以基本上它根本不值得這樣做。 –