应用的运行方法、装置、服务器及计算机可读存储介质转让专利

申请号 : CN202011125515.6

文献号 : CN112272223B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 唐永警刘垣渝林琛

申请人 : 深圳思为科技有限公司

摘要 :

本申请提供了一种应用的运行方法、装置、服务器以及计算机可读存储介质,用于在保证为用户正常提供应用功能的同时,显著减少应用对于UE系统资源的占用。本申请提供的一种应用的运行方法,包括:服务器接收第一UE发起的应用操作请求,其中,应用操作请求是在用户操作的触发下发起的,应用操作请求用于请求对指定应用进行目标操作行为;服务器根据接收到的应用操作请求,运行指定应用,以使得指定应用进行目标操作行为;服务器提取指定应用进行目标操作行为时的应用界面数据;服务器将应用界面数据下发至多个第二UE,以使得多个第二UE根据应用界面数据向用户输出对应的应用界面,其中,多个第二UE中包括第一UE。

权利要求 :

1.一种应用的运行方法,其特征在于,所述方法包括:

服务器接收第一用户设备UE发起的应用操作请求,其中,所述应用操作请求是在用户操作的触发下发起的,所述应用操作请求用于请求对指定应用进行目标操作行为;

所述服务器根据接收到的所述应用操作请求,运行所述指定应用,以使得所述指定应用进行所述目标操作行为;

所述服务器提取所述指定应用进行所述目标操作行为时的应用界面数据;

所述服务器将所述应用界面数据下发至多个第二UE,以使得多个所述第二UE根据所述应用界面数据向用户输出对应的应用界面,其中,多个所述第二UE中包括所述第一UE;

所述服务器分别为每个所述第二UE或者多个所述第二UE组成的任意UE组合,运行一一对应的所述指定应用或者运行一一对应的所述指定应用的组件;

所述服务器分别为每个所述指定应用或者运行一一对应的所述指定应用的组件,配置一一对应的堆栈,其中,所述堆栈配置有与对应的所述指定应用之间进行通信的第一通信端口,所述堆栈还配置有与对应的每个所述第二UE进行通信的第二通信端口,其中,不同的堆栈,通过同一个Web服务器、STUN服务器或者Turn服务器与不同的UE进行通信连接,或者通过不同的Web服务器、STUN服务器或者Turn服务器与不同的UE进行通信连接。

2.根据权利要求1所述的方法,其特征在于,所述服务器将所述应用界面数据下发至多个第二UE之前,所述方法还包括:所述服务器与运行在每个所述第二UE上的Web浏览器之间,分别建立通信连接,以根据所述通信连接分别与每个所述第二UE进行通信;

所述服务器将所述应用界面数据下发至多个第二UE包括:

所述服务器根据与每个所述第二UE之间分别建立的所述通信连接,将所述应用界面数据下发至每个所述第二UE。

3.根据权利要求2所述的方法,其特征在于,所述服务器与运行在每个所述第二UE上的Web浏览器之间,分别建立通信连接包括:所述服务器接收每个所述第二UE发起的通信连接请求,其中,所述通信连接请求携带所述第二UE的通信地址,所述通信连接请求是由所述第二UE通过局域网的配置信息或者通过二维码确定所述服务器的通信地址后发起的;

所述服务器根据所述通信连接请求,与运行在每个所述第二UE上的Web浏览器之间,分别建立通信连接;

或者,所述服务器根据所述局域网的配置信息中的每个所述第二UE的通信地址,与运行在每个所述第二UE上的Web浏览器之间,分别建立通信连接。

4.根据权利要求1所述的方法,其特征在于,所述服务器根据接收到的所述应用操作请求,运行所述指定应用之前,所述方法还包括:所述服务器提取所述应用操作请求携带的所述第一UE的权限标识;

所述服务器根据所述权限标识所标识的权限内容,判断所述第一UE是否具有指定所述指定应用进行所述目标操作行为的权限;

若是,则触发所述服务器根据接收到的所述应用操作请求,运行所述指定应用。

5.根据权利要求1所述的方法,其特征在于,所述应用界面数据包括所述指定应用在渲染应用界面时的帧像素数据以及音频数据。

6.根据权利要求1所述的方法,其特征在于,所述指定应用为看房应用,所述看房应用用于以2D图像展示形式、3D图像展示形式或者全景图像展示形式的图像展示形式展示楼盘,所述应用界面数据用于展示所述看房应用在所述2D图像展示形式、所述3D图像展示形式或者所述全景图像展示形式下的应用界面。

7.一种应用的运行装置,其特征在于,所述装置包括:

收发单元,用于接收第一用户设备UE发起的应用操作请求,其中,所述应用操作请求是在用户操作的触发下发起的,所述应用操作请求用于请求对指定应用进行目标操作行为;

处理单元,用于根据接收到的所述应用操作请求,运行所述指定应用,以使得所述指定应用进行所述目标操作行为;提取所述指定应用进行所述目标操作行为时的应用界面数据;

所述收发单元,还用于将所述应用界面数据下发至多个第二UE,以使得多个所述第二UE根据所述应用界面数据向用户输出对应的应用界面,其中,多个所述第二UE中包括所述第一UE;服务器分别为每个所述第二UE或者多个所述第二UE组成的任意UE组合,运行一一对应的所述指定应用或者运行一一对应的所述指定应用的组件;

所述服务器分别为每个所述指定应用或者运行一一对应的所述指定应用的组件,配置一一对应的堆栈,其中,所述堆栈配置有与对应的所述指定应用之间进行通信的第一通信端口,所述堆栈还配置有与对应的每个所述第二UE进行通信的第二通信端口,其中,不同的堆栈,通过同一个Web服务器、STUN服务器或者Turn服务器与不同的UE进行通信连接,或者通过不同的Web服务器、STUN服务器或者Turn服务器与不同的UE进行通信连接。

8.一种服务器,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行如权利要求1至6任一项所述的方法。

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至6任一项所述的方法。

说明书 :

应用的运行方法、装置、服务器及计算机可读存储介质

技术领域

[0001] 本申请涉及软件领域,具体涉及应用的运行方法、装置、服务器及计算机可读存储介质。

背景技术

[0002] 在用户体验不断提升的情况下,用户设备(User Equipment,UE)上的各类应用的应用大小越来越大,尤其在如今用户对界面的高画面质量要求下,应用在UE上所需占用的内存、缓存越来越大,巨大的数据处理量对于UE的硬件条件以及软件系统,带来不小的负担,例如可能出现流畅度下降、画面质量下降或者丢包的情况。
[0003] 在现有的相关技术中,UE设备厂商通常通过提升UE的硬件条件,例如提升中央处理器(Central Processing Unit,CPU)、显示屏、存储容量等,以在硬件层面直接提升UE的系统资源;而在软件层面,UE设备厂商以及应用开发商则可不断优化应用的加载项、所需占用内存等,减少对UE系统资源的占用。
[0004] 而在现有的相关技术的研究过程中,发明人发现,如上述介绍的两种UE性能提升方式,尽管可有效提升UE性能、稳定运行各类应用,但是对于用户、UE设备厂商以及应用开发商来说,却也意味着需要不小的提升成本,显然,现有的UE性能提升方式,存在成本过高的问题。

发明内容

[0005] 本申请提供了一种应用的运行方法、装置、服务器以及计算机可读存储介质,用于在保证为用户正常提供应用功能的同时,显著减少应用对于UE系统资源的占用。
[0006] 第一方面,本申请提供了一种应用的运行方法,方法包括:
[0007] 服务器接收第一UE发起的应用操作请求,其中,应用操作请求是在用户操作的触发下发起的,应用操作请求用于请求对指定应用进行目标操作行为;
[0008] 服务器根据接收到的应用操作请求,运行指定应用,以使得指定应用进行目标操作行为;
[0009] 服务器提取指定应用进行目标操作行为时的应用界面数据;
[0010] 服务器将应用界面数据下发至多个第二UE,以使得多个第二UE根据应用界面数据向用户输出对应的应用界面,其中,多个第二UE中包括第一UE。
[0011] 结合本申请第一方面,在本申请第一方面第一种可能的实现方式中,服务器将应用界面数据下发至多个第二UE之前,方法还包括:
[0012] 服务器与运行在每个第二UE上的Web浏览器之间,分别建立通信连接,以根据通信连接分别与每个第二UE进行通信;
[0013] 服务器将应用界面数据下发至多个第二UE包括:
[0014] 服务器根据与每个第二UE之间分别建立的通信连接,将应用界面数据下发至每个第二UE。
[0015] 结合本申请第一方面第一种可能的实现方式,在本申请第一方面第二种可能的实现方式中,服务器与运行在每个第二UE上的Web浏览器之间,分别建立通信连接包括:
[0016] 服务器接收每个第二UE发起的通信连接请求,其中,通信连接请求携带第二UE的通信地址,通信连接请求是由第二UE通过局域网的配置信息或者通过二维码确定服务器的通信地址后发起的;
[0017] 服务器根据通信连接请求,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接;
[0018] 或者,服务器根据局域网的配置信息中的每个第二UE的通信地址,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接。
[0019] 结合本申请第一方面,在本申请第一方面第三种可能的实现方式中,方法还包括:
[0020] 服务器分别为每个第二UE或者多个第二UE组成的任意UE组合,运行一一对应的指定应用或者运行一一对应的指定应用的组件;
[0021] 服务器分别为每个指定应用或者运行一一对应的指定应用的组件,配置一一对应的堆栈,其中,堆栈配置有与对应的指定应用之间进行通信的第一通信端口,堆栈还配置有与对应的每个第二UE进行通信的第二通信端口。
[0022] 结合本申请第一方面,在本申请第一方面第四种可能的实现方式中,服务器根据接收到的应用操作请求,运行指定应用之前,方法还包括:
[0023] 服务器提取应用操作请求携带的第一UE的权限标识;
[0024] 服务器根据权限标识所标识的权限内容,判断第一UE是否具有指定指定应用进行目标操作行为的权限;
[0025] 若是,则触发服务器根据接收到的应用操作请求,运行指定应用。
[0026] 结合本申请第一方面,在本申请第一方面第五种可能的实现方式中,应用界面数据包括指定应用在渲染应用界面时的帧像素数据以及音频数据。
[0027] 结合本申请第一方面,在本申请第一方面第六种可能的实现方式中,指定应用为看房应用,看房应用用于以2D图像展示形式、3D图像展示形式或者全景图像展示形式的图像展示形式展示楼盘,应用界面数据用于展示看房应用在2D图像展示形式、3D图像展示形式或者全景图像展示形式下的应用界面。
[0028] 第二方面,本申请提供了一种应用的运行装置,装置包括:
[0029] 收发单元,用于接收第一UE发起的应用操作请求,其中,应用操作请求是在用户操作的触发下发起的,应用操作请求用于请求对指定应用进行目标操作行为;
[0030] 处理单元,用于根据接收到的应用操作请求,运行指定应用,以使得指定应用进行目标操作行为;提取指定应用进行目标操作行为时的应用界面数据;
[0031] 收发单元,还用于将应用界面数据下发至多个第二UE,以使得多个第二UE根据应用界面数据向用户输出对应的应用界面,其中,多个第二UE中包括第一UE。
[0032] 结合本申请第二方面,在本申请第二方面第一种可能的实现方式中,处理单元,还用于:
[0033] 与运行在每个第二UE上的Web浏览器之间,分别建立通信连接,以根据通信连接分别与每个第二UE进行通信;
[0034] 将应用界面数据下发至多个第二UE包括:
[0035] 根据与每个第二UE之间分别建立的通信连接,将应用界面数据下发至每个第二UE。
[0036] 结合本申请第二方面第一种可能的实现方式,在本申请第二方面第二种可能的实现方式中,处理单元,具体用于:
[0037] 接收每个第二UE发起的通信连接请求,其中,通信连接请求携带第二UE的通信地址,通信连接请求是由第二UE通过局域网的配置信息或者通过二维码确定服务器的通信地址后发起的;
[0038] 根据通信连接请求,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接;
[0039] 或者,根据局域网的配置信息中的每个第二UE的通信地址,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接。
[0040] 结合本申请第二方面,在本申请第二方面第三种可能的实现方式中,处理单元,还用于:
[0041] 分别为每个第二UE或者多个第二UE组成的任意UE组合,运行一一对应的指定应用或者运行一一对应的指定应用的组件;
[0042] 分别为每个指定应用或者运行一一对应的指定应用的组件,配置一一对应的堆栈,其中,堆栈配置有与对应的指定应用之间进行通信的第一通信端口,堆栈还配置有与对应的每个第二UE进行通信的第二通信端口。
[0043] 结合本申请第二方面,在本申请第二方面第四种可能的实现方式中,处理单元,还用于:
[0044] 提取应用操作请求携带的第一UE的权限标识;
[0045] 根据权限标识所标识的权限内容,判断第一UE是否具有指定指定应用进行目标操作行为的权限;
[0046] 若是,则触发根据接收到的应用操作请求,运行指定应用。
[0047] 结合本申请第二方面,在本申请第二方面第五种可能的实现方式中,应用界面数据包括指定应用在渲染应用界面时的帧像素数据以及音频数据。
[0048] 结合本申请第二方面,在本申请第二方面第六种可能的实现方式中,指定应用为看房应用,看房应用用于以2D图像展示形式、3D图像展示形式或者全景图像展示形式的图像展示形式展示楼盘,应用界面数据用于展示看房应用在2D图像展示形式、3D图像展示形式或者全景图像展示形式下的应用界面。
[0049] 第三方面,本申请还提供了一种服务器,包括处理器和存储器,存储器中存储有计算机程序,处理器调用存储器中的计算机程序时执行本申请第一方面或者第一方面任一种可能的实现方式所提供的方法。
[0050] 第四方面,本申请还提供了一种计算机可读存储介质,计算机可读存储介质存储有多条指令,指令适于处理器进行加载,以执行本申请第一方面或者第一方面任一种可能的实现方式所提供的方法。
[0051] 从以上内容可得出,本申请具有以下的有益效果:
[0052] 在运行应用方面,本申请搭建了由服务器运行应用、由UE提供人机交互的应用运行机制,在一次用户操作的触发下,第一UE向服务器发起应用操作请求,请求对指定应用进行目标操作行为,服务器根据该应用操作请求,运行该指定应用,以使得该指定应用进行该目标操作行为,服务器再将该指定应用进行该目标操作行为时的应用界面数据提取并下发至多个第二UE,该第二UE包括第一UE,如此第二UE可根据该应用界面数据向用户输出对应的应用界面,完成该指定应用对于用户操作的一次响应。
[0053] 在这过程中,本申请的应用运行机制将应用的运行托管至服务器,服务器再将应用界面同步到UE处进行输出,一方面,对于用户的感知而言,保证了该指定应用的正常运行,该指定应用可以为用户提供正常的应用功能;另一方面由于UE负责将服务器下发的应用界面数据进行输出、提供人机交互功能,如此显著减少了该指定应用对于UE系统资源的占用,可在较低的UE系统资源的情况下实现该指定应用的正常运行,不仅减少了对UE系统资源的要求,且还可进一步扩大了该指定应用的应用范围,可更为灵活地应用于本身系统资源较低的UE;又一方面,应用界面的同步,不仅可同步至发起用户操作请求的第一UE,还可进一步地同步至包括该第一UE的第二UE,如此可实现多端投屏、多端触控的应用场景,提供高质量、高协同的应用环境。

附图说明

[0054] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0055] 图1为本申请应用的运行方法的一种场景示意图;
[0056] 图2为本申请应用的运行方法的一种流程示意图;
[0057] 图3为本申请配置通信连接的一种场景示意图;
[0058] 图4为本申请应用的运行方法的又一种场景示意图;
[0059] 图5为本申请应用的运行方法的又一种场景示意图;
[0060] 图6为本申请应用的运行装置的一种结构示意图;
[0061] 图7为本申请服务器的一种结构示意图。

具体实施方式

[0062] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0063] 在以下的说明中,本申请的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本申请原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
[0064] 本申请的原理使用许多其它泛用性或特定目的运算、通信环境或组态来进行操作。所熟知的适合用于本申请的运算系统、环境与组态的范例可包括(但不限于)手持电话、个人计算机、服务器、多处理器系统、微电脑为主的系统、主架构型计算机、及分布式运算环境,其中包括了任何的上述系统或装置。
[0065] 本申请中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。
[0066] 首先,在介绍本申请之前,先介绍下本申请关于应用背景的相关内容。
[0067] 本申请提供的应用的运行方法、装置以及计算机可读存储介质,可应用于服务器上,用于在保证为用户正常提供应用功能的同时,显著减少应用对于UE系统资源的占用。
[0068] 本申请提及的应用的运行方法,其执行主体可以为应用的运行装置,或者集成了该装置的服务器,其中,应用的运行装置可以采用硬件或者软件的方式实现,其中,服务器具体还可以为服务器集群的形式存在。
[0069] 参阅图1示出的本申请应用的运行方法的一种场景示意图,在第一UE101侧,用户可通过人机交互,使得第一UE向服务器102发起指定应用对应的应用操作请求,服务器根据该应用操作请求的触发,运行该指定应用进行对应的目标操作行为,再将该指定应用进行该目标操作行为时的应用界面数据下发至包括第一UE101的第二UE103,如此第二UE102包括的多个UE可同步输出该指定应用进行该目标操作行为时的应用界面。
[0070] 以全景看房的应用场景为例,工作人员可在售楼终端(第一UE)侧发起目标楼盘的全景看房请求,服务器接收到该全景看房请求后,可运行楼盘应用,加载目标楼盘的全景图像,并将全景图像在应用界面中的显示内容提取出应用界面数据,并下发至看房终端(第二UE,包括第一UE)进行应用界面的输出,如此在工作人员的介绍下,多个客户可分别在不同的看房终端处以全景浏览的方式查看目标楼盘,享受高质量的全景看房服务。
[0071] 在该看房场景下,一方面可以降低数字化营销成本,实现线上售楼处和线下楼盘展示内容一次性完成,另一方面,客户在线上和线下看到的内容是统一的,方便线上引流的客户到达线下看房时,对于楼盘的沟通与理解。
[0072] 其中,在本申请中,所提及的UE,具体可以为智能手机、平板电脑、笔记本电脑、掌上电脑、台式电脑或者个人数字助理(Personal Digital Assistant,PDA)等终端设备,UE可具有人机交互能力。
[0073] 下面,在图1所示应用场景的基础上,参阅图2示出了本申请应用的运行方法的一种流程示意图,如图2示出的,本申请应用的运行方法,具体可包括如下步骤:
[0074] 步骤S201,服务器接收第一UE发起的应用操作请求,其中,应用操作请求是在用户操作的触发下发起的,应用操作请求用于请求对指定应用进行目标操作行为;
[0075] 步骤S202,服务器根据接收到的应用操作请求,运行指定应用,以使得指定应用进行目标操作行为;
[0076] 步骤S203,服务器提取指定应用进行目标操作行为时的应用界面数据;
[0077] 步骤S204,服务器将应用界面数据下发至多个第二UE,以使得多个第二UE根据应用界面数据向用户输出对应的应用界面,其中,多个第二UE中包括第一UE。
[0078] 从图2所示实施例可看出,在运行应用方面,本申请搭建了由服务器运行应用、由UE提供人机交互的应用运行机制,在一次用户操作的触发下,第一UE向服务器发起应用操作请求,请求对指定应用进行目标操作行为,服务器根据该应用操作请求,运行该指定应用,以使得该指定应用进行该目标操作行为,服务器再将该指定应用进行该目标操作行为时的应用界面数据提取并下发至多个第二UE,该第二UE包括第一UE,如此第二UE可根据该应用界面数据向用户输出对应的应用界面,完成该指定应用对于用户操作的一次响应。
[0079] 在这过程中,本申请的应用运行机制将应用的运行托管至服务器,服务器再将应用界面同步到UE处进行输出,一方面,对于用户的感知而言,保证了该指定应用的正常运行,该指定应用可以为用户提供正常的应用功能;另一方面由于UE负责将服务器下发的应用界面数据进行输出、提供人机交互功能,如此显著减少了该指定应用对于UE系统资源的占用,可在较低的UE系统资源的情况下实现该指定应用的正常运行,不仅减少了对UE系统资源的要求,且还可进一步扩大了该指定应用的应用范围,可更为灵活地应用于本身系统资源较低的UE;又一方面,应用界面的同步,不仅可同步至发起用户操作请求的第一UE,还可进一步地同步至包括该第一UE的第二UE,如此可实现多端投屏、多端触控的应用场景,提供高质量、高协同的应用环境。
[0080] 下面,则开始对图2所示实施例中的各个步骤及其在实际应用中可能的实现方式进行详细介绍。
[0081] 在本申请中,当第一UE未接收到服务器下发的应用界面数据,即未显示指定应用的应用界面时,用户可通过触摸操作、语音输入、按键输入等输入方式,向第一UE输入相应的用户操作,以触发发起相应的应用操作请求。
[0082] 示例性的,用户可在第一UE的触摸屏显示的界面中,通过滑动操作打开包含特定的全景看房应用(Application,APP)的桌面窗口,在该窗口中通过点击操作启动该全景看房APP,第一UE接收到该点击操作后,则可向服务器发起该全景看房APP的启动操作,服务器则可在本地开始运行该全景看房APP,再提取该全景看房APP启动后的应用界面所对应的应用界面数据,并下发至包括第一UE的第二UE,如此在第二UE间同步该全景看房APP的应用界面。
[0083] 又或者,也可当第一UE接收到服务器下发的应用界面数据,输出指定应用的应用界面时,用户可通过触摸操作、语音输入、按键输入等输入方式,向第一UE输入相应的用户操作,以触发发起相应的应用操作请求。
[0084] 本申请中的第一UE,可以为预先设置的固定UE。例如,在实际应用中,可配置一控制终端作为第一UE,专门用于进行控制指定应用的运行,典型的,对于上述提及的全景看房应用场景,可为工作人员配置相应的平板电脑并配置为第一UE,当有客户存在看房需求时,工作人员可为其分发平板电脑(第二UE),或者将客户带领至显示屏(第二UE),进行全景看房。
[0085] 又或者,该第一UE,也可以为实时配置的UE。例如,在第二UE中,若任意一个具有发起权限的UE(可默认具有发起权限,或者也可灵活地由用户手动或者由服务器侧配置发起权限)在用户操作的触发下,发起相应的应用操作请求,则可认为该UE为第一UE,并根据该UE的应用操作请求,在第二UE同步指定应用的应用界面。
[0086] 若在实际应用中设置了发起权限,则UE侧和服务器都可对发起应用操作请求是否具有对应的发起权限进行验证检测,当UE确认本地具有发起权限后,则可将应用操作请求向服务器发送;当服务器确认发起应用操作请求的第一UE具有发起权限,则可响应该应用操作请求。
[0087] 具体的,可配置一权限标识,用于标识UE对于应用操作请求的发起权限。UE在本地可检测自身是否具有该权限标识,来确认自身是否具有发起权限,若确认有,则可根据用户操作成功生成应用操作请求或者将生成的应用操作请求向服务器发送。向服务器发送的应用操作请求中,则可在预设字段内携带发起请求的UE的权限标识,指示UE的权限内容。
[0088] 对应的,服务器在接收到UE发起的应用操作请求后,则可提取该应用操作请求携带的UE的权限标识,再根据权限标识所标识的权限内容,判断UE是否具有指定应用进行目标操作行为的权限;若是,则触发根据接收到的应用操作请求,运行指定应用。
[0089] 本申请中的第二UE,具体可以为与当前与服务器建立通信连接的UE,如此,服务器可默认与自身建立通信连接的UE为第二UE的范畴;又或者,可配置一UE列表,该UE列表记载了不同UE的UE标识,这些UE标识所标识的UE为第二UE的范畴。
[0090] 当然,即使UE与服务器建立了通信连接,又或者UE列表中存在了UE的UE标识,也可在该基础上,继续配置相应的标识设置,以灵活地标识是否为当前有效的第二UE。
[0091] 例如,服务器可检测当前处于通信连接状态的UE是否存在预设的第二UE标识,若存在,则可说明为本申请应用运行机制中的第二UE,该第二UE标识可以由服务器侧或者UE侧进行配置,并且在两侧同步;又例如,服务器可检测UE列表中所标识的UE是否存在预设的第二UE标识,类似的,若存在,则可说明为本申请应用运行机制中的第二UE,该第二UE标识可以由服务器侧或者UE侧进行配置,并且在两侧同步。
[0092] 可以理解,从上述内容可看出,第一UE以及第二UE的配置,可随实际需要而定,具体在此不做限定。
[0093] 指定应用的应用类型,除了上述提及的全景看房应用类型,还可以为其他类型,具体可随实际的应用场景调整。本申请应用运行机制中涉及的指定应用,其应用类型可以为任意的应用类型,在实际应用中,由于其可显著减少对UE系统资源的占用,更适于看房应用、绘图应用、地图应用、游戏应用等涉及到高清画面、高数据处理规模的应用,具有较佳的商业应用价值。
[0094] 以看房应用为例,看房应用具体可以以2D图像展示形式、3D图像展示形式或者全景图像展示形式的图像展示形式展示楼盘,其涉及的应用界面数据用于展示看房应用在2D图像展示形式、3D图像展示形式或者全景图像展示形式下的应用界面。
[0095] 其中,这些看房应用,可配置有2D楼盘、3D楼盘或者全景楼盘的图像模型,服务器运行楼盘应用的过程中,可涉及到运行这些图像模型,并从这些图像模型中提取图像数据,结合楼盘应用的UI界面,得到对应的应用界面数据。
[0096] 进一步的,在本申请中,服务器基于运行指定应用时的应用界面所提取到的应用界面数据,具体可以包括指定应用在渲染应用界面时的帧像素数据以及音频数据。
[0097] 应当理解的是,服务器将应用界面数据下发至第二UE,是基于服务器与第二UE之间的通信连接实现的,也因此,服务器在将应用界面数据下发至第二UE之前,还可涉及到服务器与第二UE之间的通信连接的配置。
[0098] 具体的,服务器可预先与可以下发应用界面数据的第二UE之间,建立通信连接,待具有要进行下发的应用界面数据时,再通过预先建立的通信连接下发;或者,服务器也可确定当前要下发应用数据的第二UE时,实时建立两者之间的通信连接,再通过该通信连接下发。
[0099] 进一步的,在上文已提及,本申请提出的应用运行机制,将应用的运行托管至服务器,UE负责将服务器下发的应用界面数据进行输出、提供人机交互功能,如此大大降低了应用对UE系统资源的占用。在该情况下,UE还可无需安装指定应用相关的应用程序(用于提供指定应用的人机交互功能、应用请求的发起、根据服务器下发的应用界面数据输出对应的应用界面),仅在具有指定应用的使用需求时通过Web浏览器来完成指定应用的人机交互功能、应用请求的发起、根据服务器下发的应用界面数据输出对应的应用界面,如此,可更便捷地享受指定应用的应用功能,进一步减少应用对UE系统资源的占用。
[0100] 其中,该Web浏览器,可以为常用的浏览器应用、内置于其他应用中的Web浏览器或者其他应用中可调用的小程序。如此,对于用户,无需在UE上安装或下载任何内容,但是用户可以使用键盘、鼠标、触摸输入甚至是在网页中创建的自定义HTML5 UI,操作指定应用,与指定应用进行交互。
[0101] 又或者,本申请应用的运行机制中还可以为指定应用配置用于安装在UE端的应用程序,该应用程序中包含有Web浏览器的应用程序,可显示于UE的桌面界面中,供用户选定启动,还可配置为当启动时,与运行指定应用的服务器自动建立通信连接甚至自动开始同步指定应用的应用界面。
[0102] 对应的,参阅图3示出的本申请配置通信连接的一种场景示意图,服务器将应用界面数据下发至第二UE之前,还包括服务器与第二UE之间的通信连接的配置处理,即:
[0103] 服务器与运行在每个第二UE上的Web浏览器之间,分别建立通信连接,以根据通信连接分别与每个第二UE进行通信;
[0104] 对应的,服务器将应用界面数据下发至多个第二UE具体为:
[0105] 服务器根据与每个第二UE之间分别建立的通信连接,将应用界面数据下发至每个第二UE。
[0106] 在实际应用中,在建立通信连接的过程中,为确保信令和Web服务器能够在运行指定应用的服务器和UE的Web浏览器间交涉直接连接,双方需互相发送各自的IP地址,如此,在进行通信时,Web浏览器需要访问运行指定应用的服务器发送的IP地址,运行指定应用的服务器需要访问Web浏览器发送的IP地址。
[0107] 其中,UE的Web浏览器以及运行指定应用的服务器,双方可通过查询实现NAT会话穿越应用程序(Session Traversal Utilities for NAT,STUN)协议的服务器,即STUN服务器(STUN服务器可以理解为一种网络地址转换(Network Address Translation,NAT)会话遍历工具),以找出自身公开可见的IP地址,STUN服务器告知UE以及运行指定应用的服务器其自身的公开可见IP地址后,信令和Web服务器可继续中继各自的直接连接。
[0108] 或者,也可使用TURN服务器在UE的Web浏览器以及运行指定应用的服务器之间中继数据流,TURN服务器可用于进行网页即时通信(Web Real‑Time Communication,WebRTC)时,可用于数据的转发。启动TURN协议后,TURN服务器一方面与运行指定应用的服务器连接,另一方面则与UE的Web浏览器连接。运行指定应用的服务器将自身需要流送的数据(如应用界面数据)发送给TURN服务器,TURN服务器又将该数据传送至浏览器。在此情况下,UE的Web浏览器以及运行指定应用的服务器之间并无直接连接。典型的,如要在无线运营商网络中支持移动设备,只能使用TURN服务器,移动网络通常不支持客户端通过WebRTC协议进行连接。
[0109] 在该背景下,UE的Web浏览器可先与运行指定应用的服务器先进行配对,服务器再指定对应的Web服务器、STUN服务器或者TURN服务器,完成通信连接的构建。
[0110] 参阅图4示出的本申请应用的运行方法的又一种场景示意图,继续以看房应用场景为例,在实际应用中,可根据应用需求配置一UE部署系统,当有客户时,通过UE部署系统为现场的控制终端(预设的第一UE)以及客户随身携带的智能手机、平板电脑等UE设备(实时加入的第二UE)搭建一看房应用的运行场景,并协助配置各UE的Web浏览器与运行看房应用的服务器之间的通信连接,如此,终端设备以及客户的UE设备可通过自身的Web浏览器同步看房应用对于目标楼盘的2D、3D或者全景图像(即网页端同步画面),或者应用界面涉及的应用操作等(即相关的触控信息)。
[0111] 进一步的,在实际应用中,为便于实际应用,UE的Web浏览器以及运行指定应用的服务器之间的通信连接,优选的为UE触发建立的,如此,更便于如不固定出现的看房客户等情况下对应的、不固定出现的第二UE,可在用户的确认下主动加进指定应用的运行机制中。
[0112] 对应的,服务器与运行在每个第二UE上的Web浏览器之间,分别建立通信连接,具体可包括:
[0113] 服务器接收每个第二UE发起的通信连接请求,其中,通信连接请求携带第二UE的通信地址;
[0114] 服务器根据通信连接请求,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接。
[0115] 服务器在接收到UE发起的通信连接请求后,则可根据UE的连接需求,配置两者之间的通信连接。
[0116] 示例性的,UE具体可以通过局域网的配置信息或者通过二维码确定服务器的通信地址后发起通信连接请求。
[0117] 例如,可以理解,UE以及运行指定应用的服务器之间,可都处于同一局域网中,例如相同网段的IP地址,处于同一局域网的UE以及服务器,可认为加入至本申请应用的运行机制中,如此,UE可从自身当前加入的局域网的配置信息中,查询到服务器的通信地址(例如可以为服务器配置一服务器标识,用于标识服务器运行指定应用),并发起通信连接请求。
[0118] 又或者,也可在二维码中携带服务器的通信地址,由用户主动操作随身的UE扫描二维码,并根据二维码携带的通信地址,向服务器发起通信连接。
[0119] 可以理解,基于二维码实现的通信连接场景,较为适于实际应用,以看房应用场景为例,具有看房需求的客户可通过手中的智能手机扫描二维码,进而与服务器建立通信连接,此时服务器可将客户手中建立连接的手机默认为第二UE,可同步看房应用相应的目标楼盘的2D、3D或者全景图像,实现一个流畅的、客户接受度较高的看房场景。
[0120] 此外,基于局域网实现的通信连接,除了可由UE通过局域网的配置信息主动发起通信连接请求,也可由服务器根据局域网的配置信息中的每个UE的通信地址,确认为第二UE,并与运行在每个第二UE上的Web浏览器之间,分别建立通信连接。
[0121] 继续参阅图5示出的本申请应用的运行方法的又一种场景示意图,为便于每个UE侧的用户都拥有各自独立的应用体验、交互体验,本申请在实际应用中,服务器还可运行多个的堆栈,每个堆栈分别运行一个完整的指定应用,又或者,每个堆栈在共享一个完整的指定应用的基础上分别运行各自的交互组件等可供用户自定义设置的操作组件,如此,可在不同的UE上实现不同的应用操作或者应用运行方式。
[0122] 例如,以看房应用场景为例,工作人员可通过随身UE的Web浏览器(第一UE)对服务器上运行的看房应用具有完全控制权,可随自己需求而操作指定应用,而其他参与的看房客户的智能手机(第二UE)只能观看服务器同步过来的看房应用所展示的2D图像展示方式、3D图像展示方式或者全景图像展示方式的楼盘图像;
[0123] 又例如,可创建不同用户的控制自定义设置,以便他们各自可实时控制体验的各个方面。
[0124] 当然,在实际应用中,不仅可以为每个UE分别配置对应的堆栈运行指定应用或者指定应用的相应组件,还可以以不同的UE组合为单位,分别配置对应的堆栈运行指定应用或者指定应用的相应组件,以便在同一时间下,不同的用户群体可享受同步的应用体验,继续以看房应用为例,在看房场景中,看房客户有可能是以家庭单位的,家庭成员很有可能期望先观看同样的楼盘图像,接着再各自观看个人期望看到的楼盘图像。
[0125] 其中,不同的堆栈,可能通过同一个Web服务器、STUN服务器或者Turn服务器与不同的UE进行通信连接,或者,也可能通过不同的Web服务器、STUN服务器或者Turn服务器与不同的UE进行通信连接。
[0126] 总而言之,在本申请中,服务器与UE之间的通信配置,具体可以包括:
[0127] 服务器分别为每个第二UE或者多个第二UE组成的任意UE组合,运行一一对应的指定应用或者运行一一对应的指定应用的组件;
[0128] 服务器分别为每个指定应用或者运行一一对应的指定应用的组件,配置一一对应的堆栈,其中,堆栈配置有与对应的指定应用之间进行通信的第一通信端口,堆栈还配置有与对应的每个第二UE进行通信的第二通信端口。
[0129] 为便于更好的实施本申请提供的应用的运行方法,本申请还提供了应用的运行装置。
[0130] 参阅图6,图6为本申请应用的运行装置的一种结构示意图,在本申请中,应用的运行装置600具体可包括如下结构:
[0131] 收发单元601,用于接收第一UE发起的应用操作请求,其中,应用操作请求是在用户操作的触发下发起的,应用操作请求用于请求对指定应用进行目标操作行为;
[0132] 处理单元602,用于根据接收到的应用操作请求,运行指定应用,以使得指定应用进行目标操作行为;提取指定应用进行目标操作行为时的应用界面数据;
[0133] 收发单元601,还用于将应用界面数据下发至多个第二UE,以使得多个第二UE根据应用界面数据向用户输出对应的应用界面,其中,多个第二UE中包括第一UE。
[0134] 在一种示例性的实现方式中,处理单元602,还用于:
[0135] 与运行在每个第二UE上的Web浏览器之间,分别建立通信连接,以根据通信连接分别与每个第二UE进行通信;
[0136] 将应用界面数据下发至多个第二UE包括:
[0137] 根据与每个第二UE之间分别建立的通信连接,将应用界面数据下发至每个第二UE。
[0138] 在又一种示例性的实现方式中,处理单元602,具体用于:
[0139] 接收每个第二UE发起的通信连接请求,其中,通信连接请求携带第二UE的通信地址,通信连接请求是由第二UE通过局域网的配置信息或者通过二维码确定服务器的通信地址后发起的;
[0140] 根据通信连接请求,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接;
[0141] 或者,根据局域网的配置信息中的每个第二UE的通信地址,与运行在每个第二UE上的Web浏览器之间,分别建立通信连接。
[0142] 在又一种示例性的实现方式中,处理单元602,还用于:
[0143] 分别为每个第二UE或者多个第二UE组成的任意UE组合,运行一一对应的指定应用或者运行一一对应的指定应用的组件;
[0144] 分别为每个指定应用或者运行一一对应的指定应用的组件,配置一一对应的堆栈,其中,堆栈配置有与对应的指定应用之间进行通信的第一通信端口,堆栈还配置有与对应的每个第二UE进行通信的第二通信端口。
[0145] 在又一种示例性的实现方式中,处理单元602,还用于:
[0146] 提取应用操作请求携带的第一UE的权限标识;
[0147] 根据权限标识所标识的权限内容,判断第一UE是否具有指定指定应用进行目标操作行为的权限;
[0148] 若是,则触发根据接收到的应用操作请求,运行指定应用。
[0149] 在又一种示例性的实现方式中,应用界面数据包括指定应用在渲染应用界面时的帧像素数据以及音频数据。
[0150] 在又一种示例性的实现方式中,指定应用为看房应用,看房应用用于以2D图像展示形式、3D图像展示形式或者全景图像展示形式的图像展示形式展示楼盘,应用界面数据用于展示看房应用在2D图像展示形式、3D图像展示形式或者全景图像展示形式下的应用界面。
[0151] 本申请还提供了一种服务器,参阅图7,图7示出了本申请服务器的一种结构示意图,具体的,本申请服务器包括处理器701、存储器702以及输入输出设备703,处理器701用于执行存储器702中存储的计算机程序时实现如图1至图5对应任意实施例中应用的运行方法的各步骤;或者,处理器701用于执行存储器702中存储的计算机程序时实现如图6对应实施例中各单元的功能,例如图6中的收发单元601所对应的硬件结构为输入输出设备703,处理单元602所对应的硬件结构为处理器701,存储器702用于存储处理器701执行上述图1至图5对应任意实施例中应用的运行方法所需的计算机程序。
[0152] 示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器702中,并由处理器701执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机装置中的执行过程。
[0153] 服务器可包括,但不仅限于处理器701、存储器702、输入输出设备703。本领域技术人员可以理解,示意仅仅是服务器的示例,并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如服务器还可以包括网络接入设备、总线等,处理器701、存储器702、输入输出设备703以及网络接入设备等通过总线相连。
[0154] 处理器701可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器701是服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分。
[0155] 存储器702可用于存储计算机程序和/或模块,处理器701通过运行或执行存储在存储器702内的计算机程序和/或模块,以及调用存储在存储器702内的数据,实现计算机装置的各种功能。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据服务器的使用所创建的数据(比如音频数据、视频数据等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0156] 处理器701用于执行存储器702中存储的计算机程序时,具体可实现以下功能:
[0157] 接收第一UE发起的应用操作请求,其中,应用操作请求是在用户操作的触发下发起的,应用操作请求用于请求对指定应用进行目标操作行为;
[0158] 根据接收到的应用操作请求,运行指定应用,以使得指定应用进行目标操作行为;
[0159] 提取指定应用进行目标操作行为时的应用界面数据;
[0160] 将应用界面数据下发至多个第二UE,以使得多个第二UE根据应用界面数据向用户输出对应的应用界面,其中,多个第二UE中包括第一UE。
[0161] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的应用的运行装置、服务器及其相应单元的具体工作过程,可以参考如图1至图5对应任意实施例中应用的运行方法的说明,具体在此不再赘述。
[0162] 本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
[0163] 为此,本申请提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请如图1至图5对应任意实施例中应用的运行方法中的步骤,具体操作可参考如图1至图5对应任意实施例中应用的运行方法的说明,在此不再赘述。
[0164] 其中,该计算机可读存储介质可以包括:只读存储器(Read Only Memory,ROM)、随机存取记忆体(Random Access Memory,RAM)、磁盘或光盘等。
[0165] 由于该计算机可读存储介质中所存储的指令,可以执行本申请如图1至图5对应任意实施例中应用的运行方法中的步骤,因此,可以实现本申请如图1至图5对应任意实施例中应用的运行方法所能实现的有益效果,详见前面的说明,在此不再赘述。
[0166] 以上对本申请提供的应用的运行方法、装置、服务器及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。