2011-03-04 57 views
2

的名单我想显示在Android手机上的文件列表。显示文件

例如,我想我的应用程序能够列出存储在手机中的所有图片,我不想图库视图,只是一个简单的列表。

我也想能够显示所有音频文件

任何帮助,将不胜感激

感谢

回答

1

对于标准/常见介质类型,例如内存中的音乐,视频和图像,系统中有各自管理它们的ContentProviders。如果你想建立这样的项目列表,你应该考虑分别查询ContentProviders(Google for MediaStore Provider)。

但是,如果您想要构建特定目录(内部或外部)中的所有文件的详尽列表,可以按照上面Fredley的建议使用File#listFiles() API。

2

我假设你的意思是在外部存储。请阅读Data Storage,它会告诉你导航文件系统的正确方法。

如果您使用API​​ 8级或更大 ,使用getExternalFilesDir()来 打开表示 外部存储目录,你应该 保存文件的文件。这一点,因为DIRECTORY_MUSIC和 DIRECTORY_RINGTONES这样 方法 采用指定 你想子目录的类型的类型参数(传递null 收到您的申请的 文件目录的根目录)。如果需要 ,此方法将 创建适当的目录。通过指定 目录的类型,确保 Android的媒体扫描器将正确地 在系统 中对文件进行分类(例如,将铃声标识为 作为铃声而不是音乐)。如果 用户卸载应用程序,这 目录及其所有内容将被删除 。

如果您使用API​​ 7级或更低, 使用getExternalStorageDirectory(),以 打开代表 外部存储的根文件。

+0

所有的似乎是有关保存文件?我只是想展示已经存在的东西。 – James 2011-03-04 00:39:55

+0

我有一个文件浏览器,但这是为用户有点乱了,我想已经找到了他们的所有图像,使他们可以随便挑,而不是周围的驱动器 – James 2011-03-04 00:44:11

+0

[文件](HTTP浏览://开发商。 android.com/reference/java/io/File.html)从这个对象返回的对象可以用来遍历SD卡的内容。 – fredley 2011-03-04 00:44:32