软件安装方法和装置
技术领域
本发明涉及通信技术领域,尤其涉及一种软件安装方法和装置。
背景技术
随着第三代移动通讯技术的迅猛发展,网络逐渐成为人们生活中不可或缺的一部分。在这个过程中,终端接入设备也经历着不停的变化。
数据卡作为一种新型的上网工具,能够提供接入网络的功能,终端设备可以通过数据卡随时随地接入网络,因此数据卡得到越来越广泛的应用,也成为许多商务人士最主要的上网通讯工具。
数据卡终端管理软件,作为数据卡使用的必备产品,也发生着深刻的变化,通过不断扩充服务内容,数据卡软件提供的功能正在不断增加,由初期的上网,短信,电话本功能增加到现在的语音,视频通话,彩信等等,随之而来的是软件本身的大小在急剧的膨胀,软件的依赖关系越来越复杂,这给数据卡软件的安装带来了很大的问题。
目前已经揭示的软件安装方法是利用数据卡本身的EFS分区,将几个平台(例如Windows、Mac或Linux)的软件安装包制作成光盘镜像放置在该分区中。这样,当用户将数据卡插入电脑中时,操作系统自动打开数据卡的EFS分区并展开光盘镜像,然后根据电脑本身的操作系统类型自动安装相应的软件包。
数据卡的EFS(Encrypting File System,加密文件系统)分区的大小是受限制的,在数据卡软件本身如前所述变得越来越大时,很可能造成管理软件太大无法放入EFS分区的情况,并且数据卡软件本身依赖的其他动态库或者软件也会越来越多,当这种依赖关系无法在本地电脑进行解决时,安装将以失败告终。目前,存在一种方法可解决这个问题,来进行数据卡软件的布局。这种方法将软件安装包放置在网络上(例如软件厂家的网站上),从而使得安装不再依赖于数据卡本身EFS分区的大小,也可以解决一部分软件依赖问题。然而,这种方法存在以下几个缺陷:
1、用户必须在已经联网的前提下才能获取数据卡软件,而对一般的数据卡用户而言,数据卡的作用就是要联网,这个前提很大程度上无法满足;
2、软件的依赖关系无法自动解决,某些情况下还是需要用户自行解决。
发明内容
本发明的主要目的在于提供一种软件安装方法和装置,旨在有效解决数据卡软件过大导致无法放入数据卡EFS分区及软件依赖关系的问题,提高了数据卡安装软件的便利性。
本发明提供一种软件安装方法,包括以下步骤:
预存仅包含基础软件包、安装管理模块的软件安装包以及用于网络连接的拨号模块;
软件安装过程中,若系统中现有的依赖对象不能满足安装,则通过拨号模块与网络连接,从网络获取安装所需的依赖对象。
优选地,所述软件安装过程中,若系统中现有的依赖对象不能满足安装,则通过拨号模块与网络连接,从网络获取安装所需的依赖对象包括:
若系统中现有的依赖对象可满足软件安装,则调用基础软件包进行软件安装。
优选地,所述若系统中现有的依赖对象不能满足安装,则通过拨号模块与网络连接,从网络获取安装所需的依赖对象中还包括:
获取本地系统中现有的依赖对象;
判断本地系统中是否已安装依赖对象;若否,则根据不同系统及其发行版本设置依赖对象源列表;
下载依赖对象并更新依赖对象源列表;
重新判断依赖对象是否满足安装。
本发明提供一种软件安装装置,包括:
数据卡存储模块,用于预存仅包含基础软件包、安装管理模块的软件安装包以及用于网络连接的拨号模块;
依赖关系处理模块,用于软件安装过程中,若系统中现有的依赖对象不能满足安装,则通过拨号模块与网络连接,从网络获取安装所需的依赖对象。
优选地,所述依赖关系处理模块进一步用于:
若系统中现有的依赖对象可满足软件安装,则调用基础软件包进行软件安装。
优选地,所述依赖关系处理模块还用于:
获取本地系统中现有的依赖对象;
判断本地系统中是否已安装依赖对象;若否,则根据不同系统及其发行版本设置依赖对象源列表;
下载依赖对象并更新依赖对象源列表;
重新判断依赖对象是否满足安装。
本发明所提供的软件安装方法或装置,在软件安装包中仅包含基础软件包和安装管理模块,最大程度地缩小了安装包所占用的空间,保证所有的安装文件可以放入数据卡的EFS分区中;当软件安装过程中与外部存在依赖关系时,可通过拨号模块与网络连接,从网络下载依赖对象,从而完成软件安装,有效解决了数据卡软件过大导致无法放入数据卡EFS分区及软件依赖关系的问题,提高了数据卡安装软件的便利性。
附图说明
图1为本发明一实施方式中软件安装方法流程图;
图2为本发明一实施例中处理软件依赖关系的流程图;
图3为本发明一实施方式中软件安装装置的结构示意图;
图4为本发明一实施例中软件安装装置安装软件的流程图;
图5为本发明一实施例中依赖关系处理模块的工作流程图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1示出了本发明的一个实施方式中软件安装方法流程,该流程包括以下步骤:
步骤S10,预存仅包含基础软件包、安装管理模块的软件安装包以及用于网络连接的拨号模块;安装管理模块可包括安装管理软件中的管理程序。在一实施例中,可先对正常大小的安装包进行简化和压缩,去除所有的软件依赖关系,只保留基础软件包和安装管理软件,从而最大程度地缩小了安装包所占用的空间,保证所有的安装文件可以放入数据卡的EFS分区中。拨号模块可以是一款拨号上网软件,其程序极为简易,所占容量较小。例如,现有的一些拨号上网软件,其容量只有几百KB左右,而数据卡的容量则以G为单位,所以其在数据卡中所占容量较小。
步骤S20,软件安装过程中,若系统中现有的依赖对象不能满足安装,则通过拨号模块与网络连接,从网络获取安装所需的依赖对象。依赖对象为软件安装过程中所依赖的软件或动态库。在一实施例中,可在软件安装时,判断系统中现有的软件或动态库是否满足安装,如果不能满足,则通过拨号模块与网络连接,手动或自动从网络中中下载安装所需的外部软件或数据库。
本发明实施方式中,通过简化软件安装包并在数据卡中预存拨号模块,可保证所有的安装文件可以放入数据卡的EFS分区中,并有效了解决软件依赖关系的问题,提高了用数据卡安装软件的便利性。
上述步骤S20中包括:若系统中现有的依赖对象可满足软件安装,则调用基础软件包进行软件安装的步骤。基础软件包中包括基础的安装程序包,可依安装流程执行软件安装。
参照图2,在一实施例中,上述步骤S20中还包括:
步骤S21,获取本地系统中现有的依赖对象;例如,可通过扫描本地系统,获取其中所存在的安装软件所需的依赖软件或动态库。
步骤S22,判断本地系统中是否已安装依赖对象;若否,则根据不同系统及其发行版本设置依赖对象源列表;依赖对象源列表根据不同系统及其发行版本的不同而不同,可包括一些操作系统厂商提供的官方软件包的更新地址,也可以包括一些特定的网址,以便将特定的软件包放在该网站上供用户使用。
步骤S23,下载依赖对象并更新依赖对象源列表;例如,从相关网站上下载依赖对象后,将该依赖对象的下载地址等相关内容添加到软件源列表。
步骤S24,重新判断依赖对象是否满足安装。如果未满足,则重新下载依赖对象。
参照图3,为本发明一实施方式中软件安装装置的结构示意图。该软件安装装置包括:
数据卡存储模块10,用于预存仅包含基础软件包101、安装管理模块102的软件安装包以及用于网络连接的拨号模块20;安装管理模块102可包括安装管理软件中的管理程序。在一实施例中,数据卡存储模块10可先对正常大小的安装包进行简化和压缩,去除所有的软件依赖关系,只保留基础软件包和安装管理软件,从而最大程度地缩小了安装包所占用的空间,保证所有的安装文件可以放入数据卡的EFS分区中。拨号模块20可以是一款拨号软件,其程序极为简易,所占容量较小。
依赖关系处理模块30,用于软件安装过程中,若系统中现有的依赖对象不能满足安装,则通过拨号模块20与网络连接,从网络获取安装所需的依赖对象。依赖对象为软件安装过程中所依赖的软件或动态库。在一实施例中,依赖关系处理模块30可在软件安装时,判断系统中现有的软件或动态库是否满足安装,如果不能满足,则通过拨号模块20与网络连接,手动或自动从网络中中下载安装所需的外部软件或数据库。
在一实施例中,依赖关系处理模块30进一步用于:若系统中现有的依赖对象可满足软件安装,则调用基础软件包101进行软件安装。
在一实施例中,依赖关系处理模块30还可用于:
获取本地系统中现有的依赖对象;例如,可通过扫描本地系统,获取其中所存在的安装软件所需的依赖软件或动态库。
判断本地系统中是否已安装依赖对象;若否,则根据不同系统及其发行版本设置依赖对象源列表;依赖对象源列表根据不同系统及其发行版本的不同而不同,可包括一些操作系统厂商提供的官方软件包的更新地址,也可以包括一些特定的网址,以便将特定的软件包放在该网站上供用户使用。
下载依赖对象并更新依赖对象源列表;例如,从相关网站上下载依赖对象后,将该依赖对象的下载地址等相关内容添加到软件源列表。
重新判断依赖对象是否满足安装。
参照图4,为本发明一实施例中软件安装装置安装软件的详细流程。该流程包括以下步骤:
步骤S101,判断安装驱动程序是否成功;
步骤S102,若安装驱动程序成功,则判断本地系统中现有的依赖对象是否满足继续安装;
步骤S103,若不能满足继续安装,则通过拨号模块连接网络;
步骤S104,从网络下载依赖对象;
步骤S105,下载完成后重新判断是否满足继续安装;
步骤S106,若是,则调用基础软件包进行安装;
步骤S107,安装完成后,正常退出;
步骤S108,若否,则按安装异常退出安装。
参照图5,为本发明一实施例中依赖关系处理模块30的详细工作流程。该工作流程包括以下步骤:
步骤S201,获取本地系统中现有的依赖对象;
步骤S202,判断安装软件所需的依赖对象是否已安装到系统中;
步骤S203,若否,则根据系统及其发行版本的不同设置依赖对象源列表;
步骤S204,下载依赖对象并更新依赖对象源列表;
步骤S205,重新判断依赖对象是否满足继续安装;
步骤S206,若是,则调用基础软件包进行安装;
步骤S207,若否,则提示用户自行下载依赖对象进行安装。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。