Ich bin eine ausstehende Absicht durch Alarmreceiver aus einer Serviceklasse übergeben. Nachdem jedoch pendingIntent ausgelöst wurde, werden die intent.putExtra() - Informationen nicht von der Broadcast-Empfängerklasse empfangen. Hier ist mein Code die PendingIntent zum Brennenintention.putExtra() in ausstehende Absicht funktioniert nicht
Intent aint = new Intent(getApplicationContext(), AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), id, aint, PendingIntent.FLAG_UPDATE_CURRENT);
aint.putExtra("msg", msg);
aint.putExtra("phone", phone);
alarmManager.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), pendingIntent);
Der Alarmempfänger Klasse unten ist
public String msg, phonen;
@Override
public void onReceive(Context context, Intent intent){
Bundle extras = intent.getExtras();
msg = extras.getString("msg");
phonen = extras.getString("phone");
Log.d("onReceive", "About to execute MyTask");
Toast.makeText(context,msg, Toast.LENGTH_LONG).show();
}
Die msg Informationen in Toast, dass aus schwebenden Absicht empfangen wird, wird nicht gezeigt werden. Stattdessen wird ein leerer Toast angezeigt.
Für diejenigen, bei dieser Suche und die .putExtra Methoden haben vor zu PendingIntent Befestigung ist das 'PendingIntent.FLAG_UPDATE_CURRENT' wichtig, so versuchen, dass, bevor auf eine andere Lösung übergehen. – DonutGaz