Android: not receiving SMS delivery confirmation in emulator

I try to send sms to another phone and get confirmation if sms is delivered or not. Now only confirmation of sending sms works. Therefore, I get a message that my sms are sent, but then I do not receive anything. I use 2 emulators for testing, but I don't think this is a problem. Unfortunately, I do not have a mobile phone with a moment of peace :(

My code is as follows:

private void sendSms(String txt, String phone){ PendingIntent sentPI = PendingIntent.getBroadcast(act, 0, new Intent(SENT), 0); PendingIntent deliveredPI = PendingIntent.getBroadcast(act, 0, new Intent(DELIVERED), 0); //---when the SMS has been sent--- act.registerReceiver(new BroadcastReceiver(){ @Override public void onReceive(Context arg0, Intent arg1) { switch (getResultCode()) { case Activity.RESULT_OK: Toast.makeText(act, "SMS sent", Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: Toast.makeText(act, "Generic failure", Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_NO_SERVICE: Toast.makeText(act, "No service", Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_NULL_PDU: Toast.makeText(act, "Null PDU", Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_RADIO_OFF: Toast.makeText(act, "Radio off", Toast.LENGTH_SHORT).show(); break; } } }, new IntentFilter(SENT)); //---when the SMS has been delivered--- act.registerReceiver(new BroadcastReceiver(){ @Override public void onReceive(Context arg0, Intent arg1) { switch (getResultCode()) { case Activity.RESULT_OK: Toast.makeText(act, "SMS delivered", Toast.LENGTH_SHORT).show(); break; case Activity.RESULT_CANCELED: Toast.makeText(act, "SMS not delivered", Toast.LENGTH_SHORT).show(); break; } } }, new IntentFilter(DELIVERED)); SmsManager sms = SmsManager.getDefault(); sms.sendTextMessage(phone, null, txt, sentPI, deliveredPI); } 
+3
source share
1 answer

According to the “SMS Messaging in Android” -tutorial on mobiforge.com, the delivery status report does not work with emulators:

When it is successfully delivered, it will display the message "SMS delivered." Please note that for testing using the emulator, when the SMS message is successfully delivered, the message "SMS delivered" is not displayed; This only works for real devices.

+6
source

All Articles