zoukankan      html  css  js  c++  java
  • Android DevArt6:Android中IPC的六种方式

    Android中IPC的六种方式

    1.使用Bundle

    • 最简单的进程间通信方式:Intent + Bundle;
    • 支持三大组件:Activity、Service、BroadcastReceiver ;
    • 实现了Parcelable接口;
    • 可以传输基本数据类型、实现了Parcelable接口的对象、实现了Serizlizable接口的对象以及一些Android支持的特殊对象;

    特殊场景:从A进程到B进程传输数据,可以从A通过Intent+Bundle启动B中的Service组件(比如IntentService),让Service在后台进行计算,计算完成后再直接启动B中真正要启动的组件,这样,目标组件就可以直接从B中获取结果。详见下图:

    2.使用文件共享

    • 对文件格式没有具体要求,比如说可以试文本文件,也可以是XML文件,只要读/写双方约定数据格式即可;
    • 多线程操作会出现问题,所以说,文件共享方式适合用在对文件数据同步要求不高的进程间通信,并且要妥善处理并发读/写的问题;
    • SharedPreferences是个特例,它是Android提供的轻量级存储方案:
    •   

    3.使用Messenger

      Messenger Demo(GitHub)   

    • 轻量级的IPC方案,底层基于AIDL实现,通过Message在不同的进程间传递消息;
    • 一次处理一个请求,没有并发的情况。

     

    4.使用AIDL

      AIDL文件支持的数据类型:

     

    5.使用ContentProvider

    6.使用Socket

  • 相关阅读:
    python解析本地HTML文件
    爬取潇湘书院首页侧边栏
    Python文件的读取写入操作
    Python错误和异常
    Python字典
    python列表
    电文加密小程序
    课后练习题随笔(一)
    Redis基础操作
    Django学习_BBS开发
  • 原文地址:https://www.cnblogs.com/jooy/p/8920246.html
Copyright © 2011-2022 走看看