安卓操作系统中微件界面的建立方法及移动终端的制作方法

文档序号:6513678阅读:361来源:国知局
安卓操作系统中微件界面的建立方法及移动终端的制作方法
【专利摘要】本发明公开了一种安卓操作系统中微件界面的建立方法及移动终端,建立方法包括以下步骤:S1:数据处理模块根据待实现的微件功能的个数建立多面体数学模型;S2:触摸输入模块接收外部输入的多面体数学模型每面上待实现的微件的数据信息,并发送给数据处理模块;S3:数据处理模块根据微件的数据信息在多面体数学模型的对应面上设置对应微件。移动终端包括数据处理模块、触摸输入模块和多面体微件模块。相对传统的2D和3D?Widget,本发明在同一个桌面页面下可以建立多个微件界面,每个微件界面可以实现一个微件功能,微件界面的个数可以根据需要设定,因而只需要进行多个微件界面的切换,就可以实现多个不同的Widget功能。
【专利说明】安卓操作系统中微件界面的建立方法及移动终端
【技术领域】
[0001]本发明涉及操作系统设计【技术领域】,具体涉及安卓操作系统中微件界面的建立方法及移动终端。
【背景技术】
[0002]关于本领域常用技术术语介绍如下:
[0003]Widget:中文译名为微件;
[0004]OpenGL ES:英文全称为 OpenGL for Embedded Systems ;
[0005]Launcher:安卓系统中的桌面启动器,安卓系统的桌面UI统称为Launcher ;
[0006]NDK:英文全称为 Native Development Kit ;
[0007]JN1:英文全称为Java Native Interface,中文为JAVA本地调用。
[0008]随着移动互联网的迅速发展,微件(Widget)的出现让移动互联网的发展又提高到一个新的阶段。Widget是一种基于JavaScript应用程序平台,也可以认为是一个基于网络、可以独立在移动终端的桌面运行的实用小工具,通常是打包成一个文件被移动终端如手机下载并安装使用,用户通过Widget可以享受新闻阅读、天气资讯、图片浏览等业务。一般情况下,每个Widget对应一个图标,用户通过点击Widget的图标即可去查看该Widget中的内容,实现对应的Widget功能。
[0009]现有技术中,常见的Widget主要为两种,一种是普通的2D Widget,另外一种是使用OpenGL ES绘制实现的3D Widget。对于第一种2D Widget,只能根据安卓操作系统提供的一些基本控件来实现一些普通的平面静态效果,例如一般安卓手机上都可下载安装的墨迹天气widget ;对于第二种3D Widget,采用的是OpenGL ES绘制技术,一般都是移动终端生产厂商定制的或者是专做3D Launcher的企业将其与桌面应用进行绑定,相对于2DWidget, 3D widget体验效果明显,可以实现动态的动画效果,例如HTC安卓手机内置的时钟天气Widget和3D相册Widget等。
[0010]现有移动终端的桌面页面上的3D Widget虽然比较酷炫,能够实现各种动态效果,但由于一个桌面页面上能够存放的3D Widget数量有限,如果想操作多个3D Widget功能,就需要建立多个桌面页面,将多个不同3D Widget添加到不同的桌面页面中,通过不同桌面页面之间的频繁切换,才能实现多个不同的3D Widget功能。

【发明内容】

[0011]本发明提供一种安卓操作系统中微件界面的建立方法及移动终端,在相同的桌面页面中建立多个微件界面,使得对应的移动终端在不切换桌面页面的情况下,仍然可以进行多个微件界面的切换,从而实现多个不同的微件功能。
[0012]根据本发明的第一方面,本发明提供一种安卓操作系统中微件界面的建立方法,包括如下步骤:。
[0013]S1:数据处理模块根据待实现的微件功能的个数建立多面体数学模型;[0014]S2:触摸输入模块接收外部输入的多面体数学模型每面上待实现的微件的数据信息,并发送给数据处理模块;
[0015]S3:数据处理模块根据微件的数据信息在多面体数学模型的对应面上设置对应微件。
[0016]在优选方式中,步骤S3包括以下子步骤:
[0017]S301:调用 MAGE 引擎;
[0018]S302:根据接收的微件的数据信息,MAGE引擎在多面体数学模型的对应面上进行相应微件的各个控件的设定。
[0019]在另一优选方式中,子步骤S302中:
[0020]启动应用程序接口函数,应用程序接口(API Application Program Interface)函数根据接收的微件数据信息进行由MAGE引擎提供的多个Actor类型的数据值或多个Actor类型在预设时间段内的数据值的设定;
[0021]根据设定的Actor类型的数据值,相应微件的各个控件的数据信息通过多个Actor或多个Actor类型组合形成的Container类型设定;
[0022]将待显示的已设定的各个控件置入MAGE引擎的显示根容器中,MAGE引擎调用OpenGL ES接口在多面体数学模型的对应面上进行对应控件的贴图显示。
[0023]根据本发明的第二方面,本发明提供一种移动终端,包括:
[0024]多面体微件模块:用于在各面上分置微件界面,每个微件界面用于进行对应微件控件的显示;
[0025]触摸输入模块:用于接收外部操作;
[0026]数据处理模块:用于判断外部操作为滑动操作还是点击操作,并根据判断结果,按照预定规则控制多个微件界面进行外部操作的响应。
[0027]在优选实施例中,数据处理模块具体用于:
[0028]判断外部操作为滑动操作还是点击操作,若判断外部操作为滑动操作,则判断滑动操作的滑动速度是否大于预设滑动速度值;
[0029]若是,根据滑动操作的滑动方向控制微件界面进行对应切换;
[0030]若判断外部操作为点击操作,则微件界面不变,控制被点击的微件界面上的相应控件进行对应功能的响应。
[0031]在优选方式中,数据处理模块还用于:
[0032]若滑动操作的滑动速度小于或等于预设滑动速度值,则根据滑动操作的滑动距离计算旋转角度,并判断计算的旋转角度是否大于预设旋转角度值,若是,则根据滑动操作的滑动方向控制微件界面进行对应切换。
[0033]本发明先在同一桌面页面内建立一个多面体数学模型,之后以多面体数学模型为基础,在多面体数学模型的对应面上建立Widget,将多面体数学模型的每个面建立为微件界面,多面体数学模型的面数与Widget界面的个数对应,因而实现在同一桌面页面内建立多个Widget界面的目的;对应的带有多个Widget界面移动终端,相对于传统的带有普通的2D Widget或传统的带有动画效果的3D Widget的移动终端,即实现了多个Widget功能,满足多个Widget功能的使用需求,还可以在不切换桌面页面的情况下,按照预定规则在一个桌面页面内进行多个Widget界面的相应操作,以实现对应的Widget功能,提高用户体验效果O
【专利附图】

【附图说明】
[0034]图1为本发明实施例一中微件界面建立方法的流程示意图之一;
[0035]图2为本发明实施例一中微件界面建立方法的流程示意图之二 ;
[0036]图3为本发明实施例二中移动终端的功能示意图;
[0037]图4为本发明实施例二中移动终端的工作流程示意图之一;
[0038]图5为本发明实施例二中移动终端的工作流程示意图之二。
【具体实施方式】
[0039]下面通过【具体实施方式】结合附图对本发明作进一步详细说明。
[0040]实施例一:
[0041]请参考图1和2,本实施例提供一种安卓操作系统中Widget界面的建立方法,建立方法包括以下步骤:
[0042]S1:数据处理模块根据待实现的微件功能的个数建立多面体数学模型。通常情况下,先根据客户需求确定待实现的Widget功能的个数,之后数据处理模块根据确定的待实现的Widget功能的个数在桌面页面中建立多面体数学模型,比如,如果需要实现三个Widget功能,就建立一个三面的棱柱,如果需要实现四个Widget功能,贝U建立四面棱柱体,待实现的Widget功能个数,是根据客户的需求定制的,多面体数学模型的建立方法,现有技术中已经有很多种,这里不再详述。
[0043]S2:触摸输入模块接收外部输入的多面体数学模型每面上待实现的微件的数据信息,并发送给数据处理模块。在建立多面体数学模型后,确定多面体数学模型的每面中具体需要实现哪个Widget的功能,之后,获取该Widge的数据信息,从而依次得到与多面体数学模型的每个面相对应的Widget的数据信息,在确定多面体数学模型每个面上待实现的微件的数据信息时,不考虑对应的这个面的xyz坐标及旋转角度值,但需要确定这个面上有哪些控件,如控制按钮、显示信息区域和显示动画区域等,确定这些控件放在这个面上的什么位置即xyz轴坐标、是否可见、旋转角度、缩放比例、颜色值、透明度和旋转中心点等,以便于之后形成一个整体的微件界面。
[0044]S3:数据处理模块根据微件的数据信息在多面体数学模型的对应面上设置对应微件。确定好多面体数学模型每面对应的Widget的数据信息后,即可根据这些数据信息在多面体数学模型中建立对应于同一个桌面页面的多个微件界面,通常情况下,多面体数学模型的面数与微件界面的个数相同,多面体数学模型的每一个面对应一个微件界面,每一个微件界面实现一个微件功能,每个微件的各个控件都设置在多面体数学模型的对应面上。
[0045]在一优选实施例中,步骤S3包括:S301:调用MAGE引擎;S302:根据接收的微件的数据信息,MAGE引擎在多面体数学模型的对应面上进行相应微件的各个控件的设定。
[0046]在另一优选实施例中,子步骤S302中:启动应用程序接口函数,应用程序接口函数(API接口函数)根据接收的微件数据信息进行由MAGE引擎提供的多个Actor类型的数据值或多个Actor类型在预设时间段内的数据值的设定;根据设定的Actor类型的数据值,相应微件的各个控件的数据信息通过多个Actor或多个Actor类型组合形成的Container类型设定;将待显示的已设定的各个控件置入MAGE引擎的显示根容器中,MAGE引擎调用OpenGL ES接口在多面体数学模型的对应面上进行对应控件的贴图显示。将微件的各个控件设定在多面体数学模型的对应面上后,多面体数学模型的各个面成为微件界面,通过安卓操作系统中的Intent完成进程通信启动相应的微件应用。
[0047]其中,在另一优选实施例中,步骤S2中,数据信息包括各微件中各控件的坐标信息、旋转角度信息、透明度信息和缩放比例信息,这些数据信息根据客户需求设置好后,夕卜部通过触摸输入模块输入;Actor类型包括IMAGE图片类型、Text文本类型、由3D Max生成的Glo3D模型类型、由MAGE引擎使用OpenGL ES接口实现的Sphere球类型和Cube盒子类型;设定的Actor类型的数据值包括坐标值、旋转角度值、透明度值和缩放比例值。
[0048]在根据微件的数据信息将多面体数学模型的多个面建立为多个微件界面时,主要通过调用MAGE引擎来实现,Widget中每个控件由MAGE引擎提供的Actor类型(Actor类型包括IMAGE图片类型、Text文本类型、由3D Max生成的Glo3D模型类型、由MAGE弓丨擎使用OpenGL ES接口实现的Sphere球类型和Cube盒子类型等)来实例化,这些Actor类型也可以组合放在一个Container里面形成一个大的Actor类型(或者说,这里的Container也是一个Actor),并将每个Actor类型根据步骤S2中接收的微件的数据信息来设定每个Actor类型的坐标值、旋转角度值、透明度值和缩放比例值等,这里,每个Actor类型的数据值都有应用程序接口函数来设置,还可以设置某个Actor (也可以是某个Container)类型在一个预设时间段内的坐标值、旋转角度值、透明度值、缩放比例值、是否可见和颜色值的变化来实现动画效果,然后将所有要显示的已设定的各个控件放在stage (MAGE引擎的显示根容器)里面显示即可,由于MAGE引擎封装了 OpenGL ES接口,实际上最后的显示还是是通过调用OpenGL ES接口,根据前面设定的控件的数据信息来实时贴图显示。
[0049]Mage引擎是MTK提供的,它内嵌于安卓系统的framework层,通过JNI调用客制化的C代码(这里以NDK动态库形式调用),NDK代码再调用OpenGL ES接口实现3D画面的渲染显示,并在framework的java层提供API函数接口及窗口控件,让上层的安卓应用可以直接调用(跟原生安卓系统的控件及接口的调用方法一样),也可以与原生的接口、控件混合使用,给用户呈现更多风格的微件界面。
[0050]本实施例中,先在同一桌面页面内建立一个多面体数学模型,之后以多面体数学模型为基础,通过调用MAGE引擎,将多面体数学模型的对应面建立为微件界面,多面体数学模型的面数与微件界面的个数对应,因而实现在同一桌面页面内建立多个微件界面的目的。
[0051]实施例二:
[0052]请参考图3-5,本实施例提供一种移动终端,包括:
[0053]多面体微件模块:用于在各面上分置微件界面,每个微件界面用于进行对应微件控件的显示;
[0054]触摸输入模块:用于接收外部操作;
[0055]数据处理模块:用于判断外部操作为滑动操作还是点击操作,并根据判断结果,按照预定规则控制多个微件界面进行外部操作的响应。
[0056]在其中一优选实施例中,数据处理模块具体用于:
[0057]判断外部操作为滑动操作还是点击操作,若判断外部操作为滑动操作,则判断滑动操作的滑动速度是否大于预设滑动速度值;
[0058]若是,根据滑动操作的滑动方向控制微件界面进行对应切换;
[0059]若判断外部操作为点击操作,则微件界面不变,控制被点击的微件界面上的相应控件进行对应功能的响应。
[0060]在另一优选实施例中,数据处理模块还用于:若滑动操作的滑动速度小于或等于预设滑动速度值,则根据滑动操作的滑动距离计算旋转角度,并判断计算的旋转角度是否大于预设旋转角度值,若是,则根据滑动操作的滑动方向控制微件界面进行对应切换。其中,数据处理模块还优选用于判断外部操作是否在微件界面范围内,若是,再判断外部操作为滑动操作还是点击操作。
[0061]移动终端出厂后,多个微件界面已经在移动终端中建立,分布在多面体数学模块的各面中,从桌面页面进入其中一个微件界面后,触摸输入模块等待外部操作,通过外部操作,数据处理模块可以控制可以在此桌面页面内进行多个微件界面的切换。根据预定规则之一:当外部操作为滑动时,则判断滑动操作的滑动速度是否大于预设滑动速度值,若是,根据滑动操作的滑动方向切换到对应的微件界面;当外部操作为点击时,若点击操作的对象为当前微件界面内的某个特定控件,如音乐播放或暂停控件,则响应点击操作,特定控件启动,控制对应特定功能,若点击操作的对象非特定控件,则启动当前微件界面内对应的微件功能。优选地,根据预定规则之二:当外部操作为滑动时,若滑动操作的滑动速度小于或等于预设滑动速度值,则根据滑动操作的滑动距离计算旋转角度,并判断计算的旋转角度是否大于预设旋转角度值,若是,则根据滑动操作的滑动方向切换到对应的微件界面,若否,则在当前微件界面不进行切换操作。这里,根据移动终端的硬件配置及软件系统设置的不同,需要设定不同的预设滑动速度,预设旋转角度值也要根据需要实现几个widget功能来设置不同的角度值。
[0062]作为优选,数据处理模块先判断外部操作是否在微件界面范围内,若是,则判断外部操作是否为滑动操作,若是,判断外部操作为滑动操作还是点击操作,并根据判断结果,按照预定规则控制多个微件界面进行外部操作的响应。
[0063]另外,移动终端中,微件界面显示通过渲染实现的:微件界面建立后,调用MAGE引擎提供的JAVA、JN1、NDK和OpenGL ES控件进行对应微件界面的渲染显示,若微件界面中有动画效果,则播放切换后的微件界面的动画效果,这里需要说明的是,无论微件界面是否进行切换,微件界面的显示都按照上述方法进行渲染显示。其中,调用MAGE引擎提供的JAVA、JNI,NDK和OpenGL ES控件,还能够控制显示:(I)与多面体数学模块中的每个面对应的微件界面,并根据每个微件界面上各微件中各控件的数据信息如xyz轴坐标信息、旋转角度信息、透明度信息和动画显示信息等调整显示;(2)微件界面在切换过程中旋转角度及透明度等的变化;(3)切换前的微件界面的动画显示效果;(4)切换后的微件界面的动画显示效果;(5)点击特定控件时对应特定控件的状态变化;(6)点击微件界面时启动相应应用时的界面。
[0064]数据处理模块判断外部操作是否属于Widget界面范围内,具体可以通过外部操作在触控屏上的坐标进行判断,不在Widget界面范围内不做任何响应,如果外部操作在Widget界面范围内,判断外部操作属于滑动操作还是点击操作,如果是点击操作:数据处理模块通过点击的具体坐标判断被点击的是否为某个特定控件,如果是特定控件则控制特定功能启动(例如音乐播放/暂停);如果不是特定控件,则通过当前Widget界面旋转角度判断当前是哪个微件界面,然后启动对应微件界面内对应的应用功能,这里是通过安卓操作系统中的Intent完成进程通信启动相应的微件应用;如果是滑动操作,根据滑动操作的滑动距离计算旋转角度,然后实时变化Widget界面的显示角度及切换中的两个Widget界面中各微件的透明度、可见性等,并判断滑动操作的滑动速度是否为快速滑动(所谓快速滑动,是指若滑动操作的滑动速度大于预设滑动速度值,则为快速滑动),如果不是快速滑动,在停止滑动操作后,根据滑动距离判断计算旋转角度,如果计算的旋转角度小于某个特定的旋转角度即预设旋转角度值,则返回之前的微件界面,如果大于预设旋转角度值,则切换到对应微件界面,切换时根据滑动方向决定切换到上一个或下一个微件界面;如果是快速滑动,同样通过滑动方向决定切换到上一个或下一个页面,并且在切换的过程中,切换中的两个微件界面如果都有动画显示效果如3D Widget显示,则由之前的微件界面的动画播放切换到之后的微件界面的动画播放中。
[0065]综上,触摸输入模块为用户外部操作的输入接口,具体用于实现如下功能:1)感应接收触控屏被触摸到时的用户外部操作并判断外部操作是否有效;2)输出有效的外部操作到数据处理模块。
[0066]数据处理模块根据触摸输入模块输入的有效外部操作,响应用户输入的外部操作,根据用户输入的外部操作处理数据,主要用于实现如下功能:
[0067]I)判断外部操作如滑动操作及点击操作的坐标是否在Widget界面范围内。
[0068]2)判断滑动操作是慢慢拖拽(所谓慢慢拖拽,是指若滑动操作的滑动速度小于或等于预设滑动速度值则为慢慢拖拽)还是快速滑动。
[0069]3)根据滑动操作的滑动距离变化微件界面的显示角度和显示透明度等。
[0070]4)根据滑动操作的滑动速度判断是否切换界面。
[0071]5)根据滑动操作的旋转角度判断是否切换界面。
[0072]6)根据滑动方向判断切换到哪个界面。
[0073]7)根据点击操作的点击坐标判断点击了微件界面还是特定控件,如果不是点击特定控件,则启动相应微件界面对应的应用功能;若是点击特定控件,响应对应的操作(例如音乐播放按钮)。
[0074]移动终端内的安卓操作系统集成了 OpenGL ES技术、NDK技术、JNI技术和Widget显示技术的特点,其中OpenGL技术可以实现二维物件和场景的三维呈现,NDK技术可以使用C语言设计高效软件并以动态库组件形式存在系统底层,JNI技术使得开发者使用高级程序语言java和底层C库结合,使用安卓操作系统提供的widget技术支持用户交互,通过这些技术的结合使用,实现了在同一个桌面页面内通过多个Widget界面的切换实现多个酷炫的Widget功能,可以让用户在不切换桌面页面的情况下操作不同的Widget功能,另外,让多个Widget集中在同一个桌面页面中呈现,这样比往多个桌面页面上添加多个Widget占用更少的系统资源。带有多个微件界面移动终端,相对于传统的带有普通的2DWidget或传统的带有动画效果的3D Widget的移动终端,即实现了多个Widget功能,满足多个Widget功能的使用需求,还可以在不切换桌面页面的情况下,按照预定规则在一个桌面页面内进行多个微件界面的相应操作,以实现对应的Widget功能,提高用户体验效果。
[0075]本领域技术人员可以理解,上述实施方式中各种方法的全部或部分步骤可以通过程序来指令相关硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘或光盘等。
[0076]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属【技术领域】的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换。
【权利要求】
1.一种安卓操作系统中微件界面的建立方法,包括如下步骤: S1:数据处理模块根据待实现的微件功能的个数建立多面体数学模型; S2:触摸输入模块接收外部输入的多面体数学模型每面上待实现的微件的数据信息,并发送给数据处理模块; S3:数据处理模块根据微件的数据信息在多面体数学模型的对应面上设置对应微件。
2.如权利要求1所述的建立方法,其特征在于,步骤S3包括以下子步骤: 5301:调用MAGE引擎; 5302:根据接收的微件的数据信息,MAGE引擎在多面体数学模型的对应面上进行相应微件的各个控件的设定。
3.如权利要求2所述的建立方法,其特征在于,子步骤S302中: 启动应用程序接口函数,应用程序接口函数根据接收的微件数据信息进行由MAGE引擎提供的多个Actor类 型的数据值或多个Actor类型在预设时间段内的数据值的设定;根据设定的Actor类型的数据值,相应微件的各个控件的数据信息通过多个Actor或多个Actor类型组合形成的Container类型设定; 将待显示的已设定的各个控件置入MAGE引擎的显示根容器中,MAGE引擎调用OpenGLES接口在多面体数学模型的对应面上进行对应控件的贴图显示。
4.如权利要求3所述的建立方法,其特征在于,Actor类型包括IMAGE图片类型、Text文本类型、由3D Max生成的Glo3D模型类型、由MAGE引擎使用OpenGL ES接口实现的Sphere球类型和Cube盒子类型。
5.如权利要求3所述的建立方法,其特征在于,设定的Actor类型的数据值包括坐标值、旋转角度值、透明度值和缩放比例值。
6.如权利要求1-5任一所述的建立方法,其特征在于,步骤S2中,数据信息包括各微件中各控件的坐标信息、旋转角度信息、透明度信息和缩放比例信息。
7.—种移动终端,包括: 多面体微件模块:用于在各面上分置微件界面,每个微件界面用于进行对应微件控件的显示; 触摸输入模块:用于接收外部操作; 数据处理模块:用于判断外部操作为滑动操作还是点击操作,并根据判断结果,按照预定规则控制多个微件界面进行外部操作的响应。
8.如权利要求7所述的移动终端,其特征在于,所述数据处理模块具体用于: 判断外部操作为滑动操作还是点击操作,若判断外部操作为滑动操作,则判断滑动操作的滑动速度是否大于预设滑动速度值; 若是,根据滑动操作的滑动方向控制微件界面进行对应切换; 若判断外部操作为点击操作,则微件界面不变,控制被点击的微件界面上的相应控件进行对应功能的响应。
9.如权利要求8所述的移动终端,其特征在于,数据处理模块还用于: 若滑动操作的滑动速度小于或等于预设滑动速度值,则根据滑动操作的滑动距离计算旋转角度,并判断计算的旋转角度是否大于预设旋转角度值,若是,则根据滑动操作的滑动方向控制微件界面进行对应切换。
10.如权利要求6-9任一所述的移动终端,其特征在于,数据处理模块还用于:判断外部操作是否在微件界面范围内,`若是,则判断外部操作为滑动操作还是点击操作。
【文档编号】G06F3/0484GK103530018SQ201310451293
【公开日】2014年1月22日 申请日期:2013年9月27日 优先权日:2013年9月27日
【发明者】张志鹏 申请人:深圳天珑无线科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1