CN110442407B - 应用程序的处理方法及装置 - Google Patents
应用程序的处理方法及装置 Download PDFInfo
- Publication number
- CN110442407B CN110442407B CN201810414882.4A CN201810414882A CN110442407B CN 110442407 B CN110442407 B CN 110442407B CN 201810414882 A CN201810414882 A CN 201810414882A CN 110442407 B CN110442407 B CN 110442407B
- Authority
- CN
- China
- Prior art keywords
- experience
- application program
- interface
- layout file
- interface layout
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种应用程序的处理方法,所述方法应用于客户端;所述方法包括:展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息;响应于对所述控件的操作指令,使得所述体验应用程序在客户端的体验模块中运行。
Description
技术领域
本申请涉及信息技术领域,尤其涉及一种应用程序的处理方法及装置。
背景技术
随着信息技术的发展,终端已经成为人们生活中不可或缺的工具,特别是移动终端,由于终端可以为自身的应用程序以及三方应用程序提供运行资源,使得终端用户可以使用安装在终端的各种功能的应用程序来满足用户的不同需求,如,视频应用程序、社交应用程序、地图应用程序以及支付应用程序等,然而不可避免的是,终端中安装过多的应用程序会导致终端过多的资源被占用,从而造成终端的响应能力以及执行能力的降低,给用户带来较差的使用体验。
发明内容
本申请提出了以下技术方案,向用户提供应用程序的试用服务,并且能降低对终端运行能力的影响。
本申请实例提出了一种应用程序的处理方法,所述方法应用于客户端;所述方法包括:展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息;响应于对所述控件的操作指令,使得所述体验应用程序在客户端的体验模块中运行。
在一些实例中,所述方法进一步包括:从程序提供服务器获取体验应用程序的存储信息;根据所述存储信息,获取所述体验应用程序;当获取到所述体验应用程序时,展示体验应用程序的试用界面。
在一些实例中,所述方法进一步包括:将获取到的所述体验应用程序存储至所述应用客户端的缓存区域中;向所述应用客户端中的体验模块发送接收到所述体验应用程序的消息,该消息携带所述体验应用程序在所述缓存区域中的存储信息,使得所述体验模块根据所述存储信息访问所述缓存区域中的所述体验应用程序;其中,所述体验应用程序在客户端的体验模块中运行,包括:所述体验模块,调用读取接口读取所述体验应用程序中的至少一个界面布局文件及业务逻辑文件;所述界面布局文件描述了所述界面布局文件中触发事件与所述业务逻辑文件中动作的对应关系;根据触发事件确定待执行界面布局文件;根据所述业务逻辑文件,调用操作***提供的对应的所述动作对应的执行接口,获取所述待执行界面布局文件中的第一待填充数据;及根据所述第一待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述方法进一步包括:所述体验模块,当读取所述体验应用程序中的至少一个界面布局文件之后,确定所述至少一个界面布局文件中的初始界面布局文件;根据所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面;及当接收到当前展示界面对应的界面布局文件中的触发事件时,根据所述触发事件从所述至少一个界面布局文件中确定所述一个待执行界面布局文件;其中,所述一个待执行界面布局文件对应的所述触发事件包括接收到的当前展示界面对应的界面布局文件中的触发事件,所述一个待执行界面布局文件为当前展示界面对应的界面布局文件或者其它界面布局文件。
在一些实例中,所述方法进一步包括:所述体验模块,接收所述应用客户端发送的接收到所述体验应用程序的消息,该消息携带所述体验应用程序的存储信息;其中,所述调用读取接口读取所述体验应用程序中的至少一个界面布局文件,包括:所述体验模块,根据所述存储信息,查找到所述体验应用程序,获取所述体验应用程序中的至少一个界面布局文件;及将所述至少一个界面布局文件置为所述读取接口可读取的界面布局文件,调用所述读取接口读取所述至少一个界面布局文件。
在一些实例中,所述方法进一步包括:所述体验模块,读取所述待执行界面布局文件中的待填充静态信息;及当根据所述待填充静态信息确定所述体验应用程序的配置文件中存在第二待填充数据时,从所述配置文件中获取所述第二待填充数据;其中,根据所述第一待填充数据和所述第二待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述体验模块,当接收到所述体验应用程序的初始化触发事件之前,读取所述体验应用程序中的所述至少一个界面布局文件并确定所述初始界面布局文件;其中,所述展示所述初始界面布局文件对应的所述体验应用程序的初始界面,包括:所述体验模块,当确定出所述初始界面布局文件时,接收到所述初始界面布局文件对应的初始触发事件;根据所述初始界面布局文件,执行所述业务逻辑文件中所述初始触发事件对应的动作;根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述初始界面布局文件中的第一待填充数据;及当接收到所述体验应用程序的初始化触发事件时,则根据所述初始界面布局文件中的所述第一待填充数据以及所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面。
在一些实例中,所述方法进一步包括:所述体验模块,当读取所述体验应用程序中的至少一个界面布局文件之后,根据用户行为属性确定第一待执行界面布局文件并确定对应的触发事件;其中,根据所述第一待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作;根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第一待执行界面布局文件中的第一待填充数据;其中,所述方法进一步包括:所述体验模块,当通过当前展示界面接收到触发事件时,根据接收到的所述触发事件从所述至少一个界面布局文件中确定第二待执行界面布局文件;其中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件相同时,根据所述第一待执行界面布局文件中的所述第一待填充数据以及所述第一待执行界面布局文件,展示所述第一待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件不同时,则所述体验模块,根据所述第二待执行界面布局文件,执行所述业务逻辑文件中接收到的所述触发事件对应的动作;根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第二待执行界面布局文件中的第一待填充数据;根据所述第二待执行界面布局文件中的所述第一待填充数据以及所述第二待执行界面布局文件,展示所述第二待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述方法进一步包括:所述体验模块,建立所述业务逻辑文件与所述操作***之间的通信关联;其中,根据所述业务逻辑文件,通过所述通信关联,调用所述操作***提供的所述对应的动作对应的所述执行接口。
在一些实例中,所述体验模块,调用所述操作***提供的对应的动作对应的执行接口从目标服务器拉取所述待执行界面布局文件中的所述第一待填充数据。
在一些实例中,所述体验模块,调用所述操作***提供的对应的动作对应的执行接口从本地终端拉取所述待执行界面布局文件中的所述第一待填充数据。
在一些实例中,所述方法进一步包括:所述体验模块,当检测到所述应用客户端不存在于网络环境中时,则在所展示的所述待展示界面布局文件对应的所述体验应用程序的界面中提供表示无法连接到网络的提示信息。
在一些实例中,所述方法进一步包括:当获取所述体验应用程序的存储信息时,从所述程序提供服务器获取所述体验应用程序的验证信息;其中,当获取到所述体验应用程序时,如果所述验证信息与所述体验应用程序中的待验证信息相同时,其中,执行所述展示体验应用程序的试用界面的步骤。
在一些实例中,所述验证信息包括所述体验应用程序的资源标识以及所述体验应用程序的来源标识;其中,当获取到的所述资源标识与所述来源标识与所述体验应用程序中的待验证资源标识与待验证来源标识相同时,执行所述展示体验应用程序的试用界面的步骤。
在一些实例中,当所述验证信息与所述体验应用程序中的待验证信息不同时,则再次执行所述获取所述体验应用程序的步骤直到所述获取所述体验应用程序的步骤的执行次数达到预定阈值。
在一些实例中,所述方法进一步包括:接收携带输入的搜索关键词的搜索指令;响应于所述搜索指令,向所述程序提供服务器发送搜索请求,所述搜索请求携带搜索关键词,以使所述程序提供服务器根据所述搜索关键词查找到对应的应用程序及其对应的体验应用程序的存储信息和验证信息;其中,所述从程序提供服务器获取体验应用程序的存储信息,包括:接收所述程序提供服务器响应于所述搜索请求而发送的所述体验应用程序的存储信息;其中,所述方法进一步包括:接收所述程序提供服务器响应于所述搜索请求而发送的所述应用程序的信息和所述体验应用程序的验证信息;其中,当获取到所述体验应用程序,且所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述搜索指令,执行所述展示体验应用程序的试用界面的步骤。
在一些实例中,所述方法进一步包括:响应于接收到的查看指令,向所述程序提供服务器发送查看请求,所述查看请求携带待查看应用程序标识,以使所述程序提供服务器根据所述待查看应用程序标识查找对应应用程序及其对应的体验应用程序的存储信息和验证信息;其中,所述从程序提供服务器获取体验应用程序的存储信息,包括:接收所述程序提供服务器响应于所述查看请求而发送的所述体验应用程序的存储信息;其中,所述方法进一步包括:接收所述程序提供服务器响应于所述查看请求而发送的所述体验应用程序的验证信息以及所述应用程序的信息;其中,当获取到所述体验应用程序,且当所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述查看指令,执行所述展示体验应用程序的试用界面的步骤。
本申请实例还提出了一种应用程序的处理装置,应用于客户端;所述装置包括:展示模块,展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息;响应模块,响应于对所述控件的操作指令,使得所述体验应用程序在客户端的体验模块中运行。
在一些实例中,所述装置进一步包括:获取模块,从程序提供服务器获取体验应用程序的存储信息;根据所述存储信息,获取所述体验应用程序;展示模块,当获取到所述体验应用程序时,展示体验应用程序的试用界面。
在一些实例中,所述装置进一步包括:存储模块,将获取到的所述体验应用程序存储至所述应用客户端的缓存区域中;消息发送模块,向所述应用客户端中的体验模块发送接收到所述体验应用程序的消息,该消息携带所述体验应用程序在所述缓存区域中的存储信息,使得所述体验模块根据所述存储信息访问所述缓存区域中所述体验应用程序;其中,所述体验模块包括:读取接口调用模块,调用读取接口读取所述体验应用程序中的至少一个界面布局文件及业务逻辑文件;所述界面布局文件描述了所述界面布局文件中触发事件与所述业务逻辑文件中动作的对应关系;执行模块,根据触发事件确定待执行界面布局文件;执行接口调用模块,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述待执行界面布局文件中的第一待填充数据;体验界面展示模块,根据所述第一待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述体验模块进一步包括:第一文件确定模块,当读取所述体验应用程序中的至少一个界面布局文件之后,确定所述至少一个界面布局文件中的初始界面布局文件;初始界面展示模块,根据所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面;第二文件确定模块,当接收到当前展示界面对应的界面布局文件中的触发事件时,根据所述触发事件从所述至少一个界面布局文件中确定所述一个待执行界面布局文件;其中,所述一个待执行界面布局文件对应的所述触发事件包括接收到的当前展示界面对应的界面布局文件中的触发事件,所述一个待执行界面布局文件为当前展示界面对应的界面布局文件或者其它界面布局文件。
在一些实例中,所述体验模块进一步包括:接收模块,接收所述应用客户端发送的接收到所述体验应用程序的消息,该消息携带所述体验应用程序的存储信息;其中,所述读取接口调用模块,包括:查找单元,根据所述存储信息,查找到所述体验应用程序,获取所述体验应用程序中的至少一个界面布局文件;第一调用单元,将所述至少一个界面布局文件置为所述读取接口可读取的界面布局文件,调用所述读取接口读取所述至少一个界面布局文件。
在一些实例中,所述体验模块进一步包括:读取模块,读取所述待执行界面布局文件中的待填充静态信息;获取模块,当根据所述待填充静态信息确定所述体验应用程序的配置文件中存在第二待填充数据时,从所述配置文件中获取所述第二待填充数据;其中,所述体验界面展示模块,根据所述第一待填充数据和所述第二待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,当接收到所述体验应用程序的初始化触发事件之前,所述读取模块,读取所述体验应用程序中的所述至少一个界面布局文件并确定所述初始界面布局文件;其中,所述初始界面展示模块,包括:接收单元,当确定出所述初始界面布局文件时,接收到所述初始界面布局文件对应的初始触发事件;执行单元,根据所述初始界面布局文件,执行所述业务逻辑文件中所述初始触发事件对应的动作;第二调用单元,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述初始界面布局文件中的第一待填充数据;展示单元,当接收到所述体验应用程序的初始化触发事件时,则根据所述初始界面布局文件中的所述第一待填充数据以及所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面。
在一些实例中,所述体验模块进一步包括:事件确定模块,当读取所述体验应用程序中的至少一个界面布局文件之后,根据用户行为属性确定第一待执行界面布局文件并确定对应的触发事件;其中,执行模块,根据所述第一待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作;执行接口调用模块,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第一待执行界面布局文件中的第一待填充数据;所述体验模块进一步包括:第三文件确定模块,当通过当前展示界面接收到触发事件时,根据接收到的所述触发事件从所述至少一个界面布局文件中确定第二待执行界面布局文件;其中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件相同时,体验界面展示模块,根据所述第一待执行界面布局文件中的所述第一待填充数据以及所述第一待执行界面布局文件,展示所述第一待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件不同时,执行模块,则根据所述第二待执行界面布局文件,执行所述业务逻辑文件中接收到的所述触发事件对应的动作;执行接口调用模块,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第二待执行界面布局文件中的第一待填充数据;体验界面展示模块,根据所述第二待执行界面布局文件中的所述第一待填充数据以及所述第二待执行界面布局文件,展示所述第二待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述体验模块进一步包括:建立模块,建立所述业务逻辑文件与所述操作***之间的通信关联;其中,执行接口调用模块,根据所述业务逻辑文件,通过所述通信关联,调用所述操作***提供的所述对应的动作对应的所述执行接口。
在一些实例中,执行接口调用模块,调用所述操作***提供的对应的动作对应的执行接口从目标服务器拉取所述待执行界面布局文件中的所述第一待填充数据。
在一些实例中,执行接口调用模块,调用所述操作***提供的对应的动作对应的执行接口从本地终端拉取所述待执行界面布局文件中的所述第一待填充数据。
在一些实例中,当检测到所述应用客户端不存在于网络环境中时,则体验界面展示模块,在所展示的所述待展示界面布局文件对应的所述体验应用程序的界面中提供表示无法连接到网络的提示信息。
在一些实例中,所述装置进一步地包括:信息获取模块,当获取所述体验应用程序的存储信息时,从所述程序提供服务器获取所述体验应用程序的验证信息;其中,当获取到所述体验应用程序时,如果所述验证信息与所述体验应用程序中的待验证信息相同时,其中,使展示模块,执行所述展示体验应用程序的试用界面的步骤。
在一些实例中,所述验证信息包括所述应用程序的资源标识以及所述体验应用程序的来源标识;其中,当获取到的所述资源标识与所述来源标识与所述体验应用程序中的待验证资源标识与待验证来源标识相同时,使展示模块,执行展示体验应用程序的试用界面的步骤。
在一些实例中,当所述验证信息与所述体验应用程序中的待验证信息不同时,则再次执行所述获取模块,获取所述体验应用程序直到所述获取所述体验应用程序的执行次数达到预定阈值。
在一些实例中,所述装置进一步包括:接收模块,接收携带输入的搜索关键词的搜索指令;第一请求发送模块,响应于所述搜索指令,向所述程序提供服务器发送搜索请求,所述搜索请求携带搜索关键词,以使所述程序提供服务器根据所述搜索关键词查找到对应的应用程序及其对应的体验应用程序的存储信息和验证信息;其中,所述信息获取模块,接收所述程序提供服务器响应于所述搜索请求而发送的所述体验应用程序的存储信息;其中,信息获取模块,进一步地,接收所述程序提供服务器响应于所述搜索请求而发送的所述应用程序的信息和所述体验应用程序的验证信息;其中,当获取到所述体验应用程序,且所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述搜索指令,使所述展示模块,展示体验应用程序的试用界面的步骤。
在一些实例中,所述装置进一步包括:第二请求发送模块,响应于接收到的查看指令,向所述程序提供服务器发送查看请求,所述查看请求携带待查看应用程序标识,以使所述程序提供服务器根据所述待查看应用程序标识查找对应应用程序及其对应的体验应用程序的存储信息和验证信息;其中,所述信息获取模块,接收所述程序提供服务器响应于所述查看请求而发送的所述体验应用程序的存储信息;其中,信息获取模块,进一步地,接收所述程序提供服务器响应于所述查看请求而发送的所述体验应用程序的验证信息以及所述应用程序的信息;其中,当获取到所述体验应用程序,且当所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述查看指令,使所述展示模块,展示体验应用程序的试用界面的步骤。
本申请实例还提出了一种应用程序的处理方法,所述方法应用于服务器;所述方法包括:接收到第一应用客户端发送的获取请求,所述获取请求携带所述体验应用程序的第一存储地址;根据所述第一存储地址,获取所述体验应用程序;及当所述体验应用程序通过检测,则响应于所述获取请求,将所述体验应用程序发送至上述第一应用客户端,以使所述体验应用程序在所述第一应用客户端的体验模块中运行。
在一些实例中,所述方法进一步包括:接收第二应用客户端发送的提交审核请求,所述提交审核请求携带所述体验应用程序;将所述体验应用程序存储至待审核存储区域,并确定所述体验应用程序在所述待审核存储区域中的第二存储地址;向所述第三应用客户端发送审核消息,所述审核消息携带所述第二存储地址,以使第三应用客户端对应的用户根据所述第一应用客户端中的体验模块对所述体验应用程序进行审核;接收所述第三应用客户端发送的审核结果,当审核结果表示为通过审核时,将所述体验应用程序存储至待下发存储区域,所述第一存储地址为所述体验应用程序存储在所述待下发存储区域中的地址,以使所述第一应用客户端获取所述待下发存储区域中的所述体验应用程序。
在一些实例中,所述提交请求还携带第二应用客户端对应的用户标识;所述方法进一步包括:当所述用户标识存在于预置免审核名单中,则直接将接收到的所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序。
本申请实例还提出了一种应用程序的处理装置,所述装置应用于服务器;所述装置包括:获取请求接收模块,接收到第一应用客户端发送的获取请求,所述获取请求携带所述体验应用程序的第一存储地址;获取模块,根据所述第一存储地址,获取所述体验应用程序;程序发送模块,当所述体验应用程序通过检测,则响应于所述获取请求,将所述体验应用程序发送至上述第一应用客户端,以使所述体验应用程序在所述第一应用客户端的体验模块中运行。
在一些实例中,所述装置进一步包括:提交请求接收模块,接收第二应用客户端发送的提交审核请求,所述提交审核请求携带所述体验应用程序;第一存储模块,将所述体验应用程序存储至待审核存储区域,并确定所述体验应用程序在所述待审核存储区域中的第二存储地址;地址发送模块,向所述第三应用客户端发送审核消息,所述审核消息携带所述第二存储地址,以使第三应用客户端对应的用户根据所述第一应用客户端中的体验模块对所述体验应用程序进行审核;接收模块,接收所述第三应用客户端发送的审核结果,当审核结果表示为通过审核时,将所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序;其中,所述第一存储地址为所述体验应用程序存储在所述待下发存储区域中的地址。
在一些实例中,所述提交请求还携带第二应用客户端对应的用户标识;所述装置进一步包括:第二存储模块,当所述用户标识存在于预置免审核名单中,则直接将接收到的所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序。
本申请实例还提出了一种应用程序的处理方法,包括:提供体验应用程序的上传入口;当接收到所述体验应用程序时,将所述体验应用程序进行存储并生成存储地址,并匹配相应的体验模块,以便于所述体验应用程序被调用时,直接在体验模块当中体验到应用程序的各种功能。
本申请实例还提出了一种应用程序的处理装置,所述装置包括:提供模块,提供体验应用程序的上传入口;存储模块,当接收到所述体验应用程序时,将所述体验应用程序进行存储并生成存储地址,并匹配相应的体验模块,以便于所述体验应用程序被调用时,直接在体验模块当中体验到应用程序的各种功能。
本申请实例还提出了一种计算设备,包括存储器、处理器以及存储在所述存储器上并在所述处理器上运行的计算机程序;所述处理器执行所述计算机程序时实现上述的方法。
本申请实例还提出了一种存储介质,存储有一个或多个程序,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行上述的方法。
应用本申请的技术方案,可以向用户提供应用程序的试用界面,使得用户可以在试用界面上触发试用功能,从而对向用户展示该应用程序对应的试用应用程序,即体验应用程序,当用户通过该试用应用程序对该应用程序进行试用后且对该试用应用程序的试用体验较为满意的情况下再去有目的性的下载完整存储空间较大的应用程序,从而避免了由于终端安装过多无用应用程序而造成的终端性能下降的问题,给用户带来了良好的使用体验,增强用户试用应用程序的意愿以及提高了用户的留存率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一个实例的应用程序的处理方法适用的***结构示意图;
图2A为本申请一个实例的应用程序的处理方法的流程图;
图2B为本申请一个实例的应用程序的处理方法的流程图;
图3为本申请一个实例中展示应用程序具备试用功能的控件信息的实例;
图4为本申请一个实例中上传体验应用程序的实例;
图5为本申请一个实例的审核体验应用程序的交互流程图;
图6为本申请一个实例中应用程序试用的实例;
图7为本申请一个实例中在调用操作***提供的执行接口的实例;
图8为本申请一个实例的应用程序的处理装置的结构示意图;
图9为本申请一个实例的体验模块的结构示意图;
图10为本申请一个实例的应用程序的处理装置的结构示意图;
图11为本申请一个实例的应用程序的处理方法的流程图;
图12A为本申请一个实例的应用程序的处理装置的结构示意图;
图12B为本申请一个实例的应用程序的处理装置的结构示意图;
图13为本申请一个实例的计算设备的硬件的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了描述上的简洁和直观,下文通过描述若干代表性的实施例来对本发明的方案进行阐述。实施例中大量的细节仅用于帮助理解本发明的方案。但是很明显,本发明的技术方案实现时可以不局限于这些细节。为了避免不必要地模糊了本发明的方案,一些实施方式没有进行细致地描述,而是仅给出了框架。下文中,“包括”是指“包括但不限于”,“根据……”是指“至少根据……,但不限于仅根据……”。下文中没有特别指出一个成分的数量时,意味着该成分可以是一个也可以是多个,或可理解为至少一个。
为了向用户提供应用程序的试用体验,本申请提出了一种应用程序的处理方法。
图1示出了本申请实例的应用程序的处理方法适用的***100结构示意图。该***100至少包括终端设备101、程序提供服务器102、数据提供服务器103以及网络104。
其中,终端设备101是指具有数据计算处理功能的终端设备101,包括但不限于(安装有通信模块的)智能手机、掌上电脑、平板电脑等。这些终端设备101上都安装有操作***,包括但不限于:Android操作***等等。终端设备101安装有应用程序(如,提供应用程序的APP或提供应用程序的网页版应用程序),该应用程序通过网络104与程序提供服务器102中安装的应用服务器软件(如与提供应用程序的APP或提供应用程序的网页版应用程序对应的应用服务器软件)进行信息交互(如,从程序提供服务器102的应用服务器软件中获取体验应用程序)。
数据提供服务器103安装有与上述体验应用程序对应的应用服务器软件(如,视频服务器安装有视频应用服务软件);上述体验应用程序通过终端设备101以及网络104与数据提供服务器103安装的应用服务器软件进行信息交互。
其中,上述应用程序可以为应用市场、APP Store以及应用宝等。
程序提供服务器102可以是向上述应用市场提供应用程序以及体验应用程序的服务器、向上述APP Store提供应用程序以及体验应用程序的服务器以及向上述应用宝提供应用程序以及体验应用程序的服务器;用户可以在上述应用程序(如,应用市场、APP Store以及应用宝)中试用上述体验应用程序(例如,视频APP、音频APP、社交APP以及新闻APP等)。
数据提供服务器103可以包括视频服务器、音频服务器、社交服务器以及新闻服务器等;当用户在上述应用程序中试用上述体验应用程序时,上述体验应用程序通过上述应用程序、终端设备101以及网络104与对应的数据提供服务器103进行信息交互。
需要说明的是,当程序提供服务器102提供的应用程序是其自身服务器对应的应用程序(如,应用宝服务器提供应用宝应用程序),程序提供服务器102与数据提供服务器103可以属于同一个服务器。
网络104可以是有线网络,也可以是无线网络。
基于***100,本申请的实例提出了一种应用程序的处理方法,应用于应用客户端(如,应用市场APP)中。如图2A所示,该方法200A包括以下步骤:
需要说明的是,以下提到的体验应用程序也是试用应用程序。
步骤201:展示体验应用程序的试用界面。
其中,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息。
在一些实例中,所述方法200A进一步包括:客户端从程序提供服务器获取体验应用程序的存储信息;根据所述存储信息,获取所述体验应用程序;当获取到所述体验应用程序时,展示体验应用程序的试用界面。
例如,所述方法200A进一步包括:客户端接收携带输入的搜索关键词(如,“车来了”)的搜索指令;响应于所述搜索指令,向所述程序提供服务器102发送搜索请求,所述搜索请求携带搜索关键词,以使所述程序提供服务器102根据所述搜索关键词查找到对应的应用程序及其对应的体验应用程序的存储信息;其中,所述从程序提供服务器102获取体验应用程序的信息,包括:接收所述程序提供服务器102响应于所述搜索请求而发送的所述应用程序的信息与所述体验应用程序的信息;其中,当所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述搜索指令,执行展示体验应用程序的试用界面的步骤。
例如,所述方法200A进一步包括:应用客户端(即上述客户端)响应于接收到的查看指令(如,查看一个视频APP的详情页的指令),向所述程序提供服务器102发送查看请求,所述查看请求携带待查看应用程序标识(如,一个视频APP的ID),以使所述程序提供服务器102根据所述待查看应用程序标识查找对应应用程序及其对应的体验应用程序的存储信息(如,待下发存储区域中的地址);其中,所述从程序提供服务器102获取体验应用程序的信息,包括:接收所述程序提供服务器102响应于所述查看请求而发送的所述体验应用程序的信息(如,存储信息、验证信息等)以及所述应用程序的信息(如,该视频APP的详情信息,如,下载率、应用程序大小、评论数据等);其中,当所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述查看指令,执行展示体验应用程序的试用界面的步骤。
在一些实例中,所述方法200A进一步包括:应用客户端(即上述客户端)将获取到的所述体验应用程序(如,视频APP的体验应用程序的zip资源包)存储至所述客户端的缓存区域中;向所述应用客户端中的体验模块(如,试玩SDK或体验SDK)发送接收到所述体验应用程序的消息,该消息携带所述体验应用程序在所述缓存区域中的存储信息,使得所述体验模块根据所述存储信息访问所述缓存区域中的所述体验应用程序。由于应用客户端(即上述客户端)将体验应用程序存储在缓存区域(比如Cache Memory,位于CPU和内存之间的临时存储器),体验应用程序的存储并不会占用太多***资源,当体验模块读取到体验应用程序完成体验功能(或者说试玩功能)后,体验应用程序可以被即时清除,从而实现用完即走的效果。
在一些实例中,当获取所述体验应用程序的存储信息时,从所述程序提供服务器102获取所述体验应用程序的验证信息;其中,当获取到所述体验应用程序时,如果所述验证信息与所述体验应用程序中的待验证信息相同时,执行所述展示体验应用程序的试用界面的步骤。
其中,所述验证信息包括所述体验应用程序的资源标识(如,版本号)以及所述体验应用程序的来源标识(如,MD5)。
当获取到的所述资源标识与所述来源标识与所述体验应用程序中的待验证资源标识与待验证来源标识相同时,执行所述展示体验应用程序的试用界面的步骤。
在一些实例中,当所述验证信息与所述体验应用程序中的待验证信息不同时(即,获取到的所述资源标识与所述来源标识与所述体验应用程序中的待验证资源标识与待验证来源标识不完全相同时),则再次执行所述获取所述体验应用程序的步骤直到所述获取所述体验应用程序的步骤的执行次数达到预定阈值(如,2次)。
步骤202:响应于对所述控件的操作指令,使得所述体验应用程序在客户端的体验模块中运行。
其中,所述体验模块也可以称为试玩模块(如,体验SDK,或称试玩SDK)。
控件可以但不限于为:图标或按钮等。
例如,根据前文所述,用户点击试用界面中的试玩图标,客户端响应于该试玩图标的触发操作指令,使终端设备101的操作***加载应用程序“车来了”的体验应用程序(即提供给应用程序“车来了”运行资源,如运行内存等),当完成体验应用程序的加载过程后,使体验模块运行该体验应用程序。
在一些实例中,如图2B所示,所述体验应用程序在客户端的体验模块中运行,包括以下步骤:
步骤203:所述体验模块,调用读取接口读取所述体验应用程序中的至少一个界面布局文件。
其中,所述体验应用程序包括界面布局文件和业务逻辑文件(例如,Lua执行脚本文件),此界面布局文件可以是可扩展标记语言(XML,Extensible Markup Language)样式文件。所述界面布局文件描述了所述界面布局文件中触发事件(如,页面跳转事件、页面布局更改事件、登录事件等)与所述业务逻辑文件中动作(如,页面跳转事件对应的跳转页面的数据获取动作、页面布局更改事件对应的页面的数据获取动作、登录事件对应的登录数据的获取动作等)的对应关系。
上述应用客户端所对应的用户可以为使用该应用客户端进行试用该体验应用程序的普通用户,也可以为使用该应用客户端对该体验应用程序进行审核的审核人员,还可以是使用该应用客户端对该体验应用程序进行测试或调试的开发人员。
上述体验应用程序还可以包括配置文件(如,ini配置资源)以及图片资源文件(如,png图片资源文件),可以将上述体验应用程序包括的各个文件以zip包的形式进行打包封装。
需要说明的是,当上述体验应用程序采用Lua执行脚本文件作为业务逻辑文件时,不仅使得该体验应用程序占用空间较小,且运行时效率更高,同时与程序提供服务器102或数据提供服务器103中的C或C++语言更容易交互,同时便于开发;此外,当可扩展标记语言(XML,Extensible Markup Language)样式文件作为界面布局文件时,由于可扩展标记语言(XML,Extensible Markup Language)样式文件基于操作***(如,Android操作***)原生规则进行扩展,规则高度一致性,降低了开发难度。
在一些实例中,用户启动上述应用客户端(如,应用市场APP),在应用客户端中的搜索框中输入应用程序的关键词(如,车来了)并进行搜索,当应用客户端接收到用户的搜索指令后,响应于该搜索指令,向程序提供服务器102发送搜索请求,该搜索请求携带用户标识(如,用户ID)、体验模块标识(如,体验SKD版本号)以及搜索关键词(如,车来了)等;程序提供服务器102接收到该搜索请求并响应于该搜索请求,根据所述搜索关键词在应用程序数据库中查找与搜索关键词匹配的应用程序,并获取查找到的各个应用程序标识(如,APP ID),根据该应用程序标识在试用应用程序数据库中查找与该应用程序标识相匹配的体验应用程序即试用应用程序,再根据体验模块标识(如,体验SKD版本号)查找与该体验模块标识相匹配的一个或多个试用应用程序资源包并对符合要求的试用应用程序资源包进行信息获取。
例如,应用程序APP ID“111”,名称为“车来了”匹配的试用应用程序的资源包版本号为:“111.3.1”、“111.3.2”、“111.4.1”、“111.4.2”、“111.5.1”以及“111.5.2”,当体验SKD版本号为“4”时,则与该体验SKD版本号相匹配的试用应用程序的资源包版本号为:“111.3.1”、“111.3.2”、“111.4.1”、“111.4.2”,可以任意选取其中一个资源包版本号“111.4.2”作为该应用程序的试用应用程序,同时判断该资源包是否经过人工审核或者是否为白名单开发人员上传的资源包,若该资源包经过人工审核或者是为白名单开发人员上传的资源包,则获取该资源包的验证信息和存储信息(如,下载地址),其中,验证信息包括资源包验证标识(如,MD5)以及资源包标识(如,版本号)。
上述根据搜索关键词匹配到的应用程序都会根据上述匹配过程查找各自的试用应用程序,当查找到各自的试用应用程序后,程序提供服务器102响应于该搜索请求向应用客户端发送应用程序搜索结果数据以及各个应用程序的试用应用程序资源包的验证信息(包括资源包验证标识(如,MD5)以及资源包标识)和存储信息(如,下载地址),应用客户端在接收到上述数据和信息后,根据上述下载地址从程序提供服务器102拉取对应的试用应用程序资源包至应用客户端的缓存中,当拉取到该资源包后,对该资源包进行验证,将资源包中的验证标识(如,MD5)和资源包标识(如,版本号)与程序提供服务器102发送的验证标识(如,MD5)和资源包标识(如,版本号)进行对比,以保证从程序提供服务器102拉取到的资源包未被恶意拦截、篡改或毁坏;当对比结果为验证标识与资源包标识均相同时,则视为该应用程序具备试用功能,当对比结果为验证标识或资源包标识有一个不同时,则重新拉取该资源包,若拉取到的资源包的验证标识与资源包标识与程序提供服务器102发送的验证标识(如,MD5)和资源包标识仍不完全相同,则视为该应用程序不具备试玩功能;应用客户端基于上述搜索结果向用户展示搜索到的各个应用程序的展示信息以及各个应用程序的具备试用功能控件(若该应用程序不具备试用功能,则不展示该应用程序具备试用功能的控件,其中控件可以为试玩按钮),图3示出了应用程序具备试用功能的提示信息的界面300,该界面300中展示了应用程序“车来了”的试玩功能,即试用功能,在该界面300中展示了应用程序“车来了”的可试玩按钮301和下载按钮302,当用户点击可试玩按钮301时,用户即可根据方法200对该应用程序“车来了”的体验应用程序进行试用,当用户结束对该体验应用程序的试用并且想要下载该应用程序“车来了”的完整版本时,点击下载按钮302即可下载该应用程序“车来了”的最新完整版本。
需要说明的是,图4中示出了程序提供服务器102向开发人员提供了应用客户端中的界面401接口(如,网页应用程序中的接口),图5示出了审核体验应用程序的交互流程图;开发人员可以通过该界面401中的上传接口上传预下发的试用应用程序zip包,程序提供服务器102会将接收到的该zip包中的文件发送至一个临时存储区域(即待审核存储区域),并生成一个存储地址(如,以二维码的形式存储该存储地址),当开发人员上传zip包的文件完成后,可以对该zip包的文件进行试用(即调试或测试),从而对该zip包的文件进行检查,当开发人员选择界面401中的生成预览接口来进行预览自测时,程序提供服务器102会将存储地址提供给开发人员,该存储地址存储在图4中的界面402中展示的二维码中,使得开发人员通过移动终端设备中安装的应用客户端对该存储地址中的zip进行获取(如,通过应用客户端的扫码接口对二维码进行扫码,拉取该zip包),当拉取到该zip包以后,根据该方法200对该试用应用程序进行试用。当开发人员认为该试用应用程序的zip包无问题后,则选择该界面401中的提交审核接口,则该界面401中的提交审核接口会向程序提供服务器102执行步骤501:发送提交审核请求,该提交审核请求携带用户标识(如,用户ID)等,当程序提供服务器102接收到该提交审核请求后,向预定审核人员的管理应用客户端(如,网页应用程序)执行步骤502:发送审核消息,该审核消息携带上述存储地址,审核人员接收到该审核消息后,管理应用客户端执行步骤503:展示该审核消息中的存储地址,其中,该存储地址存储在二维码中,通过移动终端设备中安装的应用客户端(即审核应用客户端,如应用市场APP)对该二维码进行扫描,执行步骤504:获取到该存储地址,并从程序提供服务器102执行步骤505:拉取该zip包即试用应用程序,当拉取到该zip包以后,根据该方法200执行步骤506:审核该试用应用程序。当审核无问题后,则该管理应用客户端根据审核人员的指令,向程序提供服务器102执行步骤507:发送表示审核合格的消息,当程序提供服务器102接收到该消息中的审核合格的结果后,执行步骤508:将存储在临时区域的对应zip包即试用应用程序转存至上述试用应用程序数据库中的对应区域(即待下发存储区域),以等待应用客户端对该试用应用程序的获取。若白名单开发人员在上传zip包时,无需对该zip包进行检测。
此外,开发人员在上传上述zip包时,可以对zip包的下发用户群体(即普通用户)进行限制,该限制规则可以包括只有预置数量的用户可以拉取到该试用应用程序,也可以根据用户的终端设备型号来选择用户拉取到该试用应用程序,还可以根据用户的终端设备号码(如,手机号)来选择用户拉取到该试用应用程序。
在一些实例中,当试用应用程序的zip包被应用客户端验证通过后,体验模块接收所述应用客户端发送的接收到所述体验应用程序的消息,该消息携带所述体验应用程序的存储信息(如,应用客户端的缓存地址);其中,所述调用读取接口读取所述体验应用程序中的至少一个界面布局文件,包括:体验模块根据所述存储信息,查找到所述体验应用程序即试用应用程序,获取所述体验应用程序中的至少一个界面布局文件(如,XML样式文件);及将所述至少一个界面布局文件置为所述读取接口可读取的界面布局文件,调用所述读取接口(如,Android操作***提供的org.w3c.dom包下的组件)读取所述至少一个界面布局文件(如,org.w3c.dom包下的组件通过DOM的读取方式读取XML样式文件,并建立该XML样式文件的DOM树,从而渲染并展示该DOM树,生成展示界面)。
应理解,上述读取接口可以是设置在体验模块中的组件,该组件是Android操作***提供的org.w3c.dom包下的组件,也可以是借助(即调用)Android操作***中已有的org.w3c.dom包下的组件。
需要说明的是,试用应用程序的版本号如“111.3.1”中的“111”表示应用程序标识(如APP ID),“3”表示体验模块标识(如,体验SKD版本号),“1”表示试用应用程序的资源包标识,且体验模块标识(如,体验SKD版本号)匹配试用应用程序的规则是,选取小于等于该体验模块标识(如,体验SKD版本号)的试用应用程序的资源包作为试用应用程序。
当程序提供服务器102未搜索到一个应用程序的试用应用程序,则视为该应用程序不具体试用功能,则应用客户端不会向用户展示该应用程序具备试用功能的提示信息。
程序提供服务器102的试用应用程序数据库中可以存储一个试用应用程序的最多5个资源包,若当前试用应用程序的资源包不可用时,可以及时回滚到上一个版本的试用应用程序资源包,同时减少程序提供服务器102的存储成本。
上述展示试用应用程序的试用功能的应用场景还可以运用在查看应用程序的详情页面的应用场景中,此时应用客户端向程序提供服务器102发送的是应用程序的查看请求,该查看请求携带用户标识、应用程序标识以及体验模块标识,程序提供服务器102直接根据该应用程序标识查找该应用程序的试用应用程序资源包,并向应用客户端发送该应用程序的详情数据以及资源包的信息(如,资源包验证信息(如MD5)、下载地址以及资源包版本号),从而使得应用客户端展示该应用程序的详情页面以及具备试用功能控件(若该应用程序不具备试用功能,则不展示该应用程序具备试用功能的控件)。图6示出了应用程序试用的实例600,其中,当用户点击应用客户端展示的一个应用程序时,该应用程序的详情页面的界面601展示该应用程序具备试用功能,即试玩功能,如该界面601中展示的应用程序“车来了”的可试玩按钮603,当用户点击该可试玩按钮603时,客户端响应于用户的该试玩指令,使得终端设备101的操作***加载应用程序“车来了”的体验应用程序(即提供给应用程序“车来了”运行资源,如运行内存等),当完成体验应用程序的加载过程后,体验模块运行该体验应用程序,根据前文所述实现方式,通过读取接口读取该体验应用程序中的界面布局文件(或者是根据本申请的技术方案的实现方式运行该体验应用程序中的界面布局文件和业务逻辑文件)从而展示该应用程序“车来了”的试用应用程序界面602,用户根据该界面602进行试用,当用户对该体验应用程序觉得满意,想要下载该应用程序的完整版安装包时,可以点击下载按钮603进行下载、安装以及正式使用该应用程序。
需要说明的是,当应用客户端接收到一个体验应用程序时,操作***就可以立即将该体验应用程序加载至操作***的内存中,当接收到用户的试玩指令后,立即执行体验模块运行该体验应用程序的过程,从而减少用户试用体验应用程序的等待时间,提高用户良好的试用体验。
步骤204:当接收到所述体验应用程序中一个待执行界面布局文件对应的触发事件时,根据所述待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作。
应理解,步骤203即是根据触发事件确定待执行界面布局文件。
其中,所述一个待执行界面布局文件对应的所述触发事件包括接收到的当前展示界面对应的界面布局文件中的触发事件,所述一个待执行界面布局文件为当前展示界面对应的界面布局文件或者其它界面布局文件。
所述触发事件包括实时触发事件、时间触发事件、指令触发事件(即用户指令触发事件)以及执行步骤触发事件(即执行指定程序命令时的触发事件)。
在一些实例中,在展示出体验应用程序的初始界面(如,视频APP体验应用程序的初始界面或拍照APP应用程序的初始界面)后,可以根据用户的触发操作(如,观看初始界面中的一个视频的触发操作或拍照初始界面中的拍照触发操作),获取该触发操作对应的触发事件(如,观看初始界面中的一个视频的触发事件或拍照触发事件),当体验模块通过当前界面(如,初始界面)接收到所述体验应用程序中一个待执行界面布局文件(如,观看视频的XML样式文件或拍照XML样式文件)对应的触发事件(如,观看初始界面中的一个视频的触发事件或拍照触发事件,)时,就可以根据该触发事件确定其对应的待执行界面布局文件,根据所述待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作(如,体验模块根据该观看初始界面中的一个视频的触发事件确定该观看视频的XML样式文件,读取该观看视频的XML样式文件,根据该观看初始界面中的一个视频的触发事件初始化Lua虚拟机,加载Lua执行脚本文件,执行Lua执行脚本文件中的对应函数,来执行获取对应的播放视频待填充数据等的动作,或根据拍照触发事件确定该拍照XML样式文件,读取该拍照XML样式文件,根据该拍照触发事件初始化LUA虚拟机,加载Lua执行脚本文件,执行Lua执行脚本文件中的对应函数,来执行获取对应的用户图像等的动作)。
步骤205:根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述待执行界面布局文件中的第一待填充数据。
其中,调用所述操作***提供的对应的动作对应的执行接口可以从目标服务器拉取所述待执行界面布局文件中的所述第一待填充数据。
调用所述操作***提供的对应的动作对应的执行接口可以从本地终端拉取所述待执行界面布局文件中的所述第一待填充数据。
例如,图7示出了体验模块根据Lua执行脚本文件中的对应函数调用操作***提供的网络接口的实例700,其中,体验模块执行Lua执行脚本文件中的对应函数,向网络接口执行步骤701:发送调用消息,该调用消息携带视频标识,该网络接口(如,HTTPS网络接口)向在接收到该调用消息后,向视频服务器执行步骤702:发送拉取请求,该拉取请求携带视频标识,视频服务器响应于该拉取请求向该网络接口执行步骤703:发送目标视频流,使得该网络接口从视频服务器(即数据提供服务器103)拉取初始界面布局文件中的播放视频待填充数据,该网络接口再向体验模块执行步骤704:发送该目标视频流,以使该体验模块获取到该播放视频待填充数据。
例如,体验模块根据初始界面中的切换摄像头(如,由本地后置摄像头切换至本地前置摄像头)的触发事件确定该前置摄像头的界面布局文件(此时的本地前置摄像头的XML样式文件与本地后置摄像头的XML样式文件可以相同),读取该本地前置摄像头的界面布局文件,根据该切换摄像头的触发事件初始化虚拟机,加载Lua执行脚本文件,执行Lua执行脚本文件中的对应函数,来执行获取对应的播放视频待填充数据等的动作;体验模块根据Lua执行脚本文件中的对应函数调用操作***提供的本地摄像头接口(如,终端前置摄像头),该摄像头接口从本地终端获取初始界面布局文件中的用户图像待填充数据。
在一些实例中,体验模块建立所述业务逻辑文件与所述操作***之间的通信关联(如,根据体验模块设置中的JavaLuaBridge建立Lua执行脚本文件与Android操作***之间的通信关联);其中,根据所述业务逻辑文件,通过所述通信关联,调用所述操作***提供的所述对应的动作对应的所述执行接口。
需要说明的是,体验模块运用应用客户端提供的应用权限来调用操作***提供的接口。
此外,当应用客户端提供了对应预置接口(如,摄像头接口),体验模块也可以通过JavaLuaBridge调用应用客户端的对应预置接口来完成执行动作,应理解,应用客户端的提供的预置接口也是应用客户端调用操作***提供的接口。
步骤206:根据所述第一待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,当体验模块接收到触发事件时(如,观看初始界面中的一个视频的触发事件),则根据观看视频的界面布局文件中的所述第一待填充数据(如,播放视频的视频流)以及观看视频的界面布局文件,展示观看视频的界面布局文件对应的观看视频的界面(如,体验模块将从上述网络接口获取到的视频流待填充数据以绑定方式关联到观看视频的XML样式文件中的对应待填充字段中并进行渲染展示该观看视频的界面,当XML样式文件进行渲染和展示时,建立该XML样式文件的DOM树,从而渲染并展示该DOM树,生成展示界面)。
其中,上述绑定方式可以包括:将界面布局文件中的待填充字段与第一待填充数据以键-值(即key-value)的形式进行绑定,通过将第一待填充数据填入到对应值(即value)中从而关联到待填充字段中,来进行界面展示。图6示出了应用程序试用的实例600,其中,展示应用程序具备试用功能的界面601为应用程序详情页面,该界面601展示了应用程序“车来了”的试玩功能,即试用功能,当用户点击该试玩功能的按钮时,则展示该应用程序“车来了”的试用应用程序的试用界面602,用户即可开始该应用程序的试用过程。
需要说明的是,用户根据当前的展示界面,继续试用该试用应用程序时,体验模块会重复前文中阐述的执行过程来实现用户持续试用该试用应用程序的流程,直至用户退出该试用应用程序。
其中,当用户点击该试玩功能的按钮时,体验模块向用户展示该试用应用程序的初始界面,例如,在一些实例中,当体验模块读取所述体验应用程序(如,视频APP体验应用程序或拍照APP体验应用程序)中的至少一个界面布局文件(如,XML样式文件)之后,确定所述至少一个界面布局文件中的初始界面布局文件(如,初始XML样式文件);根据所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面;及当接收到当前展示界面(如,视频APP体验应用程序的初始界面或拍照APP体验应用程序的初始界面)对应的界面布局文件中的触发事件(如,观看视频APP体验应用程序的初始界面中的一个视频的触发事件或点击拍照APP体验应用程序的初始界面拍照按钮的触发事件)时,根据所述触发事件(如,观看视频APP体验应用程序的初始界面中的一个视频的触发事件或点击拍照APP体验应用程序的初始界面拍照按钮的触发事件)从所述至少一个界面布局文件中确定所述一个待执行界面布局文件(如,观看视频的XML样式文件或拍照XML样式文件)。
在一些实例中,当接收到所述体验应用程序的初始化触发事件(如,视频APP体验应用程序的试用触发事件或拍照APP体验应用程序的试用触发事件)之前,体验模块读取所述体验应用程序中的所述至少一个界面布局文件并确定所述初始界面布局文件(如,视频APP体验应用程序的初始XML样式文件或拍照APP体验应用程序的初始XML样式文件);其中,所述展示所述初始界面布局文件对应的所述体验应用程序的初始界面,包括:当确定出所述初始界面布局文件时,接收到所述初始界面布局文件对应的初始触发事件(即确定初始界面布局文件的执行步骤所对应的触发事件);根据所述初始界面布局文件(如,视频APP体验应用程序的初始界面或拍照APP体验应用程序的初始界面),执行所述业务逻辑文件(如,Lua执行脚本文件)中所述初始触发事件对应的动作(如,体验模块根据接收到的该触发事件初始化Lua虚拟机,加载Lua执行脚本文件,执行Lua执行脚本文件中的对应函数,获取对应的视频信息待填充数据);根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口(如,体验模块根据Lua执行脚本文件中的对应函数调用操作***提供的网络接口),以获取所述初始界面布局文件中的第一待填充数据(如,网络接口从视频服务器拉取初始界面布局文件中的视频信息待填充数据或网络接口从拍照服务器拉取初始界面布局文件中的照片信息待填充数据);及当接收到所述体验应用程序的初始化触发事件时(如,体验模块接收到试用触发事件),则根据所述初始界面布局文件中的所述第一待填充数据(如,视频信息待填充数据或照片信息待填充数据)以及所述初始界面布局文件(如,视频APP体验应用程序的初始XML样式文件或拍照APP体验应用程序的初始XML样式文件),展示所述初始界面布局文件对应的所述体验应用程序的初始界面(如,视频APP体验应用程序的初始界面或拍照APP体验应用程序的初始界面;其中,体验模块将从上述网络接口获取到的视频信息待填充数据或照片信息待填充数据,以绑定方式关联到初始界面布局文件中的对应待填充字段中并进行渲染展示该初始界面),从而减少试用应用程序在运行时耗费的大量时间。
在一些实例中,当读取所述体验应用程序中的至少一个界面布局文件之后,根据用户行为属性(即用户的喜好信息,如,动漫)确定第一待执行界面布局文件(如,观看动漫视频的XML样式文件,且可以与观看其他视频的XML样式文件相同)并确定对应的触发事件(如,确定根据用户行为属性确定第一待执行界面布局文件的执行步骤所对应的触发事件);其中,根据所述第一待执行界面布局文件(如,观看动漫视频的XML样式文件),执行所述业务逻辑文件中所述触发事件对应的动作;根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第一待执行界面布局文件中的第一待填充数据(如,动漫视频流);所述方法200进一步包括:当通过当前展示界面(如,视频APP体验应用程序的初始界面)接收到触发事件时(如,观看视频APP体验应用程序的初始界面中的一个动漫视频的触发事件),根据接收到的所述触发事件从所述至少一个界面布局文件中确定第二待执行界面布局文件(如,视频APP体验应用程序的观看动漫视频的XML样式文件)。当所述第一待执行界面布局文件和所述第二待执行界面布局文件相同时,根据所述第一待执行界面布局文件中的所述第一待填充数据以及所述第一待执行界面布局文件,展示所述第一待执行界面布局文件对应的所述体验应用程序的界面。
其中,用户行为属性的获取方式可以包括:从数据提供服务器103中获取用户行为属性,如,操作***提供的网络接口向数据提供服务器103发送获取请求,该获取请求携带用户标识,接收数据提供服务器103响应于该获取请求返回的用户行为属性。
在一些实例中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件不同时(如,第一待执行界面布局文件为观看动漫视频的XML样式文件,第二待执行界面布局文件为登录视频APP账号的XML样式文件),则根据所述第二待执行界面布局文件(如,登录视频APP账号的XML样式文件),执行所述业务逻辑文件(如,Lua执行脚本文件)中接收到的所述触发事件对应的动作(如,体验模块根据用户的登录操作对应的登录触发事件初始化Lua虚拟机,加载Lua执行脚本文件,执行Lua执行脚本文件中的对应函数,来执行登录动作);根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第二待执行界面布局文件(如,登录视频APP账号的XML样式文件)中的第一待填充数据(如,用户的登录信息);根据所述第二待执行界面布局文件(如,登录视频APP账号的XML样式文件)中的所述第一待填充数据(如,用户的登录信息,可以包括用户头像、用户昵称等)以及所述第二待执行界面布局文件,展示所述第二待执行界面布局文件对应的所述体验应用程序的界面(如,视频APP账号登录后的展示界面)。
需要说明的是,第二待执行界面布局文件是第一待执行界面布局文件的下一个要展示的界面布局文件,当第一待执行界面布局文件和第二待执行界面布局文件不同时,通过跳转页面的方式,由第一待执行界面布局文件对应的展示界面跳转到第二待执行界面布局文件对应的展示界面。
在一些实例中,当检测到所述应用客户端不存在于网络环境中时,则在所展示的所述待展示界面布局文件对应的所述体验应用程序的界面(如,观看视频的界面)中提供表示无法连接到网络的提示信息。
需要说明的是,本申请实施例解决了应用客户端(如,应用市场APP、应用宝APP等)不具有试玩功能或体验功能的问题,增强用户的体验好感,激发用户的下载应用客户端或应用客户端中的应用程序的意愿。
基于***100,本申请的实例还提出了一种应用程序的处理方法,所述方法应用于服务器(如,程序提供服务器102);如图10所示,所述方法1000包括以下步骤:
步骤1001:接收到第一应用客户端(如,应用市场APP)发送的获取请求,所述获取请求携带所述体验应用程序的第一存储地址。
在一些实例中,所述方法1000进一步包括:程序提供服务器102(如,应用市场APP的服务器)接收第二应用客户端(如,开发人员的应用市场网页应用程序,即管理应用客户端)发送的提交审核请求,所述提交审核请求携带所述体验应用程序;将所述体验应用程序存储至待审核存储区域,并确定所述体验应用程序在所述待审核存储区域中的第二存储地址;向所述第三应用客户端(如,审核人员的应用市场网页应用程序)发送审核消息,所述审核消息携带所述第二存储地址,以使第三应用客户端对应的用户根据所述方法200对所述体验应用程序进行审核;接收所述第三应用客户端发送的审核结果,当审核结果表示为通过审核时,将所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序。
其中,所述第一存储地址为所述体验应用程序存储在所述待下发存储区域中的地址。
步骤1002:根据所述第一存储地址,获取所述体验应用程序。
步骤1003:当所述体验应用程序通过检测(如,该体验应用程序已经审核通过或该体验应用程序的开发人员属于免审核名单中的开发用户),则响应于所述获取请求,将所述体验应用程序发送至上述方法200中的第一应用客户端,以使所述体验应用程序在所述第一应用客户端的体验模块中运行。
在一些实例中,所述提交请求还携带第二应用客户端对应的用户标识(如,如开发人员的用户ID);所述方法1000进一步包括:当所述用户标识存在于预置免审核名单(如,白名单)中,则直接将接收到的所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序。
需要说明的是,将试玩功能或体验功能开放给各个开发的应用程序(如,游戏APP、视频APP等)的开发人员以及开发商,让开发人员或开发商自主选择是否提供应用程序的试玩功能,提升了开发商开发的应用程序的下载激活率。
基于***100,本申请的实例还提出了一种应用程序的处理方法,所述方法可以应用于***100中;如图11所示,所述方法1100包括以下步骤:
步骤1101:提供体验应用程序的上传入口。
例如,根据前文所述,程序提供服务器102为体验应用程序的开发用户提供了体验应用程序的上传入口,如,向开发人员提供了应用客户端中的界面接口(如,网页客户端中的上传按钮),开发人员可以通过该界面中的上传接口上传预下发的试用应用程序zip包。
步骤1102:当接收到所述体验应用程序时,将所述体验应用程序进行存储并生成存储地址,并匹配相应的体验模块,以便于所述体验应用程序被调用时,直接在体验模块当中体验到应用程序的各种功能。
例如,根据前文所述,当程序提供服务器102会将接收到的该zip包中的文件发送至一个临时存储区域(即待审核存储区域),并生成一个存储地址(如,以二维码的形式存储该存储地址),等待人工审核,当人工审核合格后,将存储在临时区域的对应zip包即试用应用程序转存至上述试用应用程序数据库中的对应区域(即待下发存储区域),以等待应用客户端对该试用应用程序的获取,当客户端从程序提供服务器102获取到该体验应用程序时,可以将该体验应用程序存储至缓存区域(比如Cache Memory,位于CPU和内存之间的临时存储器),并生成存储地址,并与该客户端中的体验模块相对应,当该体验应用程序被调用时,该客户端中的体验模块根据该存储地址读取其中的相应文件,执行相应文件,使得用户能够体验该应用程序的功能。
需要说明的是,该***100中的终端设备101还可以作为开发用户的终端设备,该开发用户的终端设备中的客户端与程序提供服务器102进行信息交互,使得程序提供服务器102为开发人员提供体验应用程序的上传入口,即对应客户端界面中的上传控件。
基于方法200,本申请的实例还提出了一种应用程序的处理装置,所述装置应用于应用客户端(即上述客户端);如图8所示,所述装置800包括:
展示模块801,展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息。
响应模块802,响应于对所述控件的操作指令,使得所述体验应用程序在客户端的体验模块中运行。
在一些实例中,所述装置800进一步包括:获取模块,从程序提供服务器获取体验应用程序的存储信息;根据所述存储信息,获取所述体验应用程序;展示模块,当获取到所述体验应用程序时,展示体验应用程序的试用界面。
在一些实例中,所述装置800进一步包括:存储模块,将获取到的所述体验应用程序存储至所述应用客户端的缓存区域中;消息发送模块,向所述应用客户端中的体验模块发送接收到所述体验应用程序的消息,该消息携带所述体验应用程序在所述缓存区域中的存储信息,使得所述体验模块根据所述存储信息访问所述缓存区域中所述体验应用程序;其中,如图9所示,所述体验模块900包括:读取接口调用模块901、执行模块902、执行接口调用模块903和体验界面展示模块904;且各个模块的功能具体如下:
读取接口调用模块901,当检测到所述应用客户端接收到一个体验应用程序时,调用读取接口读取所述体验应用程序中的至少一个界面布局文件。
其中,所述体验应用程序包括界面布局文件和业务逻辑文件,所述界面布局文件描述了所述界面布局文件中触发事件与所述业务逻辑文件中动作的对应关系。
执行模块902,当接收到所述体验应用程序中一个待执行界面布局文件对应的触发事件时,根据所述待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作。即根据触发事件确定待执行界面布局文件。
执行接口调用模块903,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述待执行界面布局文件中的第一待填充数据。
体验界面展示模块904,根据所述第一待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述体验模块900进一步包括:第一文件确定模块,当读取所述体验应用程序中的至少一个界面布局文件之后,确定所述至少一个界面布局文件中的初始界面布局文件;初始界面展示模块,根据所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面;第二文件确定模块,当接收到当前展示界面对应的界面布局文件中的触发事件时,根据所述触发事件从所述至少一个界面布局文件中确定所述一个待执行界面布局文件;其中,所述一个待执行界面布局文件对应的所述触发事件包括接收到的当前展示界面对应的界面布局文件中的触发事件,所述一个待执行界面布局文件为当前展示界面对应的界面布局文件或者其它界面布局文件。
在一些实例中,所述体验模块900进一步包括:接收模块,接收所述应用客户端发送的接收到所述体验应用程序的消息,该消息携带所述体验应用程序的存储信息;其中,所述读取接口调用模块901,包括:查找单元,根据所述存储信息,查找到所述体验应用程序,获取所述体验应用程序中的至少一个界面布局文件;第一调用单元,将所述至少一个界面布局文件置为所述读取接口可读取的界面布局文件,调用所述读取接口读取所述至少一个界面布局文件。
在一些实例中,所述体验模块900进一步包括:读取模块,读取所述待执行界面布局文件中的待填充静态信息;获取模块,当根据所述待填充静态信息确定所述体验应用程序的配置文件中存在第二待填充数据时,从所述配置文件中获取所述第二待填充数据;其中,体验界面展示模块904,根据所述第一待填充数据和所述第二待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,当接收到所述体验应用程序的初始化触发事件之前,读取模块,读取所述体验应用程序中的所述至少一个界面布局文件并确定所述初始界面布局文件;其中,所述初始界面展示模块904,包括:接收单元,当确定出所述初始界面布局文件时,接收到所述初始界面布局文件对应的初始触发事件;执行单元,根据所述初始界面布局文件,执行所述业务逻辑文件中所述初始触发事件对应的动作;第二调用单元,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述初始界面布局文件中的第一待填充数据;展示单元,当接收到所述体验应用程序的初始化触发事件时,则根据所述初始界面布局文件中的所述第一待填充数据以及所述初始界面布局文件,展示所述初始界面布局文件对应的所述体验应用程序的初始界面。
在一些实例中,所述体验模块900进一步包括:事件确定模块,当读取所述体验应用程序中的至少一个界面布局文件之后,根据用户行为属性确定第一待执行界面布局文件并确定对应的触发事件;其中,执行模块902,根据所述第一待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作;执行接口调用模块,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第一待执行界面布局文件中的第一待填充数据;所述体验模块900进一步包括:第三文件确定模块,当通过当前展示界面接收到触发事件时,根据接收到的所述触发事件从所述至少一个界面布局文件中确定第二待执行界面布局文件;其中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件相同时,体验界面展示模块904,根据所述第一待执行界面布局文件中的所述第一待填充数据以及所述第一待执行界面布局文件,展示所述第一待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件不同时,执行模块902,则根据所述第二待执行界面布局文件,执行所述业务逻辑文件中接收到的所述触发事件对应的动作;执行接口调用模块903,根据所述业务逻辑文件,调用所述操作***提供的所述对应的动作对应的执行接口,以获取所述第二待执行界面布局文件中的第一待填充数据;体验界面展示模块904,根据所述第二待执行界面布局文件中的所述第一待填充数据以及所述第二待执行界面布局文件,展示所述第二待执行界面布局文件对应的所述体验应用程序的界面。
在一些实例中,所述体验模块900进一步包括:建立模块,建立所述业务逻辑文件与所述操作***之间的通信关联;其中,执行接口调用模块803,根据所述业务逻辑文件,通过所述通信关联,调用所述操作***提供的所述对应的动作对应的所述执行接口。
在一些实例中,执行接口调用模块903,调用所述操作***提供的对应的动作对应的执行接口从目标服务器拉取所述待执行界面布局文件中的所述第一待填充数据。
在一些实例中,执行接口调用模块903,调用所述操作***提供的对应的动作对应的执行接口从本地终端拉取所述待执行界面布局文件中的所述第一待填充数据。
在一些实例中,当检测到所述应用客户端不存在于网络环境中时,则体验界面展示模块904,在所展示的所述待展示界面布局文件对应的所述体验应用程序的界面中提供表示无法连接到网络的提示信息。
在一些实例中,所述装置800进一步包括:所述信息获取模块,当获取所述体验应用程序的存储信息时,从所述程序提供服务器102获取所述体验应用程序的验证信息;其中,当获取到所述体验应用程序时,如果所述验证信息与所述体验应用程序中的待验证信息相同时,其中,使展示模块,执行所述展示体验应用程序的试用界面的步骤。
在一些实例中,所述验证信息包括所述应用程序的资源标识以及所述体验应用程序的来源标识;其中,当获取到的所述资源标识与所述来源标识与所述体验应用程序中的待验证资源标识与待验证来源标识相同时,使展示模块,执行展示体验应用程序的试用界面的步骤。
在一些实例中,当所述验证信息与所述体验应用程序中的待验证信息不同时,则再次执行所述获取模块,获取所述体验应用程序直到所述获取所述体验应用程序的执行次数达到预定阈值。
在一些实例中,所述装置800进一步包括:接收模块,接收携带输入的搜索关键词的搜索指令;第一请求发送模块,响应于所述搜索指令,向所述程序提供服务器102发送搜索请求,所述搜索请求携带搜索关键词,以使所述程序提供服务器102根据所述搜索关键词查找到对应的应用程序及其对应的体验应用程序的存储信息和验证信息;其中,所述信息获取模块,接收所述程序提供服务器102响应于所述搜索请求而发送的所述体验应用程序的存储信息;其中,信息获取模块,进一步地,接收所述程序提供服务器102响应于所述搜索请求而发送的所述应用程序的信息和所述体验应用程序的验证信息;其中,当获取到所述体验应用程序,且所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述搜索指令,使所述展示模块,展示体验应用程序的试用界面的步骤。
在一些实例中,所述装置800进一步包括:第二请求发送模块,响应于接收到的查看指令,向所述程序提供服务器102发送查看请求,所述查看请求携带待查看应用程序标识,以使所述程序提供服务器102根据所述待查看应用程序标识查找对应应用程序及其对应的体验应用程序的存储信息和验证信息;其中,所述信息获取模块,接收所述程序提供服务器102响应于所述查看请求而发送的所述体验应用程序的存储信息;其中,信息获取模块,进一步地,接收所述程序提供服务器102响应于所述查看请求而发送的所述体验应用程序的验证信息以及所述应用程序的信息;其中,当获取到所述体验应用程序,且当所述验证信息与所述体验应用程序中的待验证信息相同时,响应于所述查看指令,执行所述展示模块,展示体验应用程序的试用界面的步骤。
此外,所述装置800还可以包括:提供模块,提供体验应用程序的上传入口;存储模块,当接收到所述体验应用程序时,将所述体验应用程序进行存储并生成存储地址,并匹配相应的体验模块,以便于所述体验应用程序被调用时,直接在体验模块当中体验到应用程序的各种功能。
基于方法1000,本申请的实例还提出了一种应用程序的处理装置,所述装置应用于服务器;如图12A所示,所述装置1200A包括:获取请求接收模块1201、获取模块1202和程序发送模块1203;且各个模块的功能具体如下:
获取请求接收模块1201,接收到第一应用客户端发送的获取请求,所述获取请求携带所述体验应用程序的第一存储地址。
获取模块1202,根据所述第一存储地址,获取所述体验应用程序。
程序发送模块1203,当所述体验应用程序通过检测,则响应于所述获取请求,将所述体验应用程序发送至上述第一应用客户端,以使所述体验应用程序在所述第一应用客户端的体验模块中运行。
在一些实例中,所述装置1200A进一步包括:提交请求接收模块,接收第二应用客户端发送的提交审核请求,所述提交审核请求携带所述体验应用程序;第一存储模块,将所述体验应用程序存储至待审核存储区域,并确定所述体验应用程序在所述待审核存储区域中的第二存储地址;地址发送模块,向所述第三应用客户端发送审核消息,所述审核消息携带所述第二存储地址,以使第三应用客户端对应的用户根据上述方法对所述体验应用程序进行审核;接收模块,接收所述第三应用客户端发送的审核结果,当审核结果表示为通过审核时,将所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序;其中,所述第一存储地址为所述体验应用程序存储在所述待下发存储区域中的地址。
在一些实例中,所述提交请求还携带第二应用客户端对应的用户标识;所述装置1200A进一步包括:第二存储模块,当所述用户标识存在于预置免审核名单中,则直接将接收到的所述体验应用程序存储至待下发存储区域,以使所述第一应用客户端获取所述体验应用程序。
基于方法1100,本申请的实例还提出了一种应用程序的处理装置,所述装置可以应用于***100;如图12B所示,所述装置1200B包括:提供模块1204以及存储模块1205;且各个模块的功能具体如下:
提供模块1204,提供体验应用程序的上传入口。
存储模块1205,当接收到所述体验应用程序时,将所述体验应用程序进行存储并生成存储地址,并匹配相应的体验模块,以便于所述体验应用程序被调用时,直接在体验模块当中体验到应用程序的各种功能。
需要说明的是,该提供模块1204可以设置在程序提供服务器102中,该存储模块1205可以设置在终端设备101的客户端中。
图13示出了处理装置800、处理装置1200A或处理装置1200B所在的计算设备1300的组成结构图。此计算设备1300可以是服务器。如图13所示,该计算设备包括一个或者多个处理器(CPU)1302、通信模块1304、存储器1306、用户接口1310,以及用于互联这些组件的通信总线1308。
处理器1302可通过通信模块1304接收和发送数据以实现网络通信和/或本地通信。
用户接口1310包括一个或多个输出设备1312,其包括一个或多个扬声器和/或一个或多个可视化显示器。用户接口1310也包括一个或多个输入设备1314,其包括诸如,键盘,鼠标,声音命令输入单元或扩音器,触屏显示器,触敏输入板,姿势捕获摄像机或其他输入按钮或控件等。
存储器1306可以是高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、或其他随机存取固态存储设备;或者非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备,或其他非易失性固态存储设备。
存储器1306存储处理器1302可执行的指令集,包括:
操作***1316,包括用于处理各种基本***服务和用于执行硬件相关任务的程序;
应用1318,包括用于视频播放的各种应用程序,这种应用程序能够实现上述各实例中的处理流程,比如可以包括图8所示的处理装置800中的部分或全部模块,各模块801-804中的至少一个模块可以存储有机器可执行指令,处理器1302通过执行存储器1306中各模块801-802中至少一个模块中的机器可执行指令,进而能够实现上述各模块801-802中的至少一个模块的功能。
比如也可以包括图12A所示的处理装置1200A中的部分或全部模块,各模块1201-1203中的至少一个模块可以存储有机器可执行指令,处理器1302通过执行存储器1306中各模块1201-1203中至少一个模块中的机器可执行指令,进而能够实现上述各模块1201-1203中的至少一个模块的功能。
比如也可以包括图12B所示的处理装置1200B中的部分或全部模块,各模块1204-1205中的至少一个模块可以存储有机器可执行指令,处理器1302通过执行存储器1306中各模块1204-1205中至少一个模块中的机器可执行指令,进而能够实现上述各模块1204-1205中的至少一个模块的功能。
需要说明的是,上述各流程和各结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。各模块的划分仅仅是为了便于描述采用的功能上的划分,实际实现时,一个模块可以分由多个模块实现,多个模块的功能也可以由同一个模块实现,这些模块可以位于同一个设备中,也可以位于不同的设备中。
各实施例中的硬件模块可以以硬件方式或硬件平台加软件的方式实现。上述软件包括机器可读指令,存储在非易失性存储介质中。因此,各实施例也可以体现为软件产品。
各例中,硬件可以由专门的硬件或执行机器可读指令的硬件实现。例如,硬件可以为专门设计的永久性电路或逻辑器件(如专用处理器,如FPGA或ASIC)用于完成特定的操作。硬件也可以包括由软件临时配置的可编程逻辑器件或电路(如包括通用处理器或其它可编程处理器)用于执行特定操作。
另外,本申请的每个实例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本申请。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和或内存)中执行。因此,这样的存储介质也构成了本申请,本申请还提供了一种非易失性存储介质,其中存储有数据处理程序,这种数据处理程序可用于执行本申请上述方法实例中的任何一种实例。
图8、图12A或图12B中的模块对应的机器可读指令可以使计算机上操作的操作***等来完成这里描述的部分或者全部操作。非易失性计算机可读存储介质可以是***计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器。安装在扩展板或者扩展单元上的CPU等可以根据指令执行部分和全部实际操作。
另外,在本申请各个实例中的装置及各模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上装置或模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (17)
1.一种应用程序的处理方法,其特征在于,所述方法应用于客户端;所述方法包括:
从程序提供服务器获取体验应用程序,将所述体验应用程序存储至所述客户端的缓存区域中;
向所述客户端中的体验模块发送接收到所述体验应用程序的消息,所述消息携带所述体验应用程序在所述缓存区域中的缓存地址,使得所述体验模块根据所述缓存地址,访问所述缓存区域中的所述体验应用程序;
展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息;
响应于对所述控件的操作指令,使得所述体验模块运行所述体验应用程序。
2.根据权利要求1所述的方法,其特征在于,所述从程序提供服务器获取体验应用程序包括:
从所述程序提供服务器获取所述体验应用程序的存储信息;
根据所述存储信息,获取所述体验应用程序。
3.根据权利要求1所述的方法,其特征在于,所述体验应用程序包括至少一个界面布局文件,所述方法进一步包括:
所述体验模块调用读取接口读取所述至少一个界面布局文件,确定所述至少一个界面布局文件中的初始界面布局文件;
根据所述初始界面布局文件,展示所述初始界面布局文件对应的初始界面。
4.根据权利要求3所述的方法,其特征在于,在调用读取接口读取所述至少一个界面布局文件之前,所述方法进一步包括:
将所述至少一个界面布局文件置为所述读取接口可读取的界面布局文件。
5.根据权利要求3所述的方法,其特征在于,所述体验应用程序进一步包括业务逻辑文件,所述方法进一步包括:
当接收到所述体验应用程序中待执行界面布局文件对应的触发事件时,所述体验模块根据所述待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作;
根据所述业务逻辑文件,调用操作***提供的所述动作对应的执行接口,获取所述初始界面布局文件中的第一待填充数据;
根据所述初始界面布局文件中的第一待填充数据以及所述待执行界面布局文件,展示所述待执行界面布局文件对应的界面。
6.根据权利要求3所述的方法,其特征在于,所述体验应用程序进一步包括业务逻辑文件,所述根据所述初始界面布局文件,展示所述初始界面布局文件对应的初始界面,包括:
当确定出所述初始界面布局文件时,所述体验模块接收到所述初始界面布局文件对应的初始触发事件;
根据所述初始界面布局文件,执行所述业务逻辑文件中所述初始触发事件对应的动作;
根据所述业务逻辑文件,调用操作***提供的所述动作对应的执行接口,获取所述初始界面布局文件中的第一待填充数据;及
当接收到所述体验应用程序的初始化触发事件时,则根据所述初始界面布局文件中的第一待填充数据以及所述初始界面布局文件,展示所述初始界面。
7.根据权利要求3所述的方法,其特征在于,所述体验应用程序进一步包括业务逻辑文件,所述方法进一步包括:
当读取所述至少一个界面布局文件之后,所述体验模块根据用户行为属性,确定第一待执行界面布局文件并确定对应的触发事件;
其中,根据所述第一待执行界面布局文件,执行所述业务逻辑文件中所述触发事件对应的动作;根据所述业务逻辑文件,调用操作***提供的所述动作对应的执行接口,获取所述第一待执行界面布局文件中的第一待填充数据;
其中,所述方法进一步包括:当通过当前展示界面接收到触发事件时,所述体验模块根据接收到的触发事件,从所述至少一个界面布局文件中确定第二待执行界面布局文件;
其中,当所述第一待执行界面布局文件和所述第二待执行界面布局文件相同时,根据所述第一待执行界面布局文件中的第一待填充数据以及所述第一待执行界面布局文件,展示所述第一待执行界面布局文件对应的界面。
8.根据权利要求7所述的方法,其特征在于,当所述第一待执行界面布局文件和所述第二待执行界面布局文件不同时,所述方法进一步包括:
所述体验模块根据所述第二待执行界面布局文件,执行所述业务逻辑文件中接收到的触发事件对应的动作;根据所述业务逻辑文件,调用操作***提供的动作对应的执行接口,获取所述第二待执行界面布局文件中的第一待填充数据;根据所述第二待执行界面布局文件中的第一待填充数据以及所述第二待执行界面布局文件,展示所述第二待执行界面布局文件对应的界面。
9.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
当获取所述体验应用程序的存储信息时,从所述程序提供服务器获取所述体验应用程序的验证信息;
如果所述验证信息与所述体验应用程序中的待验证信息相同时,则执行所述展示体验应用程序的试用界面的步骤。
10.根据权利要求9所述的方法,其特征在于,所述验证信息包括所述体验应用程序的资源标识以及所述体验应用程序的来源标识;
其中,当获取到的所述资源标识与所述来源标识分别与所述体验应用程序中的待验证资源标识与待验证来源标识相同时,执行所述展示体验应用程序的试用界面的步骤。
11.根据权利要求9所述的方法,其特征在于,当所述验证信息与所述体验应用程序中的待验证信息不同时,则再次执行所述获取所述体验应用程序的步骤,直到所述获取所述体验应用程序的步骤的执行次数达到预定阈值。
12.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
接收搜索指令;
响应于所述搜索指令,向所述程序提供服务器发送搜索请求,所述搜索请求携带搜索关键词,以使所述程序提供服务器根据所述搜索关键词,查找到对应的应用程序及其对应的体验应用程序的存储信息和验证信息;
其中,所述从所述程序提供服务器获取所述体验应用程序的存储信息,包括:
接收所述程序提供服务器响应于所述搜索请求而发送的所述体验应用程序的存储信息。
13.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
响应于接收到的查看指令,向所述程序提供服务器发送查看请求,所述查看请求携带待查看应用程序标识,以使所述程序提供服务器根据所述待查看应用程序标识,查找对应的应用程序及其对应的体验应用程序的存储信息和验证信息;
其中,所述从所述程序提供服务器获取所述体验应用程序的存储信息,包括:
接收所述程序提供服务器响应于所述查看请求而发送的所述体验应用程序的存储信息。
14.一种应用程序的处理方法,其特征在于,所述方法应用于服务器;所述方法包括:
接收到客户端发送的获取请求,所述获取请求携带体验应用程序的第一存储地址;
根据所述第一存储地址,获取所述体验应用程序;及
若所述体验应用程序通过检测,则响应于所述获取请求,将所述体验应用程序发送至所述客户端,以使所述客户端将所述体验应用程序存储至所述客户端的缓存区域中;向所述客户端中的体验模块发送接收到所述体验应用程序的消息,所述消息携带所述体验应用程序在所述缓存区域中的缓存地址,使得所述体验模块根据所述缓存地址,访问所述缓存区域中的所述体验应用程序;展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息;响应于对所述控件的操作指令,使得所述体验模块运行所述体验应用程序。
15.一种应用程序的处理装置,其特征在于,所述装置应用于客户端;所述装置包括:
展示模块,从程序提供服务器获取体验应用程序,将所述体验应用程序存储至所述客户端的缓存区域中;向所述客户端中的体验模块发送接收到所述体验应用程序的消息,所述消息携带所述体验应用程序在所述缓存区域中的缓存地址,使得所述体验模块根据所述缓存地址,访问所述缓存区域中的所述体验应用程序;展示体验应用程序的试用界面,所述试用界面包括所述体验应用程序的控件和所述体验应用程序对应的应用程序的描述信息;
响应模块,响应于对所述控件的操作指令,使得所述体验模块运行所述体验应用程序。
16.一种计算设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如权利要求1至13中任一项所述的方法。
17.一种计算机可读存储介质,其特征在于,存储有计算机可读指令,所述计算机可读指令被至少一个处理器执行时,实现如权利要求1至13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810414882.4A CN110442407B (zh) | 2018-05-03 | 2018-05-03 | 应用程序的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810414882.4A CN110442407B (zh) | 2018-05-03 | 2018-05-03 | 应用程序的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110442407A CN110442407A (zh) | 2019-11-12 |
CN110442407B true CN110442407B (zh) | 2021-11-26 |
Family
ID=68427462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810414882.4A Active CN110442407B (zh) | 2018-05-03 | 2018-05-03 | 应用程序的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442407B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111479144A (zh) * | 2020-04-03 | 2020-07-31 | 青岛海信传媒网络技术有限公司 | 显示设备及应用交互方法 |
CN112015993B (zh) * | 2020-09-01 | 2023-12-08 | 中国银行股份有限公司 | 一种信息查询方法及装置 |
CN113190227A (zh) * | 2021-05-08 | 2021-07-30 | 北京百度网讯科技有限公司 | 应用程序的发布、处理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461623A (zh) * | 2014-12-01 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | 应用程序的运行方法和装置 |
CN106649697A (zh) * | 2016-12-19 | 2017-05-10 | 蒋子轩 | 一种软件在线交互体验方法 |
CN107589944A (zh) * | 2017-08-23 | 2018-01-16 | 广州视源电子科技股份有限公司 | 人机交互接口的建立方法、装置及计算机设备、存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6001844B2 (ja) * | 2011-11-15 | 2016-10-05 | 任天堂株式会社 | 情報処理装置、情報処理システム、情報処理方法およびプログラム |
US20170024086A1 (en) * | 2015-06-23 | 2017-01-26 | Jamdeo Canada Ltd. | System and methods for detection and handling of focus elements |
CN107911418B (zh) * | 2017-10-27 | 2020-09-25 | 努比亚技术有限公司 | 一种应用试用控制方法、服务器及计算机可读存储介质 |
-
2018
- 2018-05-03 CN CN201810414882.4A patent/CN110442407B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461623A (zh) * | 2014-12-01 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | 应用程序的运行方法和装置 |
CN106649697A (zh) * | 2016-12-19 | 2017-05-10 | 蒋子轩 | 一种软件在线交互体验方法 |
CN107589944A (zh) * | 2017-08-23 | 2018-01-16 | 广州视源电子科技股份有限公司 | 人机交互接口的建立方法、装置及计算机设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110442407A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111026396B (zh) | 页面渲染方法、装置、电子设备及存储介质 | |
CN109165050B (zh) | 程序的运行方法、装置、计算设备以及存储介质 | |
CN110874217B (zh) | 快应用的界面显示方法、装置及存储介质 | |
CN110990075B (zh) | 快应用的启动方法、装置、设备及存储介质 | |
CN110990105B (zh) | 界面显示方法、装置、电子设备及存储介质 | |
US20120284696A1 (en) | Method, Apparatuses and a System for Compilation | |
CN111026490B (zh) | 页面渲染方法、装置、电子设备及存储介质 | |
CN110442407B (zh) | 应用程序的处理方法及装置 | |
CN110457038B (zh) | 附属应用端的卡片显示方法、装置、设备以及存储介质 | |
CN111427622B (zh) | 应用程序中脚本代码的执行方法及装置 | |
CN113784049B (zh) | 安卓***虚拟机的摄像头调用方法、电子设备和存储介质 | |
CN111078325B (zh) | 应用程序运行方法、装置、电子设备及存储介质 | |
CN112486459A (zh) | 活动页面生成方法、装置、计算机设备和可读存储介质 | |
CN110851240B (zh) | 功能调用方法、装置及存储介质 | |
CN108509228B (zh) | 加载页面的方法、终端设备及计算机可读存储介质 | |
CN111008050B (zh) | 页面任务执行方法、装置、终端及存储介质 | |
US11507633B2 (en) | Card data display method and apparatus, and storage medium | |
CN112100613A (zh) | 一种应用登录控制方法、装置、电子设备和存储介质 | |
CN113296740A (zh) | 一种服务对象的处理方法、装置、设备和机器可读介质 | |
CN110865864A (zh) | 快应用的界面显示方法、装置、设备及存储介质 | |
CN111104183B (zh) | 应用程序运行方法、装置、电子设备及存储介质 | |
CN115237481A (zh) | 驱动外接设备的方法、装置、设备及存储介质 | |
CN111338961B (zh) | 应用调试方法及装置、电子设备及存储介质 | |
CN110858238A (zh) | 一种数据处理的方法和装置 | |
CN114968627A (zh) | 一种***异常检测方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |