[发明专利]后台Dex编译管控的方法及装置有效
申请号: | 201611146793.3 | 申请日: | 2016-12-13 |
公开(公告)号: | CN108614697B | 公开(公告)日: | 2021-03-30 |
发明(设计)人: | 文白林;陈熙彩;任雁蒙 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/455 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 后台 dex 编译 方法 装置 | ||
本申请实施例提供后台Dex编译管控的方法及装置,以至少解决目前使用ART虚拟机运行时,点击某个应用会出现前台应用启动时间变长,使用过程卡顿的问题。方法包括:确定应用程序的类型;若所述应用程序的类型为后台类应用程序,确定所述后台类应用程序的绑核资源,其中,所述后台类应用程序的绑核资源小于前台类应用程序的绑核资源;根据所述后台类应用程序的绑核资源设置系统属性,其中,所述系统属性中包括所述后台类应用程序的绑核资源的信息;调用Dex2Oat,所述Dex2Oat用于读取所述系统属性,得到所述后台类应用程序的绑核资源的信息,并根据所述后台类应用程序的绑核资源的信息,创建线程编译所述应用程序。本申请适用于计算机领域。
技术领域
本申请涉及计算机领域,尤其涉及后台Dex编译管控的方法及装置。
背景技术
为解决安卓(Android)性能问题,Android从4.4开始使用安卓运行时刻(AndroidRuntime,ART)虚拟机运行,以替换之前一直使用的安卓Dalvik虚拟机。其中,为了保持向后兼容,即支持原来大量的安卓Dalvik虚拟机代码,ART虚拟机仍采用与安卓Dalvik虚拟机相同的应用开发模式,即源代码还是编译生成Dalvik虚拟机下的可执行Dex文件。后台类应用程序安装时,采用Dex2Oat编译工具,将Dex文件编译成ART虚拟机下的可执行Oat文件,以保证应用程序运行时直接读取Oat文件运行。
然而,由于后台类应用程序和前台类应用程序采用相同的绑核策略,抢占了前台类应用程序的中央处理单元(Central Processing Unit,CPU)和输入输出(Input
发明内容
本申请实施例提供后台Dex编译管控的方法及装置,以至少解决目前使用ART虚拟机运行时,点击某个应用会出现前台应用启动时间变长,使用过程卡顿的问题。
为达到上述目的,本申请实施例提供如下技术方案:
第一方面,本申请实施例提供一种后台Dex编译管控的方法,该方法包括:确定应用程序的类型;若该应用程序的类型为后台类应用程序,确定该后台类应用程序的绑核资源,其中,该后台类应用程序的绑核资源小于前台类应用程序的绑核资源;根据该后台类应用程序的绑核资源设置系统属性,其中,该系统属性中包括该后台类应用程序的绑核资源的信息;调用Dex2Oat,该Dex2Oat用于读取该系统属性,得到该后台类应用程序的绑核资源的信息,并根据该后台类应用程序的绑核资源的信息,创建线程编译该应用程序。也就是说,本申请实施例中,通过限制后台类应用程序的绑核资源,可以使得前台类应用程序有足够的绑核资源,从而提升了前台类应用程序的性能,避免了使用ART虚拟机运行时,点击某个应用会出现前台应用启动时间变长,使用过程卡顿的问题。
在一种可能的设计中,该确定该后台类应用程序的绑核资源,包括:根据预先配置的应用程序的类型和绑核资源的对应关系,确定该后台类应用程序的绑核资源,其中,该对应关系中包括该后台类应用程序和该后台类应用程序的绑核资源的对应关系。也就是说,可以静态配置应用程序的类型和绑核资源的对应关系,在确定应用程序的类型之后,可以直接根据该对应关系确定该应用程序的绑核资源。
在一种可能的设计中,该方法还包括:若该系统属性为空或者该Dex2Oat读取该系统属性失败,该Dex2Oat还用于根据预先设置的绑核资源,创建线程编译该应用程序,其中,该预先设置的绑核资源等于该前台类应用程序的绑核资源。这样可以避免因为系统属性的问题而运行异常的情况发生,从而保证应用程序的正常运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611146793.3/2.html,转载请声明来源钻瓜专利网。