第9讲 进程与服务

1.     进程间通信IPC

IPC“Inter-ProcessCommunication”的缩写,即进程间通信。AndroidAPP提供了多进程工作模式,这是因为多线程存在若干局限:
1
、多线程共存于一个进程中,而该进程可用的内存容量是固定的,多线程不会拓展app可用的内存大小。所以如果app的性能瓶颈在内存,那么多线程并不能提高处理速度。
2
app在响应用户操作之外,还想完成某些系统管理的任务,比如说双守护进程防止被意外杀掉、比如说app集成第三方插件要定期推送消息,以及其他类似服务端系统管理的功能。
另外,进程间通信不局限于两个APP进程直接通信,也包括APP与系统进程通信,以及进程间通过文件、广播等手段间接通信。

 

2.     Notification

Android的消息通知栏放的是APP想即时提醒用户的消息,Notification就是这么一个由APP提供的通知推送内容,每条通知基本都有这些元素:图标、标题、内容、时间等等,它的参数通过建造者模式来构建。

下面是Notification.Builder常用的构建参数方法:
setWhen :
设置推送时间,以小时:分钟格式显示
setShowWhen :
设置是否显示推送时间
setUsesChronometer :
设置是否显示时间计数。为true时将不显示推送时间,动态显示从通知被推送到当前的时间间隔,以分钟:秒钟格式显示
setSmallIcon :
设置状态栏里面的图标(小图标)
setTicker :
设置状态栏里面的提示文本
setLargeIcon :
设置下拉列表里面的图标(大图标)
setContentTitle :
设置下拉列表里面的标题文本
setContentText :
设置下拉列表里面的内容文本
setSubText :
设置下拉列表里面的附加说明文本,位于内容文本下方。若调用该方法,则setProgress的设置将失效
setProgress :
设置进度条与当前进度。进度条位于标题文本与内容文本中间
setNumber :
设置下拉列表右下方的数字,可与setProgress联合使用,表示进度条的当前进度数值
setContentInfo :
设置下拉列表右下方的文本。若调用该方法,则setNumber的设置将失效
setContentIntent :
设置内容的PendingIntent,在点击该通知时触发Intent动作
setDeleteIntent :
设置删除的PendingIntent,在滑掉该通知时触发Intent动作
setAutoCancel :
设置该通知是否自动清除。若为true,点击该通知后,通知会自动消失;若为false,点击该通知后,通知不会消失。
setSound :
设置通知推送时的声音
setVibrate :
设置通知推送时的震动方式
setOngoing :
设置该通知是否保持在下拉列表中。为true时用户将不能从下拉列表中去掉该通知
setPriority :
设置该通知的优先级
setExtras :
设置该通知的Bundle参数信息
setContent :
设置一个定制视图RemoteViews,用于取代Builder的默认视图模板
build :
构建方法。在以上参数都设置完毕后,调用该方法会返回Notification对象
NotificationManagerNotification只是生成通知的内容,实际推送动作还需要借助于系统的通知服务来实现。NotificationManager便是系统通知服务的管理类,它的常用方法如下:
notify :
推送指定通知到状态栏和下拉列表
cancel :
取消指定通知。调用该方法后,状态栏和下拉列表中的指定通知将消失
cancelAll :
取消所有通知

3.     PendingIntent

PendingIntent意即延迟的Intent,主要用于非立即响应的通信场合。有用到它的场合如下:
1
、用于定时器AlarmManager,处理时刻到达后的提醒动作
2
、用于通知推送Notification,处理点击通知后的相应动作
3
、用于远程视图RemoteViews,处理远程控件上的点击动作
4
、用于发送短信SmsManager,处理短信发送完的后续动作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值