账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
联网电视App平台技术
W3C Widget介绍

【作者: 陳靜芳】2011年07月12日 星期二

浏览人次:【8895】

根据MIC调查,先进国家宽频网路环境健全,加上服务业者积极推展影视加值应用吸引用户,故预估2012年起至2014年网路视讯流量将超过有50%的成长空间。除了宽频网路串流的爆发外,台湾数位电视也积极的部署,有线宽频产业协会理事长简仁德表示,台湾有线电视头端数位化比例已经超过90%,整体数位化普及率仅约在7%上下,初步估计头端数位化投资总额超过50-60亿元。因此联网电视设备接收到经数位化处理后传输的数位电视讯号影音画面将更清晰,且具备电子节目表单与隐藏式字幕等功能,可接收宽频网路、IPTV、MOD、手机、STB、OTT Box等设备组成的应用平台,如:Google TV和Samsung Smart TV(Android)、Apple TV、Panasonic公布的新Viera Connect与Intel之BOXEE等平台,这样提供双向互动传输机制的设计,就是把电视讯号的控制权交给用户,促进了信息合理的流动,预期刺激更多用户行为,让整个联网电视平台应用体验更多元。


对Smart TV或OTT Box联网装置业者而言,选用何种平台作为开发的基准,无非是看中联网电视平台上App能带入丰富的内容资源。根据MIC2011年的统计,全球App软体商业市场规模仍持续的成长,且预计至2013年将超过有200亿美元的收入。此外,SPB TV也是一个联网电视的解决方案,也在3.0平台提供有手机版的TV app商店。因此widgets便是为了提供各种内容制造者或软体设计师,甚至系统整合商一个方便共通架构,参考图一的软体整合示意图,widgets是小型互动多媒体应用,其可用于桌上型电脑、行动电话与电视机、STB等设备。 widget的类型相当的多,典型的例子有日历、天气、游戏、便利贴、新闻等,不管是镶入网页的设计方式,或使用于单机版的应用,皆使用相同的方式制作widgets。从2006年开始W3C持续的更新相关的widgets家族规格,目前规范性规格有7组,包含widgets标准化的配置格式与封装格式(简称P&C)、定义储存偏好与存取widget封装内metadata的APIs规范(简称TWI)、定义widget封装进行数位签章时,使用到之自订XML签章语法与处理规格(简称DigSig)、当版本控制设计允许更新时,透过HTTP保持widget为最新版(Widget Updates over HTTP)、widget可透过URI认证资源要求/存取网页资料(简称WARP)、定义使用于widgets内的URI策略或使用于其他无法连网的网页技术(Widgets 1.0: URI Scheme)以及定义媒体功能CSS媒体询问相关的展现文件内容模式的规格(简称VMMF)。


《图一 概述联网电视设备之整体架构 (数据源:资策会绘制)》
《图一 概述联网电视设备之整体架构 (数据源:资策会绘制)》

Widget引擎组成介绍

目前已经有些领先市场的widget引擎(User Agent)参与W3C Widget的封装与配置测试一致性的吻合度,如:Owrandroid(Opera Widgets Runtime for Android)、Wookie(Apache)、Aplix、Opera、BorqsWRT1.0与Obigo,其中Opera 11.10 Beta和Apache Wookie 0.9与W3C widget的一致性最高,可使用JQuery javascript函式库捞进(mash up)所有公布于W3C网站上的测试案例,比对设计客制化的widget引擎与W3C widget标准的吻合度最高。图二显示一个widget引擎(User Agent)可分为五个基本组成技术,包含封装发布与布署、metedata配置、脚本存取连结、使用者介面和权限以及展现与行为逻辑,其中打星号的部分封装格式与数位签章、媒体类型、配置文件以及Widget的APIs在W3C的widget家族成员之规范性的规格内,都已经定义运作的方式,因此对开发者而言,widget引擎几乎就是仿造浏览器的行为,因此widget引擎也能绘制(render)网页,同时藉由ECMAScript的转译可与其他浏览器元件并入运作,widget为了给最终用户(end-user)带来单一互动应用感受,提供显示和/或更新本地数据或网页数据,因此包装法允许单一下载和安装到用户机(user's machine)、行动电话(mobile phone)、或上网设备(Internet-enabled device)。封装widget的优点就是可以在用户间共享widget包,而不需仰赖HTTP。


《图二 单机版的W3C widgets引擎整体架构 (数据源:W3C)》
《图二 单机版的W3C widgets引擎整体架构 (数据源:W3C)》

封装widget包注意事项

所谓的widget包(参考图三),就一个封装了所有该widget的相关资源,包含metadata描述文件(CSS, DOM等等)、配置文件、HTML/XML页面、图片和其他文件整体包裹成的压缩包,其封装格式可采用ZIP压缩的Deflate编码或未压缩仅封装的ZIP档案两种封装法,为了widget跨平台的互通性,这个ZIP档内相关档名的设计有些需要注意的事项,如同:须注意最长的关联档名长度建议是低于250字元,且为了避免档名字元组在ZIP打包后,跨不同作业系统执行时产生不一致的状况,建议采用Unicode编码的档名设计法(如:UTF-8编码),还有此widget包内部的资料夹或个别档名在命名时,应避免使用到ZIP禁止字元,以及于档案或资料夹名称的最后一个字元也需要避免用到“.” U+002E FULL STOP和空白字元,因为有些档案系统在解压缩widget包时,会主动移除这些字元。


《图三 典型的widget包内档案分布状况 (数据源:W3C)》
《图三 典型的widget包内档案分布状况 (数据源:W3C)》

Widget配置文件

每个widget包中包含一个metadata描述的XML配置文件,其档名为config.xml,档头必须标明使用xml的版本与采用的编码方式(),使用UTF-8的編碼格式可防止亂碼的產生,且在此組態文件檔案內,包含widget成員的宣告,以及widget的名稱"),使用UTF-8的编码格式可防止乱码的产生,且在此组态文件档案内,包含widget成员的宣告,以及widget的名称、描述、版权、作者等等内容,同时指定起始档(X)HTML/XML档案名称,预设起始档名为index.htm、index.html、índex.svg、index.xhtml与index.xht五种,也可使用content成员宣告加入客制的起始档,若要使用数位签章也可放置于config.xml内,此配置文件有11个成员,以widget成员作为根成员因此其包含相当多的子成员,name成员描述widget名称,description成员叙述用途,author成员标明此widget的作者资讯,license成员涵盖此widget配送的所有平台,icon成员是使用图像的方式呈现这个widget,content成员便是指名widget起始档案的服务为辅助程序机制(bootstrapping mechanism),feature成员则是指要求进阶可用的功能如同API(例如:与camera镜头的连结、或使用LBS地理位置的API、或widget引擎内部自订的API等),preference成员为宣告widget运行时可用的名称数值对(name-value pair)(例如:preference名称为api-key其对应数值则为该key使用到的f6d3a312f9d742机器码,还可指定存取属性),以及param成员为宣告给某feature成员的子成员,还有span成员就是通用文本容器,为了国际化的目的而使用。以上所描述配置文件内使用到的11个成员与config.xml内文本节点(text node)间的亲子属性关系,且包含w3C网站上相关细部的属性定义,可参考图四与图五成员间父子状态图。


《图五 widget、icon、content、preference与feature成员与param成员间的关联性 (数据源:资策会绘制)》
《图五 widget、icon、content、preference与feature成员与param成员间的关联性 (数据源:资策会绘制)》

Widget的脚本语言是采用Javascript的ECMAScript语法,可使用自动发现(Auto-discovery)启动widget引擎去识别和安装widget包,其与HTML网页相关联。当网页指向widget包,widget引擎应对终端用户(end-user)揭露存在的widget包且允许终端用户安装此widget。若此widget包预网站连结,可使用指定的aárea和link成员建立超连结(如:The Example Widget),关于widget做网路连结时,是采用XMLHttoRequest技术。


Widget使用者介面

图六,关于使用者介面(UI)W3C是推荐使用CSS2的设计法,因为CSS2支援更多的媒体类型且有下载字体的支援,由于联网电视整体最直接与用户接触便是UI的呈现方式,因此CSS3增加更多相容性的圆角设计、UI遮罩、阴影设计,且可实践渐层、旋转、字体效果以及三维变换,让整体UI呈现更加流畅,故建议设计联网电视的widget包时,若相对应的STB平台的widget引擎有支援时应加入CSS3的设计,或者采用内建API等达到多样化的UI设计。


《图六 widget友善的用户接口示意图 (数据源:资策会绘制)》
《图六 widget友善的用户接口示意图 (数据源:资策会绘制)》

结论

今年全美消费性电子展CES2011展出相当多联网电视众多的App平台电视平台外,周边设备的互动机制如:触碰平板电脑控制联网电视,或体感的应用连接,甚至到家电的控制,都可整合到联网电视的App平台,因此本文介绍互通的W3C widget介面包含Widget引擎组成介绍、封装widget包注意事项、Widget配置文件以及友善的Widget使用者介面,期望这个简单易上手的widget设计能让更多的内容开发业者加入,提升联网电视更流畅性的使用方式,预期将吸引更多的消费者更愉快舒适的客厅飨宴。


相关文章
用Arduino 打造机器人:循迹、弹钢琴、下棋都行!
树莓派推出AI摄影机、新款显示器
智慧充电桩百花齐放
充电站布局多元商业模式
以爆管和接触器驱动器提高HEV/EV电池断开系统安全性
comments powered by Disqus
相关讨论
  相关新闻
» 工研院MWC 2024展会直击 5G-A无线通讯、全能助理成下一波AI风潮
» 经部「2023玩学5G新视界」 引领台湾网通产业跃上国际舞台
» 欧洲航太技术展在德国盛大展开,全球吸睛 镭洋推出卫星通讯整合方案,目标抢占庞大的欧洲卫星商机
» 经济部主办通讯大赛连线全球 多国创新应用现身
» AIoT扩大物联网、伺服器与元件需求 打造节能永续云端资料中心


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK85568G3F2STACUKE
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw