Tôi đang tạo một ứng dụng đồng hồ nhiều điểm dừng, trong đó sẽ có nhiều bộ hẹn giờ chạy song song và mỗi thông báo được liên kết với từng bộ hẹn giờ.Android: Quản lý nhiều thông báo trên thanh trạng thái
Tôi có thể tạo nhiều bộ tính giờ với mã sau đây.
private void updateNotification(int notificationId, int clockStatusID, CharSequence text) {
// notificationManager.cancel(notificationId);
// throws up an ongoing notification that the timer is running
Log.i("TIMERCOUNT", "Notification id: " + notificationId);
Notification not = new Notification(clockStatusID, // the
// icon
// for
// the
// status
// bar
text, // the text to display in the ticker
System.currentTimeMillis() // the timestamp for the
// notification to appear
);
Intent intent = new Intent();
intent.setClassName("com.intuit.time_catcher.android.activities",
"com.intuit.time_catcher.android.activities.Tabs");
not.setLatestEventInfo(self,
getText(R.string.timer_notification_title),
getText(R.string.timer_on_notification_text), PendingIntent
.getActivity(this, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT));
not.flags += Notification.FLAG_ONGOING_EVENT;
not.flags += Notification.FLAG_NO_CLEAR;
notificationManager.notify(notificationId, not);
}
Sau đây là vấn đề mà bạn phải đối mặt. Cân nhắc có 3 bộ hẹn giờ đang chạy và 3 thông báo trên thanh trạng thái. Khi tôi cập nhật bộ đếm thời gian 2, thông báo 3 (mà là ở cuối cùng bên phải) được cập nhật, nhưng những gì tôi thực sự muốn làm là để cập nhật thông báo thứ hai (giữa một). Khi tôi in id thông báo, hãy xem các giá trị phù hợp. Tôi không thể hiểu tại sao tôi nhận được hành vi kỳ lạ này?
Tôi đã thử nó, nhưng vẫn nhận được cùng một vấn đề –
Thay vì intent.setAction() tôi đã sử dụng intent.setData() và nó đã hoạt động –