UNITY 当旧的APK替换旧包包改造成新包包的APK 那么旧的StreamingAssets 里面的资源包还在吗?

Unity和Lua交互
时间: 19:15:33
&&&& 阅读:219
&&&& 评论:
&&&& 收藏:0
标签:用lua就表示项目用到了热更新,通常每次热更新都会从服务器获取最新的lua脚本放到Android/ios设备的本地目录下,但是lua应该放到哪个目录下呢,这里就先说说lua里面的路径问题
1、不可以放到Resources文件夹下,因为无法找到其在设备下的位置,Resources下的东西是由unity来管理的,使用的时候通过Resources.load/loadAll来加载
2、不可以放到StreamingAssets文件夹,因为在设备下StreamingAssets文件夹里面的资源只能读,不能写,当我们热更新最新的资源的时候,是不好操作的!而且StreamingAssets文件夹下的东西最终在生成apk的时候会被unity打包进一个pkg.apk的apk安装包里,解压这个pkg.apk可以看到StreamingAssets文件夹下的资源,在unity出包的时候,设置PlayerSettings下的Install Location为Perfer External(优先安装到外部设备,也就是sdcard),安装此包,用文件查看器查看,才能看到此程序安装的文件,通常如下:&&
com.zwh.p1是我的包名,如果程序就是安装到外部,那么都是能看到他的安装文件的,其他应用也是如此
如果Install Location设置为Force Internal(强制安装到手机内存),那么是看不到程序的安装文件的!
如何访问StreamingAssets文件下的资源:
string GetStreamingAssetsPath()
#if UNITY_ANDROID
//"jar:file://" + Application.dataPath + "!/assets/";
UnityEngine.Application.streamingAssetsPath+"/";
#elif UNITY_IPHONE
Application.dataPath + "/Raw/";
#elif UNITY_STANDALONE_WIN || UNITY_EDITOR
"file://" + Application.dataPath + "/StreamingAssets/";
3、先看看unity中几个路径有关的类,在android平台输出的路径为什么
Debug.Log ("temporaryCachePath = " + UnityEngine.Application.temporaryCachePath);
//temporaryCachePath = /storage/sdcard0/Android/data/com.zwh.p1/cache
Debug.Log ("dataPath = " + UnityEngine.Application.dataPath);
//dataPath = /mnt/asec/com.zwh.p1-2/pkg.apk
Debug.Log ("persistentDataPath = " + UnityEngine.Application.persistentDataPath);
//persistentDataPath = /storage/sdcard0/Android/data/com.zwh.p1/files
Debug.Log ("streamingAssetsPath = " + UnityEngine.Application.streamingAssetsPath); //streamingAssetsPath = jar:file:///mnt/asec/com.zwh.p1-2/pkg.apk!/assets
可以看出dataPath和streamingAssetsPath指的是程序安装的位置,而temporaryCachePath和persistentDataPath指的则是sdcard的位置,所以可以选择这两个路径作为存放lua文件的地方,前提是unity出包的时候,要设置Playersettings下Write Access为External(SDCard),不然这两个路径的位置是不一样的!
&&国之画&&&& &&&&chrome插件&&
版权所有 京ICP备号-2
迷上了代码!相关文章推荐
/forum/read.php?tid=16174
public void Start(){
1、首先在unity
在团结大多数资产组合为项目建成后。然而,它把文件到目标机器上的正常文件系统使他们有用的有时。这方面的一个例子是iOS设备上的电影文件的部署;原电影文件必须可从文件系统中被iPhoneUtils.Pla...
用Android接口来读取streamingAsset目录 可以提高效率,www方式效率不好 还耗内存。读取byte后直接CreateFromMemory 来创建bundle。其他模式还是Create...
Unity资源机制
本文意在阐述Unity资源机制相关的信息,以及一些关于个人的理解与试验结果。另外还会提及一些因机制问题可能会出现的异常以及处理建议。大部分机制信息来源于官...
外网的话,没有什么特别的地方,就是用 WWW 去访问 http 就好了~
需要注意的是本地,在不同平台下 url 的格式会略有不同。editor 和 ios 在读取本地的时候,地址都需要加一个头: ...
#if UNITY_EDITOR
savePath = Application.dataPath + "/StreamingAssets/custom/";
#elif UNITY_A...
最近在用Unity做手机游戏,其中关卡解锁信息需要用xml保存
那么问题就来了,Unity有多种路径操作的方法,但是对于移动端,有的方法只能读不能写……
于是我去上网查了点资料
(参考资料:http:...
读取StreamingAssets文件夹里面所有的图片(包括子目录中的)
图片应放在unity工程下的 StreamingAssets文件夹下
void LoadPicturesOfStr...
最近在写游戏的时候,用到很多读取和写入,现在就带大家简单的了解一下文件的读取和写入(这里我们先说文件的写入,读取我们会在下一篇说)。
我们都知道,要写一个文件或读取一个文件,必须知道文件的路径。
他的最新文章
讲师:董晓杰
讲师:姚远
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)Unity如何打包Apk能压缩资源_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
Unity如何打包Apk能压缩资源
如何在unity中打包apk能有效的压缩资源,比如图片的大小,我发现直接修改图片的大小之后打包好像不能压缩资源,打出来的包都是原来的大小。谁能告诉下如何能压缩资源
unity3d开发3d游戏,不可避免的要用到大量的模型、图片和其他资源。通吃一个游戏Apk包才几兆大小,但是资源却又几十兆上百兆,甚至几百兆。可以把apk单独发布,然后资源包单独拷贝到SD卡里面采用文件方式访问。但是这样操作比较麻烦。发布游戏如果采用这种方式,那受众可能接受不了。还有一种方式就是把资源包打包进APK包里面,这样发布的时候,用户只用安装一个Apk包就行了,但是这样带来的问题就是Apk包比较大。那么怎么样把资源包打包进APK包里面呢?其实很简单,只要在项目文件夹里面新建一个StreamingAssets文件夹,将要打包的各种资源文件放到该目录下面就可以了。这样资源就被打包进Apk包里面的Assets文件夹里面了。这里面的资源通过什么目录访问呢,其实也挺简单 &jar:file://& + Application.dataPath + &!/assets& 就是访问该目录的路径,如果实在IOS平台,路径则是 Application.dataPath +&/Raw&,这里面一定要注意文件路径大小写,这里面是区分大小写的,如果不注意这个问题,可能就会资源加载不了的问题。所以项目的命名规范一开始就要做好。
全网营销专家
如果压缩了,会在解压时很耗费设备运算能力的
为您推荐:
其他类似问题
apk的相关知识
换一换
回答问题,赢新手礼包相关文章推荐
本文主要介绍程序如何安装apk,包括普通模式安装和系统权限静默安装。
如果是非系统应用请直接查看:Android常用代码之APK
root权限静默安装,查看更完...
上一篇学习了基础漫反射的实现,这一篇我们看看基础高光反射的实现。
前言:最近一直在忙,做游戏,偶尔出来谢谢,记录一下开发中遇到的坑,以后都会写一些
今天用unity3d打包测试一下安卓程序,满怀信心的开始打包,借了朋友的魅族4pro 手机,擦,最新版呀,andro...
在网上搜的好多觉得不能完全适用,然后自己多方搜索,成功之后自己粗劣整理下分享出来。...
申明:本文出处
/article/detail/7083057
-------------------------------------------...
unity3d发布一个Android的apk文件需要具备什么环境及具体操作步骤
unity3d-配置sdk,jdk
Android环境,打包发布Apk流程详解
他的最新文章
讲师:董晓杰
讲师:姚远
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)相关文章推荐
初学Unity的过程中,会发现打包发布程序后,unity会自动将场景需要引用到的资源打包到安装包里,没有到的不会跟进去。我们在编辑器里看到的Asset中的文件结构只是工作于编辑器环境下的,在游戏中un...
Unity资源机制
本文意在阐述Unity资源机制相关的信息,以及一些关于个人的理解与试验结果。另外还会提及一些因机制问题可能会出现的异常以及处理建议。大部分机制信息来源于官...
Unity 3D里有两种动态加载机制:
一是Resources.Load;
一是通过AssetBundle;
其实两者本质上没有什么区别。Resources.Loa...
便于增量更新功能的实现
降低安装包大小,unity不支持过滤掉Resources目录中不用的文件。
用AB包的方式加快资源文件的读取速度
生成asset bundle文件
基本流程如下...
1、Resources.Load
2、WWW加载AssetBundle
根目录:StreamingAssets文件夹
#if UNITY_EDITOR
string filepath = Application.dataPath +"/StreamingAssets"...
Application.persistentDataPath
/ScriptReference/Application-persistentDataP...
今天,这篇文章其实是个老生常谈的问题咯,在网上类似的文章也比比皆是,在此我只是做个详细总结方便大家能够更好、更快的掌握,当然,如有不足的地方 欢迎指正!!!
相信大家在开发过程中,难免会保存...
最近做到关于Unity做图片动态调用的问题,采用的WWW方式对相对路径中的大量图片进行调用,并将其赋值给NGUI的Texture中,经过几次尝试后成功,由于之前对路径问题根本不熟,所以有点麻烦。
1.Resources文件夹
Resources文件夹是一个只读的文件夹,通过Resources.Load()来读取对象。因为这个文件夹下的所有资源都可以运行时来加载,所以Resources文件夹...
他的最新文章
讲师:董晓杰
讲师:姚远
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 旧毛衣改造成新样式 的文章

 

随机推荐