java - 从文件中获取媒体标题

标签 java android file sdk mediastore

我使用 import java.io.File; 从我的 sdcard 导入所有音乐文件, 现在我想要使用 Mediastore 的文件的标题,但我该怎么做? 这是我现在使用的代码。

public class ListFiles extends ListActivity {
 private List<String> directoryEntries = new ArrayList<String>();


@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Intent i = getIntent();
    File directory = new File(i.getStringExtra("directory"));

    if (directory.isDirectory()){
        File[] files = directory.listFiles();

        Arrays.sort(files, new Comparator<File>(){
            public int compare(File f1, File f2) {
                return -Long.valueOf(f1.lastModified()).compareTo(f2.lastModified());
            }
        });

        this.directoryEntries.clear();
        for (File file : files) {
            this.directoryEntries.add(file.getName());  
        }

        ArrayAdapter<String> directoryList = new ArrayAdapter<String>(this,R.layout.file_row, this.directoryEntries);
    this.setListAdapter(directoryList);
    }

}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
File clickedFile = new File(this.directoryEntries.get(position));
Intent i = getIntent();
i.putExtra("clickedFile", clickedFile.toString());
setResult(RESULT_OK, i);
finish();
}

谢谢。

最佳答案

我已经使用 MediaStore 对视频文件完成了此操作 :类概述 - 媒体提供者包含内部和外部存储设备上所有可用媒体的元数据

可以引用这两个例子来了解MediaStore的使用 <强> List Video List Audio

关于java - 从文件中获取媒体标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8242342/

相关文章:

android - 如何检测用户是否在我的应用程序上使用广告拦截器?

比较两个文件的普通数和单个数

java - 以编程方式启用通知 channel

java - 为什么类型推断在这里失败了?

android - 在 iOS 和 Android 中无需对话即可点赞并发出好友请求?

android - 用于代码生成的 ANTLR Tool 版本 4.7.1 与当前运行时版本 4.5.3 不匹配

c - 用C扫描计算机文件

ruby - 我应该在 Ruby 中的 File.read 和 File.open 之后销毁 File 对象吗?

java - NoNodeAvailableException [没有已配置的节点可用:[{#transport#-1} {OqtopIzTQmOjjLBzr2G_JA} {127.0.0.1} {127.0.0.1:9300}]]

java - 如何创建基于 libGdx 的库