Tôi đang kiểm tra thông báo có thể xếp chồng (Stacking Notifications article).Thông báo không hiển thị khi setGroup() được gọi trong Android KitKat
Tôi phát hiện thấy trong một số trường hợp, thông báo không được hiển thị sau khi gọi notify()
trong các thiết bị chạy Android 4.X KitKat.
Để đơn giản chỉ là vấn đề tôi đã tạo mã này mà mô phỏng một thông báo (button1) và thông báo thứ hai với một bản tóm tắt (button2)
private final static int NOTIFICATION_ID_A=6;
private final static int NOTIFICATION_ID_B = 7;
private final static int NOTIFICATION_ID_SUMMARY = 8;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showNotif(NOTIFICATION_ID_A,false);
}
});
findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showNotif(NOTIFICATION_ID_B,false);
showNotif(NOTIFICATION_ID_SUMMARY,true);
}
});
}
private void showNotif(int notificationId,boolean groupSummary) {
CharSequence title="Title "+notificationId;
CharSequence message="Message "+notificationId;
NotificationCompat.Builder notifBuilder = new NotificationCompat.Builder(this);
notifBuilder.setSmallIcon(R.drawable.icon_notifications);
notifBuilder.setContentTitle(title);
notifBuilder.setContentText(message);
notifBuilder.setGroupSummary(groupSummary);
notifBuilder.setContentIntent(PendingIntent.getActivity(this, 0, new Intent(this, MainActivity.class), PendingIntent.FLAG_UPDATE_CURRENT));
notifBuilder.setGroup("group_" + 1);
NotificationManagerCompat.from(this).notify(notificationId, notifBuilder.build());
}
Ý tưởng là người đầu tiên nhấn button1 và sau đó là button2. Nó hoạt động tuyệt vời trong android 5.0+ hiển thị notif đầu tiên đầu tiên và tóm tắt khi nút thứ hai được nhấp vào, nhưng trong Android 4.X button1 không hiển thị bất cứ điều gì.
Lỗi ở đâu?
Cảm ơn
Xin chào @Addev Tôi gặp vấn đề tương tự. Làm thế nào bạn giải quyết được điều này? Bất kỳ ý tưởng? Cảm ơn trước. – sourcerebels
Điều tương tự ở đây. Thông báo cá nhân đầu tiên không được hiển thị và thông báo nhóm chỉ được hiển thị với thông báo cá nhân thứ hai. Bị hỏng trên KitKat và bên dưới, hoạt động tốt trên Lollipop và ở trên. Do hạn chế về thời gian, tôi phải vô hiệu hóa nhóm thông báo cho API <21. Điều này có thể là lỗi trong NotificationManagerCompat đối với API Lollipop trước hoặc chúng tôi thiếu một số cuộc gọi/phương thức huyền bí ở đâu đó để thực hiện công việc này đúng. Dù bằng cách nào, tôi đang thêm tiền thưởng vào đây để thu hút sự chú ý đến điều này. – Matej
bạn đã đặt những phiên bản sdk tối thiểu và mục tiêu hiện tại của mình là gì? – AndroidMechanic