android 邮件是否成功,如果您发送的邮件在Android中成功发送,请通知您

构建两个PendingIntent一个用于发送,另一个用于传递通知。

构建两个BroadcastReceiver。一个用于发送,另一个用于发送。

最后,通过registerReceiver将这些PendingIntent注册到相应的BroadcastReceiver,以便他们的BroadcastReceiver得到通知并做必要的事情。

醇>

我已经构建了一个简单的类来完成我上面解释过的工作。你可以通过这门课程来完全理解它_

public class SendDeliverSMSActivity extends Activity {

Button btnSendSMS;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btnSendSMS = (Button) findViewById(R.id.btnSendSMS);

btnSendSMS.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

// Your method that send sms

sendSMS("5556", "Hi You got a message!");

}

});

}

/**

* ---sends an SMS message to another device---

*

* @param phoneNumber

* @param message

*/

private void sendSMS(String phoneNumber, String message) {

// Intent Filter Tags for SMS SEND and DELIVER

String SENT = "SMS_SENT";

String DELIVERED = "SMS_DELIVERED";

// STEP-1___

// SEND PendingIntent

PendingIntent sentPI = PendingIntent.getBroadcast(this, 0, new Intent(

SENT), 0);

// DELIVER PendingIntent

PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0,

new Intent(DELIVERED), 0);

// STEP-2___

// SEND BroadcastReceiver

BroadcastReceiver sendSMS = new BroadcastReceiver() {

@Override

public void onReceive(Context arg0, Intent arg1) {

switch (getResultCode()) {

case Activity.RESULT_OK:

Toast.makeText(getBaseContext(), "SMS sent",

Toast.LENGTH_SHORT).show();

break;

case SmsManager.RESULT_ERROR_GENERIC_FAILURE:

Toast.makeText(getBaseContext(), "Generic failure",

Toast.LENGTH_SHORT).show();

break;

case SmsManager.RESULT_ERROR_NO_SERVICE:

Toast.makeText(getBaseContext(), "No service",

Toast.LENGTH_SHORT).show();

break;

case SmsManager.RESULT_ERROR_NULL_PDU:

Toast.makeText(getBaseContext(), "Null PDU",

Toast.LENGTH_SHORT).show();

break;

case SmsManager.RESULT_ERROR_RADIO_OFF:

Toast.makeText(getBaseContext(), "Radio off",

Toast.LENGTH_SHORT).show();

break;

}

}

};

// DELIVERY BroadcastReceiver

BroadcastReceiver deliverSMS = new BroadcastReceiver() {

@Override

public void onReceive(Context arg0, Intent arg1) {

switch (getResultCode()) {

case Activity.RESULT_OK:

Toast.makeText(getBaseContext(), "SMS delivered",

Toast.LENGTH_SHORT).show();

break;

case Activity.RESULT_CANCELED:

Toast.makeText(getBaseContext(), "SMS not delivered",

Toast.LENGTH_SHORT).show();

break;

}

}

};

// STEP-3___

// ---Notify when the SMS has been sent---

registerReceiver(sendSMS, new IntentFilter(SENT));

// ---Notify when the SMS has been delivered---

registerReceiver(deliverSMS, new IntentFilter(DELIVERED));

SmsManager sms = SmsManager.getDefault();

sms.sendTextMessage(phoneNumber, null, message, sentPI, deliveredPI);

}

}

我希望这会对你有所帮助! :)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值