當前位置:名人名言大全網 - 短信平臺 - android 多條短信息發出後的狀態怎樣判斷

android 多條短信息發出後的狀態怎樣判斷

SmsManager smsManager = SmsManager.getDefault();//獲取短信管理器,是Android系統默認的短信管理器,可以通過它發送短信。

List<String> contents = smsManager.divideMessage(content);//多條短信。這裏是將內容較長的短信拆分成多條短信發送。

for(String text : contents){

smsManager.sendTextMessage(destinationAddress, scAddress, text, sentIntent, deliveryIntent);//發送短信

}

發送短信時會有兩個結果狀態,壹個是短信是否成功發送,壹個是對方是否成功接收,是否發送成功不是由Android程序來決定的,短信是由短信基站比如移動發送的,我們只需要把短信發送到移動無線通訊網絡,網絡發送短信是否成功,移動會返回壹個信號,信號會被程序捕獲。

程序采用異步的方式捕獲信號,因為不可能壹直開著線程等待返回的信號,所以sendTextMessage()的後兩個參數sentIntent和deliveryIntent就是接受發送和接收狀態信號用的。

sentIntent為短信發送是否成功的Intent;deliveryIntent為接收方是否收到了短信的Intent,這裏如果不想接收返回的信號,可以設置為null。

把Intent傳進去後,如果移動網絡返回壹個短信發送成功或失敗的信號,操作系統會通過異步的方式廣播這個Intent,妳就知道短信的狀態了。