Notification的常用属性

属性 说明
icon 通知上的图标
tickerText 通知上显示滚动的文字
when 显示通知时间
flags 通知的特性
contentView 通知的视图
default 默认效果
contentIntent 点击通知栏的操作
sound 播放的声音

示例代码

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.widget.RemoteViews;import com.example.administrator.demolist.R;import java.util.HashMap;
import java.util.Map;import turbosnail.cc.MainActivity;
import turbosnail.cc.service.service.download_services.DownloadService;
import turbosnail.cc.service.service.entityClass.FileInfo;/*** 通知工具类*/
public class NotificationUtil {private NotificationManager mNotificationManager = null;            //使用NotificationManager管理通知private Map<Integer, Notification> mNotifications = null;        //存储当前所有活动的通知方便为我们管理private Context mContext;public NotificationUtil(Context context) {//获得通知系统服务mNotificationManager = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE);mNotifications = new HashMap<>();mContext = context;}public void showNotification(FileInfo fileInfo) {//判断通知是否已经显示if (!mNotifications.containsKey(fileInfo.getId())) {//创建通知对象Notification notification = new Notification();//设置滚动文字notification.tickerText = fileInfo.getFileName() + "开始下载";//设置显示时间notification.when = System.currentTimeMillis();//设置图标notification.icon = R.drawable.tabbar_me;//设置通知特性notification.flags = Notification.FLAG_AUTO_CANCEL;  //FLAG_AUTO_CANCEL点击通知栏的内容后自动消失//点击通知栏后的操作Intent intent = new Intent(mContext, MainActivity.class);//包装intentPendingIntent pintent = PendingIntent.getActivity(mContext, 0, intent, 0);notification.contentIntent = pintent;//          这里是关键//创建RemoteView对象,远程视图   也就是通过RemoteView绑定视图RemoteViews remoteViews = new RemoteViews(mContext.getPackageName(), R.layout.item_notification);//设置开始按钮操作Intent intentStart = new Intent(mContext, DownloadService.class);intentStart.setAction(DownloadService.ACTION_START);intentStart.putExtra("fileInfo", fileInfo);PendingIntent piStart = PendingIntent.getService(mContext, 0, intentStart, 0);remoteViews.setOnClickPendingIntent(R.id.btn_start_download, piStart);//设置结束按钮操作Intent intentStop = new Intent(mContext, DownloadService.class);intentStop.setAction(DownloadService.ACTION_STOP);intentStop.putExtra("fileInfo", fileInfo);PendingIntent piStop = PendingIntent.getService(mContext, 0, intentStop, 0);remoteViews.setOnClickPendingIntent(R.id.btn_end, piStop);//设置TextViewremoteViews.setTextViewText(R.id.tv_fileName,fileInfo.getFileName());//设置Notification的视图notification.contentView = remoteViews;//发出通知mNotificationManager.notify(fileInfo.getId(), notification);//把通知加到集合中mNotifications.put(fileInfo.getId(), notification);}}/*** 取消通知** @param id*/public void cancelNotification(int id) {//取消通知mNotificationManager.cancel(id);//删除集合中的通知mNotifications.remove(id);}/*** 更新进度条* @param id* @param progress*/public void updateNotification(int id, int progress) {Notification notification = mNotifications.get(id);if (notification != null) {//修改进度条notification.contentView.setProgressBar(R.id.pb_progress,100,progress,false);//重新发送通知mNotificationManager.notify(id,notification);}}
}

Notification(通知)的属性及简单使用相关推荐

  1. android之Notification通知

    我们在用手机的时候,如果来了短信,而我们没有点击查看的话,是不是在手机的最上边的状态栏里有一个短信的小图标提示啊?你是不是也想实现这种功能呢?今天的Notification就是解决这个问题的. pac ...

  2. 四十一、Android Notification通知详解

    根据activity的生命周期,在activity不显示时,会执行onStop函数(比如按下home键),所以你在onStop函数(按退出键除外)里面把notification放在通知栏里,再此显示时 ...

  3. 安卓APP_ 控件(6)—— Notification通知

    摘自:安卓APP_ 控件(6)-- Notification通知 作者:丶PURSUING 发布时间: 2021-04-02 00:30:14 网址:https://blog.csdn.net/wei ...

  4. Android Notification通知详解

    Android Notification通知详解 Notification: (一).简介: 显示在手机状态栏的通知.Notification所代表的是一种具有全局效果的通知,程序一般通过Notifi ...

  5. Android Notification通知详细解释

    Android Notification通知具体解释 Notification: (一).简单介绍: 显示在手机状态栏的通知. Notification所代表的是一种具有全局效果的通知,程序一般通过N ...

  6. 适配 通知 Notification 通知渠道 前台服务 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. Notification —— 通知

             Notification -- 通知,是一种让你的应用程序在不使用Activity的情况下警示用户.它是看不见的程序组件(Broadcast Receiver,Service和不活跃 ...

  8. 配置 SQL Server 2008 Email 发送以及 Job 的 Notification通知功能

    SQL Server 2008配置邮件的过程就不写了,网上的案例太多了. http://www.cnblogs.com/woodytu/p/5154526.html 这个案例就不错. 主要写下配置完后 ...

  9. Android学习|控件——Notification通知

    Android学习|控件--Notification通知 一.前提 二.两个对象的的构建 1.创建NotificationManager 2.使用Builder构造器来创建Notification 2 ...

最新文章

  1. 凯明MAE被超越了?字节跳动iBOT刷新十几项SOTA
  2. 一滴汗测出你是否压力山大,得州大学联合研发高敏度贴片式皮质醇检测仪
  3. ArchiCAD 23中文版
  4. SQL Server 2000 sp4 简体中文版免费在线下载!
  5. android 系统状态栏的隐藏和显示
  6. C# 字符串按设置的格试在前面或后面增加空格或其它字符
  7. 比目鱼搜索不能用了_win10搜索功能失效解决办法
  8. html 绝对位置居中,如何在div中对绝对定位元素进行居中?
  9. 对象的序列化与反序列化Demo
  10. 软件项目实施方案介绍
  11. sql数据库去重语法_数据库去重语句
  12. windows安装office2016
  13. 2017第八届CSTQB国际软件测试高峰论坛圆满召开
  14. 移动硬盘上装双系统Linux
  15. 白山数聚蜂巢敏捷集成助力能源企业数字化转型
  16. 360企业版 修改服务器ip,360企业版快速安装部署图文教程
  17. 合天网安实验室CTF-基础50-0x01
  18. Python:实现ternary search三元搜索算法(附完整源码)
  19. 【Nape教程】Nape刚体碰撞检测
  20. 如何用PDF编辑器编辑、修改PDF文本和图片?

热门文章

  1. 2022中国出海品牌价值50强榜单公布,手机通讯、家用电器、乘用车三类赛道品牌价值得分占比名列前茅 | 美通社头条...
  2. 关于小学计算机课教学反思,小学信息技术课教学反思
  3. 如何给html创建关联,【经验分享】如何给制作的关联营销模板加上产品链接
  4. Flash远程调用Red5方法
  5. 12306验证码具体坐标
  6. css font-family css 字体 css 字体样式
  7. 现货黄金k线图一学就懂
  8. 红米K40 Gaming刷入面具获取root
  9. Carson带你学Android:主流开源图片加载库对比(UIL、Picasso、Glide、Fresco)
  10. 当几乎所有程序打不开。。。