CN105404522A - 一种构建智能终端应用程序的方法、装置及智能终端 - Google Patents
一种构建智能终端应用程序的方法、装置及智能终端 Download PDFInfo
- Publication number
- CN105404522A CN105404522A CN201410337204.4A CN201410337204A CN105404522A CN 105404522 A CN105404522 A CN 105404522A CN 201410337204 A CN201410337204 A CN 201410337204A CN 105404522 A CN105404522 A CN 105404522A
- Authority
- CN
- China
- Prior art keywords
- file
- intelligent terminal
- application program
- application data
- data file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种构建智能终端应用程序的方法、装置及智能终端,所述方法是指在智能终端配置下列类型的文件:应用程序数据文件,该类型文件提供所述应用程序的运行方式的描述;程序执行文件,用于执行所述应用程序数据文件所描述的运行方式,包括:读取所述应用程序数据文件,根据所述应用程序数据文件,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈;装载文件,提供执行更新所述应用程序数据文件的方法。采用本申请提供的方法,通过分割应用程序的逻辑与应用程序的执行,使得能够对应用程序进行部分更新,避免浪费用户流量;统一不同操作系统应用程序的更新方式,降低程序开发人员的工作量,提高代码的可读性和可维护性。
Description
技术领域
本申请涉及无线通讯终端,具体涉及一种构建智能终端应用程序的方法及装置。本申请同时涉及一种智能终端。
背景技术
在智能终端更新应用程序是指从服务器端下载新版本的应用程序安装到智能终端本地。对于应用程序开发商而言,通常会在每周或者每个双周发布最新版本的应用程序。而并不是每个用户都会及时更新自己的应用程序,因此,应用程序开发人员始终需要面对以下困难:
1)后台服务要适配多个不同新旧版本的应用程序;
2)如果某个版本的应用程序有bug,一旦发布后将无法回滚,即使在其后又发布了新的版本,也必须等待用户逐步升级到最新版本。
可见,在智能终端上动态地更新应用程序是一件非常有价值而同时在技术上又有些困难的事情。
一方面,从更新技术方面而言,动态更新应用程序在不同操作系统上的实现技术是不一样的。安卓操作系统允许动态更新原生的应用程序,一般采用plugin更新的方式,比如apkplug提供的插件托管。安卓操作系统更新应用程序的过程为:应用程序拥有Loader模块,在启动或者运行过程中与服务器保持通信,当发现有新的plugin时,Loader模块用某种方式提示用户后,更新plugin并且加载新插件,从而更新应用程序的逻辑。但是,采用这种方式存在以下问题:
1)技术实现比较复杂;
2)应用程序中需要更新的逻辑必须放到plugin中,导致应用程序的完整逻辑被分割,破坏了原有代码的可读性和可维护性;
3)应用程序逻辑以plugin的形式更新,即使plugin仅仅更新了一行代码,但是必须整个plugin进行更新,浪费了用户的流量,容易造成用户的反感。
IOS操作系统不允许更新原生的应用程序,而将一部分应用程序逻辑实现在脚本语言中,比如Lua、Javascript等,然后通过下载和加载脚本语言实现应用程序逻辑的更新。IOS操作系统更新应用程序的过程为:应用程序拥有Loader模块,在启动或者运行过程中与服务器保持通信,当发现有新脚本时,Loader模块用某种方式提示用户后,更新脚本并且调用新脚本,从而更新应用程序的逻辑。但是,由于应用程序的逻辑被硬性分割成原生部分和脚本部分,原生部分无法更新,因此采用这种方式更加破坏了应用程序逻辑代码的可读性和可维护性。
另一方面,从开发语言方面而言,安卓操作系统下应用程序的开发语言是JAVA语言,而IOS操作系统下应用程序的开发语言是Object-C,这样开发人员就不得不维护两套完全不同的代码体系,造成了很多负担。
综上所述,当前动态更新智能终端应用程序可能会存在以下问题:
1)不支持应用程序的部分更新,因而浪费用户流量,造成用户反感;
2)不同操作系统的应用程序的更新方式不同,因而开发要维护多套代码,维护成本高;
3)应用程序的完整逻辑被分割,可能会降低了应用程序代码的可读性和可维护性。
发明内容
本申请提供一种构建智能终端应用程序的方法,本申请另外提供一种智能终端。
本申请提供一种构建智能终端应用程序的方法,在智能终端配置下列类型的文件:
应用程序数据文件,该类型文件提供所述应用程序的运行方式的描述;
程序执行文件,用于执行所述应用程序数据文件所描述的运行方式,包括:读取所述应用程序数据文件,根据所述应用程序数据文件,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈;
装载文件,提供执行更新所述应用程序数据文件的方法。
可选的,所述装载文件与所述程序执行文件均为可执行文件。
可选的,所述应用程序数据文件包括:
用户界面文件,用于定义所述图形用户界面,所述图形用户界面接收用户提供的输入;
用户界面事件响应文件,用于定义所述图形用户界面中组件的事件处理程序;
业务逻辑文件,用于定义所述应用程序的业务逻辑;
流程控制文件,用于定义所述应用程序的窗口控制流程。
可选的,所述用户界面文件是HTML5文件,所述程序执行文件是浏览器。
可选的,所述窗口控制流程包括:初始窗口的启动,所述窗口之间的流程关系,和所述用户界面事件响应文件与所述用户界面文件的对应关系。
可选的,所述程序执行文件执行所述应用程序数据文件所描述的运行方式,其步骤包括:
读取所述应用程序数据文件;
根据所述流程控制文件和所述用户界面文件,显示所述应用程序的初始窗口;
接收用户提供的输入,根据所述用户界面事件响应文件和所述流程控制文件调用所述业务逻辑文件的业务逻辑,获取对用户输入的反馈结果;
根据所述反馈结果,显示对应的图形用户界面。
可选的,所述装载文件提供的执行更新所述应用程序数据文件的方法包括:
与服务器建立连接,获取所述服务器端的应用程序数据文件列表;
根据获取的所述服务器端的应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步判断所述应用程序数据文件的更新类型,标识所述应用程序数据文件的更新类型;
根据所述更新类型,更新所述智能终端的应用程序数据文件。
可选的,所述应用程序数据文件列表包括:应用程序数据文件名和版本号。
可选的,所述更新类型包括:新增,升级,删除。
可选的,所述标识所述应用程序数据文件的更新类型采用以下规则之一:
若所述服务器端的应用程序数据文件在所述智能终端中不存在,则标识所述服务器端的应用程序数据文件的更新类型为新增;
若所述服务器端的应用程序数据文件的版本号大于对应的所述智能终端的应用程序数据文件的版本号,则标识所述服务器端的应用程序数据文件的更新类型为升级;
若所述智能终端的应用程序数据文件在所述服务器端的应用程序数据文件列表中不存在,则标识所述智能终端的应用程序数据文件的更新类型为删除。
可选的,所述根据所述更新类型,更新所述智能终端的应用程序数据文件包括:
将所述更新类型为新增的所述应用程序数据文件增加到所述智能终端;
将所述更新类型为升级的所述应用程序数据文件更新到所述智能终端;
将所述更新类型为删除的所述应用程序数据文件从所述智能终端中删除。
可选的,所述与服务器建立连接是指在所述智能终端应用程序启动时,所述应用程序的装载文件与服务器建立连接,或在智能终端应用程序运行过程中,所述应用程序的装载文件按预设的时间间隔或者接收用户的指示,与服务器建立连接。
可选的,所述装载文件提供的执行更新所述应用程序数据文件的方法还包括:
调用所述程序执行文件,运行所述应用程序。
可选的,在判断存在应用程序数据文件更新之后,所述更新所述智能终端的应用程序数据文件之前,还包括:
提示用户更新所述应用程序,并获取用户意见;
根据所述用户意见,判断是否更新所述应用程序,如果用户同意更新所述应用程序,则停止运行所述应用程序,根据所述应用程序数据文件的更新类型,更新所述智能终端的应用程序数据文件。
相应的,本申请还提供一种构建智能终端应用程序的装置,在智能终端包括:
应用程序数据文件提供单元,用于提供应用程序数据文件,所述应用程序数据文件提供所述应用程序的运行方式的描述;
程序执行文件提供单元,用于提供程序执行文件,所述程序执行文件用于执行所述应用程序数据文件所描述的运行方式,包括:读取所述应用程序数据提供单元提供的所述应用程序的运行方式的描述,根据所述描述,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈;
装载文件提供单元,用于提供装载文件,所述装载文件提供执行更新所述应用程序数据文件的方法。
可选的,所述应用程序数据文件提供单元包括:
用户界面文件提供子单元,用于提供用户界面文件,所述用户界面文件用于定义所述图形用户界面,所述图形用户界面接收用户提供的输入;
用户界面事件响应文件提供子单元,用于提供用户界面事件响应文件,所述用户界面事件响应文件用于定义所述图形用户界面中组件的事件处理程序;
业务逻辑文件提供子单元,用于提供业务逻辑文件,所述业务逻辑文件用于定义所述应用程序的业务逻辑;
流程控制文件子单元,用于提供流程控制文件,所述流程控制文件用于定义所述应用程序的窗口控制流程。
可选的,所述用户界面文件是HTML5文件,所述程序执行文件是浏览器。
可选的,所述窗口控制流程包括:初始窗口的启动,所述窗口之间的流程关系,和所述用户界面事件响应文件与所述用户界面文件的对应关系。
可选的,所述程序执行文件包括:
读取子单元,用于读取所述应用程序数据文件;
显示初始窗口子单元,用于根据所述流程控制文件和所述用户界面文件,显示所述应用程序的初始窗口;
获取反馈结果子单元,用于接收用户提供的输入,根据所述用户界面事件响应文件和所述流程控制文件调用所述业务逻辑文件的业务逻辑,获取对用户输入的反馈结果;
显示反馈结果子单元,用于根据所述反馈结果,显示对应的图形用户界面。
可选的,所述装载文件包括:
获取子单元,用于与服务器建立连接,获取所述服务器端的应用程序数据文件列表;
标识子单元,用于根据获取的所述服务器端的应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步判断所述应用程序数据文件的更新类型,标识所述应用程序数据文件的更新类型;
更新子单元,用于根据所述更新类型,更新所述智能终端的应用程序数据文件。
可选的,所述应用程序数据文件列表包括:应用程序数据文件名和版本号。
可选的,所述更新类型包括:新增,升级,删除。
可选的,所述与服务器建立连接是指在所述智能终端应用程序启动时,所述应用程序的装载文件与服务器建立连接,或在智能终端应用程序运行过程中,所述应用程序的装载文件按预设的时间间隔或者接收用户的指示,与服务器建立连接。
可选的,所述装载文件还包括:
调用子单元,用于调用所述程序执行文件,运行所述应用程序。
可选的,所述装载文件还包括:
提示子单元,用于提示用户更新所述应用程序,并获取用户意见;
判断子单元,用于根据所述用户意见,判断是否更新所述应用程序,如果用户同意更新所述应用程序,则停止运行所述应用程序,根据所述应用程序数据文件的更新类型,更新所述智能终端的应用程序数据文件。
此外本申请还提供一种智能终端,包括:上述的构建智能终端应用程序的装置。
与现有技术相比,本申请具有以下优点:
本申请提供构建智能终端应用程序的方法、装置和智能终端,通过将应用程序的运行方式独立设置为应用程序数据文件,将应用程序的执行部分独立设置为程序执行文件,将应用程序的更新部分独立设置为加载文件,其中应用程序数据文件是与操作系统无关的文件,程序执行文件和加载文件是本地代码的可执行文件,即将应用程序的运行方式与应用程序的执行部分分离表示,使得更新智能终端的应用程序包括两方面,一方面是更新应用程序数据文件,另一方面是更新程序执行文件,即支持智能终端应用程序的部分更新,从而能够达到以下效果:
1)避免浪费用户流量,提高了用户体验;
2)应用程序数据文件是与操作系统无关的文件,从而统一不同操作系统的应用程序的更新方式,避免维护多个针对不同操作系统的应用程序代码,有效降低程序开发人员的工作量;
3)应用程序数据文件包括应用程序的完整逻辑,从而避免将应用程序需要更新的部分在形式上独立出来,有效提高代码的可读性和可维护性。
附图说明
图1是本申请的构建智能终端应用程序的方法实施例1应用程序的示意图;
图2是本申请的构建智能终端应用程序的方法实施例1应用程序数据文件的示意图;
图3是本申请的构建智能终端应用程序的方法实施例1执行应用程序数据文件所描述的运行方式的流程图;
图4是本申请的构建智能终端应用程序的方法实施例1更新应用程序数据文件的流程图;
图5是本申请的构建智能终端应用程序的方法实施例2更新应用程序数据文件的流程图;
图6是本申请的构建智能终端应用程序的装置实施例1的示意图;
图7是本申请的构建智能终端应用程序的装置实施例1应用程序数据文件提供单元的示意图;
图8是本申请的构建智能终端应用程序的装置实施例1程序执行文件的示意图;
图9是本申请的构建智能终端应用程序的装置实施例1装载文件的示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请中,提供了一种构建智能终端应用程序的方法和装置。在下面的实施例中逐一进行详细说明。
请参考图1,其为本申请的构建智能终端应用程序的方法实施例1应用程序的示意图。所述方法在智能终端配置的文件类型包括:应用程序数据文件101、程序执行文件102及装载文件103。
应用程序数据文件101,该类型文件提供所述应用程序的运行方式的描述。
程序执行文件102,用于执行所述应用程序数据文件101所描述的运行方式,包括:读取所述应用程序数据文件101,根据所述应用程序数据文件101,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈。
装载文件103,提供执行更新所述应用程序数据文件101的方法。
本申请提供的构建智能终端应用程序的方法,所述方法生成应用于智能终端的应用程序,所述应用程序包括:应用程序数据文件101、程序执行文件102以及装载文件103。
本申请所述的应用程序数据文件101是对应用程序的运行方式的描述,包括应用程序的完整逻辑。通常对于应用程序的更新,主要是对应用程序的运行方式的更新,而对应用程序的执行文件进行更新的频率是较低的,通过将应用程序的运行方式和应用程序的执行文件分离表示,使得更新应用程序时,能够根据选择进行更新应用程序的运行方式部分,或更新应用程序的执行文件部分。对于采用不同操作系统的智能终端而言,应用程序数据文件101可能是相同的。即不同版本的客户端应用程序的应用程序数据文件101之间的差异与智能终端的操作系统没有直接关系。因此,在服务器端只需开发维护一套具有多个版本的应用程序数据文件101,而无须维护对应不同操作系统的应用程序数据文件101。
在本实施例中,程序执行文件102以及装载文件103均为可执行文件,对于采用不同操作系统的智能终端而言,对应的程序执行文件102以及装载文件103一般来说是不同的。即程序执行文件102以及装载文件103可能会随本地代码的不同而不同。因此,在服务器端一般需要为不同的操作系统开发维护不同代码体系的程序执行文件102以及装载文件103。例如:为安卓操作系统开发维护一套具有多个版本的程序执行文件102以及装载文件103,为IOS操作系统开发维护另一套具有多个版本的程序执行文件102以及装载文件103。
本申请实施例提供构建智能终端应用程序的方法、装置和智能终端,通过将应用程序的运行方式独立设置为应用程序数据文件1011。将应用程序的执行部分独立设置为程序执行文件1012。将应用程序的更新部分独立设置为加载文件1013。其中应用程序数据文件1011与操作系统无关。程序执行文件1012和加载文件1013是本地代码的可执行文件,即将应用程序的运行方式与应用程序的执行部分分离表示,使得更新智能终端的应用程序包括两方面,一方面是更新应用程序数据文件,另一方面是更新程序执行文件,即支持智能终端应用程序的部分更新。这样的更新方式能够有助于达到以下效果:
1)避免浪费用户流量,提高了用户体验;
2)应用程序数据文件是与操作系统无关的文件,从而统一不同操作系统的应用程序的更新方式,避免维护多个针对不同操作系统的应用程序代码,有效降低程序开发人员的工作量;
3)应用程序数据文件包括应用程序的完整逻辑,从而避免将应用程序需要更新的部分在形式上独立出来,有效提高代码的可读性和可维护性。
本申请实施例所述的应用程序数据文件101包括描述应用程序的运行方式的文件。应用程序的运行方式包括:应用程序的各个图形用户界面、操作图形用户界面中组件所触发的事件以及事件处理程序、应用程序的各个业务逻辑以及应用程序的窗口行为。
请参考图2,其为本申请的构建智能终端应用程序的方法实施例1应用程序数据文件的示意图。在本实施例中,所述应用程序数据文件101包括:
用户界面文件1011,用于定义所述图形用户界面,所述图形用户界面接收用户提供的输入;
用户界面事件响应文件1012,用于定义所述图形用户界面中组件的事件处理程序;
业务逻辑文件1013,用于定义所述应用程序的业务逻辑;
流程控制文件1014,用于定义所述应用程序的窗口控制流程。
本申请所述的用户界面文件1011是指用来表示一个窗口中各个空间的表现以及排布的描述文件。一个用户界面文件1011表示一个窗口。在图形用户界面中,智能终端画面上显示窗口、图标、按钮等图形表示不同目的的动作,用户通过触摸或鼠标等指针设备进行选择。智能终端画面上显示输入框,接收用户提供的输入。
在本实施例中,所述用户界面文件是HTML5文件,所述程序执行文件是浏览器。HTML5文件使用超文本标记语言描述如何构建一个网页文件,包括Webview控件的浏览器用于显示HTML5文件。
本申请实施例所述的用户界面事件响应文件1012是指图形用户界面中组件的事件处理程序,表示一个组件被以某种方式触发或者影响以后,对应于用户的触发和影响,应用程序后台应该如何处理的逻辑。用户界面事件响应文件1012指明自己从属的用户界面文件1011。
在本实施例中,用户界面事件响应文件是Javascript脚本文件,例如,用户界面文件中有一个按钮,而用户界面事件响应文件中定义了这个按钮的单击事件以及响应脚本逻辑。
本申请所述的业务逻辑文件1013描述了应用程序的业务逻辑的处理过程。
在本实施例中,业务逻辑文件是Javascript脚本文件。比如上层窗口要改变一个用户的昵称,这时业务逻辑文件中可以有一个ChangeNickname的函数,这个函数使用HTTP协议将修改昵称的请求发送给服务器,判断服务器返回信息,并将返回信息以用户容易理解的方式通知给用户。
本申请所述的流程控制文件1014定义了应用程序中所有窗口的控制流程,所述窗口控制流程包括:初始窗口的启动,所述窗口之间的流程关系,和所述用户界面事件响应文件1012与所述用户界面文件1011的对应关系。
在本实施例中,当用户启动智能终端的应用程序时,智能终端画面上首先显示初始窗口,所述初始窗口对应一个用户界面文件,在流程控制文件中定义了初始窗口及所述初始窗口对应的所述用户界面文件;当用户对用户界面文件表示的图像用户界面的组件进行触摸或鼠标点击等操作时,会启动一个新的窗口,这样两个窗口就有流程关系;在流程控制文件中还指定用户界面事件响应文件与所述用户界面文件之间一对一的关系。
本申请所述的程序执行文件102是一个可执行文件,用于执行所述应用程序数据文件101所描述的运行方式,包括:读取所述应用程序数据文件101,根据所述应用程序数据文件101,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈。
请参考图3,其为本申请的构建智能终端应用程序的方法实施例1执行应用程序数据文件所描述的运行方式的流程图。在本实施例中,所述程序执行文件执行所述应用程序数据文件所描述的运行方式,其步骤包括:
步骤S101:读取所述应用程序数据文件;
步骤S102:根据所述流程控制文件和所述用户界面文件,显示所述应用程序的初始窗口;
在本实施例中,程序执行文件102查询流程控制文件1014,获取初始窗口及所述初始窗口对应的所述用户界面文件1011,程序执行文件102读取用户界面文件1011,显示相应的图形用户界面,即应用程序的初始窗口。
步骤S103:接收用户提供的输入,根据所述用户界面事件响应文件和所述流程控制文件调用所述业务逻辑文件的业务逻辑,获取对用户输入的反馈结果;
在本实施例中,智能终端画面上显示窗口、图标、按钮等图形表示不同目的的动作,用户可以通过触摸或鼠标等指针设备进行选择;智能终端画面上显示输入框,接收用户提供的输入;用户的操作使得图形用户界面中的一个组件被以某种方式触发或者影响,程序执行文件102根据用户的操作触发,读取用户界面事件响应文件1012和流程控制文件1014调用所述业务逻辑文件1013的业务逻辑的处理过程,获取对用户操作的反馈结果。
步骤S104:根据所述反馈结果,显示对应的图形用户界面。
在本实施例中,根据所述反馈结果,启动一个新的窗口。
本申请所述的装载文件103是一个可执行文件,提供执行更新所述应用程序数据文件101的方法。
请参考图4,其为本申请的构建智能终端应用程序的方法实施例1更新应用程序数据文件的流程图。在本实施例中,所述装载提供的执行更新所述应用程序数据文件的方法包括:
步骤S201:与服务器建立连接,获取所述服务器端的应用程序数据文件列表;
本申请提供的构建智能终端应用程序的方法,智能终端的应用程序的各个版本数据均存储在服务器中统一管理,通过将应用程序数据文件1011和程序执行文件1012分离表示,使得在更新智能终端应用程序时,能够对应用程序数据文件1011和程序执行文件1012分别进行更新,当更新应用程序数据文件1011时,加载文件1013首先与服务器建立连接,然后获取服务器端的应用程序数据文件列表。
在本实施例中,应用程序数据文件列表包括:应用程序数据文件名和版本号,具体为:用户界面文件1011及其版本号、用户界面事件响应文件1012及其版本号、业务逻辑文件1013及其版本号以及流程控制文件1014及其版本号。
步骤S202:根据获取的所述服务器端的应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步判断所述应用程序数据文件的更新类型,标识所述应用程序数据文件的更新类型;
在本实施例中,加载文件1013从服务器端下载获取应用程序数据文件列表后,首先将应用程序数据文件列表中的最新版本号与智能终端应用程序当前的版本号进行比较,如果二者不同,则判定智能终端应用程序当前版本是应用程序的旧版本,需要进行更新,并通过逐个对比应用程序数据文件列表的各个应用程序数据文件1011与智能终端应用程序当前版本中对应的应用程序数据文件1011的版本号,判断每一个应用程序数据文件1011的更新类型。
在本实施例中,所述更新类型包括:新增,升级,删除,标识所述应用程序数据文件的更新类型采用以下规则之一:
若所述服务器端的应用程序数据文件在所述智能终端中不存在,则标识所述服务器端的应用程序数据文件的更新类型为新增;
若所述服务器端的应用程序数据文件的版本号大于对应的所述智能终端的应用程序数据文件的版本号,则标识所述服务器端的应用程序数据文件的更新类型为升级;
若所述智能终端的应用程序数据文件在所述服务器端的应用程序数据文件列表中不存在,则标识所述智能终端的应用程序数据文件的更新类型为删除。
步骤S203:根据所述更新类型,更新所述智能终端的应用程序数据文件。
在本实施例中,根据所述更新类型,更新所述智能终端的应用程序数据文件包括:
将所述更新类型为新增的所述应用程序数据文件增加到所述智能终端;
将所述更新类型为升级的所述应用程序数据文件更新到所述智能终端;
将所述更新类型为删除的所述应用程序数据文件从所述智能终端中删除。
本申请提供的构建智能终端应用程序的方法,通过逐个对比服务器中各个应用程序数据文件1011与智能终端中对应的应用程序数据文件1011的版本号,获取每一个应用程序数据文件1011的更新类型,使得能够只对需要更新的应用程序数据文件1011进行更新操作,而无须更新其它应用程序数据文件1011,从而进一步节省用户流量,提高了用户体验。
在本实施例中,所述与服务器建立连接是指在所述智能终端应用程序启动时,所述应用程序的装载文件与服务器建立连接,或在智能终端应用程序运行过程中,所述应用程序的装载文件按预设的时间间隔或者接收用户的指示,与服务器建立连接。
在本实施例中,对于智能终端应用程序的更新操作通过三种方式启动:
1)用户启动应用程序时,应用程序自动通过加载文件103与服务器建立连接,进行应用程序的更新操作;
2)在智能终端应用程序运行过程中,装载文件103按预设的时间间隔,与服务器建立连接,获取应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步显示提示信息,提示用户应用程序存在新版本,并根据用户意见,进行应用程序的更新操作;
3)在智能终端应用程序运行过程中,用户主动选择进行应用程序的更新操作。
请参考图5,其为本申请的构建智能终端应用程序的方法实施例2更新应用程序数据文件的流程图。在本实施例中,所述装载文件提供的执行更新所述应用程序数据文件的方法还包括:
步骤S204:调用所述程序执行文件,运行所述应用程序。
在本实施例中,在判断存在应用程序数据文件更新之后,所述更新所述智能终端的应用程序数据文件之前,还包括:
步骤S205:提示用户更新所述应用程序,并获取用户意见;
步骤S206:根据所述用户意见,判断是否更新所述应用程序,如果用户同意更新所述应用程序,则停止运行所述应用程序,根据所述应用程序数据文件的更新类型,更新所述智能终端的应用程序数据文件。
在上述的实施例中,提供了一种构建智能终端应用程序的方法,与之相对应的,本申请还提供一种构建智能终端应用程序的装置。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
请参看图6,其为本申请的构建智能终端应用程序的装置实施例1的示意图。本实施例的一种构建智能终端应用程序的装置,在智能终端包括:
应用程序数据文件提供单元301,用于提供应用程序数据文件,所述应用程序数据文件提供所述应用程序的运行方式的描述;
程序执行文件提供单元302,用于提供程序执行文件,所述程序执行文件用于执行所述应用程序数据文件所描述的运行方式,包括:读取所述应用程序数据提供单元提供的所述应用程序的运行方式的描述,根据所述描述,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈;
装载文件提供单元303,用于提供装载文件,所述装载文件提供执行更新所述应用程序数据文件的方法。
请参看图7,其为本申请的构建智能终端应用程序的装置实施例1应用程序数据文件提供单元的示意图。本实施例的一种构建智能终端应用程序的装置,所述应用程序数据文件提供单元301包括:
用户界面文件提供子单元401,用于提供用户界面文件,所述用户界面文件用于定义所述图形用户界面,所述图形用户界面接收用户提供的输入;
用户界面事件响应文件提供子单元402,用于提供用户界面事件响应文件,所述用户界面事件响应文件用于定义所述图形用户界面中组件的事件处理程序;
业务逻辑文件提供子单元403,用于提供业务逻辑文件,所述业务逻辑文件用于定义所述应用程序的业务逻辑;
流程控制文件子单元404,用于提供流程控制文件,所述流程控制文件用于定义所述应用程序的窗口控制流程。
可选的,所述用户界面文件是HTML5文件,所述程序执行文件是浏览器。
可选的,所述窗口控制流程包括:初始窗口的启动,所述窗口之间的流程关系,和所述用户界面事件响应文件与所述用户界面文件的对应关系。
请参看图8,其为本申请的构建智能终端应用程序的装置实施例1程序执行文件的示意图。本实施例的一种构建智能终端应用程序的装置,所述程序执行文件包括:
读取子单元501,用于读取所述应用程序数据文件;
显示初始窗口子单元502,用于根据所述流程控制文件和所述用户界面文件,显示所述应用程序的初始窗口;
获取反馈结果子单元503,用于接收用户提供的输入,根据所述用户界面事件响应文件和所述流程控制文件调用所述业务逻辑文件的业务逻辑,获取对用户输入的反馈结果;
显示反馈结果子单元504,用于根据所述反馈结果,显示对应的图形用户界面。
请参看图9,其为本申请的构建智能终端应用程序的装置实施例1装载文件的示意图。本实施例的一种构建智能终端应用程序的装置,所述装载文件包括:
获取子单元601,用于与服务器建立连接,获取所述服务器端的应用程序数据文件列表;
标识子单元602,用于根据获取的所述服务器端的应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步判断所述应用程序数据文件的更新类型,标识所述应用程序数据文件的更新类型;
更新子单元603,用于根据所述更新类型,更新所述智能终端的应用程序数据文件。
可选的,所述应用程序数据文件列表包括:应用程序数据文件名和版本号。
可选的,所述更新类型包括:新增,升级,删除。
可选的,所述与服务器建立连接是指在所述智能终端应用程序启动时,所述应用程序的装载文件与服务器建立连接,或在智能终端应用程序运行过程中,所述应用程序的装载文件按预设的时间间隔或者接收用户的指示,与服务器建立连接。
可选的,所述装载文件还包括:
调用子单元604,用于调用所述程序执行文件,运行所述应用程序。
可选的,所述装载文件还包括:
提示子单元605,用于提示用户更新所述应用程序,并获取用户意见;
判断子单元606,用于根据所述用户意见,判断是否更新所述应用程序,如果用户同意更新所述应用程序,则停止运行所述应用程序,根据所述应用程序数据文件的更新类型,更新所述智能终端的应用程序数据文件。
在上述的实施例中,提供了一种构建智能终端应用程序的方法和装置,本申请还提供一种智能终端,包括:上述的构建智能终端应用程序的装置。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
Claims (26)
1.一种构建智能终端应用程序的方法,其特征在于,在智能终端配置下列类型的文件:
应用程序数据文件,该类型文件提供所述应用程序的运行方式的描述;
程序执行文件,用于执行所述应用程序数据文件所描述的运行方式,包括:读取所述应用程序数据文件,根据所述应用程序数据文件,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈;
装载文件,提供执行更新所述应用程序数据文件的方法。
2.根据权利要求1所述的构建智能终端应用程序的方法,其特征在于,所述装载文件与所述程序执行文件均为可执行文件。
3.根据权利要求2所述的构建智能终端应用程序的方法,其特征在于,所述应用程序数据文件包括:
用户界面文件,用于定义所述图形用户界面,所述图形用户界面接收用户提供的输入;
用户界面事件响应文件,用于定义所述图形用户界面中组件的事件处理程序;
业务逻辑文件,用于定义所述应用程序的业务逻辑;
流程控制文件,用于定义所述应用程序的窗口控制流程。
4.根据权利要求3所述的构建智能终端应用程序的方法,其特征在于,所述用户界面文件是HTML5文件,所述程序执行文件是浏览器。
5.根据权利要求3所述的构建智能终端应用程序的方法,其特征在于,所述窗口控制流程包括:初始窗口的启动,所述窗口之间的流程关系,和所述用户界面事件响应文件与所述用户界面文件的对应关系。
6.根据权利要求3所述的构建智能终端应用程序的方法,其特征在于,所述程序执行文件执行所述应用程序数据文件所描述的运行方式,其步骤包括:
读取所述应用程序数据文件;
根据所述流程控制文件和所述用户界面文件,显示所述应用程序的初始窗口;
接收用户提供的输入,根据所述用户界面事件响应文件和所述流程控制文件调用所述业务逻辑文件的业务逻辑,获取对用户输入的反馈结果;
根据所述反馈结果,显示对应的图形用户界面。
7.根据权利要求1所述的构建智能终端应用程序的方法,其特征在于,所述装载文件提供的执行更新所述应用程序数据文件的方法包括:
与服务器建立连接,获取所述服务器端的应用程序数据文件列表;
根据获取的所述服务器端的应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步判断所述应用程序数据文件的更新类型,标识所述应用程序数据文件的更新类型;
根据所述更新类型,更新所述智能终端的应用程序数据文件。
8.根据权利要求7所述的构建智能终端应用程序的方法,其特征在于,所述应用程序数据文件列表包括:应用程序数据文件名和版本号。
9.根据权利要求7所述的构建智能终端应用程序的方法,其特征在于,所述更新类型包括:新增,升级,删除。
10.根据权利要求9所述的构建智能终端应用程序的方法,其特征在于,所述标识所述应用程序数据文件的更新类型采用以下规则之一:
若所述服务器端的应用程序数据文件在所述智能终端中不存在,则标识所述服务器端的应用程序数据文件的更新类型为新增;
若所述服务器端的应用程序数据文件的版本号大于对应的所述智能终端的应用程序数据文件的版本号,则标识所述服务器端的应用程序数据文件的更新类型为升级;
若所述智能终端的应用程序数据文件在所述服务器端的应用程序数据文件列表中不存在,则标识所述智能终端的应用程序数据文件的更新类型为删除。
11.根据权利要求10所述的构建智能终端应用程序的方法,其特征在于,所述根据所述更新类型,更新所述智能终端的应用程序数据文件包括:
将所述更新类型为新增的所述应用程序数据文件增加到所述智能终端;
将所述更新类型为升级的所述应用程序数据文件更新到所述智能终端;
将所述更新类型为删除的所述应用程序数据文件从所述智能终端中删除。
12.根据权利要求7所述的构建智能终端应用程序的方法,其特征在于,所述与服务器建立连接是指在所述智能终端应用程序启动时,所述应用程序的装载文件与服务器建立连接,或在智能终端应用程序运行过程中,所述应用程序的装载文件按预设的时间间隔或者接收用户的指示,与服务器建立连接。
13.根据权利要求7所述的构建智能终端应用程序的方法,其特征在于,所述装载文件提供的执行更新所述应用程序数据文件的方法还包括:
调用所述程序执行文件,运行所述应用程序。
14.根据权利要求7所述的构建智能终端应用程序的方法,其特征在于,在判断存在应用程序数据文件更新之后,所述更新所述智能终端的应用程序数据文件之前,还包括:
提示用户更新所述应用程序,并获取用户意见;
根据所述用户意见,判断是否更新所述应用程序,如果用户同意更新所述应用程序,则停止运行所述应用程序,根据所述应用程序数据文件的更新类型,更新所述智能终端的应用程序数据文件。
15.一种构建智能终端应用程序的装置,其特征在于,在智能终端包括:
应用程序数据文件提供单元,用于提供应用程序数据文件,所述应用程序数据文件提供所述应用程序的运行方式的描述;
程序执行文件提供单元,用于提供程序执行文件,所述程序执行文件用于执行所述应用程序数据文件所描述的运行方式,包括:读取所述应用程序数据提供单元提供的所述应用程序的运行方式的描述,根据所述描述,显示图形用户界面,并接收用户提供的输入以及对用户输入进行反馈;
装载文件提供单元,用于提供装载文件,所述装载文件提供执行更新所述应用程序数据文件的方法。
16.根据权利要求15所述的构建智能终端应用程序的装置,其特征在于,所述应用程序数据文件提供单元包括:
用户界面文件提供子单元,用于提供用户界面文件,所述用户界面文件用于定义所述图形用户界面,所述图形用户界面接收用户提供的输入;
用户界面事件响应文件提供子单元,用于提供用户界面事件响应文件,所述用户界面事件响应文件用于定义所述图形用户界面中组件的事件处理程序;
业务逻辑文件提供子单元,用于提供业务逻辑文件,所述业务逻辑文件用于定义所述应用程序的业务逻辑;
流程控制文件子单元,用于提供流程控制文件,所述流程控制文件用于定义所述应用程序的窗口控制流程。
17.根据权利要求16所述的构建智能终端应用程序的装置,其特征在于,所述用户界面文件是HTML5文件,所述程序执行文件是浏览器。
18.根据权利要求16所述的构建智能终端应用程序的装置,其特征在于,所述窗口控制流程包括:初始窗口的启动,所述窗口之间的流程关系,和所述用户界面事件响应文件与所述用户界面文件的对应关系。
19.根据权利要求16所述的构建智能终端应用程序的装置,其特征在于,所述程序执行文件包括:
读取子单元,用于读取所述应用程序数据文件;
显示初始窗口子单元,用于根据所述流程控制文件和所述用户界面文件,显示所述应用程序的初始窗口;
获取反馈结果子单元,用于接收用户提供的输入,根据所述用户界面事件响应文件和所述流程控制文件调用所述业务逻辑文件的业务逻辑,获取对用户输入的反馈结果;
显示反馈结果子单元,用于根据所述反馈结果,显示对应的图形用户界面。
20.根据权利要求15所述的构建智能终端应用程序的装置,其特征在于,所述装载文件包括:
获取子单元,用于与服务器建立连接,获取所述服务器端的应用程序数据文件列表;
标识子单元,用于根据获取的所述服务器端的应用程序数据文件列表,判断是否存在应用程序数据文件更新,若是,则进一步判断所述应用程序数据文件的更新类型,标识所述应用程序数据文件的更新类型;
更新子单元,用于根据所述更新类型,更新所述智能终端的应用程序数据文件。
21.根据权利要求20所述的构建智能终端应用程序的装置,其特征在于,所述应用程序数据文件列表包括:应用程序数据文件名和版本号。
22.根据权利要求20所述的构建智能终端应用程序的装置,其特征在于,所述更新类型包括:新增,升级,删除。
23.根据权利要求20所述的构建智能终端应用程序的装置,其特征在于,所述与服务器建立连接是指在所述智能终端应用程序启动时,所述应用程序的装载文件与服务器建立连接,或在智能终端应用程序运行过程中,所述应用程序的装载文件按预设的时间间隔或者接收用户的指示,与服务器建立连接。
24.根据权利要求20所述的构建智能终端应用程序的装置,其特征在于,所述装载文件还包括:
调用子单元,用于调用所述程序执行文件,运行所述应用程序。
25.根据权利要求20所述的构建智能终端应用程序的装置,其特征在于,所述装载文件还包括:
提示子单元,用于提示用户更新所述应用程序,并获取用户意见;
判断子单元,用于根据所述用户意见,判断是否更新所述应用程序,如果用户同意更新所述应用程序,则停止运行所述应用程序,根据所述应用程序数据文件的更新类型,更新所述智能终端的应用程序数据文件。
26.一种智能终端,其特征在于,包括权利要求15至25任一项所述的构建智能终端应用程序的装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410337204.4A CN105404522A (zh) | 2014-07-15 | 2014-07-15 | 一种构建智能终端应用程序的方法、装置及智能终端 |
HK16109242.9A HK1221294A1 (zh) | 2014-07-15 | 2016-08-03 | 種構建智能終端應用程序的方法、裝置及智能終端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410337204.4A CN105404522A (zh) | 2014-07-15 | 2014-07-15 | 一种构建智能终端应用程序的方法、装置及智能终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105404522A true CN105404522A (zh) | 2016-03-16 |
Family
ID=55470024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410337204.4A Pending CN105404522A (zh) | 2014-07-15 | 2014-07-15 | 一种构建智能终端应用程序的方法、装置及智能终端 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105404522A (zh) |
HK (1) | HK1221294A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688461A (zh) * | 2016-08-03 | 2018-02-13 | 鸿富锦精密电子(天津)有限公司 | 韧体更新系统及韧体更新方法 |
CN108733426A (zh) * | 2017-04-21 | 2018-11-02 | 海马云(天津)信息技术有限公司 | 电子设备运行应用的方法、装置及电子设备 |
CN109213502A (zh) * | 2017-06-30 | 2019-01-15 | 上海连尚网络科技有限公司 | 应用更新方法和装置 |
CN109597656A (zh) * | 2017-09-28 | 2019-04-09 | 北京国双科技有限公司 | 应用程序执行方法及装置 |
CN110196743A (zh) * | 2018-12-17 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 事件触发的方法、装置、存储介质及电子装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622241A (zh) * | 2011-01-26 | 2012-08-01 | 腾讯科技(深圳)有限公司 | 一种软件升级方法及装置 |
CN102945182A (zh) * | 2012-12-06 | 2013-02-27 | 北京奇虎科技有限公司 | 应用程序更新方法和装置 |
CN102981880A (zh) * | 2012-12-06 | 2013-03-20 | 北京奇虎科技有限公司 | 一种实现应用程序的更新的方法和装置 |
CN103853567A (zh) * | 2012-12-03 | 2014-06-11 | 中兴通讯股份有限公司 | 终端软件的安装方法及装置 |
-
2014
- 2014-07-15 CN CN201410337204.4A patent/CN105404522A/zh active Pending
-
2016
- 2016-08-03 HK HK16109242.9A patent/HK1221294A1/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622241A (zh) * | 2011-01-26 | 2012-08-01 | 腾讯科技(深圳)有限公司 | 一种软件升级方法及装置 |
CN103853567A (zh) * | 2012-12-03 | 2014-06-11 | 中兴通讯股份有限公司 | 终端软件的安装方法及装置 |
CN102945182A (zh) * | 2012-12-06 | 2013-02-27 | 北京奇虎科技有限公司 | 应用程序更新方法和装置 |
CN102981880A (zh) * | 2012-12-06 | 2013-03-20 | 北京奇虎科技有限公司 | 一种实现应用程序的更新的方法和装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688461A (zh) * | 2016-08-03 | 2018-02-13 | 鸿富锦精密电子(天津)有限公司 | 韧体更新系统及韧体更新方法 |
CN108733426A (zh) * | 2017-04-21 | 2018-11-02 | 海马云(天津)信息技术有限公司 | 电子设备运行应用的方法、装置及电子设备 |
CN109213502A (zh) * | 2017-06-30 | 2019-01-15 | 上海连尚网络科技有限公司 | 应用更新方法和装置 |
CN109597656A (zh) * | 2017-09-28 | 2019-04-09 | 北京国双科技有限公司 | 应用程序执行方法及装置 |
CN110196743A (zh) * | 2018-12-17 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 事件触发的方法、装置、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
HK1221294A1 (zh) | 2017-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2916243B1 (en) | Method, apparatus, server and system for implementing web application | |
CN110020323B (zh) | 混合应用的页面切换方法、系统、计算机设备及存储介质 | |
AU2011213189B2 (en) | Widget framework, real-time service orchestration, and real-time resource aggregation | |
CN106406961A (zh) | 一种基于浏览器加载、提供应用程序的方法、装置 | |
CN105404522A (zh) | 一种构建智能终端应用程序的方法、装置及智能终端 | |
CN106686200B (zh) | 移动应用程序更新方法、移动终端及更新系统 | |
CN104375872A (zh) | 一种安卓系统实现快速开机的方法及装置 | |
CN107291481B (zh) | 一种组件更新方法、装置和系统 | |
JP6198229B2 (ja) | 並列化可能で信頼できるインストールのためのインストールエンジン及びパッケージフォーマット | |
CN111427594B (zh) | 应用程序运行方法及装置 | |
CN105335132A (zh) | 一种自定义应用程序功能的方法、装置以及系统 | |
US20100293201A1 (en) | Nfs agent upgrade | |
CN104360925A (zh) | 统计应用程序使用频率的方法及装置 | |
US9009667B2 (en) | Application server that supports multiple component models | |
JP2011086142A (ja) | 画像形成装置及びプログラム操作方法 | |
CN114968406B (zh) | 一种插件管理方法、装置、电子设备及存储介质 | |
CN101876998B (zh) | 一种实现数据编辑的方法和系统 | |
JP6002302B2 (ja) | Webアプリケーション生成システム、Webアプリケーション生成システムの制御方法、Webアプリケーション生成システムのプログラム、Webアプリケーション生成装置、Webアプリケーション生成装置の制御方法、およびWebアプリケーション生成装置のプログラム | |
CN112835568A (zh) | 一种项目构建方法和装置 | |
CN106293790B (zh) | 基于Firefox操作系统的应用程序升级方法和装置 | |
JP5471277B2 (ja) | 画像形成装置及びプログラム操作方法 | |
CN103530155A (zh) | 一种用于应用程序的安装方法及装置 | |
US9785560B2 (en) | Scene-isolated internet application | |
US11017032B1 (en) | Document recovery utilizing serialized data | |
CN115269442B (zh) | 一种基于图形接口架构和管理项目的调试方法及工具 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1221294 Country of ref document: HK |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160316 |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1221294 Country of ref document: HK |