`
心雨心
  • 浏览: 355826 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android安装卸载程序解析

阅读更多

在Android安装卸载程序的源码中我们知道:

Java代码 复制代码
  1. < activity android:name=".PackageInstallerActivity">      
  2. < intent-filter>      
  3. < action android:name="android.intent.action.VIEW" />      
  4. < category android:name="android.intent.category.DEFAULT" />      
  5. < data android:scheme="content" />      
  6. < data android:scheme="file" />      
  7. < data android:mimeType="application/vnd.android.package-archive" />      
  8. < /intent-filter>      
  9. < /activity>     
  10.     
  11. < activity android:name=".UninstallerActivity">      
  12. < intent-filter>      
  13. < action android:name="android.intent.action.VIEW" />      
  14. < action android:name="android.intent.action.DELETE" />      
  15. < category android:name="android.intent.category.DEFAULT" />      
  16. < data android:scheme="package" />      
  17. < /intent-filter>      
  18. < /activity>   
< activity android:name=".PackageInstallerActivity">   
< intent-filter>   
< action android:name="android.intent.action.VIEW" />   
< category android:name="android.intent.category.DEFAULT" />   
< data android:scheme="content" />   
< data android:scheme="file" />   
< data android:mimeType="application/vnd.android.package-archive" />   
< /intent-filter>   
< /activity>  
 
< activity android:name=".UninstallerActivity">   
< intent-filter>   
< action android:name="android.intent.action.VIEW" />   
< action android:name="android.intent.action.DELETE" />   
< category android:name="android.intent.category.DEFAULT" />   
< data android:scheme="package" />   
< /intent-filter>   
< /activity> 

  

因为根据里面的权限我们可以 从sd卡安装一个程序:

   

Java代码 复制代码
  1. String fileName = Environment.getExternalStorageDirectory() + "/myApp.apk";      
  2. Intent intent = new Intent(Intent.ACTION_VIEW);   
  3.   
  4. intent.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");   
  5. //或者   
  6. //intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");    
  7.   
  8. startActivity(intent);    
String fileName = Environment.getExternalStorageDirectory() + "/myApp.apk";   
Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");
//或者
//intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive"); 

startActivity(intent);  

 

Android安装卸载程序的操作中要想卸载一个程序;

Java代码 复制代码
  1. Uri packageURI = Uri.parse("package:com.android.myapp");      
  2. Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);      
  3. startActivity(uninstallIntent);    
Uri packageURI = Uri.parse("package:com.android.myapp");   
Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);   
startActivity(uninstallIntent);  

  

默认是不支持安装非市场程序的 因此判断一下

Java代码 复制代码
  1. int result = Settings.Secure.getInt(getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS, 0);      
  2. if (result == 0) {      
  3. // show some dialog here      
  4. // ...      
  5. // and may be show application settings dialog manually      
  6. Intent intent = new Intent();      
  7. intent.setAction(Settings.ACTION_APPLICATION_SETTINGS);      
  8. startActivity(intent);     
  9. }   
  10. 转载:http://panxq0809.iteye.com/blog/668772
分享到:
评论

相关推荐

    Android应用卸载器源码

    在Android系统中,应用卸载器是一个用于帮助用户便捷地管理手机上安装应用程序的工具。本文将深入探讨“Android应用卸载器源码”的相关知识点,包括Android应用的基本结构、卸载过程、权限管理以及源代码分析。 ...

    android 防止卸载源码

    通过监控系统的日志输出,即Logcat,这个源码提供了一种方法来检测并阻止应用程序被卸载。现在,我们将深入探讨这个主题,理解其背后的原理和实现。 **Logcat基础知识** Logcat是Android系统中的一个核心工具,用于...

    安卓Android源码——程序的安装、卸载和更新.zip

    在安卓(Android)系统中,程序的安装、卸载和更新是用户与应用程序交互的核心环节。深入了解这些过程有助于开发者优化应用的部署和管理。这里,我们将深入探讨Android源码中的相关实现机制。 首先,让我们来看程序...

    程序的安装、卸载和更新

    在Android平台上,程序的安装、卸载和更新是操作系统的核心功能,它们对于用户来说是日常操作,对于开发者来说则是发布和维护应用的关键步骤。本文将深入探讨这些过程,并提供相关技术细节。 首先,我们来讨论程序...

    安卓安装卸载相关-android静默安装和智能安装的实现本人测试的5.0的系统.rar

    在Android系统中,安装和卸载应用程序是用户日常操作的一部分,但有时开发者或者系统管理员需要在没有用户交互的情况下执行这些操作,这就是所谓的“静默安装”和“智能安装”。静默安装通常用于批量部署应用,而...

    Android静默安装和卸载

    在Android系统中,静默安装(Silent Installation)和卸载(Silent Uninstallation)是指在用户无感知的情况下,通过编程方式对应用进行安装或卸载的操作。这通常需要设备具有root权限,或者应用程序被内置为系统...

    android apk安装流程及解析

    **PackageManagerService**是Android系统的核心组件之一,负责处理所有与应用程序相关的安装、卸载和管理任务。具体来说,它包括以下几个方面的工作: 1. **建立Socket连接**:建立Java层的installer与C层的...

    Android应用源码之程序的安装、卸载和更新.zip

    这份压缩包文件"Android应用源码之程序的安装、卸载和更新.zip"提供了关于这些过程的源码分析,这对于理解Android系统的工作原理以及优化应用程序的生命周期管理非常有帮助。下面我们将深入探讨这些主题。 首先,...

    android 卸载器源码

    【Android 卸载器源码】是一款专为安卓(Android)平台设计的应用程序卸载工具的源代码。这款源码提供了完整的功能实现,包括工程文件,使得开发者可以深入理解其工作原理并进行二次开发或定制化修改。接下来,我们...

    android 禁止第三方apk安装和卸载的方法详解

    在Android系统中,为了满足特定的安全需求,有时需要限制用户安装或卸载应用程序。这个需求可以通过自定义系统服务实现,特别是在Android 9.0(Pie)版本中。本篇文章将详细解析如何创建并使用接口来控制第三方APK的...

    应用源码之程序的安装、卸载和更新.zip

    卸载程序时,Android系统会移除应用的数据和缓存文件,同时从系统设置中删除应用的条目。用户可以通过系统设置或第三方管理工具来完成这个操作。如果应用有数据存储在外部存储器,用户需要手动清理,因为卸载过程中...

    安卓系统于PC连接安装卸载软件

    开发者可以通过反编译工具解析APK,查看其内部结构,甚至修改资源和代码,再打包成新的APK进行安装。 6. **权限管理**:在安装和卸载应用时,需要考虑安卓系统的权限机制。例如,安装有特殊权限需求的应用时,用户...

    Android平台输入法开发解析

    输入法服务可以注册接收所有程序包安装、卸载的消息,并生成一个系统可用的输入法列表,供用户选择使用。 输入法应用是平台内预置或后续安装的输入法程序。输入法应用可以通过 InputMethodSession 与客户端控件进行...

    Android应用源码之程序的安装、卸载和更新-IT计算机-毕业设计.zip

    在Android平台上,应用程序的安装、卸载和更新是开发者和用户日常操作的重要组成部分。这篇毕业设计的源码Demo深入解析了这些过程,为学生提供了一次实战性的学习机会。下面我们将详细探讨Android应用的安装、卸载和...

    Android-androidframework层源码解析

    Package Manager处理应用程序的安装、卸载、查询和更新。`PackageManagerService`类是其核心,它维护着系统的应用程序信息,并对外提供API供其他组件调用。 4. **Content Provider** Content Provider是Android中...

    ADB命令工具,截图、查看报名、安装卸载APP、获取日志、启动时间、执行Monkey等,支持多台设备。

    ADB(Android Debug Bridge)是Android系统开发者常用的工具之一,它提供了与Android设备进行通信的命令行接口,包括但不限于安装和卸载应用、传输文件、控制设备、获取日志等操作。在标题和描述中提到的,是利用...

    Android解决应用程序未安装的三种方法[参考].pdf

    当系统提示内存空间不足时,即使卸载程序,可用空间也可能无法显著增加。这时,可以删除/data/dalvik-cache目录下的系统缓存文件和卸载应用遗留的垃圾文件。重启设备后,系统会自动生成新的缓存文件。这种方法可以...

Global site tag (gtag.js) - Google Analytics