長短信發送問題。
1.將信息長度拆開發送。
2.為了解決長短信拆分發送,在手機終端,收到的順序錯亂,所以在每一段短信發送完成后,延時5秒,這樣在手機終端客戶收到的信息,就會按照拆分的順序發送。
//信息總長度 int sumlength = aMessage.length(); int sta = 0; // 開始截取位置 int end = 50; // 每次截取長度 String msg = null; // 臨時短信內容 int mNumber; // 分割條數 mNumber = sumlength / end + 1; // 將短信拆分到List中 每50字一條 發送 if(sumlength>50){ for (int i = 1; i < mNumber + 1; i++) { //最后一條截取方式 if (i == mNumber) { msg = aMessage.substring(sta, sumlength); } else { msg = aMessage.substring(sta, end * i); } //發送的消息進行轉碼GB2312 /iso-10646-ucs-2 byte[] MessageContent =msg.getBytes("GB2312"); tResult=sendmessage(MessageContent,aPhoneNum); Thread.sleep(5000); sta = i * end; } }
長短信6字節協議在網上也沒找到具體的代碼片段,如果能有更好的解決方法請大家積極參與,與評論。