Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android的進程和線程模型

Android的進程和線程模型

編輯:Android開發教程

Android進程模型

在安裝Android應用程序的時候,Android會為每個程序分配一個Linux用戶ID,並設置相應的權限,這樣其它應用程序就不能訪問此應用程序所擁有的數據和資源了。

在 Linux 中,一個用戶ID 識別一個給定用戶;在 Android 上,一個用戶ID 識別一個應用程序。應用程序在安裝時被分配用戶 ID,應用程序在設備上的存續期間內,用戶ID 保持不變。

默認情況下,每個apk運行在它自己的Linux進程中。當需要執行應用程序中的代碼時,Android會啟動一個jvm,即一個新的進程來執行,因此不同的apk運行在相互隔離的環境中。

下圖顯示了:兩個 Android 應用程序,各自在其自己的基本沙箱或進程上,他們是不同的Linux user ID。

開發者也可以給兩個應用程序分配相同的linux用戶id,這樣他們就能訪問對方所擁有的資源。

為了保留系統資源,擁有相同用戶id的應用程序可以運行在同一個進程中,共享同一個jvm。

如下圖,顯示了兩個 Android 應用程序,運行在同一進程上。

不同的應用程序可以運行在相同的進程中。要實現這個功能,首先必須使用相同的私鑰簽署這些應用程序,然後必須使用 manifest 文件給它們分配相同的 Linux 用戶 ID,這通過用相同的值/名定義 manifest 屬性 android:sharedUserId 來做到。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved