CN112783577A - 一种应用启动的方法及显示设备 - Google Patents

一种应用启动的方法及显示设备 Download PDF

Info

Publication number
CN112783577A
CN112783577A CN202110275527.5A CN202110275527A CN112783577A CN 112783577 A CN112783577 A CN 112783577A CN 202110275527 A CN202110275527 A CN 202110275527A CN 112783577 A CN112783577 A CN 112783577A
Authority
CN
China
Prior art keywords
application
package
application package
path
platform
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
Application number
CN202110275527.5A
Other languages
English (en)
Inventor
商潮
朱子鸣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vidaa Netherlands International Holdings BV
Vidaa USA Inc
Original Assignee
Vidaa Netherlands International Holdings BV
Vidaa USA Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Vidaa Netherlands International Holdings BV, Vidaa USA Inc filed Critical Vidaa Netherlands International Holdings BV
Priority to CN202110275527.5A priority Critical patent/CN112783577A/zh
Publication of CN112783577A publication Critical patent/CN112783577A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了在上述实施例中,一种应用启动的方法及显示设备,将使用http协议启动的网页应用转换为file协议启动,提高了加载速度。该方法包括:接收启动应用的指令,确定所述应用对应的应用配置路径;将所述应用配置路径,变换为实际访问路径;根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。

Description

一种应用启动的方法及显示设备
技术领域
本申请涉及网页应用的技术领域,尤其涉及一种应用启动的方法及显示设备。
背景技术
随着HTML5(Hyper Text Markup Language5,超文本标记语言5)及相关技术,示例性的,CSS,JavaScript的发展,目前采用HTML5技术开发的网页应用(Web App)越来越被广大开发者接受和青睐,相对于传统的本地应用(Native App),网页应用有着开发成本较低、升级较简单、维护轻松且节省用户存储空间等优越性,但是随之而来的也带来了很多问题。
示例性的,相关技术中网页应用开发者直接将网页应用对应的URL(UniformResource Locator,统一资源定位器)发送到平台,但是网页应用的相关内容还是存储在开发者服务器中,当用户需要通过显示设备使用该网页应用时,显示设备需要利用平台中的URL从开发者服务器中下载网页应用的相关内容后才可使用,这样网页应用启动时,加载网页应用较慢,用户体验差。
发明内容
本申请实施例提供一种应用启动的方法及显示设备,提升用户体验。
第一方面,提供一种显示设备,包括:
显示器,用于显示用户界面;
用户接口,用于接收输入信号;
分别与显示器和用户接口连接的控制器,用于执行:
接收启动应用的指令,确定所述应用对应的应用配置路径;
将所述应用配置路径,变换为实际访问路径;
根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。
一些实施例中,所述控制器被配置为按照下述步骤执行将所述应用配置路径,变换为实际访问路径:
如果所述应用配置路径的格式为预设格式,则解析所述应用配置路径,得到应用编号;
在索引文件中查找到与所述应用编号对应的应用包的位置;
根据所述应用包的位置,查找到应用包,并解析应用包中的配置文件,确定应用链接类型;
如果所述应用链接类型为预设类型,则将应用链接类型的字段与应用包位置的字段进行组合,得到实际访问路径。
一些实施例中,所述控制器,在所述接收启动应用的指令之前,还用于执行:接收下载应用包的指令,下载平台中的应用包,其中,所述平台存储有已经上线的应用包。
一些实施例中,所述控制器,在接收下载应用包的指令之前,还用于执行:
获取配置文件,生成应用包;
将所述应用包发送到平台,以使所述平台对所述应用包审核,如果接收到平台发送的审核通过的消息,将与所述应用包上线,其中,所述配置文件是指应用的基本信息。
一些实施例中,生成所述应用包的内容还包括资源文件;所述资源文件是指供应用离线使用的资源。
一些实施例中,所述配置文件包括版本信息,所述版本信息用于判断所述显示设备上的应用是否需要更新,如果需要更新,在显示器上显示提示更新消息。
一些实施例中,所述控制器,还用于执行:
利用应用包,生成应用包签名,发送所述应用包签名到平台;
所述平台对所述应用包审核的步骤包括:所述平台对所述应用包签名进行验证;如果验证成功,则对所述应用包进行审核。
第二方面,提供一种应用启动的方法,包括:
接收启动应用的指令,确定所述应用的应用配置路径;
将所述应用配置路径,变换为实际访问路径;
根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。
一些实施例中,所述将所述应用配置路径,变换为实际访问路径的步骤包括:
如果所述应用配置路径的格式为预设格式,则解析所述应用配置路径,得到应用编号;
在索引文件中查找到与所述应用编号对应的应用包的位置;
根据所述应用包的位置,查找到应用包,并解析应用包中的配置文件,确定应用链接类型;
如果所述应用链接类型为预设类型,则将应用链接类型的字段与应用包位置的字段进行组合,得到实际访问路径。
一些实施例中,在所述接收启动应用的指令之前,所述方法还包括:接收下载应用包的指令,下载平台中的应用包,其中,所述平台存储有已经上线的应用包。
在上述实施例中,一种应用启动的方法及显示设备,将使用http协议启动的网页应用转换为file协议启动,提高了加载速度。该方法包括:接收启动应用的指令,确定所述应用对应的应用配置路径;将所述应用配置路径,变换为实际访问路径;根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。
附图说明
图1示出了根据一些实施例的显示设备的使用场景;
图2示出了根据一些实施例的控制装置100的硬件配置框图;
图3示出了根据一些实施例的显示设备200的硬件配置框图;
图4示出了根据一些实施例的显示设备200中软件配置图;
图5中示例性示出了根据一些实施例的一种网页应用本地化部署系统的架构图;
图6中示例性示出了根据一些实施例的应用包上线流程;
图7中示例性示出了根据一些实施例的启动应用的流程图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语″第一〞、″第二〞、″第三″等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语″包括″和″具有″以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
术语″模块″是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
图1为根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过智能设备300或控制装置100操作显示设备200。
在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。
在一些实施例中,也可以使用智能设备300(如移动终端、平板电脑、计算机、笔记本电脑等)以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。
在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。
在一些实施例中,显示设备200还与服务器400进行数据通信。可允许显示设备200通过局域网(LAN)、无线局域网(WLAN)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。
图2示例性示出了根据示例性实施例中控制装置100的配置框图。如图2所示,控制装置100包括控制器110、通信接口130、用户输入/输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。
图3示出了根据示例性实施例中显示设备200的硬件配置框图。
在一些实施例中,显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口中的至少一种。
在一些实施例中控制器包括处理器,视频处理器,音频处理器,图形处理器,RAM,ROM,用于输入/输出的第一接口至第n接口。
在一些实施例中,显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控UI界面。
在一些实施例中,显示器260可为液晶显示器、OLED显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。
在一些实施例中,通信器220是用于根据各种通信协议类型与外部设备或服务器进行通信的组件。例如:通信器可以包括Wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。显示设备200可以通过通信器220与外部控制设备100或服务器400建立控制信号和数据信号的发送和接收。
在一些实施例中,用户接口,可用于接收控制装置100(如:红外遥控器等)的控制信号。
在一些实施例中,检测器230用于采集外部环境或与外部交互的信号。例如,检测器230包括光接收器,用于采集环境光线强度的传感器;或者,检测器230包括图像采集器,如摄像头,可以用于采集外部环境场景、用户的属性或用户交互手势,再或者,检测器230包括声音采集器,如麦克风等,用于接收外部声音。
在一些实施例中,外部装置接口240可以包括但不限于如下:高清多媒体接口接口(HDMI)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(CVBS)、USB输入接口(USB)、RGB端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。
在一些实施例中,调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及EPG数据信号。
在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。
在一些实施例中,控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器260上显示UI对象的用户命令,控制器250便可以执行与由用户命令选择的对象有关的操作。
在一些实施例中,所述对象可以是可选对象中的任何一个,例如超链接、图标或其他可操作的控件。与所选择的对象有关操作有:显示连接到超链接页面、文档、图像等操作,或者执行与所述图标相对应程序的操作。
在一些实施例中控制器包括中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(Graphics Processing Unit,GPU),RAM Random AccessMemory,RAM),ROM(Read-Only Memory,ROM),用于输入/输出的第一接口至第n接口,通信总线(Bus)等中的至少一种。
CPU处理器。用于执行存储在存储器中操作系统和应用程序指令,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。CPU处理器,可以包括多个处理器。如,包括一个主处理器以及一个或多个子处理器。
在一些实施例中,图形处理器,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。图形处理器包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象;还包括渲染器,对基于运算器得到的各种对象,进行渲染,上述渲染后的对象用于显示在显示器上。
在一些实施例中,视频处理器,用于将接收外部视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等视频处理,可得到直接可显示设备200上显示或播放的信号。
在一些实施例中,视频处理器,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。其中,解复用模块,用于对输入音视频数据流进行解复用处理。视频解码模块,用于对解复用后的视频信号进行处理,包括解码和缩放处理等。图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的GUI信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。帧率转换模块,用于对转换输入视频帧率。显示格式化模块,用于将接收帧率转换后视频输出信号,改变信号以符合显示格式的信号,如输出RGB数据信号。
在一些实施例中,音频处理器,用于接收外部的音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等处理,得到可以在扬声器中播放的声音信号。
在一些实施例中,用户可在显示器260上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
在一些实施例中,″用户界面″,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(Graphic User Interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
在一些实施例中,显示设备的系统可以包括内核(Kernel)、命令解析器(shell)、文件系统和应用程序。内核、shell和文件系统一起组成了基本的操作系统结构,它们让用户可以管理文件、运行程序并使用系统。上电后,内核启动,激活内核空间,抽象硬件、初始化硬件参数等,运行并维护虚拟内存、调度器、信号及进程间通信(IPC)。内核启动后,再加载Shell和用户应用程序。应用程序在启动后被编译成机器码,形成一个进程。
如图4所示,显示设备的系统可以包括内核(Kernel)、命令解析器(shell)、文件系统和应用程序。内核、shell和文件系统一起组成了基本的操作系统结构,它们让用户可以管理文件、运行程序并使用系统。上电后,内核启动,激活内核空间,抽象硬件、初始化硬件参数等,运行并维护虚拟内存、调度器、信号及进程间通信(IPC)。内核启动后,再加载Shell和用户应用程序。应用程序在启动后被编译成机器码,形成一个进程。
如图4所示,将显示设备的系统分为三层,从上至下分别为应用层、中间件层和硬件层。
应用层主要包含电视上的常用应用,以及应用框架(Application Framework),其中,常用应用主要是基于浏览器Browser开发的应用,例如:HTML5 APPs;以及原生应用(Native APPs);
应用框架(Application Framework)是一个完整的程序模型,具备标准应用软件所需的一切基本功能,例如:文件存取、资料交换...,以及这些功能的使用接口(工具栏、状态列、菜单、对话框)。
原生应用(Native APPs)可以支持在线或离线,消息推送或本地资源访问。
中间件层包括各种电视协议、多媒体协议以及系统组件等中间件。中间件可以使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。
硬件层主要包括HAL接口、硬件以及驱动,其中,HAL接口为所有电视芯片对接的统一接口,具体逻辑由各个芯片来实现。驱动主要包含:音频驱动、显示驱动、蓝牙驱动、摄像头驱动、WIFI驱动、USB驱动、HDMI驱动、传感器驱动(如指纹传感器,温度传感器,压力传感器等)、以及电源驱动等。
随着HTML5(Hyper Text Markup Language5,超文本标记语言5)及相关技术,示例性的,CSS,JavaScript的发展,目前采用HTML5技术开发的网页应用(Web App)越来越被广大开发者接受和青睐,相对于传统的本地应用(Native App),网页应用有着开发成本较低、升级较简单、维护轻松且节省用户存储空间等优越性,但是随之而来的也带来了很多问题。
示例性的,相关技术中网页应用开发者直接将网页应用对应的URL(UniformResource Locator,统一资源定位器)发送到平台,但是网页应用的相关内容还是存储在开发者服务器中,当用户需要通过显示设备使用该网页应用时,显示设备需要利用平台中的URL从开发者服务器中下载网页应用的相关内容后才可使用,这样网页应用启动时,加载网页应用较慢,用户体验差。
除了上述提到的网页应用启动时加载慢,用户体验差的问题,相关技术中的网页应用技术中还包括以下四个方面的问题:一、网页应用中的部分功能可能无网络需求,但是当前也无法离线使用,示例性的,单机游戏以及屏保等。二、对第三方网络应用更新以及管控力度不足,相关技术中网页应用开发者可任意更改网页应用而不通知显示设备。三、第三方网络应用调用显示设备系统API(Application Programming Interface,应用程序接口),限制不足,权限管理难。四、使用URL访问不安全,其他显示设备也可以通过此链接访问网页应用。该URL被其他厂商的显示设备访问,这样就会给开发者服务器带来一定的风险。
经过研究,以上问题的产生,根本原因是网页应用代码位于开发者服务器上,显示设备无法管控到开发者服务器,只能通过网络从开发者服务器中下载。为了解决这些问题,相关技术中将网络应用代码放到本地进行管控,行业中一些厂商为了解决这些痛点,大多采用系统深度集成的方式,要求网页应用方开发时就适配到系统中,与系统高度耦合,与本地应用行为基本一致。对于网页应用的开发者来说,开发出来的应用只能在此系统中使用,开发成本较高,反而与网页应用技术的优越性背道而驰。
本申请实施例提供一种网页应用本地化部署系统,如图5所示,所述系统的整体架构包括最上层、接口层和最底层。网页应用程序位于最上层,本系统支持三种应用,第一种为平台第一方应用,如平台自带的应用商店。第二种为本地应用,不依赖于网络,本地就可以运行,示例性的,可以为电子说明书。第三种为第三方网页应用,也是本申请主要面向的对象,相关技术中第三方网络应用的所有资源托管在第三方服务器上,用户需要实时从服务器中获取资源,如代码、图片和字体等。
所述最底层包括开发者工具和浏览器引擎,负责接受接口层的请求和处理浏览器启动时的url映射等。其中,所述开发者工具包括应用打包工具,应用上线工具,配置文件生成工具,签名生成工具。所述应用打包工具为应用方提供应用打包的功能。所述应用上线工具提供应用包上传到平台的功能。本申请实施例中,所述签名生成工具为应用包提供签名的功能,为了避免应用包在上传到平台的过程中出现安全问题,示例性的,可能出现应用包被篡改的现象。应用包通过该签名生成工具得到签名,将签名和应用包一同上传到平台,平台利用签名确定应用包是否被篡改,如果被篡改可以将该应用包舍弃。所述配置文件生成工具为开发者提供填写应用的配置参数的功能。实际使用时通过开发者页面填写配置参数后页面会自行调用相关接口并返回结果,最终生成配置文件,其中,所述开发者页面可以为用户通过控制装置在显示设备的用户界面上操作打开。示例性的,用户可以将浏览器地址栏中输入特定地址进入开发者页面,填写配置参数后,通过控制装置点击提交控件,此时自动调用接口执行相关脚本生成配置文件。开发者工具中的各工具模块对应用方来说是不可见的。
浏览器引擎用于启动和管理应用,内部包含很多功能模块,示例性的,包括地址计划模块(URL Scheme模块)、渲染模块(Splash模块)、权限控制模块、软件安装模块、空间管理模块和更新下载模块。该浏览器引擎扩展性强,可以简单的添加新的功能模块,所述浏览器引擎中的功能模块对应用方不可见,仅可以通过浏览器接口调用。所述渲染模块用于提供渲染用户界面的功能。所述权限控制模块用于提供权限的判断和处理功能。所述软件安装模块用于提供安装应用的功能,所述空间管理模块用于统计当前可用空间。所述更新下载模块用于判断应用是否更新,以及下载应用包的功能。
接口层位于最上层和最底层之间,可供应用方使用,大部分接口仅作为数据传递作用,没有太多逻辑,其中开发者工具的相关接口只能通过特殊方式来打开,示例性的,使用浏览器进入特定的调试页面或者类似手机连续点击某个地方来进入。所述浏览器接口,通过用户脚本的方式将JavaScript接口注入到应用页中,应用可以通过接口调用到开发者工具或浏览器引擎中的相关接口,同时可以将应用信息发送到浏览器引擎中识别处理。
一些实施例中,基于上述网页应用本地化部署系统,实现一种应用启动的方法。
获取配置文件,生成应用包。本申请实施例中,用户可以通过开发者工具生成配置文件。用户可以通过相应操作,使显示设备上显示填写配置参数的用户界面,填写配置参数后生成配置文件。示例性的,所述配置文件格式如下所示:
{
//app info(required)
″pkgname″:〞com.vidaa.myapp〞,
″appname″:〞MyApp〞,
″version″:″1.0.0″,
″description〞:〞a plain text description″,
″type″:″packaged″,
″resolution″:″hd〞,
″manifest_version〞:1
//index path(required)
″index″:〞index.html″,
//permissions list(required)
″permissions″:[″systeminfo″,″file〞,″pay″],
//splash screen resources(optional)
″splash〞:{
″enable_pkg_splash〞:true,
″image″:〞resources/bg.png″,
″icon″:〞resources/icon_128.png″
}
}
一些实施例中,所述配置文件是指应用的基本信息,所述配置文件的格式可根据需求扩展。
一些实施例中,所述配置文件包括版本信息,所述版本信息用于判断所述显示设备上的应用是否需要更新,如果需要更新,在显示器上显示提示更新消息。
一些实施例中,所述配置文件还包括权限信息,权项信息在开发者页面中自行填写,并由平台审核。示例性的,所述权限信息(permissions)包括是否允许应用获取系统参数(systeminfo),是否允许应用操作系统特定目录的文件读写(file),以及,是否允许应用使用支付相关接口(pay)。其中,是否允许应用获取系统参数为最基础的接口。应用权限的判断和处理位于浏览器引擎中,当应用调用到无权限使用的接口,会直接返回失败。
本申请实施例中,将所述应用包发送到平台,以使所述平台对所述应用包审核,如果接收到平台发送的审核通过的消息,将与所述应用包上线,如图6所示。
一些实施例中,生成所述应用包的内容还包括资源文件;所述资源文件是指供应用离线使用的资源。
只需要应用方将此类资源文件放到应用包中并在其他页面设置好引导即可,用户访问时所有页面所在本地,无需实时通过网络下载。单机游戏以及屏保等都可以离线使用。
除离线页面外,应用方可自行选择需要打包到应用包的资源文件,包括但不限于以下文件:可以离线使用的html(标签)、js(脚本语言)、css(层叠样式表)、图片、字体及部分视频/音频等,并在配置文件中指定资源的相对路径。如果应用无需要打包的资源,系统会对这类应用进行自动配置,会自动生成一个主页网页入口并重定向到应用页面,但是此类应用权限较低,将无法访问部分系统接口。
通过对应用部分资源打包,将使用http协议(请求-响应协议)启动的网页应用转换为file协议(文件协议)启动,提高了加载速度;通过本地配置文件的方式使本来不可控的网页应用拥有了权限控制、更新管理等功能。网页应用的第三方开发人员使用此开发,无需深度集成,除填写必要的配置信息外,基本不需要进行额外的开发工作,技术栈与开发网页应用完全相同,节省开发成本,进而可以更好的吸引更多第三方应用开发者进驻平台,进一步丰富化平台媒资内容,提高产品竞争力。
相关技术中,应用开发结束后直接发送应用的URL链接到平台,平台审核测试通过后上线该应用的URL,其中,上线是指该应用公开,应用可以被用户所使用。但是在实际操作中,当需要使用应用时,利用URL从服务器中下载相关内容后才能使用,导致启动应用时加载慢的问题。本申请实施例中,设置有资源文件,这样无需在使用应用时即时下载相关内容,而是直接将资源文件存储在本地,当使用应用时利用本地的资源文件启动应用。使用此流程后,首次进入应用的时间显著提升,经过测试,首屏进入应用性能提升50%以上。应用方也可随时通过开发者工具接口来提交新的应用包。
示例性的,所述应用包的结构如下所示:
package(应用包)
myapp(我的应用)/
Index.html(应用入口)
manifest.json(配置文件)
resources_file/(资源文件)
MyApp.css(层叠样式表)
MyApp.js(脚本语言)
Splash(渲染)
font(文本的字体、字体尺寸、字体颜色)
logo(标识)
一些实施例中,利用应用包,生成应用包签名,发送所述应用包签名到平台;所述平台对所述应用包审核的步骤包括:所述平台对所述应用包签名进行验证;如果验证成功,则对所述应用包进行审核。本申请实施例中,为了保证应用包在从显示设备上传到服务器的过程中没有被篡改。本申请实施例利用签名,验证所述应用包。如果验证成功,再将应用包审核,如果验证失败,则平台不对该应用包审核,节约资源。
当应用被上线,此时根据版本信息,确定该应用存在新的应用包。此时,用户可以下载以及安装应用包,使用户使用功能较新的应用。
一些实施例中,接收下载应用包的指令,下载平台中的应用包,其中,所述平台存储有已经上线的应用包。本申请实施例中,所述用户下载应用的指令可以为用户通过控制装置,选择下载控件,并按压控制装置上的确认键生成的。
应用包下载完毕,当接收用户安装应用的指令,利用所述应用包安装所述应用。其中,用户安装应用的指令可以通过控制装置将选择器移动到安装控件上,并按压控制装置上的确认键生成。
一些实施例中,如图7所示,所述启动应用的方法包括:S100、接收启动应用的指令,确定所述应用的应用配置路径。本申请实施例中,所述应用安装在显示设备上,用户通过控制装置选中应用控件,并按压控制装置上的确认键,生成启动应用的指令。平台为每一个应用分配一个唯一的应用编号,同时利用应用编号生成应用配置路径。显示设备下载应用包到显示设备的同时,也接收该应用的应用配置路径。示例性的,应用配置路径如下:
<Scheme>://<host>[:<port>]/<action>/<id>。具体参数见下表:
Figure BDA0002976477420000121
示例性的,应用的唯一应用编号为12345。此时配置应用路径可以为vidaa://apps/launch/12345。
一些实施例中,浏览器引擎将所述应用配置路径,变换为实际访问路径。由于外界只能获取到应用配置路径,而本申请不直接利用应用配置路径去查找应用入口,而是利用应用变换后的实际访问路径查找应用入口,这样可以对应用入口起到保护,提高安全性。
相关技术中使用应用URL访问不安全,其他终端也可以通过此链接访问应用,影响应用服务器。为了解决此痛点,本申请实施例引入了Scheme跳转协议进行应用访问,外界无法通过抓包等方式获取到应用地址。网页应用打包上传并审核通过后,会分配一个唯一的应用编号,为了应用的路径和内部结构不对外暴露,本方案使用Scheme跳转协议进行url映射。模块选择自定义Scheme,隐藏细节,将路径管理与依赖保留在模块内部,实现UI/云端平台无关。
一些实施例中,S200、将所述应用配置路径,变换为实际访问路径的步骤包括:
如果所述应用配置路径的格式为预设格式,则解析所述应用配置路径,得到应用编号。本申请实施例中,经过开发者工具上传的应用在本地存储有对应的配置文件和资源文件。所以本申请实施例中首次判断需要启动的应用是否为在第三方开发者上传的应用。由于第三方开发者上传的应用均存在一个特定的应用配置路径,该应用配置路径的格式为预设格式。所以首先判断应用配置路径的格式是否为预设格式,如果是,则解析所述应用配置路径,得到应用编号。示例性的,所述预设格式为应用配置路径具有特定的字符。当应用配置路径中存在vidaa字符时,确定应用配置路径的格式为预设格式。应用配置路径为vidaa://apps/launch/12345,应用编号为12345。
一些实施例中,在索引文件中查找到与所述应用编号对应的应用包的位置。本申请实施例中,所述索引文件预置在本地,所述索引文件上显示有应用编号以及对应的应用包的位置。示例性的,通过应用编号12345,在索引文件中查找到应用包的位置为file://sports/。
根据所述应用包的位置,查找到本地存储的应用包,并解析应用包中的配置文件,确定应用链接类型。如果所述应用链接类型为预设类型,则将应用链接类型的字段与应用包位置的字段进行组合,得到实际访问路径。本申请实施例中所述预设类型为index.html。示例性的,如上文中举例提到的配置文件格式中//index path(required)″index″:〞index.html〞,此时确定应用链接类型为index.html,应用链接类型为预设类型,应用包的位置为file://sports/。将应用链接类型index.html与应用包的位置file://sports/结合,得到实际访问路径file://sports/index.html。该实际访问路径为应用入口的真实位置,所以当应用配置路径被外界获得,也不能得到应用入口,提高应用入口的安全性。本申请实施例中应用连接类型还可以为http类型,此时不是预设类型,如果是http类型,会建立一个html文件,然后在这个文件里跳转到http网站。
本申请实施例S300、根据所述实际访问路径,查找应用入口;利用所述应用入口,启动所述应用。
上述实施例中,一种应用启动的方法及显示设备,将使用http协议启动的网页应用转换为file协议启动,提高了加载速度。该方法包括:接收启动应用的指令,确定所述应用对应的应用配置路径;将所述应用配置路径,变换为实际访问路径;根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用所述实施方式以及适于具体使用考虑的各种不同的变形的实施方式。

Claims (10)

1.一种显示设备,其特征在于,包括:
显示器,用于显示用户界面;
用户接口,用于接收输入信号;
分别与显示器和用户接口连接的控制器,用于执行:
接收启动应用的指令,确定所述应用对应的应用配置路径;
将所述应用配置路径,变换为实际访问路径;
根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。
2.根据权利要求1所述的显示设备,其特征在于,所述控制器被配置为按照下述步骤执行将所述应用配置路径,变换为实际访问路径:
如果所述应用配置路径的格式为预设格式,则解析所述应用配置路径,得到应用编号;
在索引文件中查找到与所述应用编号对应的应用包的位置;
根据所述应用包的位置,查找到应用包,并解析应用包中的配置文件,确定应用链接类型;
如果所述应用链接类型为预设类型,则将应用链接类型的字段与应用包位置的字段进行组合,得到实际访问路径。
3.根据权利要求1所述的显示设备,其特征在于,所述控制器,在所述接收启动应用的指令之前,还用于执行:接收下载应用包的指令,下载平台中的应用包,其中,所述平台存储有已经上线的应用包。
4.根据权利要求3所述的显示设备,其特征在于,所述控制器,在接收下载应用包的指令之前,还用于执行:
获取配置文件,生成应用包;
将所述应用包发送到平台,以使所述平台对所述应用包审核,如果接收到平台发送的审核通过的消息,将与所述应用包上线,其中,所述配置文件是指应用的基本信息。
5.根据权利要求4所述的显示设备,其特征在于,生成所述应用包的内容还包括资源文件;所述资源文件是指供应用离线使用的资源。
6.根据权利要求4所述的显示设备,其特征在于,所述配置文件包括版本信息,所述版本信息用于判断所述显示设备上的应用是否需要更新,如果需要更新,在显示器上显示提示更新消息。
7.根据权利要求4所述的显示设备,其特征在于,所述控制器,还用于执行:
利用应用包,生成应用包签名,发送所述应用包签名到平台;
所述平台对所述应用包审核的步骤包括:所述平台对所述应用包签名进行验证;如果验证成功,则对所述应用包进行审核。
8.一种应用启动的方法,其特征在于,包括:
接收启动应用的指令,确定所述应用的应用配置路径;
将所述应用配置路径,变换为实际访问路径;
根据所述实际访问路径,在应用包中查找应用入口;利用所述应用入口,启动所述应用。
9.根据权利要求8所述的方法,其特征在于,所述将所述应用配置路径,变换为实际访问路径的步骤包括:
如果所述应用配置路径的格式为预设格式,则解析所述应用配置路径,得到应用编号;
在索引文件中查找到与所述应用编号对应的应用包的位置;
根据所述应用包的位置,查找到应用包,并解析应用包中的配置文件,确定应用链接类型;
如果所述应用链接类型为预设类型,则将应用链接类型的字段与应用包位置的字段进行组合,得到实际访问路径。
10.根据权利要求8所述的方法,其特征在于,在所述接收启动应用的指令之前,所述方法还包括:接收下载应用包的指令,下载平台中的应用包,其中,所述平台存储有已经上线的应用包。
CN202110275527.5A 2021-03-15 2021-03-15 一种应用启动的方法及显示设备 Pending CN112783577A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110275527.5A CN112783577A (zh) 2021-03-15 2021-03-15 一种应用启动的方法及显示设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110275527.5A CN112783577A (zh) 2021-03-15 2021-03-15 一种应用启动的方法及显示设备

Publications (1)

Publication Number Publication Date
CN112783577A true CN112783577A (zh) 2021-05-11

Family

ID=75762605

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110275527.5A Pending CN112783577A (zh) 2021-03-15 2021-03-15 一种应用启动的方法及显示设备

Country Status (1)

Country Link
CN (1) CN112783577A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111859223A (zh) * 2020-07-30 2020-10-30 中国民航信息网络股份有限公司 一种基于移动中台的网页数据调取方法、装置和存储介质
CN112445545A (zh) * 2020-12-11 2021-03-05 Vidaa美国公司 一种网页应用的启动方法及显示设备
CN112487322A (zh) * 2020-12-16 2021-03-12 Vidaa美国公司 一种第三方应用Loading页面的加载方法及显示设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111859223A (zh) * 2020-07-30 2020-10-30 中国民航信息网络股份有限公司 一种基于移动中台的网页数据调取方法、装置和存储介质
CN112445545A (zh) * 2020-12-11 2021-03-05 Vidaa美国公司 一种网页应用的启动方法及显示设备
CN112487322A (zh) * 2020-12-16 2021-03-12 Vidaa美国公司 一种第三方应用Loading页面的加载方法及显示设备

Similar Documents

Publication Publication Date Title
CN111447498B (zh) 显示设备的唤醒方法及显示设备
CN112445545B (zh) 一种网页应用的启动方法及显示设备
JP2003514273A (ja) Guiでのデータ入力
CN112217671B (zh) 基于拆分部署的前端微服务进行界面显示的方法及设备
US11200294B2 (en) Page updating method and display device
CN113784200A (zh) 通信终端、显示设备及投屏连接方法
CN112612525A (zh) 显示设备及显示设备开机方法
CN113630656B (zh) 显示设备、终端设备及通信连接方法
CN112256449B (zh) 网页应用程序的接口调用方法、显示设备及服务器
CN112764627B (zh) 一种升级包安装进度显示方法及显示设备
CN112487322B (zh) 一种第三方应用Loading页面的加载方法及显示设备
CN111324411A (zh) 显示设备中用户界面的升级方法及显示设备
CN116634240A (zh) 一种显示设备的界面切换方法及显示设备
CN112667285B (zh) 一种应用升级方法、显示设备及服务器
CN113316014B (zh) 一种显示设备、服务器及第三方数据显示控制方法
CN112783577A (zh) 一种应用启动的方法及显示设备
CN116261003A (zh) 一种显示设备及基于浏览器的流媒体播放控制方法
US20230111113A1 (en) Page loading method and display apparatus
CN113589990A (zh) 一种显示设备的应用管理方法、显示设备及移动终端
CN111479144A (zh) 显示设备及应用交互方法
CN113641423B (zh) 显示设备及系统启动方法
CN112883302B (zh) 一种显示超链接地址对应页面的方法及显示设备
CN112835633B (zh) 显示设备及显示语言的控制方法
CN113542823B (zh) 一种显示设备及应用页面的展示方法
WO2020187099A1 (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