5
Tôi gửi nhiều thông điệp tới nhiều liên lạc, và cho mỗi lần sử dụng tiếp xúc mã sauAndroid SmsManger Cung cấp báo cáo
private void sendSMS(String first, String last, String id, String phoneNumber)
{
try {
String message;
message = insertName(first, last);
if (message.equals(null) || message.equals("")) message = "\n";
String SENT = "SMS_SENT";
String DELIVERED = "SMS_DELIVERED";
PendingIntent sentPI = PendingIntent.getBroadcast(this, 0,
new Intent(SENT), 0);
PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0,
new Intent(DELIVERED), 0);
//---when the SMS has been sent---
registerReceiver(new BroadcastReceiver()
{
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;
}
}
}, new IntentFilter(SENT));
//---when the SMS has been delivered---
registerReceiver(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;
}
}
}, new IntentFilter(DELIVERED));
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumber, null, message, sentPI, deliveredPI);
tôi muốn tìm hiểu cung cấp báo cáo cho mỗi tin nhắn, làm thế nào có thể nhận được số hoặc bất cứ điều gì thông điệp phát sóng để hiểu báo cáo phân phối dành cho liên hệ này?
Có, bạn có thể đặt bất kỳ điều gì miễn là bạn có thể xác định ý định của nhau. – Tarun
'id' đã được định nghĩa là Chuỗi trong các tham số; đó là 'putExtra()' thêm chuỗi vào 'deliverIntent'. Vậy tại sao bạn sử dụng 'getLongExtra()' thay vì 'getStringExtra()' trong 'onReceive'? – 1111161171159459134
@Tarun bất kỳ ý tưởng nào về MMS? – Gattsu