2012-05-14 17 views

回答

5

註冊以接收共同的意圖。一個特別適合你的目的是:

"android.intent.action.PACKAGE_ADDED" 

你也可以監聽其他意圖,如BOOT_COMPLETED等

現在,我認爲你的應用程序必須有一個圖形界面的活動(不只是服務和廣播接收器),以便在安裝後立即運行。我可能是錯的,但我想我還記得在Docs中閱讀過關於這方面的內容。

編輯:根據another Stack Overflow answer,你不能運行在安裝後立即您自己應用。您必須按照我的建議註冊其他意圖。需要注意的是,您的應用將需要用戶許可才能收到BOOT_COMPLETED的意圖。

或者,如果您使用的是根設備,則可以讓您的應用安裝SSH客戶端並讓它向您報告IP。然後,您可以在SSH和..你知道..

更新:正如zapl指出,發佈4.0你不能做任何事情,現在安裝後,直到用戶明確啓動您的應用。

+0

謝謝大衛。 PACKAGE_ADDED監聽器必須安裝在單獨的應用程序中,並且可以事先手動運行,對吧? – Phillip

+0

看我的編輯。我想你是正確的。 – dcow

+4

從Android 4.0開始,您不會收到任何廣播,除非用戶手動啓動您的應用程序。該應用程序在安裝後直接處於停用狀態(並且沒有啓動任何代碼,沒有接收器或服務註冊等)來停止剛剛下載的應用程序,但從未使用這些應用程序來使用系統資源。一旦通過用戶交互激活它就像以前一樣工作。 – zapl

相關問題