我正在为我的应用编写应用更新程序。在那之后我确保我在设备上有我自己的旧apk,更新器工作得非常好,直到 MARSH MELLOW ,当 NOUGAT 人员更新时显示错误,这就是我在应用程序中尝试更新的内容:
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri uri;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
uri = FileProvider.getUriForFile(Update_App.this, getPackageName() + ".my.package.name.provider", new File(filepath));
}else {
uri = Uri.fromFile(new File(filepath));
}
intent.setDataAndType(uri,
"application/vnd.android.package-archive");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
尝试打开文件时应用程序崩溃。
这是错误日志:
android.os.FileUriExposedException: file:///storage/emulated/0/.fTouch_app/Ftouch.jpg exposed beyond app through Intent.getData()
任何想要解决的想法都能获得帮助。