基于Android的应用启动任务优化方法及装置与流程

文档序号:33033161发布日期:2023-01-20 21:34阅读:来源:国知局

技术特征:
1.一种基于android的应用启动任务优化方法,其特征在于,包括:存储应用启动时关联的所有初始化任务,并基于每个初始化任务的先后依赖关系及任务调度逻辑,进行任务队列结构排序,作为执行初始化任务的排序;针对初始化任务的执行过程,判断当前任务是否在主进程内,若当前任务不在主进程内,通过声明注解方法实现当前任务的跨进程任务队列交互,其中,当前任务为当前需要执行的初始化任务,主进程为此应用运行分配的进程。2.根据权利要求1所述的基于android的应用启动任务优化方法,其特征在于,基于每个初始化任务的先后依赖关系及任务调度逻辑,进行任务队列结构排序,包括:针对每个初始化任务:获取调用本初始化任务所在线程需要等待的任务数量,并基于本初始化任务需要等待的任务数量,确定出本初始化任务的入度,其中,本初始化任务不需要等待时则任务数量为零;基于每个初始化任务的入度,确定出本阶段的可执行任务,并将本阶段中可执行任务的每个后续任务的入度减一,其中,一个初始化任务的后续任务依赖于此初始化任务的执行结果;若所有初始化任务均已被确定为可执行任务,完成任务队列结构排序。3.根据权利要求2所述的基于android的应用启动任务优化方法,其特征在于,在基于每个初始化任务的入度,确定出本阶段的可执行任务之前,所述方法还包括:获取每个初始化任务所在线程的优先级;对应的,基于每个初始化任务的入度,确定出本阶段的可执行任务,包括:确定每个入度为零且未被确定为可执行任务的初始化任务为本阶段任务;基于每个本阶段任务和其所在线程的优先级,确定出本阶段的可执行任务。4.根据权利要求2所述的基于android的应用启动任务优化方法,其特征在于,所述方法还包括:对初始化任务进行线程管理。5.根据权利要求2所述的基于android的应用启动任务优化方法,其特征在于,通过声明注解方法实现当前任务的跨进程任务队列交互,包括:在主进程中注册本进程唯一的单例实体类,并对单例实体类的全类名及接口方法名称进行缓存;在其他进程中通过绑定全局唯一通信服务,建立其他进程与主进程之间的跨进程连接,通过定义好的类id及接口方法id获取主进程中对应的实例并进行接口方法调用,实现当前任务的跨进程任务队列交互。6.根据权利要求5所述的基于android的应用启动任务优化方法,其特征在于,在其他进程中通过绑定全局唯一通信服务,建立其他进程与主进程之间的跨进程连接,包括:利用proccessbridge.connect在其他进程中向主进程发起链接请求;获取主进程返回的链接结果,建立其他进程与主进程之间的跨进程连接。7.根据权利要求6所述的基于android的应用启动任务优化方法,其特征在于,通过定义好的类id及接口方法id获取主进程中对应的实例并进行接口方法调用,实现当前任务的跨进程任务队列交互,包括:
其他进程利用proccessbridge.getinstance获取代理对象,并将代理对象通过binder发送到主进程;主进程解析代理对象,通过动态反射技术获取代理对象对应的类id及接口方法id,以确定出返回值,并通过binder将返回值发送回其他进程。8.一种基于android的应用启动任务优化装置,其特征在于,包括:任务排序单元,用于存储应用启动时关联的所有初始化任务,并基于每个初始化任务的先后依赖关系及任务调度逻辑,进行任务队列结构排序,作为执行初始化任务的排序;跨进程交互单元,用于针对初始化任务的执行过程,判断当前任务是否在主进程内,若当前任务不在主进程内,通过声明注解方法实现当前任务的跨进程任务队列交互,其中,当前任务为当前需要执行的初始化任务,主进程为此应用运行分配的进程。9.一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7中任一项所述的基于android的应用启动任务优化方法。10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器用于存储包括程序指令的信息,所述处理器用于控制程序指令的执行,所述程序指令被处理器加载并执行时实现权利要求1至7中任一项所述的基于android的应用启动任务优化方法。

技术总结
本申请提供一种基于Android的应用启动任务优化方法及装置,方法包括:存储应用启动时关联的所有初始化任务,并基于每个初始化任务的先后依赖关系及任务调度逻辑,进行任务队列结构排序,作为执行初始化任务的排序,这样可以解决复杂任务调度管理问题,大大减少开发人员需要面对的非业务逻辑(例如任务排序、线程调度等);针对初始化任务的执行过程,判断当前任务是否在主进程内,若当前任务不在主进程内,通过声明注解方法实现当前任务的跨进程任务队列交互,其中,当前任务为当前需要执行的初始化任务,主进程为此应用运行分配的进程。这样不需要预先逐个定义接口,可以实现动态的接口方法调用。接口方法调用。接口方法调用。


技术研发人员:王峰 王文辉 唐进 段凌云
受保护的技术使用者:贵阳语玩科技有限公司
技术研发日:2022.10.26
技术公布日:2023/1/19
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1