11

Ho creato una classe AlarmReceiver che viene utilizzata come ricevitore broadcast per l'allarme. Il problema è che ho bisogno di inviare alcuni valori dalla classe che sta impostando l'allarme alla classe del ricevitore broadcast.passaggio intento extra al ricevitore broadcast Android

setAlarmManager.java

 Intent i = new Intent(mContext, AlarmReceiver.class); 
    i.putExtra(KEY_ROWID, (long)taskId); 
    PendingIntent pi = PendingIntent.getBroadcast(mContext,taskId_int,i,PendingIntent.FLAG_ONE_SHOT); 
    mAlarmManager.set(AlarmManager.RTC_WAKEUP, when.getTimeInMillis(), pi); 

ho bisogno di ottenere il KEY_ROWID da intenti alarmreceiver classe. Come lo posso fare? La classe AlarmReceiver è mostrata di seguito.

public class AlarmReceiver extends BroadcastReceiver { 
      public static final String ALARM_ALERT_ACTION ="com.android.alarmclock.ALARM_ALERT"; 
      public static final String ALARM_INTENT_EXTRA = "intent.extra.alarm"; 

    @Override 
     public void onReceive(Context context, Intent intent) { 

      //Here I need the values from intent using bundle or anything... 

    } 
} 
+0

come si fa a mettere il valore @ John tempo? – gumuruh

risposta

12

È possibile utilizzare:

public class AlarmReceiver extends BroadcastReceiver { 
      public static final String ALARM_ALERT_ACTION ="com.android.alarmclock.ALARM_ALERT"; 
      public static final String ALARM_INTENT_EXTRA = "intent.extra.alarm"; 

    @Override 
     public void onReceive(Context context, Intent intent) { 

      String keyid = intent.getStringExtra("KEY_ROWID"); 
    } 
} 
+0

Grazie mille ...... – John

Problemi correlati