【技术实现步骤摘要】
Android系统中的类加载方法、装置、设备和存储介质
本专利技术实施例涉及计算机技术,尤其涉及一种Android系统中的类加载方法、装置、设备和存储介质。
技术介绍
对于基于Android系统的应用程序而言,其运行过程中涉及诸多相应功能的类Class,那么必然存在大量的类加载过程。现有技术中的类通常是通过系统类加载进行加载的,例如通过new关键字进行类加载,或者通过反射的方式来进行加载。该加载过程不区分类对应的加载模式,例如全局具有唯一对象的单例对象加载模式、与活动窗口的生命周期同步的活动窗口同步加载模式、以及与直播间的生命周期同步的直播间同步加载模式等。但是,上述类加载方式存在如下问题:(1)两种方式都只是将待加载的类加载到内存中,所生成的加载类的类对象均有系统管理,后续使用便捷性不高;(2)待加载的类所在的功能模块之间需要有较强的耦合性,否则会导致类加载失败,应用程序运行错误;(3)不同模式的类的加载及后续维护过程均需要程序人员手动编码维护,容易出现错误,降低代码可维护性和稳健性。 >
技术实现思路
...
【技术保护点】
1.一种Android系统中的类加载方法,其特征在于,包括:/n在应用程序的运行状态与预设元注解器中的注解器生命周期参数一致时,监测加载类的加载触发条件;/n当监测到所述加载触发条件时,确定加载类的目标加载模式标识,并依据所述目标加载模式标识,以及加载类、类加载标识和加载模式标识之间的映射关系,确定目标加载类的目标类加载标识;/n基于所述目标类加载标识,调用系统Class类中的类对象加载函数和类对象实例化函数,加载并实例化所述目标加载类,生成所述目标加载类的目标类对象;/n基于所述目标类加载标识和所述目标加载模式标识,调用预设键值对集合的元素存储函数,将所述目标类对象存储至 ...
【技术特征摘要】
1.一种Android系统中的类加载方法,其特征在于,包括:
在应用程序的运行状态与预设元注解器中的注解器生命周期参数一致时,监测加载类的加载触发条件;
当监测到所述加载触发条件时,确定加载类的目标加载模式标识,并依据所述目标加载模式标识,以及加载类、类加载标识和加载模式标识之间的映射关系,确定目标加载类的目标类加载标识;
基于所述目标类加载标识,调用系统Class类中的类对象加载函数和类对象实例化函数,加载并实例化所述目标加载类,生成所述目标加载类的目标类对象;
基于所述目标类加载标识和所述目标加载模式标识,调用预设键值对集合的元素存储函数,将所述目标类对象存储至所述预设键值对集合中。
2.根据权利要求1所述的方法,其特征在于,所述预设元注解器的注解器生命周期参数、注解器范围参数和注解属性类型分别为运行时参数、Class类以及预设枚举类型,其中,所述预设枚举类型的元素包含单例对象加载模式标识、活动窗口同步加载模式标识和直播间同步加载模式标识。
3.根据权利要求2所述的方法,其特征在于,当监测到所述加载触发条件时,确定加载类的目标加载模式标识包括:
当监测到系统应用程序类的生命周期启动函数的调用指令,或者所述目标加载类的调用指令时,确定所述目标加载模式标识为所述单例对象加载模式标识。
4.根据权利要求3所述的方法,其特征在于,在监测加载类的加载触发条件之前,还包括:
以所述预设元注解器中的注解属性类型为输入参数,调用程序元素获取函数,生成待加载类对象集合;
在依据所述目标加载模式标识,以及加载类、类加载标识和加载模式标识之间的映射关系,确定目标加载类的目标类加载标识之后,还包括:
以所述单例对象加载模式标识为输入参数,调用所述预设键值对集合的值信息获取函数,获得与所述单例对象加载模式对应的单例键值对对象;
以所述目标类加载标识为输入参数,调用所述待加载类对象集合的元素获取函数,获得与所述目标类加载标识对应的目标类标识;
以所述目标类标识为输入参数,调用所述单例键值对对象的值信息获取函数,获得单例目标类对象,并判断所述单例目标类对象是否为空对象;
若否,则将所述单例目标类对象作为所述目标加载类的目标类对象。
5.根据权利要求2所述的方法,其特征在于,当监测到所述加载触发条件时,确定加载类的目标加载模式标识包括:
当监听到活动窗口对象的生命周期启动函数的调用指令时,确定所述目标加载模式标识为所述活动窗口同步加载模式标识。
6.根据权利要求2所述的方法...
【专利技术属性】
技术研发人员:张磊,
申请(专利权)人:武汉斗鱼鱼乐网络科技有限公司,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。