现在SMS客户端是创建起来了,也就是说你手上的设备已经和服务器建立了连接,那么如何发送短信息呢?首先,你应该使用MessageConnection接口的newMessage()方法创建一个空(empty)的消息,然后再设置该消息的PayloadText(也就是需要发送的文本或者是二进制数据),最后调用MessageConnection的send()方法将短信息发送到目标设备中去。请看下面的代码:
public void sendText( MessageConnection conn, String text)
throws IOException, InterruptedIOException {
TextMessage msg = conn.newMessage( conn.TEXT_MESSAGE );
msg.setPayloadText( text );
conn.send( msg );
}
如果是发送二进制格式的数据,那么代码略有不同:
public void sendBinary( MessageConnection conn, byte[] data)
throws IOException, InterruptedIOException {
BinaryMessage msg=conn.newMessage( conn.BINARY_MESSAGE);
当然了,你所能发送的数据量是有限的,一般来说,SMS文本信息可以包含160或者是70个字符,这依赖于你使用何种字符编码,如果是二进制数据,那么容量是140字节(Note:The WMA requires support for message concatenation, however, which means that these limits are actually at least three times higher.)。同时,你可以使用MessageConnection接口的numberO fSegments()方法决定某一个特别的短信息能否被发送,并且需要把这条信息拆分为多少个信息段(message segments)。