2019-10-21
关键字:Java代码安装程序
在 APK 开发中,通过 Java 代码来打开系统的安装程序以安装 APK 并不是什么难事,一般的 Android 系统都有开放这一功能。
但随着 Android 系统版本的迭代,其对于权限的把控越来越严格,或者说是变得越来越注重安全性。这就导致了以前可以通过很简单的几行代码就能实现的功能,现在要复杂很多。
对于通过代码打开系统安装程序这一功能的限制,其分水岭在 Android7.0,即 Android N 上。通常在 Android N 以上的系统使用一种做法,以下则使用另一种做法。
这里简述一下这两种做法。
1、传统的通过代码安装APK的方式
传统的方式就是简单,寥寥几行代码就可以实现需求:
File apk = newFile(...);
Uri uri=Uri.fromFile(apk);
Intent intent= newIntent();
intent.setClassName("com.android.packageinstaller", "com.android.packageinstaller.PackageInstallerActivity");
intent.setData(uri);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
这种方法简单粗暴且实用,只要知晓要安装的 APK 的位置,并拥有访问权限即可。
但现在市面上主流的 Android 手机系统版本都已经要高于 7.0 了,这一方法几乎已经