特許第6779801号(P6779801)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ クラリオン株式会社の特許一覧
<>
  • 特許6779801-情報端末および情報提供システム 図000002
  • 特許6779801-情報端末および情報提供システム 図000003
  • 特許6779801-情報端末および情報提供システム 図000004
  • 特許6779801-情報端末および情報提供システム 図000005
  • 特許6779801-情報端末および情報提供システム 図000006
  • 特許6779801-情報端末および情報提供システム 図000007
  • 特許6779801-情報端末および情報提供システム 図000008
  • 特許6779801-情報端末および情報提供システム 図000009
  • 特許6779801-情報端末および情報提供システム 図000010
  • 特許6779801-情報端末および情報提供システム 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6779801
(24)【登録日】2020年10月16日
(45)【発行日】2020年11月4日
(54)【発明の名称】情報端末および情報提供システム
(51)【国際特許分類】
   G06F 3/14 20060101AFI20201026BHJP
【FI】
   G06F3/14 310A
【請求項の数】8
【全頁数】16
(21)【出願番号】特願2017-14989(P2017-14989)
(22)【出願日】2017年1月31日
(65)【公開番号】特開2018-124690(P2018-124690A)
(43)【公開日】2018年8月9日
【審査請求日】2019年11月11日
(73)【特許権者】
【識別番号】000001487
【氏名又は名称】クラリオン株式会社
(74)【代理人】
【識別番号】110000198
【氏名又は名称】特許業務法人湘洋内外特許事務所
(72)【発明者】
【氏名】中曽根 航
【審査官】 ▲高▼瀬 健太郎
(56)【参考文献】
【文献】 特開2012−048611(JP,A)
【文献】 特開2007−065893(JP,A)
【文献】 特開2015−118520(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/14
(57)【特許請求の範囲】
【請求項1】
所定のサーバーと通信回線を介して通信する情報端末であって、
前記情報端末で用いることができる資源の限度量を特定する情報を記憶する記憶部と、
前記サーバーから提供されるサービスに関する情報を取得するブラウザ制御部と、
前記ブラウザ制御部により前記サービスに関する情報が取得されると、前記サービスに関する情報の中から前記資源を用いる量を特定する情報を取得して、前記限度量および前記情報端末で用いている資源の量と比較して資源の競合を判定するウェブアプリ実行管理部と、
を備え
前記ウェブアプリ実行管理部は、前記資源の競合の判定の結果、前記資源を用いる量と前記情報端末で用いている資源の量の合計が前記限度量未満でない場合には、競合する資源を使用するタブを用いて前記サービスを起動させる、
ことを特徴とする情報端末。
【請求項2】
請求項1に記載の情報端末であって、
前記資源は、ナビゲーション装置機能を利用するインターフェース資源を含む、
ことを特徴とする情報端末。
【請求項3】
請求項1または2に記載の情報端末であって、
前記資源は、少なくともハードウェア資源とソフトウェア資源とを含む、
ことを特徴とする情報端末。
【請求項4】
請求項1〜3のいずれか一項に記載の情報端末であって、
前記資源は、少なくともハードウェア資源としてディスプレイを含み、ソフトウェア資源として画像バッファを含む、
ことを特徴とする情報端末。
【請求項5】
請求項1〜4のいずれか一項に記載の情報端末であって、
前記資源は、少なくともハードウェア資源としてスピーカーを含み、ソフトウェア資源として音声出力ストリームを含む、
ことを特徴とする情報端末。
【請求項6】
請求項1に記載の情報端末であって、
前記資源は、少なくともナビゲーション機能の目的地の設定に係るソフトウェア資源を含む、
ことを特徴とする情報端末。
【請求項7】
請求項1に記載の情報端末であって、
前記資源は、少なくともカメラ制御に係るソフトウェア資源を含む、
ことを特徴とする情報端末。
【請求項8】
情報端末と、サーバーと、が通信回線を介して通信可能に接続される情報提供システムであって、
前記情報端末は、
前記情報端末で用いることができる資源の限度量を特定する情報を記憶する記憶部と、
前記サーバーから提供されるサービスに関する情報を、前記通信回線を介して取得するブラウザ制御部と、
前記サービスの起動を行うウェブアプリ実行管理部と、
を備え、
前記サーバーは、前記サービスを提供するウェブアプリケーションと、当該サービスが使用する前記情報端末の資源を特定する情報を対応づけて格納する記憶部と、
前記通信回線を介して前記情報端末へ前記サービスが使用する前記情報端末の資源を特定する情報を送信するウェブアプリケーション実行部と、
を備え、
前記ウェブアプリ実行管理部は、
前記ブラウザ制御部により前記サービスに関する情報が取得されると、前記サービスに関する情報の中から前記資源を用いる量を特定する情報を取得して、前記限度量および前記情報端末で用いている資源の量と比較して資源の競合を判定
前記資源の競合の判定の結果、前記資源を用いる量と前記情報端末で用いている資源の量の合計が前記限度量未満でない場合には、競合する資源を使用するタブを用いて前記サービスを起動させる、
ことを特徴とする情報提供システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報端末および情報提供システムの技術に関するものである。
【背景技術】
【0002】
車載機に搭載したWebブラウザを用いてWebアプリケーションを含むコンテンツを開く際に、Webブラウザで使用するタブを予め決定したコンテンツの種類に応じて制限する技術が、特許文献1に記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2015−118520号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記のような技術では、メモリ使用量の増大防止、タブ操作をユーザーに意識させないことによる車載機としての操作感の確保の効果を奏するが、提供するコンテンツごとに予めコンテンツの種類を決定・設定する運用管理を行う必要があり、運用負荷が高い。
【0005】
本発明の目的は、運用管理負荷を抑えながら情報端末の資源効率をより高める情報端末および情報提供システムを提供することにある。
【課題を解決するための手段】
【0006】
本発明は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下のとおりである。上記課題を解決すべく、本発明に係る情報端末は、所定のサーバーと通信回線を介して通信する情報端末であって、上記情報端末で用いることができる資源の限度量を特定する情報を記憶する記憶部と、上記サーバーから提供されるサービスに関する情報を取得するブラウザ制御部と、上記ブラウザ制御部により上記サービスに関する情報が取得されると、上記サービスに関する情報の中から上記資源を用いる量を特定する情報を取得して、上記限度量および上記情報端末で用いている資源の量と比較して資源の競合を判定するウェブアプリ実行管理部と、を備える。
【発明の効果】
【0007】
本願発明によれば、運用管理負荷を抑えながら情報端末の資源効率をより高める情報端末および情報提供システムを提供することが可能となる。上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0008】
図1】本発明に係る実施形態を適用した情報提供システムの構造を示す図である。
図2】モジュール記憶部のデータ構造を示す図である。
図3】必要リソース記憶部のデータ構造を示す図である。
図4】記憶部のフォルダ構成を示す図である。
図5】機能資源表記憶部のデータ構造を示す図である。
図6】コンテンツサーバーのハードウェア構造を示す図である。
図7】車載装置のハードウェア構成を示す図である。
図8】Webアプリケーション登録処理の流れを示す図である。
図9】Webアプリケーション起動処理の流れを示す図である。
図10】Webアプリケーションランチャー画面の例を示す図である。
【発明を実施するための形態】
【0009】
以下に、本発明に係る実施形態を適用した情報提供システムについて、図面を参照して説明する。なお、図1図10は、情報提供システム1の全ての構成を示すものではなく、理解容易のため、適宜、構成の一部を省略して描いている。
【0010】
図1に、本発明に係る実施形態を適用した情報提供システム1の構造を示す。本発明に係る実施形態を適用した情報提供システム1においては、コンテンツサーバー100と、車載装置200と、がそれぞれ通信ネットワーク10を介して通信可能に接続されている。
【0011】
なお、コンテンツサーバー100と、車載装置200とは、通信ネットワーク10を介して無線で接続されるものであってもよく、通信ネットワーク10は、例えばインターネット網や携帯電話網等の公衆無線通信網であってもよいし、所定の管理地域ごとに設けられた閉鎖的な通信網であってもよい。より具体的には、そのような通信ネットワーク10は、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)、無線通信装置30のアンテナ35と車載装置200のアンテナ250とを介したWiFi(登録商標)等の無線ネットワーク、NFC(Near Field Communication:登録商標)等の近距離無線等の、各種通信方法が複合した通信網であってもよい。
【0012】
コンテンツサーバー100は、通信ネットワーク10を介して、Webアプリケーション登録装置20と通信可能に接続される。Webアプリケーション登録装置20は、作成されたWebアプリケーションをコンテンツサーバー100に搭載させる。Webアプリケーション登録装置20は、Webアプリケーションの車載装置200からの利用を可能にする指示を操作者から受け付けると、当該Webアプリケーションをコンテンツサーバー100へ搭載させる一般的なコンピューター装置である。一般的には、Webアプリケーション登録装置20は、Webアプリケーションの作成者・提供者が用いる。
【0013】
コンテンツサーバー100は、各種のソフトウェアを実行可能な情報処理装置である。コンテンツサーバー100は、本実施形態においては、OS(Operating System)を備え、複数のソフトウェアをインストール可能であり、並列してソフトウェアを実行することも可能である。なお、コンテンツサーバー100は、サーバー装置に限られず、パーソナルコンピューター等の各種の独立動作可能な装置であればよい。
【0014】
コンテンツサーバー100は、制御部120と、記憶部130と、通信部140と、を含んで構成される。制御部120には、車載装置通信制御部121と、Webアプリケーション登録部122と、必要リソース情報管理部123と、Webアプリケーション実行部124と、が含まれる。記憶部130には、モジュール記憶部131と、必要リソース記憶部132と、が含まれる。
【0015】
図2は、モジュール記憶部131のデータ構造を示す図である。モジュール記憶部131には、ソフトウェア識別子ごとに、表示情報と、処理情報と、が対応付けられて記憶される。具体的には、モジュール記憶部131には、ソフトウェア識別子131Aと、表示内容ファイル131Bと、表示スタイルファイル131Cと、スクリプトファイル131Dと、が含まれる。
【0016】
ソフトウェア識別子131Aには、ソフトウェアを識別する所定の情報である。表示内容ファイル131Bは、ソフトウェアの表示対象となる情報、すなわちテキスト、テキストの構造、レイアウト等に関する情報が格納される。より具体的には、表示内容ファイル131Bには、いわゆるHTML(Hyper Text Markup Language)やXML(eXtensible Markup Language)等により記述される表示情報のデータセットが格納される。
【0017】
表示スタイルファイル131Cには、ソフトウェアの表示の修飾情報、すなわちフォント情報や色の指定に関する情報が格納される。より具体的には、表示スタイルファイル131Cには、いわゆるCSS(Cascading Style Sheet)等のデータセットが格納される。
【0018】
スクリプトファイル131Dには、ソフトウェアの処理制御を行う情報、すなわちプログラムに関する情報が格納される。より具体的には、スクリプトファイル131Dには、いわゆるJavaScript(登録商標)等の関数やメソッド、プロシージャ等を特定する情報が格納される。すなわち、スクリプトファイル131Dには、ソフトウェアの処理を規定する制御情報が格納されるといえる。
【0019】
図3は、必要リソース記憶部132のデータ構造を示す図である。必要リソース記憶部132には、ソフトウェア識別子132Aごとに、使用ネイティブ機能識別子132Bが対応付けられて格納される。ソフトウェア識別子132Aは、ソフトウェアを識別する所定の情報である。使用ネイティブ機能識別子132Bは、ソフトウェア内で使用する車載装置200の機能を識別する情報である。例えば、車載装置200の機能には、車載装置200で用いることができる資源が含まれ、当該資源には、ナビゲーション装置機能を利用するインターフェース資源が含まれる。
【0020】
なお、当該資源はこれらに限られず、少なくともハードウェア資源とソフトウェア資源とのいずれかまたは両方が含まれる。例えば、ハードウェア資源としてはディスプレイ、スピーカーあるいはカメラが含まれる。ソフトウェア資源としては画像バッファ、音声ストリーム、ナビゲーション機能の目的地設定に係るAPI(Application Programming Interface)やカメラ制御に係るAPI等が含まれる。
【0021】
図4は、記憶部130のフォルダ構成を示す図である。記憶部130には、上述したとおりモジュール記憶部131、必要リソース記憶部132が存在するが、これらは上述のデータ構造により記憶されることに限られるものではなく、図4の木構造のフォルダ構成に応じてテキストファイル、画像ファイルおよびスクリプトファイル等が配置されるものであってもよい。そのような一般的なフォルダ構成では、Root130Aフォルダの中に、ソフトウェア識別子が「WebApplication1」となるソフトウェアのモジュール群を格納する「WebApplication1」130Bフォルダおよびソフトウェア識別子が「WebApplication2」となるソフトウェアのモジュール群を格納する「WebApplication2」130Cフォルダが格納される。また、これに限られず、さらにソフトウェアが配置されている場合には、そのソフトウェア識別子ごとにフォルダが並列的に設けられる。
【0022】
例えば、「WebApplication1」130Bフォルダの中には、HTMLファイルを格納する「html」130Dフォルダと、CSSファイルを格納する「css」130Eフォルダと、JavaScriptファイルを格納する「JavaScript」130Fフォルダと、JavaScriptで使用するネイティブ機能(資源)の識別子を列挙したファイルである「nativefunction.txt」130Gファイルと、が設けられる。
【0023】
なお、上述のフォルダ構造は、一例であり、関係型データベース等、その他のデータ構造であってもよい。
【0024】
図1の説明に戻る。車載装置通信制御部121は、車載装置200との通信を制御する。具体的には、車載装置通信制御部121は、対向装置となる車載装置200との無線を用いた通信を制御する。なお、無線を用いた通信には、802.11x等の各種無線通信方式、携帯電話網を介した各種通信方式、Bluetooth(登録商標)を介した無線通信方式等の各種の通信方式を採用することができる。
【0025】
Webアプリケーション登録部122は、車載装置通信制御部121を介して利用可能なWebアプリケーションに関するモジュールや設定ファイル等を、Webアプリケーション登録装置20から受け付けると、利用可能となるように登録する。具体的には、Webアプリケーション登録部122は、ソフトウェア識別子を割り当てて、受け付けたモジュールや設定ファイル等を上述のフォルダ構造に成形して格納する。当該処理において、Webアプリケーション登録部122は、必要リソース情報管理部123に必要リソースの抽出を依頼し、使用するネイティブ機能について必要リソース記憶部132へ格納させる。
【0026】
必要リソース情報管理部123は、Webアプリケーション登録部122からの依頼を受け付けると、登録対象のWebアプリケーションにおいて使用するプラグイン機能について必要リソース記憶部132へ格納する。具体的には、必要リソース情報管理部123は、登録対象のWebアプリケーションのモジュールのうち、スクリプト部分を解析して、ネイティブプラグインの呼び出し命令を抽出する。そして、必要リソース情報管理部123は、ネイティブ機能(資源)の識別子を必要リソース記憶部132の使用ネイティブ機能識別子132Bに、ソフトウェア識別子132Aに対応付けて格納する。
【0027】
なお、ネイティブプラグインの呼び出し命令は、例えばJavaScriptのAPIとして“setData(id, Sdata)”メソッドを介して記載される。ここで、“id”は例えば目的地設定機能の識別子、“Sdata”は例えばGPS(Global Positioning System)の座標値である。この場合には、目的地を座標値で示す位置にセットするようにナビゲーションソフトウェアへ命令を与えることができる。
【0028】
また例えば、WebアプリケーションのロードAPIは“setData(id, Apl_url, Table)”メソッドを介して記載される。ここで、“id”は例えば指定URL(Uniform Resource Locator)へのアクセス機能の識別子、“Apl_url”はWebアプリケーションの起動のURL、“Table”は当該Webアプリケーションが用いる資源のリスト情報である。この場合には、URLで指定されたWebアプリケーションを起動させる命令と、当該Webアプリケーションが使用する資源のリストを与えることができる。
【0029】
Webアプリケーション実行部124は、Webアプリケーションとして実行されるソフトウェアの制御処理を行う。具体的には、Webアプリケーション実行部124は、Webアプリケーションを起動させる指示を受け付けるメニュー画面を生成し、Webアプリケーションの各種メッセージの通知画面の生成、所定の制御の実行、処理結果表示画面の生成等の各種処理を実行するソフトウェアエンジンとなる。なお、Webアプリケーションは、処理主体がコンテンツサーバー100となる例を記載しているが、これに限られるものではなく、図示しない別途のWebアプリケーション実行サーバー等に実行主体を担わせるものであってもよいし、データベースサーバー等の分散サーバー間で連携して処理を行うグリッドコンピューティングにより実現するものであってもよい。
【0030】
通信部140は、コンテンツサーバー100が、携帯電話キャリア網やインターネット等のオープンネットワークに接続する処理を行う。
【0031】
車載装置200は、経路情報や寄り道施設、渋滞情報や事故情報等、各種の情報を地図情報に重畳させて表示させる情報処理装置である。車載装置200は、コンテンツサーバー100と接続可能な通信ネットワーク10に無線通信を介して接続され、インターネット等への接続を実現することができる。
【0032】
本実施形態においては、車載装置200は、単体動作可能な情報端末を想定している。しかし、本願発明の対象となる車載装置200は、図1に示す車載装置200に限られるものではない。例えば、車両等の移動体に組み込まれた各種制御機器、カーナビゲーション装置等であってもよい。
【0033】
また、車載装置200は、移動体あるいは運転者に着脱可能に設けられるものであってもよい。あるいは、車載装置200は、移動体の運転者あるいは乗員が有する携帯電話機器等の移動端末であってもよく、例えばスマートフォンやフィーチャーフォン、あるいはPDA(Personal Digital Assistance)、ノートパソコン、サーバー装置、タブレット端末等であってもよい。
【0034】
車載装置200は、制御部220と、記憶部230と、無線通信部240と、を含んで構成される。制御部220には、サーバー通信制御部221と、基本機能制御部222と、ブラウザ制御部223と、ネイティブプラグイン制御部224と、Webアプリ実行管理部225と、が含まれる。記憶部230には、機能資源表記憶部231が格納される。
【0035】
図5は、機能資源表記憶部231のデータ構造を示す図である。機能資源表記憶部231には、ネイティブ機能識別子231Aごとに、利用可能資源数231Bと、コメント(機能説明)231Cと、が対応付けて格納される。ネイティブ機能識別子231Aは、車載装置200が有するネイティブ機能(資源)を特定する情報である。利用可能資源数231Bは、ネイティブ機能識別子231Aにより識別されるネイティブ機能の並列利用に係る上限値を特定する情報である。コメント(機能説明)231Cは、ネイティブ機能識別子231Aにより識別されるネイティブ機能の説明に関するテキスト情報である。
【0036】
例えば、ネイティブ機能識別子231Aが「0x1111」である地図上へのPOI登録に関するネイティブプラグインを介したネイティブ機能に関しては、利用可能資源数231Bが「2」となっていることから、地図上へのPOI登録に関して3以上の資源が用いられると、想定外の動作あるいはPOIの上書き等による情報の欠落、表示の欠落等が発生するおそれがあり適切な使用状況から逸脱することとなる。
【0037】
機能資源表記憶部231は、上述したとおり、ネイティブ機能識別子231Aと、利用可能資源数231Bと、コメント(機能説明)231Cと、が対応付けられたデータ構造であるが、これは例えば図5に示すように各データをカンマで接続させたCSV(Comma−Separated Values)形式のファイルにて管理されるものであってもよい。
【0038】
図1の説明に戻る。サーバー通信制御部221は、コンテンツサーバー100との通信を制御する。具体的には、サーバー通信制御部221は、対向装置となるコンテンツサーバー100と通信するための無線通信装置30との無線通信を制御する。
【0039】
基本機能制御部222は、車載装置200の基本的な機能の処理を制御する。例えば、基本機能制御部222は、車載装置200の起動、終了、モード管理、入出力制御、通信制御、ナビゲーション機能の制御、音声出力制御、車載カメラ制御、車両ネットワーク(CAN:Controller Area NetworkまたはLIN:Local Interconnect Network等のクローズドネットワーク)への参加等、車載装置200の基本動作を実現する制御部である。
【0040】
ブラウザ制御部223は、車載装置200が備えるWebブラウザを制御する。Webブラウザは、基本的には一般のウェブサイトを閲覧するためのブラウザであり、HTMLの解釈、レンダリング、HTTP(HyperText Transfer Protocol)通信、JavaScriptの処理実行、CSSの適用等の各種ウェブサイト閲覧のための一般的な処理を制御する。
【0041】
ネイティブプラグイン制御部224は、車載装置200が備えるネイティブ機能、具体的には基本機能制御部222が行う制御を所定のプラグインAPIを介して利用するインターフェース機能を制御する。
【0042】
Webアプリ実行管理部225は、Webアプリケーションの実行を管理する。具体的には、Webアプリ実行管理部225は、ブラウザ制御部223上で表示されたWebアプリケーションのランチャーアイコンのクリック等の入力が基本機能制御部222により検出されると、クリックされた画面上の位置を基本機能制御部222から受け取り、クリックされたランチャーアイコンを特定する。そして、Webアプリ実行管理部225は、当該アイコンに該当するWebアプリケーションの実行モジュールをコンテンツサーバー100からダウンロードして、所定のタブを実行環境として割り当てて、起動させる。当該処理においては、Webアプリ実行管理部225は、Webアプリケーション(サービス)に関する情報の中から資源を用いる量を特定する情報を取得して、限度量および車載装置200で用いている資源の量と比較して資源の競合を判定する。
【0043】
無線通信部240は、車載装置200が、通信ネットワーク10等のネットワークに接続する処理を行う。
【0044】
図6は、コンテンツサーバー100のハードウェア構造を示す図である。コンテンツサーバー100は、入力受付装置101と、演算装置102と、通信装置103と、主記憶装置104と、無線通信装置105と、表示装置106と、これらをつなぐバス108と、を含んで構成される。
【0045】
入力受付装置101は、ハードウェアボタンやキーボード、タッチパネル等の各種入力装置である。演算装置102は、例えばCPU(Central Processing Unit)などの演算装置である。
【0046】
通信装置103は、携帯電話ネットワーク、インターネット等の通信ネットワーク10を介して、不特定の装置と通信経路を確立し情報を送受信するネットワークモジュール等の装置である。
【0047】
主記憶装置104は、例えばRAM(Random Access Memory)などのメモリ装置である。
【0048】
無線通信装置105は、Bluetooth、NFC等の所定のプロトコルを用いて、周囲の装置と無線通信を行う装置である。
【0049】
表示装置106は、例えば液晶ディスプレイや、有機EL(Electro Luminescence)ディスプレイ等の表示出力を行う装置である。
【0050】
上記した制御部120の各機能部、すなわち車載装置通信制御部121、Webアプリケーション登録部122、必要リソース情報管理部123、Webアプリケーション実行部124は、演算装置102が所定のプログラムを読み込み実行することにより構築される。そのため、主記憶装置104には、各機能部の処理を実現するためのプログラムが記憶されている。
【0051】
なお、上記した各構成要素は、コンテンツサーバー100の構成を、理解を容易にするために、主な処理内容に応じて分類したものである。そのため、構成要素の分類の仕方やその名称によって、本願発明が制限されることはない。コンテンツサーバー100の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。
【0052】
また、制御部120の各機能部は、CPUに限らずハードウェア(ASIC、GPUなど)により構築されてもよい。また、各機能部の処理が一つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
【0053】
図7は、車載装置200のハードウェア構造を示す図である。車載装置200は、入力受付装置201と、演算装置202と、無線通信装置203と、主記憶装置204と、外部記憶装置205と、車載ネットワーク通信装置206と、位置検出装置207と、出力表示装置208と、これらをつなぐバス210と、を含んで構成される。
【0054】
入力受付装置201は、ハードウェアボタンやタッチパネル等の各種入力装置である。演算装置202は、例えばCPUなどの演算装置である。
【0055】
無線通信装置203は、無線ネットワーク、あるいはBluetooth等を介して、例えばコンテンツサーバー100等の他の装置と通信経路を確立し情報を送受信するネットワークモジュール等の装置である。
【0056】
主記憶装置204は、例えばRAMなどのメモリ装置である。
【0057】
外部記憶装置205は、例えばハードディスクやSSD(Solid State Drive)、その他各種の不揮発性記憶媒体に情報を書き込み、あるいは不揮発性記憶媒体から所定の情報を読み出す装置である。
【0058】
車載ネットワーク通信装置206は、CAN等の車載ネットワークに接続された他の機器と通信を行う装置である。
【0059】
位置検出装置207は、例えばGPS等の衛星波を受信して地球上における位置を特定する座標を得る。
【0060】
出力表示装置208は、例えば液晶ディスプレイや、有機EL(Electro Luminescence)ディスプレイ等の表示出力を行う装置である。
【0061】
上記した制御部220の各機能部、すなわちサーバー通信制御部221、基本機能制御部222、ブラウザ制御部223、ネイティブプラグイン制御部224、Webアプリ実行管理部225は、演算装置202が所定のプログラムを読み込み実行することにより構築される。そのため、主記憶装置204には、各機能部の処理を実現するためのプログラムが記憶されている。
【0062】
なお、上記した各構成要素は、車載装置200の構成を、理解を容易にするために、主な処理内容に応じて分類したものである。そのため、構成要素の分類の仕方やその名称によって、本願発明が制限されることはない。車載装置200の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。
【0063】
また、制御部220の各機能部は、CPUに限らずハードウェア(ASIC、GPUなど)により構築されてもよい。また、各機能部の処理が一つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
【0064】
[動作の説明]次に、Webアプリケーション登録装置20からWebアプリケーションをコンテンツサーバー100に登録する処理の動作について説明する。
【0065】
図8は、Webアプリケーション登録処理の流れを示す図である。Webアプリケーション登録処理は、コンテンツサーバー100がWebアプリケーション登録要求を受け付けると開始される。
【0066】
まず、Webアプリケーション登録装置20からコンテンツサーバー100へ、作成したWebアプリケーションのモジュールの送信が行われる(ステップS101)。具体的には、Webアプリケーション登録部122は、Webアプリケーション登録装置20へWebアプリケーションのモジュールおよび各種設定ファイルを送信するよう依頼し、Webアプリケーション登録装置20は依頼に応じるようにHTMLファイルやCSSファイル、JavaScriptファイルをコンテンツサーバー100へ送信する。
【0067】
そして、Webアプリケーション登録部122は、Webアプリケーションのモジュールを所定の形式で記憶する(ステップS102)。具体的には、Webアプリケーション登録部122は、ステップS101で受信したWebアプリケーションのモジュールを、そのファイルフォーマットに応じてモジュール記憶部131へ格納する。
【0068】
そして、Webアプリケーション登録部122は、必要リソース情報管理部123に依頼して、記憶したモジュールのうちスクリプト部分を解析しネイティブプラグインの呼び出し命令を抽出して、資源(ネイティブ機能識別子)を必要リソース記憶部132にリスト化させる(ステップS103)。具体的には、必要リソース情報管理部123は、ステップS102において受信したJavaScriptファイルを対象として、所定のネイティブプラグインAPI(例えば、「setData」関数)の呼び出しを行う記述箇所をすべて正規表現等により検索する。
【0069】
必要リソース情報管理部123は、検索した結果抽出された記述箇所のそれぞれから、その所定の引数として受け渡す使用ネイティブ機能識別子を抽出して、必要リソース記憶部132の使用ネイティブ機能識別子132Bに追加する(nativefunction.txtのファイルに追記する)。
【0070】
なお、この処理は、ネイティブプラグインAPIの呼び出しに関するフォーマットが予め「setData」関数であること、その第一引数として使用ネイティブ機能識別子を受け渡すこと、等の定めを前提とする例である。そのため、それ以外の形式によるAPIを用いている場合には、必要リソース情報管理部123は、APIの形式に応じて適切に文字列検索によるAPI呼び出し箇所の特定を行い、使用ネイティブ機能識別子を取得する。
【0071】
以上が、Webアプリケーション登録処理の流れである。この流れによれば、Webアプリケーションがコンテンツサーバー100に登録される際に、使用しているネイティブプラグインAPIの呼び出し箇所を抽出して、その使用ネイティブ機能識別子を必要リソース記憶部132へ格納することができる。そのため、コンテンツであるWebアプリケーションが増加した場合でも、自動的に使用する資源をリストすることができるため、運用管理に係る負荷は抑えられる。
【0072】
図9は、Webアプリケーション起動処理の流れを示す図である。Webアプリケーション起動処理は、車載装置200のブラウザ制御部223が起動すると、開始される。
【0073】
まず、ブラウザ制御部223は、ランチャーコンテンツを第一のタブにロードし、Webアプリ一覧画面を表示する(ステップS201)。具体的には、ブラウザ制御部223は、予め定められたランチャーコンテンツあるいは車載装置200において予め設定が変更されたランチャー画面を生成して第一のタブにロードする。当該ランチャー画面には、当該車載装置200において実行可能なWebアプリケーションの起動指示を受け付けるためのアイコン等が表示される。
【0074】
図10は、Webアプリケーションランチャー画面の例を示す図である。Webアプリケーションランチャー画面300には、登録されており、当該車載装置200において実行可能なWebアプリケーションのアイコン画像301〜303がタイル表示される。アイコン画像301〜303のそれぞれは、「Webアプリケーション1」〜「Webアプリケーション3」のそれぞれに対応付けられており、アイコンへのタッチ入力が検出されると、ブラウザ制御部223は、当該対応するWebアプリケーションの起動指定として受け付ける。なお、Webアプリケーションランチャー画面300は、HTML、CSS、JavaScript等により構成されたWebページである。
【0075】
そして、Webアプリ実行管理部225は、起動指定を受けたアプリの必要リソースをサーバーから取得する(ステップS202)。具体的には、Webアプリ実行管理部225は、ステップS201にて表示されたWebアプリケーションランチャー画面300において起動指定を受けたアイコンに該当するWebアプリケーションについて、ソフトウェア識別子を指定してコンテンツサーバー100へ必要リソース記憶部132の情報を要求する。そして、コンテンツサーバー100の必要リソース情報管理部123は、当該ソフトウェア識別子に対応する使用ネイティブ機能識別子132Bを特定し、Webアプリ実行管理部225へ送信する。
【0076】
そして、Webアプリ実行管理部225は、取得した必要リソースを指定してWebアプリケーション開始を指示する(ステップS203)。具体的には、Webアプリ実行管理部225は、ネイティブプラグイン制御部224に対して、Webアプリケーションの開始指示を与えると共に、ステップS202で送信された使用ネイティブ機能識別子132Bを受け渡し、資源の競合の判定を行う。
【0077】
そして、Webアプリ実行管理部225は、開始するWebアプリケーションは機能資源表の資源を使用するか否かを判定する(ステップS204)。具体的には、Webアプリ実行管理部225は、機能資源表記憶部231を参照して、ステップS203で指定された必要リソースのいずれかが機能資源表記憶部231に格納された資源を利用するか否かを判定する。一つも使用しない場合(「No」の場合)には、Webアプリ実行管理部225は、新しく起動するタブ上でWebアプリケーションを起動する(ステップS207)。
【0078】
開始するWebアプリケーションは機能資源表の資源を一つでも使用する場合(ステップS204にて「Yes」の場合)には、Webアプリ実行管理部225は、Webアプリケーションに必要な資源が使用中の状態であるか否かを判定する(ステップS205)。具体的には、Webアプリ実行管理部225は、ステップS203で指定された必要リソースの各々について、既に起動済みのWebアプリケーションが使用するリソースとの合計が機能資源表記憶部231の限度量である利用可能資源数231B以内であるか否かを判定する。限度量未満の場合(ステップS205で「No」の場合)には、Webアプリ実行管理部225は、新しく起動するタブ上でWebアプリケーションを起動する(ステップS207)。
【0079】
Webアプリケーションに必要な資源が使用中の状態である場合(ステップS205で「Yes」の場合)には、Webアプリ実行管理部225は、既に起動済みのタブのうち不足する資源を利用しているタブ上でWebアプリケーションを起動する(ステップS206)。
【0080】
以上が、Webアプリケーション起動処理の流れである。Webアプリケーション起動処理によれば、リソースの不足が予測されるWebアプリケーションを起動する場合には、既に当該リソースを使用しているタブ上で起動させることで、リソースの競合を回避することができる。より具体的には、従前の技術では、地図上にPOI(Point Of Interest)のアイコンを表示するWebアプリケーションを動作させている状態において別のWebアプリケーションを立ち上げて追加的にPOIのアイコンを表示させる場合に、アイコンバッファが不足して競合すると予期せぬ表示や上書き表示による画面の乱れ等が発生する可能性があったが、本実施形態を適用することでこれを回避することができる。
【0081】
以上が、実施形態に係る情報提供システム1である。上記の実施形態によれば、情報提供システム1は、Webアプリケーションの実行に際し、運用管理負荷を抑えながら情報端末の資源効率をより高めることができる。
【0082】
ただし、本発明は、上記の実施形態に制限されない。上記の実施形態は、本発明の技術的思想の範囲内で様々な変形が可能である。
【0083】
例えば、上記の実施形態においては、車載装置200が自らの使用可能な資源を機能資源表記憶部231に保持してWebアプリケーションの起動時に車載装置200上でリソースの競合の判定を行う例を示したが、これに限られない。例えば、コンテンツサーバー100において、車載装置200の機種やグレード等のモデルに応じて使用可能な資源を予め機能資源表として記憶しておき、Webアプリケーションの開始要求を受け付けるとコンテンツサーバー100においてリソースの競合あるいはアプリケーションの起動可否を判定するようにしてもよい。このようにすることで、車載装置200のリソース管理に係る演算負荷を減らすことができる。
【0084】
また例えば、上記の実施形態においては、リソースが競合する場合には、既に起動済みのタブのうち不足する資源を利用しているタブ上でWebアプリケーションを起動する(ステップS206)ようにしているが、これに限られない。例えば、先に起動しているWebアプリケーションを優先するようにしてもよいし、先に起動しているWebアプリケーションの終了の是非を問い合わせてユーザーから承諾入力を受け付けることを条件に後に起動させたWebアプリケーションを起動する等、所定のルールに沿って起動させるようにしてもよい。このようにすることで、ユーザーがタブの存在を意識する必要をなくしつつ、運用管理負荷を抑えながらWebアプリケーション使用時の資源効率をより高めることができる。
【0085】
以上、本発明について、実施形態を挙げて説明した。しかし、これに限られず、上記実施形態に記載した車載装置の特徴的な処理について、別の機器に適用する(例えば、音楽プレーヤー、モバイルルーター等の携帯型装置等、各種の情報端末に適用する)ことも可能である。
【符号の説明】
【0086】
1・・・情報提供システム、10・・・通信ネットワーク、20・・・Webアプリケーション登録装置、30・・・無線通信装置、35・・・アンテナ、100・・・コンテンツサーバー、120・・・制御部、121・・・車載装置通信制御部、122・・・Webアプリケーション登録部、123・・・必要リソース情報管理部、124・・・Webアプリケーション実行部、130・・・記憶部、131・・・モジュール記憶部、132・・・必要リソース記憶部、140・・・通信部、200・・・車載装置、220・・・制御部、221・・・サーバー通信制御部、222・・・基本機能制御部、223・・・ブラウザ制御部、224・・・ネイティブプラグイン制御部、225・・・Webアプリ実行管理部、230・・・記憶部、231・・・機能資源表記憶部、240・・・無線通信部、250・・・アンテナ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10