アプリの開発

Estimated reading time: 1 minute

ここではアプリケーションの作成方法についてご紹介します。

法人向け ブラビア がサポートする HTML5 アプリは、一般的な HTML5 仕様に基づいています。 そのため、一般的なアプリと同じように、基本機能とサードパーティのライブラリを使用してアプリケーションを開発することができます。 もちろん、ソースコードエディタ、ビルドツールなどの開発ツールもお気に入りのものが使用できます。

ただし、技術的な制限がいくつかあるため、技術情報の詳細については W3C HTML5 API をご確認ください。

また、法人向け ブラビア は拡張したオブジェクトタグと JavaScript API を提供しています。 ここではこれらを使用してアプリケーションを実現する方法の例を示します。

拡張オブジェクトタグ

ディスプレイは以下の拡張したオブジェクトタグを提供します:

  • HDMI 入力埋め込みのための "application/x-decimated-video"
  • マルチキャストビデオ再生のための "application/x-multicast-video"
  • 高品質画像表示のための "application/x-4k-photo"

拡張オブジェクトタグには、タグと JavaScript コードの両方が必要です。

以下に x-4k-photo オブジェクトタグのサンプルを示します。

“x-4k-photo” オブジェクトタグ

サンプルアプリケーション をダウンロード、解凍し、以下のようにファイルを置きます。

USB: /sony/
          +--- autorun.txt
          +--- apps/webapps/high_quality_image/app/
                                                  +--- manifest.json
                                                  +--- doc/
                                                          +--- high_quality_image.html
                                                          +--- 4k_image.jpg
  1. "sony" ディレクトリを USB メモリのルートディレクトリにコピーします。
  2. USB メモリをディスプレイに挿入することで、アプリケーションを起動・表示します。

このサンプルでは x-4k-photo タグを使用しており、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');
  };

各タグの詳細については、拡張オブジェクトタグ をご覧ください。

JavaScript API

ディスプレイは、以下の拡張 JavaScript API も提供しています。

  • sony.tv.DirectoryReader
  • sony.tv.systemevents
  • sony.tv.picturemode

以下に SystemEvents インターフェースのサンプルを示します。

SystemEvents インターフェース

サンプルアプリケーション をダウンロード、解凍し、以下のようにファイルを置きます。

USB: /sony/
          +--- autorun.txt
          +--- apps/webapps/systemevents/app/
                                            +--- manifest.json
                                            +--- doc/systemevents.html
  1. "sony" ディレクトリを USB メモリのルートディレクトリにコピーします。
  2. USB メモリをディスプレイに挿入することで、アプリケーションが起動・表示されます。

このサンプルは sony.tv.systemevents.addListener()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 は簡単に使用することができます。 各 API の詳細については JavaScript API をご覧ください。

Last modified: 10 Jun 2022