çalışmıyor ben cevabını bulamıyorum bir sorun var. AndroidDeveloper eğitimlerini denedim, burada stackoverflow üzerinde ve google'da arama yaptım ama arama becerilerim çok yandı ya da bence cevaplarımın cevabını soruyorum.Yığın bildirimleri()
Birden fazla fikir varken tüm yeni mesajlar için bir bildirim haline mesaj bildirimleri yığını istiyorum. Her mesaj için bir bildirim görünebilir ancak yığın/özet bildirimi yapamıyorum. http://developer.android.com/images/android-5.0/notifications/Summarise_Dont.png
İstediğim şudur:
alıyorum iyi budur http://developer.android.com/images/android-5.0/notifications/Summarise_Do.png
Ben API 19 kullanıyorum ve geri uyumlu olmak zorunda değildir. Kodumu AndroidStudio'da yazıp Genymotion'da test ediyorum.
Birden bildirimleri sahip olmanın sonucu ile NotificationCompatManager kullanarak denedi:
NotificationManager notificationManager=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Benim bildirim görünüyor: NotificationManagerCompat notificationManager = NotificationManagerCompat.from(this);
Ben de aynı sonucu NotificationManager kullanarak denedi, birden fazla bildirimleri ise böyle:
Notification notification = new NotificationCompat.Builder(this) .setContentTitle("New message from... ") .setContentText("Message:...") .setSmallIcon(R.drawable.icon) .setContentIntent(pIntent) .setSound(RingtoneManager.getDefaultUri(TYPE_NOTIFICATION)) .setGroup(mNoti) .setGroupSummary(true) .setAutoCancel(true) .build();
Ve böyle bildirimi ateş:
her bildirim için sayacı artırır böylece her bildirim kendi kimliği vardırnotificationManager.notify(counter, notification);
.
Ben de succsess olmadan bildirim bina ve fiering için bu formu denedi:
NotificationCompat.Builder notificationBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.icon)
.setContentTitle("message from...")
.setContentText("message...")
.setContentIntent(pIntent)
.setAutoCancel(true)
.setGroup(mNoti)
.setGroupSummary(true)
.setSound(RingtoneManager.getDefaultUri(TYPE_NOTIFICATION));
notificationManager.notify(counter, notificationBuilder.build());
setGroup açıkçası benim için kayda gelmez. Neden işe yaramadığını ya da nasıl çalışmam gerektiğini anlamıyorum. Böyle
grubum görünüm:
final static String mNoti = "mNoti";
Ben yeni bildirim eskileri geçersiz kılar, böylece tüm bildirimleri için aynı kimliği kullanarak ve setNumber kullandığını istediklerini uzaktan yakından gelen tek şey (int) bildirimi oluştururken. Ancak bu bana gerçekten istediğim sonucu vermiyor çünkü kullanıcı tarafından ele alınmayan bildirimlerin sayısını alabileceğimi düşünmüyorum. Ya da yapabilir miyim?
kimse bana istenen hedefe varmak yardımcı olabilir misiniz? tüm bildirimleri true grup özetini ayarlamak çünkü
Tavsiyeni izledi ve setGroupSummary ve setGroup kullanılan ve yukarıda yalnızca Android 5.0 ve olsa çalışma yaptı. 4.4 ve 4.2 her bir bildirimi ayrı ayrı gösterir. Bu burada asıl soruya ötesine geçer, bu yüzden oluşturulan bir yenisi: http://stackoverflow.com/q/31483772/1204377 –
@AntonCherkashyn Eğer bu çizgiyi dahil ettik emin misiniz: 'manager.cancelAll(); // Bu gerçekten gerekli mi? '? Bu, yalnızca açık olanı özetleyen eski bildirimleri kapatmak için "hile" dir. – Pphoenix
Denedim ve sonra ben sadece telefonda, gerçek üzerinde özet bildirimi gördüm ancak nihai amacın Android Wear'de yığılmış bildirim olması ve ben android geliştirici giodelines başına bireysel bildirimleri + 1 özet bildirim yangın zorunda yapmaktır https://developer.android.com/training/wearables/notifications/stacks.html. Calling manager.cancelAll(); ayrıca Android Wear'daki bildirimleri de reddeder. tek tek bu bildirimleri özel eylemleri beri Böylece, işe yaramaz/sayfalar/vb –