首页 > 解决方案 > Unity Android 的 StreamingAssets 文件夹位置

问题描述

我将StreamingAssets用于我的 Android 游戏,并且想在安装 APK 后在StreamingAssets文件夹中添加文件,但我不知道该文件夹的位置在哪里。

你能帮助我吗 ?

标签: androidunity3dapk

解决方案


构建后,您无法添加或修改流资产文件夹内的文件,因为在几乎所有平台上,该目录都是只读的。从文档

在许多平台上,流媒体资产文件夹位置是只读的;您不能在运行时在那里修改或写入新文件。将 Application.persistentDataPath 用于可写的文件夹位置。

也就是说,在 Android 上,流媒体资产的文件路径位于"jar:file://" + Application.dataPath + "!/assets,来自相同的文档:

Android 使用压缩的 APK /JAR 文件中的文件,“jar:file://”+ Application.dataPath +“!/assets”。

请注意,您无法通过标准 C#File函数访问此文件位置,但需要使用 webrequest 访问它。

如果您需要一个目录来在运行时存储数据,则需要使用该目录Application.persistenDataPath。从文档

此值是一个目录路径,您可以在其中存储要在运行之间保留的数据。在 iOS 和 Android 上发布时,persistentDataPath 指向设备上的公共目录。此位置中的文件不会被应用更新删除。用户仍然可以直接删除这些文件。


推荐阅读