创建一个应用程序
Estimated reading time: 1 minute
本部分描述如何创建应用程序。
BRAVIA商用显示器HTML5应用是基于HTML5规范的。 您可以通过使用基本功能和第三方库来开发应用程序,就像使用普通web应用程序一样。 当然,您可以使用您最喜欢的开发工具(如源代码编辑器、构建工具等)来实现这一点。
然而,也有一些技术限制。 请参阅 W3C HTML5 API获取有关支持信息的详细信息。
BRAVIA商用显示器还提供特定于供应商的功能。 本节将展示如何使用供应商定制的对象标记和JavaScript api实现应用程序。
定制对象标签
BRAVIA商用显示提供以下定制对象标签:
- “应用/x-decimated-video”来播放HDMI视频
- “应用/x-多播-视频”播放多播视频
- “应用程式/x- 4K照片”显示4K图像
供应商定制的对象标记需要标记和JavaScript代码。
下面是“x-4k-photo”对象的示例。
“x-4k-photo”对象标签
请下载及摘录a sample application. 解压缩后,将文件如下所示。 并把文件如下所示。
USB: /sony/
+--- autorun.txt
+--- apps/webapps/high_quality_image/app/
+--- manifest.json
+--- doc/
+--- high_quality_image.html
+--- 4k_image.jpg
- 复制
'sony'
目录到USB存储的根目录。 - 连接USB存储到BRAVIA商用显示器。应用程序将被启动并显示一个应用程序。
本示例使用 <object type="application/x-4k-photo">
tag. 它还需要JavaScript代码。
<object class="hq-img" id="hq-img" type="application/x-4k-photo" width="100%" height="100%"></object>
window.onload = function() {
var object = document.getElementById('hq-img');
object.open();
object.onpreload = function(url, result) {
object.show(url);
};
object.preload('4k_image.jpg');
};
请参阅 Customized Object Tag 获取每个标记的详细信息。
JavaScript API
BRAVIA商用显示器提供了以下特定于供应商的JavaScript api: — sony.tv.DirectoryReader — sony.tv.systemevents — sony.tv.picturemode
下面是系统事件接口的一个示例。
系统事件接口
请下载 a sample application 并且提取。 并把文件如下所示。
USB: /sony/
+--- autorun.txt
+--- apps/webapps/systemevents/app/
+--- manifest.json
+--- doc/systemevents.html
- Copy the
'sony'
directory to the root directory of a USB storage. - Connect a USB storage to BRAVIA Professional Display. The application will be launched and show an application.
This sample uses the sony.tv.systemevents.addListener()
and sony.tv.systemevents.removeListener()
.
// system event handler
function onNetworkStatusChanged(event){
printResult("eventMessage.connectionInfo.netif = " + event.eventMessage.connectionInfo.netif);
printResult("eventMessage.connectionInfo.errorDetail = " + event.eventMessage.connectionInfo.errorDetail);
}
// add/remove system event listener
function addListenerNetworkStatusChanged(){
sony.tv.systemevents.addListener('networkStatusChanged', onNetworkStatusChanged);
}
function removeListenerNetworkStatusChanged(){
sony.tv.systemevents.removeListener('networkStatusChanged', onNetworkStatusChanged);
}
如上所述,您可以轻松地使用特定于供应商的JavaScript api。 请访问JavaScript API了解每个API的详细信息。