获取应用程序的方法和装置制造方法
【专利摘要】本发明公开了一种获取应用程序的方法和装置,属于通信【技术领域】。所述方法包括:当下载预设的应用程序时,获取所述应用程序的运行平台的信息;根据所述运行平台的信息下载并安装所述运行平台;当所述运行平台安装成功后,下载并安装所述应用程序。本发明通过先下载应用程序的运行平台,再下载应用程序,从而保证应用程序能够正常使用,提高了用户在使用应用程序时的体验感。
【专利说明】获取应用程序的方法和装置
【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及一种获取应用程序的方法和装置。
【背景技术】
[0002]在互联网中,基于不同运行平台的应用程序越来越多,在众多的应用程序中,用户怎样才能获得可信任的应用程序是需要解决的问题。
[0003]现有技术中提供了一种应用程序的管理方法,通过管理软件管理着各种软件,在服务器端保存一批软件的信息列表,包括软件名称、软件发布时间、版本信息、分类信息以及该软件的检测是否安装的检测策略等,安装了软件管理软件的客户端从服务器端获取信息列表,用户可以根据信息列表提供的软件信息选择某款软件进行安装,在接收到用户的选择后客户端对该款软件进行下载安装。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005]由于应用程序是在特定的运行平台上进行二次开发的产品,所以每个应用程序的运行都需要相应的运行环境,但是由于客户端并不能支持所有的运行平台,所以可能导致下载安装的应用程序在该客户端上不能使用,例如,出现缺少文件的提示或是出现一些运行异常的情况,从而降低了用户在使用应用程序时的体验感。
【发明内容】
[0006]为了提高用户使用应用程序时的体验感,本发明实施例提供了一种获取应用程序的方法和装置。所述技术方案如下:
[0007]—方面,提供了一种获取应用程序的方法,所述方法包括:
[0008]当下载预设的应用程序时,获取所述应用程序的运行平台的信息;
[0009]根据所述运行平台的信息下载并安装所述运行平台;
[0010]当所述运行平台安装成功后,下载并安装所述应用程序。
[0011]所述获取所述应用程序的运行平台的信息,包括:
[0012]获取服务器端下发的信息列表,所述信息列表包括所述应用程序的运行平台的信息;
[0013]读取所述信息列表中的运行平台的信息。
[0014]所述应用程序的运行平台的信息包括:所述运行平台的名称、所述运行平台的下载地址和所述运行平台是否支持静态的安装模式的指示。
[0015]所述根据所述运行平台的信息下载并安装所述运行平台之前,还包括:
[0016]根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则执行下载并安装所述应用程序的步骤,否则,执行根据所述运行平台的信息下载并安装所述运行平台的步骤。
[0017]所述方法还包括:
[0018]检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的应用编程接口 API获知所述已安装的应用程序的运行平台;
[0019]下载并安装所述已安装的应用程序的运行平台。
[0020]另一方面,提供了一种获取应用程序的装置,所述装置包括:
[0021]获取模块,用于当下载预设的应用程序时,获取所述应用程序的运行平台的信息;
[0022]第一下载模块,用于根据所述运行平台的信息下载并安装所述运行平台;
[0023]第二下载模块,用于当所述运行平台安装成功后,下载并安装所述应用程序。
[0024]所述获取模块,包括:
[0025]获取单元,用于获取服务器端下发的信息列表,所述信息列表包括所述应用程序的运行平台的信息;
[0026]读取单元,用于读取所述信息列表中的运行平台的信息。
[0027]所述应用程序的运行平台的信息包括:所述运行平台的名称、所述运行平台的下载地址和所述运行平台是否支持静态的安装模式的指示。
[0028]所述装置还包括:
[0029]判断模块,用于在所述第一下载模块下载并安装所述运行平台之前,根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则所述第二下载模块执行下载并安装所述应用程序的步骤,否则,所述第一下载模块执行根据所述运行平台的信息下载并安装所述运行平台的步骤。
[0030]所述装置还包括:
[0031]检测模块,用于检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的应用编程接口 API获知所述已安装的应用程序的运行平台;
[0032]所述第一下载模块,还用于下载并安装所述已安装的应用程序的运行平台。
[0033]本发明实施例提供的技术方案带来的有益效果是:当下载预设的应用程序时,获取所述应用程序的运行平台的信息;根据所述运行平台的信息下载并安装所述运行平台;当所述运行平台安装成功后,下载并安装所述应用程序。通过先下载应用程序的运行平台,再下载应用程序,从而保证应用程序能够正常使用,提高了用户在使用应用程序时的体验感。
【专利附图】
【附图说明】
[0034]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035]图1是本发明实施例一提供的一种获取应用程序的方法流程图;
[0036]图2是本发明实施例二提供的一种获取应用程序的方法流程图;
[0037]图3是本发明实施例三提供的一种获取应用程序的装置结构示意图;
[0038]图4是本发明实施例四提供的另一种获取应用程序的装置结构示意图。
【具体实施方式】[0039]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0040]实施例一
[0041]参见图1,本实施例中提供了一种获取应用程序的方法,包括:
[0042]101、当下载预设的应用程序时,获取所述应用程序的运行平台的信息;
[0043]102、根据所述运行平台的信息下载并安装所述运行平台;
[0044]103、当所述运行平台安装成功后,下载并安装所述应用程序。
[0045]其中,所述获取所述应用程序的运行平台的信息,包括:
[0046]获取服务器端下发的信息列表,所述信息列表包括所述应用程序的运行平台的信息;
[0047]读取所述信息列表中的运行平台的信息。
[0048]其中,所述应用程序的运行平台的信息包括:所述运行平台的名称、所述运行平台的下载地址和所述运行平台是否支持静态的安装模式的指示。
[0049]可选地,所述根据所述运行平台的信息下载并安装所述运行平台之前,还包括:
[0050]根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则执行下载并安装所述应用程序的步骤,否则,执行根据所述运行平台的信息下载并安装所述运行平台的步骤。
[0051 ] 可选地,所述方法还包括:
[0052]检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的应用编程接口 API获知所述已安装的应用程序的运行平台;
[0053]下载并安装所述已安装的应用程序的运行平台。
[0054]本实施例的有益效果是:当下载预设的应用程序时,获取所述应用程序的运行平台的信息;根据所述运行平台的信息下载并安装所述运行平台;当所述运行平台安装成功后,下载并安装所述应用程序。通过先下载应用程序的运行平台,再下载应用程序,从而保证应用程序能够正常使用,提高了用户在使用应用程序时的体验感。
[0055]实施例二
[0056]本发明实施例提供了一种获取应用程序的方法,本实施例中提供了一种预设的应用程序管理软件,在服务器端保存的信息列表中,加入应用程序的运行平台信息字段,该字段包括:运行平台的名称、运行平台的下载地址和该运行平台是否支持静态安装模式的指示,使得客户端在获取到信息列表时,可以根据其中的运行平台的信息下载运行平台,从而再进一步下载应用程序,这样就能保证用户下载的应用程序能够使用,从而提高用户的体验感。其中,运行平台包括多个动态库和运行库等,对此本实施例不做具体限定。本实施例中,当运行平台信息中包括支持静态安装模式的指示时,则表明其对应的应用程序不需要整个运行平台的支撑,只需要该运行平台的个别运行库或是动态库就能够运行,此时静态安装模式中指示出了个别的动态库或运行库存放的路径。本实施例中如果信息列表中包括不支持静态安装模式的指示,则表明其对应的应用程序需要运行平台的支撑才能运行,此时需要安装该运行平台。
[0057]参见图2,方法流程包括:
[0058]201、当下载预设的应用程序时,获取所述应用程序的运行平台的信息。[0059]本实施例中,客户端安装了预设的应用程序管理软件,客户端实时的向服务器端获取应用程序的列表,或是服务器端实时的向客户端推送应用程序列表,对于客户端是通过哪种方式获取到应用程序列表的对此本实施例不做具体限定。
[0060]当客户端接收到服务器端下发的应用程序列表时,在客户端界面上输出该应用程序列表的内容供用户选择,用户根据应用程序列表的内容选择一款应用程序进行下载,当客户端接收到下载某款应用程序的指令时,获取服务器端下发的信息列表,并读取所述信息列表中的运行平台的信息,以获取所述应用程序的运行平台的信息。
[0061]本实施例中,客户端读取信息列表中的运行平台信息,对运行平台信息进行解析获知需要下载的应用程序所依赖的运行平台,从而进一步根据运行平台信息下载该运行平台。
[0062]202、根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则执行步骤204,如果否,则执行步骤203。
[0063]本步骤中,在客户端获取到需要下载的应用程的运行平台信息后,可以先根据运行平台的信息对本地安装的运行平台进行检测,判断本地是否已经安装了该运行平台,如果本地已经安装了该运行平台,则不需要再一次下载并安装该运行平台,进一步也提高了应用程序的安装效率。但是,如果检测到本地未安装有该运行平台,则先下载安装该运行平台,以保证下载的应用程序能够使用。
[0064]具体的,由于运行平台的信息中包括运行平台的名称,所以客户端可以直接检测本地安装的运行平台的名称,如果有匹配的名称,则表明本地已安装了该运行平台,否则,表明本地未安装该应用平台。
[0065]值得说明的是,步骤202是可选地,在具体执行过程中可以不对本地安装的运行平台进行检测,而是直接执行步骤203,具体实施过程中采用哪种方式对此本实施例不做具体限定。
[0066]203、根据所述运行平台的信息下载并安装所述运行平台。
[0067]由于运行平台的信息中包括了运行平台的下载地址,所以可以通过该下载地址下载该运行平台。其中如果下载得到的是运行平台的个别运行库或是动态库,则根据静态模式指示的存放路径,将该运行库或是动态库存放到相应的位置。如果下载得到的是运行平台的安装包,则根据非静态模式的指示安装该安装包。
[0068]204、下载并安装所述应用程序。
[0069]本实施例中,在应用程序的运行平台下载并安装成功后,再进一步地下载该应用程序,从而保证安装的应用程序能够使用。
[0070]本实施例中,由于应用程序的运行平台也是不断更新的,导致在客户端本地已安装的应用程序中还是存在不能使用的情况,在这种情况下,客户端检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的APKApplication Programming Interface、应用编程接口)获知所述已安装的应用程序的运行平台;下载并安装所述已安装的应用程序的运行平台。其中,根据所述已安装的应用程序需要调用的API获知所述已安装的应用程序的运行平台,包括:拦截所述已安装的应用程序需要调用的API,通过该API获知该应用程序运行时所需使用的动态库或是运行库。其中,通过拦截API获知该应用程序运行时所需使用的动态库或是运行库的方法与现有技术类似,对此本实施例不再赘述。[0071]本实施例的有益效果是:当下载预设的应用程序时,获取所述应用程序的运行平台的信息;根据所述运行平台的信息下载并安装所述运行平台;当所述运行平台安装成功后,下载并安装所述应用程序。通过先下载应用程序的运行平台,再下载应用程序,从而保证应用程序能够正常使用,提高了用户在使用应用程序时的体验感。且能够对本地的应用程序进行检测,从而获取其需要加载的动态库或是运行库,实现了对本地应用程序的自动修复。
[0072]实施例三
[0073]参见图3,本发明实施例提供了一种获取应用程序的装置,包括:获取模块301、第一下载模块302和第二下载模块303。
[0074]获取模块301,用于当下载预设的应用程序时,获取所述应用程序的运行平台的信息;
[0075]第一下载模块302,用于根据所述运行平台的信息下载并安装所述运行平台;
[0076]第二下载模块303,用于当所述运行平台安装成功后,下载并安装所述应用程序。
[0077]其中,所述获取模块301,包括:
[0078]获取单元,用于获取服务器端下发的信息列表,所述信息列表包括所述应用程序的运行平台的信息;
[0079]读取单元,用于读取所述信息列表中的运行平台的信息。
[0080]其中,所述应用程序的运行平台的信息包括:所述运行平台的名称、所述运行平台的下载地址和所述运行平台是否支持静态的安装模式的指示。
[0081]可选地,参见图4,所述装置还包括:
[0082]判断模块304,用于在所述第一下载模块下载并安装所述运行平台之前,根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则第二下载模块303执行下载并安装所述应用程序的步骤,否则,第一下载模302块执行根据所述运行平台的信息下载并安装所述运行平台的步骤。
[0083]可选地,参见图4,所述装置还包括:
[0084]检测模块305,用于检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的应用编程接口 API获知所述已安装的应用程序的运行平台;
[0085]所述第一下载模块302,还用于下载并安装所述已安装的应用程序的运行平台。
[0086]本实施例的有益效果是:当下载预设的应用程序时,获取所述应用程序的运行平台的信息;根据所述运行平台的信息下载并安装所述运行平台;当所述运行平台安装成功后,下载并安装所述应用程序。通过先下载应用程序的运行平台,再下载应用程序,从而保证应用程序能够正常使用,提高了用户在使用应用程序时的体验感。
[0087]需要说明的是:上述实施例提供的获取应用程序的装置中,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另夕卜,上述实施例提供的获取应用程序的装置与获取应用程序的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0088]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0089]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0090]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种获取应用程序的方法,其特征在于,所述方法包括: 当下载预设的应用程序时,获取所述应用程序的运行平台的信息; 根据所述运行平台的信息下载并安装所述运行平台; 当所述运行平台安装成功后,下载并安装所述应用程序。
2.根据权利要求1所述的方法,其特征在于,所述获取所述应用程序的运行平台的信息,包括: 获取服务器端下发的信息列表,所述信息列表包括所述应用程序的运行平台的信息; 读取所述信息列表中的运行平台的信息。
3.根据权利要求1或2所述的方法,其特征在于,所述应用程序的运行平台的信息包括:所述运行平台的名称、所述运行平台的下载地址和所述运行平台是否支持静态的安装模式的指示。
4.根据权利要求1所述的方法,其特征在于,所述根据所述运行平台的信息下载并安装所述运行平台之前,还 包括: 根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则执行下载并安装所述应用程序的步骤,否则,执行根据所述运行平台的信息下载并安装所述运行平台的步骤。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括: 检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的应用编程接口API获知所述已安装的应用程序的运行平台; 下载并安装所述已安装的应用程序的运行平台。
6.一种获取应用程序的装置,其特征在于,所述装置包括: 获取模块,用于当下载预设的应用程序时,获取所述应用程序的运行平台的信息; 第一下载模块,用于根据所述运行平台的信息下载并安装所述运行平台; 第二下载模块,用于当所述运行平台安装成功后,下载并安装所述应用程序。
7.根据权利要求6所述的装置,其特征在于,所述获取模块,包括: 获取单元,用于获取服务器端下发的信息列表,所述信息列表包括所述应用程序的运行平台的信息; 读取单元,用于读取所述信息列表中的运行平台的信息。
8.根据权利要求6或7所述的装置,其特征在于,所述应用程序的运行平台的信息包括:所述运行平台的名称、所述运行平台的下载地址和所述运行平台是否支持静态的安装模式的指示。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括: 判断模块,用于在所述第一下载模块下载并安装所述运行平台之前,根据所述运行平台的信息判断本地是否已经安装有所述运行平台,如果是,则所述第二下载模块执行下载并安装所述应用程序的步骤,否则,所述第一下载模块执行根据所述运行平台的信息下载并安装所述运行平台的步骤。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括: 检测模块,用于检测本地已安装的应用程序,根据所述已安装的应用程序需要调用的应用编程接口 API获知所述已安装的应用程序的运行平台;所述第一下载 模块,还用于下载并安装所述已安装的应用程序的运行平台。
【文档编号】G06F9/445GK103593200SQ201210286451
【公开日】2014年2月19日 申请日期:2012年8月13日 优先权日:2012年8月13日
【发明者】孙胜晓 申请人:腾讯科技(深圳)有限公司