[发明专利]程序启动方法、类间关系构建方法及装置、移动终端在审
申请号: | 202011488621.0 | 申请日: | 2020-12-16 |
公开(公告)号: | CN112559073A | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 徐少朋 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 朱颖;臧建明 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 启动 方法 关系 构建 装置 移动 终端 | ||
1.一种程序启动方法,包括:
获取待启动程序在启动过程需要运行的各个类信息以及各个类之间的关联关系;
根据所述各个类之间的关联关系以及所述类信息,预加载与所述程序对应的类;
响应于所述程序的启动指令,执行预加载的类,并启动所述程序。
2.根据权利要求1所述的方法,其中,设置有与所述待启动程序对应的预设节点树,所述预设节点树中包括所述待启动程序在启动过程需要运行的各个类信息以及各个类之间的关联关系。
3.根据权利要求2所述的方法,其中,所述预设节点树的层数小于或等于预设层数。
4.根据权利要求1所述的方法,其中,根据所述各个类之间的关联关系以及所述类信息,预加载与所述程序对应的类,包括:
根据所述各个类之间的关联关系以及所述类信息,先加载父类,再加载子类。
5.根据权利要求2所述的方法,其中,根据所述各个类之间的关联关系以及所述类信息,预加载与所述程序对应的类,包括:
读取所述预设节点树的节点;
若所述节点包括子节点,则对所述子节点代表的类信息对应的类进行加载;
若所述节点不包括子节点,则对所述节点代表的类信息对应的类进行加载。
6.根据权利要求4或5所述的方法,其中,对类进行加载,包括:
对所述类进行入栈处理。
7.根据权利要求6所述的方法,其中,执行预加载的类,包括:
按照类入栈时顺序的反序,执行预加载的类。
8.根据权利要求1-5任一项所述的方法,其中,在响应小程序平台的启动指令时,执行获取待启动程序在启动过程需要运行的各个类信息以及各个类之间的关联关系的步骤;
其中,所述待启动程序为所述小程序平台中设置的小程序。
9.一种类间关联关系的构建方法,包括:
对程序进行事件跟踪分析;
根据分析结果确定所述程序启动过程使用到的类以及各个类之间的关联关系;
其中,所述关联关系用于在启动所述程序前,预加载所述类。
10.根据权利要求9所述的方法,其中,还包括:根据各个类之间的关联关系,构建包括所述类的类信息的预设节点树;其中,所述预设节点树用于在启动所述程序前,预加载所述类。
11.根据权利要求10所述的方法,其中,根据各个类之间的关联关系,构建包括所述类的类信息的预设节点树,包括:
以所述程序的启动类为起点对所述关联关系进行深度遍历得到遍历结果;
根据所述遍历结果将一个类的类信息作为其依赖类的类信息的父节点,并继续对所述关联关系进行遍历。
12.根据权利要求11所述的方法,其中,还包括:
若所述预设节点树达到预设遍历深度,则停止遍历所述关联关系。
13.根据权利要求9-12任一项所述的方法,其中,确定所述程序启动过程使用到的类以及各个类之间的关联关系,包括:
确定所述程序启动过程使用到的耗时大于预设时长的目标类以及目标类之间的关联关系。
14.一种程序启动装置,包括:
获取单元,用于获取待启动程序在启动过程需要运行的各个类信息以及各个类之间的关联关系;
预加载单元,用于根据所述各个类之间的关联关系以及所述类信息,预加载与所述程序对应的类;
启动单元,用于响应于所述程序的启动指令,执行预加载的类,并启动所述程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011488621.0/1.html,转载请声明来源钻瓜专利网。