检测Android设备是否具有短信发送功能的步骤是什么?

Jay*_*vas 28 android

检测Android设备是否具有短信发送功能的步骤是什么?我希望我的应用程序知道设备是否有能力在尝试实际发送之前发送短信.谢谢.

Dan*_*anO 43

if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELEPHONY)) {
  // THIS PHONE HAS SMS FUNCTIONALITY
} else {
  // NO SMS HERE :(
}
Run Code Online (Sandbox Code Playgroud)

这应该适用于API Level 5及更高版本.

  • FYI,默认情况下,在AVD模拟器中返回false,即使模拟器允许您通过telnet发送SMS消息:1)telnet localhost 5554,2)sms发送<phonesender> <text message> (4认同)
  • 对于安装了Google语音的任何非电话设备(如平板电脑),这可能也会失败. (2认同)