2011-03-08 19 views
7

Kullanıcının olay oluşturabileceği ve o olayla ilgili bildirim ayarlayabileceği bir Uygulama geliştiriyorum. Bu yüzden birden çok bildirim eklemek istiyorum. Aşağıdaki kodu kullanıyorum.Android Çoklu Bildirim

final Notification notifyDetails = new Notification(R.drawable.icon, "Myapp",calendar.getTimeInMillis()); 
Context context = getApplicationContext(); 
Intent notifyIntent = new Intent(context, ViewDoughnut.class); 
PendingIntent pendingIntent = PendingIntent.getActivity(ViewCal.this, 0, notifyIntent, android.content.Intent.FLAG_ACTIVITY_NEW_TASK); 
notifyDetails.setLatestEventInfo(context, contentTitle, contentText, pendingIntent); 
notifyDetails.flags = Notification.FLAG_ONGOING_EVENT; 
mNotificationManager.notify(SIMPLE_NOTFICATION_ID, notifyDetails); 

Bir olay eklediğimde ve yukarıdaki kodu kullanarak bir bildirim oluşturduğumda, bu iyi çalışıyor. Ancak başka bir etkinlik eklerseniz, yeni bir bildirim oluşturulmaz, eski olanı yeni güncellendi. Bir bildirim daha eklemek istiyorum. Nasıl yapılır? Ayrıca, kullanıcı buna karşılık gelen etkinliği silerse belirli bir bildirimi silmek istiyorum. Nasıl mümkün olabilir?

cevap

12

SIMPLE_NOTIFICATION_ID'un sabit olduğunu mu sanıyorum? Ayrı bildirimlere sahip olmak için her biri için farklı bir kimlik kullanmanız gerekir.

//"CommonUtilities.getValudeFromOreference" is the method created by me to get value from savedPreferences. 
String notificationId = CommonUtilities.getValueFromPreference(context, Global.NOTIFICATION_ID, "0"); 
int notificationIdinInt = Integer.parseInt(notificationId); 

notificationManager.notify(notificationIdinInt, notification); 

// will increment notification id for uniqueness 
notificationIdinInt = notificationIdinInt + 1; 
CommonUtilities.saveValueToPreference(context, Global.NOTIFICATION_ID, notificationIdinInt + ""); 
//Above "CommonUtilities.saveValueToPreference" is the method created by me to save new value in savePreferences. 

daha ayrıntılı bilgi veya herhangi bir sorgu gerekiyorsa bana bildirin:

+0

ancak kullanıcı ilgili olayı silerken herhangi bir bildirimi nasıl iptal edebilirim? MNotificationManager.cancel (editEventid) ile denediyseniz, hiç çalışmıyor. –

+0

@ user525004 Aynı kimliği, bildirimi oluştururken kullandığınız gibi iptal yöntemine iletirseniz, o zaman işe yaramaz (uygulamanızda benim için çalışır). Etkinliklerin zaten kendi benzersiz kimlikleri varsa, bunları yalnızca bildirim kimlikleri için kullanın. –

+0

ID'yi nasıl farklı yapabilirim? Bir bildirim kendisi tarafından her oluşturulduğunda +1'e kadar, bana biraz kod gösterebilir misiniz? –

0

Aşağıda geçiş benzersiz bildirim kimliği için kodudur. :)

İlgili konular