Android中Notification通知用法详解
作者:最冷一天丶 发布时间:2023-02-24 02:37:51
标签:Android,Notification,通知
Notification的作用
通知(Notification)是Android系统中比较有特色的一个功能。当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以用通知来实现
用法
首先我们需要一个NotificationManager来对通知进行管理,可以调用getSystemService()方法得到,方法接收一个字符串参数用于确定获取系统的哪个服务,这里我们传入NOTIFICATION_SERVICE。
NotificationManager manager=(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
接下来用一个Builder构造器来创建Notification对象
Intent intent=new Intent(this,NotificationActivity.class);
//用intent表现出我们要启动Notification的意图
PendingIntent pi=PendingIntent.getActivity(this,0,intent,0);
//将Intent对象传入PendingIntent对象的getActivity方法中
NotificationManager manager=(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification notification=new NotificationCompat.Builder(this)
.setContentTitle("This is content title")
//设置通知栏中的标题
.setContentText("hello world!")
//设置通知栏中的内容
.setWhen(System.currentTimeMillis())
//设置通知出现的时间,此时为事件响应后立马出现通知
.setSmallIcon(R.mipmap.ic_launcher)
//设置通知出现在手机顶部的小图标
.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher))
//设置通知栏中的大图标
.setContentIntent(pi)
//将PendingIntent对象传入该方法中,表明点击通知后进入到NotificationActivity.class页面
.setAutoCancel(true)
//点击通知后,通知自动消失
.setDefaults(NotificationCompat.DEFAULT_ALL)
//默认选项,根据手机当前的环境来决定通知发出时播放的铃声,震动,以及闪光灯
.setPriority(NotificationCompat.PRIORITY_MAX)
//设置通知的权重
.build();
manager.notify(1,notification);
//用于显示通知,第一个参数为id,每个通知的id都必须不同。第二个参数为具体的通知对象
注意事项
通知属性定义以后,要通过NotificationManager对象的notify()方法来显示通知。
项目运行后,如果通知一直无法发出,那么请看看手机里面的“通知与状态栏”里面的“通知管理”。部分手机默认对APP不允许通知,所以需要先打开允许通知,再运行项目,才能收到通知信息。
来源:http://blog.csdn.net/cwh1010714845/article/details/78254748
0
投稿
猜你喜欢
- 提示:运行该程序可双击滚动字幕推出程序。(当然任务管理器也可以...)步骤如下:1.新建窗体,并设置窗体的FormBorderStyle属性
- 一、实现效果本篇文章实现了简单的图片轮播,初始化3张资源图片,初始化3秒更换一次图片背景,轮换播放。二、知识点Thread线程start()
- Hutool Java工具类库_ExcelUtil依赖<!--Hutool Java工具包--> &l
- 本文实例讲述了C#利用Openxml读取Excel数据的方法,分享给大家供大家参考。具体分析如下:这里有些问题,如果当Cell 里面是 日期
- 前言:已经有一个月没写点什么了,感觉心里空落落的。今天再来篇干货,想要学习Webapi的园友们速速动起来,跟着博主一起来学习吧。之前分享过一
- 现在网上很多应用都是用二维码来分享网址或者其它的信息。尤其在移动领域,二维码更是有很大的应用场景。因为项目的需要,需要在网站中增加一个生成二
- 堆排序是一种树形选择排序方法,它的特点是:在排序的过程中,将array[0,...,n-1]看成是一颗完全二叉树的顺序存储结构,利用完全二叉
- 1. String.trim()trim()是去掉首尾空格2.str.replace(" ", ""
- 本文将以C#程序代码为例介绍如何来读取txt文件中的内容,生成Word文档。在编辑代码前,可参考如下代码环境进行配置:Visual Stud
- 目录一、个性化主题设置二、字体设置代码编辑区字体控制台字体左侧与顶部菜单栏字体三、常用设置优化一、 鼠标滚轮调整代码编辑区字体大小;二、代码
- 1. 获取绝对文件路径System.IO.Path.GetFullPath(string path)string fileName = &q
- 条件(也称为条件队列 或条件变量)为线程提供了一个含义,以便在某个状态条件现在可能为 true 的另一个线程通知它之前,一直挂起该线程(即让
- 最近被.net winform中的控件布局搞困惑了,由于控件都是使用Dock方式的,操作起来也是比较方便,如果最大化,窗口大小调整等,都可以
- 一、序言(一)背景内容软件应用技术架构中DAO层最常见的选型组件为MyBatis,熟悉MyBatis的朋友都清楚,曾几何时MyBatis是多
- 1、引入依赖<dependency> <groupId>org.apache.pdfbox</gr
- 本文实例讲述了C#使用委托实现的快速排序算法。分享给大家供大家参考。具体如下:class QuickSort { private dele
- 在SpringBoot中,当需要获取到配置文件数据时,除了可以用Spring自带的@Value注解外,SpringBoot提供了一种更加方便
- 现在许多流行的软件中都有欢迎界面,今天就介绍一下欢迎界面的制作,由于界面涉及到页面的滑动,因此要采用ViewPager,sdk在4.0一下的
- SlidingDrawer隐藏屏外的内容,并允许用户通过handle以显示隐藏内容。它可以垂直或水平滑动,它有俩个View组成,其一是可以拖
- 了解JVM内存结构的目的在Java的开发过程中,因为有JVM自动内存管理机制,不再需要像在C、C++开发那样手动释放对象的内存空间,不容易出