HarmonyOS 鸿蒙Next ArkTS类加载顺序和加载时机是怎样的, 可以在哪查看相关内容啊

发布于 1周前 作者 htzhanglong 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next ArkTS类加载顺序和加载时机是怎样的, 可以在哪查看相关内容啊

求助, 程序运行的时候发现一些har包的静态字段初始化时机非常早, 想问下是import的时候就会触发相应文件中的类初始化吗, 怎么操作可以做到优先加载我的某个类呢

5 回复

楼主您好,大致顺序是这样的。(entry模块依赖harA 的某方法,harA中又依赖了harB某方法)

1、先加载Entry 的index.ets,发现依赖

2、加载HarA中的index.ets,顺序执行

3、顺序执行中发现依赖了HarB的方法,加载HarB模块

4、b模块执行完成后,继续执行A模块剩下的部分,最后执行entry中的部分。

大佬, 我在entry创建了Index.ets, 在里面导了包, 但是程序运行并没有优先加载这个Index里面的类, 而且AbilityStage类加载也挺靠后的, 最前面加载的这些类是怎么排序的啊

你可以试试点 debug,在 debug - Console 里面能看到类加载的顺序。可以看出是根据 import 的引用关系来导入的

同求哪里能看到相关文档

又验证了下, 发现在模块的Index文件中export就会加载相应的类, 但是众多模块的Index初始化的顺序又是怎么确定的呢, 可以设置优先级吗, (现在看起来是先加载的三方库的, 再加载自己项目的), 江湖救急啊,大佬们, 金币奉上了

HarmonyOS 鸿蒙Next ArkTS的类加载顺序通常根据import的引用关系确定,具体加载时机则依赖于应用的启动流程。在DevEco Studio中,可以通过调试模式(Debug)查看类加载顺序,这有助于理解应用的启动和初始化过程。如果需要深入了解ArkTS的加载机制,建议查阅HarmonyOS官方文档或参加相关开发者社区讨论。如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部