http://www.trinea.cn/android/android-install-silent/

本文主要介绍程序如何安装apk,包括普通模式安装和系统权限静默安装。

如果是非系统应用请直接查看:Android常用代码之APK root权限静默安装,查看更完美的解决方案。

 

1、普通模式安装,调用系统Intent,代码如下:

Java public static void install(Context context, String filePath) { Intent i = new Intent(Intent.ACTION_VIEW); i.setDataAndType(Uri.parse("file://" + filePath), "application/vnd.android.package-archive"); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); }
1 2 3 4 5 6 public static void install ( Context context , String filePath ) {      Intent i = new Intent ( Intent . ACTION_VIEW ) ;      i . setDataAndType ( Uri . parse ( "file://" + filePath ) , "application/vnd.android.package-archive" ) ;      i . addFlags ( Intent . FLAG_ACTIVITY_NEW_TASK ) ;      context . startActivity ( i ) ; }

 

2、静默安装
如果是非系统应用请移步:Android常用代码之APK root权限静默安装,查看更完美的解决方案。

分为如下三步
(1)、静默安装需要系统应用安装权限,需要在AndroidManifest.xml中添加

Java
1 < uses - permission android : name = "android.permission.INSTALL_PACKAGES" / >

 

(2)、实现代码
静默安装代码如下,实际是通过pm install -r 命令安装。
注意:该函数最好在新建的线程中运行并通过handler发送安装结果给主线程,否则安装时间较长会导致ANR。

静默安装实现

返回值0表示安装成功,1表示文件不存在,2表示其他错误。需要更丰富的安装失败信息(内存不足、解析包出错)可直接使用PackageUtils.installSlient。

 

(3) 、获取系统权限
完成了上面两步后,普通方式安装我们的应用仍然无法静默安装。需要我们的应用获得系统权限,编译应用并通过
adb push /system/app/
命令实现安装,即可拥有系统权限。


更多相关文章

  1. Android必备:Android应用程序组成
  2. Android(安卓)- Android(安卓)Studio 安装 及 设置 [最新]
  3. 基于 Android(安卓)NDK 的学习之旅-----环境搭建
  4. Android(安卓)体系结构介绍
  5. 【Android(安卓)应用开发】Android资源文件 - 使用资源存储字符
  6. Android--应用开发3(Android(安卓)layout XML属性)
  7. Android(安卓)—— 第一次安装 Android(安卓)Studio 启动时出现
  8. android 开发包的离线安装方式
  9. android 自带的主题 theme 的使用

随机推荐

  1. android 敏捷开发系列(一)——《啥是敏捷开
  2. android 自动化测试工具 Monkey
  3. [基础知识]全面认识AndroidManifest.xml
  4. 关于android中使用new Message的内存泄露
  5. android重要包的描述
  6. android动态创建控件
  7. Android近期任务列表 Recent Applicatoin
  8. Android屏幕适配攻略
  9. Android(安卓)-- Looper.prepare()和Loop
  10. Android项目--团购类客户端