我喜欢使用
是否有一种方法可以从
Notification.Builder
的易用性,但似乎不支持通知的持续模式。是否有一种方法可以从
Notification.Builder
设置标志FLAG_INSISTENT
?Notification.Builder
的易用性,但似乎不支持通知的持续模式。Notification.Builder
设置标志FLAG_INSISTENT
?不能直接设置。在Notification.Builder
上有一个私有的setFlag()
方法 - 我不知道他们为什么没有公开它。
但是,您可以通过使用Builder
配置其余的Notification
,然后调整完成的Notification
对象的标志。
或者,获取Notification.Builder
的代码并修改它以创建自己的构建器,该构建器公开setFlag()
或添加setInsistent()
等方法。
NotificationCompat.Builder builder = new NotificationCompat.Builder(getContext());
builder.setContentTitle("Title")
.setContentText("Hello world")
.setSmallIcon(R.mipmap.ic_launcher);
Notification notification = builder.build();
notification.flags = Notification.FLAG_INSISTENT;
final NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(ID, notification)
FLAG_INSISTENT
的东西,它很可能是通知渠道的一部分,因为那里配置了声音。然而,我不知道是否有像以前使用FLAG_INSISTENT
一样的选项。但是,我还没有深入研究这个问题。 - CommonsWare