【问题标题】:Android Using mediaStoreAndroid 使用 mediaStore
【发布时间】:2011-05-23 20:22:14
【问题描述】:

Android 平台有许多“ready easy use”对话框,例如 ProgressDialog、DatePickerDialog 和 TimePickerDialog,这些都是启动和等待 盒子,也就是说,它们处理 UI、正确的数据并返回一些东西。

媒体存储有类似的对话框吗?

我想要像“AudioFilePickerDialog”这样向用户显示用户界面的东西 用户选择一个音频文件并返回音频文件的路径/uri。

我需要自己构建这个对话框还是它存在于某个地方?

我发现的几个例子之一是 Given an Android music playlist name, how can one find the songs in the playlist?

但这会处理播放列表。

/斯蒂芬

【问题讨论】:

    标签: android


    【解决方案1】:

    我找到了类似 FileChooser here 的教程。你应该可以让它只显示音乐文件(比如.mp3)。

    另外,要浏览 Android 设备的 SD 卡,您可以使用标准 Java File-class,就像在普通 Java 中一样。

    【讨论】:

    • 啊哈,没错,文件类应该可以解决问题,这可能是其他解决方案无法与我的对话框一起使用,谢谢
    【解决方案2】:

    试试这个

    Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Audio.Media.EXTERNAL_CONTENT_URI);
    startActivityForResult(i, REQUEST_MEDIA);//REQUEST_MEDIA is some const int to operate with in onActivityResult
    

    您将在此处看到一个对话框(活动待定),以从 mediastore 中选择音频。
    处理onActivityResult中的结果:

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_MEDIA && resultCode == RESULT_OK) {
            String audioID = data.getDataString();
            ...
        }
    }
    

    【讨论】:

    • 是否也可以选择多个音乐文件?
    • 4.0 标准库不支持多文件选择。
    猜你喜欢
    • 1970-01-01
    • 2014-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-01
    相关资源
    最近更新 更多