当我尝试打开文件时,应用程序崩溃。它在Android Nougat以下运行,但是在Android Nougat上崩溃。仅当我尝试从SD卡而不是系统分区打开文件时,它才会崩溃。一些权限问题?
样例代码:
File file = new File("/storage/emulated/0/test.txt");
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file), "text/*");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent); // Crashes on this line
日志:
android.os.FileUriExposedException:file:///storage/emulated/0/test.txt通过Intent.getData()在应用程序之外公开
编辑:
定位Android牛轧糖时,file://
不再允许使用URI。我们应该改用content://
URI。但是,我的应用程序需要打开根目录中的文件。有任何想法吗?