在android監聽這幾種狀態,其實是非常簡單的,就是利用廣播來進行監聽
以下是和應用程式相關的broadcast action
action_package_added 乙個新應用包已經安裝在裝置上,資料報括包名(最新安裝的包程式不能接收到這個廣播)
action_package_replaced 乙個新版本的應用安裝到裝置,替換之前已經存在的版本
action_package_changed 乙個已存在的應用程式包已經改變,包括包名
action_package_removed 乙個已存在的應用程式包已經從裝置上移除,包括包名(正在被安裝的包程式不能接收到這個廣播)
action_package_restarted 使用者重新開始乙個包,包的所有程序將被殺死,所有與其聯絡的執行時間狀態應該被移除,包括包名(重新開始包程式不能接收到這個廣播)
action_package_data_cleared 使用者已經清楚乙個包的資料,包括包名(清除包程式不能接收到這個廣播)
實現乙個broadcastreceiver類
public static class myreceiver extends broadcastreceiver
if (intent.getaction().equals(intent.action_package_removed))
if (intent.getaction().equals(intent.action_package_replaced))
if (intent.getaction().equals(intent.action_package_changed))
if (intent.getaction().equals(intent.action_package_restarted))
if (intent.getaction().equals(intent.action_package_data_cleared))
}}
在manifest.xml中進行註冊,注意,一定要靜態註冊,否則不能監聽到這一些列廣播
android:name=".mainactivity$myreceiver"
android:name="android.intent.action.package_added" />
android:name="android.intent.action.package_replaced" />
android:name="android.intent.action.package_removed" />
android:name="android.intent.action.package_changed"/>
android:name="android.intent.action.package_restarted"/>
android:name="android.intent.action.package_data_cleared"/>
android:scheme="package" />
intent-filter>
receiver>
ok到此已經可以監聽到apk的狀態了,再次提醒,一定要靜態註冊、、、、、 android 監聽apk安裝替換解除安裝廣播
android android 監聽apk安裝替換解除安裝廣播 首先是要獲取應用的安裝狀態,通過廣播的形式 以下是和應用程式相關的broadcast action action package added 乙個新應用包已經安裝在裝置上,資料報括包名 最新安裝的包程式不能接收到這個廣播 action ...
Android 監聽apk安裝替換解除安裝廣播
android android 監聽apk安裝替換解除安裝廣播 首先是要獲取應用的安裝狀態,通過廣播的形式 以下是和應用程式相關的broadcast action action package added 乙個新應用包已經安裝在裝置上,資料報括包名 最新安裝的包程式不能接收到這個廣播 action ...
監聽安裝解除安裝
android intent中提供了應用安裝,解除安裝 覆蓋的action intent.action package added intent.action media removed intent.action package replaced 所以我們自認為可以寫個broadcastrecei...