我想在Android手机中显示一个文件列表。
例如,我希望我的应用程序能够列出手机中存储的所有图像,我不想要一个图库视图,只是一个简单的列表。
我还希望能够显示所有音频文件
任何帮助将不胜感激
谢谢
答案 0 :(得分:2)
我假设您的意思是外部存储空间。阅读Data Storage,它将告诉您正确的导航文件系统的方法。
如果您使用的是API Level 8或 更大,使用getExternalFilesDir()来 打开一个代表该文件的文件 外部存储目录所在的位置 应保存您的文件。这种方法 采用指定的类型参数 你想要的子目录的类型, 比如DIRECTORY_MUSIC和 DIRECTORY_RINGTONES(将null传递给 收到你的申请的根 文件目录)。这种方法会 如果创建适当的目录 必要。通过指定类型 目录,你确保 Android的媒体扫描仪会正常 在系统中对文件进行分类 (例如,识别铃声 作为铃声而不是音乐)。如果 用户卸载您的应用程序,这个 目录及其所有内容将是 删除。
如果您使用的是API级别7或更低级别, 使用getExternalStorageDirectory()来 打开一个代表根的文件 外部存储。
答案 1 :(得分:1)
对于内部存储器中的标准/常见媒体类型(如音乐,视频和图像),系统中有相应的ContentProviders
来管理它们。如果您要构建此类项目的列表,则应考虑查询相应的ContentProviders
(Google MediaStore
提供商)。
但是,如果您要构建特定目录(内部或外部)中所有文件的详尽列表,您可以使用上面Fredley建议的File#listFiles()
API。