Android跨程序通訊的幾種方式

2021-07-10 20:42:31 字數 1000 閱讀 6558

今天我要介紹的四種跨程序通訊方式就是四種間接通訊方式。這四種跨程序通訊的方式,

方式一:bundle。

bundle實現了parcelable介面,在android中不同的應用執行在不同的程序中。通過intent啟動其他應用的元件activity,service,receiver

時,可以將資料儲存在bundle中,然後設定在intent中,就實現了第一種跨程序通訊ipc。

方式二:通過系統檔案。

不同的多個程序的應用,可以對磁碟裡的同乙個檔案讀寫。sharedperference就是xml檔案儲存鍵值對實現的。

但是,android系統基於linux核心,並沒有對檔案的讀寫做併發處理。因此有可能發生異常。

方式三:利用contentprovider提供資料分享的介面。

android應用程式可以使用file或sqlite來儲存資料。contentprovider提供乙個在多個應用程式之間共享資料的方式。能夠對分享出去的提供增刪改查操作。

contentprovider與contentresolver是成對出現的。contentprovider提供資料分享介面。contentresolver與其進行對接。android系統本身也提供了很多

形式。訪問乙個contentprovider對應的資料。需要知道它對應uri。

例如:android.provider.contacts.phones.content_uri

每乙個contentprovider可以控制多個資料集。這種情況下每個資料集對應乙個單獨的uri。所有的uri必須以「content://」開頭。

具體步驟:1,編寫contentprovider的子類,重寫contentprovider的抽象方法:query,insert,update,detele。

2,在androidminifest.xml中註冊contentprovider。

方式四:基於訊息的跨程序messenger。

方式五:aidl。

Android中跨程序通訊的幾種方式

安卓中的四大元件,就是為了解決跨程序通訊的問題 1.廣播 2.contentprovide 3.service裡面常用的aidl 其實就是binder機制 4.activity 如呼叫系統通話應用 需要乙個uri intent callintent new intent intent.action ...

Android 跨程序通訊(一)

一.概述 跨程序通訊 aidl 主要實現程序 應用 間資料共享功能。二.實現流程 1.伺服器端實現 1 目錄結構,如下圖 2 實現 aidl檔案 a.iaidlservice.aidl實現 import com.focus.aidl.person inte ce iaidlservice b.per...

關於Android 跨程序通訊的文章?

一.概述 跨程序通訊 aidl 主要實現程序 應用 間資料共享功能。二.實現流程 1.伺服器端實現 1 目錄結構,如下圖 2 實現 aidl檔案 a.iaidlservice.aidl實現 import com.focus.aidl.person inte ce iaidlservice b.per...