一种多平台多分辨率应用程序界面的处理方法和装置的制作方法

文档序号:6575605阅读:177来源:国知局
专利名称:一种多平台多分辨率应用程序界面的处理方法和装置的制作方法
技术领域
本发明涉及程序安装技术领域,特别是涉及一种多平台多分辨率应用程序界面 的处理方法和装置。
背景技术
随着智能手机屏幕分辨率和系统平台的多样化,应用程序适配多样化的屏幕和 系统平台(简称平台)是一个越来越复杂的工程。例如,运行在不同平台上的同一个应用 程序,由于系统平台支持的图片格式不同,或是屏幕分辨率不同,通常需要设计不同的 界面布局,并且制作不同格式和尺寸的图片,以保证用户的使用体验和屏幕显示效果。针对应用程序如何适配多样化的屏幕和系统平台的问题,目前常用的解决方法 有两种一种是应用程序不仅需要根据不同平台制作多个安装包,还需要在平台的基础 上,根据不同分辨率制作不同的安装包;另一种是将同一平台下的所有分辨率所用布局 和图片都制作在一个安装包内。针对第一种方法,例如A平台下有a个屏幕分辨率,B平台下有b个屏幕分 辨率,C平台下有c个屏幕分辨率......。最终共有a+b+c+...个安装包。这种方法的缺点
是1、用户在安装时需要仔细查找适合自己平台和屏幕分辨率的安装包。对于很多不是非常专业的用户来说,他对所使用手机的屏幕分辨率甚至平台并 不是非常了解。因此,区分这些不同的安装包对于这些用户就变得非常困难。如果安装 包选择不正确,会造成应用程序安装不成功,或者程序运行混乱,甚至可能会对智能手 机系统造成影响。2、应用程序所需图片的制作工作量非常大。不同平台所支持的图片格式有可能不同,而且每个平台一般都会有2个或者以 上的屏幕分辨率。为了保证图片显示的效果,需要每个平台的每个分辨率都制作一套图 片,分配在相应的安装包下,这大大增加了图片制作和维护的工作量。3、应用程序日常维护的难度大大增加。由于安装包不同,图片不同,每一套图都需要一套单独的维护规则,因此开发 人员需要维护很多不同的安装包,需要耗费大量精力。针对第二种方法,将同一平台的所有分辨率所用图片都打包在一起,生成一个 安装包。这样,N个平台就会有N个安装包,并且每个安装包中包含了该平台下所有分 辨率所用布局和图片。这种方法的缺点是1、应用程序所需图片的制作工作量非常大。不同平台所支持的图片格式有可能不同,而且每个平台一般都会有2个或者以 上的屏幕分辨率。为了保证图片显示的效果,需要每个平台的每个分辨率都制作一套图 片,这大大增加了图片制作和维护的工作量。2、安装包的体积大幅度增加。
因为需要将所有可能用到的图片都加载到一个安装包中,因此安装包的体积会 是正常大小的很多倍,浪费很多存储空间,而且大大增加了下载传播安装包的难度。综上所述,目前仍存在的问题是应用程序界面无法适配多样化的屏幕和系统 平台。即无论使用上述哪一种方法,都会在用户安装和使用时造成很大的不便;同时, 也会使图片制作的工作量大大增加,应用程序日常维护的难度大大增加。

发明内容
本发明所要解决的技术问题是提供一种多平台多分辨率应用程序界面的处理方 法和装置,以解决目前的应用程序界面无法适应多平台多分辨率的问题。为了解决上述问题,本发明公开了一种多平台多分辨率应用程序界面的处理方 法,包括读取用于生成应用程序界面的矢量图相关数据;查询当 前系统平台的屏幕分辨率;将所述矢量图相关数据按照当前系统平台的屏幕分辨率进行相应比例的伸缩, 得到伸缩后的数据。优选的,如果为应用程序安装过程,则所述方法还包括保存所述伸缩后的数 据,每次运行应用程序时,使用所述保存的数据生成应用程序界面;其中,所述矢量图 相关数据为预置在应用程序安装包中的数据。优选的,如果为应用程序运行过程,则所述方法还包括使用所述伸缩后的数 据生成当前的应用程序界面,以适应当前系统平台调整后的屏幕分辨率;其中,所述矢 量图相关数据为安装该应用程序后保存的用于生成应用程序界面的数据。其中,通过以下方式在应用程序的安装包中预置矢量图相关数据判断系统平 台是否支持矢量图,若支持,则针对一种应用程序制作一套原始矢量图,并利用所述原 始矢量图生成对应该系统平台的应用程序安装包;此时上述矢量图相关数据是指原始矢 量图;若不支持,则针对一种应用程序制作一套原始矢量图,并对所述原始矢量图进行 内容解析,得到解析结果,然后利用所述解析结果生成对应该系统平台的应用程序的安 装包;此时上述矢量图相关数据是指矢量图解析结果。优选的,当上述矢量图相关数据是指矢量图解析结果时,将所述矢量图解析结 果进行伸缩之后,还包括对伸缩后的矢量图解析结果进行格式转换,转换为当前系统 平台支持的目标格式;其中,所述目标格式在应用程序的安装包中预定义;则所述保存 伸缩后的数据为保存伸缩后的目标格式数据。优选的,所述针对一种应用程序制作一套原始矢量图,包括针对一种应用程 序,选取最小的屏幕分辨率制作一套原始矢量图。优选的,所述当前系统平台的屏幕分辨率是指安装该系统平台的移动终端支持 的屏幕分辨率。本发明还提供了一种多平台多分辨率应用程序界面的处理装置,包括矢量图读取单元,用于读取矢量图相关数据,所述矢量图相关数据用于生成应 用程序界面;分辨率查询单元,用于查询当前系统平台的屏幕分辨率;
矢量图伸缩单元,用于将所述矢量图相关数据按照当前系统平台的屏幕分辨率 进行相应比例的伸缩,得到伸缩后的数据。优选的,如果所述装置用于安装应用程序,则还包括保存单元,用于保存所 述伸缩后的数据;程序执行单元,用于每次运行应用程序时,使用所述保存的数据生成 应用程序界面;其中,所述矢量图相关数据为预置在应用程序安装包中的数据。优选的,如果所述装置用于运行应用程序,则还包括界面生成单元,用于使用 所述伸缩后的数据生成当前的应用程序界面,以适应当前系统平台调整后的屏幕分辨率; 其中,所述矢量图相关数据为安装该应用程序后保存的用于生成应用程序界面的数据。优选的,所述装置还包括矢量图相关数据,所述矢量图相关数据是针对一种 应用程序制作一套。其中,所述矢量图相关数据为原始矢量图或矢量图解析结果,当系统平台支持 矢量图时,所述矢量图相关数据为原始矢量图;当系统平台不支持矢量图时,所述矢量 图相关数据为矢量图解析结果;其中,所述矢量图解析结果是对原始矢量 图进行内容解 析后得到的解析结果。优选的,所述装置还包括格式转换单元,用于当所述矢量图相关数据为矢量 图解析结果时,对伸缩后的矢量图解析结果进行格式转换,转换为当前系统平台支持的 目标格式;其中,所述目标格式预定义;则所述保存单元用于保存伸缩后的目标格式数 据。优选的,所述矢量图相关数据是针对一种应用程序,选取最小的屏幕分辨率制
作一套。优选的,所述当前系统平台的屏幕分辨率是指安装该系统平台的移动终端支持 的屏幕分辨率。与现有技术相比,本发明具有以下优点首先,本发明中同一个应用程序只需要制作一套矢量图片(即一种规格的矢量 图片),再根据平台不同区分安装包,这样每个平台下只有一个安装包,而且每个安装包 中只包含一种规格的矢量图。如果一个平台下有多个屏幕分辨率,则在每种分辨率的程 序安装过程中,将安装包中的矢量图按照当前的屏幕分辨率进行伸缩即可。这样,一个 安装包就可以适配同一个平台下的多种分辨率。由此带来的好处是这种方法大大减小了应用程序界面和布局的设计压力,缩 减了图片制作和维护的工作量,安装包的体积也大幅减小,因此节约了制作安装包的各 种资源。而且,用户在选择程序安装包时,无需再对照分辨率进行选择,只需要按照平 台选择相应的安装包即可,因此提高了程序安装的效率和准确率。并且,同一个应用程 序制作一套矢量图片的方式,还将不同平台上同一种应用程序的视觉展现和使用体验进 行了高度统一。其次,安装包中选取分辨率最小的尺寸制作矢量图,还可以大幅度的减少程序 安装包的大小,为应用程序安装包的下载和传播带来有利条件。


图1是本发明实施例一所述一种多平台多分辨率应用程序界面的处理方法流程图;图2是本发明实施例二所述一种多平台多分辨率应用程序界面的处理方法流程 图;图3是本发明实施例三中制作应用程序安装包的流程图;图4是本发明实施例三所述一种多平台多分辨率应用程序界面的处理方法流程 图;图5是本发明实施例四所述一种多平台多分辨率应用程序界面的处理装置的结 构图;图6是本发明实施例五所述一种多平台多分辨率应用程序界面的处理装置的结 构图;图7是本发明实施例六所述一种应用程序执行过程中的界面自适应方法流程 图;图8是本发明实施例六所述一种应用程序执行过程中的界面自适应装置结构 图。
具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体 实施方式对本发明作进一步详细的说明。同一个应用程序,虽然需要适配在不同的平台上并适配不同的屏幕分辨率,但 是其基本界面的布局大体是一致的。基于这一点,本发明提出了一种多平台多分辨率程 序界面自适应的方法,该方法对一种应用程序的界面布局,只基于一种屏幕分辨率来制 作一套矢量图片,再根据平台不同区分安装包,这样应用程序安装包中仅包含这一种规 格的图片。在程序安装过程中,对安装包中这一规格的矢量图按照当前平台的实际分辨 率进行伸缩,即可用一套矢量图片来适应多种分辨率的屏幕。下面通过实施例进行详细说明。实施例一参照图1,是实施例一所述一种多平台多分辨率应用程序界面的处理方法流程 图。当在某一系统平台上安装一种应用程序时,执行以下步骤步骤101,读取用于生成应用程序界面的原始矢量图;即从适用该平台的应用程序安装包中读取原始矢量图,该原始矢量图定义了应 用程序的界面布局,用于运行应用程序时绘制界面。一种应用程序的安装包中只包含基 于一种分辨率的原始矢量图,优选的,为了减小安装包的体积,统一使用最小尺寸(即 最小分辨率)的原始矢量图。步骤102,查询当前系统平台的屏幕分辨率;安装同一个系统平台的不同设备,各个设备可能支持的屏幕分辨率不同,因此一个系统平台可支持多种屏幕分辨率,所述当前系统平台的屏幕分辨率是指运行当前 系统平台的设备支持的分辨率。在程序安装过程中,通过调用平台的API (Application Programming Interface,应用程序接口)函数,会自动检测当前系统平台的屏幕分辨率。 如果当前平台的分辨率与安装包中的原始矢量图分辨率相同,则安装包中的原始矢量图可直接用于当前的系统平台;如果不同,则执行步骤103。步骤103,将所述原始矢量图按照当前系统平台的屏幕分辨率进行相应比例的伸缩,并保存伸缩后的数据。通过比较两种分辨率,可以计算出伸缩比例,然后按照所述比例对安装包中的 原始矢量图进行相应比例的伸缩,使之符合当前屏幕的分辨率。然后将伸缩处理后的原 始矢量图数据进行保存,以便在每次运行该应用程序时直接读取保存的数据来布局和绘 制界面。其中,所述伸缩是指两种情况如果原始矢量图的分辨率小于当前屏幕的分辨 率,此时需要拉伸原始矢量图,即将原始矢量图进行放大;如果原始矢量图的分辨率大 于当前屏幕的分辨率,此时需要缩小原始矢量图。例如,将原始矢量图的宽度放大1.5 倍,并将其高度放大2倍;或者将原始矢量图的宽度和高度进行等比放大2倍。如果安 装包中的矢量图选用最小分辨率,则在安装过程中通常进行图片的拉伸。此外,还有一种例外情况是如果当前屏幕的分辨率正好与安装包中原始矢量 图的分辨率相同,则伸缩比例即为1 1,即不需要进行伸缩处理。本发明实施例也包括 这种特殊情况。按照上述流程,如果安装同一应用程序的平台分辨率不同,则分别计算伸缩比 例即可。这样,一个应用程序安装包就可以适配同一个平台下的多种分辨率,大大缩减 了图片制作和维护的工作量,安装包的体积也大幅减小。而且,用户在选择程序安装包 时,无需再对照分辨率进行选择,只需要按照平台选择相应的安装包即可。并且,同一 个应用程序制作一套原始矢量图片的方式,还将不同平台上同一种应用程序的视觉展现 和使用体验进行了高度统一。实施例二 在实际应用中,有些系统平台支持矢量图的显示,而有些系统平台并不支持矢 量图的显示,因此需要对安装包中的矢量图进行格式转换再显示。参照图2,是实施例二所述一种多平台多分辨率应用程序界面的处理方法流程 图。程序安装过程如下步骤201,读取用于生成应用程序界面的原始矢量图;步骤202,对原始矢量图进行内容解析;计算机中显示的图形一般可以分为两大类——矢量图和位图。矢量图使用直线 和曲线来描述图形,这些图形的元素是一些点、线、矩形、多边形、圆和弧线等等,它 们都是通过数学公式计算获得的。例如一幅花的矢量图形实际上是由线段形成外框轮 廓,由外框的颜色以及外框所封闭的颜色决定花显示出的颜色。由于矢量图形可通过公 式计算获得,所以矢量图形文件体积一般较小。矢量图形最大的优点是无论放大、缩小 或旋转等不会失真。矢量图通常使用XML格式存储内容,存储的内容就是上述的点、线、图片、文 字等一般图片的基本元素。解析就是对XML格式进行解析,并生成解析结果文件(也称 为中间文件),该文件就是记录图片元素的文件。步骤203,查询当前系统平台的屏幕分辨率;步骤204,将所述矢量图解析结果按照当前系统平台的屏幕分辨率进行相应比例的伸缩;步骤205,将伸缩后的矢量图解析结果转换为目标图片格式并保存。矢量图解析结果即指解析结果文件,格式转换就是对图片的基本元素进行转 换,最终生成目标格式的图片。例如,将XML格式转换为PNG图片。其中,所述目标 格式是当前系统平台可以识别的格式,目标格式是在应用程序的安装包中预定义,通常 定义一种比较通用的格式,如大部分手机支持的PNG格式。经过上述流程,每次运行应用程序时,直接使用保存的目标格式图片生成界 面。实施例三在实施例二中,由于矢量图解析过程最耗费时间,占整个转换时间的95%以 上,而且 对于手机等移动终端,其运行速度远远不如PC机。因此本发明提供了优选实 施例三,将所述解析过程在制作安装包的过程中完成,这样当手机等设备安装应用程序 时,就不需要耗费太多的时间用于解析。参照图3,是实施例三所述制作应用程序安装包的流程图。当针对一种应用程序 制作安装包时,执行以下步骤步骤301,制作一套原始矢量图;即选取一种规格制作一套原始矢量图;优选的,可以选取最小分辨率来制作原始矢量图,以减小安装包的体积。步骤302,判断系统平台是否支持矢量图;若支持,则转到步骤305,若不支 持,则继续步骤303;同一种应用程序的安装包需要区分不同平台,因为平台不同,同一种应用程序 的可执行文件Cexe文件)可能有所不同。而针对一种系统平台,只需要制作一个安装 包,该安装包适用于该平台下的所有屏幕分辨率。因此,在制作某个系统平台的安装包时,需要判断该平台是否支持矢量图,如 果支持,则不需要进行内容解析;如果不支持,则需要对矢量图内容进行解析,并将解 析结果存储。步骤303,对原始矢量图进行内容解析,得到矢量图解析结果;矢量图解析结果即指内容解析结果。步骤304,利用所述矢量图解析结果生成对应该系统平台的安装包。此外,在生成安装包的过程中,还需要选择一种该平台支持的图片格式作为目 标格式,即在安装包中设定目标格式。步骤305,利用所述原始矢量图生成对应该系统平台的安装包。对于不支持矢量图的系统平台而言,矢量图的解析结果已经包含在程序安装包 中,这样在程序安装时,就可以直接利用解析结果,参照当前分辨率直接进行目标图片 格式的生成,从而加快安装速度。参照图4,是实施例三所述一种多平台多分辨率应用程序界面的处理方法流程 图。该流程描述了不支持矢量图的系统平台安装程序的过程,如下步骤401,读取矢量图解析结果;即程序安装包中是原始矢量图的内容解析结果,直接读取该解析结果。
步骤402,查询当前系统平台的屏幕分辨率;步骤403,将所述矢量图解析结果按照当前系统平台的屏幕分辨率进行相应比例 的伸缩;步骤404,将伸缩后的矢量图解析结果转换为目标图片格式并保存。由于已经获得了解析结果,所以可以直接对伸缩后的矢量图进行格式转换。每 次运行应用程序时,直接使用保存的目标格式图片生成界面。综上所述,本发明对同一个应用程序只需要制作一套矢量图片,再根据平台不 同区分安装包,这样安装包中只包含这一种规格的矢量图。在程序安装过程中,如果当 前平台支持矢量图,则直接查询当前平台的屏幕分辨率,然后将矢量图按照该分辨率进 行相应比例的伸缩,并将伸缩后的图片进行存储;当安装完毕运行应用程序时,直接使 用存储的图片进行布局和界面的绘制。如果当前平台不支持矢量图,则需要选取一种该 平台支持的图片格式作为目标图片格式,安装时查询当前平台的屏幕分辨率,将矢量图 解析结果按照该分辨率进行相应比例的伸缩,并将伸缩后的矢量图解析结果转化为目标 图片格式进行存储;在运行应用程序时,直接使用存储的目标格式图片进行布局和界面 的绘制。上述过程中,如果当前平台支持矢量图,则安装包中包含的是原始矢量图;如 果当前平台不支持矢量图,则安装包中包含的是矢量图解析结果。因此,可以将原始 矢量图和矢量图解析结果 统称为矢量图相关数据,其包含在安装包中,用于生成程序界 面。基于上述三个实施例的描述,本发明可以在以跨平台、跨分辨率的应用程序中
统一使用。以触摸屏手机的应用程序为例,本发明对同一个输入法程序的界面和布局,只 使用一套矢量图片就可以在目前所有的触摸屏智能手机上应用。例如在其支持的所 有机型中,最小的屏幕宽度分辨率是240,所以按照程序界面的最小尺寸QVGA(Quarter VGA,即VGA的四分之一尺寸,亦即在液晶屏幕(LCD)上输出的分辨率是240X320像 素),将触摸屏输入法程序图片制作成SVG矢量图(Scapable Vector Graphics,可缩放矢量 图像)。将该输入法程序分别安装于Symbian系统和Windows Mobile PPC系统的手机 上。由于Symbian系统支持矢量图的显示,所以可以直接使用这些矢量图配置不同分辨 率的手机。而Windows Mobile PPC系统并不支持矢量图的显示,则选择支持的BMP文 件格式作为目标图片格式。在针对WindowsMobilePPC系统的安装包制作过程中,需要 将SVG矢量图进行解析;然后在安装过程中,需要判断每一个机型的屏幕分辨率,然后 将SVG矢量图片的解析结果按照具体机型的分辨率进行相应比例的拉伸,再转化为其支 持的BMP图片格式进行存储。假设当前安装的机型分辨率为VGA,则需要将SVG矢 量图片等比进行2倍拉伸,再转化为BMP图片格式进行存储。当程序运行需要绘制界面 时,利用存储的BMP图片进行界面绘制,生成布局。更进一步,将本发明与现有技术进行对比在Windows Mobile PPC平台上,智能手机的分辨率有4种240*240、 240*320、480*640、480*800;并且PPC平台不支持可拉伸的矢量图片。
在现有技术的方案一中,需要针对每一种分辨率都制作一套BMP图片,一共4 套。另外,触摸屏输入法支持的其他智能手机平台,例如Symbian平台、Andorid平 台、iphone平台,假设这些平台各自只有1个分辨率,那么就需要相应格式和分辨率的图 片各1套,共3套。这样就总共需要7套图片,7个安装包,图片制作工作量非常大,后 期维护也很困难。在现有技术的方案二中,为了让用户方便快速的选择到适合自己手机的应用程 序安装包,每个平台只提供1个安装包,但是Windows Mobile PPC平台的1个安装包中 包含了 4种分辨率的图片。这样,Windows Mobile PPC平台中图片资源就是实际安装使 用图片的4倍,大大浪费了用户手机宝贵的存储空间。如果这个安装包是通过联网下载 的,那么也大大浪费 了用户的下载流量和下载时间。而使用本发明所述的技术,只需要制作一套矢量图片,再根据平台不同区分安 装包,就可以供用户使用了,大大降低图片的制作成本和程序的后期维护成本。另外, 矢量图本身属于体积较小的图片格式,使用本发明,还可以在最大程度上控制应用程序 安装包的大小。此外,本发明不仅可用于触摸屏的输入情景中,只要是跨平台、跨分辨率的应 用程序界面,都可以使用本发明所述技术。例如,手机输入法应用程序,同一种输入法 覆盖了很多手机平台,如某输入法有symbian版、ppc版、smart phone版、黑莓版,等
等,所有版本的输入法功能基本一致,界面也基本一致,因此安装包中可制作一套矢量 图。基于上述方法实施例,本发明还提供了下述两种装置实施例,参照实施例四和 实施例五。实施例四参照图5,是本发明实施例四所述一种多平台多分辨率应用程序界面的处理装置 的结构图。所述装置包括矢量图读取单元51,用于读取矢量图相关数据,所述矢量图相关数据用于生成 应用程序界面;分辨率查询单元52,用于查询当前系统平台的屏幕分辨率;矢量图伸缩单元53,用于将所述矢量图相关数据按照当前系统平台的屏幕分辨 率进行相应比例的伸缩;保存单元54,用于保存伸缩后的数据。其中,所述矢量图相关数据为原始矢量图或矢量图解析结果,当系统平台支持 矢量图时,所述矢量图为原始矢量图;当系统平台不支持矢量图时,所述矢量图为矢量 图解析结果;其中,所述矢量图解析结果是对原始矢量图进行内容解析后得到的解析结^ ο优选的,所述装置还可以包括格式转换单元55,用于当所述矢量图为矢量图解析结果时,对伸缩后的矢量图 解析结果进行格式转换,转换为当前系统平台支持的目标格式;其中,所述目标格式预 定义;则所述保存单元54用于保存伸缩后的目标格式数据。其中,所述当前系统平台的屏幕分辨率是指安装该系统平台的移动终端支持的屏幕分辨率。在实际应用中,图5所示装置可以作为一种插件程序,用于从安装包中读取矢 量图相关数据并完成程序的安装。安装包中的矢量图相关数据是针对一种应用程序,基 于一种屏幕分辨率而制作一套,优选选取最小的矢量图分辨率制作。当手机等设备安装 某个应用程序时,可以先下载该插件和相应的安装包,并利用安装包通过执行该插件程 序完成安装过程。优选的,所述插件还可以包括程序执行单元,用于每次运行应用程序时,使用存储的数据生成应用程序界 面。实施例五参照图6,是本发明实施例五所述一种多平台多分辨率应用程序界面的处理装置 的结构 图。所述装置包括矢量图相关数据61,所述矢量图相关数据是针对一种应用程序制作一套;优选 的,选取最小的矢量图分辨率制作;矢量图读取单元62,用于读取矢量图相关数据,所述矢量图相关数据用于生成 应用程序界面;分辨率查询单元63,用于查询当前系统平台的屏幕分辨率;矢量图伸缩单元64,用于将所述矢量图相关数据按照当前系统平台的屏幕分辨 率进行相应比例的伸缩;保存单元65,用于保存伸缩后的数据;程序执行单元66,用于运行应用程序时,使用存储的数据生成应用程序界面。其中,所述矢量图相关数据为原始矢量图或矢量图解析结果,当系统平台支持 矢量图时,所述矢量图相关数据为原始矢量图;当系统平台不支持矢量图时,所述矢量 图相关数据为矢量图解析结果。优选的,所述装置还可以包括格式转换单元67,用于当所述矢量图相关数据为矢量图解析时,对伸缩后的矢 量图解析结果进行格式转换,转换为当前系统平台支持的目标格式;其中,所述目标格 式预定义;则所述保存单元65用于保存伸缩后的目标格式数据。在实际应用中,图6所示装置可以作为一种安装包程序,该安装包具有前面方 法实施例中所述的属性,即针对一种应用程序制作一套矢量图,并根据不同平台区分安 装包。如果系统平台支持矢量图,则对应该平台的安装包就不需要包括格式转换单元 67;如果系统平台不支持矢量图,则对应该平台的安装包就需要包括格式转换单元67, 而且安装包中的矢量图相关数据是矢量图解析结果。当手机等设备安装某个应用程序 时,可以下载相应的安装包,并利用安装包中具有的上述功能模块完成安装过程。此外,上述格式转换单元67在实际应用中相当于一个静态链接库(lib)或动态链 接库(dll),在安装包程序中调用该lib或dll完成格式转换功能。实施例六上述实施例一至实施例五描述的是在应用程序安装过程中,一种多平台多分辨 率应用程序界面自适应的方法和装置,基于本发明思路,还可以将本发明的内容进一步扩展,提供一种在应用程序运行过程中多平台多分辨率应用程序界面自适应的方法和装置。这种在应用程序运行过程中多平台多分辨率应用程序界面自适应的方法和装 置,适用于以下场景按照上述实施例所述的方法安装应用程序后,如果安装该应用程 序的设备调整了屏幕分辨率,当再次运行该应用程序时,就可以根据调整后的屏幕分辨 率实时调整应用程序界面。具体说明如下参照图7,是本发明实施例六所述一种应用程序执行过程中的界面自适应方法流 程图。步骤701,启动应用程序;如果已安装应用程序的设备调整了屏幕分辨率,则当再次运行该应用程序时, 该应用程序能够获知屏幕分辨率已调整的消息,这时,该应用程序会执行以下步骤。如 果按照上述实施例的方案不调整屏幕分辨率,则该应用程序会自动读取安装过程中保存 的数据来布局和绘制界面。步骤702,读取用于生成应用程序界面的矢量图相关数据;其中,所述矢量图 相关数据为安装该应用程序后保存的用于生成应用程序界面的数据;结合上述实施例的说明,本步骤的矢量图相关数据即指安装完应用程序后保存 在设备上的伸缩处理后的矢量图数据(针对当前系统平台支持矢量图的情况),或者是转 换为目标图片格式的数据(针对当前系统平台不支持矢量图的情况)。步骤703,查询当前系统平台的屏幕分辨率,所述屏幕分辨率是指调整后的屏幕 分辨率;步骤704,将所述矢量图相关数据按照当前系统平台的屏幕分辨率进行相应比例 的伸缩,得到伸缩后的数据;步骤705,使用所述伸缩后的数据生成当前的应用程序界面,以适应当前系统平 台调整后的屏幕分辨率。这样,在调整屏幕分辨率之后,每次执行应用程序时,都会按照图7的步骤重 新绘制应用程序界面,以适应调整后的屏幕分辨率。或者,优选的,保存步骤704所述 伸缩后的数据,以便后续运行时直接使用。举例说明,例如某种型号的手机其屏幕分辨率为480*640,在安装某应用程序A 时,将安装包中240*240的原始矢量图拉伸为480*640的矢量图并进行保存,以适应当前 的手机屏幕,每次运行应用程序A时,直接使用480*640的矢量图绘制界面。如果该手 机上内置或安装了可调整屏幕分辨率的应用程序B,用户通过应用程序B将手机屏幕从原 来的480*640调整为480*800后,再次运行应用 程序A时,应用程序A会自动读取保存 的480*640的矢量图数据,并二次拉伸为480*800来绘制界面。可选的,还可以将二次 拉伸为480*800的矢量图数据进行保存,以后运行应用程序A时直接使用。如果用户再 次调整了手机屏幕分辨率,调整为240*320,则运行应用程序A时还会自动调整程序界面 的大小。对于一种特殊情况,即在程序安装过程中,如果当前屏幕的分辨率正好与 安装包中原始矢量图或矢量图解析结果的分辨率相同,则安装过程中不需要进行伸缩处 理,程序安装后保存的数据就是安装包中的原始数据,而不是上面所述的一次拉伸的数据。这种特殊情况下,如果调整当前屏幕的分辨率,则重新启动应用程序后执行的伸 缩,即是一次伸缩。本实施例也包括这种特殊情况的处理。此外,基于上述实施例的思路,还可以扩展出另一实施例,即在应用程序的 安装过程中,无论当前屏幕的分辨率是否与安装包中的矢量图分辨率一致,都不进行伸 缩处理,只将安装包中的原始矢量图相关数据直接进行保存;当运行该应用程序时,再 从保存的数据中读取进行伸缩处理。而且,此过程与当前屏幕的分辨率是否调整也无 关,即每次启动该应用程序都会根据当前屏幕的分辨率进行相应的伸缩处理,从而实现 自适应屏幕分辨率。参照图8,是本发明实施例六所述一种应用程序执行过程中的界面自适应装置结 构图。所述装置用于运行应用程序,主要包括矢量图读取单元81,用于读取矢量图相关数据,所述矢量图相关数据为安装 该应用程序后保存的用于生成应用程序界面的数据,即安装过程中进行一次拉伸后的数 据;分辨率查询单元82,用于查询当前系统平台的屏幕分辨率;
矢量图伸缩单元83,用于将所述矢量图相关数据按照当前系统平台的屏幕分辨 率进行相应比例的伸缩,得到二次伸缩后的数据;界面生成单元84,用于使用所述二次伸缩后的数据生成当前的应用程序界面, 以适应当前系统平台调整后的屏幕分辨率。其中,所述当前系统平台的屏幕分辨率是指安装该系统平台的移动终端调整后 的屏幕分辨率。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是 与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实 施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实 施例的部分说明即可。以上对本发明所提供的一种多平台多分辨率应用程序界面的处理方法和装置, 进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上 实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般 技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所 述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种多平台多分辨率应用程序界面的处理方法,其特征在于,包括读取用于生成应用程序界面的矢量图相关数据;查询当前系统平台的屏幕分辨率;将所述矢量图相关数据按照当前系统平台的屏幕分辨率进行相应比例的伸缩,得到 伸缩后的数据。
2.根据权利要求1所述的方法,其特征在于如果为应用程序安装过程,则还包括保存所述伸缩后的数据,每次运行应用程序 时,使用所述保存的数据生成应用程序界面;其中,所述矢量图相关数据为预置在应用 程序安装包中的数据。
3.根据权利要求1所述的方法,其特征在于如果为应用程序运行过程,则还包括使用所述伸缩后的数据生成当前的应用程序 界面,以适应当前系统平台调整后的屏幕分辨率;其中,所述矢量图相关数据为安装该 应用程序后保存的用于生成应用程序界面的数据。
4.根据权利要求2所述的方法,其特征在于,通过以下方式在应用程序的安装包中预 置矢量图相关数据判断系统平台是否支持矢量图,若支持,则针对一种应用程序制作一套原始矢量 图,并利用所述原始矢量图生成对应该系统平台的应用程序安装包;此时上述矢量图相 关数据是指原始矢量图;若不支持,则针对一种应用程序制作一套原始矢量图,并对所述原始矢量图进行内 容解析,得到解析结果,然后利用所述解析结果生成对应该系统平台的应用程序的安装 包;此时上述矢量图相关数据是指矢量图解析结果。
5.根据权利要求4所述的方法,其特征在于,当上述矢量图相关数据是指矢量图解析 结果时,将所述矢量图解析结果进行伸缩之后,还包括对伸缩后的矢量图解析结果进行格式转换,转换为当前系统平台支持的目标格式; 其中,所述目标格式在应用程序的安装包中预定义;则所述保存伸缩后的数据为保存伸缩后的目标格式数据。
6.根据权利要求4所述的方法,其特征在于,所述针对一种应用程序制作一套原始矢 量图,包括针对一种应用程序,选取最小的屏幕分辨率制作一套原始矢量图。
7.根据权利要求1所述的方法,其特征在于所述当前系统平台的屏幕分辨率是指安装该系统平台的移动终端支持的屏幕分辨率。
8.—种多平台多分辨率应用程序界面的处理装置,其特征在于,包括矢量图读取单元,用于读取矢量图相关数据,所述矢量图相关数据用于生成应用程 序界面;分辨率查询单元,用于查询当前系统平台的屏幕分辨率;矢量图伸缩单元,用于将所述矢量图相关数据按照当前系统平台的屏幕分辨率进行 相应比例的伸缩,得到伸缩后的数据。
9.根据权利要求8所述的装置,其特征在于如果所述装置用于安装应用程序,则还包括保存单元,用于保存所述伸缩后的数据;程序执行单元,用于每次运行应用程序时,使用所述保存的数据生成应用程序界 面;其中,所述矢量图相关数据为预置在应用程序安装包中的数据。
10.根据权利要求8所述的装置,其特征在于如果所述装置用于运行应用程序,则还包括界面生成单元,用于使用所述伸缩后的数据生成当前的应用程序界面,以适应当前 系统平台调整后的屏幕分辨率;其中,所述矢量图相关数据为安装该应用程序后保存的 用于生成应用程序界面的数据。
11.根据权利要求9所述的装置,其特征在于,还包括矢量图相关数据,所述矢量图相关数据是针对一种应用程序制作一套。
12.根据权利要求9或11所述的装置,其特征在于所述矢量图相关数据为原始矢量图或矢量图解析结果,当系统平台支持矢量图时, 所述矢量图相关数据为原始矢量图;当系统平台不支持矢量图时,所述矢量图相关数据 为矢量图解析结果;其中,所述矢量图解析结果是对原始矢量图进行内容解析后得到的解析结果。
13.根据权利要求12所述的装置,其特征在于,还包括格式转换单元,用于当所述矢量图相关数据为矢量图解析结果时,对伸缩后的矢量 图解析结果进行格式转换,转换为当前系统平台支持的目标格式;其中,所述目标格式 预定义;则所述保存单元用于保存伸缩后的目标格式数据。
14.根据权利要求11所述的装置,其特征在于所述矢量图相关数据是针对一种应用程序,选取最小的屏幕分辨率制作一套。
15.根据权利要求8所述的装置,其特征在于所述当前系统平台的屏幕分辨率是指安装该系统平台的移动终端支持的屏幕分辨
全文摘要
本发明提供了一种多平台多分辨率应用程序界面的处理方法和装置,以解决目前的应用程序界面无法适应多平台多分辨率的问题。所述方法包括读取用于生成应用程序界面的矢量图相关数据;查询当前系统平台的屏幕分辨率;将所述矢量图相关数据按照当前系统平台的屏幕分辨率进行相应比例的伸缩,得到伸缩后的数据。本发明中一个安装包就可以适配同一个平台下的多种分辨率,因此大大减小了应用程序界面和布局的设计压力,缩减了图片制作和维护的工作量,安装包的体积也大幅减小,因此节约了制作安装包的各种资源。
文档编号G06F9/445GK102023849SQ20091009320
公开日2011年4月20日 申请日期2009年9月22日 优先权日2009年9月22日
发明者吴爽, 王斌 申请人:北京搜狗科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1