Ich erstelle eine einfache Android-Anwendung, in der ich versuche, eingehende SMS-Nachrichten abzufangen. Das Problem, das ich habe, ist, dass die Toastnachrichten vom onReceive nicht auftauchen. Bitte helfen Sie!Toast wird nicht in SMS angezeigt. Android-App empfangen
Danke,
Isaiah Thompson
public class SMSR extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
//Print Message
Toast.makeText(context,"Received Message Start",Toast.LENGTH_SHORT).show();
// Get the data (SMS data) bound to intent
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null) {
// Retrieve the SMS Messages received
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
// For every SMS message received
for (int i = 0; i < msgs.length; i++) {
// Convert Object array
msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
// Sender's phone number
str += "SMS from " + msgs[i].getOriginatingAddress() + " : ";
// Fetch the text message
str += msgs[i].getMessageBody().toString();
// Newline <img draggable="false" class="emoji" alt="" src="https://s.w.org/images/core/emoji/72x72/1f642.png">
str += "\n";
}
}
//Print Message
Toast.makeText(context,"Received Message End",Toast.LENGTH_SHORT).show();
Toast.makeText(context,str,Toast.LENGTH_SHORT).show();
}
}
nicht 'Toast' für die Fehlersuche anwenden. Verwenden Sie stattdessen "Log.d". Auch - sind Sie sicher, dass Sie die SMS erhalten – Rahel
Es gibt viele bewegliche Teile. Überprüfen Sie diese Antwort für eine detaillierte Anleitung. https://StackOverflow.com/a/11436473/6051131 – Rahel
Ich glaube nicht, dass ich SMS-Nachrichten empfange. Wenn ich einen Testtext sende, scheint die App ihn nicht abzufangen, jedoch glaube ich, dass der obige Code der richtige Weg ist. –