Android设置默认文件管理器,使用默认资源管理器在Android中查看文件夹内容
我想以編程方式啟動默認文件資源管理器以顯示文件夾的內容.
我正在使用此代碼,但它崩潰了:
Uri startDir = Uri.fromFile(new File("/sdcard/DCIM/Camera"));
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(startDir);
startActivity(intent);
LogCat顯示“找不到處理意圖的活動”……
我最好的選擇是什么?我希望用戶能夠看到文件夾的內容并能夠單擊文件(例如,單擊視頻并使用默認播放器啟動它,單擊PDF并打開它等).
解決方法:
不幸的是,似乎沒有標準的方法來做到這一點,我之前正在尋找完全相同的東西,但無法找到任何解決方案.有兩種替代方法可能適合您:
1)使用一般意圖并讓用戶選擇他/她的文件管理器
這是安全和容易的,但與我們真正想要的有點遠
Uri startDir = Uri.fromFile(new File(Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/DCIM/Camera"));
Intent intent = new Intent();
intent.setData(startDir);
intent.setType("*/*");
intent.setAction(Intent.ACTION_VIEW);
startActivity(intent);
不要使用intent.setType(“file / *”);,它不是標準的MIME類型.
2)使用著名文件管理器提供的特定意圖眾所周知的文件管理器有自己的自定義意圖過濾器,它們接受允許簡單瀏覽的目錄路徑.其中一些在這里:OI file manager,ES Explorer
也許您可以檢查用戶是否安裝了這些特定的文件管理器,然后使用此解決方案,否則回退到一般意圖.
目前,這是您擁有的唯一兩個選項.如果我找到更好的解決方案,我會更新這篇文章.
標簽:android,android-intent
來源: https://codeday.me/bug/20190725/1533711.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Android设置默认文件管理器,使用默认资源管理器在Android中查看文件夹内容的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 对象数据库中,解析嵌套的
- 下一篇: dnd 辅助 android,Easy