for (String num : c.getContactsNumbers()) {
try {
i++;
if (PhoneNumberUtils.isGlobalPhoneNumber(num)) {
sendSMS(num,content);
}
} catch (Exception e) {
j++;
}
}
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
sendReceiver = new SMSReceiver(); //注册
IntentFilter sendFilter = new IntentFilter(ACTION_SMS_SEND);
registerReceiver(sendReceiver, sendFilter);
deliveryReceiver = new SMSReceiver();
IntentFilter deliveryFilter = new IntentFilter(ACTION_SMS_DELIVERY);
registerReceiver(deliveryReceiver, deliveryFilter);
}
@Override
protected void onPause() {
// TODO Auto-generated method stub //销毁
super.onPause();
unregisterReceiver(sendReceiver);
unregisterReceiver(deliveryReceiver);
}
private void sendSMS(String num,String content)
{
SmsManager smsMag = SmsManager.getDefault();
Intent sendIntent = new Intent(ACTION_SMS_SEND);
PendingIntent sendPI = PendingIntent.getBroadcast(this, 0, sendIntent,
0);
Intent deliveryIntent = new Intent(ACTION_SMS_DELIVERY);
PendingIntent deliveryPI = PendingIntent.getBroadcast(this, 0,
deliveryIntent, 0);
ArrayList<PendingIntent> sendPIs=new ArrayList<PendingIntent>();
ArrayList<PendingIntent> deliveryPIs=new ArrayList<PendingIntent>();
for(int i=0;i<smsMag.divideMessage(content).size();i++)
{
sendPIs.add(sendPI);
deliveryPIs.add(deliveryPI);
}
smsMag.sendMultipartTextMessage(num, null,smsMag.divideMessage(content), sendPIs, deliveryPIs);
}
public class SMSReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
String actionName = intent.getAction();
int resultCode = getResultCode();
if (actionName.equals(ACTION_SMS_SEND)) {
switch (resultCode) {
case Activity.RESULT_OK:
Toast.makeText(EditMessageActivity.this, "\n[Send]SMS Send:Successed!",
Toast.LENGTH_SHORT).show();;
break;
case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
Toast.makeText(EditMessageActivity.this, "\n[Send]SMS Send:RESULT_ERROR_GENERIC_FAILURE!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_NO_SERVICE:
Toast.makeText(EditMessageActivity.this, "\n[Send]SMS Send:RESULT_ERROR_NO_SERVICE!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_NULL_PDU:
Toast.makeText(EditMessageActivity.this, "\n[Send]SMS Send:RESULT_ERROR_NULL_PDU!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_RADIO_OFF:
break;
}
} else if (actionName.equals(ACTION_SMS_DELIVERY)) {
switch (resultCode) {
case Activity.RESULT_OK:
Toast.makeText(EditMessageActivity.this, "\n[Delivery]SMS Delivery:Success!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
Toast.makeText(EditMessageActivity.this, "\n[Delivery]SMS Delivery:RESULT_ERROR_GENERIC_FAILURE!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_NO_SERVICE:
Toast.makeText(EditMessageActivity.this, "\n[Delivery]SMS Delivery:RESULT_ERROR_NO_SERVICE!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_NULL_PDU:
Toast.makeText(EditMessageActivity.this, "\n[Delivery]SMS Delivery:RESULT_ERROR_NULL_PDU!",
Toast.LENGTH_SHORT).show();
break;
case SmsManager.RESULT_ERROR_RADIO_OFF:
Toast.makeText(EditMessageActivity.this, "\n[Delivery]SMS Delivery:RESULT_ERROR_RADIO_OFF!",
Toast.LENGTH_SHORT).show();
break;
}
}
}
}
android 发送短信问题
最新推荐文章于 2016-04-18 16:27:50 发布