aidl使用以及原理分析

android客户端如何使用aidl对对接服务器使用统一的AIDL接口一定要保证包名、接口名、接口定义一致 , 最好直接复制 。AndroidBinder 原理在看源代码之前,经常看到Binder的东西,比如AMS,Android跨进程通信,本文整理并引用了别人的笔记,旨在个人复习和使用 。

1、Android进程间通信的几种实现方式①Activity(借助意图调用其他app的Activity,实现跨进程通信)Activity是Android的四个组件之一 , 是一个应用程序组件 , 提供一个屏幕供用户交互,以完成某项任务 。Activity中的所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(视图)显示指定的控件 。

活动通过意图相互交流 。(2)广播接收器(BroadcastReceiver)Android的四个组成部分中,有一个广播接收器,对应的是发送器 。广播分为两种不同的类型:“正常广播”和“有序广播” 。

2、安卓IPC跨进程通讯:AIDL Retrofit——AndLinker的初步使用当Android需要跨进程通信和IPC(进程间通信)时,AndLinker是Android上的一个IPC(进程间通信)库,融合了AIDL和改型的诸多特性,可以与RxJava和RxJava2的CallAdapters无缝配合使用 。个人简单的理解是:第三方库,简化AIDL流程 。你需要了解AIDL和改造前使用它 。

3、Android跨进程通信本文整理并引用他人笔记,以供个人评论 。参考链接:默认情况下,一个app只会在一个进程中运行,进程名就是app的包名 。1.分散内存占用Android系统对每个应用进程的内存占用是有限制的 。内存占用越大,被系统杀死的可能性就越大 。使用多个进程可以减少主进程占用的内存,避免OOM问题,降低被系统杀死的概率 。2.实现多模块一个成熟的应用一定是多模块的 。

【aidl使用以及原理分析】模块互不干扰,团队并行发展,职责分工也很明确 。3.降低程序崩溃率 。子进程崩溃不会影响主进程的运行 , 但可以降低程序崩溃率 。4.实现一些特殊的功能,比如push进程,让消息推送服务可以在主进程退出后离线完成 。您还可以实现一个守护进程来唤醒主进程以保持活动状态 。它还可以实现监控过程负责报告bug,从而改善用户体验 。android:process属性的值以冒号开头,是私有进程,否则是公共进程 。

    推荐阅读