首页> 中国专利> 活动页面的展现方法和装置

活动页面的展现方法和装置

摘要

本申请提供了一种活动页面的展现方法和装置,该方案应用于智能电视,该方法包括:在智能电视的应用启动后,从应用的服务器中查询应用中活动页面对应的页面数据文件是否存在更新,应用内植入有应用开发框架程序ReactNative;如活动页面的页面数据文件存在更新,从服务器获取活动页面对应的最新版本的页面数据文件;调用应用中的应用开发框架程序ReactNative,通过应用开发框架程序ReactNative将最新版本的页面数据文件转换为智能电视中操作系统支持的目标页面数据文件,向应用的活动页面展示区展现目标页面数据文件对应的活动页面。本申请的方案可以提高更新应用的活动页面的便捷性和灵活性。

著录项

  • 公开/公告号CN113825008A

    专利类型发明专利

  • 公开/公告日2021-12-21

    原文格式PDF

  • 申请/专利权人 飞狐信息技术(天津)有限公司;

    申请/专利号CN202111402309.X

  • 发明设计人 殷岳;

    申请日2021-11-24

  • 分类号H04N21/431(20110101);G06F8/38(20180101);

  • 代理机构11227 北京集佳知识产权代理有限公司;

  • 代理人耿苑

  • 地址 300280 天津市滨海新区经济开发区第一大街79号泰达MSD-C区C3座21层2012单元

  • 入库时间 2023-06-19 13:46:35

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-03-01

    授权

    发明专利权授予

说明书

技术领域

本申请涉及网络通信技术领域,尤其涉及一种活动页面的展现方法和装置。

背景技术

随着智能电视的不断发展,智能电视中可安装的应用种类也日益增多。

智能电视中很多应用在启动后都会显示一个活动页面,在该活动页面中可以显示有一些操作向导(如操作按钮以及操作提示信息等等)以及一些宣传信息等。目前,应用中的活动页面一般都是固定的,如果希望根据当前的实时热点更新应用中的活动页面,就需要重新开发并发布新版本的应用,复杂度较高,因此,如何较为便捷的在智能电视中的应用中呈现出最新热点对应的活动页面是本领域技术人员需要解决的技术问题。

发明内容

有鉴于此,本申请提供了活动页面的展现方法和装置,以提高更新应用的活动页面的便捷性和灵活性。

为实现上述目的,本申请提供了一种活动页面的展现方法,应用于智能电视,包括:

在智能电视的应用启动后,从所述应用的服务器中查询所述应用中活动页面对应的页面数据文件是否存在更新,所述应用内植入有应用开发框架程序ReactNative;

如所述活动页面的页面数据文件存在更新,从所述服务器获取所述活动页面对应的最新版本的页面数据文件;

调用所述应用中的应用开发框架程序ReactNative,通过所述应用开发框架程序ReactNative将所述最新版本的页面数据文件转换为所述智能电视中操作系统支持的目标页面数据文件,向所述应用的活动页面展示区展现所述目标页面数据文件对应的活动页面。

在一种可能的实现方式中,所述从所述应用的服务器中查询所述应用中活动页面对应的页面数据文件是否存在更新,包括:

从所述应用的服务器中获取所述应用中活动页面对应的页面数据文件的第一信息摘要;

检测所述第一信息摘要与所述智能电视中所述应用中活动页面对应的页面数据文件的第二信息摘要是否相同;

其中,如果所述第一信息摘要与所述第二信息摘要不同,确认所述活动页面的页面数据文件存在更新。

在又一种可能的实现方式中,所述通过所述应用开发框架程序ReactNative将所述最新版本的页面数据文件转换为所述智能电视中操作系统支持的目标页面数据文件,包括:

如果通过所述应用开发框架程序ReactNative从所述最新版本的页面数据文件中解析出界面数据,通过所述应用开发框架程序ReactNative中配置的控件转换组件将所述界面数据中可操作控件的数据转换为适配智能电视的操作控件的数据。

在又一种可能的实现方式中,在调用所述应用中的应用开发框架程序ReactNative的同时,还包括:

向所述应用的页面展示区输出设定的加载提示页面,所述加载提示页面用于提示活动页面正在加载。

在又一种可能的实现方式中,所述应用开发框架程序ReactNative通过如下方式植入到所述应用中:

通过操作系统中的管理代码框架程序获得待植入的应用开发框架程序ReactNative的程序包,并将所述程序包添加到所述应用的数据包内;

通过所述管理代码框架程序配置所述应用开发框架程序ReactNative作为所述应用的关联程序。

又一方面,本申请还提供了一种活动页面的展现装置,应用于智能电视,包括:

更新检测单元,用于在智能电视的应用启动后,从所述应用的服务器中查询所述应用中活动页面对应的页面数据文件是否存在更新,所述应用内植入有应用开发框架程序ReactNative;

文件获取单元,用于如所述活动页面的页面数据文件存在更新,从所述服务器获取所述活动页面对应的最新版本的页面数据文件;

展现处理单元,用于调用所述应用中的应用开发框架程序ReactNative,通过所述应用开发框架程序ReactNative将所述最新版本的页面数据文件转换为所述智能电视中操作系统支持的目标页面数据文件,向所述应用的活动页面展示区展现所述目标页面数据文件对应的活动页面。

在一种可能的实现方式中,所述更新检测单元,包括:

摘要获取单元,用于在智能电视的应用启动后,从所述应用的服务器中获取所述应用中活动页面对应的页面数据文件的第一信息摘要;

摘要检测单元,用于检测所述第一信息摘要与所述智能电视中所述应用中活动页面对应的页面数据文件的第二信息摘要是否相同;

所述文件获取单元,用于如果所述第一信息摘要与所述第二信息摘要不同,确认所述活动页面的页面数据文件存在更新,从所述服务器获取所述活动页面对应的最新版本的页面数据文件。

在又一种可能的实现方式中,所述展现处理单元,包括:

控件转换单元,用于如果通过所述应用开发框架程序ReactNative从所述最新版本的页面数据文件中解析出界面数据,通过所述应用开发框架程序ReactNative中配置的控件转换组件将所述界面数据中可操作控件的数据转换为适配智能电视的操作控件的数据。

在又一种可能的实现方式中,还包括:

页面预显示单元,用于在展现处理单元调用所述应用中的应用开发框架程序ReactNative的同时,向所述应用的页面展示区输出设定的加载提示页面,所述加载提示页面用于提示活动页面正在加载。

在又一种可能的实现方式中,所述更新检测单元启动的应用为通过如下方式植入有所述应用开发框架程序ReactNative:

通过操作系统中的管理代码框架程序获得待植入的应用开发框架程序ReactNative的程序包,并将所述程序包添加到所述应用的数据包内;

通过所述管理代码框架程序配置所述应用开发框架程序ReactNative作为所述应用的关联程序。

由以上可知,在本申请实施例中, 智能电视中的应用每次启动后都会检测服务器中该应用的活动页面对应的页面数据文件是否存在更新,如果该活动页面的页面数据文件存在更新,则会从服务器获得最新版本的页面数据文件。同时,由于智能电视的应用内植入有应用开发框架程序ReactNative,通过调用该应用开发框架程序ReactNative可以实现将最新版本的页面数据文件转换为智能电视中操作系统支持的目标页面数据文件,并基于目标页面数据文件向应用的活动页面展示出相应的活动页面,从而使得应用每次启动都能够基于服务器最新的活动页面的相关数据,在智能电视侧呈现出该应用最新的活动页面,无需每次重新开发应用也可以实现根据所需呈现的最新内容更新应用的活动页面,提高了智能电视中应用展现最新的活动页面的展现灵活性和便捷性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1示出了本申请实施例提供的一种活动页面的展现方法的一种流程示意图;

图2示出了本申请实施例提供的向应用内植入ReactNative的一种实现流程示意图;

图3示出了本申请实施例提供的一种活动页面的展现装置的一种组成结构示意图。

具体实施方式

本申请实施例的方案可以适用于智能电视中应用的活动页面展现。该智能电视可以为指示安卓或者IOS等操作系统的智能电视。

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

如图1所示,其示出了本申请提供活动页面的展现方法的一种流程示意图,本实施例的方法可以应用于智能电视,本实施例的方法包括:

S101,在智能电视的应用启动后,从应用的服务器中查询应用中活动页面对应的页面数据文件是否存在更新。

在本申请中,智能电视的应用可以指能够呈现出活动页面的应用。如,智能电视可能会存在开机启动应用程序,开机启动应用程序可以呈现出开机引导的活动页面。又如,智能电视中还有一些应用是一些视频播放应用,那么视频播放应用启动后可以呈现用于引导视频播放以及视频宣传等内容的活动页面。

当然,智能应用中需要呈现活动页面的应用可以有多种可能,本申请对此不加限制。

在本申请中,智能电视中该应用每次启动后,会先去会查询该应用的服务器中是否存在该应用的活动页面的更新。具体的,可以通过查询该活动页面对应的页面数据文件是否存在更新来确定应用是否存在包含最新热点内容的最新活动页面的数据文件。

其中,活动页面对应的页面数据文件为实现活动页面加载以及渲染所需的相关数据。如活动页面的页面数据文件可以包括:活动页面中所需加载或者呈现的页面元素的数据(如,页面元素的结构以及位置等等),以及,活动页面的点击效果以及加载逻辑等等数据。

其中,活动页面的页面数据文件可以为JavaScript文件,JavaScript,简称JS,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。

考虑到每次从服务器下载最新的页面数据文件必然需要耗费较多的数据量,且基于页面数据文件确定活动页面是否需要更新的复杂度会较高。在一种可能的实现方式中,本申请中可以从应用的服务器中获取该应用中活动页面对应的页面数据文件的第一信息摘要。相应的,可以检测第一信息摘要与智能电视的该应用的活动页面对应的页面数据文件的第二信息摘要是否相同。如果第一信息摘要与第二信息摘要不同,确认活动页面的页面数据文件存在更新。反之,如果第一信息摘要与第二信息摘要相同,则确认活动页面的页面数据文件不存在更新。

其中,活动页面的页面数据文件的信息摘要为基于信息摘要算法生成的信息摘要,如,采用MD5信息摘要算法生成的MD5值。其中,为了便于区分,将服务器侧存储的活动页面的页面数据文件对应的信息摘要称为第一信息摘要,而将智能电视侧存储的该应用中活动页面的页面数据文件对应的信息摘要称为第二信息摘要。

可以理解的是,第二信息摘要可以需要检测服务器中活动页面的页面数据文件是否更新时,才基于智能电视侧的活动页面的页面数据文件生成。当然,为了提高检测效率,该第二信息摘要是预先生成并存储到智能电视中的。

在本申请中,应用内植入(或者说嵌入)有应用开发框架程序ReactNative。

其中,React Native是Facebook发布的一个能够进行混合开发的框架,通过ReactNative能同时为IOS和安卓Android操作系统开发应用程序,React Native 是目前流行的跨平台移动应用开发框架之一。

其中,该开发框架程序为在应用发布之前预先植入到该应用内,具体植入方式可以有多种,本申请对此不加限制。

S102,如活动页面的页面数据文件存在更新,从服务器获取活动页面对应的最新版本的页面数据文件。

可以理解的是,最新版本的页面数据文件是应用所需呈现的最新的活动页面对应的页面数据文件,因此,从服务器下载活动页面对应的最新版本的页面数据文件,才可能使得智能电视侧的应用呈现出最新的活动页面。

S103,调用应用中的应用开发框架程序ReactNative,通过应用开发框架程序ReactNative将最新版本的页面数据文件转换为智能电视中操作系统支持的目标页面数据文件,向应用的页面展示区展现目标页面数据文件对应的活动页面。

由于服务器侧的页面数据文件为采用网页脚本的语言编写的页面数据文件,因此,本申请需要将页面数据文件转换为适合智能电视显示的页面形式的数据。

在此基础上,应用通过调用其植入的应用开发框架程序ReactNative,启动该应用开发框架程序ReactNative,将最新版本的页面数据文件传输给该应用开发框架程序ReactNative。而应用开发框架程序ReactNative的跨平台开发性能,使得应用开发框架程序可以支持将网页脚本语言形式的页面数据文件转换为适合该智能电视中操作系统支持的页面数据。

如,活动页面的页面数据文件为JavaScript文件,而智能电视为安卓操作系统,则应用开发框架程序ReactNative可以将该JavaScript文件转换为智能电视端安卓操作系统适配的页面数据形式。

可以理解的是,如果服务器侧活动页面的页面数据文件不存在更新,但是在本次应用启动之前,应用从服务器下载过最新版本的页面数据文件(如上一次应用启动或者某次应用启动时下载了最新版本的页面数据),本申请同样会调用该应用开发框架程序ReactNative,并将本地存储的该活动页面对应的最新版本的页面数据文件传输给该应用开发框架程序ReactNative,并通过该应用开发框架程序ReactNative完成最新的活动页面加载与渲染展现。

可以理解的是,活动页面的页面数据文件可以包括界面数据信息以及页面逻辑数据等等。其中,界面数据包括界面中需要呈现的控件、控件的外观形式以及控件的位置等等数据。

可以理解的是,智能电视需要利用遥控器来控制在应用的活动页面中进行选择,且智能电视需要呈现出遥控器在活动页面中的焦点位置(选择位置或者说操作位置等)。基于此,本申请需要将页面数据文件中按钮等可操作控件转换为可支持遥控器控制的控件。

相应的,在本申请中,应用开发框架程序ReactNative中可以配置有自定义的控件转换组件,该控件转换组件可以按照页面数据文件中可操作控件与智能电视中操作控件之间的数据映射关系,对页面数据文件解析出的界面数据中的可操作控件的数据转换为智能电视适合的操作控件的数据形式。

具体的,如果通过应用开发框架程序ReactNative从最新版本的页面数据文件中解析出界面数据,通过应用开发框架程序ReactNative中配置的控件转换组件将界面数据中可操作控件的数据转换为适配智能电视的操作控件的数据。

可以理解的是,对于界面数据之外的其他页面加载相关的逻辑数据等,述应用开发框架程序ReactNative可以直接将相应数据转换为符合智能电视中相应操作系统的数据形式,并完成相应的加载与渲染,对此不再赘述。

由以上可知,在本申请实施例中, 智能电视中的应用每次启动后都会检测服务器中该应用的活动页面对应的页面数据文件是否存在更新,如果该活动页面的页面数据文件存在更新,则会从服务器获得最新版本的页面数据文件。同时,由于智能电视的应用内植入有应用开发框架程序ReactNative,通过调用该应用开发框架程序ReactNative可以实现将最新版本的页面数据文件转换为智能电视中操作系统支持的目标页面数据文件,并基于目标页面数据文件向应用的活动页面展示出相应的活动页面,从而使得应用每次启动都能够基于服务器最新的活动页面的相关数据,在智能电视侧呈现出该应用最新的活动页面,无需每次重新开发应用也可以实现根据所需呈现的最新内容更新应用的活动页面,提高了智能电视中应用展现最新的活动页面的展现灵活性和便捷性。

可以理解的是,开发框架程序ReactNative处理最新版本的页面数据文件到最终向应用的活动页面展现区呈现出最新的活动页面这一过程必然需要耗费一定的时间,从而使得应用的活动页面展示区呈现空白状态,即俗称的白屏,从而影响到观看效果。

如,React Native的渲染机制是对于Js Bundle的加载,因此,应用中JS形式的页面数据文件文件最终会被打包成一个Js Bundle文件。在此基础上,渲染界面时,会首先加载Js Bundle文件,而在加载Js Bundle的过程,就会由于正在加载Js Bundle文件而导致应用的界面上出现白屏。

为了避免出现白屏,本申请可以预先自定义一个加载提示页面。该加载提示页面用于提示活动页面正在加载。

如,该加载提示页面可以是通过文字或者图形的方式提示活动页面正在界面,例如,加载提示页面可以显示有提示正在加载的旋转圆圈等等。本申请对于加载提示页面的具体形式不加限制。

相应的,本申请在调用所述应用中的应用开发框架程序ReactNative的同时,还可以向该应用的页面展示区输出设定的加载提示页面。

可以理解的是,在应用开发框架程序ReactNative向应用的页面展示区展现目标页面数据文件对应的活动页面时,则活动页面会替换掉该加载提示页面,使得应用可以正常呈现该活动页面。

可以理解的是,应用中植入的应用开发框架程序ReactNative可以在应用发布前完成。其中,应用中植入该应用开发框架程序ReactNative的方式可以有多种可能。

下面结合几种可能情况进行说明。如图2所示,其示出了本申请向应用中植入应用开发框架程序ReactNative的一种实现流程示意图。该植入流程可以包括:

S201,通过操作系统中的管理代码框架程序获得待植入的应用开发框架程序ReactNative的程序包,并将程序包添加到应用的数据包内。

S202,通过管理代码框架程序配置应用开发框架程序ReactNative作为应用的关联程序。

如,本申请的应用需要发布到支持安卓操作系统的智能电视中,在此情况下,可以通过安卓操作系统中的管理代码框架程序gradle获得该开发程序框架的ReactNative的程序包并完成该程序包到该应用的数据包内的植入以及相关配置。

例如,gradle利用compile命令 "com.facebook.react:react-native:+"向应用中添加ReactNative的程序包。然后,gradle创建空的Activity ,指定JS bundle 和入口,则ReactNative组件的名字即会自动在这个Activity 里去加载JS bundle 文件,从而完成植入。

可以理解的是,本申请向应用中植入到ReactNative可以是包含前面提到的自定义的控件转换组件。

可以理解的是,图2仅仅是以向应用中植入该ReactNative的一种实现方式为例说明。另外,在图2中植入到是ReactNative的程序包,不利于查询ReactNative的源代码,本申请还可以采用人工方式植入该ReactNative的源代码。该使用源码编译可以更好的将React Native融合到应用中,能够更加方便的定制我们想要的需求,能够定制化适合我们自己的控件。

而且,采用源代码编译的方式将ReactNative植入到应用中,还可以是实现ReactNative与应用的解耦。

当然,在实际应用中,还可以有其他将ReactNative植入到应用的方式,本申请对此不加限制。

在本申请以上实施例中,为了减少智能电视从服务器获得活动页面的最新版本的页面数据文件所需耗费的数据量和带宽资源,本申请服务器还可以采用差分算法生成页面数据文件的差分包,相应的,智能电视可以基于差分包恢复出最新版本的页面数据文件。

当然,服务器还可以采用7z压缩算法等压缩性能较高的压缩算法压缩页面数据文件,以减少智能电视获得页面数据文件所需耗费的数据量。

对应本申请的一种活动页面的展现方法,本申请还提供了一种活动页面的展现装置。

如图3所示,其示出了本申请一种活动页面的展现装置的一种组成结构示意图,本实施例的装置可以应用于智能电视。

本实施例的装置可以包括:

更新检测单元301,用于在智能电视的应用启动后,从所述应用的服务器中查询所述应用中活动页面对应的页面数据文件是否存在更新,所述应用内植入有应用开发框架程序ReactNative;

文件获取单元302,用于如所述活动页面的页面数据文件存在更新,从所述服务器获取所述活动页面对应的最新版本的页面数据文件;

展现处理单元303,用于调用所述应用中的应用开发框架程序ReactNative,通过所述应用开发框架程序ReactNative将所述最新版本的页面数据文件转换为所述智能电视中操作系统支持的目标页面数据文件,向所述应用的活动页面展示区展现所述目标页面数据文件对应的活动页面。

在一种可能的实现方式中,所述更新检测单元,包括:

摘要获取单元,用于在智能电视的应用启动后,从所述应用的服务器中获取所述应用中活动页面对应的页面数据文件的第一信息摘要;

摘要检测单元,用于检测所述第一信息摘要与所述智能电视中所述应用中活动页面对应的页面数据文件的第二信息摘要是否相同;

所述文件获取单元,用于如果所述第一信息摘要与所述第二信息摘要不同,确认所述活动页面的页面数据文件存在更新,从所述服务器获取所述活动页面对应的最新版本的页面数据文件。

在又一种可能的实现方式中,所述展现处理单元,包括:

控件转换单元,用于如果通过所述应用开发框架程序ReactNative从所述最新版本的页面数据文件中解析出界面数据,通过所述应用开发框架程序ReactNative中配置的控件转换组件将所述界面数据中可操作控件的数据转换为适配智能电视的操作控件的数据。

在又一种可能的实现方式中,还包括:

页面预显示单元,用于在展现处理单元调用所述应用中的应用开发框架程序ReactNative的同时,向所述应用的页面展示区输出设定的加载提示页面,所述加载提示页面用于提示活动页面正在加载。

在又一种可能的实现方式中,所述更新检测单元启动的应用为通过如下方式植入有所述应用开发框架程序ReactNative:

通过操作系统中的管理代码框架程序获得待植入的应用开发框架程序ReactNative的程序包,并将所述程序包添加到所述应用的数据包内;

通过所述管理代码框架配置所述应用开发框架程序ReactNative作为所述应用的关联程序。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。同时,本说明书中各实施例中记载的特征可以相互替换或者组合,使本领域专业技术人员能够实现或使用本申请。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号