27
android.os.FileUriExposedException:Intent.getData()を通じてアプリの外に公開されたfile:///storage/emulated/0/test.txt
ファイルを開こうとすると、アプリがクラッシュします。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:Intent.getData()を通じてアプリの外に公開されたfile:///storage/emulated/0/test.txt 編集: Android Nougatを対象とする場合、file://URIは許可されなくなりました。content://代わりにURI を使用する必要があります。ただし、私のアプリはルートディレクトリのファイルを開く必要があります。何か案は?