美文网首页
Android开发艺术探索-- IPC

Android开发艺术探索-- IPC

作者: AndroidTony | 来源:发表于2017-09-11 09:55 被阅读8次

    1 基本概念

    1.1 android开启多进程的方式:

    • 在menifest中指定android:process属性
    • 通过jni在native层fork一个进程

    两种配置process的方式

    1    android:process:":remote"
    2    android:process:"com.ryg.cha.remote"
    

    :方式表示在当前进程名后加上remote,为当前应用私有进程,其它应用的组件不可以跑在这个进程。
    而完整进程名的进程属于全局进程,其它应用的组件可以通过shareUID和它跑在统一进程。(还需要签名相同。)

    1.2 Serializable和Parceable接口

    接口类型 使用步骤 特点 适用场景 注意事项
    Serializable 实现Serializable接口并声明serialVersionUID java接口,使用简单但开销大,生成大量临时变量,大量IO,容易引起频繁GC 序列化到存储设备或者网络传输 transient变量不参与序列化
    Parceable 实现Parcelable接口,(1)重写writeToParcel方法,序列化为Parcel对象;(2)describeContents,默认返回1(3)实例化静态内部对象CREATOR实现接口Parcelable.Creator,反序列化 android接口,效率更高,性能更优,推荐方式 内存序列化(例如Intent间数据传递、IPC),不能使用在将数据存储在磁盘的情况 成员变量中有对象类型时,反序列化需要传递当前线程的上下文类加载器

    更多内容可参考:Android中Serializable和Parcelable序列化对象详解

    1.3 序列化与持久化的区别

    名称 作用 解决什么问题
    序列化 把内存中的对象变成流的形式 对象传输的问题,如何把对象变成字节流
    持久化 将内存中的对象存储在永久保存的磁盘上面 对象存储和恢复的问题

    参考:JAVA的序列化和持久化的区别与联系

    相关文章

      网友评论

          本文标题:Android开发艺术探索-- IPC

          本文链接:https://www.haomeiwen.com/subject/azyxsxtx.html