【技术实现步骤摘要】
组件的初始化处理方法、装置及电子设备
[0001]本申请涉及安卓(Android)软件
,尤其涉及一种组件的初始化处理方法、装置及电子设备。
技术介绍
[0002]传统的Android组件化开发时会提供一个初始化方案,需要在开发应用程序(Application,App)时,在用于维护全局应用程序状态的基类(Base class for maintaining global application state)的生命周期回调方法中或者其他位置手动进行调用触发组件的初始化操作,如果有多个组件需要进行初始化,则需要人工编写初始化的代码逻辑。用于维护全局应用程序状态的基类又可以称为Application类。
[0003]Android官方提供的组件包jetpack提供了一个初始化组件App Startup,该方案基于Android四大组件之一的ContentProvider实现,提供了一个初始化(Initializer)接口,在组件开发过程中需要开发一个初始化类实现该Initializer接口的create方法和dep ...
【技术保护点】
【技术特征摘要】
1.一种组件的初始化处理方法,其特征在于,所述组件的初始化处理方法包括:调用应用程序的组件初始化代码,将所述组件初始化代码中的初始化类实例化对象注册到管理队列中;获取所述管理队列中待初始化组件对应的初始化类实例化对象,运行所述待初始化组件的初始化类实例化对象,执行对所述待初始化组件的初始化操作。2.根据权利要求1所述的方法,其特征在于,所述调用应用程序的组件初始化代码之前,所述方法包括:对应用程序的原始代码进行编译,得到所述应用程序的编译文件,扫描所述编译文件,得到组件初始化接口的初始化类文件信息;获取所述初始化类文件信息对应的初始化注解信息;将所述初始化类文件信息及所述初始化注解信息进行拼接,得到注册代码;创建初始化空方法,将所述注册代码插入所述初始化空方法中,得到所述组件初始化代码。3.根据权利要求1所述的方法,其特征在于,所述组件初始化代码包括实例化过程代码及注册代码,所述调用应用程序的组件初始化代码,将所述组件初始化代码中的初始化类实例化对象注册到管理队列中,包括:运行所述实例化过程代码得到所述初始化类实例化对象;运行所述注册代码将所述初始化类实例化对象注册至所述管理队列中。4.根据权利要求1所述的方法,其特征在于,所述管理队列为启动时队列,所述待初始化组件为待初始化基础组件,所述获取所述管理队列中待初始化组件对应的初始化类实例化对象,包括:获取所述启动时队列中待初始化基础组件的初始化类实例化对象。5.根据权利要求1所述的方法,其特征在于,所述管理队列为同步方式队列或异步方式队列,所述待初始化组件为需授权组件,所述获取所述管理队列中待初始化组件对应的初始化类实例化对象,包括:在对所述需授权基础组件进行初始化时,获取所述同步方式队列中需授权组件的初始化类实例化对象;或者,获取所述异步方式队列中需授权组件的初始化类实例化对...
【专利技术属性】
技术研发人员:梁晶,董志永,李旭,向起,欧阳骋宇,王涛,吴政通,李劭,黄敏,陈仕军,唐寅,
申请(专利权)人:云南腾云信息产业有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。