基于安卓系统的静默式升级方法及系统的制作方法
【专利摘要】本发明涉及一种基于安卓系统的软件静默式升级方法及系统,所述客户端启动后向所述服务器端发送所述调用模块和各个所述子模块的版本信息,所述服务器端根据接收的所述调用模块和所述子模块的版本信息判断所述调用模块和所述子模块是否需要升级,若需要升级,则向所述客户端发送升级信息,所述客户端根据升级信息下载升级文件,所述客户端判断所述子模块是否正被调用,若所述子模块正被调用,则将下载的升级文件存储为临时文件,所述子模块下次被调用前将临时文件替换为相应所述子模块文件或者增加到客户端中;若所述子模块未被调用,则将下载的升级文件替换为所述子模块文件;所述调用模块的升级文件在下次启动前将临时文件替换为所述调用模块的文件。
【专利说明】基于安卓系统的静默式升级方法及系统
【技术领域】
[0001]本发明涉及一种基于安卓系统静默式升级方法及系统,尤其涉及一种基于安卓系统将一个软件分为多个子模块进行升级的静默式升级方法及系统。
【背景技术】
[0002]随着移动通讯终端的革命性变革,安卓系统在移动终端上得到了广泛应用。在安卓系统中,通常整个安卓软件为一个安卓文件,运行时将整个安卓软件装载到内存。这种方式需要占用大量内存,给安卓系统的运行带来较大的负担。特别是安卓系统中,文件的更新,通常需要预先提示更新,更新时退出安卓软件进行下载,然后进行更新版本安装替换老版本系统。即,目前安卓系统的软件升级在整个安卓软件运行过程中是不能完成的,而需要退出后进行替换更新,对于更新频繁的安卓软件,即使更新很少的部分,每次也需要下载整个文件,耗费大量流量,对于移动通讯终端而言,造成极大的浪费。给用户体验效果也不友好,对于硬件性能和软件功能发展,APK应用包越来越大,下载时间也比较长,静默升级让用户操作最大人性化。
【发明内容】
[0003]本发明解决的技术问题是:构建一种基于安卓系统静默式升级方法及系统,克服现有技术安卓系统的运行软件运行占用内存大、软件升级需要退出后替换更新,同时更新下载整体文件耗费大量流量的技术问题。
[0004]本发明的技术方案是:构建一种基于安卓系统的软件静默式升级方法,包括服务器端、客户端,所述客户端包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块的调用模块,所述调用模块和所述子模块均包括各自的版本信息,所述软件静默式升级方法包括如下步骤:
所述客户端启动后向所述服务器端发送所述调用模块和各个所述子模块的版本信息,所述服务器端根据接收的所述调用模块和所述子模块的版本信息判断所述调用模块和所述子模块是否需要升级,若需要升级,则向所述客户端发送升级信息,所述客户端根据升级信息下载升级文件,所述客户端判断所述子模块是否正被调用,若所述子模块正被调用,则将下载的升级文件存储为临时文件,正在被调用的所述子模块下次被调用前将临时文件替换为相应所述子模块文件;若所述子模块未被调用,则将下载的升级文件替换为所述子模块文件或者增加到所述客户端中;所述调用模块的升级文件在下次启动前将临时文件替换为所述调用模块的文件。
[0005]本发明的进一步技术方案是:将一个安卓软件分割为一个或多个子模块以及调用所述子模块的调用模块步骤中,包括将一个后缀为.apk的安卓文件分割为一个或多个子模块以及调用所述子模块的调用模块。
[0006]本发明的进一步技术方案是:所述服务器端判断所述调用模块和所述子模块是否需要升级后,若需要升级,则组织升级信息列表,向所述客户端发送升级信息列表,所述客户端根据升级信息列表下载升级文件。
[0007]本发明的进一步技术方案是:按使用功能将一个安卓软件分割为一个或多个功能子模块。
[0008]本发明的进一步技术方案是:按升级频率将一个安卓软件分割为一个或多个子模块。
[0009]本发明的技术方案是:提供一种基于安卓系统的软件静默式升级系统,包括服务器端、客户端,所述客户端包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块的调用模块,所述调用模块和所述子模块均包括各自的版本信息,所述服务器端包括第一升级模块,所述客户端包括对所述调用模块和所述子模块进行升级的第二升级模块、替换模块,所述客户端启动后向所述服务器端发送所述调用模块和各个所述子模块的版本信息,所述第一升级模块根据接收的所述调用模块和所述子模块的版本信息判断所述调用模块和所述子模块是否需要升级,若需要升级,所述第一升级模块则向所述第二升级模块发送升级信息,所述第二升级模块根据升级信息下载升级文件,所述第二升级模块判断所述子模块是否正被调用,若所述子模块正被调用,则所述第二升级模块将下载的升级文件存储为临时文件,正在被调用的所述子模块下次被调用前所述替换模块将临时文件替换为相应所述子模块文件;若所述子模块未被调用,则所述替换模块将下载的升级文件替换为所述子模块文件或者增加到客户端中;所述调用模块的升级文件在所述调用模块下次启动前,所述替换模块将临时文件替换为所述调用模块的文件。
[0010]本发明的进一步技术方案是:所述一个或多个子模块以及调用模块为一个后缀为.apk的安卓文件分割而成。
[0011]本发明的进一步技术方案是:所述服务器端包括组织升级信息列表的升级组织模块。
[0012]本发明的进一步技术方案是:所述一个或多个子模块为根据软件功能分割的功能子模块。
[0013]本发明的进一步技术方案是:所述一个或多个子模块为根据升级频率分割的子模块。
[0014]本发明的技术效果是:构建一种基于安卓系统的软件静默式升级方法及系统,包括服务器端、客户端,所述客户端包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块的调用模块,所述调用模块和所述子模块均包括各自的版本信息,所述软件静默式升级方法包括如下步骤:所述客户端启动后向所述服务器端发送所述调用模块和各个所述子模块的版本信息,所述服务器端根据接收的所述调用模块和所述子模块的版本信息判断所述调用模块和所述子模块是否需要升级,若需要升级,则向所述客户端发送升级信息,所述客户端根据升级信息下载升级文件,所述客户端判断所述子模块是否正被调用,若所述子模块正被调用,则将下载的升级文件存储为临时文件,正在被调用的所述子模块下次被调用前将临时文件替换为相应所述子模块文件;若所述子模块未被调用,则将下载的升级文件替换为所述子模块文件或者增加到所述客户端中;所述调用模块的升级文件在下次启动前将临时文件替换为所述调用模块的文件。本发明的基于安卓系统的软件静默式升级方法及系统,运行时,根据指示调用相应子模块运行,节省内存空间;升级时,根据各自模块的版本信息,判断各模块是否升级,然后下载相应需要升级模块的升级文件进行后台替换。升级过程中,对于非启用程序,不需要提示,在后台即完成相应模块的升级。
【专利附图】
【附图说明】
[0015]图1为本发明的结构示意框图。
[0016]图2为本发明的流程图。
【具体实施方式】
[0017]下面结合具体实施例,对本发明技术方案进一步说明。
[0018]如图1、图2所示,本发明的【具体实施方式】是:构建一种基于安卓系统的软件静默式升级方法,包括服务器端1、客户端2,所述客户端2包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块21的调用模块22,所述调用模块22和所述子模块21均包括各自的版本信息,所述软件静默式升级方法包括如下步骤:
所述客户端2启动后向所述服务器端I发送所述调用模块22和各个所述子模块21的版本信息,所述服务器端I根据接收的所述调用模块22和所述子模块11的版本信息判断所述调用模块22和所述子模块21是否需要升级,若需要升级,则向所述客户端2发送升级信息,所述客户端I根据升级信息下载升级文件,所述客户端2判断所述子模块21是否正被调用,若所述子模块21正被调用,则将下载的升级文件存储为临时文件,正在被调用的所述子模块21下次被调用前将临时文件替换为相应所述子模块文件;若所述子模块21未被调用,则将下载的升级文件替换为所述子模块文件;所述调用模块22的升级文件在下次启动前将临时文件替换为所述调用模块22的文件。
[0019]如图1、图2所示,本发明的具体实施过程是:构建一种基于安卓系统的软件静默式升级方法,包括服务器端1、客户端2。所述客户端2包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块21的调用模块22,分割安卓软件时,可以按使用功能将一个安卓软件分割为一个或多个功能子模块,也可以按升级频率将一个安卓软件分割为一个或多个子模块。在使用时所述调用模块22根据指示调用相应子模块运行。所述调用模块22和所述子模块21均包括各自的版本信息,具体实施例中,所述调用模块22和所述子模块21的文件中均设置有版本信息部分,在使用时,读取该部分的版本信息,确定各模块的版本。所述软件静默式升级方法包括如下步骤:所述客户端2启动后,检查各个模块,包括所述调用模块22和各个所述子模块21。然后读取各个模块的版本信息,向所述服务器端I发送所述调用模块22和各个所述子模块21的版本信息。所述服务器端I根据接收的所述调用模块22和所述子模块21的版本信息判断所述调用模块22和所述子模块21是否需要升级,若需要升级,则向所述客户端2发送升级信息,所述升级信息包括各个模块的下载链接信息,所述客户端I根据升级信息下载升级文件。升级文件下载后,所述客户端2判断所述子模块21是否正被调用,若所述子模块21正被调用,则将下载的升级文件存储为临时文件,正在被调用的所述子模块21下次被调用前将临时文件替换为相应所述子模块文件;若所述子模块21未被调用,则将下载的升级文件替换为所述子模块文件,对于图片文件或其它资源文件,将其添加到客户端相应位置以备使用;所述调用模块22的升级文件在下次启动前将临时文件替换为所述调用模块22的文件。每个分割的所述子模块21都需要有自身的内部版本信息。每个分割所述子模块21业务逻辑独立设计,所述子模块21与所述子模块21之间利用预先设计好的接口进行通信;每个分割所述子模块21都可以由调用模块22单独调用,相关联所述子模块21也可以相互调用。
[0020]如图1、图2所示,本发明的优选实施方式是:将一个安卓软件分割为一个或多个子模块21以及调用所述子模块21的调用模块22步骤中,包括将一个后缀为.apk的安卓文件分割为一个或多个子模块21以及调用所述子模块的调用模块22。具体实施例中,将一个后缀为.apk的安卓文件分割为一个或多个子模块21以及调用所述子模块的调用模块22,同时,将各个模块的版本信息封装到各个模块中,使用时,根据指示调用相应模块,不需要启动全部文件。
[0021]如图1、图2所示,本发明的优选实施方式是:所述服务器端I判断所述调用模块22和所述子模块21是否需要升级后,若需要升级,则组织升级信息列表,向所述客户端2发送升级信息列表,所述客户端2根据升级信息列表下载升级文件。具体实施例中,将各个模块的升级信息构建为升级信息列表,所述服务器端I将升级信息列表发送到所述客户端2,所述客户端2根据升级信息列表下载升级文件。
[0022]如图1、图2所示,本发明的【具体实施方式】是:提供一种基于安卓系统的软件静默式升级系统,包括服务器端1、客户端2,所述客户端2包括由一个安卓软件分割为一个或多个的子模块21以及调用所述子模块21的调用模块22,所述调用模块22和所述子模块21均包括各自的版本信息,所述服务器端I包括第一升级模块11,所述客户端2包括对所述调用模块22和所述子模块21进行升级的第二升级模块23、替换模块24,所述客户端2启动后向所述服务器端I发送所述调用模块22和各个所述子模块21的版本信息,所述第一升级模块11根据接收的所述调用模块22和各个所述子模块21的版本信息判断所述调用模块22和各个所述子模块21是否需要升级,若需要升级,所述第一升级模块11则向所述第二升级模块23发送升级信息,所述第二升级模块23根据升级信息下载升级文件,所述第二升级模块23判断所述子模块21是否正被调用,若所述子模块21正被调用,则所述第二升级模块23将下载的升级文件存储为临时文件,正在被调用的所述子模块21下次被调用前所述替换模块将临时文件替换为相应子模块文件;若所述子模块21未被调用,则所述替换模块24将下载的升级文件替换为所述子模块文件;所述调用模块22的升级文件在下次启动前,所述替换模块24将临时文件替换为所述调用模块22的文件。
[0023]如图1、图2所示,本发明的具体实施过程是:构建一种基于安卓系统的软件静默式升级系统,包括服务器端1、客户端2。所述客户端2包括由一个安卓软件分割为一个或多个的子模块21以及调用所述子模块21的调用模块22,分割安卓软件时,可以按使用功能将一个安卓软件分割为一个或多个功能子模块,也可以按升级频率将一个安卓软件分割为一个或多个子模块。所述调用模块22和所述子模块21均包括各自的版本信息,所述服务器端I包括第一升级模块11,所述客户端2包括对所述调用模块22和所述子模块21进行升级的第二升级模块23、替换模块24。在使用时所述调用模块22根据指示调用相应子模块运行。所述调用模块22和所述子模块21均包括各自的版本信息,具体实施例中,所述调用模块22和所述子模块21的文件中均设置有版本信息部分,在使用时,读取该部分的版本信息,确定各模块的版本。所述软件静默式升级方法包括如下步骤:所述客户端2启动后,检查各个模块的版本信息,包括所述调用模块22和各个所述子模块21的版本信息。然后读取各个模块的版本信息,向所述服务器端I的第一升级模块11发送所述调用模块22和各个所述子模块21的版本信息。所述第一升级模块11根据接收的所述调用模块22和所述子模块11的版本信息判断所述调用模块22和所述子模块21是否需要升级,若需要升级,则向所述客户端2的第二升级模块23发送升级信息,所述升级信息包括各个模块的下载链接信息,所述第二升级模块23根据升级信息下载升级文件。升级文件下载后,所述第二升级模块23判断所述子模块21是否正被调用,若所述子模块21正被调用,则第二升级模块23将下载的升级文件存储为临时文件,所述子模块21下次被调用前由替换模块24将临时文件替换为相应子模块文件;若所述子模块21未被调用,则由替换模块24将下载的升级文件替换为子模块文件,对于图片文件或其它资源文件,将其添加到客户端2相应位置以备使用;所述调用模块22的升级文件在下次启动前由替换模块24将临时文件替换为所述调用模块22的文件。
[0024]如图1、图2所示,本发明的优选实施方式是:将一个安卓软件分割为一个或多个子模块21以及调用所述子模块21的调用模块22步骤中,包括将一个后缀为.apk的安卓文件分割为一个或多个子模块21以及调用所述子模块的调用模块22。具体实施例中,将一个后缀为.apk的安卓文件分割为一个或多个子模块21以及调用所述子模块的调用模块22,同时,将各个模块的版本信息封装到各个模块中,使用时,根据指示调用相应模块,不需要启动全部文件。
[0025]如图1、图2所示,本发明的优选实施方式是:所述服务器端I的第一升级模块11判断所述调用模块22和所述子模块21是否需要升级后,若需要升级,则组织升级信息列表,向所述客户端2的第二升级模块23发送升级信息列表,所述客户端2的第二升级模块23根据升级信息列表下载升级文件。具体实施例中,将各个模块的升级信息构建为升级信息列表,所述服务器端I将升级信息列表发送到所述客户端2的第二升级模块23,所述客户端2的第二升级模块23根据升级信息列表下载升级文件。
[0026]本发明的技术效果是:构建一种基于安卓系统的软件静默式升级方法及系统,包括服务器端1、客户端2,所述客户端2包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块21的调用模块22,所述调用模块22和所述子模块21均包括各自的版本信息,所述软件静默式升级方法包括如下步骤:所述客户端2启动后向所述服务器端I发送所述调用模块22和各个所述子模块21的版本信息,所述服务器端I根据接收的所述调用模块22和所述子模块11的版本信息判断所述调用模块22和所述子模块21是否需要升级,若需要升级,则向所述客户端2发送升级信息,所述客户端I根据升级信息下载升级文件,所述客户端2判断所述子模块21是否正被调用,若所述子模块21正被调用,则将下载的升级文件存储为临时文件,所述子模块21下次被调用前将临时文件替换为相应所述子模块文件;若所述子模块21未被调用,则将下载的升级文件替换为所述子模块文件;所述调用模块22的升级文件在下次启动前将临时文件替换为所述调用模块22的文件。本发明的基于安卓系统的软件静默式升级方法及系统,运行时,根据指示调用相应子模块运行,节省内存空间;升级时,根据各自模块的版本信息,判断各模块是否升级,然后下载相应需要升级模块的升级文件进行后台替换。升级过程中,对于非启用程序,不需要提示,在后台即完成相应模块的升级。
[0027]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属【技术领域】的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【权利要求】
1.一种基于安卓系统的软件静默式升级方法,其特征在于,包括服务器端、客户端,所述客户端包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块的调用模块,所述调用模块和所述子模块均包括各自的版本信息,所述软件静默式升级方法包括如下步骤: 所述客户端启动后向所述服务器端发送所述调用模块和各个所述子模块的版本信息,所述服务器端根据接收的所述调用模块和所述子模块的版本信息判断所述调用模块和所述子模块是否需要升级,若需要升级,则向所述客户端发送升级信息,所述客户端根据升级信息下载升级文件,所述客户端判断所述子模块是否正被调用,若所述子模块正被调用,则将下载的升级文件存储为临时文件,正在被调用的所述子模块下次被调用前将临时文件替换为相应所述子模块文件;若所述子模块未被调用,则将下载的升级文件替换为所述子模块文件或者增加到所述客户端中;所述调用模块的升级文件在下次启动前将临时文件替换为所述调用模块的文件。
2.根据权利要求1所述基于安卓系统的软件静默式升级方法,其特征在于,将一个安卓软件分割为一个或多个子模块以及调用所述子模块的调用模块步骤中,包括将一个后缀为.apk的安卓文件分割为一个或多个子模块以及调用所述子模块的调用模块。
3.根据权利要求1所述基于安卓系统的软件静默式升级方法,其特征在于,所述客户端服务启动时,向所述服务器端发送各模块版本验证信息,所述服务器端判断所述调用模块和所述子模块是否需要升级后,若需要升级,则组织升级信息列表,向所述客户端发送升级信息列表,所述客户端根据升级信息列表下载升级文件。
4.根据权利要求1所述基于安卓系统的软件静默式升级方法,其特征在于,按使用功能将一个安卓软件分割为一个或多个功能子模块。
5.根据权利要求1所述基于安卓系统的软件静默式升级方法,其特征在于,按升级频率将一个安卓软件分割为一个或多个子模块。
6.一种基于安卓系统的软件静默式升级系统,其特征在于,包括服务器端、客户端,所述客户端包括由一个安卓软件分割为一个或多个的子模块以及调用所述子模块的调用模块,所述调用模块和所述子模块均包括各自的版本信息,所述服务器端包括第一升级模块,所述客户端包括对所述调用模块和所述子模块进行升级的第二升级模块、替换模块,所述客户端启动后向所述服务器端发送所述调用模块和各个所述子模块的版本信息,所述第一升级模块根据接收的所述调用模块和所述子模块的版本信息判断所述调用模块和所述子模块是否需要升级,若需要升级,所述第一升级模块则向所述第二升级模块发送升级信息,所述第二升级模块根据升级信息下载升级文件,所述第二升级模块判断所述子模块是否正被调用,若所述子模块正被调用,则所述第二升级模块将下载的升级文件存储为临时文件,正在被调用的所述子模块下次被调用前所述替换模块将临时文件替换为相应所述子模块文件;若所述子模块未被调用,则所述替换模块将下载的升级文件替换为所述子模块文件或者增加到客户端中;所述调用模块的升级文件在所述调用模块下次启动前,所述替换模块将临时文件替换为所述调用模块的文件。
7.根据权利要求6所述基于安卓系统的软件静默式升级系统,其特征在于,所述一个或多个子模块以及调用模块为一个后缀为.apk的安卓文件分割而成。
8.根据权利要求6所述基于安卓系统的软件静默式升级系统,其特征在于,所述服务器端包括组织升级信息列表的升级组织模块。
9.根据权利要求6所述基于安卓系统的软件静默式升级系统,其特征在于,所述一个或多个子模块为根据软件功能分割的功能子模块。
10.根据权利要求6所述基于安卓系统的软件静默式升级系统,其特征在于,所述一个或多个子模块为根据升 级频率分割的子模块。
【文档编号】G06F9/445GK103902334SQ201410084484
【公开日】2014年7月2日 申请日期:2014年3月10日 优先权日:2014年3月10日
【发明者】李新超, 熊小平, 李争光 申请人:深圳市岚正科技有限公司