1、进程与线程相当于车间与流水线,而包名就相当于车间名。
进程名与进程ID2、创建进程:android:process
还可以为每一个Activity,组件命名进程名。
android:process = “:push”; //在进程的空间里附加一个进程,在原来的进程名后面加上:push。
为应用命名进程名3、进程的等级:
前台进程、可见进程、服务进程、后台进程、空进程
4、进程的回收是根据进程的等级进行回收的
5、多进程间的通信IPC(inter process communication)
全局初始化多进程会初始化多遍,比较耗资源也比较费电。
进程间的内存不可见
为什么需要多进程之间的通信:内存不共享
如何实现通信:系统实现、Message(多进程单线程)-->利用Handler(单进程多线程)、AIDL(多进程多线程)。
6、Message
6、AIDL(Android Interface definition language)
新建AIDL文件
dradle build 生成下面的接口类:
新建person类,并安装插件Parceable,利用parceable自动实现接口
在activity中绑定service
7、服务与通知
service 小结:种类--》Local(当前进程的service,依附在主进程,节约资源)、Remote(另外一个进程,独立的 进程,当主进程被kill,还可以运行)
类型--》前台(在通知栏一直显示)、后台
启动方式--》start、bind
前台服务: Notification
下面对Notification类中的一些常量,字段,方法简单介绍一下:
常量:
DEFAULT_ALL 使用所有默认值,比如声音,震动,闪屏等等
DEFAULT_LIGHTS 使用默认闪光提示
DEFAULT_SOUNDS 使用默认提示声音
DEFAULT_VIBRATE 使用默认手机震动【说明】:加入手机震动,一定要在manifest.xml中加入权限
NotificationManager常用方法介绍:
publicvoidcancelAll() 移除所有通知(只是针对当前Context下的Notification)
publicvoidcancel(intid) 移除标记为id的通知 (只是针对当前Context下的所有Notification)
publicvoidnotify(String tag ,intid, Notification notification) 将通知加入状态栏,标签为tag,标 记为id
publicvoidnotify(intid, Notification notification) 将通知加入状态栏,标记为id
对于Notification的实现可以参考http://blog.csdn.net/loongggdroid/article/details/17616509
网友评论