1、 使用程序在網絡上發送短信息,例如各大網站的短信業務。這種方式是通過程序將信息發送給運營商的網關服務器,然后通過運營商的網絡發送給手機。
2、 在計算機中,通過數據線連接到手機,然后通過手機來發送短信息。這種方式是通過使用AT指令來實現。愛立信手機的AT指令你可以在以下地址找到:http://mobilityworld.ericsson.com.cn/development/download_hit.asp
3、 通過在手機中運行的程序來發送短信息。這個正是本文實現的方式。
在J2ME中,如果想發送短信息,需要使用WMA包,MIDP2.0中已經包含,MIDP1.0中可以通過廠商提供的擴展API實現,和WMA的類庫基本一樣。
下面是使用WMA向指定手機號碼發送短信息的一個方法,很簡單。當然WMA也提供了其他的方式來發送更多的內容。
// SMSUtil.java package my.util; import javax.wireless.messaging.*; import javax.microedition.io.*; /** * 發送文本短信息的方法 */ public class SMSUtil { /** * 給指定號碼發送短信息 * @param content 短信息內容 * @param phoneNumber 手機號碼 * @return 發送成功返回true,否則返回false */ public static boolean send(String content,String phoneNumber) { //返回值 boolean result = true; try { //地址 String address = "sms://+" + phoneNumber; //建立連接 MessageConnection conn = (MessageConnection)Connector.open(address); //設置短信息類型為文本,短信息有文本和二進制兩種類型 TextMessage msg = (TextMessage)conn.newMessage(MessageConnection.TEXT_MESSAGE); //設置信息內容 msg.setPayloadText(content); //發送 conn.send(msg); } catch(Exception e) { result = false; //未處理 } return result; } } |