检索Android设备上的所有视频文件

【检索Android设备上的所有视频文件】枕上诗书闲处好,门前风景雨来佳。这篇文章主要讲述检索Android设备上的所有视频文件相关的知识,希望能为你提供帮助。
我正在尝试在Unity3D-android应用程序中实现视频播放器功能。想知道如何访问设备存储中存在的所有视频文件。到目前为止,我可以使用以下命令获取Application.persistentDataPath上的MP4文件列表:

private List< string> DirSearch(string sDir) { List< string> files = new List< string> (); try { foreach (string f in Directory.GetFiles(sDir,"*.mp4")) { files.Add(f); } foreach (string d in Directory.GetDirectories(sDir)) { files.AddRange(DirSearch(d)); } } catch (Exception ex) { Debug.LogError(ex.Message); }return files; }

要为整个设备存储和SD卡使用相同的代码,我应该从哪里开始搜索?
编辑:
请注意,我使用C#在Unity3D中工作,上面的代码工作正常。所以java代码没有帮助。相反,我需要Android设备存储上的绝对路径,我可以在上面调用这样的方法:DirSearch(needThisPathAddressForAndroidRootFolder)
谢谢
答案查询MediaStore内容提供商
http://developer.android.com/reference/android/provider/MediaStore.html
一个例子可能是
public static void printNamesToLogCat(Context context) { Uri uri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI; String[] projection = { MediaStore.Video.VideoColumns.DATA }; Cursor c = context.getContentResolver().query(uri, projection, null, null, null); int vidsCount = 0; if (c != null) { vidsCount = c.getCount(); while (c.moveToNext()) { Log.d("VIDEO", c.getString(0)); } c.close(); } }

谢谢你slartibartfast
Referenced By

    推荐阅读