版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Notification2023/9/28062023/9/28认识Notification使用Notification目录CONTENT12管理Notification3参考教材:《Android应用开发项目化教程》认识Notification作用Notification适用于程序在后台服务工作中,需要通知用户某一事件时使用。该通知会向系统状态条添加一个图标(还可以附有文本消息)以及一条“通知”窗口内的可扩展消息。1认识Notification特点信息类型一般为提供升级、提醒以及一些重要但不至于直接打断用户的信息。用户在任何时候都可以从状态栏访问Notification信息。将状态栏滑下可以打开通知抽屉。单击消息将会打开相关的应用。1认识Notification构成Icon/Photo:大图标Title/Name:标题Message:内容信息Timestamp:通知时间,默认是系统发出通知的时间,也可以通过setWhen()来设置SecondaryIcon:小图标内容文字,在小图标的左手边的一个文字1认识Notification扩展布局JellyBean版本为通知提供了显示更多细节的可选项,更多信息可以是短消息的最开头几行或者一个预览图。Android为Notification提供了两种展开模式,一种是展开显示更多文字,一种是展开显示图片。1认识Notification动作响应从JellyBean开始,Android支持在Notification的底部提供响应按钮,用户不必进入发出这个通知的Activity中就能对一个通知作出响应,这简化了交互过程,同时结合滑动删除特效给用户带来了很人性化的体验。响应按钮类型:非常重要的,明确典型的对速度敏感,需要用户立即作出响应的不会跟其他的响应按钮发生冲突1使用Notification基本流程①获得NotificationManager对象:
NotificationManagermNManager=(NotificationManager)getSystemService(NOTIFICATION_SERVICE);②创建一个通知栏的Builder构造类:
Notification.BuildermBuilder=newNotification.Builder(this);③对Builder进行相关的设置,比如标题,内容,图标,动作等!④调用Builder的build()方法为notification赋值⑤调用NotificationManager的notify()方法发送通知!
调用NotificationManager的cancel()方法取消通知2使用NotificationmBuilder常用方法setContentTitle(CharSequence):设置标题setContentText(CharSequence):设置内容setSubText(CharSequence):设置内容下面一小行的文字setTicker(CharSequence):设置收到通知时在顶部显示的文字信息setWhen(long):设置通知时间,一般设置的是收到通知时的System.currentTimeMillis()setSmallIcon(int):设置右下角的小图标,在接收到通知的时候顶部也会显示这个小图标setLargeIcon(Bitmap):设置左边的大图标setAutoCancel(boolean):用户点击Notification点击面板后是否让通知取消(默认不取消)2使用NotificationmBuilder常用方法setDefaults(int):向通知添加声音、闪灯和振动效果的最简单、使用默认(defaults)属性,可以组合多个属性,属性包括:Notification.DEFAULT_VIBRATE(添加默认震动提醒);Notification.DEFAULT_SOUND(添加默认声音提醒);Notification.DEFAULT_LIGHTS(添加默认三色灯提醒)Notification.DEFAULT_ALL(添加默认以上3种全部提醒)setVibrate(long[]):设置振动方式,如setVibrate(newlong[]{0,300,500,700});延迟0ms,然后振动300ms,在延迟500ms,接着再振动700ms。2使用NotificationmBuilder常用方法setLights(intargb,intonMs,intoffMs):设置三色灯,参数依次是:灯光颜色,亮持续时间,暗的时间(不是所有颜色都可以,这跟设备有关,有些手机还不带三色灯,另外,还需要为Notification设置flags为Notification.FLAG_SHOW_LIGHTS才支持三色灯提醒!)。setSound(Uri):设置接收到通知时的铃声,可以用系统的,也可以自己设置,例如:setDefaults(Notification.DEFAULT_SOUND)//获取默认铃声setSound(Uri.parse("file:///sdcard/xx/xx.mp3"))//获取自定义铃声setSound(Uri.withAppendedPath(Audio.Media.INTERNAL_CONTENT_URI,"5"))//获取Android多媒体库内的铃声2使用NotificationmBuilder常用方法setOngoing(boolean):设置为ture,表示它为一个正在进行的通知。他们通常是用来表示一个后台任务,用户积极参与(如播放音乐)或以某种方式正在等待,因此占用设备(如一个文件下载,同步操作,主动网络连接)setProgress(int,int,boolean):设置带进度条的通知参数依次为:进度条最大数值,当前进度,进度是否不确定如果为确定的进度条:调用setProgress(max,progress,false)来设置通知,在更新进度的时候在此发起通知更新progress,并且在下载完成后要移除进度条,通过调用setProgress(0,0,false)既可。如果为不确定(持续活动)的进度条,这是在处理进度无法准确获知时显示活动正在持续,所以调用setProgress(0,0,true),操作结束时,调用setProgress(0,0,false)并更新通知以移除指示条2使用NotificationmBuilder常用方法setContentIntent(PendingIntent):PendingIntent和Intent略有不同,它可以设置执行次数,主要用于远程服务通信、闹铃、通知、启动器、短信中,在一般情况下用的比较少。比如这里通过Pending启动Activity:getActivity(Context,int,Intent,int),当然还可以启动Service或者BroadcastPendingIntent的位标识符(第四个参数):FLAG_ONE_SHOT表示返回的PendingIntent仅能执行一次,执行完后自动取消FLAG_NO_CREATE表示如果描述的PendingIntent不存在,并不创建相应的PendingIntent,而是返回NULLFLAG_CANCEL_CURRENT表示相应的PendingIntent已经存在,则取消前者,然后创建新的PendingIntent,这个有利于数据保持为最新的,可以用于即时通信的通信场景FLAG_UPDATE_CURRENT表示更新的PendingIntent2使用NotificationmBuilder常用方法setPriority(int):设置优先级2使用Notification示例2管理NotificationNotificationManager是状态栏通知的管理类,负责发通知、清除通知等操作。获取实例——以单例模式获得,一般不直接实例化这个对象
NotificationManagermanager=(NotificationManager)
getSystemService(NOTIFICATION_SERVICE);3管理NotificationNotificationManager核心方法
notify()发送通知。cancel(intid)移除一个已经显示的通知,如果该通知是短暂的,会隐藏视图;如果通知是持久的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026山东济南文旅发展集团有限公司招聘2人备考题库附参考答案详解(考试直接用)
- 2025宁夏中卫市属国有企业拟聘任领导人员笔试历年常考点试题专练附带答案详解
- 2026上半年贵州事业单位联考六盘水市钟山区招聘174人备考题库附参考答案详解(研优卷)
- 2025天津新誉资产管理有限公司所属运营类企业选聘干部人才6人笔试参考题库附带答案详解
- 2026吉林省吉高路业发展有限公司劳务派遣项目招聘1人备考题库带答案详解(新)
- 2025四川九洲投资控股集团有限公司招聘行政管理岗测试笔试历年难易错考点试卷带答案解析
- 2026中国建材集团数字科技有限公司招聘23人备考题库及答案详解(考点梳理)
- 2026新疆准东能源投资(集团)有限公司 招(竞)聘7人备考题库含答案详解(完整版)
- 2026上半年青海事业单位联考黄南州招聘68人备考题库含答案详解(研优卷)
- 2026上半年安徽事业单位联考五河县招聘20人备考题库附答案详解(能力提升)
- 手术室压疮研究新进展及成果汇报
- 2025年陕西省中考英语试题卷(含答案及解析)
- T/GMIAAC 002-20232型糖尿病强化管理、逆转及缓解诊疗标准与技术规范
- 科学教师培训课件
- 股权激励协议范本
- 2024生物样本库中生物样本处理方法的确认和验证要求
- 国产电视剧报审表
- 农业技术推广指导-农业推广的概念与基本原理
- TCSAE 153-2020 汽车高寒地区环境适应性试验方法
- 乳液聚合乳液聚合机理
- 4D厨房设备设施管理责任卡
评论
0/150
提交评论