本文主要介绍程序如何安装apk,包括普通模式安装和系统权限静默安装。
1、普通模式安装,调用系统Intent,代码如下:
Java
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、静默安装
分为如下三步
(1)、静默安装需要系统应用安装权限,需要在AndroidManifest.xml中添加
<uses-permission android:name="android.permission.INSTALL_PACKAGES" />
(2)、实现代码
静默安装代码如下,实际是通过pm install -r 命令安装。
注意:该函数最好在新建的线程中运行并通过handler发送安装结果给主线程,否则安装时间较长会导致ANR。
静默安装实现
(3) 、获取系统权限
完成了上面两步后,普通方式安装我们的应用仍然无法静默安装。需要我们的应用获得系统权限,编译应用并通过
adb push <your_apk_path> /system/app/
命令实现安装,即可拥有系统权限。