Android中Notification通知用法详解
时间:2022-07-28
本文章向大家介绍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不允许通知,所以需要先打开允许通知,再运行项目,才能收到通知信息。
以上就是本文的全部内容,希望对大家的学习有所帮助。
- 温故而知新:查看端口占用情况以及DOS中的管道操作/重定向操作
- Android新手之旅(7) RadioButton的自定义
- Flash/Flex学习笔记(4):如何打开网页及Get/Post数据
- Flash/Flex学习笔记(5):捕获摄像头(续)--在线抓屏并保存到客户端本地
- 分布式监控系统Zabbix--使用Grafana进行图形展示
- Silverlight在线创建PDF(支持中文)
- Flash/Flex学习笔记(3):动态添加组件
- Flash/Flex学习笔记(1):Hello World!
- 数据库常规操作
- 不伦不类的Action Script 3.0
- Asp.Net Mvc中的一些初级问题整理
- Pandas Series笔记
- Asp.Net4.0/VS2010新变化(6):内置的图表控件
- Asp.Net4.0/VS2010新变化(5):可扩展的(分布式)缓存
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释