我有一个始终可供用户使用的自定义通知(不是特定事件的通知),并且应该提供最新数据。 有没有办法知道通知屏幕正在显示,所以我可以在此时更新我的通知数据,而不是定期轮询新数据?
由于
答案 0 :(得分:0)
当您想要使用通知的ID进行更新时,您应该只调用NotificationManager的notify方法,这就是您应该更新通知的方式,而不是每次都调用新的通知。你在android上使用默认通知系统吗?
答案 1 :(得分:0)
使用通知管理器的详细信息:
设置您的初始讯息。然后做第一次通知:
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
Notification notification = new Notification(icon, tickerText, when);
notification.flags = notification.flags | Notification.FLAG_ONGOING_EVENT;
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
notificationManager.notify(GC.DATABASE_NOTIFICATION_ID, notification);
将contentText的文本更改为新信息。然后使用以下内容更新通知:
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
notificationManager.notify(GC.DATABASE_NOTIFICATION_ID, notification);
如果展开通知栏,则会更新消息区域。无需关闭并重新打开通知栏。
显示屏的文字区域水平尺寸有限。可以显示的文字不多。这不在开发者指南中。
如果要显示比常规下拉显示中的进度条或更多文本,则必须自定义通知。请参阅开发人员指南。这是非常直接的。