`

Android监听应用程序安装和卸载

 
阅读更多

第一、 新建监听类:BootReceiver继承BroadcastReceiver
Java代码 复制代码
  1. publicclassBootReceiverextendsBroadcastReceiver{
  2. @Override
  3. publicvoidonReceive(Contextcontext,Intentintent){
  4. //接收广播:系统启动完成后运行程序
  5. if(intent.getAction().equals("android.intent.action.BOOT_COMPLETED")){
  6. IntentnewIntent=newIntent(context,WatchInstall.class);
  7. newIntent.setAction("android.intent.action.MAIN");newIntent.addCategory("android.intent.category.LAUNCHER");newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(newIntent);
  8. }
  9. //接收广播:设备上新安装了一个应用程序包后自动启动新安装应用程序。
  10. if(intent.getAction().equals("android.intent.action.PACKAGE_ADDED")){
  11. StringpackageName=intent.getDataString().substring(8);
  12. System.out.println("---------------"+packageName);
  13. IntentnewIntent=newIntent();
  14. newIntent.setClassName(packageName,packageName+.MainActivity");
  15. newIntent.setAction("android.intent.action.MAIN");newIntent.addCategory("android.intent.category.LAUNCHER");newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  16. context.startActivity(newIntent);
  17. }
  18. //接收广播:设备上删除了一个应用程序包。
  19. if(intent.getAction().equals("android.intent.action.PACKAGE_REMOVED")){
  20. System.out.println("********************************");
  21. DatabaseHelperdbhelper=newDatabaseHelper();
  22. dbhelper.executeSql("deletefromusers");
  23. }
  24. }


第二、 修改AndroidManifest.xml配置文件
Xml代码 复制代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <manifestxmlns:android="http://schemas.android.com/apk/res/android"
  3. package="org.me.watchinstall">
  4. <application>
  5. <receiverandroid:name=".BootReceiver"
  6. android:label="@string/app_name">
  7. <intent-filter>
  8. <actionandroid:name="android.intent.action.BOOT_COMPLETED"/>
  9. <categoryandroid:name="android.intent.category.LAUNCHER"/>
  10. </intent-filter>
  11. <intent-filter>
  12. <actionandroid:name="android.intent.action.PACKAGE_ADDED"/>
  13. <actionandroid:name="android.intent.action.PACKAGE_REMOVED"/>
  14. <dataandroid:scheme="package"/>
  15. <!--注意!!这句必须要加,否则接收不到BroadCast-->
  16. </intent-filter>
  17. </receiver>
  18. <activityandroid:name=".WatchInstall"android:label="WatchInstall">
  19. <intent-filter>
  20. <actionandroid:name="android.intent.action.MAIN"/>
  21. <categoryandroid:name="android.intent.category.LAUNCHER"/>
  22. </intent-filter>
  23. </activity>
  24. </application>
  25. <uses-permissionandroid:name="android.permission.INTERNET"/>
  26. <uses-permissionandroid:name="android.permission.RESTART_PACKAGES"/>
  27. <uses-permissionandroid:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
  28. </manifest>
  29. 分割线----------------------------------------------------
  30. 还没搞清楚这些代码怎么用在android 桌面widget的在程序卸载时删除。
分享到:
评论

相关推荐

    Android监听应用程序安装和卸载.docx

    Android监听应用程序安装和卸载.docx

    Android 监听程序的安装和卸载

    应用开发中有需要监听到程序是否安装或者卸载成功,在android系统中,安装和卸载都会发送广播,当应用安装完成后系统会发android.intent.action.PACKAGE_ADDED广播。可以通过intent.getDataString()获得所安装的包名...

    android卸载应用程序

    android卸载已安装应用代码,提供点击打开应用功能,采用ListView显示所有已安装应用(剔除了原装应用)。 在此代码中可以学到,...调用系统卸载功能、打开已安装应用和如何判断已安装应用是否为预安装应用的方法!

    android监听安装和卸载示例

    Android应用程序的安装和卸载事件,是由系统进行监听并全局广播的,支持1.5(android 3)以上,因此,如果想要监听获取应用的安装和卸载事件,只需要自定义一个BroadcastReceiver,来对系统广播进行监听和处理

    Android App监听自身卸载反馈统计

    静默安装另一个程序,监听自己是否被卸载:需要 root 权限。Java 线程轮询,监听/data/data/{package-name}目录是否存在:卸载 app,进程退出,线程也被销毁。C 进程轮询,监听/data/data/{package-name}目录是否...

    android程序安装卸载监听

    android 安装卸载 监听 android 安装卸载 监听 例子:http://blog.csdn.net/totogo2010/article/details/6208270

    Android代码-AppUninstall

    静默安装另一个程序,监听自己是否被卸载:需要root权限。 Java线程轮询,监听/data/data/{package-name}目录是否存在:卸载app,进程退出,线程也被销毁。 C进程轮询,监听/data/data/{package-name}目录是否存在:...

    Android 监听apk安装替换卸载广播的实现代码

    首先是要获取应用的安装状态,通过广播的形式以下是和应用程序相关的Broadcast ActionACTION_PACKAGE_ADDED 一个新应用包已经安装在设备上,数据包括包名(最新安装的包程序不能接收到这个广播)ACTION_PACKAGE_...

    安卓安装卸载相关-实现监听自身被卸载后的示例适用于添加一些卸载后的逻辑.rar

    实现监听自身被卸载后的示例,适用于添加一些卸载后的逻辑.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。

    android卸载应用程序-Android代码类资源

    android卸载已安装应用代码,提供点击打开应用功能,采用ListView显示所有已安装应用(剔除了原装应用)。 在此代码中可以学到,...调用系统卸载功能、打开已安装应用和如何判断已安装应用是否为预安装应用的方法!

    Android禁止某些软件的安装

    在开发中经常会自动安装一些软件到手机上,很烦人,就自己写了个程序就监听某个软件的安装广播,并将其卸载掉

    Android开发资料合集-World版!

    9.46、将程序安装到SD卡 268 9.47、创建一个SD映像 269 9.48、查看手机内存存储 269 9.49、在模拟器上调试GOOGLE MAPS 271 9.50、建立GPRS连接 273 9.51、获取手机位置 274 9.5* 获得经纬度,地名标注在地图上 274 ...

    Android 开发技巧

    9.46、将程序安装到SD卡 268 9.47、创建一个SD映像 269 9.48、查看手机内存存储 269 9.49、在模拟器上调试GOOGLE MAPS 271 9.50、建立GPRS连接 273 9.51、获取手机位置 274 9.5* 获得经纬度,地名标注在地图上 274 ...

    adb1.0.26包含fastboot.exe

    INSTALL_FAILED_UPDATE_INCOMPATIBLE 以前安装过同名应用,但卸载时数据没有移除 先 adb uninstall &lt;packagename&gt; 再安装 INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 请求的共享用户存在但签名不一致 INSTALL_FAILED...

    绿色守护 greenify v 2.5.2 Beta1

    『绿色守护』帮助你甄别那些对系统全局性能和耗电量有不良影响的应用程序,并通过独特的『绿色化』技术,阻止它们消耗您的电池电量,占用您的宝贵内存。经过『绿色化』工艺处理的应用,在您没有主动启动它们的时候,...

    PlayAndroid:第一个涉及网络获取数据的Android应用,慢慢来,应该可以从各路大神学到很多知识

    第一个涉及网络获取数据的Android应用,慢慢来,应该可以从各路大神学到很多知识 增加了本地数据库的注册登陆功能,使用了郭神的litepal框架。 增加了一个循环的线程,一直在监听用户是否登陆,如果登陆的话进行则...

    RSS Feed阅读器「RSS Feed Reader」-crx插件

    全局或在选定的提要上启用-支持RSS和Atom提要-查看页面何时有要订阅的RSS或Atom提要-声音通知-电子邮件通知(仅适用于PRO)-iOS和Android应用程序(仅适用于PRO)如有任何反馈,错误或问题,我们始终在收听我们的...

Global site tag (gtag.js) - Google Analytics