Android中的多程序模式

2021-07-25 10:17:34 字數 644 閱讀 4962

呼叫系統或第三方平台應用。由於是兩個程序,所以必須使用跨程序的方式

以此方式,程序名為包名:remote。屬於當前應用的私有程序,其他應用的元件不可以和它跑在同乙個程序中。

android:process=":remote"
以此方式,程序名為com.ethanco.test.remote。屬於全域性程序,其他應用通過shareuid方式可以和它跑在同一程序中。

android:process="com.ethanco.test.remote"
android系統會為每個應用分配乙個唯一的uid,具有相同uid的應用才能共享資料。

在shareuid和簽名都相同的情況下,可以互相訪問對方的私有資料。

如果連程序又相同,還可以共享記憶體資料。

通過jni在native層去fork乙個新的程序

執行緒同步機制完全失效

sharedpreferences的可靠性下降

@override

public void oncreate()

參考 《android藝術開發探索》

Chromium的多程序模式

參考 簡單的說,chrome支援以下幾種程序模型 process per site 同網域名稱範疇的 放在乙個程序,比如www.google.com和www.google.com bookmarks就屬於乙個網域名稱內 google有自己的判定機制 不論有沒有互相開啟的關係,都算作是乙個程序中。用命...

Android多程序導致的問題

由於dialer包含兩個程序,會有以下問題 2 phone程序無法呼叫contactmanager查詢通訊錄資訊 3 要將獲取sharedpreference的mode設定為 mode multi process 其值為4 2.3以後有該屬性 如 getsharedpreferences test ...

Android 應用實現多程序

android service 跨程序實現 同乙個應用程式中實現多個程序通訊 通訊機制 使用aidl通訊 具體步驟 1 新建aidl檔案 例 iclickaidlinte ce.aidl inte ce iclickaidlinte ce 以上步驟,如果沒有差錯,重新編譯,會自動生成乙個 iclic...