`
onedada
  • 浏览: 103346 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

android应用程序删除,添加处理

 
阅读更多

 可以在广播里处理相应的action

 

先在AndroidManifest.xml添加

           <intent-filter>
                   <action android:name="android.intent.action.PACKAGE_ADDED" />
                 <action android:name="android.intent.action.PACKAGE_CHANGED"></action>
                 <action android:name="android.intent.action.PACKAGE_REMOVED"></action>  
                 <action android:name="android.intent.action.PACKAGE_REPLACED"></action>  
                 <action android:name="android.intent.action.PACKAGE_RESTARTED"></action>
                 <action android:name="android.intent.action.PACKAGE_INSTALL"></action>  
               <data android:scheme="package"></data>
            </intent-filter>

 

然后在广播里处理
        if(Intent.ACTION_PACKAGE_ADDED.equals(intent.getAction()))
        {  
            _Debug.println("ACTION_PACKAGE_ADDED" + callerlocUtil + intent.getDataString());
            Toast.makeText(context, "有应用被添加", Toast.LENGTH_LONG).show();  
        }  
        else if(Intent.ACTION_PACKAGE_REMOVED.equals(intent.getAction()))
        {
            _Debug.println("ACTION_PACKAGE_REMOVED" + callerlocUtil + intent.getDataString());
            Toast.makeText(context, "有应用被删除", Toast.LENGTH_LONG).show();  
        }  
        else if(Intent.ACTION_PACKAGE_CHANGED.equals(intent.getAction()))
        { 
            _Debug.println("ACTION_PACKAGE_CHANGED" + callerlocUtil + intent.getDataString());
            Toast.makeText(context, "有应用被改变", Toast.LENGTH_LONG).show(); 
        }  
        else if(Intent.ACTION_PACKAGE_REPLACED.equals(intent.getAction()))
        {
            _Debug.println("ACTION_PACKAGE_REPLACED" + callerlocUtil + intent.getDataString());
            Toast.makeText(context, "有应用被替换", Toast.LENGTH_LONG).show();
        }
        else if(Intent.ACTION_PACKAGE_RESTARTED.equals(intent.getAction()))
        { 
            _Debug.println("ACTION_PACKAGE_RESTARTED" + callerlocUtil + intent.getDataString());
            Toast.makeText(context, "有应用被重启", Toast.LENGTH_LONG).show(); 
        }  
        else if(Intent.ACTION_PACKAGE_INSTALL.equals(intent.getAction()))
        { 
            _Debug.println("ACTION_PACKAGE_INSTALL" + callerlocUtil + intent.getDataString());
            Toast.makeText(context, "有应用被安装", Toast.LENGTH_LONG).show(); 
        }

 

 

 

 

 

分享到:
评论

相关推荐

    android应用程序开发

    总结,开发Android应用程序,尤其是涉及手机通信录功能的应用,需要掌握Android开发的基本技术,如布局设计、数据库操作、Intent服务的使用以及用户交互的处理。同时,充分的测试和调试也是保证应用质量的关键步骤。...

    android桌面应用程序

    1. 桌面图标管理:Android 桌面应用程序负责管理桌面上的图标,包括添加、删除、编辑等操作。 2. 应用程序目录结构管理:Android 桌面应用程序需要了解应用程序的目录结构,包括应用程序的安装、卸载、更新等操作。 ...

    android 程序中动态添加删除控件或布局

    在Android应用程序开发中,动态添加和删除控件或布局是一项常用且重要的技能。这使得我们的应用能够根据用户交互或者特定条件灵活地改变界面。本文将深入探讨如何在Android程序中实现这一功能,以及如何设置控件的...

    Android 应用程序之间的通信

    综上所述,Android应用程序之间的通信涉及到Intent的使用、BroadcastReceiver的监听、ContentProvider的数据共享以及Activity的交互。理解并熟练掌握这些概念对于开发健壮且功能丰富的Android应用至关重要。在实际...

    Android应用程序锁

    在Android应用程序锁的核心实现上,一般会涉及到以下几个关键知识点: 1. **权限管理**:Android系统基于权限模型运行,应用锁需要获取到相应的系统权限,如读取应用列表、修改设备设置等,以识别和控制其他应用的...

    android记账应用程序

    总结,这个"android记账应用程序"项目是一个基础的Android应用开发示例,涵盖了从数据库操作到用户界面设计的多个技术点。对于初学者来说,这是一个很好的学习起点,通过它能深入理解Android应用开发的基本流程和...

    Android应用程序之间数据共享ContentResolver.pdf

    Android 应用程序之间数据共享 ContentResolver Android 应用程序之间数据共享是一种非常重要的机制,它允许不同的应用程序之间共享数据,并且提供了一个标准的接口来访问和操作这些共享数据。ContentResolver 是 ...

    (完整版)Android应用程序开发(第二版)课后习题答案.doc

    13. Android 提供了 Service 作为无用户界面、长时间后台运行的组件,可为应用程序提供特定的后台功能,还可以实现事件处理或数据更新等功能 14. Android 支持高效、快速的数据存储方式,同时为了便于跨进程共享数据...

    android应用程序源码结构分析

    在Android应用程序开发中,源码结构扮演着至关重要的角色。了解这一结构对于开发者来说至关重要,因为它决定了代码的组织方式以及与资源的交互。以下是关于Android应用程序源码结构的详细解析: 1. **src 文件夹**...

    android应用程序锁APP源码

    本资源提供的"android应用程序锁APP源码"是一个实现这一功能的示例项目,对于学习Android开发,尤其是安全性相关的实践有着重要的参考价值。 1. **Android权限管理**: 在Android中,为了实现应用程序锁功能,...

    Android通讯录程序+源代码工程+国际化处理

    【Android通讯录程序详解】 ...通过这个Android通讯录程序,开发者可以深入理解Android应用开发的基本流程,掌握数据库操作、UI设计、事件处理、权限管理和国际化等核心技能,为构建更复杂的Android应用打下坚实基础。

    android 应用程序源码

    在Android应用程序开发中,源码是理解应用工作原理和学习新技术的重要资源。这些源码涵盖了多个功能丰富的应用,包括贪吃蛇游戏、天气预报、图片浏览、通讯录管理、多媒体播放器以及短信语音播报等。下面我们将逐一...

    《Android应用程序开发》示例代码

    《Android应用程序开发》示例代码提供了丰富的实践案例,旨在帮助开发者深入理解Android系统的运作机制以及如何构建实际的应用程序。这份代码资源适用于初学者和有一定经验的Android开发者,它覆盖了从基础到进阶的...

    Android应用程序的自动更新升级

    ### Android应用程序的自动更新升级 #### 一、引言 随着移动互联网的发展,应用程序更新成为提升用户体验、修复问题和引入新功能的重要手段。对于Android应用程序而言,具备版本检测和自动更新的功能不仅能够确保...

    Android应用程序中使用自己的SQLite数据库

    在Android应用程序中使用自己的SQLite数据库是一项常见的需求,特别是在已有数据集或者希望预加载特定数据时。这个过程包括准备SQLite数据库文件、复制到应用的数据库路径以及在应用中打开和访问数据库。以下是一份...

    Android应用程序源代码MyContacts

    【Android应用程序源代码MyContacts详解】 在Android平台上,开发应用程序是一项技术性极强的工作,而MyContacts是一个典型的示例,它展示了如何构建一个简单的联系人管理应用。通过深入理解MyContacts的源代码,...

    7个Android应用程序源代码.rar_Android音乐_android_安卓程序代码_源代码_编程资料

    这个压缩包"7个Android应用程序源代码.rar"提供了一次绝佳的学习机会,包含了多种功能丰富的应用实例,包括城市天气应用、文件管理器、移动地图应用、音乐播放器、通讯录管理、铃声管理和日历应用。这些源代码实例...

    android SQLiteOpenHelper 数据库简单应用

    在Android开发中,SQLite是一个轻量级的数据库引擎,它被集成到Android系统中,用于存储应用程序的数据。SQLiteOpenHelper是Android提供的一种管理SQLite数据库的工具类,它简化了数据库的创建和版本管理。本篇文章...

    Socialified v2.3 Flutter社交媒体类脸书应用程序源代码为iOS和Android应用程序项目源码

    Flutter应用程序源代码为iOS和Android应用程序 REST API的后端源代码 管理面板源代码 特征 动画闪屏 登录/注册 社交登录 电话登录 更改密码/忘记密码 密码强度检查器 新帐户的OTP验证 Faceid/touch id 更新简档...

Global site tag (gtag.js) - Google Analytics