インテント アクションを使用してファイルを開こうとしていますが、pdf および画像ファイルを開くことはできません
画像の場合、すべてのアプリケーションがクラッシュします (ギャラリー アプリを含む)
doc/docx の場合、私はオフィス スイートを使用していますが、パッケージからランタイム例外が発生します (java.lang.RuntimeException)。以下のコードを参照してください。
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(Intent.ACTION_VIEW);
if (extension.equalsIgnoreCase("jpg")
| extension.equalsIgnoreCase("jpeg")
| extension.equalsIgnoreCase("png")
| extension.equalsIgnoreCase("bitmap")) {
intent.setDataAndType(Uri.parse(fileName), "image/*");
} else if (extension.equalsIgnoreCase("xml")
| extension.equalsIgnoreCase("txt")
| extension.equalsIgnoreCase("csv")) {
intent.setDataAndType(Uri.parse(fileName), "text/*");
} else if (extension.equalsIgnoreCase("mp4")
| extension.equalsIgnoreCase("3gp")) {
intent.setDataAndType(Uri.parse(fileName), "video/*");
} else if (extension.equalsIgnoreCase("pdf")) {
intent.setDataAndType(Uri.parse(fileName), "application/pdf");
System.out.println("Pdf file to open "+fileName);
} else if (extension.equalsIgnoreCase("doc")
| extension.equalsIgnoreCase("docx")) {
intent.setDataAndType(Uri.parse(fileName), "application/word");
}
context.startActivity(intent);
しかし、ファイルエクスプローラーに移動してこれらのファイルを開こうとすると、両方のファイルが正しく開きます。