一种桌面应用组件发布、更新方法及装置与流程

文档序号:12801617阅读:588来源:国知局
一种桌面应用组件发布、更新方法及装置与流程

本申请涉及通信技术领域,尤其涉及一种桌面应用组件发布、更新方法及装置。



背景技术:

widget主要是指一种应用扩展。widget可应用于许多种平台或操作系统,主要用来制作一些桌面小插件扩展程序,比如,在手机桌面上的左边或者右边有一个工具栏可以拖动出来的小功能程序,以及windowsvista或者windows7操作系统的桌面上右边的工具栏都是widget。widget可便于用户以快捷方式打开或使用特定的应用程序,因此widget也称为桌面应用组件。

widget技术是通过xml(extensiblemarkuplanguage,扩展标记语言)、html(hypertextmark-uplanguage,超文本标记语音)、css(层叠样式表)等显示ui,js(基于js开发的用户界面)作为脚本的一种应用描述技术。解析工具可以是浏览器也可以是其他应用。

目前,业界的主流移动操作系统都提供了开发者向桌面添加桌面应用组件的能力,例如android系统的桌面widget和ios系统的today。android系统为app(应用程序)提供了向桌面创建widget的能力,由用户选择将app提供的widget放置在桌面上;ios系统在通知中心提供了today模块,为app提供了创建widget的能力,由用户选择将app提供的widget放置在通知中心。各个app可以利用此特性将信息和操作外化到终端的桌面上,方便用户更快捷的使用,也促进自身的内容有更多更快捷的入口。

桌面应用组件使用过程中需要发布app安装包,并由用户安装app安装包后才能得以应用和更新。不利于桌面应用组件的快速更新。

申请内容

本申请实施例提供了一种桌面应用组件发布、更新方法及装置。

本申请实施例提供的桌面应用组件发布方法,包括:

服务器根据桌面应用组件发布指令获取桌面应用组件更新信息;

所述服务器向终端推送所述桌面应用组件更新信息,所述桌面应用组件更新信息被所述终端用来更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

描述桌面应用组件界面布局的文件;

用于执行桌面应用组件功能的代码;

桌面应用组件所使用的界面元素资源。

优选地,所述服务器向终端推送所述桌面应用组件更新信息,包括:

所述服务器获取使用所述桌面应用组件的终端;

所述服务器向使用所述桌面应用组件的终端推送所述桌面应用组件更新信息。

本申请实施例提供的桌面应用组件更新方法,包括:

终端接收服务器推送的桌面应用组件更新信息;

所述终端根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数;

所述终端根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件,包括:

所述终端根据桌面应用组件对应的预置模板的设置参数,更新所述终端中的所述预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

用于描述桌面应用组件界面布局的文件;

用于实现桌面应用组件功能的程序代码;

桌面应用组件所使用的界面元素资源。

其中,所述终端根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件,包括以下中的一种或多种组合:

根据所述用于描述桌面应用组件界面布局的文件,更新所述终端使用的桌面应用组件的界面布局;

根据所述用于实现桌面应用组件功能的程序代码,更新所述终端使用的桌面应用组件功能代码;

根据所述界面元素资源,更新所述终端使用的桌面应用组件的界面元素资源。

优选地,所述终端根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件,包括:

所述终端加载所述桌面应用组件更新信息中的用于实现桌面应用组件功 能的程序代码;

所述终端加载所述桌面应用组件更新信息中的桌面应用组件所使用的界面元素资源;

所述终端执行所述桌面应用组件更新信息中更新桌面应用组件的程序代码,以更新所述终端使用的桌面应用组件。

本申请实施例提供的服务器,包括:

获取模块,用于根据桌面应用组件发布指令获取桌面应用组件更新信息;

发送模块,用于向终端推送所述桌面应用组件更新信息,所述桌面应用组件更新信息被所述终端用来更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

描述桌面应用组件界面布局的文件;

用于执行桌面应用组件功能的代码;

桌面应用组件所使用的界面元素资源。

优选地,所述发送模块具体用于:

获取使用所述桌面应用组件的终端;

向使用所述桌面应用组件的终端推送所述桌面应用组件更新信息。

本申请实施例提供的终端,包括:

接收模块,用于接收服务器推送的桌面应用组件更新信息;

更新模块,用于根据所述桌面应用组件更新信息,更新所述终端使用的桌 面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数;

所述更新模块具体用于:根据桌面应用组件对应的预置模板的设置参数,更新所述终端中的所述预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

用于描述桌面应用组件界面布局的文件;

用于实现桌面应用组件功能的程序代码;

桌面应用组件所使用的界面元素资源。

其中,所述更新模块具体用执行以下操作中的一种或多种组合:

根据所述用于描述桌面应用组件界面布局的文件,更新所述终端使用的桌面应用组件的界面布局;

根据所述用于实现桌面应用组件功能的程序代码,更新所述终端使用的桌面应用组件功能代码;

根据所述界面元素资源,更新所述终端使用的桌面应用组件的界面元素资源。

优选地,所述更新模块具体用于:

加载所述桌面应用组件更新信息中的用于实现桌面应用组件功能的程序代码;

加载所述桌面应用组件更新信息中的桌面应用组件所使用的界面元素资源;

执行所述桌面应用组件更新信息中更新桌面应用组件的程序代码,以更新所述终端使用的桌面应用组件。

本申请另一实施例提供的终端,包括:

显示器;

存储器,用于存储计算机程序指令;

处理器,耦合到所述存储器,用于读取所述存储器存储的计算机程序指令,并作为响应,执行如下操作:

接收服务器推送的桌面应用组件更新信息;

根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数;

所述处理器具体用于:根据桌面应用组件对应的预置模板的设置参数,更新所述终端中的所述预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

用于描述桌面应用组件界面布局的文件;

用于实现桌面应用组件功能的程序代码;

桌面应用组件所使用的界面元素资源。

其中,所述处理器具体用于执行以下步骤中的一种或多种组合:

根据所述用于描述桌面应用组件界面布局的文件,更新所述终端使用的桌面应用组件的界面布局;

根据所述用于实现桌面应用组件功能的程序代码,更新所述终端使用的桌 面应用组件功能代码;

根据所述界面元素资源,更新所述终端使用的桌面应用组件的界面元素资源。

优选地,所述处理器具体用于:

加载所述桌面应用组件更新信息中的用于实现桌面应用组件功能的程序代码;

加载所述桌面应用组件更新信息中的桌面应用组件所使用的界面元素资源;

执行所述桌面应用组件更新信息中更新桌面应用组件的程序代码,以更新所述终端使用的桌面应用组件。

本申请的上述实施例中,由于服务器根据桌面应用组件发布指令将桌面应用组件更新信息推送给终端,从而使得终端根据该桌面应用组件更新信息更新该终端使用的桌面应用组件,一方面,当有更新的桌面应用组件发布时,服务器可主动将其推送给终端,另一方面,服务器可仅将桌面应用组件的更新信息推送给终端实现桌面应用组件的更新,由终端在无需用户参与的情况下实现桌面应用组件的更新,而无需像现有技术一样将桌面应用组件的安装包推送给终端且需要由用户进行安装操作,从而可以使终端及时更新桌面应用组件且简化了桌面应用组件的更新操作过程。

附图说明

图1为本申请实施例适用的网络架构示意图;

图2为本申请实施例中的编辑模式的模板布局样式示意图;

图3为本申请实施例提供的桌面应用组件发布流程示意图;

图4为本申请实施例提供的桌面应用组件更新流程示意图;

图5为图4中的步骤402的一种实现过程;

图6、图7分别为本申请实施例中的widget示意图;

图8为本申请实施例提供的服务器的结构示意图;

图9为本申请实施例提供的终端的结构示意图;

图10为本申请另一实施例提供的终端的结构示意图。

具体实施方式

本申请实施例提供了一种桌面应用组件的发布和更新方案,一方面,开发者创建或更新的桌面应用组件后,该桌面应用组件可被及时推送到终端,保障终端侧的桌面应用组件及时得到更新,保证了用户交互体验;另一方面,终端在更新桌面应用组件时无需用户参与,提高了用户体验,减少了用户操作复杂度。

图1示例性地示出了本申请实施例适用的一种网络架构。如图1所示,该网络架构中可包括终端以及网络侧的服务器,终端和服务器通过网络进行通信。

上述架构中的服务器可以接收桌面应用组件的开发者用户通过所在终端提交的桌面应用组件并进行发布。对于一个新创建的桌面应用组件,服务器可将其发布到“应用商店”等类似的应用程序发布目录中,普通用户(区别于上述“开发者用户”,普通用户是指使用桌面应用组件的用户或者桌面应用组件的潜在使用者用户)可通过该应用程序发布目录了解可以使用的桌面应用组件,进而选择使用自己需要的桌面应用组件。对于已经创建但后来进行了更新的桌面应用组件,服务器可将该桌面应用组件的更新信息推送给已经使用该桌面应用组件的终端,以在无需用户参与的情况下实现终端侧的桌面应用组件的更新。

上述架构中的终端可以从服务器接收服务器推送的桌面应用组件更新信息,并更新本地的桌面应用组件。上述终端可以是移动终端或pc(个人电脑)等设备,所述移动终端可以是手机、pda(personaldigitalassistant,掌上电脑)或智能穿戴设备等。

上述网络架构中,终端和服务器可以通过网络进行信息交互,该网络可以是广域网、局域网或互联网,或者采用移动通信技术的互联网。终端可通过无线方式接入互联网,服务器通常采用有线方式与互联网连接。

优选地,服务器可以采用云计算技术,以基于云计算技术的强大功能实现信息处理。服务器和终端可采用基于云计算技术的操作系统,比如yunos,从而可以整合云端和终端的资源和服务。

为了方便开发者用户进行桌面应用组件的开发,本申请实施例提供了简单便捷的桌面应用组件开发方法:编辑模式和开发模式。相应地,桌面应用组件的发布方法和更新方法,根据桌面应用组件的开发方法的不同而在实现上有所差别。

下面首先对编码模式和开发模式进行详细说明。

(1)编辑模式

编辑模式主要基于预置的模板实现。开发者用户可以在线选择预置的模板,并可进一步对模板的参数进行设置,从而设计出需要的桌面应用组件,并提交给服务器进行发布。

这些模板可以预先配置在服务器和终端上。当新的模板被创建出来后,可将新创建的模板发送给终端,比如,可将新的模板包含在操作系统更新程序包中发送给终端,以使终端在操作系统更新的过程中存储该新的模板。

一个桌面应用组件的模板可以定义桌面应用组件的外观以及逻辑处理功能。其中,桌面应用组件的外观可以包括该组件的各组成部分的布局、界面中显示的图片(或其他媒体类型的对象,比如视频、音频、动画等等)、界面的背景色、界面中的文字显示效果(比如字体大小、字体颜色、字体类型等)。

一个桌面应用组件的模板所定义的布局和/或显示效果,可通过相应的参数进行设置,比如,一个模板的设置参数可包括界面的布局参数、显示效果参数中的一种或多种。一个桌面应用组件的模板可预先配置有默认参数,并可提供可选择的参数以便开发者用户选择,以创建开发者用户需要的桌面应用组件。 一个桌面用于组件的模板也可允许开发者用户对界面的布局和/或显示效果等参数的取值进行自定义。

以一个用于浏览门户网站新闻的widget模板为例,该模板可提供对门户网站1的新闻进行浏览的入口,其默认的布局可如图2所示。该widget界面中包含3个竖排的区域:区域201用于显示门户网站1的时政类头条新闻的标题和图片,区域202用于显示门户网站1的经济类头条新闻的标题和图片,区域203用于显示门户网站1的娱乐类头条新闻标题和图片。区域201、区域202和区域203分别包含图片显示区域和标题显示区域。在默认布局情况下,区域201、区域202和区域203和图片显示区域在左侧、标题显示区域在右侧。

该模板所提供的其他可选的布局方式有以下几种:

可选布局1:区域201、区域202和区域203竖排,且图片显示区域在右侧、标题显示区域在左侧;

可选布局2:区域201、区域202和区域203竖排,且标题显示区域在图片显示区域的下方。

上述可选的布局方式以及默认布局方式,可分别用布局标识号进行区分,比如layout=0表示默认布局,layout=1表示上述可选布局1,layout=2表示上述可选布局2,即,将布局标识号作为布局参数来定义widget的布局。

该模板所提供的默认字体为宋体、字号大小为5号、颜色为黑色,对应的默认参数的取值可表示为:font_type=0,font_size=0,font_color=0。

该模板所提供的其他可选的字体设置参数可包括:

字体为楷体(font_type=1)、黑体(font_type=2)中的一种;

字体字号大小为6号(font_size=1)、7号(font_size=2)中的一种;

字体颜色为蓝色(font_color=1)、红色(font_color=2)中的一种。

上述该模板的各种布局参数(包括默认参数和可选参数)以及各种显示效果参数(包括默认参数和可选参数)均预先配置在服务器侧和终端侧。

这样,如果开发者用户选择如下布局和显示效果:区域201、区域202和 区域203竖排,且图片显示区域在右侧、标题显示区域在左侧;字体为楷体,字体字号大小为7号,字体颜色为蓝色,则对应的参数及其取值包括:layout=1,font_type=1,font_size=2,font_color=1。开发者在发布该widget时,只需将该模板的上述参数及其取值提交给服务器(当然不排除其他的必要信息,比如模板标识等信息),服务器在向终端发布widget时,只需将该模板的上述参数及其取值发送给终端,终端在更新本地的该widget时,只需根据接收到的该widget模板参数,将当前该widget模板的相应参数的取值进行更新即可。

widget模板的参数中,也可以将一组不同类型的参数的不同取值分别设置为对应的样式,即一种样式对应一组参数及其取值。比如,仍以上述widget模板为例,默认布局(layout=0)+字体为宋体(font_type=0)+字号大小为5号(font_size=0)+颜色为黑色(font_color=0)的组合,可设置为默认样式0(sample=0);布局1(layout=1)+字体为楷体(font_type=1)+字号大小为6号(font_size=1)+颜色为蓝色(font_color=1)的组合,可设置为样式1(sample=1);布局2(layout=2)+字体为黑体(font_type=2)+字号大小为7号(font_size=2)+颜色为红色(font_color=2)的组合,可设置为样式2(sample=2)。

这样,如果开发者用户选择如下布局和显示效果:区域201、区域202和区域203竖排,且图片显示区域在右侧、标题显示区域在左侧;字体为楷体,字体字号大小为6号,字体颜色为蓝色,则对应的参数及其取值包括:sample=1。开发者在发布该widget时,只需将该模板的上述参数及其取值提交给服务器,服务器在向终端发布widget时,只需将该模板的上述参数及其取值发送给终端,终端在更新本地的该widget时,只需根据接收到的该widget模板参数,将当前该widget模板的相应参数的取值进行更新即可。这样可以进一步简化widget的创建过程以及更新过程,并且可以减少传输模板参数用的网络资源开销。

以上示例仅给出了一个用于浏览门户网站新闻的widget模板的选项以及 可选参数,根据widget实现的功能的不同,可以提供多种模板,在此不再一一列举。

(2)开发模式

开发模式允许开发者用户基于操作系统提供的系统组件设计widget,比如允许开发者用户基于android系统的view组件定制widget,开发者用户将构成widget的元素打包成android系统标准的apk(androidpackage,android安装包)程序包,发布到服务器(如widget云平台)。

其中,apk程序包中可包括以下内容中的一种或多种组合:

-描述桌面应用组件界面布局的文件,该文件可描述桌面应用组件的界面布局。该文件可使用xml格式文件,可以命名为layout.xml;

-用于执行桌面应用组件功能的代码,通过该代码可实现桌面应用组件的逻辑处理功能,比如,以前述浏览新闻的widget为例,当点击区域201时,将展示门户网站1的时政类头条新闻内容。该代码可基于java技术实现,可命名为card.java;

-桌面应用组件所使用的界面元素资源,所述界面元素资源包括但不限于界面所使用的图标、图片、动画、视频、音频的资源。该资源可封装为png文件,可命名为icon.png。

在开发新的widget时,可将上述这些内容打包成apk程序包,该apk程序包构成了widget,该apk程序包可通过服务器进行发布。在对原有widget进行更新时,可根据更新的内容,选择上述某一种或多种文件打包成apk程序包并通过服务器发布。

比如,如果仅更新了widget的布局,则只需将layout.xml打包成apk程序包进行发布;如果更新了widget的功能和界面元素资源,则需要将layout.xml和icon.png打包成apk程序包进行发布。

参见图3,为本申请实施例提供的桌面应用组件发布流程示意图。该流程可由服务器实现。如图所示,该流程可包括如下步骤:

步骤301:服务器根据桌面应用组件发布指令获取桌面应用组件更新信息。

以桌面应用组件为widget为例,如前所述,开发者用户创建新的widget后,可通过服务器进行发布。具体发布过程可以包括:开发者用户通过所在终端向服务器发送widget发布指令,该指令中包括请求发布的widget的标识信息(比如widgetid,widget名称等),以及该widget的内容,进一步地还可包括其他信息,比如widget的运行环境信息(如适用的操作系统类型等);服务器接收到该widget发布指令后,对该widget进行注册(比如保存该widget及其相关信息)并将其发布到发布目录中。上述发布过程可基于web技术实现。

上述流程中,发布指令中携带的widget的内容,根据开发者用户所采用的开发方法的不同而有所差别。如果开发者用户采用编辑模式创建widget,则发布指令中携带的widget的内容可包括该widget使用的模板的相关信息,比如包括模板id、模板名称等,以及该模板的设置参数;如果开发者用户采用开发方式创建widget,则发布指令中携带的widget的内容被封装为apk,该apk中包含layout.xml、card.java、icon.png等文件。

如果widget已经被创建,但需要更新,则开发者用户可对该widget进行更新,并通过服务器发送该widget的更新信息。具体地,更新后的widget的发布过程与前述对于新创建的widget的发布过程类似,在此不再重复。需要说明的是,发布指令中携带的widget的内容为widget更新信息。widget更新信息根据开发者用户所采用的开发方法的不同而有所差别。如果开发者用户采用编辑模式更新widget,则widget更新信息中包括模板id、模板名称等,以及该模板的设置参数,其中,模板的设置参数中可以仅包括需要更新的参数;如果开发者用户采用开发方式更新widget,则widget更新信息中包括layout.xml、card.java、icon.png等文件中的一种或多种组合,具体地,可根据更新的内容,将layout.xml、card.java、icon.png等文件中的一种或多种组合封装为apk程序包。

一般情况下,如果开发者用户采用编辑模式创建widget,则采用相同的方 式更新该widget;如果开发者用户采用开发模式创建widget,则采用相同的方式更新该widget。

步骤302:服务器向终端推送桌面应用组件更新信息,所述桌面应用组件更新信息被所述终端用来更新所述终端使用的桌面应用组件。

该步骤中,对于新创建的widget,服务器将widget发布到widget发布目录后,在接收到终端请求使用该widget的请求后,将该widget发送给该终端;对于更新的widget,服务器可直接将更新后的widget发送给终端。

具体实施时,服务器侧可存储或能够访问用户数据库,其中记录有终端使用的widge的信息,当服务器接收到开发者用户发送的更新某个widget的发布指令后,可通过查询该用户数据库获得使用该widget的用户的信息,进而将该widget的更新信息向对应的终端发送。

通过以上描述可以看出,由于服务器根据桌面应用组件发布指令将桌面应用组件更新信息推送给终端,从而使得终端根据该桌面应用组件更新信息更新该终端使用的桌面应用组件,一方面,当有更新的桌面应用组件发布时,服务器可主动将其推送给终端,另一方面,服务器可仅将桌面应用组件的更新信息推送给终端实现桌面应用组件的更新,由终端在无需用户参与的情况下实现桌面应用组件的更新,而无需像现有技术一样将桌面应用组件的安装包推送给终端且需要由用户进行安装操作,从而可以使终端及时更新桌面应用组件且简化了桌面应用组件的更新操作过程。

参见图4,为本申请实施例提供的桌面应用组件的更新过程,该过程可在终端侧实现。如图4所示,该流程可包括如下步骤:

步骤401:终端接收服务器推送的桌面应用组件更新信息。

其中,服务器推送的桌面应用组件更新信息以及推送方式,可参见前述实施例,再次不在重复。

步骤402:终端根据接收到的桌面应用组件更新信息,更新所述终端使用的桌面应用组件。

该步骤中,以桌面应用组件为widget为例,当终端检测到有widget更新时(比如接收到服务器推送的widget更新信息时),可在不安装更新程序包的情况下无缝地将widget更新到终端的桌面上。根据widget的开发方法的不同,其更新过程也有所差别。

如果widget是采用编辑模式开发的,则由于widget是由预置的模板生成的,widget更新信息主要包括模板的相关设置参数,因此在进行widget更新时可仅根据接收到的widget更新信息更新该终端上的相应widget的模板参数,即,将步骤401中从服务器接收到的更新的模板参数应用到终端本地的预置模板即可。

如果widget是采用开发模式开发的,则widget是基于android系统的标准开发方式所生成的apk。在android系统的标准包管理的体系下,如果新的apk需要应用到终端上,则需要由用户触发程序包安装更新的过程,这也是其他所有平台上widget更新所采取的方式。而在本申请实施例中,为了提供给用户无感知的更新体验,可采取如图5所示的流程实现widget更新。

如图5所示,该流程可包括:

步骤501:终端加载程序文件。

具体地,可首先通过android的程序类加载器classloader将更新下来的apk中程序代码加载到终端的运行环境中。

步骤502:终端加载资源文件。

具体地,apk中会包含有各种图片等资源文件,用于widget的视图生成,这一步需要通过android资源管理器额外添加资源的方法将apk中所有资源文件加载到终端的上下文环境(context)中。加载完毕后,通过更新后上下文环境即可找到更新下来的apk中的资源文件。

步骤503:终端执行apk代码。

通过以上两步对程序文件和资源文件的加载过程,终端在不安装apk的情况下具备了执行apk中代码的条件,在步骤503中,在终端的桌面应用中 执行apk中生成和/或更新widget的代码,最终更新桌面上的widget。

通过以上描述可以看出,由于服务器根据桌面应用组件发布指令将桌面应用组件更新信息推送给终端,从而使得终端根据该桌面应用组件更新信息更新该终端使用的桌面应用组件,一方面,当有更新的桌面应用组件发布时,服务器可主动将其推送给终端,另一方面,服务器可仅将桌面应用组件的更新信息推送给终端实现桌面应用组件的更新,由终端在无需用户参与的情况下实现桌面应用组件的更新,而无需像现有技术一样将桌面应用组件的安装包推送给终端且需要由用户进行安装操作,从而可以使终端及时更新桌面应用组件且简化了桌面应用组件的更新操作过程。

为了更清楚地理解上述桌面应用组件更新流程,下面以一个具体应用场景为例进行说明。

在该场景中,开发者用户首先采用开发模式开发用于实现新闻浏览功能的widget,其界面布局如图6所示,其中:

区域601显示widget的功能描述信息为“科技新闻今日头条”,用以简要说明该widget的功能;

区域602显示新闻标题;

区域603显示新闻相关图片;

区域604显示新闻内容,该区域被点击后可触发打开浏览器以显示该条新闻的详细内容;

区域605显示其他新闻的标题,当某个标题被点击后可触发打开浏览器以显示该条新闻的详细内容;进一步地,在新闻标题后面还可以显示该条新闻的评论数量,当该评论数量区域被点击后可触发打开浏览器以显示对该条新闻的评论内容;

区域606为功能按钮,用于触发浏览另外一组科技新闻;

区域607为功能按钮,用于触发浏览其他类别的新闻(非科技新闻)。

如图6所示的widget,终端侧保存的其apk程序包所包含的文件可包括:

-layout.xml:用于描述图6所示的界面布局;

-card.java:用于定义图6所示的widget中的功能,比如,针对区域602,可通过代码定义从门户网站1的科技新闻中获取头条新闻的标题,并将该标题显示在区域602中;再比如,针对区域607,可通过代码定义该区域被点击后,从门户网站1的其他类新闻中获取头条新闻的标题和图片,以及若干条非头条新闻的标题,并根据图6的布局在相应区域中进行显示;

-icon.png:包含有图6所示的界面中所使用的图片、图标等资源。比如,可包括用于表示评论信息的图标的资源文件。

此后,开发者用户发现用户更希望获取周边美食类信息而非通信领域的新闻,因此可对该widget进行更新,更新后的widget如图7所示,其中:

区域701显示widget的功能描述信息为“周边美食”,用以简要说明该widget的功能;

区域702、区域703、区域704分别显示一条周边美食的信息,其中,区域702、区域703、区域704又分别包含3个区域:图片显示区域、美食信息的文本简介显示区域以及与终端当前所在位置之间的距离信息的显示区域;

区域705为功能按钮,用于在被点击后触发显示其他条周边美食信息。

如图7所示的widget,其apk程序包所包含的文件可包括:

-layout.xml:用于描述图7所示的界面布局;

-card.java:用于定义图7所示的widget中的功能,比如,针对区域701,可通过代码定义获取终端当前位置周边的美食信息(比如餐厅名称、美食图片、人均消费、地理位置等信息),并获取该餐厅到终端当前位置的距离,并将获取到的一条美食相关信息显示在区域701中;再比如,针对区域705,可通过代码定义该区域被点击后,获取其他3条美食相关信息,并根据图7的布局在相应区域中进行显示;

-icon.png:包含有图7所示的界面中所使用的图片、图标等资源。比如,

可包括区域705中的功能按钮的背景图标的图标文件。

开发者用户将更新后的widget通过服务器进行发布,服务器将该更新后的widget的apk程序包发送给使用该widget的终端;终端接收到服务器发送的apk程序包后,载入该apk中的card.java和icon.png,执行apk代码生成新的如图7所示的widget,从而在用户无感知的情况下完成对widget的更新。

基于相同的技术构思,本申请实施例还提供了一种服务器,该服务器可实现上述桌面应用组件发布流程。

参见图8,为本申请实施例提供的服务器的结构示意图,该服务器可包括:获取模块801、发送模块802,其中:

获取模块801,用于根据桌面应用组件发布指令获取桌面应用组件更新信息;

发送模块802,用于向终端推送所述桌面应用组件更新信息,所述桌面应用组件更新信息被所述终端用来更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

描述桌面应用组件界面布局的文件;

用于执行桌面应用组件功能的代码;

桌面应用组件所使用的界面元素资源。

优选地,发送模块802可具体用于:获取使用所述桌面应用组件的终端, 向使用所述桌面应用组件的终端推送所述桌面应用组件更新信息。

基于相同的技术构思,本申请实施例还提供了一种终端,该终端可实现上述桌面应用组件更新流程。

参见图9,为本申请实施例提供的终端的结构示意图,如图所示,该终端可包括:接收模块901、更新模块902,其中:

接收模块901,用于接收服务器推送的桌面应用组件更新信息;

更新模块902,用于根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数。相应地,更新模块902可具体用于:根据桌面应用组件对应的预置模板的设置参数,更新所述终端中的所述预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

用于描述桌面应用组件界面布局的文件;

用于实现桌面应用组件功能的程序代码;

桌面应用组件所使用的界面元素资源。

其中,更新模块902可具体用执行以下操作中的一种或多种组合:

根据所述用于描述桌面应用组件界面布局的文件,更新所述终端使用的桌面应用组件的界面布局;

根据所述用于实现桌面应用组件功能的程序代码,更新所述终端使用的桌面应用组件功能代码;

根据所述界面元素资源,更新所述终端使用的桌面应用组件的界面元素资源。

优选地,更新模块902可具体用于:加载所述桌面应用组件更新信息中的用于实现桌面应用组件功能的程序代码;加载所述桌面应用组件更新信息中的桌面应用组件所使用的界面元素资源;执行所述桌面应用组件更新信息中更新桌面应用组件的程序代码,以更新所述终端使用的桌面应用组件。

基于相同的技术构思,本申请实施例还提供了一种终端,该终端可实现上述桌面应用组件更新流程。

参见图10,为本申请实施例提供的终端的结构示意图。如图所示,该设备总体来说可包括:处理器1001,存储器1002、显示器1003。

其中,处理器1001可以是通用处理器(比如微处理器或者任何常规的处理器等)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。存储器1002具体可包括内部存储器和/或外部存储器,比如随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质。显示器1003可包括触摸屏控制电路。

处理器1001与其他各模块之间存在数据通信连接,比如可基于总线架构进行数据通信。总线架构可以包括任意数量的互联的总线和桥,具体由处理器1001代表的一个或多个处理器和存储器1002代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。处理器1001负责管理总线架构和通常的处理,存储器1002可以存储处理器1001在执行操作时所使用的数据。

本申请实施例揭示的电子地图显示流程,可以应用于处理器1001中,或者由处理器1001实现。在实现过程中,通知消息处理流程的各步骤可以通过处理器1001中的硬件的集成逻辑电路或者软件形式的指令完成。可以实现或 者执行本申请实施例中的公开的各方法、步骤及逻辑框图。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。

具体地,处理器1001,耦合到所述存储器1002,用于读取存储器1002存储的计算机程序指令,并作为响应,执行如下操作:

接收服务器推送的桌面应用组件更新信息;

根据所述桌面应用组件更新信息,更新所述终端使用的桌面应用组件。

优选地,所述桌面应用组件是根据预置模板编辑得到的,所述桌面应用组件的预置模板被配置在所述终端中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的设置参数。相应地,处理器1001具体用于:根据桌面应用组件对应的预置模板的设置参数,更新所述终端中的所述预置模板的设置参数。

其中,所述桌面应用组件更新信息包括该桌面应用组件对应的预置模板的一种样式参数,所述样式参数对应预置模板的一组不同类型的设置参数。

其中,所述预置模板的设置参数,包括:桌面应用组件界面的布局参数、显示效果参数中的一种或多种。

优选地,所述桌面应用组件更新信息包括以下中的一种或多种组合:

用于描述桌面应用组件界面布局的文件;

用于实现桌面应用组件功能的程序代码;

桌面应用组件所使用的界面元素资源。

优选地,处理器1001可具体用于执行以下步骤中的一种或多种组合:

根据所述用于描述桌面应用组件界面布局的文件,更新所述终端使用的桌面应用组件的界面布局;

根据所述用于实现桌面应用组件功能的程序代码,更新所述终端使用的桌 面应用组件功能代码;

根据所述界面元素资源,更新所述终端使用的桌面应用组件的界面元素资源。

优选地,处理器1001可具体用于:

加载所述桌面应用组件更新信息中的用于实现桌面应用组件功能的程序代码;

加载所述桌面应用组件更新信息中的桌面应用组件所使用的界面元素资源;

执行所述桌面应用组件更新信息中更新桌面应用组件的程序代码,以更新所述终端使用的桌面应用组件。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基 本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1