public String silentInstallApkByReflect(String apkPath) {
LogUtils.d(TAG,“启动了静默升级!”);
// SharedConfig.getInstance(this).writeData(AppConfig.Key.UPGRADE_RESULT,true);
String result = “false”;
try {
PackageManager packageManager = getPackageManager();
Class<?> pmClz = packageManager.getClass(); if (Build.VERSION.SDK_INT >= 21) { Class<?> aClass = Class.forName(“android.app.PackageInstallObserver”);
Constructor<?> constructor = aClass.getDeclaredConstructor();
constructor.setAccessible(true);
Object installObserver = constructor.newInstance();
Method method = pmClz.getDeclaredMethod(“installPackage”, Uri.class, aClass, int.class, String.class);
method.setAccessible(true);
method.invoke(packageManager, Uri.fromFile(new File(apkPath)), installObserver, 2, null);
} else {
Method method = pmClz.getDeclaredMethod(“install
android8.1系统静默安装问题
最新推荐文章于 2024-05-03 13:32:04 发布