[解決済み] Android: インテントで特定のフォルダを開き、その内容をファイルブラウザに表示するには?
2023-06-22 17:23:45
質問
これは簡単なことだと思ったのですが、残念ながらそうではありません。
私が持っているもの
私は外部ストレージ (Nexus 4 なので SD カードではありませんが、それは問題ではないはずです) に "myFolder" と呼ばれるフォルダを持っています。このフォルダーには、いくつかの
*.csv
ファイルが含まれています。
私が欲しいもの
私は以下のことを行うメソッドを書きたいです。さまざまなアプリ (ファイル ブラウザー) を表示し、そこから 1 つを選ぶことができます (図を参照)。私がそれをクリックした後、選択したファイル ブラウザが起動し、"myFolder" のコンテンツを表示する必要があります。それ以上でも以下でもありません。
私の質問です。
具体的にどうすればいいのでしょうか?次のコードでかなり近づいたと思いますが、何をやっても - そして、私がまだ正しく理解していない何かがあるに違いないと確信していますが - 常に外部ストレージからメイン フォルダのみを開きます。
public void openFolder()
{
File file = new File(Environment.getExternalStorageDirectory(),
"myFolder");
Log.d("path", file.toString());
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setDataAndType(Uri.fromFile(file), "*/*");
startActivity(intent);
}
どのように解決するのですか?
ようやく動作するようになりました。この方法では、いくつかのアプリだけがチューザーによって表示されます (Google Drive、Dropbox、Root Explorer、および Solid Explorer)。2 つのエクスプローラーでは正常に動作していますが、Google Drive と Dropbox では動作していません (外部ストレージにアクセスできないためだと思います)。他のMIMEタイプのような
"*/*"
のような他の MIME タイプも可能です。
public void openFolder(){
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
Uri uri = Uri.parse(Environment.getExternalStorageDirectory().getPath()
+ File.separator + "myFolder" + File.separator);
intent.setDataAndType(uri, "text/csv");
startActivity(Intent.createChooser(intent, "Open folder"));
}
関連
-
[解決済み] Pythonでファイルやフォルダを削除する方法は?
-
[解決済み] フォルダとそのサブフォルダ/ファイルのパーミッションを一括で変更する方法
-
[解決済み] アプリケーションからAndroidのWebブラウザでURLを開くにはどうすればよいですか?
-
[解決済み] Androidで現在の時刻と日付を取得する方法
-
[解決済み] Androidでファイルをダウンロードし、ProgressDialogで進捗を表示する。
-
[解決済み] Androidでインテントから余分なデータを取得するにはどうすればよいですか?
-
[解決済み] AndroidアプリケーションからGoogle Playストアを直接開くにはどうすればよいですか?
-
[解決済み] Androidでインテントを経由してGoogleマップディレクションを起動する
-
[解決済み] Gmailの3分割アニメーションシナリオの完全動作サンプル?
-
[解決済み] TabLayoutに対応したandroidデザインでタブテキストのフォントを変更する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] android.os.FileUriExposedException: file:///storage/emulated/0/test.txt が Intent.getData() によりアプリの外部に公開された。
-
[解決済み] 設定ページに移動せずに位置情報サービスをオンにする
-
[解決済み] Nexus 4でUSBデバッグモードを見つける方法とオンにする方法
-
[解決済み] Androidでマイナスマージンを使用するのは悪いことですか?
-
[解決済み] FloatingActionButtonのサンプルとサポートライブラリ
-
[解決済み] DialogFragmentを正しく終了させるには?
-
[解決済み] ArrayList<MyCustomClass>をJSONArrayに変換する。
-
[解決済み] Android - Snackbar vs Toast - 使い方と違い。
-
[解決済み] 非ActivityクラスでContextを取得する [重複].
-
[解決済み] AndroidでTextViewの下にアンダーラインを引くには