我看过很多类似的问题,似乎很多人试图弄清楚,我找不到任何可以帮助我的答案。我正在使用Unity制作一个适用于Android的简单应用。
我想在android内部存储根目录中有一个文件夹,在我的电脑上看起来像:huaweiP30 \内部存储\视频\
我不需要在该文件夹中写入任何内容,我希望我的应用列出该文件夹中的所有mp4视频,并能够使用统一视频播放器进行播放,我希望用户能够轻松添加更多内容只需将视频放入该文件夹即可。我在Windows上对其进行了测试,该应用程序已按预期完成了工作,现在我要做的就是为它提供内部存储的正确路径。 另外,我可以让应用程序列出整个存储中的所有.mp4文件,如果这样做更容易。
我尝试了所有可以在网上找到的答案,其中有些对其他人有用。到目前为止,对我没有任何帮助。
将其用于在Windows上进行测试,并完全按照我的要求工作。我只是不知道该用什么替换该路径以使其从内部存储\视频\
中读取string videosPath = "C:\Users\Admin\Downloads\";
string [] filePaths = Directory.GetFiles(videosPath,"*.mp4");
请帮助我解决它或找到其他解决方法,感谢您的帮助。 预先感谢。
答案 0 :(得分:1)
这比我想象的要容易!我研究了这么长时间,当我要做的就是疯狂时-在手机设置中,我进入了权限,内存并允许我的应用访问内存。 然后就像
一样简单Filename Area
0.csv 123123
50.csv 242311
100.csv 233246
:
:
获取路径。添加了
后,我几乎没有任何内容就能读取内部存储中的每个视频string path = Application.persistentDataPath.Substring(0, Application.persistentDataPath.IndexOf("Android", StringComparison.Ordinal));
videosPath = path +"/videos/";
这是使您的应用请求权限的方法,因此您不必手动允许它。 https://docs.unity3d.com/Manual/android-RequestingPermissions.html
示例代码是关于麦克风的,但是您只需要将其更改为ExternalStorageRead / Write,不必担心“外部”,它也适用于内部存储器。