项目中的资源一般我们打包成AssetBundle格式

方便我们加载和热更

而AssetBundle文件 一般保存在StreamingAssets文件夹或则PersistentData文件夹

首先我们看这两个文件夹有什么区别

StreamingAssets
可读取、不可写入

工程Assets根目录下StreamingAssets文件夹
文件夹内容不压缩打包到apk、ipa包内

PersistentData
可读取、可写入
沙盒目录,应用程序安装运行后才会出现

*StreamingAssets 不能写入  随包发包   适合存放一些初始化的AssetBundle资源 如 登入页 加载页等

*PersistentData 适合存放 运行程序下载的AssetBundle资源

然后我们看下这两个文件夹在各 平台 运行时 打印的 路径地址:

StreamingAssets  
WindowsEditor C:/Users/zq/Desktop/Test/Assets/StreamingAssets(工程目录/Assets/StreamingAssets)
OSXEditor /Users/zouqiang/Desktop/Test/Assets/StreamingAssets(工程目录/Assets/StreamingAssets)
Android jar:file:///data/app/com.Company.Test-1.apk!/assets(安装目录/assets)
IPhonePlayer /var/containers/Bundle/Application/5C9D81B5-2A21-45BC-B6DC-12B704976D22/Test.app/Data/Raw
PersistentData  
WindowsEditor C:/Users/zq/AppData/LocalLow/DefaultCompany/Test
OSXEditor /Users/zouqiang/Library/Application Support/DefaultCompany/Test
Android /storage/emulated/0/Android/data/com.Company.Test/files
IPhonePlayer /var/mobile/Containers/Data/Application/F96BACED-63D5-45AE-B2A7-738A87545A8F/Documents

StreamingAssets在各工程路径(资源更新可直接替换对应的文件  实现快速打包或测试)

Unity C:\Users\zq\Desktop\Test\Assets\StreamingAssets
Eclipse C:\Users\zq\Desktop\eclipse\Test\assets
Xcode C:\Users\zq\Desktop\eclipse\Test\assets

在使用
AssetBundle.LoadFromFile
AssetBundle.LoadFromFileAsync
加载StreamingAssets文件夹里面的AssetBundle
要注意

Android  获得去方式为  Application.dataPath + "!assets"

其他平台   获取的方式为 Application.streamingAssetsPath

使用
WWW
加载AssetBundle
加载StreamingAssets文件夹里面的AssetBundle
要注意

Android  获得去方式为  Application.streamingAssetsPath

其他平台   获取的方式为 "file://" + Application.streamingAssetsPath

PersistentData文件夹获取的方式都为  Application.persistentDataPath

Unity 从StreamingAssets文件夹和PersistentData文件夹 保存读取AssetBundle资源的更多相关文章

  1. Unity打包/读取AssetBundle资源全教程

    Unity 资源AssetBundle打包 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar ...

  2. Unity读取AssetBundle资源全教程(所有读取方式)

    读取/加载 AssetBundle 资源的多种方式 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Ch ...

  3. Java 创建文件夹和文件,字符串写入文件,读取文件

    两个函数如下: TextToFile(..)函数:将字符串写入给定文本文件: createDir(..)函数:创建一个文件夹,有判别是否存在的功能. public void TextToFile(fi ...

  4. asp.net(C#)读取文件夹和子文件夹下所有文件,绑定到GRIDVIEW并排序 .

    Asp部分: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MyFiles ...

  5. 使用Windows EFS(怎么给文件夹加密)进行文件加密

    和Windows BitLocker一样,Encrypting File System(EFS,加密文件系统)是Windows内置的一套基于公共密钥的加密机制,可以加密NTFS分区上的文件和文件夹,能 ...

  6. C#遍历文件夹下所有文件

    FolderForm.cs的代码如下: using System; using System.Collections.Generic; using System.Diagnostics; using ...

  7. python 替换 文件夹下的 文件名称 及 文件内容

    示例效果: 1.替换某文件夹下的 文件夹及子文件夹 的名称 由OldStrDir 变为 NewStrDir: 2.替换某文件夹下的 文件夹及子文件夹 下 所有的文件的名称 由OldStrFile 变为 ...

  8. 【安卓】安卓res文件夹下的资源文件与R.java文件里面类的对应关系

    对于drawable.layout.menu文件夹下的每一个文件都分别会在R.java文件里面生成drawable.layout.menu类的一个常量,类名就是文件夹的名字,常量的名字就是文件名字. ...

  9. python 实现彻底删除文件夹和文件夹下的文件

    python 中有很多内置库可以帮忙用来删除文件夹和文件,当面对要删除多个非空文件夹,并且目录层次大于3层以上时,仅使用一种内置方法是无法达到彻底删除文件夹和文件的效果的,比较low的方式是多次调用直 ...

随机推荐

  1. web报表工具FineReport的SQL编辑框的语法简介

    感谢大家捧场,这里继续分享关于SQL编辑框的一些语法心得总结,因为数据集定义的面板,也是FineReport报表中最常用的模块之一. 1.我理解的执行过程. 这里其实是生成一个字符串,FineRepo ...

  2. MCU实战经验:多种的按键处理

    按键通常有:IO口按键(BUTTON),AD按键(通过AD采样电压),IR(遥控器) 按按键功能分:有短按键,长按键,连续按键.打个比方,遥控电视机,按一下音量键,音量增加1,这个就是短按键.按住音量 ...

  3. rails中validates_confirmation_of验证方法无效的解决办法

    rails的model中提供了很多种自带的验证方法,validates_confirmation_of可以验证变量xxx和xxx_confirmation是否相等:这可以用于验证2遍输入的密码是否一致 ...

  4. 简单的Java逻辑小代码(打擂台,冒泡排序,水仙花数,回文数,递归)

    1.打擂台 简单的小代码,打擂台.纪念下过去,祝福下新人. public static void main(String[] args){ int[] ld = {1,4,2,10,8,9,5}; i ...

  5. CRM客户关系管理系统(十二)

    十二章.学员报名流程开发 2  12.1.学员报名合同和证件信息上传 功能: 必须勾选报名合同协议 必须上传个人证件信息 最多只能上传三个文件 文件大小2M以内 列出已上传文件 (1)crm/urls ...

  6. Hibernate中的对象有三种状态

    Hibernate中的对象有三种状态: 瞬时状态 (Transient),持久状态 (Persistent), 1. 脱管状态 (Detached) 1. 1. 瞬时状态 (Transient) 由  ...

  7. tomcat 工作原理

    Tomcat原理 分类: TOMCAT2009-05-17 22:25 4366人阅读 评论(3) 收藏 举报 tomcatexceptionsocketstringservernull Tomcat ...

  8. 用Socket编写的聊天小程序

    Socket是什么? 是套接字,除此之外我也不太清楚,先略过 直接上实例,首先服务端: ; //自定义端口号 private string ServerUser = "Tracy" ...

  9. C++堆栈问题

    编写C++中的两个类 一个只能在栈中分配空间 一个只能在堆中分配. 解答: (1)代码如下 (2)堆栈分配内存的介绍 一.一个经过编译的C/C++的程序占用的内存分成以下几个部分:1.栈区(stack ...

  10. 自动生成MyEclipse 安装破解码

    新建一个class 文件,Debug 模式运行一个,输入任意值 ,回车得到破解安装码 代码文件如下: import java.io.*; public class MyEclipseGen { pri ...