使用通信API从Java应用程序发送SMS

使用通信API从Java应用程序发送SMS,java,sms,Java,Sms,我正在使用Java通信API。想知道通过java应用程序发送短信时,是否必须使用AT命令设置CSCA(服务中心地址):AT+CSCA=?或者我们可以跳过这一部分,发送AT命令AT+CMGS=来发送消息?任何帮助都将不胜感激。谢谢 假设您通过带有SIM卡的硬件设备发送;该卡很可能配置了一个配置文件,指定家庭网络服务中心号码——毕竟,当您为自己的手机购买SIM卡时,您不必自己输入一个 您可以使用+CSCA?测试一个,因为我已经有一段时间没有使用GSM了,但我认为如果您打算以文本格式发送消息,您只需要

我正在使用
Java通信API
。想知道通过java应用程序发送短信时,是否必须使用AT命令设置CSCA(服务中心地址):
AT+CSCA=
?或者我们可以跳过这一部分,发送AT命令
AT+CMGS=
来发送消息?任何帮助都将不胜感激。谢谢

假设您通过带有SIM卡的硬件设备发送;该卡很可能配置了一个配置文件,指定家庭网络服务中心号码——毕竟,当您为自己的手机购买SIM卡时,您不必自己输入一个


您可以使用
+CSCA?

测试一个,因为我已经有一段时间没有使用GSM了,但我认为如果您打算以文本格式发送消息,您只需要配置服务中心。当使用二进制PDU时,需要为您发送的每条短信指定SMSC号。

不久前,我在博客上写了一个使用AT命令发送短信的示例。它是用C#编写的,但是AT命令应该保持不变,看看

是的。我已经测试过了。当我执行此命令时,
+CSCA?
,收到的响应是
OK
。因此,这意味着我可以跳过使用
+CSCA=
设置CSCA的部分?它应该使用+CSCA:xxxxx\r\nOK进行响应(您可能需要使用ATV1激活详细响应)。是的,响应与您提到的相同。有没有可能SIM卡中没有配置CSCA号码?大多数SIM卡都预先配置了运营商的详细信息,但我想可能有些SIM卡没有。。。如果你想防御性地添加检查+CSCA的检测代码?并通知用户,或等待第一次发送失败。如果发送失败,我应该从数据库获取CSCA,并使用
+CSCA=
进行设置。嗯,我希望摆脱从DB获取CSCA。但为了安全起见,我应该一直设置它。你有什么建议吗?我正在发送PDU格式的短信,并尝试在不设置CSCA的情况下发送。这是成功的。因此,我认为没有明确的需要设置它,因为它已经在SIM卡中配置好了。