[英]How to know supported HbbTV version on TV
我想知道哪个版本支持我的2014 Samsung Smart TV,但没有在技术规格上进行详细说明,只是说它与HbbTV兼容。
我的电视是这样的(H5500 40英寸):
http://www.samsung.com/es/consumer/tv-av/tv/full-hd/UE40H5500AWXXC
此外,我想知道哪个版本的HbbTV支持其他品牌,如索尼,TPVision和LG ...我可以检查任何数据库吗?
谢谢你的帮助!
电视支持的HbbTV版本在UserAgent字符串中公开。 根据HbbTV规范,它需要具有以下形式:
HbbTV / 1.1.1(<功能>; [<供应商名称>]; [<型号名称>]; [<软件版本>]; [<硬件版本>]; <保留的>)
在我的Samsung上是HbbTV/1.1.1 (;Samsung;SmartTV2014;T-NT14UDEUC-1005.2;;) WebKit
。 在LG上例如是Mozilla/5.0 (Unknown; Linux armv7l) AppleWebKit/537.1+ HbbTV/1.1.1 (; LGE; WEBOS1; 03.23.31; 1H13;)
。
您可以使用Navigator对象navigator.userAgent
访问此字符串。 版本字符串HbbTV / 1.1.1映射到公共的所谓HbbTV 1.0。 HbbTV / 1.2.1映射到1.5,HbbTV / 1.3.1映射到新的标准2.0,HbbTV / 1.4.1映射到更新的HbbTV 2.0.1。
您可以在http://www.hbbtv.org/pages/about_hbbtv/specification.php下找到规范
声誉太低,无法在上面的Kai答案中添加注释,但是HbbTV 2.0.1规范中提到User-Agent
标头的确切章节是7.3.2.4。 从规范的最新版本开始,所需的格式现在为HbbTV版本指定了1.4.1版本,并添加了一个新字段<familyName>
:
HbbTV/1.4.1 (<capabilities>; <vendorName>; <modelName>; <softwareVersion>; [<hardwareVersion>]; <familyName>; <reserved>)
规范说,如上所述, User-Agent
标头必须仅“包含”而不是“是”字符串,因此某些环境的确选择在指定部分的两侧放置额外的信息。
最好的解决办法是从得到它userAgent
如提到的,但如果你要确保你必须单独检查每个功能如做Modernizr的 ,只是做的功能简单的测试要使用甚至有些设备使用较新的HBBTV它无法按预期工作。 较旧的HbbTv具有简单的规范,每个制造商都有以自己的方式进行操作的空间,或者也有错误。
对于较新的HbbTv版本,您可以创建application/oipfCapabilities
对象,该对象来自Hbbtv 1.5版本,并可以在javascript中阅读,但我仍然建议您仍然使用上面的解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.