java - 从 Telephony Manager 获取电话类型信息

标签 java android telephonymanager

我想知道如何从 TelephonyManager 访问电话类型信息 [无论是 GSM 还是 CDMA]。我可以为此使用哪个函数:

我的代码是:

SubscriptionManager sm = SubscriptionManager.from(context);

List<SubscriptionInfo> sil = sm.getActiveSubscriptionInfoList();
sim_value[0]= sil.get(0).getDisplayName().toString();
sim_value[1]= sil.get(0).getIccId().toString();
sim_value[2]= String.valueOf(sil.get(0).getSimSlotIndex());
sim_value[3]= sil.get(0).getCarrierName().toString();

最佳答案

您可以使用 Telephony Manager 实现此目的

您必须在 AndroidManifest 文件中声明以下权限..

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

有一个TelephonyMnager对象

TelephonyManager  tm=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

获取手机类型 CDMA/GSM/NONE

  int phoneType=tm.getPhoneType();

        switch (phoneType)
        {
                case (TelephonyManager.PHONE_TYPE_CDMA):
                           // your code
                               break;
                case (TelephonyManager.PHONE_TYPE_GSM) 
                           // your code                 
                               break;
                case (TelephonyManager.PHONE_TYPE_NONE):
                           // your code              
                                break;
         }

有关更多信息,请参阅此 Telephony Manager

关于java - 从 Telephony Manager 获取电话类型信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39072912/

相关文章:

android - getAllCellInfo 在 android 4.2.1 中返回 null

java - 是否有任何开源和免费的日历 UI 可重用组件?

java - Hibernate 因在 ManyToMany 关联上将完全限定的类名添加到属性名而失败

java - cvc-complex-type.2.4.c : The matching wildcard is strict, 但找不到元素 'property' 的声明

android - 如何减少android phonegap中的加载时间

c# - 将 Mat 转换为适用于 Android 的 MemoryStream OpenCV

android - 在 android 中检测 CDMA 手机上的漫游

java - 使用 quaqua LAF 在 Swing Mac OSX 应用程序上获取未保存的点

android - 如何逐步在后台使用前置摄像头拍摄照片?

android - getAllCellInfo() 在华为荣耀 7 中返回一个空列表