У меня есть действие, которое выполняет следующий код (время и интервал определены):
Intent buzzIntent = new Intent(getBaseContext(), BuzzReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(), 0, buzzIntent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
buzzIntent.putExtra("interval", interval);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, time, interval * 60 * 1000, pendingIntent);
и BroadcastReceiver, который имеет следующее onReceive:
@Override
public void onReceive(Context context, Intent intent) {
try {
int interval = intent.getIntExtra("interval", -1);
<... more code ...>
} catch (Exception e) {
e.printStackTrace();
}
}
, но намерение.getIntExtra () возвращает -1 (что не является значением интервала в Activity, я проверил), поэтому по какой-то причине BroadcastReceiver не получает дополнительные данные, которые я сохраняю в намерении в Activity.
Я пробовал кучу разных вещей, но ничего не получается.Я что-то здесь упускаю?