Android小實踐(監聽安卓手機中的應用安裝與卸載)

1、實現目標

編寫一個Android App,實現對Android系統中應用的安裝與卸載進行監聽,并彈出相應的提示。

2、原理簡介

 在Android系統中,應用程序的安裝與卸載會由系統監聽并進行全局廣播。其中,BroadcastReceiver就是Android系統全局廣播監聽類。我們想要實現監聽應用的安裝與卸載,可以通過自定義一個類去繼承BroadcastReceiver并實現相應的方法與邏輯處理。然后再對我們的自定義廣播進行注冊即可。

3、具體編碼

(1)自定義BroadcastReceiver

自定義一個MyAppInstallReceiver 類繼承系統的BroadcastReceiver類,實現其onReceiver方法接收相關廣播信息。

通過這其中的信息我們可以獲得相關應用的包名而不是名稱,所以在應用安裝或更新完成時,我們調用自定義的getName方法通過PackageManager去獲得對應的應用名稱。最后我們通過Toast在屏幕上提示相關信息。

Android小實踐(監聽安卓手機中的應用安裝與卸載)的圖1

(2)注冊廣播

廣播接收者在注冊后才開始監聽系統與應用發送的廣播消息。注冊BroadcastReceiver有兩種方式,分別是動態注冊和靜態注冊。

靜態注冊的廣播只要我們的應用安裝后就常駐在系統中,即使當我們手機重啟也不需要再重新打開我們的應用,所以我們選擇采用對我們的自定義廣播接收者MyAppInstallReceiver 進行靜態注冊。

在應用的AndroidManifest.xml的application節點里面定義MyAppInstallReceiver,并設置我們要接收的三種action(安裝、卸載、更新):

Android小實踐(監聽安卓手機中的應用安裝與卸載)的圖2

4、完成截圖

在應用安裝成功時提示

Android小實踐(監聽安卓手機中的應用安裝與卸載)的圖3

在應用更新成功時提示

Android小實踐(監聽安卓手機中的應用安裝與卸載)的圖4

5、下載地址

(包含源碼和安裝包)

http://pan.baidu.com/s/1hsFRP7Q

提示:安裝應用后需要打開一次,使其可以正常工作。Android開發文檔對此的解釋是:"Ever since Android 3.1, apps are installed in a stopped state, and require that the user open it at least once before components like your BroadcastReceiver can function. This is for security reasons, to prevent, or at least hamper, malicious program behavior."

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP