ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## 广播 https://www.jianshu.com/p/0cca211df63c ## Messenger http://blog.csdn.net/lmj623565791/article/details/47017485 此处延伸:简述Binder , http://blog.csdn.net/luoshengyang/article/details/6618363/ ## AIDL(Android Interface Definition Language) ### 为什么要设计AIDL Android为了实现进程间的通信,尤其是在涉及到多进程并发情况下的进程通信。 Android中每一个进程都对应一个Dalvik VM实例,都有一块自己独立的内存,都在自己的内存上存储数据,执行自己的操作, 各个进程之间就像海上的小岛,在同一个世界,但又有自己的独立的世界。AIDL就相当于两座岛之间的桥梁,通过AIDL制定一些规则, 规定他们能进行哪些交流。 最终达到一个进程访问另一个进程的数据。甚至调用它们一些特定的方法。 如果仅仅是为了跨进程通信我们也还有其他的选择,比如BroadcastReceiver,Message等都可以达到跨进程通信,但是BroadcastRecever占用系统的资源比较多,如果频繁的跨进程通信的话显然就不可取,; Message进行跨进程通信时请求队列时同步进行的,无法并发执行,在有些要求多进程的情况下不实用,这个时候就需要使用AIDL。 ### 它有哪些语法? 语法上基本和Java一致, 只是再一些细微处有些许的差别 #### 文件类型 用AIDL书写的文件后缀是.aidl, 而不是java #### 数据类型 它只支持一些数据类型,这些数据类型不需要导包 #### 其他知识: https://www.jianshu.com/p/54bc60246e67