是否可以在移动设备上安装一个 j2me 应用程序作为“SMS 网关”来处理传入消息,通过 GPRS 对数据库进行查询并回复用户?
3 回答
这在任何支持 JSR 120 的 J2ME 手机上都是完全可能的(即:大多数手机)。但是,正如 Wonil 所说,您不能只处理任何传入的 SMS 消息。它必须是发送到您的应用程序正在侦听的端口号的 SMS(使用 Wonil 解释的服务器连接)。
除非应用程序已签名,否则它不会是自动的(因为发送 SMS 和网络访问通常需要确认)。
另一种方法是使用 USB 电缆/蓝牙/IR 将手机连接到 PC,使用手机作为调制解调器打开串行连接,然后使用 AT+CGML 编写程序以侦听新的 SMS,如此处所述。这将允许处理任何传入的 SMS(不需要端口号),并且没有任何烦人的确认提示。
高温高压
我认为您应该查看 JSR-120 文档以确认。但是,在我看来,这可能是不可能的。如果你想使用 JSR-120 接收消息,你应该分配特定的端点(端口号)来监听,如下所示:
serverConn = (MessageConnection)Connector.open("sms://:5000");
因此,您无法捕获所有 SMS 消息。那就不能当网关了。
这可能取决于您的手机是否支持它。查看 J2ME 无线消息传递 API:
Wireless Messaging API (WMA) 是 Java 2 Platform, Mobile Edition (J2ME) 的可选包,它提供对无线通信资源(如短消息服务 (SMS))的独立于平台的访问。
http://java.sun.com/products/wma/overview.html
本文有一些示例,可能可以作为您想要实现的目标的起点:http: //www.ibm.com/developerworks/wireless/library/wi-extendj2me/
编辑:正如其他人指出的那样,您可能无法收到所有消息。