【问题标题】:How to access all files that end with ".mp3" extension in the internal storage of my phone using Android Studio?如何使用 Android Studio 访问手机内部存储中所有以“.mp3”扩展名结尾的文件?
【发布时间】:2017-05-03 11:44:27
【问题描述】:

我正在尝试从我的应用程序访问手机中的音频文件。 我对 Android 编程比较陌生。有人可以帮我解决这个问题吗?

【问题讨论】:

  • 你搜索过这个吗?很多关于访问内部存储文件的问题。先给我们一些努力
  • 提问前先搜索一下,这里有一个example
  • MediaStore 中查询 MP3 MIME 类型的媒体。

标签: android


【解决方案1】:

请试试这个

String path="/sdcard/";    /* assuming u wanted to start from your sdcard */

private void updatePlaylist(){
    File home=new File(path);
    if (home.listFiles(new MP3filter()).length>0){
        for (File file: home.listFiles(new MP3filter())){
            alist.add(file.getName());
        }
    }
    if (alist.size()==0){
        tv.setText("No music files");
    }
    else
    tv.setText(alist.get(0).toString());


}
class MP3filter implements FilenameFilter {

    @Override
    public boolean accept(File dir, String filename) {
        return (filename.endsWith(".mp3"));
    }
}

【讨论】:

  • 所以你认为你不必这样做递归?
  • 请详细说明@greenapps
  • 你不认为 OP 想要所有的 mp3 文件吗?那些来自 /sdcard/Music 和 /sdcard/mp3s 的也是如此?等等?在所有子目录中?你知道递归的概念吗?不清楚你是否这样做。
  • 我知道递归的概念,我明白你的意思。我只是为初学者发布了这个。如果你能建议编辑@greenapps,我真的很感激
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-28
相关资源
最近更新 更多