0.目的
用Addressable实现远端加载JS代码
1.准备工作
首先打开Package Manager,确认一下是否已经引入了Addressables
2.配置Addressable
打开Addressable Groups:(如果是第一次打开,会有一个按钮创建配置资源)
配置Group
我们需要创建一个Group命名为JS,然后把对应的文件夹拖进去,给他设置好Label
记得一定要设置Label,因为我们会使用Label的方式来进行加载JS文件
接下来我们需要配置一下Addressables Profiles,打开的位置和Groups类似
我们需要新建一个点击左上角的Create/Profile
创建的新Profile我们可以命名为WebGL
按照下面方式配置
其中Remote.LoadPath需要换成热更的地址
(因为搭服务器麻烦,这里我直接用内网的Git建了个仓库来存放资源,也可以用Gitee或者GitHub,或者实际发布的服务器)
(如果用git的话注意得填文件的下载地址而不是git项目树的地址)
别忘了配置好了之后要在WebGL的配置上右键SetActive才会启用
配置AddressableAssetSettings(在Asset目录下)
3、打远端资源包
我们要加载的是远端资源包
想加载远端资源包
首先远端得有资源包
而且资源包的配置得是远端的
(我在说什么绕口令。。。)
其实就是确认一下自己每个Group的配置,得是Remote
然后打开Addressable Groups
先把PlayModeScript改成UseExistingBuild
然后我们就可以Build/NewBuild/DefaultBuildScript来打资源包了
等待一会儿控制台就会告诉你包打好了
4、上传远端资源
我们已经打好了资源文件,那么它在哪里呢?
还记得我们之前的Profile配置吗?
里面有一条Remote.BuildPath就是打资源输出的位置
也就是说,我们的资源现在应该在工程目录下的ServerData/WebGL这个位置
我们找到这个文件夹,打开一看,的确一堆看不懂的东西,一定是资源没错了
把整个WebGL复制到git工程的目录下,然后就是git提交推送
这样我们的远端资源就准备好了,接下来,我们来写点代码加载它