android前台服务以及通知

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android前台服务以及通知相关的知识,希望对你有一定的参考价值。

参考技术A

前台服务是那些被认为用户知道(用户认可所认可)且在系统内存不足的时候 不允许系统杀死 的服务。前台服务 必须给状态栏提供一个通知 ,它被放到正在运行(Ongoing)标题之下——这就意味着 通知只有在这个服务被终止或从前台主动移除通知后才能被解除。

Notification支持文字内容显示、震动、三色灯、铃声等多种提示形式,在默认情况下,Notification仅显示消息标题、消息内容、送达时间这3项内容。

Notification:通知信息类,它里面对应了通知栏的各个属性。
NotificationManager : 状态栏通知的管理类,负责发通知、清除通知等操作。

构建通知的步骤:

更新通知
要想更新通知,需要利用 NotificationManager.notify()
的id参数,该id在应用内需要唯一。要想更新特定id的通知,只需要创建新的Notification,并发出与之前所用 id 相同的 Notification。 如果之前的通知仍然可见,则系统会根据新的 Notification 对象的内容更新该通知。相反,如果之前的通知已被清除,系统则会创建一个新通知。

删除通知
删除通知可以有多种方式:
1.通过 NotificationCompat.Builder 设置 setAutoCancel(true) ,这样当用户点击通知后,通知自动删除。
2.通过 NotificationManager.cancel(id) 方法,删除指定 id 的通知
3.通过 NotificationManager.cancelAll() 方法,删除该应用的所有通知

关于前台服务和通知更具体的内容可参考 紫豪

以上是关于android前台服务以及通知的主要内容,如果未能解决你的问题,请参考以下文章

Android 使用前台服务

后台服务和前台服务有啥区别?

如何在没有服务运行通知的情况下在android前台服务中设置通知接收器......如Whatsapp和Telegram?

无法从服务启动前台通知?

android 如何实现后台时用通知栏显示有新的消息,当在前台时不显示通知

API 级别 24 中的前台服务 - Android 7.0 Nougat