をIntent
で開こうとしていますが、Androidはファイルタイプに適切なアプリケーションを開けません。ファイルを開くための右のmimeType
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.fromFile(file));
startActivity(i);
私は手動でMIMEタイプを指定すると、右のアプリケーションが開かれている - この場合のPictureViewerはを: - PDF、画像、すべてのもの - 音楽アプリで開かれ、すべてのファイルを次のコードを使用して
。
i.setDataAndType(Uri.fromFile(file), "image/*");
Androidのではなく、手動でファイルの拡張子から判断タイプを設定する適切なアプリケーションを開くために取得する方法はありますか?
しかし、Androidが正しいタイプを自分のものであると判断できないのはなぜですか?インテントリファレンスは、 "インテントデータの明示的なタイプ(MIMEタイプ)を指定します。通常、タイプはデータ自体から推測されます。このアトリビュートを設定すると、その評価が無効になり、明示的なタイプが強制されます。これは私のコードではまったく動作しないので、間違いでなければなりません。 – Gubbel