【Unity】persistentDataPath、streamingAssetsPath和dataPath

介绍

我们在用Unity进行开发时,资源路径是我们最常用到的,下面我就来简单介绍一下几种常用的路径。

1.dataPath

dataPath是包含游戏数据文件夹的路径,是app程序包安装路径

Windows: xxx /Assets (如下图)
Mac: xxx /Assets

在这里插入图片描述

Android: /data/app/xxx.xxx.xxx.apk
注意:此路径指向.apk文件,.apk是一个文件,不是目录,故不能读写

IOS: Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/Data

总结:dataPath最常用的是在编辑器下,是自定义工具开发必用的路径

2.StreamingAssetsPath

StreamingAssetsPath用于返回数据流的缓存目录,返回路径为相对路径 (只读),如下图。
在这里插入图片描述
Windows: /Assets/StreamingAssets
Mac: /Assets/StreamingAssets
Android: jar:file:///data/app/xxx.xxx.xxx.apk/!/assets
IOS: Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/Data/Raw

程序读取

//ios平台
string strStreamResPath = "file://"+  Application.streamingAssetsPath;
//其他平台
string strStreamResPath = Application.streamingAssetsPath;

总结:strStreamResPath 常用于放打包后可以修改替换的文件,比如SDK渠道信息,AB资源,CG视频等

3.PersistentDataPath

PersistentDataPath是一个持久化数据存储目录的路径 ,可以在此路径下存储一些持久化的数据文件。

Windows: C:/Users/xxxx/AppData/LocalLow/CompanyName/ProductName
Mac: /Users/xxxx/Library/Caches/CompanyName/ProductName
Android: /data/data/xxx.xxx.xxx/files
IOS: Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Documents

总结:①用户生成的数据、配置文件等保存在这里,确保这些数据在应用程序关闭后依然存在。②从远端下载的AB等资源也保持于此目录。

4.temporaryCachePath

temporaryCachePath用于返回一个临时数据的缓冲目录 。

UnityEditor: C:/Users/xxxx/AppData/Local/Temp/CompanyName/ProductName
Android: /data/data/xxx.xxx.xxx/cache
IOS: Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Library/Caches

总结:temporaryCachePath这个路径不常用,至少我认为是不常用的,因为我做游戏十年多了,从来没有用过这个路径。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/537663.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

opencv dnn模块 示例(25) 目标检测 object_detection 之 yolov9

文章目录 1、YOLOv9 介绍2、测试2.1、官方Python测试2.1.1、正确的脚本2.2、Opencv dnn测试2.2.1、导出onnx模型2.2.2、c测试代码 2.3、测试统计 3、自定义数据及训练3.1、准备工作3.2、训练3.3、模型重参数化 1、YOLOv9 介绍 YOLOv9 是 YOLOv7 研究团队推出的最新目标检测网络…

MYSQL 是如何保证binlog 和redo log同时提交的?

MYSQL 一个事务在提交的时候能够保证binlog和redo log是同时提交的,并且能在宕机恢复后保持binlog 和redo log的一致性。 先来看看什么是redo log 和binlog,以及为什么要保持它们的一致性。 什么是redo log,binlog redo log是innodb引擎层…

Spring启动“--”设置参数没生效

现象 在idea中启动SpringBoot项目时,使用“--”设置的启动参数没有生效,如修改端口号“--server.port8082” 原因 排查发现是因为在使用SpringApplication.run启动项目时,没有将args参数传入run方法。 修复方案 SpringApplication.run参数中…

【Sql】MVCC有关问题,以及锁,日志和主从复制原理

目录 MVCC 解决什么问题? 实现原理 隐式字段 undo log Read View(读视图) InnoDB 对 MVCC 的实现 锁 分类 锁升级? InnoDB 的行锁? 死锁避免? 乐观锁和悲观锁 日志 主从复制原理 主从复制的作用 MySQL主从复制解决的问题 涉…

面试经典-16- 环形链表

题目 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&#…

基于springboot实现数据资产管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现数据资产管理系统演示 摘要 固定资产管理系统主要是完成对系统用户管理、资产信息管理、资产变更管理、资产用途管理、资产类别管理和资产增减管理。因为利用本系统管理员可以直接录入信息,修改信息,删除信息,并且若在录入…

vue3 el-form中嵌套el-tabale 对输入动态校验

简单案例 <el-form :model"Form" :rules"rules" ref"FormRef" class"formDiv"><el-table :data"Form.copyWriters" style"width: 100%"><el-table-column label"文案链接"><temp…

3、设计模式之工厂模式2(Factory)

一、什么是工厂模式 工厂模式属于创建型设计模式&#xff0c;它用于解耦对象的创建和使用。通常情况下&#xff0c;我们创建对象时需要使用new操作符&#xff0c;但是使用new操作符创建对象会使代码具有耦合性。工厂模式通过提供一个公共的接口&#xff0c;使得我们可以在不暴露…

论文阅读:Iterative Denoiser and Noise Estimator for Self-Supervised Image Denoising

这篇论文是发表在 2023 ICCV 上的一篇工作&#xff0c;主要介绍利用自监督学习进行降噪的。 Abstract 随着深度学习工具的兴起&#xff0c;越来越多的图像降噪模型对降噪的效果变得更好。然而&#xff0c;这种效果的巨大进步都严重依赖大量的高质量的数据对&#xff0c;这种对…

【数据结构】二叉树---AVL树的实现

目录 一. 什么是AVL树 二. AVL树的结点结构定义 三. AVL树的动态平衡法 1. 左单旋转 --- RL(RotateLeft) 型调整操作 2. 右单旋转 --- RR(RotateRight) 型调整操作 3. 先左后右双旋转 --- RLR (RotateLeftRight) 型调整操作 4. 先右后左双旋转 --- RRL (RotateRightL…

NBlog整合OSS图库

NBlog部署维护流程记录&#xff08;持续更新&#xff09;&#xff1a;https://blog.csdn.net/qq_43349112/article/details/136129806 由于项目是fork的&#xff0c;所以我本身并不清楚哪里使用了图床&#xff0c;因此下面就是我熟悉项目期间边做边调整的。 目前已经调整的功能…

FFmpeg——开源的开源的跨平台音视频处理框架简介

引言&#xff1a; FFmpeg是一个开源的跨平台音视频处理框架&#xff0c;可以处理多种音视频格式。它由Fabrice Bellard于2000年创建&#xff0c;最初是一个只包括解码器的项目。后来&#xff0c;很多开发者参与其中&#xff0c;为FFmpeg增加了多种新的功能&#xff0c;例如编码…