Devices and methods related to stored software libraries are provided. Computing devices can receive versioned shared library information of the first software library used by software applications, where versioned shared library information can include identifiers. The computing device can determine whether the computing device stores a copy of the first software library identified by the identifier in the versioned shared library information. Computing devices can send requests for complete executable files for software applications and for stripping one of the executable files, where the complete executable files include the first software library, and the stripped executable files do not include the first software library. In response to this request, the computing device may receive the complete executable file of the software application or strip the executable file.
【技术实现步骤摘要】
【国外来华专利技术】用于计算设备的共享软件库对于相关申请的交叉引用本专利申请要求在2017年3月14日提交的题为“SharedSoftwareLibrariesforComputingDevices(用于计算设备的共享软件库)”的美国临时专利申请No.62/471,298的优先权,其内容通过引用整体并入本文以用于各种目的。
技术介绍
许多计算设备(包括移动计算设备)可以运行应用软件以执行各种功能,例如通信相关功能、数据操纵功能、图像生成和/或呈现功能、音频生成和/或呈现功能以及其他功能。可以将应用软件从服务器或其他计算设备下载或传送到计算设备。在某些情况下,应用软件可以作为软件包的一部分下载。软件包可以包括应用软件和用于安装应用软件的指令。例如,软件包可以是可执行的,以执行安装应用软件的指令。一些软件应用可以依赖于一个或多个软件库中包含的功能。示例软件库包括具有输入/输出功能、图形用户界面功能、操作系统接口功能、存储器管理功能、数学功能和其他功能的软件。例如,软件应用可以被存储在包括应用使用的软件库的可执行文件中。
技术实现思路
在一个方面,提供了一种方法。计算设备接收由软件应用使用的至少第一软件库的版本化共享库信息,其中,第一软件库的版本化共享库信息包括第一软件库的标识符。计算设备确定计算设备是否存储由第一软件库的标识符在版本化共享库信息中标识的第一软件库的副本。基于计算设备是否存储第一软件库的副本,计算设备发送对软件应用的完整可执行文件和剥离可执行文件之一的请求,其中,完整可执行文件至少包括第一软件库,并且其中,剥离可执行文件不包括第一软件库。响应于该请求,计算设备接收用于软件应用 ...
【技术保护点】
1.一种方法,包括:在计算设备处接收至少由软件应用使用的第一软件库的版本化共享库信息,其中,所述第一软件库的所述版本化共享库信息包括所述第一软件库的标识符;确定所述计算设备是否存储由所述第一软件库的所述标识符在所述版本化共享库信息中标识的所述第一软件库的副本;发送对所述软件应用的可执行文件的请求,其中,所述请求基于所述计算设备是否存储所述第一软件库的所述副本,其中,所述软件应用的所述可执行文件是所述软件应用的完整可执行文件和所述软件应用的剥离可执行文件之一,并且其中,所述完整可执行文件包括所述第一软件库,并且其中,所述剥离可执行文件不包括所述第一软件库;以及响应于所述请求,接收所述软件应用的所请求的可执行文件用于存储在所述计算设备上。
【技术特征摘要】
【国外来华专利技术】2017.03.14 US 62/471,298;2017.07.06 US 15/643,4101.一种方法,包括:在计算设备处接收至少由软件应用使用的第一软件库的版本化共享库信息,其中,所述第一软件库的所述版本化共享库信息包括所述第一软件库的标识符;确定所述计算设备是否存储由所述第一软件库的所述标识符在所述版本化共享库信息中标识的所述第一软件库的副本;发送对所述软件应用的可执行文件的请求,其中,所述请求基于所述计算设备是否存储所述第一软件库的所述副本,其中,所述软件应用的所述可执行文件是所述软件应用的完整可执行文件和所述软件应用的剥离可执行文件之一,并且其中,所述完整可执行文件包括所述第一软件库,并且其中,所述剥离可执行文件不包括所述第一软件库;以及响应于所述请求,接收所述软件应用的所请求的可执行文件用于存储在所述计算设备上。2.根据权利要求1所述的方法,其中,确定所述计算设备是否存储由所述第一软件库的所述标识符在所述版本化共享库信息中标识的所述第一软件库的所述副本包括:确定所述计算设备确实存储了所述第一软件库的所述副本;以及其中,发送对所述软件应用的所述可执行文件的所述请求包括发送对所述软件应用的所述剥离可执行文件的请求。3.根据权利要求1所述的方法,其中,确定所述计算设备是否存储由所述第一软件库的所述标识符在所述版本化共享库信息中标识的所述第一软件库的所述副本包括:确定所述计算设备不存储所述第一软件库的所述副本;以及其中,发送对所述软件应用的所述可执行文件的所述请求包括发送对所述软件应用的所述完整可执行文件的请求。4.根据前述权利要求中任一项所述的方法,其中,所述第一软件库的所述版本化共享库信息还包括所述第一软件库的版本;并且所述第一软件库由所述第一软件库的所述版本所进一步标识。5.根据权利要求4所述的方法,其中,用于所述第一软件库的所述版本化共享库信息包括指定所述第一软件库的名称和所述第一软件库的所述版本两者的组合标识符。6.根据权利要求1或2所述的方法,其中,发送对所述软件应用的所述可执行文件的所述请求包括:发送对所述软件应用的所述剥离可执行文件的请求,并且其中,所述方法还包括:将所述剥离可执行文件和所述第一软件库加载到所述计算设备的数据存储中,其中,所述第一软件库是使用所述第一软件库的所述标识符和所述第一软件库的版本来识别的;以及在将所述剥离可执行文件和所述第一软件库加载到数据存储中之后,所述计算设备执行所加载的剥离可执行文件以使所述计算设备执行一个或多个功能,其中,所述一个或多个功能的至少一个功能是使用在所述第一软件库中存储的软件来执行的。7.根据权利要求1或3所述的方法,还包括:在确定所述计算设备未存储所述第一软件库的所述副本之后,基于所述第一软件库的所述标识符和所述第一软件库的版本定位所述第一软件库的副本,以及将所定位的所述第一软件库的副本存储在所述计算设备上。8.根据权利要求7所述的方法,其中,定位所述第一软件库的所述副本包括:发送对所述第一软件库的所述副本的请求,其中,所述请求包括所述第一软件库的所述标识符和所述第一软件库的所述版本,以及在发送所述请求之后,在所述计算设备处接收所述第一软件库的所述副本。9.根据权利要求1所述的方法,其中,至少所述第一软件库的所述版本化共享库信息还包括与所述第一软件库的散列和有关的信息。10.根据前述权利要求中任一项所述的方法,其中,所述计算设备被配置成存储由标识符和版本标识的第二软件库的多个版本,其中,所述第二软件库的所述多个版本中的每个共享公共标识符,其中,所述第二软件库的所述多个版本中的每一个都不同,并且其中,所述计算设备被配置成存储所述第二软件库的特定数量的版本。11.根据权利要求10所述的方法,其中,所述计算设备被配置成确定使用所述第二软件库的第一版本的多个应用,并且其中,所述方法还包括:确定释放所述计算设备的数据存储;在确定释放数据存储之后,所述计算设备确定使用所述第二软件库的所述第一版本的应用的数量是否小于阈值;以及在确定使用所述第二软件库的第一版本的应用的数量小于所述阈值之后,从所述计算设备上的数据存储中移除所述第二软件库的所述第一版本。12.根据权利要求11所述的方法,其中,所述软件应用额外地使用所述第二软件库,并且其中,发送对所述软件应用的所述可执行文件的所述请求包括:所述计算设备确定使用所述第二软件库的所述第一版本的应用的数量是否小于所述阈值;以及在确定使用所述第二软件库的所述第一版本的应用的数量小于所述阈值之后,发送对所述软件应用的所述完整可执行文件的请求。13.根据权利要求12所述的方法,其中,发送对所述软件应用的所述可执行文件的所述请求还包括:在确定使用所述第二软件库的所述第一版本的应用的数量不小于所述阈值之后,发送对所述软件应用的所述剥离可执行文件的请求。14.根据权利要求10至13中任一项所述的方法,还包括:确定...
【专利技术属性】
技术研发人员:托德·肯尼迪,黛安娜·哈克伯恩,阿古斯丁·丰特斯,斯韦托斯拉夫·加诺夫,
申请(专利权)人:谷歌有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。