bin*_*mic 8 android telephony tablet
我想根据SIM硬件是否存在禁用我的应用程序中与CALL和SMS相关的功能.现在初学者的方法是使用以下方法检查手机类型:
if (telephonyManager1.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE)
Run Code Online (Sandbox Code Playgroud)
如果为真则支持.
一切都很好,直到我遇到Sony Tablet S,它只支持数据和消息的SIM卡.没有声音支持.所以对于这个设备我只需要禁用CALL功能,但继续支持SMS.索尼平板电脑返回TelephonyManager.PHONE_TYPE_NONE所以我不能使用上述方法.还有,
telephonyManager1.getSimState();
Run Code Online (Sandbox Code Playgroud)
返回1即SIM_STATE_ABSENT,在HTC FLYER的情况下也是如此,它不支持SIM硬件本身.
那么有什么方法可以让我知道SIM硬件是否存在(无论是否插入SIM卡)?
使用
PackageManager pm = this.getPackageManager();
boolean hasTelephony=pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY);
Run Code Online (Sandbox Code Playgroud)
编辑:
尝试使用
TelephonyManager.getLine1Number()
Run Code Online (Sandbox Code Playgroud)
如果返回 null,那么您将没有电话功能。没试过。试一试
| 归档时间: |
|
| 查看次数: |
3858 次 |
| 最近记录: |