强制安装Apk在Android



输入图片描述

伙计们,你能帮助这样安装对话框不会弹出…?

使力安装过程

Intent intent = new Intent(Intent.ACTION_INSTALL_PACKAGE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
intent.setDataAndType(getUriFromFile(location), "application/vnd.android.package-archive");
List<ResolveInfo> resInfoList = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
for (ResolveInfo resolveInfo : resInfoList) {
String packageName = resolveInfo.activityInfo.packageName;
context.grantUriPermission(packageName, getUriFromFile(location), Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);
} else {
intent.setAction(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.putExtra(Intent.EXTRA_NOT_UNKNOWN_SOURCE, true);
intent.setDataAndType(getUriFromFile(location), "application/vnd.android.package-archive");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
}
context.startActivity(intent);

No。想象一下,如果恶意软件可以在没有确认的情况下强制安装他们想要的任何东西。这就是为什么你也不能。

不幸的是,不显示对话框就无法进行更新。但在你显示对话框并获得许可之后,你可以在后台更新应用你可以用callback通知用户。这个问题的解决方案可能对你有用。链接