CN104866293A - 一种对Android应用程序扩展功能的方法及装置 - Google Patents
一种对Android应用程序扩展功能的方法及装置 Download PDFInfo
- Publication number
- CN104866293A CN104866293A CN201410064973.1A CN201410064973A CN104866293A CN 104866293 A CN104866293 A CN 104866293A CN 201410064973 A CN201410064973 A CN 201410064973A CN 104866293 A CN104866293 A CN 104866293A
- Authority
- CN
- China
- Prior art keywords
- code block
- code
- space
- file
- expanded function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种对Android应用程序扩展功能的方法及装置,涉及计算机软件技术领域,具体涉及软件的功能扩展技术,通过将需要扩展功能的代码块和实现扩展的功能的代码块存放在外部文件中,并用随机代码和调用外部文件的调用指令替换需要扩展功能的代码块,实现了对Android应用程序的功能的扩展,提高了程序开发的效率。该方法包括:获得Android应用程序的dex文件;获得待扩展功能的代码块;将待扩展功能的代码块替换成运行时将不被执行的代码块;添加调用指令;使运行时将不被执行的代码块和调用指令的代码所占空间总和与待扩展功能的代码块所占空间相同。本发明主要用于对Android系统应用程序进行功能扩展。
Description
技术领域
本发明涉及计算机软件技术领域,具体涉及软件的功能扩展技术,尤其涉及一种对Android应用程序扩展功能的方法及装置。
背景技术
随着手机与平板电脑等移动终端的迅速发展,主要应用于移动终端的Android系统也得到了越来越快速的推广,使得很多基于Android系统的应用程序越来越丰富。
当需要对Android系统的应用程序进行功能扩展时,针对Android系统的应用程序安装包中的dex文件,需要将实现扩展功能的代码块加入到dex文件中,但是,由于dex文件的结构关系,(例如,dex文件头包括校验以及其他结构的偏移地址和长度信息等),如果直接根据需要将实现扩展功能的代码块插入dex文件中,代码的长度会发生变化,从而引起其他结构偏移地址和长度信息等信息发生变化,导致dex文件在被执行时出错,无法实现对Android应用程序的功能的扩展,因此,在需要对Android系统的应用程序扩展功能时,只能重新构建一个新的dex文件,将实现扩展功能的代码块加入到新的dex文件中,从而耗费大量的时间和人力,降低了效率。
发明内容
有鉴于此,本发明实施例提供了一种对Android应用程序扩展功能的方法及装置,来解决以上背景技术部分提到的技术问题。
一方面,本发明实施例提供了一种对Android应用程序扩展功能的方法,所述方法包括:
获得所述Android应用程序的安装包中的dex文件;
从所述dex文件中获得待扩展功能的代码块;
根据用于Android系统的dex文件的编码规则构建运行时将不被执行的代码块;
将所述dex文件中的待扩展功能的代码块替换成所述运行时将不被执行的代码块;
在所述运行时将不被执行的代码块的前面或者后面添加调用指令的代码,所述调用指令调用包含所述待扩展功能的代码块和实现扩展的功能的代码块的外部文件;
使所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
另一方面,本发明实施例提供了一种对Android应用程序扩展功能的装置,所述装置包括:
文件获得模块,用于获得所述Android应用程序的安装包中的dex文件;
代码块获得模块,用于从所述文件获得模块获得的dex文件中获得待扩展功能的代码块;
构建模块,用于根据用于Android系统的dex文件的编码规则构建运行时将不被执行的代码块;
替换模块,用于将所述dex文件中的待扩展功能的代码块替换成所述构建模块构建的运行时将不被执行的代码块;
调用指令添加模块,用于在所述运行时将不被执行的代码块的前面或者后面添加调用指令的代码,所述调用指令调用包含所述代码块获得模块获得的待扩展功能的代码块和实现扩展的功能的代码块的外部文件;
调整模块,用于使所述运行时将不被执行的代码块和所述调用指令添加模块添加的调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
本发明提供了一种对Android应用程序扩展功能的方法及装置,通过将需要扩展功能的代码块和实现扩展的功能的代码块存放在外部文件中,并用随机代码和调用外部文件的调用指令替换掉原来需要扩展功能的代码块,从而实现了对Android应用程序的功能的扩展,提高了对Android应用程序开发的效率。
附图说明
图1是本发明实施例提供的一种对Android应用程序扩展功能的方法流程图;
图2是本发明实施例提供的一种使运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间相同的方法流程图;
图3是本发明实施例提供的一种对Android应用程序扩展功能的装置组成框图;
图4是本发明实施例提供的一种使运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间相同的装置组成框图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例,仅仅用于解释本发明,而非对本发明的限定。
本发明实施例提供了一种对Android应用程序扩展功能的方法,如图1所示,该方法包括如下步骤:
步骤101:获得所述Android应用程序的安装包中的dex文件。
其中,Android是一种基于Linux的开放源代码的操作系统,主要用于移动设备,如智能手机和平板电脑。Android应用程序的安装包为APK(AndroidPackage,Android安装包),使用Android打包工具将dex文件,资源文件以及Android Manifest.xml文件组合获得APK文件。APK文件其实是zip格式,但后缀名被修改为apk,可以通过UnZip对APK文件直接进行解压。其中,dex文件是一种Android平台上可执行文件的类型,可以直接在Dalvik虚拟机中加载运行。
具体地,本发明实施例通过UnZip对需要扩展功能的Android应用程序的APK文件直接进行解压,获得其dex文件。
步骤102:从所述dex文件中获得待扩展功能的代码块。
具体地,首先从dex文件中查找到需要执行具有扩展功能的代码块的位置,然后根据需要执行具有扩展功能的代码块的位置选取待扩展功能的代码块。具体地,可以选取该位置前面的代码块作为待扩展功能的代码块,也可以选取该位置后面的代码块作为待扩展功能的代码块,还可以选取该位置前面以及后面的代码块作为待扩展功能的代码块,当然,具体采用哪种选取方式,本发明实施例对此不进行限制。在选取了待扩展功能的代码块后,获得待扩展功能的代码块在dex文件中的位置信息,同时获得待扩展功能的代码块。
步骤103:根据用于Android系统的dex文件的编码规则构建运行时将不被执行的代码块。
其中,将运行时不被执行的代码块插入到dex文件中,当程序运行到该代码时,该代码不被执行,但也不会影响原程序的运行。
具体地,在本发明的一种实施方式中,首先根据用于Android系统的dex文件的编码规则,构建大量运行时将不被执行的代码块,然后将这些代码块存储在预定的数据库中,在需要使用运行时将不被执行的代码块时,从预定的数据库中随机提取代码块。在本发明的另一种实施方式中,采用和用于Android系统的dex文件的编码规则相对应的随机代码生成器随机生成运行时将不被执行的代码块,在需要运行时将不被执行的代码块时,直接由随机代码生成器构建所需代码块。需要说明的是,具体采用哪种方式获得运行时将不被执行的代码块,本发明实施例对此均不进行限制。
步骤104:将所述dex文件中的待扩展功能的代码块替换成所述运行时将不被执行的代码块。
具体地,根据待扩展功能的代码块在dex文件中的位置信息,将该dex文件中的待扩展功能的代码块替换成运行时将不被执行的代码块。
步骤105:在所述运行时将不被执行的代码块的前面或者后面添加调用指令的代码,所述调用指令调用包含所述待扩展功能的代码块和实现扩展的功能的代码块的外部文件。
具体地,首先将待扩展功能的代码块和实现扩展的功能的代码块存放在同一个外部文件中,然后将该外部文件存储到指定位置,记录下存储该外部文件的地址以及待扩展功能的代码块和实现扩展的功能的代码块在该外部文件中的存放地址。根据存储该外部文件的地址以及待扩展功能的代码块和实现扩展的功能的代码块在该外部文件中的存放地址,为所述dex文件构建调用该外部文件的调用指令,将这个调用指令的代码添加到所述dex文件中相应的位置处。
步骤106:使所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
其中,由于dex文件的结构关系(例如,dex文件头包括校验以及其他结构的偏移地址和长度信息等),所以,不能直接根据需要对dex文件中的代码进行修改、添加或者删除,否则,代码所占空间(代码的长度)发生变化会引起其他结构偏移地址和长度信息等信息发生变化,当dex文件被执行时就会出错。因此,还要保证所述运行时将不被执行的代码块和调用指令的代码所占空间的总和与原dex文件中待扩展功能的代码块所占空间相同。
完成以上步骤后,当程序运行到运行时将不被执行的代码块和调用指令的位置处时,程序直接启动调用指令,查找存放待扩展功能的代码块和实现扩展的功能的代码块的外部文件,并查找到与该位置处相应的待扩展功能的代码块和实现扩展的功能的代码块,执行待扩展功能的代码块和实现扩展的功能的代码块。
本发明实施例提供了一种对Android应用程序扩展功能的方法,通过将需要扩展功能的代码块和实现扩展的功能的代码块存放在外部文件中,并用随机代码和调用外部文件的调用指令替换掉原来需要扩展功能的代码块,从而实现了对Android应用程序的功能的扩展,提高了Android应用程序的开发效率。
进一步地,本发明实施例中采用JAR格式的文件作为存放待扩展功能的代码块和实现扩展的功能的代码块的外部文件。
其中,JAR(Java Archive,Java归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。JAR文件格式以流行的ZIP文件格式为基础。可被编译器、JVM(Java Virtual Machine,Java虚拟机)等工具直接使用。
进一步地,本发明实施例中,提供了一种使运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间相同的方法,如图2所示,该方法包括:
步骤201:检测所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间是否相同。
具体地,首先获得运行时将不被执行的代码块所占空间的大小,然后获得调用指令的代码所占空间的大小,计算运行时将不被执行的代码块和调用指令的代码所占空间的总和,判断运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间是否相同。
步骤202:如果否,则对所述运行时将不被执行的代码块进行修改,使得修改后的运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
具体地,当运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间不同时,计算运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间之差,根据计算的结果,对运行时将不被执行的代码块中的代码进行增添或删除,使得运行时将不被执行的代码块和调用指令的代码所占空间的总和与待扩展功能的代码块所占空间相同。
本发明实施例提供了一种对Android应用程序扩展功能的装置,如图3所示,所述装置包括:文件获得模块301,用于获得所述Android应用程序的安装包中的dex文件。代码块获得模块302,用于从所述文件获得模块301获得的dex文件中获得待扩展功能的代码块。构建模块303,用于根据用于Android系统的dex文件的编码规则构建运行时将不被执行的代码块。替换模块304,用于将所述dex文件中的待扩展功能的代码块替换成所述构建模块303构建的运行时将不被执行的代码块。调用指令添加模块305,用于在所述运行时将不被执行的代码块的前面或者后面添加调用指令的代码,所述调用指令调用包含所述代码块获得模块302获得的待扩展功能的代码块和实现扩展的功能的代码块的外部文件。调整模块306,用于使所述运行时将不被执行的代码块和所述调用指令添加模块305添加的调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
进一步地,本发明实施例中采用JAR格式的文件作为存放待扩展功能的代码块和实现扩展的功能的代码块的外部文件。
进一步地,如图4所示,该对Android应用程序扩展功能的装置中的调整模块306包括:检测模块401,用于检测所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间是否相同。修改模块402,用于根据所述检测模块401的检测结果,在所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间不相同时,对所述运行时将不被执行的代码块进行修改,使修改后的运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
本发明提供了一种对Android应用程序扩展功能的方法及装置,通过将需要扩展功能的代码块和实现扩展的功能的代码块存放在外部文件中,并用随机代码和调用外部文件的调用指令替换掉原来需要扩展功能的代码块,从而实现了对Android应用程序的功能的扩展,提高了Android应用程序的开发效率。
显然,本领域技术人员应该明白,上述的本发明的各模块或各步骤可以通过如上所述的装置实施。可选地,本发明实施例可以用计算机装置可执行的程序来实现,从而可以将它们存储在存储装置中由处理器来执行,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等;或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
以上仅是针对本发明的优选实施例及其技术原理所做的说明,而并非对本发明的技术内容所进行的限制,任何熟悉本技术领域的技术人员在本发明所公开的技术范围内,所容易想到的变化或替换,都应涵盖在本发明的保护范围内。
Claims (6)
1.一种对Android应用程序扩展功能的方法,其特征在于,所述方法包括:
获得所述Android应用程序的安装包中的dex文件;
从所述dex文件中获得待扩展功能的代码块;
根据用于Android系统的dex文件的编码规则构建运行时将不被执行的代码块;
将所述dex文件中的待扩展功能的代码块替换成所述运行时将不被执行的代码块;
在所述运行时将不被执行的代码块的前面或者后面添加调用指令的代码,所述调用指令调用包含所述待扩展功能的代码块和实现扩展的功能的代码块的外部文件;
使所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
2.根据权利要求1所述的对Android应用程序扩展功能的方法,其特征在于,所述外部文件为JAR格式的文件。
3.根据权利要求1所述的对Android应用程序扩展功能的方法,其特征在于,所述使所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同,包括:
检测所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间是否相同;
如果否,则对所述运行时将不被执行的代码块进行修改,使得修改后的在运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
4.一种对Android应用程序扩展功能的装置,其特征在于,所述装置包括:
文件获得模块,用于获得所述Android应用程序的安装包中的dex文件;
代码块获得模块,用于从所述文件获得模块获得的dex文件中获得待扩展功能的代码块;
构建模块,用于根据用于Android系统的dex文件的编码规则构建运行时将不被执行的代码块;
替换模块,用于将所述dex文件中的待扩展功能的代码块替换成所述构建模块构建的运行时将不被执行的代码块;
调用指令添加模块,用于在所述运行时将不被执行的代码块的前面或者后面添加调用指令的代码,所述调用指令调用包含所述代码块获得模块获得的待扩展功能的代码块和实现扩展的功能的代码块的外部文件;
调整模块,用于使所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
5.根据权利要求4所述的对Android应用程序扩展功能的装置,其特征在于,所述外部文件为JAR格式的文件。
6.根据权利要求4所述的对Android应用程序扩展功能的装置,其特征在于,所述调整模块包括:
检测模块,用于检测所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间是否相同;
修改模块,用于根据所述检测模块的检测结果,在所述运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间不相同时,对所述运行时将不被执行的代码块进行修改,使修改后的在运行时将不被执行的代码块和所述调用指令的代码所占空间的总和与所述待扩展功能的代码块所占空间相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410064973.1A CN104866293B (zh) | 2014-02-25 | 2014-02-25 | 一种对Android应用程序扩展功能的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410064973.1A CN104866293B (zh) | 2014-02-25 | 2014-02-25 | 一种对Android应用程序扩展功能的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104866293A true CN104866293A (zh) | 2015-08-26 |
CN104866293B CN104866293B (zh) | 2018-04-03 |
Family
ID=53912146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410064973.1A Active CN104866293B (zh) | 2014-02-25 | 2014-02-25 | 一种对Android应用程序扩展功能的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104866293B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468973A (zh) * | 2015-11-18 | 2016-04-06 | 中国地质大学(武汉) | 安卓系统下基于dex文件空域的信息隐藏方法 |
CN105574371A (zh) * | 2015-12-14 | 2016-05-11 | 中国地质大学(武汉) | 基于文本水印的安卓应用程序信息隐藏与软件保护方法 |
WO2017185606A1 (zh) * | 2016-04-29 | 2017-11-02 | 乐视控股(北京)有限公司 | 基于overlay机制的APK开发方法及系统 |
CN108073406A (zh) * | 2018-01-05 | 2018-05-25 | 世纪龙信息网络有限责任公司 | 生成主Dex的方法及装置 |
CN108595187A (zh) * | 2018-03-27 | 2018-09-28 | 北京美好人生伙伴信息技术有限公司 | 安卓安装包集成软件开发工具包的法、装置及存储介质 |
WO2019001335A1 (zh) * | 2017-06-29 | 2019-01-03 | 广州优视网络科技有限公司 | 应用程序打包方法、装置及终端设备 |
CN109918059A (zh) * | 2017-12-13 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 应用的功能扩展方法、装置、终端设备和存储介质 |
CN110377367A (zh) * | 2019-07-24 | 2019-10-25 | 广州虎牙科技有限公司 | 组件配置方法、装置、电子终端及计算机可读存储介质 |
CN114579056A (zh) * | 2022-03-11 | 2022-06-03 | 联想开天科技有限公司 | 一种系统的分区方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101266549A (zh) * | 2008-03-19 | 2008-09-17 | 华为技术有限公司 | 插入代码的方法、装置及存储介质 |
DE102008044808A1 (de) * | 2007-10-15 | 2009-04-16 | Giesecke & Devrient Gmbh | Verfahren zur Generierung von Programmcode in einem Betriebssystemspeicher und einem Applikationsspeicher eines Datenträgers |
CN101719077A (zh) * | 2009-12-24 | 2010-06-02 | 北京飞天诚信科技有限公司 | 在.Net程序中注入代码的方法和装置 |
CN102279789A (zh) * | 2010-06-13 | 2011-12-14 | 三星电子(中国)研发中心 | 生产阶段嵌入式系统的调试系统及其调试方法 |
CN103544414A (zh) * | 2013-10-25 | 2014-01-29 | 苏州通付盾信息技术有限公司 | 一种Android系统应用的深度代码混淆方法 |
-
2014
- 2014-02-25 CN CN201410064973.1A patent/CN104866293B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008044808A1 (de) * | 2007-10-15 | 2009-04-16 | Giesecke & Devrient Gmbh | Verfahren zur Generierung von Programmcode in einem Betriebssystemspeicher und einem Applikationsspeicher eines Datenträgers |
CN101266549A (zh) * | 2008-03-19 | 2008-09-17 | 华为技术有限公司 | 插入代码的方法、装置及存储介质 |
CN101719077A (zh) * | 2009-12-24 | 2010-06-02 | 北京飞天诚信科技有限公司 | 在.Net程序中注入代码的方法和装置 |
CN102279789A (zh) * | 2010-06-13 | 2011-12-14 | 三星电子(中国)研发中心 | 生产阶段嵌入式系统的调试系统及其调试方法 |
CN103544414A (zh) * | 2013-10-25 | 2014-01-29 | 苏州通付盾信息技术有限公司 | 一种Android系统应用的深度代码混淆方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468973A (zh) * | 2015-11-18 | 2016-04-06 | 中国地质大学(武汉) | 安卓系统下基于dex文件空域的信息隐藏方法 |
CN105468973B (zh) * | 2015-11-18 | 2018-11-27 | 中国地质大学(武汉) | 安卓系统下基于dex文件空域的信息隐藏方法 |
CN105574371A (zh) * | 2015-12-14 | 2016-05-11 | 中国地质大学(武汉) | 基于文本水印的安卓应用程序信息隐藏与软件保护方法 |
CN105574371B (zh) * | 2015-12-14 | 2018-11-16 | 中国地质大学(武汉) | 基于文本水印的安卓应用程序信息隐藏与软件保护方法 |
WO2017185606A1 (zh) * | 2016-04-29 | 2017-11-02 | 乐视控股(北京)有限公司 | 基于overlay机制的APK开发方法及系统 |
WO2019001335A1 (zh) * | 2017-06-29 | 2019-01-03 | 广州优视网络科技有限公司 | 应用程序打包方法、装置及终端设备 |
CN109918059A (zh) * | 2017-12-13 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 应用的功能扩展方法、装置、终端设备和存储介质 |
CN109918059B (zh) * | 2017-12-13 | 2022-05-27 | 阿里巴巴集团控股有限公司 | 应用的功能扩展方法、装置、终端设备和存储介质 |
CN108073406A (zh) * | 2018-01-05 | 2018-05-25 | 世纪龙信息网络有限责任公司 | 生成主Dex的方法及装置 |
CN108595187A (zh) * | 2018-03-27 | 2018-09-28 | 北京美好人生伙伴信息技术有限公司 | 安卓安装包集成软件开发工具包的法、装置及存储介质 |
CN110377367A (zh) * | 2019-07-24 | 2019-10-25 | 广州虎牙科技有限公司 | 组件配置方法、装置、电子终端及计算机可读存储介质 |
CN110377367B (zh) * | 2019-07-24 | 2022-05-03 | 广州虎牙科技有限公司 | 组件配置方法、装置、电子终端及计算机可读存储介质 |
CN114579056A (zh) * | 2022-03-11 | 2022-06-03 | 联想开天科技有限公司 | 一种系统的分区方法、装置及电子设备 |
CN114579056B (zh) * | 2022-03-11 | 2023-08-08 | 联想开天科技有限公司 | 一种系统的分区方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104866293B (zh) | 2018-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104866293A (zh) | 一种对Android应用程序扩展功能的方法及装置 | |
CN109933348B (zh) | 一种电子控制单元中Bootloader的更新方法和装置 | |
CN105511911B (zh) | 系统固件升级包的生成方法及装置 | |
CN107391104B (zh) | 一种客户端与react native代码的更新依赖管理方法、装置及系统 | |
CN110083360B (zh) | 一种应用程序代码的编译方法、装置、设备及存储介质 | |
CN107506219A (zh) | 一种基于Android系统的通用版本升级方法 | |
CN109933350B (zh) | 在应用中嵌入代码的方法、装置及电子设备 | |
CN109144519B (zh) | 升级包的生成方法、装置、计算机设备和存储介质 | |
CN105335181A (zh) | 一种实现ota升级的方法和终端 | |
CN106293849B (zh) | 一种应用更新方法和终端 | |
WO2016162075A1 (en) | Removing library objects from a static library | |
CN109032617B (zh) | 一种自动删除安装包的控制方法及控制装置 | |
EP3698253A1 (en) | System and method for managing program memory on a storage device | |
CN113504918A (zh) | 设备树配置优化方法、装置、计算机设备和存储介质 | |
CN112451972A (zh) | 基于游戏引擎的资源压缩包构建方法、装置、系统及介质 | |
CN111400256B (zh) | 一种应用程序调用资源文件的方法及装置 | |
US8413132B2 (en) | Techniques for resolving read-after-write (RAW) conflicts using backup area | |
CN106293790B (zh) | 基于Firefox操作系统的应用程序升级方法和装置 | |
CN104484207A (zh) | 交换机的镜像升级方法及适用的linux操作系统和交换机 | |
CN111880803B (zh) | 一种应用于多平台的软件构建方法及装置 | |
CN112631613A (zh) | 基于区块链平台的智能合约部署和调用方法及相关设备 | |
CN107301105B (zh) | 校验热补丁或者动态库的方法及装置 | |
CN107124446A (zh) | 应用程序下载方法、服务器及终端 | |
CN108536444B (zh) | 插件编译方法、装置、计算机设备和存储介质 | |
CN116185742A (zh) | 处理器芯片性能测试方法和测试装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |