2011-08-10 45 views
-1

我已經編寫了殺死後臺進程的Android應用程序。我的應用程序查找正在運行的進程可以說,如果瀏覽器打開它將關閉並殺死它。現在它會在延遲一段時間後再次檢查。 令人討厭的事情是我必須一次又一次刷新它,我需要捕獲任何在手機或其他東西上啓動的應用程序,看看是否讓'是瀏覽器'然後關閉並殺死它。如何在不刷新所有正在運行的進程的情況下檢查啓動的進程

任何有效的方法來解決這個問題??

回答

0

您可以使用廣播接收器,它坐着等待系統發送提示。此刻標準行動是:

標準廣播操作

這些都是當前標準操作該意圖限定用於接收廣播(通常是通過registerReceiver(廣播接收器,IntentFilter的)或在清單標籤)。

ACTION_TIME_TICK

ACTION_TIME_CHANGED

ACTION_TIMEZONE_CHANGED

ACTION_BOOT_COMPLETED

ACTION_PACKAGE_ADDED

ACTION_PACKAGE_CHANGED

ACTION_PACKAGE_REMO VED

ACTION_PACKAGE_RESTARTED

ACTION_PACKAGE_DATA_CLEARED

ACTION_UID_REMOVED

ACTION_BATTERY_CHANGED

ACTION_POWER_CONNECTED

ACTION_POWER_DISCONNECTED

ACTION_SHUTDOWN

還有: ACTION_PACKAGE_FIRST_LAUNCH

,但我認爲這只是發送到啓動的應用程序包。 (並且是API 12)

所以是的,而不是輪詢我們聽衆。

看看ACTION_PACKAGE_RESTARTED

廣播事件:用戶重新啓動一個包,所有的過程都被殺滅。與它相關的所有運行時狀態(進程,警報,通知等)都應該被刪除。

Example Implementation

也許你可以用這個?

+0

thunx布朗德爾,我會執行它,讓你knw – Rony

相關問題