我已经阅读了一些相关的问题,但大多数都是针对电话,而不是短信.到目前为止我发现的是:
TelephonyManager manager = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
if (manager.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE) {
// I guess here are devices that are unable to send SMS
} else {
// can send SMS
}
Run Code Online (Sandbox Code Playgroud)
这是真的,TelephonyManager.PHONE_TYPE_NONE的设备无法发送短信吗?我真的不明白TelephonyManager.PHONE_TYPE_NONE的描述,这是"没有电话无线电".
谢谢!
是的,对于TelephonyManager.PHONE_TYPE_NONE,您无法发送短信。因为发送短信需要无线电网络。不过,您可以使用一些基于 IP 的通讯工具,例如 Whats app、ebuddy
如果您看到android.hardware.telephony (您在 Android 清单文件中使用uses-feature标记指定),您会注意到此功能下提到了发送/读取/写入 SMS。
Galaxy TAB 示例,无法拨打电话,但电话类型为 PHONE_TYPE_CDMA ,因此在这种情况下需要添加额外的线路号码检查