Unity xLua代码热更新流程(iOS)

unity的热更流程,其实就是把所有的资源打包成 assetBundle ,包括场景也是。然后把这个assetBundle 下载到Application.persistentDataPath这个目录,然后用www来动态加载新内容。Application.persistentDataPath这个目录是针对平台的可读写目录,适用于热更。下面是具体的操作流程演示。



1.unity热更主要两部分,代码和资源。

①制作需要热更的场景,随便拖几个东西。改个名字叫 myScene.scene

unity xlua代码热更新代码ios unity 热更新流程_Desktop

②制作入口场景,其实就是新建空场景,然后拖个按钮过来,上面绑两个脚本。Demo.cs 和 ResUpdate.cs

unity xlua代码热更新代码ios unity 热更新流程_unity_02

这个入口场景改名叫 begin.scene



2.制作需要热更的资源

这里资源包括lua代码还有一些prefabs

unity xlua代码热更新代码ios unity 热更新流程_热更新_03

登录后复制

--main.txt
function main()
     print("hello world")
end

--newLua.txt
function sayHello()
	print("来自热更的lua打印");
end

sayHello();

这个newLua.txt就是后面将要热更的新代码

3.打包要热更的资源

*如果是第一次使用sLua 那么要先点Slua菜单clean后make

我们这次热更不需要用到cdn,本地环境就可以测试了。首先在桌面创建tmp目录,当作是服务器cdn。//如C:\Users\Administrator\Desktop\tmp

然后用热更打包的菜单去打包资源和场景。

unity xlua代码热更新代码ios unity 热更新流程_lua_04

①资源:多选选中你需要打包的prefabs+代码.txt ,点击打包资源,并保存到上面的tmp目录。(实际开发应该远程服务端cdn)

②场景:打开你需要热更的场景,点击打包场景,并保存到上面的tmp目录。

③创建版本文件:点击就行了。因为我在代码里面写死了C:\Users\Administrator\Desktop\tmp 这个目录。(实际开发是一个http的url)



4.运行

上面的准备工作已经完成,可以运行begin场景。点击一下启动热更的按钮即可。



5.其他

热更时候下载的ab到底去哪了?去了Application.persistentDataPath 这个目录。

C:\Users\Administrator\AppData\LocalLow\DefaultCompany\项目名字

ResUpdate.cs这个文件,由于我是演示,我写死了本地路径和远程路径,如果你不想在桌面建一个tmp目录那么你要手动改下。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空