Tôi đang thiếu thứ gì đó ở đây và tôi hy vọng ai đó có thể giúp tôi. Tôi đang thiết lập một báo động bằng cách sử dụng sau đây:Gửi dữ liệu đến bộ thu phát báo động của người quản lý báo động
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
Intent broadcast_intent = new Intent(this, AlarmBroadcastReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, broadcast_intent, 0);
broadcast_intent.putExtra("test", "ValueReceived"); //data to pass
Date date = someVariable.getDateTime();
long triggerAtTime = date.getTime();
alarmManager.set(AlarmManager.RTC_WAKEUP, triggerAtTime, pendingIntent);
và thu phát sóng bằng cách sử dụng sau đây:
public class AlarmBroadcastReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Alarm has been received "+intent.getStringExtra("test"), Toast.LENGTH_LONG).show();
}
}
Tuy nhiên ý định của apperently "trống rỗng". Tôi thấy giá trị null cho getStringExtra. Vì vậy, dữ liệu không được truyền tới bộ thu phát sóng. Tôi đang làm gì sai? Làm thế nào tôi có thể vượt qua dữ liệu.
Cảm ơn bạn rất nhiều
thấy bài đăng này http://stackoverflow.com/questions/ 2844274/multiple-calls-to-alarmmanager-setrepeating-deliver-the-same-intent-pendinginten –
xem câu trả lời từ @Tôi nghĩ rằng đó là một trong những bạn cần – lemoncodes