Android进程间通信的方式
生活随笔
收集整理的這篇文章主要介紹了
Android进程间通信的方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.Bundle/Intent四大組件之間傳遞數據
2.文件共享
3.Broadcast
廣播是一種被動跨進程通訊的方式。當某個程序向系統發送廣播時,其他的應用程序只能被動地接收廣播數據。
4.ContentProvider
Android系統四大組件之一,底層也是Binder實現的,主要用來為其他APP提供數據。
5.AIDL
AIDL通過定義服務端暴露的接口,以提供給客戶端來調用。通過編寫aidl文件來設計想要暴露的接口,編譯后會自動生成響應的java文件,服務器將接口的具體實現寫在Stub中,用iBinder對象傳遞給客戶端,客戶端bindService的時候,用asInterface的形式將iBinder還原成接口,再調用其中的方法。
6.Messenger
Messenger是基于AIDL實現的,服務端(被動方)提供一個Service來處理客戶端(主動方)連接,維護一個Handler來創建Messenger,在onBind時返回Messenger的binder。
雙方用Messenger來發送數據,用Handler來處理數據。Messenger處理數據依靠Handler,所以是串行的,也就是說,Handler接到多個message時,就要排隊依次處理。
7.Socket
服務器中定義ServerSocket來監聽端口,客戶端使用Socket來請求端口,連通后就可以進行通信。
總結
以上是生活随笔為你收集整理的Android进程间通信的方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android多进程引发的问题
- 下一篇: Android中Messenger进程间