2012-09-28 114 views
9

運行應用程序.apk文件時會生成該apk文件並安裝在模擬器中。爲了在模擬器中安裝apk文件,我們需要Android調試橋(ADB)服務。守護進程是此服務的一部分。我的問題是守護進程的工作是什麼?它有什麼作用?什麼是adb守護進程?

回答

2

我的問題是守護進程的工作是什麼?它有什麼作用?

守護進程就像其他線程或對象的服務提供者一樣運行在與守護線程相同的進程中。守護線程用於後臺支持任務,只有在正常線程正在執行時才需要。如果普通線程沒有運行,剩餘的線程是守護線程,則解釋器退出。

+2

對通用守護進程的很好的描述,但是這並不回答什麼* adb守護進程*。 – nneonneo

12

Android Debug Bridge文檔:

的Android調試橋(ADB)是一種多功能的命令行工具,允許你 與仿真器實例或連接的Android 設備進行通信。它是一個包含三個組件的客戶端服務器程序:

  • 客戶端,它運行在您的開發機器上。您可以通過發出adb命令從shell調用客戶端。其他Android工具 ,如ADT插件和DDMS也可以創建adb客戶端。
  • 服務器,在您的開發機器上作爲後臺進程運行。服務器管理客戶端和模擬器或設備上運行的adb守護進程之間的通信。
  • 守護進程,作爲每個仿真器或設備實例上的後臺進程運行。

所以,守護進程是在設備(或仿真器)運行,其從所述服務器ADB接受命令並執行它們的ADB組件。

+0

它是否像一個操作系統的Android模擬器? – lopa

+0

不,它只是一個接受命令並在設備上執行它們的程序。你說'adb shell',守護進程在設備上運行'sh'並將'stdout/stdin/stderr'路由到你的'adb'。 android模擬器獨立於ADB守護進程運行自己的操作系統。 – nneonneo

+0

謝謝nneonneo .. :) – lopa

1

基本上,亞行是這樣的東西,它位於你和系統之間。 Android系統基本上需要一個控制點,以便您可以發送命令,如:

  • 安裝此應用程序。
  • 將調試器附加到端口Y上的應用程序X.
  • 打開一個shell,以便用戶可以與設備通話。

如果您有一個標準的Android系統,沒有ADB,那麼將無法控制該設備。

ADB是一個操作系統,它是一個程序它運行在該設備上。該程序(在設備上運行)從計算機(或端口等)偵聽命令,然後代表用戶在設備上執行它們

+0

感謝Kristopher的回答:) – lopa