我正在创建一个最低版本为sdk 16的应用程序。我的问题是如何在双卡手机中获取这两家运营商的运营商名称。
我使用了这段代码,但它使用了sdk v16
TelephonyManager telephonyManager = ((TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE));
而且我想以字符串格式获取运营商的名称。
答案 0 :(得分:0)
SubscriptionManager
使用以下代码获取双卡手机的运营商名称
SubscriptionManager subscriptionManager = (SubscriptionManager) getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
List<String> carrierNames = new ArrayList<>();
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP_MR1) {
List<SubscriptionInfo> subscriptionInfos = subscriptionManager.getActiveSubscriptionInfoList();
for (int i = 0; i < subscriptionInfos.size(); i++) {
carrierNames.add(subscriptionInfos.get(i).getCarrierName().toString());
}
}