Android 开发笔记十

1、进程与线程相当于车间与流水线,而包名就相当于车间名。


进程名与进程ID

2、创建进程: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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容