Starling中AssetManager加载文件的流程整理

21 篇文章 0 订阅
10 篇文章 0 订阅
  Starling做移动开发,会用到大量的纹理和图片素材、XML配置等文件,需要频繁使用AssetManager类加载和使用他们,有时如果获取素材时报错,不知道AssetManager类的调用顺序就会对调试造成困难。因为工作需要对AssetManager的内部加载流程做了一次跟踪调试,这里做一次记录和整理,以备他用。
  AssetManager中,在调用enqueue方法向加载队列添加要加载的素材后,需要在最后调用loadQueue方法,所以也是从这里开始探索AssetManager的加载流程。因为期间使用了大量的函数变量,为了简便说明,将会根据各个函数的大写缩写给他们命名。

一、用到的方法
1、loadQueue方法(LQ)
  方法中的几个函数变量构成整个流程所需的步骤,他们分别是:
loadQueueElement(LQE)
loadNextQueueElement(LNQE)
processXmls(PXS)
finish(F)

2、processRawAsset方法(PRA)
  包含的函数变量:
process(P)

3、loadRawAsset方法(LRA)
  包含的函数变量:
onUrlLoaderComplete(OULC)
onLoaderComplete(OLC)
complete(C)

4、addTextureAtlas(ATA)
5、addTexture(AT)
6、addXml(AX)
7、removeTexture(RT)

二、加载流程
1、加载纹理
LQ -> LQE -> PRA -> LRA -> OULC -> OLC -> C -> P -> AT -> LNQE -> PRA(next)

2、加载纹理XML配置
LQ -> LQE -> PRA -> LRA -> QULC -> C -> P(xmls.push) -> LNQE -> PRA(next)

3、加载其他文件
LQ -> LQE -> PRA -> LRA -> QULC -> C -> P -> P -> AX -> LNQE -> PRA(next)

   加载其他文件的时候,在 P 方法中会因为传入的是二进制数据类型而调用 P 两次。
  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值