Gau*_*wal 8 sms android pdu android-intent
SMSManagers的Android文档sendTextMessage函数
public void sendTextMessage (String destinationAddress, String scAddress, String text,
PendingIntent sentIntent, PendingIntent deliveryIntent)
Run Code Online (Sandbox Code Playgroud)
deliveryIntent 如果不为NULL,则在将邮件传递给收件人时广播此PendingIntent.状态报告的原始pdu位于扩展数据("pdu")中
我无法理解当SMS传递到destinationAddress或scAddress时是否会触发deliveryIntent,"状态报告的原始pdu是否在扩展数据("pdu")中是什么意思"以及如何获取该报告?.
我感谢您的努力.
当消息传递到 时,它会被广播destinationAddress。
当注册接收到您定义的 Intent 广播时,可以从 PDU中提取。例如:Intent.getExtras().get("pdu")BroadcastReceiverPendingIntent.getBroadcast(Context, int requestCode, Intent, int flags)
private void sendSMS(String phoneNumber, String message) {
String DELIVERED = "DELIVERED";
PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0,
new Intent(DELIVERED), 0);
registerReceiver(
new BroadcastReceiver() {
@Override
public void onReceive(Context arg0, Intent arg1) {
Object pdu = arg1.getExtras().get("pdu");
... // Do something with pdu
}
},
new IntentFilter(DELIVERED));
SmsManager smsMngr = SmsManager.getDefault();
smsMngr.sendTextMessage(phoneNumber, null, message, null, deliveredPI);
}
Run Code Online (Sandbox Code Playgroud)
然后你需要解析提取的PDU,SMSLib应该能够做到这一点。
| 归档时间: |
|
| 查看次数: |
2361 次 |
| 最近记录: |