Unity 在构建项目时将大多数资源整合到项目中。但是,将文件放入目标计算机上的普通文件系统以使其可通过路径名访问有时会很有用。这方面的一个例子是在 iOS 设备上部署电影文件;原始电影文件必须位于文件系统中的某个位置以便由 PlayMovie
函数进行播放。
放置在 Unity 项目中名为 StreamingAssets__(区分大小写)的文件夹中的所有文件都将逐字复制到目标计算机上的特定文件夹。可使用 Application.streamingAssetsPath 属性来检索此文件夹。在任何情况下,最好使用 Application.streamingAssetsPath
来获取 StreamingAssets__ 文件夹的位置,因为它总是指向运行应用程序的平台上的正确位置。
Application.streamingAssetsPath
返回的位置因平台而异:
Application.dataPath + "/StreamingAssets"
,Application.dataPath + "/Raw"
。"jar:file://" + Application.dataPath + "!/assets"
。要在无法直接访问流媒体资源文件的平台(如 Android 和 WebGL)上读取流媒体资源,请使用 UnityWebRequest。有关示例,请参阅 Application.streamingAssetsPath。
注意:位于 StreamingAssets 文件夹中的 .dll 文件不参与编译。