CN105812483A - 更新应用的方法、服务器及移动终端 - Google Patents
更新应用的方法、服务器及移动终端 Download PDFInfo
- Publication number
- CN105812483A CN105812483A CN201610251489.9A CN201610251489A CN105812483A CN 105812483 A CN105812483 A CN 105812483A CN 201610251489 A CN201610251489 A CN 201610251489A CN 105812483 A CN105812483 A CN 105812483A
- Authority
- CN
- China
- Prior art keywords
- nonsystematic
- application
- server
- mobile terminal
- relevant information
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Linguistics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种更新应用的方法,包括:服务器接收移动终端发送已安装的非***应用的相关信息;将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。本发明还公开了一种更新应用的服务器及移动终端。本发明提高了服务器进行应用更新的及时性及便捷性。
Description
技术领域
本发明涉及服务器技术领域,尤其涉及一种更新应用的方法、服务器及移动终端。
背景技术
目前,移动终端上使用的应用多种多样,而应用一般都存放在服务器。服务器上的应用来源主要有两种:一种是应用开发者通过浏览器注册账号后,通过移动终端对应的手持用户主动将该应用上传至服务器,服务器通过这种方式获取应用是在移动终端人为主动完成,不能保证服务器存储应用的数据库中数据是最新,即不能及时对服务器的应用进行及时更新。另一种是服务器通过爬虫技术从其他应用市场或者服务器爬取,对服务器存储的应用进行更新,服务器通过这种方式获取应用不仅不能及时更新应用,而且不够便捷。
发明内容
本发明的主要目的在于提供一种更新应用的方法、服务器及移动终端,旨在提高服务器进行应用更新的及时性及便捷性。
为实现上述目的,本发明提供了一种更新应用的服务器,包括:
第一接收模块,用于接收移动终端发送已安装的非***应用的相关信息;
匹配模块,用于将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;
发送模块,用于将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;
存储模块,用于接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。
可选地,所述相关信息及所述应用信息包括包名和版本号,所述匹配模块包括:
匹配单元,用于将所述非***应用的包名与所述数据库中存储的包名进行匹配,判断是否存在一致的包名;
处理单元,用于若所述非***应用的包名与所述数据库中存储的包名不存在一致的包名,则记录所述非***应用的包名及版本号;否则,将所述非***应用的版本号与所述数据库中存储的版本号进行比较,当所述非***应用的版本比所述数据库中的版本高时,记录所述非***应用的包名及版本号。
可选地,所述记录的相关信息包括记录的非***应用的包名,以及在所述非***应用对应的非***应用文件上传至所述服务器后,在所述服务器指定的存储路径及文件名,所述发送模块还用于,将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至所述移动终端,供所述移动终端根据所述非***应用的包名获取所述非***应用的安装路径,及根据所述安装路径获取非***应用文件,将所述非***应用文件打包并命名为在所述服务器指定的文件名后,发送至所述服务器指定的存储路径下。
此外,为实现上述目的,本发明还提供了一种移动终端,所述移动终端包括:
获取模块,用于获取已安装的非***应用的相关信息,将所述相关信息发送至服务器;
第二接收模块,用于接收所述服务器将所述相关信息与预置的数据库中的应用信息进行匹配后返回记录的相关信息;
反馈模块,用于根据接收到的所述记录的相关信息,向所述服务器反馈与所述记录的相关信息对应的非***应用文件,以对所述服务器数据库中的应用进行更新。
可选地,所述获取模块还用于,当侦测到在开机指令时,获取已安装的非***应用的相关信息,将所述相关信息发送至服务器;或者,
在连网的状态下安装非***应用后,获取当前已安装的非***应用的相关信息,将所述相关信息发送至服务器。
可选地,所述记录的相关信息包括记录的非***应用的包名,以及在所述非***应用对应的非***应用文件上传至所述服务器后,在所述服务器指定的存储路径及文件名,所述反馈模块包括:
获取单元,用于根据接收到的所述记录的非***应用的包名获取所述非***应用的安装路径;
打包单元,用于根据所述安装路径获取所述非***应用文件,将所述非***应用文件进行打包并命名为在所述服务器存储的文件名;
反馈单元,用于将命名后的所述非***应用文件反馈至所述服务器指定的存储路径下。
此外,为实现上述目的,本发明还提供了一种更新应用的方法,所述更新应用的方法包括以下步骤:
服务器接收移动终端发送已安装的非***应用的相关信息;
将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;
将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;
接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。
可选地,所述相关信息及所述应用信息包括包名和版本号,将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息包括:
将所述非***应用的包名与所述数据库中存储的包名进行匹配,判断是否存在一致的包名;
若不存在,则记录所述非***应用的包名及版本号;
若存在,则将所述非***应用的版本号与所述数据库中存储的版本号进行比较,当所述非***应用的版本比所述数据库中的版本高时,记录所述非***应用的包名及版本号。
可选地,所述接收移动终端发送已安装的非***应用的相关信息包括:
接收所述移动终端在开机时,发送已安装的非***应用的相关信息;或者,接收所述移动终端在连网的状态下安装非***应用后,发送当前已安装的非***应用的相关信息。
可选地,所述记录的相关信息包括记录的非***应用的包名,以及在所述非***应用对应的非***应用文件上传至所述服务器后,在所述服务器指定的存储路径及文件名,所述将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件包括:
将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至所述移动终端,供所述移动终端根据所述非***应用的包名获取所述非***应用的安装路径,及根据所述安装路径获取非***应用文件,将所述非***应用文件打包并命名为在所述服务器指定的文件名后,发送至所述服务器指定的存储路径下。
本发明实施例服务器通过将接收到移动终端发送已安装的非***应用的相关信息与预置的数据库中的应用信息进行匹配,记录数据库中不存在的相关信息并发送至移动终端,以使移动终端反馈与该记录的相关信息对应的非***应用文件,将该非***应用文件存储至所述数据库中指定的存储路径下,实现对数据库中的应用进行更新。从而增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
附图说明
图1为实现本发明各个实施例一个可选的移动终端的硬件结构示意图;
图2为如图1所示的移动终端的无线通信装置示意图;
图3为本发明更新应用的服务器一实施例的功能模块示意图;
图4为本发明移动终端一实施例的功能模块示意图;
图5为本发明更新应用的方法一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、笔记本电脑、PDA(个人数字助理)、PAD(平板电脑)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
图1为实现本发明各个实施例一个可选的移动终端的硬件结构示意图。
移动终端100可以包括无线通信单元110、接口单元120、用户输入单元130、输出单元140、存储器150、控制器160和电源单元170等等。图1示出了具有各种组件的移动终端,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端的元件。
无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信装置或网络之间的无线电通信。例如,无线通信单元可以包括移动通信模块111、无线互联网模块112和短程通信模块113中的至少一个。
移动通信模块111将无线电信号发送到基站(例如,接入点、节点B等等)、外部终端以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。
无线互联网模块112支持移动终端的无线互联网接入。该模块可以内部或外部地耦接到终端。该模块所涉及的无线互联网接入技术可以包括WLAN(无线LAN)(Wi-Fi)、Wibro(无线宽带)、Wimax(全球微波互联接入)、HSDPA(高速下行链路分组接入)等等。
短程通信模块113是用于支持短程通信的模块。短程通信技术的一些示例包括蓝牙TM、射频识别(RFID)、红外数据协会(IrDA)、超宽带(UWB)、紫蜂TM等等。
用户输入单元130可以根据用户输入的命令生成键输入数据以控制移动终端的各种操作。用户输入单元130允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触发板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等等。特别地,当触发板以层的形式叠加在显示单元141上时,可以形成触发屏。
接口单元120用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别模块可以是存储用于验证用户使用移动终端100的各种信息并且可以包括用户识别模块(UIM)、客户识别模块(SIM)、通用客户识别模块(USIM)等等。另外,具有识别模块的装置(下面称为“识别装置”)可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与移动终端100连接。接口单元120可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端和外部装置之间传输数据。
另外,当移动终端100与外部底座连接时,接口单元120可以用作允许通过其将电力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端是否准确地安装在底座上的信号。输出单元140被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、振动信号等等)。
输出单元140可以包括显示单元141,显示单元141可以显示在移动终端100中处理的信息。例如,当移动终端100处于电话通话模式时,显示单元141可以显示与通话或其它通信(例如,文本消息收发、多媒体文件下载等等)相关的用户界面(UI)或图形用户界面(GUI)。当移动终端100处于视频通话模式或者图像捕获模式时,显示单元141可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的UI或GUI等等。
同时,当显示单元141和触发板以层的形式彼此叠加以形成触发屏时,显示单元141可以用作输入装置和输出装置。显示单元141可以包括液晶显示器(LCD)、薄膜晶体管LCD(TFT-LCD)、有机发光二极管(OLED)显示器、柔性显示器、三维(3D)显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为TOLED(透明有机发光二极管)显示器等等。根据特定想要的实施方式,移动终端100可以包括两个或更多显示单元(或其它显示装置),例如,移动终端可以包括外部显示单元(未示出)和内部显示单元(未示出)。触发屏可用于检测触发输入压力以及触发输入位置和触发输入面积。
存储器150可以存储由控制器160执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储器150可以存储关于当触发施加到触发屏时输出的各种方式的振动和音频信号的数据。
存储器150可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。而且,移动终端100可以与通过网络连接执行存储器150的存储功能的网络存储装置协作。
控制器160通常控制移动终端的总体操作。例如,控制器160执行与语音通话、数据通信、视频通话等等相关的控制和处理。另外,控制器160可以包括用于再现(或回放)多媒体数据的多媒体模块161,多媒体模块161可以构造在控制器160内,或者可以构造为与控制器160分离。控制器160可以执行模式识别处理,以将在触发屏上执行的手写输入或者图片绘制输入识别为字符或图像。
电源单元170在控制器160的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器160中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器150中并且由控制器160执行。
至此,己经按照其功能描述了移动终端。下面,为了简要起见,将描述诸如折叠型、直板型、摆动型、滑动型移动终端等等的各种类型的移动终端中的滑动型移动终端作为示例。因此,本发明能够应用于任何类型的移动终端,并且不限于滑动型移动终端。
如图1中所示的移动终端100可以被构造为利用经由帧或分组发送数据的诸如有线和无线通信装置以及基于卫星的通信装置来操作。
现在将参考图2描述其中根据本发明的移动终端能够操作的通信装置。
这样的通信装置可以使用不同的空中接口和/或物理层。例如,由通信装置使用的空中接口包括例如频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)和通用移动通信装置(UMTS)(特别地,长期演进(LTE))、全球移动通信装置(GSM)等等。作为非限制性示例,下面的描述涉及CDMA通信装置,但是这样的教导同样适用于其它类型的装置。
参考图2,CDMA无线通信装置可以包括多个移动终端100、多个基站(BS)270、基站控制器(BSC)275和移动交换中心(MSC)280。MSC280被构造为与公共电话交换网络(PSTN)290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM,IP、PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的装置可以包括多个BSC275。
每个BS270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天线覆盖的每个分区放射状地远离BS270。或者,每个分区可以由用于分集接收的两个或更多天线覆盖。每个BS270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱(例如,1.25MHz,5MHz等等)。
分区与频率分配的交叉可以被称为CDMA信道。BS270也可以被称为基站收发器子装置(BTS)或者其它等效术语。在这样的情况下,术语“基站”可以用于笼统地表示单个BSC275和至少一个BS270。基站也可以被称为“蜂窝站”。或者,特定BS270的各分区可以被称为多个蜂窝站。
如图2中所示,广播发射器(BT)295将广播信号发送给在装置内操作的移动终端100。在图2中,示出了几个全球定位装置(GPS)卫星300。卫星300帮助定位多个移动终端100中的至少一个。
在图2中,描绘了多个卫星300,但是可以理解的是,可以利用任何数目的卫星获得有用的定位信息。替代GPS跟踪技术或者在GPS跟踪技术之外,可以使用可以跟踪移动终端的位置的其它技术。另外,至少一个GPS卫星300可以选择性地或者额外地处理卫星DMB传输。
作为无线通信装置的一个典型操作,BS270接收来自各种移动终端100的反向链路信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275。BSC提供通话资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270以将正向链路信号发送到移动终端100。
基于上述移动终端硬件结构、通信装置的结构,提出本发明方法各个实施例。
如图3所示,示出了本发明一种更新应用的服务器第一实施例。该实施例的更新应用的服务器包括:
第一接收模块11,用于接收移动终端发送已安装的非***应用的相关信息;
本实施例中,移动终端的类型可根据实际需要进行设置,例如,移动终端包括手机、ipad、电脑等。非***应用为移动终端内需要自行安装的应用,***应用为移动终端***自带的应用。
首先,移动终端在每次开机时,或在使用的过程中存在非***应用安装时,将会触发移动终端获取已安装的非***应用的相关信息。具体地,移动终端先获取***内所有的应用信息列表。应用信息列表包括应用的包名、版本号、安装时间、安装路径、是否是***应用等信息,这里的非***应用的相关信息可仅包括非***应用的包名和版本号。移动终端通过遍历应用信息列表,获取所有的非***应用的包名和版本号等信息,将得到的所有非***应用的相关信息发送至服务器,服务器由第一接收模块11接收移动终端发送的已安装的非***应用的相关信息。
匹配模块12,用于将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;
服务器接收到移动终端发送的非***应用的相关信息后,匹配模块12将非***应用的相关信息与预置的数据库中的应用信息进行匹配。具体地,相关信息包括非***应用的包名和版本号,首先匹配模块12根据非***应用的包名查询数据库,记录下数据库中不存储的非***应用的包名和版本号。为了方便后续移动终端上传非***应用文件至服务器存储,同时,还可以记录非***应用文件上传服务器后,将要在服务器存储的存储路径和文件名等信息。若在数据库中存在相同包名的应用,则将数据库中应用的版本号与移动终端发送过来的非***应用的版本号进行对比。若数据库中应用的版本号比较小,则说明移动终端中的非***应用的版本较高,此时记录该非***应用的包名和版本号,还可同时记录非***应用将要在服务器存储的存储路径和文件名等信息。当然,匹配模块12也可仅记录非***应用的包名和版本号,当移动终端上传非***应用文件至服务器后,服务器再为应用分配文件名及存储路径。
发送模块13,用于将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;
上述被记录的非***应用的相关信息包括包名、版本号,以及非***应用文件上传服务器后,在服务器的存储路径、文件名等,被记录的非***应用即表示移动终端中已安装的,而服务器的数据中没有的或版本较低应用。发送模块13将上述记录好的非***应用的相关信息发送至移动终端,说明需要移动终端将对应的非***应用文件上传至服务器。
需要说明的是,当移动终端发送非***应用的相关信息至服务器,服务器将非***应用的相关信息与数据库中的应用信息进行匹配后,可根据匹配结果设置标识。例如,若服务器没有记录有非***应用的相关信息,则说明没有需要移动终端上传的非***应用文件,用“0”作标识,将“0”返回给移动终端后,移动终端可获知不需要上传非***应用文件。若服务器记录有非***应用的相关信息,则说明需要移动终端上传相应的非***应用文件,用“1”作标识,将“1”返回给移动终端后,移动终端可获知需要上传非***应用文件。
移动终端在接收到服务器的返回数据后,若为0则说明不需要执行后续的步骤,即无需上传非***应用文件;若为1则移动终端根据非***应用的包名获取非***应用的安装路径,在该安装路径下获取相关文件命名为在服务器存储的指定的文件名,向服务器指定的存储路径发送命名好的非***应用文件。
存储模块14,用于接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。
服务器接收到移动终端根据记录的相关信息反馈的非***应用文件后,由存储模块14将非***应用文件存储至数据库中指定的存储路径下,更新数据库。若上述服务器未将存储路径及文件名返回给移动终端,则在移动终端不会将非***应用文件进行命名,及将非***应用文件写入指定的存储路径,此时存储模块14需要在接收到非***应用文件后,对非***应用文件进行命名,并移动至数据库中相应的存储路径下进行存储。
以下进行举例说明,在一实施例中,移动终端开机时,获取所有已安装的非***应用的包名和版本号,将包名和版本号发送至服务器。服务器接收到非***应用的包名和版本号后,先将非***应用的包名与数据库中的应用的包名进行匹配。根据非***应用的包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号,同时记录下该非***应用对应的文件上传服务器后,在服务器的存储路径及文件名;若存在,则根据非***应用的版本号与数据库中应用的版本号进行对比,当非***应用的版本比数据库中应用的版本高时,记录下该非***应用的包名和版本号,同时记录下。服务器将记录的非***应用的包名和版本号,以及非***应用上传服务器后,在服务器的存储路径及文件名,发送至移动终端。移动终端根据接收到的非***应用的包名获取该非***应用对应的安装路径,在安装路径下将非***应用文件打包并命名为接收到的文件名,并根据接收到的存储路径,将命名好的非***应用文件发送至服务器对应的存储路径。服务器接收到非***应用文件后,更新数据库中的应用。
在另一实施例中,移动终端在连网使用的过程中,当存在应用安装时,获取当前安装的非***应用的包名和版本号,将该包名和版本号发送至服务器。服务器接收到非***应用的包名和版本号后,先将非***应用的包名与数据库中的应用的包名进行匹配。根据非***应用的包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号,若存在,则根据非***应用的版本号与数据库中应用的版本号进行对比,当非***应用的版本比数据库中应用的版本高时,记录下该非***应用的包名和版本号。服务器将记录的非***应用的包名和版本号,发送至移动终端。移动终端根据接收到该非***应用的包名获取该非***应用对应的安装路径,在安装路径下获取非***应用文件打包后发送至服务器。服务器接收到非***应用文件后,对其进行命名,然后存储在相应的存储路径下,对数据库中的应用进行更新。
本发明实施例服务器通过将接收到移动终端发送已安装的非***应用的相关信息与预置的数据库中的应用信息进行匹配,记录数据库中不存在的相关信息并发送至移动终端,以使移动终端反馈与该记录的相关信息对应的非***应用文件,将该非***应用文件存储至所述数据库中指定的存储路径下,实现对数据库中的应用进行更新。从而增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
进一步地,提出了本发明更新应用的服务器第二实施例,本实施例与本发明更新应用的服务器第一实施例的区别是,仅对匹配模块12作具体描述,本发明更新应用的服务器所涉及的其他模块,请参照相关实施例的具体描述,在此不再赘述。为了提高服务器进行应用更新的便捷性及可靠性,该实施例中上述匹配模块12包括:
匹配单元,用于将所述非***应用的包名与所述数据库中存储的包名进行匹配,判断是否存在一致的包名;
处理单元,用于若所述非***应用的包名与所述数据库中存储的包名不存在一致的包名,则记录所述非***应用的包名及版本号;否则,将所述非***应用的版本号与所述数据库中存储的版本号进行比较,当所述非***应用的版本比所述数据库中的版本高时,记录所述非***应用的包名及版本号。
本实施例中,相关信息包括非***应用的包名和版本号,应用信息包括应用的包名和版本号。服务器接收到移动终端以json数组形式发送的非***应用的相关信息后,由匹配单元解析json数组得到一个信息列表,然后遍历这个信息列表依次获取各非***应用的包名,将非***应用的相关信息与预置的数据库中的应用信息进行匹配。该json数组为由一个或多个非***应用的包名和版本号封装而成的数组。
具体地,首先匹配单元获取信息列表中的第一个非***应用的包名(例如,com.android.a1)和版本号(例如,3),然后根据该包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则处理单元记录下该非***应用的包名和版本号。为了方便后续移动终端上传非***应用文件至服务器存储,同时,还可以记录非***应用文件上传至服务器后,将要在服务器存储的存储路径和文件名等信息。若在数据库中存在相同包名的应用,则处理单元获取该应用的版本号,将数据库中应用的版本号与移动终端发送过来的非***应用的版本号进行对比。若数据库中应用的版本号比较大,则说明数据库中应用的版本较高,此时处理单元不需要记录相关信息。若数据库中应用的版本号比较小,则说明移动终端中的非***应用的版本较高,此时处理单元记录该非***应用的包名和版本号,还可同时记录非***应用文件上传至服务器后,将要在服务器存储的存储路径和文件名等信息。当然,服务器也可仅记录非***应用的包名和版本号,当移动终端上传非***应用文件至服务器后,服务器再为非***应用文件分配文件名及存储路径。服务器继续获取信息列表中的下一个非***应用的包名及版本号按照上述方法进行对比,直至完成应用信息列表中所有非***应用的对比。
本实施例服务器通过将接收到的非***应用的包名和/或版本号与数据库中存储的包名和/或版本号进行匹配,记录数据库中不存在的包名和/或版本号对应的非***应用的包名及版本号等信息,以便将记录的信息发送至移动终端,使移动终端反馈相应的非***应用文件,提高了服务器进行应用更新的便捷性及可靠性。
进一步地,提出了本发明更新应用的服务器第三实施例,本实施例与本发明更新应用的服务器第一实施例的区别是,仅对第一接收模块11作具体描述,本发明更新应用的服务器所涉及的其他模块,请参照相关实施例的具体描述,在此不再赘述。为了增加服务器更新应用的通道,提高服务器进行应用更新的及时性,该实施例中上述第一接收模块11还用于,接收所述移动终端在开机时,发送已安装的非***应用的相关信息;或者,接收所述移动终端在连网的状态下安装非***应用后,发送当前已安装的非***应用的相关信息。
移动终端在每次开机时,接收到开机指令,将会触发移动终端获取已安装的非***应用的相关信息。或者是移动终端开机后,在使用的过程中存在非***应用安装时,获取当前已安装的非***应用的相关信息。具体地,移动终端通过程序中预置的安装标准类函数PackageManager中的getInstalledPackages()方法获取到所有已安装的应用信息列表PackageInfo。应用信息列表PackageInfo是Android提供的标准类,包含了应用的详细信息,该详细信息包括应用的包名、版本号、安装时间、安装路径、是否是***应用等信息,这里的非***应用的相关信息包括非***应用的包名和版本号。移动终端通过遍历应用信息列表,获取所有的非***应用的包名和版本号等信息,将得到一个或多个非***应用的包名和版本号封装成json数组,json数组的格式可如下所示:
[{“PackageName”:”com.android.a1”,”VersionCode”:3},
{“PackageName”:”com.android.b2”,”VersionCode”:4}…]
其中,一个大括号内对应一个非***应用的包名和版本号,PackageName表示包名的标识,com.android.a1及com.android.b2表示不同非***应用的包名,VersionCode表示版本号的标识,3及4表示不同非***应用的版本号。
移动终端通过网络请求(即http请求)将得到的所有非***应用的相关信息组成的json数组发送至服务器,第一接收模块11接收移动终端发送的已安装的非***应用的相关信息。
本实施例服务器可接收移动终端在开机时,或移动终端在使用的过程中安装非***应用后,发送已安装的非***应用的相关信息,增加了服务器获取非***应用的相关信息与数据库中的应用信息进行匹配的通道,提高了服务器进行应用更新的及时性。
进一步地,提出了本发明更新应用的服务器第四实施例,本实施例与本发明更新应用的服务器第一实施例的区别是,仅对发送模块13作具体描述,本发明更新应用的服务器所涉及的其他模块,请参照相关实施例的具体描述,在此不再赘述。为了提高服务器进行应用更新的便捷性,该实施例中上述发送模块13还用于,将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至所述移动终端,供所述移动终端根据所述非***应用的包名获取所述非***应用的安装路径,及根据所述安装路径获取非***应用文件,将所述非***应用文件打包并命名为在所述服务器指定的文件名后,发送至所述服务器指定的存储路径下。
本实施例中,上述记录的相关信息包括记录的非***应用的包名,以及在非***应用对应的非***应用文件上传至服务器后,在服务器指定的存储路径及文件名。服务器将记录的相关信息封装成一个数组,这个数组中的非***应用即表示移动终端中已安装的,而服务器的数据中没有的或版本较低应用。发送模块13将上述记录好的非***应用的相关信息组成的数组发送至移动终端,说明需要移动终端将对应的非***应用文件上传至服务器,方便服务器进行应用更新。
移动终端在接收到服务器的返回非***应用的相关信息组成的数组后,解析服务器发送过来的数组,然后遍历这个数组获取相关信息。具体地,移动终端首先获取数组中的第一个数据得到非***应用的包名(例如,com.android.b2),然后根据包名通过PackageManager获取这个非***应用对应的应用信息列表PackageInfo。移动终端可在该应用信息列表中获取这个非***应用的安装路径sourceDir,即这个非***应用的安装位置,在该安装位置获取相关文件打包生成非***应用文件File,需要对File设定必要的参数。例如,将非***应用文件File命名为在服务器存储的指定的文件名,及设置在服务器指定的存储路径等,其中文件名和存储路径是服务器在返回记录的相关信息时包含的。此时移动终端可以向服务器指定的存储路径发送该命名好的非***应用文件。移动终端继续获取数组中的下一个非***应用的包名按照上述方法执行相关的步骤,直至完成数组中的所有数据的读取,并将对应的非***应用文件命名为在所述服务器指定的文件名后,发送至服务器相应指定的存储路径下。
本实施例服务器将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至移动终端,使得移动终端可根据包名获取获取非***应用文件并命名为在服务器指定的文件名后,发送至服务器指定的存储路径下,服务器根据接收到的非***应用文件对非***应用进行更新,增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
对应地,如图4所示,提出本发明一种移动终端,该实施例的移动终端包括:
获取模块21,用于获取已安装的非***应用的相关信息,将所述相关信息发送至服务器;
本实施例中,移动终端的类型可根据实际需要进行设置,例如,移动终端包括手机、ipad、电脑等。非***应用为移动终端内需要自行安装的应用,***应用为移动终端***自带的应用。
首先,移动终端调用获取模块21在每次开机时,或在使用的过程中存在非***应用安装时,将会触发移动终端获取已安装的非***应用的相关信息。具体地,获取模块21先获取***内所有的应用信息列表。应用信息列表包括应用的包名、版本号、安装时间、安装路径、是否是***应用等信息,这里的非***应用的相关信息可仅包括非***应用的包名和版本号。获取模块21通过遍历应用信息列表,获取所有的非***应用的包名和版本号等信息,将得到的所有非***应用的相关信息发送至服务器,服务器接收移动终端发送的已安装的非***应用的相关信息。
第二接收模块22,用于接收所述服务器将所述相关信息与预置的数据库中的应用信息进行匹配后返回记录的相关信息;
本实施例中,服务器接收到移动终端发送的非***应用的相关信息后,将非***应用的相关信息与预置的数据库中的应用信息进行匹配。具体地,相关信息包括非***应用的包名和版本号,首先服务器根据非***应用的包名查询数据库,记录下数据库中不存储的非***应用的包名和版本号。为了方便后续移动终端上传非***应用文件至服务器存储,同时,还可以记录非***应用文件上传服务器后,将要在服务器存储的存储路径和文件名等信息。若在数据库中存在相同包名的应用,则将数据库中应用的版本号与移动终端发送过来的非***应用的版本号进行对比。若数据库中应用的版本号比较小,则说明移动终端中的非***应用的版本较高,此时记录该非***应用的包名和版本号,还可同时记录非***应用将要在服务器存储的存储路径和文件名等信息。当然,服务器也可仅记录非***应用的包名和版本号,当移动终端上传非***应用文件至服务器后,服务器再为应用分配文件名及存储路径。
上述被记录的非***应用的相关信息包括包名、版本号,以及非***应用文件上传服务器后,在服务器的存储路径、文件名等,被记录的非***应用即表示移动终端中已安装的,而服务器的数据中没有的或版本较低应用。服务器将上述记录好的非***应用的相关信息发送至移动终端,移动终端由第二接收模块22接收服务器发送过来的非***应用的相关信息,说明需要移动终端将对应的非***应用文件上传至服务器。
需要说明的是,当移动终端发送非***应用的相关信息至服务器,服务器将非***应用的相关信息与数据库中的应用信息进行匹配后,可根据匹配结果设置标识。例如,若服务器没有记录有非***应用的相关信息,则说明没有需要移动终端上传的非***应用文件,用“0”作标识,将“0”返回给移动终端后,移动终端可获知不需要上传非***应用文件。若服务器记录有非***应用的相关信息,则说明需要移动终端上传相应的非***应用文件,用“1”作标识,将“1”返回给移动终端后,移动终端可获知需要上传非***应用文件。
反馈模块23,用于根据接收到的所述记录的相关信息,向所述服务器反馈与所述记录的相关信息对应的非***应用文件,以对所述服务器数据库中的应用进行更新。
移动终端在接收到服务器的返回数据后,若为0则说明不需要执行后续的步骤,即无需上传非***应用文件;若为1则反馈模块23根据非***应用的包名获取非***应用的安装路径,在该安装路径下获取相关文件命名为在服务器存储的指定的文件名,向服务器指定的存储路径发送命名好的非***应用文件。
服务器接收到移动终端根据记录的相关信息反馈的非***应用文件后,将非***应用文件存储至数据库中指定的存储路径下,更新数据库。若上述服务器未将存储路径及文件名返回给移动终端,则在移动终端不会将非***应用文件进行命名,及将非***应用文件写入指定的存储路径,此时服务器需要在接收到非***应用文件后,对非***应用文件进行命名,并移动至数据库中相应的存储路径下进行存储。
以下进行举例说明,在一实施例中,移动终端开机时,获取所有已安装的非***应用的包名和版本号,将包名和版本号发送至服务器。服务器接收到非***应用的包名和版本号后,先将非***应用的包名与数据库中的应用的包名进行匹配。根据非***应用的包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号,同时记录下该非***应用对应的文件上传服务器后,在服务器的存储路径及文件名;若存在,则根据非***应用的版本号与数据库中应用的版本号进行对比,当非***应用的版本比数据库中应用的版本高时,记录下该非***应用的包名和版本号,同时记录下。服务器将记录的非***应用的包名和版本号,以及非***应用上传服务器后,在服务器的存储路径及文件名,发送至移动终端。移动终端根据接收到的非***应用的包名获取该非***应用对应的安装路径,在安装路径下将非***应用文件命名为接收到的文件名,并根据接收到的存储路径,将命名好的非***应用文件发送至服务器对应的存储路径。服务器接收到非***应用文件后,更新数据库中的应用。
在另一实施例中,移动终端在连网使用的过程中,当存在应用安装时,获取当前安装的非***应用的包名和版本号,将该包名和版本号发送至服务器。服务器接收到非***应用的包名和版本号后,先将非***应用的包名与数据库中的应用的包名进行匹配。根据非***应用的包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号,若存在,则根据非***应用的版本号与数据库中应用的版本号进行对比,当非***应用的版本比数据库中应用的版本高时,记录下该非***应用的包名和版本号。服务器将记录的非***应用的包名和版本号,发送至移动终端。移动终端根据接收到该非***应用的包名获取该非***应用对应的安装路径,在安装路径下获取非***应用文件并发送服务器。服务器接收到非***应用文件后,对其进行命名,然后存储在相应的存储路径下,对数据库中的应用进行更新。
本发明实施例移动终端通过发送已安装的非***应用的相关信息至服务器,以使服务器将该相关信息与预置的数据库中的应用信息进行匹配,记录数据库中不存在的相关信息并返回至移动终端。移动终端根据接收到的记录的相关信息,向服务器反馈与对应的非***应用文件,使得服务器可对数据库中的应用进行更新。从而增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
进一步地,提出了本发明移动终端第二实施例,本实施例与本发明移动终端第一实施例的区别是,仅对获取模块21作具体描述,本发明移动终端所涉及的其他模块,请参照相关实施例的具体描述,在此不再赘述。为了使得服务器可对应用进行及时更新,该实施例中上述获取模块21还用于,当侦测到在开机指令时,获取已安装的非***应用的相关信息,将所述相关信息发送至服务器;或者,
在连网的状态下安装非***应用后,获取当前已安装的非***应用的相关信息,将所述相关信息发送至服务器。
移动终端在每次开机时,接收到开机指令,将会触发获取模块21获取已安装的非***应用的相关信息。或者是移动终端开机后,在使用的过程中存在非***应用安装时,获取模块21获取当前已安装的非***应用的相关信息。具体地,移动终端通过程序中预置的安装标准类函数PackageManager中的getInstalledPackages()方法获取到所有已安装的应用信息列表PackageInfo。应用信息列表PackageInfo是Android提供的标准类,包含了应用的详细信息,该详细信息包括应用的包名、版本号、安装时间、安装路径、是否是***应用等信息,这里的非***应用的相关信息包括非***应用的包名和版本号。移动终端通过遍历应用信息列表,获取所有的非***应用的包名和版本号等信息,将得到一个或多个非***应用的包名和版本号封装成json数组,json数组的格式可如下所示:
[{“PackageName”:”com.android.a1”,”VersionCode”:3},
{“PackageName”:”com.android.b2”,”VersionCode”:4}…]
其中,一个大括号内对应一个非***应用的包名和版本号,PackageName表示包名的标识,com.android.a1及com.android.b2表示不同非***应用的包名,VersionCode表示版本号的标识,3及4表示不同非***应用的版本号。
获取模块21通过网络请求(即http请求)将得到的所有非***应用的相关信息组成的json数组发送至服务器,服务器接收移动终端发送的已安装的非***应用的相关信息。
本实施例移动终端可在开机时,或在使用的过程中安装非***应用后,发送已安装的非***应用的相关信息至服务器,增加了服务器获取非***应用的相关信息与数据库中的应用信息进行匹配的通道,提高了服务器进行应用更新的及时性。
进一步地,提出了本发明更新应用的服务器第三实施例,本实施例与本发明移动终端第一实施例的区别是,仅对反馈模块23作具体描述,本发明移动终端所涉及的其他模块,请参照相关实施例的具体描述,在此不再赘述。为了使得服务器可便捷地对应用进行及时更新,该实施例中上述反馈模块23包括:
获取单元,用于根据接收到的所述记录的非***应用的包名获取所述非***应用的安装路径;
打包单元,用于根据所述安装路径获取所述非***应用文件,将所述非***应用文件进行打包并命名为在所述服务器存储的文件名;
反馈单元,用于将命名后的所述非***应用文件反馈至所述服务器指定的存储路径下。
本实施例中,上述记录的相关信息包括记录的非***应用的包名,以及在非***应用对应的非***应用文件上传至服务器后,在服务器指定的存储路径及文件名。服务器将记录的相关信息封装成一个数组,这个数组中的非***应用即表示移动终端中已安装的,而服务器的数据中没有的或版本较低应用。服务器将上述记录好的非***应用的相关信息组成的数组发送至移动终端,说明需要移动终端将对应的非***应用文件上传至服务器,方便服务器进行应用更新。
移动终端在接收到服务器的返回非***应用的相关信息组成的数组后,获取单元解析服务器发送过来的数组,然后遍历这个数组获取相关信息。具体地,获取单元首先获取数组中的第一个数据得到非***应用的包名(例如,com.android.b2),然后根据包名通过PackageManager获取这个非***应用对应的应用信息列表PackageInfo。获取单元可在该应用信息列表中获取这个非***应用的安装路径sourceDir,即这个非***应用的安装位置,打包单元在该安装位置获取相关文件打包生成非***应用文件File,需要对File设定必要的参数。例如,将非***应用文件File命名为在服务器存储的指定的文件名,及设置在服务器指定的存储路径等,其中文件名和存储路径是服务器在返回记录的相关信息时包含的。此时反馈单元可以向服务器指定的存储路径发送该命名好的非***应用文件。获取单元继续获取数组中的下一个非***应用的包名按照上述方法执行相关的步骤,直至完成数组中的所有数据的读取,并由打包单元将对应的非***应用文件命名为在所述服务器指定的文件名后,由反馈单元发送至服务器相应指定的存储路径下。
本实施例服务器将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至移动终端,使得移动终端可根据包名获取获取非***应用文件并命名为在服务器指定的文件名后,发送至服务器指定的存储路径下,服务器根据接收到的非***应用文件对非***应用进行更新,增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
对应地,如图5所示,提出本发明一种更新应用的方法第一实施例。本实施例更新应用的方法与上述更新应用的服务器第一实施例对应,该实施例的更新应用的方法包括:
步骤S10、服务器接收移动终端发送已安装的非***应用的相关信息;
本实施例中,移动终端的类型可根据实际需要进行设置,例如,移动终端包括手机、ipad、电脑等。非***应用为移动终端内需要自行安装的应用,***应用为移动终端***自带的应用。
首先,移动终端在每次开机时,或在使用的过程中存在非***应用安装时,将会触发移动终端获取已安装的非***应用的相关信息。具体地,移动终端先获取***内所有的应用信息列表。应用信息列表包括应用的包名、版本号、安装时间、安装路径、是否是***应用等信息,这里的非***应用的相关信息可仅包括非***应用的包名和版本号。移动终端通过遍历应用信息列表,获取所有的非***应用的包名和版本号等信息,将得到的所有非***应用的相关信息发送至服务器,服务器接收移动终端发送的已安装的非***应用的相关信息。
步骤S20、将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;
服务器接收到移动终端发送的非***应用的相关信息后,将非***应用的相关信息与预置的数据库中的应用信息进行匹配。具体地,相关信息包括非***应用的包名和版本号,首先服务器根据非***应用的包名查询数据库,记录下数据库中不存储的非***应用的包名和版本号。为了方便后续移动终端上传非***应用文件至服务器存储,同时,还可以记录非***应用文件上传服务器后,将要在服务器存储的存储路径和文件名等信息。若在数据库中存在相同包名的应用,则将数据库中应用的版本号与移动终端发送过来的非***应用的版本号进行对比。若数据库中应用的版本号比较小,则说明移动终端中的非***应用的版本较高,此时记录该非***应用的包名和版本号,还可同时记录非***应用将要在服务器存储的存储路径和文件名等信息。当然,服务器也可仅记录非***应用的包名和版本号,当移动终端上传非***应用文件至服务器后,服务器再为应用分配文件名及存储路径。
步骤S30、将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;
上述被记录的非***应用的相关信息包括包名、版本号,以及非***应用文件上传服务器后,在服务器的存储路径、文件名等,被记录的非***应用即表示移动终端中已安装的,而服务器的数据中没有的或版本较低应用。服务器将上述记录好的非***应用的相关信息发送至移动终端,说明需要移动终端将对应的非***应用文件上传至服务器。
需要说明的是,当移动终端发送非***应用的相关信息至服务器,服务器将非***应用的相关信息与数据库中的应用信息进行匹配后,可根据匹配结果设置标识。例如,若服务器没有记录有非***应用的相关信息,则说明没有需要移动终端上传的非***应用文件,用“0”作标识,将“0”返回给移动终端后,移动终端可获知不需要上传非***应用文件。若服务器记录有非***应用的相关信息,则说明需要移动终端上传相应的非***应用文件,用“1”作标识,将“1”返回给移动终端后,移动终端可获知需要上传非***应用文件。
移动终端在接收到服务器的返回数据后,若为0则说明不需要执行后续的步骤,即无需上传非***应用文件;若为1则移动终端根据非***应用的包名获取非***应用的安装路径,在该安装路径下获取相关文件命名为在服务器存储的指定的文件名,向服务器指定的存储路径发送命名好的非***应用文件。
步骤S40、接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。
服务器接收到移动终端根据记录的相关信息反馈的非***应用文件后,将非***应用文件存储至数据库中指定的存储路径下,更新数据库。若上述服务器未将存储路径及文件名返回给移动终端,则在移动终端不会将非***应用文件进行命名,及将非***应用文件写入指定的存储路径,此时服务器需要在接收到非***应用文件后,对非***应用文件进行命名,并移动至数据库中相应的存储路径下进行存储。
以下进行举例说明,在一实施例中,移动终端开机时,获取所有已安装的非***应用的包名和版本号,将包名和版本号发送至服务器。服务器接收到非***应用的包名和版本号后,先将非***应用的包名与数据库中的应用的包名进行匹配。根据非***应用的包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号,同时记录下该非***应用对应的文件上传服务器后,在服务器的存储路径及文件名;若存在,则根据非***应用的版本号与数据库中应用的版本号进行对比,当非***应用的版本比数据库中应用的版本高时,记录下该非***应用的包名和版本号,同时记录下。服务器将记录的非***应用的包名和版本号,以及非***应用上传服务器后,在服务器的存储路径及文件名,发送至移动终端。移动终端根据接收到的非***应用的包名获取该非***应用对应的安装路径,在安装路径下将非***应用文件命名为接收到的文件名,并根据接收到的存储路径,将命名好的非***应用文件发送至服务器对应的存储路径。服务器接收到非***应用文件后,更新数据库中的应用。
在另一实施例中,移动终端在连网使用的过程中,当存在应用安装时,获取当前安装的非***应用的包名和版本号,将该包名和版本号发送至服务器。服务器接收到非***应用的包名和版本号后,先将非***应用的包名与数据库中的应用的包名进行匹配。根据非***应用的包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号,若存在,则根据非***应用的版本号与数据库中应用的版本号进行对比,当非***应用的版本比数据库中应用的版本高时,记录下该非***应用的包名和版本号。服务器将记录的非***应用的包名和版本号,发送至移动终端。移动终端根据接收到该非***应用的包名获取该非***应用对应的安装路径,在安装路径下获取非***应用文件并发送服务器。服务器接收到非***应用文件后,对其进行命名,然后存储在相应的存储路径下,对数据库中的应用进行更新。
本发明实施例服务器通过将接收到移动终端发送已安装的非***应用的相关信息与预置的数据库中的应用信息进行匹配,记录数据库中不存在的相关信息并发送至移动终端,以使移动终端反馈与该记录的相关信息对应的非***应用文件,将该非***应用文件存储至所述数据库中指定的存储路径下,实现对数据库中的应用进行更新。从而增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
进一步地,提出了本发明更新应用的方法第二实施例,本实施例更新应用的方法与上述更新应用的服务器第二实施例对应,本实施例与本发明更新应用的方法第一实施例的区别是,仅对步骤S20作具体描述,本发明更新应用的方法所涉及的其他步骤,请参照相关实施例的具体描述,在此不再赘述。为了提高服务器进行应用更新的便捷性及可靠性,该实施例中上述步骤S20包括:将所述非***应用的包名与所述数据库中存储的包名进行匹配,判断是否存在一致的包名;
若不存在,则记录所述非***应用的包名及版本号;
若存在,则将所述非***应用的版本号与所述数据库中存储的版本号进行比较,当所述非***应用的版本比所述数据库中的版本高时,记录所述非***应用的包名及版本号。
本实施例中,相关信息包括非***应用的包名和版本号,应用信息包括应用的包名和版本号。服务器接收到移动终端以json数组形式发送的非***应用的相关信息后,解析json数组得到一个信息列表,然后遍历这个信息列表依次获取各非***应用的包名,将非***应用的相关信息与预置的数据库中的应用信息进行匹配。该json数组为由一个或多个非***应用的包名和版本号封装而成的数组。
具体地,首先服务器获取信息列表中的第一个非***应用的包名(例如,com.android.a1)和版本号(例如,3),然后根据该包名查询数据库,判断数据库中是否存在相同包名的应用,若不存在,则记录下该非***应用的包名和版本号。为了方便后续移动终端上传非***应用文件至服务器存储,同时,还可以记录非***应用文件上传至服务器后,将要在服务器存储的存储路径和文件名等信息。若在数据库中存在相同包名的应用,则获取该应用的版本号,将数据库中应用的版本号与移动终端发送过来的非***应用的版本号进行对比。若数据库中应用的版本号比较大,则说明数据库中应用的版本较高,此时不需要记录相关信息。若数据库中应用的版本号比较小,则说明移动终端中的非***应用的版本较高,此时记录该非***应用的包名和版本号,还可同时记录非***应用文件上传至服务器后,将要在服务器存储的存储路径和文件名等信息。当然,服务器也可仅记录非***应用的包名和版本号,当移动终端上传非***应用文件至服务器后,服务器再为非***应用文件分配文件名及存储路径。服务器继续获取信息列表中的下一个非***应用的包名及版本号按照上述方法进行对比,直至完成应用信息列表中所有非***应用的对比。
本实施例服务器通过将接收到的非***应用的包名和/或版本号与数据库中存储的包名和/或版本号进行匹配,记录数据库中不存在的包名和/或版本号对应的非***应用的包名及版本号等信息,以便将记录的信息发送至移动终端,使移动终端反馈相应的非***应用文件,提高了服务器进行应用更新的便捷性及可靠性。
进一步地,提出了本发明更新应用的方法第三实施例,本实施例更新应用的方法与上述更新应用的服务器第三实施例对应,本实施例与本发明更新应用的方法第一实施例的区别是,仅对步骤S10作具体描述,本发明更新应用的方法所涉及的其他步骤,请参照相关实施例的具体描述,在此不再赘述。为了增加服务器更新应用的通道,提高服务器进行应用更新的及时性,该实施例中上述步骤S10包括:接收所述移动终端在开机时,发送已安装的非***应用的相关信息;或者,接收所述移动终端在连网的状态下安装非***应用后,发送当前已安装的非***应用的相关信息。
移动终端在每次开机时,接收到开机指令,将会触发移动终端获取已安装的非***应用的相关信息。或者是移动终端开机后,在使用的过程中存在非***应用安装时,获取当前已安装的非***应用的相关信息。具体地,移动终端通过程序中预置的安装标准类函数PackageManager中的getInstalledPackages()方法获取到所有已安装的应用信息列表PackageInfo。应用信息列表PackageInfo是Android提供的标准类,包含了应用的详细信息,该详细信息包括应用的包名、版本号、安装时间、安装路径、是否是***应用等信息,这里的非***应用的相关信息包括非***应用的包名和版本号。移动终端通过遍历应用信息列表,获取所有的非***应用的包名和版本号等信息,将得到一个或多个非***应用的包名和版本号封装成json数组,json数组的格式可如下所示:
[{“PackageName”:”com.android.a1”,”VersionCode”:3},
{“PackageName”:”com.android.b2”,”VersionCode”:4}…]
其中,一个大括号内对应一个非***应用的包名和版本号,PackageName表示包名的标识,com.android.a1及com.android.b2表示不同非***应用的包名,VersionCode表示版本号的标识,3及4表示不同非***应用的版本号。
移动终端通过网络请求(即http请求)将得到的所有非***应用的相关信息组成的json数组发送至服务器,服务器接收移动终端发送的已安装的非***应用的相关信息。
本实施例服务器可接收移动终端在开机时,或移动终端在使用的过程中安装非***应用后,发送已安装的非***应用的相关信息,增加了服务器获取非***应用的相关信息与数据库中的应用信息进行匹配的通道,提高了服务器进行应用更新的及时性。
进一步地,提出了本发明更新应用的方法第四实施例,本实施例更新应用的方法与上述更新应用的服务器第四实施例对应,本实施例与本发明更新应用的方法第一实施例的区别是,仅对步骤S30作具体描述,本发明更新应用的方法所涉及的其他步骤,请参照相关实施例的具体描述,在此不再赘述。为了提高服务器进行应用更新的便捷性,该实施例中上述步骤S30包括:将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至所述移动终端,供所述移动终端根据所述非***应用的包名获取所述非***应用的安装路径,及根据所述安装路径获取非***应用文件,将所述非***应用文件打包并命名为在所述服务器指定的文件名后,发送至所述服务器指定的存储路径下。
本实施例中,上述记录的相关信息包括记录的非***应用的包名,以及在非***应用对应的非***应用文件上传至服务器后,在服务器指定的存储路径及文件名。服务器将记录的相关信息封装成一个数组,这个数组中的非***应用即表示移动终端中已安装的,而服务器的数据中没有的或版本较低应用。服务器将上述记录好的非***应用的相关信息组成的数组发送至移动终端,说明需要移动终端将对应的非***应用文件上传至服务器,方便服务器进行应用更新。
移动终端在接收到服务器的返回非***应用的相关信息组成的数组后,解析服务器发送过来的数组,然后遍历这个数组获取相关信息。具体地,移动终端首先获取数组中的第一个数据得到非***应用的包名(例如,com.android.b2),然后根据包名通过PackageManager获取这个非***应用对应的应用信息列表PackageInfo。移动终端可在该应用信息列表中获取这个非***应用的安装路径sourceDir,即这个非***应用的安装位置,在该安装位置获取相关文件打包生成非***应用文件File,需要对File设定必要的参数。例如,将非***应用文件File命名为在服务器存储的指定的文件名,及设置在服务器指定的存储路径等,其中文件名和存储路径是服务器在返回记录的相关信息时包含的。此时移动终端可以向服务器指定的存储路径发送该命名好的非***应用文件。移动终端继续获取数组中的下一个非***应用的包名按照上述方法执行相关的步骤,直至完成数组中的所有数据的读取,并将对应的非***应用文件命名为在所述服务器指定的文件名后,发送至服务器相应指定的存储路径下。
本实施例服务器将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至移动终端,使得移动终端可根据包名获取获取非***应用文件并命名为在服务器指定的文件名后,发送至服务器指定的存储路径下,服务器根据接收到的非***应用文件对非***应用进行更新,增加了服务器更新应用的通道,提高了服务器进行应用更新的及时性及便捷性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种更新应用的服务器,其特征在于,所述更新应用的服务器包括:
第一接收模块,用于接收移动终端发送已安装的非***应用的相关信息;
匹配模块,用于将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;
发送模块,用于将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;
存储模块,用于接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。
2.如权利要求1所述的更新应用的服务器,其特征在于,所述相关信息及所述应用信息包括包名和版本号,所述匹配模块包括:
匹配单元,用于将所述非***应用的包名与所述数据库中存储的包名进行匹配,判断是否存在一致的包名;
处理单元,用于若所述非***应用的包名与所述数据库中存储的包名不存在一致的包名,则记录所述非***应用的包名及版本号;否则,将所述非***应用的版本号与所述数据库中存储的版本号进行比较,当所述非***应用的版本比所述数据库中的版本高时,记录所述非***应用的包名及版本号。
3.如权利要求1或2所述的更新应用的服务器,其特征在于,所述记录的相关信息包括记录的非***应用的包名,以及在所述非***应用对应的非***应用文件上传至所述服务器后,在所述服务器指定的存储路径及文件名,所述发送模块还用于,将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至所述移动终端,供所述移动终端根据所述非***应用的包名获取所述非***应用的安装路径,及根据所述安装路径获取非***应用文件,将所述非***应用文件打包并命名为在所述服务器指定的文件名后,发送至所述服务器指定的存储路径下。
4.一种移动终端,其特征在于,所述移动终端包括:
获取模块,用于获取已安装的非***应用的相关信息,将所述相关信息发送至服务器;
第二接收模块,用于接收所述服务器将所述相关信息与预置的数据库中的应用信息进行匹配后返回记录的相关信息;
反馈模块,用于根据接收到的所述记录的相关信息,向所述服务器反馈与所述记录的相关信息对应的非***应用文件,以对所述服务器数据库中的应用进行更新。
5.如权利要求4所述的移动终端,其特征在于,所述获取模块还用于,当侦测到在开机指令时,获取已安装的非***应用的相关信息,将所述相关信息发送至服务器;或者,
在连网的状态下安装非***应用后,获取当前已安装的非***应用的相关信息,将所述相关信息发送至服务器。
6.如权利要求4或5所述的移动终端,其特征在于,所述记录的相关信息包括记录的非***应用的包名,以及在所述非***应用对应的非***应用文件上传至所述服务器后,在所述服务器指定的存储路径及文件名,所述反馈模块包括:
获取单元,用于根据接收到的所述记录的非***应用的包名获取所述非***应用的安装路径;
打包单元,用于根据所述安装路径获取所述非***应用文件,将所述非***应用文件进行打包并命名为在所述服务器存储的文件名;
反馈单元,用于将命名后的所述非***应用文件反馈至所述服务器指定的存储路径下。
7.一种更新应用的方法,其特征在于,所述更新应用的方法包括以下步骤:
服务器接收移动终端发送已安装的非***应用的相关信息;
将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息;
将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件;
接收所述移动终端反馈的所述非***应用文件,将所述非***应用文件存储至所述数据库中指定的存储路径下,以更新所述数据库中的应用。
8.如权利要求7所述的更新应用的方法,其特征在于,所述相关信息及所述应用信息包括包名和版本号,将所述相关信息与预置的数据库中的应用信息进行匹配,记录所述数据库中不存在的相关信息包括:
将所述非***应用的包名与所述数据库中存储的包名进行匹配,判断是否存在一致的包名;
若不存在,则记录所述非***应用的包名及版本号;
若存在,则将所述非***应用的版本号与所述数据库中存储的版本号进行比较,当所述非***应用的版本比所述数据库中的版本高时,记录所述非***应用的包名及版本号。
9.如权利要求7所述的更新应用的方法,其特征在于,所述接收移动终端发送已安装的非***应用的相关信息包括:
接收所述移动终端在开机时,发送已安装的非***应用的相关信息;或者,接收所述移动终端在连网的状态下安装非***应用后,发送当前已安装的非***应用的相关信息。
10.如权利要求7-9任一项所述的更新应用的方法,其特征在于,所述记录的相关信息包括记录的非***应用的包名,以及在所述非***应用对应的非***应用文件上传至所述服务器后,在所述服务器指定的存储路径及文件名,所述将记录的相关信息发送至所述移动终端,供所述移动终端反馈与所述记录的相关信息对应的非***应用文件包括:
将记录的非***应用的包名,以及在所述服务器指定的存储路径及文件名发送至所述移动终端,供所述移动终端根据所述非***应用的包名获取所述非***应用的安装路径,及根据所述安装路径获取非***应用文件,将所述非***应用文件打包并命名为在所述服务器指定的文件名后,发送至所述服务器指定的存储路径下。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610251489.9A CN105812483A (zh) | 2016-04-20 | 2016-04-20 | 更新应用的方法、服务器及移动终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610251489.9A CN105812483A (zh) | 2016-04-20 | 2016-04-20 | 更新应用的方法、服务器及移动终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105812483A true CN105812483A (zh) | 2016-07-27 |
Family
ID=56457396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610251489.9A Pending CN105812483A (zh) | 2016-04-20 | 2016-04-20 | 更新应用的方法、服务器及移动终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105812483A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528780A (zh) * | 2016-11-08 | 2017-03-22 | 努比亚技术有限公司 | 一种网络数据库的升级方法及移动终端 |
CN109241066A (zh) * | 2017-07-04 | 2019-01-18 | 北京国双科技有限公司 | 请求处理方法及装置 |
CN113448602A (zh) * | 2020-03-27 | 2021-09-28 | 北京沃东天骏信息技术有限公司 | 版本更新的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1852534A (zh) * | 2005-08-10 | 2006-10-25 | 华为技术有限公司 | 一种数据备份和恢复方法及其*** |
CN101216791A (zh) * | 2008-01-04 | 2008-07-09 | 华中科技大学 | 基于指纹的文件备份方法 |
CN102882978A (zh) * | 2012-10-16 | 2013-01-16 | 北京奇虎科技有限公司 | 服务器和应用升级方法 |
CN103841167A (zh) * | 2012-11-27 | 2014-06-04 | ***通信集团公司 | 一种用户数据同步方法及设备 |
CN104144187A (zh) * | 2013-05-10 | 2014-11-12 | 中国电信股份有限公司 | 一种获取应用更新版本的方法、终端、平台和*** |
-
2016
- 2016-04-20 CN CN201610251489.9A patent/CN105812483A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1852534A (zh) * | 2005-08-10 | 2006-10-25 | 华为技术有限公司 | 一种数据备份和恢复方法及其*** |
CN101216791A (zh) * | 2008-01-04 | 2008-07-09 | 华中科技大学 | 基于指纹的文件备份方法 |
CN102882978A (zh) * | 2012-10-16 | 2013-01-16 | 北京奇虎科技有限公司 | 服务器和应用升级方法 |
CN103841167A (zh) * | 2012-11-27 | 2014-06-04 | ***通信集团公司 | 一种用户数据同步方法及设备 |
CN104144187A (zh) * | 2013-05-10 | 2014-11-12 | 中国电信股份有限公司 | 一种获取应用更新版本的方法、终端、平台和*** |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528780A (zh) * | 2016-11-08 | 2017-03-22 | 努比亚技术有限公司 | 一种网络数据库的升级方法及移动终端 |
CN106528780B (zh) * | 2016-11-08 | 2021-01-26 | 努比亚技术有限公司 | 一种网络数据库的升级方法及移动终端 |
CN109241066A (zh) * | 2017-07-04 | 2019-01-18 | 北京国双科技有限公司 | 请求处理方法及装置 |
CN109241066B (zh) * | 2017-07-04 | 2022-09-27 | 北京国双科技有限公司 | 请求处理方法及装置 |
CN113448602A (zh) * | 2020-03-27 | 2021-09-28 | 北京沃东天骏信息技术有限公司 | 版本更新的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105791581A (zh) | 应用操作方法、装置及移动终端 | |
CN107239302A (zh) | 一种固件升级方法、终端和服务器 | |
CN106201756A (zh) | 日志获取装置、移动终端及方法 | |
CN105809645A (zh) | 文字显示方法、装置及移动终端 | |
CN106095217A (zh) | 应用分享装置、***及方法 | |
CN106412104A (zh) | 应用消息推送装置及方法 | |
CN105897863A (zh) | 移动终端版本升级回退方法及装置 | |
CN105243126A (zh) | 跨屏截图方法及装置 | |
CN105187534A (zh) | 一种信息备份设备和方法以及信息备份*** | |
CN106453948A (zh) | 参数配置装置、移动终端及方法 | |
CN105808659A (zh) | 移动终端及其网页截图方法 | |
CN104978183A (zh) | 一种图标构造方法,及终端设备 | |
CN106791123A (zh) | 用户终端及应用处理方法 | |
CN105354057A (zh) | 信息处理方法及服务器 | |
CN105786713A (zh) | 移动终端的分屏排查方法、装置及移动终端 | |
CN106528576A (zh) | 页面搜索方法、终端及*** | |
CN106055230A (zh) | 应用评价装置、移动终端及方法 | |
CN105302864A (zh) | 根据屏幕分辨率加载图片的装置和方法 | |
CN105278995A (zh) | 应用程序的管理方法、***、服务器和移动终端 | |
CN105224647A (zh) | 图片显示方法及装置 | |
CN105263195A (zh) | 数据传输装置及方法 | |
CN105100194A (zh) | 基于冗余mbn的全网通互升级方法和装置 | |
CN105812483A (zh) | 更新应用的方法、服务器及移动终端 | |
CN104754131B (zh) | 分屏界面标识的显示方法和*** | |
CN106502751A (zh) | 热部署装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160727 |
|
RJ01 | Rejection of invention patent application after publication |