一种智能电视互动功能卡片的框架管理方法和装置的制造方法
【专利摘要】本发明实施例提供一种智能电视互动功能卡片的框架管理方法和装置,方法包括:接收卡片更新指令;当卡片更新指令为下载指令时,根据下载指令从服务器下载新上线卡片;接收卡片列表启动指令,启动卡片列表;卡片列表包括多个卡片,每个卡片具有相应的互动功能;接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片。本发明实施例使得互动功能卡片能够快速上线和下线,并可以由运营后台根据运营策略灵活配置互动功能卡片的出现时机,且在不对智能电视中卡片进行安装操作的情况下,能够自动快速展示卡片的互动功能以被用户使用,有效提高了用户的互动体验。
【专利说明】
一种智能电视互动功能卡片的框架管理方法和装置
技术领域
[0001]本发明涉及家用电器技术领域,特别是涉及一种智能电视互动功能卡片的框架管理方法和装置。【背景技术】
[0002]智能电视的出现让大屏观看体验大幅提升,是家庭的娱乐中心。智能电视可以整合网络资源,提供更多专为观看电视节目设计的功能与服务,例如提供节目相关信息、相关明星介绍、相关视频等服务,增强了用户的观看体验。[〇〇〇3]目前,电视互动平台是针对视频节目提供节目增强服务的平台,电视互动平台可以为有线电视节目、轮播节目、点播节目提供统一的节目内容互动功能。在电视互动中, 强调实时性、功能与节目内容的相关性,因此,互动功能中运营后台的重要性提升至了最高点,很多互动功能都是由运营后台结合节目时间点推送给用户,给用户一种自然、符合时宜的体验。但是现有技术中,新增应用在使用前,都需要用户进行下载、安装等必须的操作,新增应用的互动功能才能展现,这种流程破坏了互动功能应有的自然体验,不符合互动功能的需求,而且,即使采用自动下载功能模块的方式,新增应用也需要用户进行安装操作,才能被使用。
[0004]综上所述,现有技术存在的缺点是:运营后台配置的互动功能,都需要用户进行安装等必须的操作才能被使用,用户的互动体验差。
【发明内容】
[0005]本发明实施例提供一种智能电视互动功能卡片的框架管理方法和装置,用以解决现有技术中运营配置的互动功能,都需要用户进行安装等必须的操作才能被使用的缺陷, 而实现在不对互动功能进行安装操作时,自动快速展示互动功能以被用户使用,提高用户的互动体验。
[0006]为了解决上述问题,本发明实施例公开了一种智能电视互动功能卡片的框架管理方法,包括以下步骤:接收卡片更新指令;当所述卡片更新指令为下载指令时,根据所述下载指令从服务器下载新上线卡片;接收卡片列表启动指令,启动卡片列表;所述卡片列表包括多个卡片,每个所述卡片具有相应的互动功能;接收用户选择指令,通过宿主程序运行所述卡片列表中的相应卡片。
[0007]为了解决上述问题,本发明实施例还公开了一种智能电视互动功能卡片的框架管理装置,包括:指令接收模块,用于接收卡片更新指令;卡片下载模块,用于当所述卡片更新指令为下载指令时,根据所述下载指令从服务器下载新上线卡片;卡片列表启动模块,用于接收卡片列表启动指令,启动卡片列表;所述卡片列表包括多个卡片,每个所述卡片具有相应的互动功能;卡片运行模块,用于接收用户选择指令,通过宿主程序运行所述卡片列表中的相应卡片。
[0008]本发明实施例提供的一种智能电视互动功能卡片的框架管理方法和装置,在接收到卡片更新指令后,当卡片更新指令为下载指令时,此时,服务器端存在根据运营后台的运营策略配置的新上线卡片(具有互动功能),根据下载指令从服务器下载新上线卡片,进而接收卡片列表启动指令,并启动卡片列表,以及接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片,此时卡片在未安装的情况下运行,用户能够正常使用卡片的互动功能。 从而智能电视可以临时上线运营后台根据运营策略配置的新卡片,且在不对智能电视中卡片进行安装操作的情况下,能够自动快速展示卡片的互动功能以被用户使用,有效提高了用户的互动体验。【附图说明】
[0009]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0010]图1是本发明实施例一种智能电视互动功能卡片的框架管理方法的步骤流程图;
[0011]图2是本发明实施例另一种智能电视互动功能卡片的框架管理方法的步骤流程图;
[0012]图3是本发明实施例一种智能电视互动功能卡片的框架管理装置的结构框图;
[0013]图4是本发明实施例另一种智能电视互动功能卡片的框架管理装置的结构框图。【具体实施方式】
[0014]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0015]参照图1,示出了本发明实施例一种智能电视互动功能卡片的框架管理方法的步骤流程图。
[0016]本发明实施例的智能电视互动功能卡片的框架管理方法可以包括以下步骤:
[0017]步骤S1,接收卡片更新指令。
[0018]其中,卡片更新指令可以为下载指令、删除指令、弹出卡片指令等。
[0019]步骤S2,当卡片更新指令为下载指令时,根据下载指令从服务器下载新上线卡片。
[0020]具体地,在本发明的一个实施例中,卡片为一个插件/APK(Android Package,安卓安装包),下载新上线卡片即下载新上线卡片的APK文件。具体地,卡片的状态可以有两种: 未上线(包括下线)和上线,其中,卡片上线也分模块,模块可以为轮播模块、有线电视模块、点播模块等,当卡片在所有模块均未上线时,卡片的状态为未上线,其中,卡片在所有模块下线时,卡片的状态为下线时;当卡片在任一模块上线时,卡片的状态为上线。
[0021]另外,卡片上线和下线可以由智能电视对应的运营后台进行审核与管理,运营后台可以根据运营策略开发新卡片,并可以配置卡片的状态和卡片上线的模块,以及修改服务器中上线卡片名单各卡片的状态和上线的模块,实现根据运营后台的运营策略维护服务器中上线卡片名单。其中,当运营后台根据运营策略上传开发的新卡片至服务器时,需要上传新卡片的APK文件,同时输入卡片ID (Identity,身份标识号码)、卡片名称、卡片简介、卡片上线模块、卡片排序等信息,之后在服务器的上线卡片名单中点击相应卡片的“上线”按钮或图标等,上传的卡片在服务器上正式上线,上线卡片可以给出卡片名称、卡片ID和卡片下载地址等;当运营后台根据运营策略修改卡片的状态为下线时,可以在服务器的上线卡片名单中点击相应卡片的“下线”按钮或图标等,卡片在服务器上正式下线。具体地,在卡片上线和下线时,服务器可以记录卡片的上传时间、上线时间和下线时间,以便于运营后台进行查询或进行其它操作。
[0022]优选地,当服务器中上线卡片名单变化时,即上线卡片名单中有新上线卡片时,月艮务器可以通过发送卡片更新指令即时告知智能电视,例如发送下载指令,下载指令可以包括新上线卡片信息例如卡片名称、卡片ID等或上线卡片名单。其中,当下载指令包括新上线卡片信息时,智能电视根据下载指令从服务器下载相应的新上线卡片;当下载指令包括上线卡片名单时,智能电视可以查询上线卡片名单,当发现上线卡片名单中有相对于当前智能电视的新上线卡片时,智能电视从服务器下载相应的新上线卡片,并可以定时更新智能电视本地的上线卡片名单。
[0023]步骤S3,接收卡片列表启动指令,启动卡片列表;卡片列表包括多个卡片,每个卡片具有相应的互动功能。
[0024]其中,卡片列表为卡片APK,该卡片APK可以展示卡片的互动功能入口,用户可以通过卡片的互动功能入口进入卡片,从而可以使用卡片的互动功能。其中,当卡片列表启动时,卡片列表从智能电视的卡片中获取各待展示卡片,并在启动后,展示各待展示卡片的互动功能入口。
[0025]步骤S4,接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片。
[0026]其中,在接收到用户选择指令后,可以通过智能电视的互动框架SDK((Software Development Kit,软件开发工具包)中的宿主程序运行卡片列表中用户选择的相应卡片, 互动框架SDK在智能电视中预设虚拟机(预设虚拟机为任意虚拟机)上运行,从而可以实现不安装卡片,而可以通过预设虚拟机自动运行卡片,提高了用户体验。
[0027]根据本发明实施例一,在接收到卡片更新指令后,当卡片更新指令为下载指令时, 此时,服务器端存在根据运营后台的运营策略配置的新上线卡片(具有互动功能),根据下载指令从服务器下载新上线卡片,进而接收卡片列表启动指令,并可以通过宿主程序启动卡片列表,以及接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片,此时卡片在未安装的情况下运行,用户能够正常使用卡片的互动功能。从而智能电视可以临时上线运营后台根据运营策略配置的新卡片,且在不对智能电视中卡片进行安装操作的情况下,能够自动快速展示卡片的互动功能以被用户使用,有效提高了用户的互动体验。
[0028]实施例二
[0029]参照图2,示出了本发明实施例另一种智能电视互动功能卡片的框架管理方法的步骤流程图。该智能电视互动功能卡片的框架管理可以包括以下步骤:
[0030]步骤S21,接收卡片更新指令。
[0031]其中,卡片更新指令可以为下载指令、删除指令、弹出卡片指令等。
[0032]步骤S22,当卡片更新指令为下载指令时,根据下载指令从服务器下载新上线卡片。
[0033] 其中,步骤S21和步骤S22可以由智能电视中的互动框架SDK执行。具体地,在本发明的一个实施例中,卡片为一个插件/APK,下载新上线卡片即下载新上线卡片的APK文件。具体地,卡片的状态可以有两种:未上线(包括下线)和上线,其中,卡片上线也分模块,模块可以为轮播模块、有线电视模块、点播模块等,当卡片在所有模块均未上线时,卡片的状态为未上线,其中,卡片在所有模块下线时,卡片的状态为下线时;当卡片在任一模块上线时,卡片的状态为上线。
[0034]另外,卡片上线和下线可以由智能电视对应的运营后台进行审核与管理,运营后台可以根据运营策略开发新卡片,并可以配置卡片的状态和卡片上线的模块,以及修改服务器中上线卡片名单各卡片的状态和上线的模块,实现根据运营后台的运营策略维护服务器中上线卡片名单。其中,当运营后台根据运营策略上传开发的新卡片至服务器时,需要上传新卡片的APK文件,同时输入卡片ID、卡片名称、卡片简介、卡片上线模块、卡片排序等信息,之后在服务器的上线卡片名单中点击相应卡片的“上线”按钮或图标等,上传的卡片在服务器上正式上线,上线卡片可以给出卡片名称、卡片ID和卡片下载地址等;当运营后台根据运营策略修改卡片的状态为下线时,可以在服务器的上线卡片名单中点击相应卡片的 “下线”按钮或图标等,卡片在服务器上正式下线。具体地,在卡片上线和下线时,服务器可以记录卡片的上传时间、上线时间和下线时间,以便于运营后台进行查询或进行其它操作。
[0035]优选地,当服务器中上线卡片名单变化时,即上线卡片名单中有新上线卡片时,月艮务器可以通过发送卡片更新指令即时告知互动框架SDK,例如发送下载指令,下载指令可以包括新上线卡片信息,例如卡片名称、卡片ID等或上线卡片名单。其中,当下载指令包括新上线卡片信息时,互动框架SDK可以根据下载指令从服务器下载相应的新上线卡片;当下载指令包括上线卡片名单时,互动框架SDK可以查询下载指令中的上线卡片名单,当发现上线卡片名单中有相对于当前智能电视的新上线卡片时,互动框架SDK可以从服务器下载相应的新上线卡片,并可以定时更新智能电视本地的上线卡片名单。
[0036]需要说明的是,服务器新上线的卡片可以分为两种,即常驻卡片和弹出卡片。常驻卡片指在用户观看节目过程中,用户可以从卡片列表主动调出并使用互动功能的卡片。弹出卡片指在用户观看节目过程中弹出的卡片,弹出卡片通过服务器的推送信息进行弹出, 因此,弹出卡片在智能电视屏幕上的出现时机可以由运营后台根据运营策略灵活配置。其中,很多常驻卡片既可自动弹出,也可被用户随时调出查看或使用互动功能。步骤S23中, 当卡片更新指令为下载指令时,根据下载指令从服务器下载新上线常驻卡片。
[0037]步骤S23,对新上线卡片进行完整性校验。
[0038]其中,可以由互动框架SDK校验新上线卡片的APK文件中MD5值,以判断新上线卡片的APK文件是否出错或是否被篡改,从而保证下载APK文件的完整性。
[0039]步骤S24,解压新上线卡片的APK文件为预设格式文件。
[0040]预设格式可以为dex格式或其它智能电视中预设虚拟机(预设虚拟机为任意虚拟机)可以运行的格式。其中,步骤S24可以由智能电视中的互动框架SDK执行。
[0041]步骤S25,接收卡片列表启动指令,启动卡片列表;卡片列表包括多个卡片,每个卡片具有相应的互动功能。
[0042]其中,卡片列表为卡片APK,该卡片APK可以展示卡片的互动功能入口,用户可以通过卡片的互动功能入口进入卡片,从而可以使用卡片的互动功能。其中,步骤S25中,在接收到卡片列表启动指令后,可以由互动框架SDK中的宿主程序启动卡片列表,从而可以实现不安装卡片列表,而可以通过虚拟机自动运行卡片列表。当卡片列表启动时,卡片列表从智能电视的卡片中获取各待展示卡片,并在启动后,展示各待展示卡片的互动功能入口。 用户选择任一互动功能入口即可进入对应的卡片。
[0043]另外,根据用户当前观看节目的模块,卡片列表可以根据卡片的属性信息(包括卡片上线的模块等)展示不同卡片的互动功能入口。例如,卡片列表包括A卡片、B卡片、 C卡片,A卡片上线的模块为轮播模块、有线电视模块和点播模块,B卡片上线的模块为轮播模块和有线电视模块,C卡片上线的模块为点播模块。当用户当前观看节目在轮播模块或有线电视模块时,则卡片列表展示A卡片和B卡片的互动功能入口;当用户当前观看节目在点播t旲块时,则卡片列表展不A卡片和C卡片的互动功能入口。
[0044]步骤S26,接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片,包括:
[0045]步骤S27,通过宿主程序中的类加载器加载相应卡片的预设格式文件。
[0046]其中,当预设格式为dex格式时,类加载器可以为dexClassLoader类。具体地,步骤S24在步骤S27之前即可。
[0047]步骤S28,通过宿主程序中的预设代理类调用相应卡片的预设格式文件。
[0048]其中,宿主程序内部可以实现一个代理类DLProxyActivity,通过宿主程序中的预设代理类调用相应卡片的预设格式文件时,预设格式文件中代码需要继承该代理类DLProxyActivity。预设格式文件中代码需要实现代理类DLProxyActivity里边的指定方法,因此,在通过宿主程序中的预设代理类调用相应卡片的预设格式文件时,代理类 DLProxyActivity可以接管预设格式文件中代码里边的方法。从而代理类DLProxyActivity 调用预设格式文件时,实际上是调用宿主程序的代理类DLProxyActivity。
[0049]步骤S29,通过预设虚拟机运行宿主程序。
[0050]具体地,由于代理类DLProxyActivity是一个壳,代理类DLProxyActivity调用预设格式文件时,虚拟机实际运行的代码是预设格式文件中代码,从而实现了不安装卡片,而卡片可以自动运行。
[0051]其中,通过预设虚拟机运行宿主程序即步骤S29,可以包括:
[0052]步骤S291,更新宿主程序的资源路径为相应卡片的预设格式文件对应的资源路径。
[0053]步骤S291中,虚拟机实际运行的对象并不是预设格式文件本身,即虚拟机实际运行的对象上下文为代理类DLProxyActivity的上下文,因此,虚拟机无法直接访问预设格式文件中代码对应的资源(例如图片、文本等)路径,而在通过步骤S291更新宿主程序的资源路径为预设格式文件对应的资源路径后,虚拟机可以访问预设格式文件中代码对应的资源。
[0054]其中,步骤S291可以采用反射技术更新宿主程序的资源路径为预设格式文件对应的资源路径,具体方法对应的部分程序代码如下:
[0055]AssetManager assetManager = AssetManager.class, newlnstance ();
[0056]Method addAssetPath = assetManager.getClass ().getMethod(〃addAssetPath〃,String, class);
[0057]addAssetPath.1nvoke(assetManager, dexPath);
[0058] 上述程序代码用于根据预设格式文件对应的资源路径构建AssetManager对象, 并将预设格式文件对应的资源路径添加到AssetManager对象中。
[0059] 另外在,上述程序代码之后,可以通过AssetManager对象构建一个Resources对象,这个对象为预设格式文件对应的资源对象,虚拟机可以通过这个Resources对象访问预设格式文件中代码对应的资源,从而虚拟机运行宿主程序后,用户使用卡片的互动功能, 和卡片在智能电视中安装后,用户使用卡片的互动功能没有区别。
[0060] 步骤S210,当卡片更新指令为弹出卡片指令时,获取弹出卡片,并通过宿主程序运行弹出卡片。
[0061]其中,步骤S210中,当卡片更新指令为弹出卡片指令时,服务器的推送信息包括弹出卡片,从而可以直接获取弹出卡片。具体地,在步骤S210中通过宿主程序运行弹出卡片之前可以对弹出卡片进行完整性校验和解压弹出卡片的APK文件为预设格式文件,进而通过步骤S27、步骤S28和步骤S29实现运行弹出卡片。
[0062] 步骤S211,当卡片更新指令为下线指令时,根据下线指令删除相应卡片。
[0063] 其中,当卡片在服务器上正式下线时,服务器可以通过发送卡片更新指令即时告知智能电视中的互动框架SDK,例如发送删除指令,删除指令可以包括下线卡片信息例如卡片名称、卡片ID等,进而互动框架SDK可以根据删除指令删除卡片列表中相应的卡片,从而实现根据运营后台的运营策略灵活下线互动卡片。其中,删除卡片列表中相应的卡片可以为删除相应卡片的APK文件。
[0064] 具体地,在步骤S25中启动卡片列表时,智能电视中的互动框架SDK可以对卡片列表的界面展示逻辑进行管理。其中,在进行卡片列表的界面展示之前,互动框架SDK首先判断用户当前观看节目所在模块,进而通过跟各个模块(轮播模块、有线电视模块、点播模块等)的广播接口获取到当前节目信息,并将模块信息和当前节目信息同步给卡片列表中的各个常驻卡片,同时互动框架SDK过滤掉弹出卡片,卡片列表根据模块信息和常驻卡片的模块权限来展示不同常驻卡片的互动功能,使得用户认识到卡片列表展示常驻卡片的互动功能与当前观看节目相关,提高了用户的互动体验。另外,互动框架SDK的宿主程序可以运行弹出卡片,使弹出卡片的互动功能直接自动展现在智能电视上,从而用户可对弹出卡片进行进一步操作,而无需对弹出卡片进行安装,提高了用户体验。
[0065] 根据本发明实施例二,在接收到卡片更新指令后,当卡片更新指令为下载指令时, 此时,服务器存在根据运营后台的运营策略配置的新上线常驻卡片(具有互动功能),根据下载指令从服务器下载新上线常驻卡片,在通过MD5值对新上线常驻卡片进行完整性校验后,解压新上线常驻卡片的APK文件为预设格式文件例如dex格式文件,以及在接收卡片列表启动指令后,启动卡片列表,进而在接收用户选择指令后,通过宿主程序中的类加载器加载相应卡片的预设格式文件,并通过宿主程序中的预设代理类调用相应卡片的预设格式文件,以及通过预设虚拟机运行宿主程序,此时卡片在未安装的情况下运行,用户能够正常使用卡片的互动功能;当卡片更新指令为弹出卡片指令时,获取弹出卡片,并通过宿主程序运行弹出卡片,弹出卡片在智能电视屏幕上的出现时机可以由运营后台根据运营策略灵活配置;当卡片更新指令为下线指令时,根据下线指令删除相应卡片。从而智能电视可以临时上线运营后台根据运营策略配置的新常驻卡片,展示运营后台根据运营策略配置的弹出卡片,以及临时下线运营后台根据运营策略配置的卡片(包括常驻卡片和弹出卡片),且在不对卡片进行安装操作的情况下,能够自动快速展示卡片的互动功能以被用户使用,有效提尚了用户的互动体验。
[0066]实施例三
[0067]参照图3,示出了本发明实施例三的一种智能电视互动功能卡片的框架管理装置的结构框图。
[0068]本发明实施例的智能电视互动功能卡片的框架管理装置,可以包括:
[0069]指令接收模块310,用于接收卡片更新指令。
[0070]其中,卡片更新指令可以为下载指令、删除指令、弹出卡片指令等。
[0071]卡片下载模块320,用于当卡片更新指令为下载指令时,根据下载指令从服务器下载新上线卡片。
[0072]具体地,在本发明的一个实施例中,卡片为一个插件/APK(Android Package,安卓安装包),卡片下载模块320下载新上线卡片即下载新上线卡片的APK文件。具体地,卡片的状态可以有两种:未上线(包括下线)和上线,其中,卡片上线也分模块,模块可以为轮播模块、有线电视模块、点播模块等,当卡片在所有模块均未上线时,卡片的状态为未上线,其中,卡片在所有模块下线时,卡片的状态为下线时;当卡片在任一模块上线时,卡片的状态为上线。
[0073]另外,卡片上线和下线可以由智能电视对应的运营后台进行审核与管理,运营后台可以根据运营策略开发新卡片,并可以配置卡片的状态和卡片上线的模块,以及修改服务器中上线卡片名单各卡片的状态和上线的模块,实现根据运营后台的运营策略维护服务器中上线卡片名单。其中,当运营后台根据运营策略上传开发的新卡片至服务器时,需要上传新卡片的APK文件,同时输入卡片ID (Identity,身份标识号码)、卡片名称、卡片简介、卡片上线模块、卡片排序等信息,之后在服务器的上线卡片名单中点击相应卡片的“上线”按钮或图标等,上传的卡片在服务器上正式上线,上线卡片可以给出卡片名称、卡片ID和卡片下载地址等;当运营后台根据运营策略修改卡片的状态为下线时,可以在服务器的上线卡片名单中点击相应卡片的“下线”按钮或图标等,卡片在服务器上正式下线。具体地,在卡片上线和下线时,服务器可以记录卡片的上传时间、上线时间和下线时间,以便于运营后台进行查询或进行其它操作。
[0074]优选地,当服务器中上线卡片名单变化时,即上线卡片名单中有新上线卡片时,月艮务器可以通过发送卡片更新指令即时告知智能电视,例如发送下载指令,下载指令可以包括新上线卡片信息例如卡片名称、卡片ID等或上线卡片名单。其中,当下载指令包括新上线卡片信息时,卡片下载模块320根据下载指令从服务器下载相应的新上线卡片;当下载指令包括上线卡片名单时,卡片下载模块320可以查询上线卡片名单,当发现上线卡片名单中有相对于当前智能电视的新上线卡片时,卡片下载模块320从服务器下载相应的新上线卡片,并可以定时更新智能电视本地的上线卡片名单。
[0075]卡片列表启动模块330,用于接收卡片列表启动指令,启动卡片列表;卡片列表包括多个卡片,每个卡片具有相应的互动功能。
[0076]其中,卡片列表为卡片APK,该卡片APK可以展示卡片的互动功能入口,用户可以通过卡片的互动功能入口进入卡片,从而可以使用卡片的互动功能。其中,当卡片列表启动时,卡片列表从智能电视的卡片中获取各待展示卡片,并在启动后,展示各待展示卡片的互动功能入口。
[0077] 卡片运行模块340,用于接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片。
[0078] 其中,在卡片运行模块340接收到用户选择指令后,卡片运行模块340可以通过智能电视的互动框架SDK中的宿主程序运行卡片列表中用户选择的相应卡片,互动框架SDK 在智能电视中预设虚拟机(预设虚拟机为任意虚拟机)上运行,从而可以实现不安装卡片, 而可以通过预设虚拟机自动运行卡片,提高了用户体验。
[0079] 根据本发明实施例三,在指令接收模块接收到卡片更新指令后,当卡片更新指令为下载指令时,此时,服务器端存在根据运营后台的运营策略配置的新上线卡片(具有互动功能),卡片下载模块根据下载指令从服务器下载新上线卡片,进而卡片列表启动模块接收卡片列表启动指令,并可以通过宿主程序启动卡片列表,以及卡片运行模块接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片,此时卡片在未安装的情况下运行,用户能够正常使用卡片的互动功能。从而智能电视可以临时上线运营后台根据运营策略配置的新卡片,且在不对智能电视中卡片进行安装操作的情况下,能够自动快速展示卡片的互动功能以被用户使用,有效提高了用户的互动体验。[〇〇8〇] 实施例四
[0081] 参照图4,示出了本发明实施例四的另一种智能电视互动功能卡片的框架管理装置的结构框图。该智能电视互动功能卡片的框架管理装置,可以包括:
[0082] 指令接收模块310,用于接收卡片更新指令。
[0083] 其中,卡片更新指令可以为下载指令、删除指令、弹出卡片指令等。
[0084] 卡片下载模块320,用于当卡片更新指令为下载指令时,根据下载指令从服务器下载新上线卡片。
[0085] 其中,指令接收模块310和卡片下载模块320可以设置在智能电视中的互动框架 SDK中。具体地,在本发明的一个实施例中,卡片为一个插件/APK,卡片下载模块320下载新上线卡片即下载新上线卡片的APK文件。具体地,卡片的状态可以有两种:未上线(包括下线)和上线,其中,卡片上线也分模块,模块可以为轮播模块、有线电视模块、点播模块等,当卡片在所有模块均未上线时,卡片的状态为未上线,其中,卡片在所有模块下线时,卡片的状态为下线时;当卡片在任一模块上线时,卡片的状态为上线。
[0086] 另外,卡片上线和下线可以由智能电视对应的运营后台进行审核与管理,运营后台可以根据运营策略开发新卡片,并可以配置卡片的状态和卡片上线的模块,以及修改服务器中上线卡片名单各卡片的状态和上线的模块,实现根据运营后台的运营策略维护服务器中上线卡片名单。其中,当运营后台根据运营策略上传开发的新卡片至服务器时,需要上传新卡片的APK文件,同时输入卡片ID、卡片名称、卡片简介、卡片上线模块、卡片排序等信息,之后在服务器的上线卡片名单中点击相应卡片的“上线”按钮或图标等,上传的卡片在服务器上正式上线,上线卡片可以给出卡片名称、卡片ID和卡片下载地址等;当运营后台根据运营策略修改卡片的状态为下线时,可以在服务器的上线卡片名单中点击相应卡片的 “下线”按钮或图标等,卡片在服务器上正式下线。具体地,在卡片上线和下线时,服务器可以记录卡片的上传时间、上线时间和下线时间,以便于运营后台进行查询或进行其它操作。
[0087] 优选地,当服务器中上线卡片名单变化时,即上线卡片名单中有新上线卡片时,月艮务器可以通过发送卡片更新指令即时告知互动框架SDK,例如发送下载指令,下载指令可以包括新上线卡片信息,例如卡片名称、卡片ID等或上线卡片名单。其中,当下载指令包括新上线卡片信息时,卡片下载模块320可以根据下载指令从服务器下载相应的新上线卡片; 当下载指令包括上线卡片名单时,卡片下载模块320可以查询下载指令中的上线卡片名单,当发现上线卡片名单中有相对于当前智能电视的新上线卡片时,卡片下载模块320可以从服务器下载相应的新上线卡片,并可以定时更新智能电视本地的上线卡片名单。
[0088] 需要说明的是,服务器新上线的卡片可以分为两种,即常驻卡片和弹出卡片。常驻卡片指在用户观看节目过程中,用户可以从卡片列表主动调出并使用互动功能的卡片。弹出卡片指在用户观看节目过程中弹出的卡片,弹出卡片通过服务器的推送信息进行弹出, 因此,弹出卡片在智能电视屏幕上的出现时机可以由运营后台根据运营策略灵活配置。其中,很多常驻卡片既可自动弹出,也可被用户随时调出查看或使用互动功能。当卡片更新指令为下载指令时,卡片下载模块320根据下载指令从服务器下载新上线常驻卡片。
[0089] 校验模块350,用于在卡片下载模块320根据下载指令从服务器下载新上线卡片之后,对新上线卡片进行完整性校验。
[0090] 其中,校验模块350可以校验新上线卡片的APK文件中MD5值,以判断新上线卡片的APK文件是否出错或是否被篡改,从而保证下载APK文件的完整性。校验模块350可以设置在互动框架SDK中。
[0091] 文件解压模块360,用于解压新上线卡片的APK文件为预设格式文件。
[0092] 预设格式可以为dex格式或其它智能电视中预设虚拟机(预设虚拟机为任意虚拟机)可以运行的格式。其中,文件解压模块360可以设置在互动框架SDK中。
[0093] 卡片列表启动模块330,用于接收卡片列表启动指令,启动卡片列表;卡片列表包括多个卡片,每个卡片具有相应的互动功能。
[0094] 其中,卡片列表为卡片APK,该卡片APK可以展示卡片的互动功能入口,用户可以通过卡片的互动功能入口进入卡片,从而可以使用卡片的互动功能。其中,在接收到卡片列表启动指令后,卡片列表启动模块330可以通过互动框架SDK中的宿主程序启动卡片列表, 从而可以实现不安装卡片列表,而可以通过虚拟机自动运行卡片列表。当卡片列表启动时, 卡片列表从智能电视的卡片中获取各待展示卡片,并在启动后,展示各待展示卡片的互动功能入口。用户选择任一互动功能入口即可进入对应的卡片。
[0095]另外,根据用户当前观看节目的模块,卡片列表可以根据卡片的属性信息(包括卡片上线的模块等)展示不同卡片的互动功能入口。例如,卡片列表包括A卡片、B卡片、 C卡片,A卡片上线的模块为轮播模块、有线电视模块和点播模块,B卡片上线的模块为轮播模块和有线电视模块,C卡片上线的模块为点播模块。当用户当前观看节目在轮播模块或有线电视模块时,则卡片列表展示A卡片和B卡片的互动功能入口;当用户当前观看节目在点播t旲块时,则卡片列表展不A卡片和C卡片的互动功能入口。
[0096] 卡片运行模块340,用于接收用户选择指令,通过宿主程序运行卡片列表中的相应卡片,包括:
[0097]文件加载模块341,用于通过宿主程序中的类加载器加载相应卡片的预设格式文件。
[0098] 其中,当预设格式为dex格式时,类加载器可以为dexClassLoader类。具体地,文件解压模块360在文件加载模块341之前即可。
[0099]文件调用模块342,用于通过宿主程序中的预设代理类调用相应卡片的预设格式文件。
[0100]其中,宿主程序内部可以实现一个代理类DLProxyActivity,文件调用模块342通过宿主程序中的预设代理类调用相应卡片的预设格式文件时,预设格式文件中代码需要继承该代理类DLProxyActivity。预设格式文件中代码需要实现代理类DLProxyActivity 里边的指定方法,因此,在文件调用模块342通过宿主程序中的预设代理类调用相应卡片的预设格式文件时,代理类DLProxyActivity可以接管预设格式文件中代码里边的方法。从而代理类DLProxyActivity调用预设格式文件时,实际上是调用宿主程序的代理类 DLProxyActivity〇
[0101]程序运行模块343,用于通过预设虚拟机运行宿主程序。
[0102]具体地,由于代理类DLProxyActivity是一个壳,代理类DLProxyActivity调用预设格式文件时,虚拟机实际运行的代码是预设格式文件中代码,从而实现了不安装卡片,而卡片可以自动运行。
[0103]其中,程序运行模块343可以包括:
[0104]资源路径更新模块344,用于更新宿主程序的资源路径为相应卡片的预设格式文件对应的资源路径。
[0105]资源路径更新模块344中,虚拟机实际运行的对象并不是预设格式文件本身,即虚拟机实际运行的对象上下文为代理类DLProxyActivity的上下文,因此,虚拟机无法直接访问预设格式文件中代码对应的资源(例如图片、文本等)路径,而在资源路径更新模块 344更新宿主程序的资源路径为预设格式文件对应的资源路径后,虚拟机可以访问预设格式文件中代码对应的资源。
[0106]其中,资源路径更新模块344可以采用反射技术更新宿主程序的资源路径为预设格式文件对应的资源路径,具体方法对应的部分程序代码如下:
[0107]AssetManager assetManager = AssetManager.class, newlnstance ();
[0108]Method addAssetPath = assetManager.getClass ().getMethod(〃addAssetPath〃,String, class);
[0109]addAssetPath.1nvoke(assetManager, dexPath);
[0110]上述程序代码用于根据预设格式文件对应的资源路径构建AssetManager对象, 并将预设格式文件对应的资源路径添加到AssetManager对象中。
[0111]另外在,上述程序代码之后,可以通过AssetManager对象构建一个Resources对象,这个对象为预设格式文件对应的资源对象,虚拟机可以通过这个Resources对象访问预设格式文件中代码对应的资源,从而虚拟机运行宿主程序后,用户使用卡片的互动功能, 和卡片在智能电视中安装后,用户使用卡片的互动功能没有区别。
[0112]弹出卡片管理模块370,用于当卡片更新指令为弹出卡片指令时,获取弹出卡片, 并通过宿主程序运行弹出卡片。
[0113]其中,当卡片更新指令为弹出卡片指令时,服务器的推送信息包括弹出卡片,从而弹出卡片管理模块370可以直接获取弹出卡片。具体地,在弹出卡片管理模块370通过宿主程序运行弹出卡片之前可以通过校验模块350对弹出卡片进行完整性校验和通过文件解压模块360解压弹出卡片的APK文件为预设格式文件,进而通过文件加载模块341、文件调用模块342和程序运行模块343实现运行弹出卡片。
[0114]卡片删除模块380,用于当卡片更新指令为下线指令时,根据下线指令删除相应卡片。
[0115]其中,当卡片在服务器上正式下线时,服务器可以通过发送卡片更新指令即时告知智能电视中的互动框架SDK,例如发送删除指令,删除指令可以包括下线卡片信息例如卡片名称、卡片ID等,进而卡片删除模块380可以根据删除指令删除卡片列表中相应的卡片, 从而实现根据运营后台的运营策略灵活下线互动卡片。其中,删除卡片列表中相应的卡片可以为删除相应卡片的APK文件。
[0116]具体地,在卡片列表启动模块330启动卡片列表时,智能电视中的互动框架SDK可以对卡片列表的界面展示逻辑进行管理。其中,在进行卡片列表的界面展示之前,互动框架SDK首先判断用户当前观看节目所在模块,进而通过跟各个模块(轮播模块、有线电视模块、点播模块等)的广播接口获取到当前节目信息,并将模块信息和当前节目信息同步给卡片列表中的各个常驻卡片,同时互动框架SDK过滤掉弹出卡片,卡片列表根据模块信息和常驻卡片的模块权限来展示不同常驻卡片的互动功能,使得用户认识到卡片列表展示常驻卡片的互动功能与当前观看节目相关,提高了用户的互动体验。另外,互动框架SDK的宿主程序可以运行弹出卡片,使弹出卡片的互动功能直接自动展现在智能电视上,从而用户可对弹出卡片进行进一步操作,而无需对弹出卡片进行安装,提高了用户体验。
[0117] 根据本发明实施例四,在指令接收模块接收到卡片更新指令后,当卡片更新指令为下载指令时,此时,服务器存在根据运营后台的运营策略配置的新上线常驻卡片(具有互动功能),卡片下载模块根据下载指令从服务器下载新上线常驻卡片,在校验模块通过 MD5值对新上线常驻卡片进行完整性校验后,文件解压模块解压新上线常驻卡片的APK文件为预设格式文件例如dex格式文件,以及在接收卡片列表启动指令后,卡片列表启动模块启动卡片列表,进而在卡片运行模块接收用户选择指令后,文件加载模块通过宿主程序中的类加载器加载相应卡片的预设格式文件,文件调用模块并通过宿主程序中的预设代理类调用相应卡片的预设格式文件,以及程序运行模块通过预设虚拟机运行宿主程序,此时卡片在未安装的情况下运行,用户能够正常使用卡片的互动功能;当卡片更新指令为弹出卡片指令时,弹出卡片管理模块获取弹出卡片,并通过宿主程序运行弹出卡片,弹出卡片在智能电视屏幕上的出现时机可以由运营后台根据运营策略灵活配置;当卡片更新指令为下线指令时,卡片删除模块根据下线指令删除相应卡片。从而智能电视可以临时上线运营后台根据运营策略配置的新常驻卡片,展示运营后台根据运营策略配置的弹出卡片,以及临时下线运营后台根据运营策略配置的卡片(包括常驻卡片和弹出卡片),且在不对卡片进行安装操作的情况下,能够自动快速展示卡片的互动功能以被用户使用,有效提高了用户的互动体验。
[0118]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0119]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0120]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种智能电视互动功能卡片的框架管理方法,其特征在于,包括以下步骤:接收卡片更新指令;当所述卡片更新指令为下载指令时,根据所述下载指令从服务器下载新上线卡片;接收卡片列表启动指令,启动卡片列表;所述卡片列表包括多个卡片,每个所述卡片具 有相应的互动功能;接收用户选择指令,通过宿主程序运行所述卡片列表中的相应卡片。2.根据权利要求1所述的方法,其特征在于,还包括:解压新上线卡片的APK文件为预设格式文件。3.根据权利要求2所述的方法,其特征在于,所述通过宿主程序运行所述卡片列表中 的相应卡片,包括:通过所述宿主程序中的类加载器加载相应卡片的预设格式文件;通过所述宿主程序中的预设代理类调用所述相应卡片的预设格式文件;通过预设虚拟机运行所述宿主程序。4.根据权利要求3所述的方法,其特征在于,所述通过预设虚拟机运行所述宿主程序, 包括:更新所述宿主程序的资源路径为所述相应卡片的预设格式文件对应的资源路径。5.根据权利要求1所述的方法,其特征在于,还包括:当所述卡片更新指令为下线指令时,根据所述下线指令删除相应卡片。6.根据权利要求1所述的方法,其特征在于,还包括:当所述卡片更新指令为弹出卡片指令时,获取弹出卡片,并通过所述宿主程序运行所 述弹出卡片。7.根据权利要求1所述的方法,其特征在于,在所述根据所述下载指令从服务器下载 新上线卡片之后,还包括:对所述新上线卡片进行完整性校验。8.—种智能电视互动功能卡片的框架管理装置,其特征在于,包括:指令接收模块,用于接收卡片更新指令;卡片下载模块,用于当所述卡片更新指令为下载指令时,根据所述下载指令从服务器 下载新上线卡片;卡片列表启动t吴块,用于接收卡片列表启动指令,启动卡片列表;所述卡片列表包括多 个卡片,每个所述卡片具有相应的互动功能;卡片运行模块,用于接收用户选择指令,通过宿主程序运行所述卡片列表中的相应卡片。9.根据权利要求8所述的装置,其特征在于,还包括:文件解压模块,用于解压新上线卡片的APK文件为预设格式文件。10.根据权利要求9所述的装置,其特征在于,所述卡片运行模块包括:文件加载模块,用于通过所述宿主程序中的类加载器加载相应卡片的预设格式文件; 文件调用模块,用于通过所述宿主程序中的预设代理类调用所述相应卡片的预设格式 文件;程序运行模块,用于通过预设虚拟机运行所述宿主程序。11.根据权利要求10所述的装置,其特征在于,所述程序运行模块包括:资源路径更新模块,用于更新所述宿主程序的资源路径为所述相应卡片的预设格式文 件对应的资源路径。12.根据权利要求8所述的装置,其特征在于,还包括:卡片删除模块,用于当所述卡片更新指令为下线指令时,根据所述下线指令删除相应卡片。13.根据权利要求8所述的装置,其特征在于,还包括:弹出卡片管理模块,用于当所述卡片更新指令为弹出卡片指令时,获取弹出卡片,并通 过所述宿主程序运行所述弹出卡片。14.根据权利要求8所述的装置,其特征在于,还包括:校验模块,用于在所述卡片下载模块根据所述下载指令从服务器下载新上线卡片之 后,对所述新上线卡片进行完整性校验。
【文档编号】H04N21/81GK105979384SQ201510657046
【公开日】2016年9月28日
【申请日】2015年10月13日
【发明人】胡胜杰, 王敏, 徐彬
【申请人】乐视致新电子科技(天津)有限公司