JP7159027B2 - User interface providing device, user interface providing method, program and embedded device - Google Patents
User interface providing device, user interface providing method, program and embedded device Download PDFInfo
- Publication number
- JP7159027B2 JP7159027B2 JP2018230638A JP2018230638A JP7159027B2 JP 7159027 B2 JP7159027 B2 JP 7159027B2 JP 2018230638 A JP2018230638 A JP 2018230638A JP 2018230638 A JP2018230638 A JP 2018230638A JP 7159027 B2 JP7159027 B2 JP 7159027B2
- Authority
- JP
- Japan
- Prior art keywords
- screen
- program
- user interface
- information
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 26
- 230000003068 static effect Effects 0.000 claims description 64
- 238000013461 design Methods 0.000 claims description 31
- 230000004044 response Effects 0.000 claims description 5
- 238000013515 script Methods 0.000 description 28
- 238000004891 communication Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 20
- 238000009877 rendering Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 17
- 230000007704 transition Effects 0.000 description 9
- 230000009471 action Effects 0.000 description 8
- 238000012360 testing method Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 238000005406 washing Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 238000001035 drying Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000006249 magnetic particle Substances 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 238000007591 painting process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は、ユーザーインタフェース提供装置、ユーザーインタフェース提供方法、プログラム及び組み込み機器に関する。 The present invention relates to a user interface providing device, a user interface providing method, a program, and an embedded device.
従来、組み込み機器向けのGUI(Graphical User Interface)として、HTMLファイルなどの構造化文書を表示するブラウザプログラムを利用する技術が知られている。このような組み込み機器では、その内部の情報を取得及び設定可能な、ネイティブコードで記述されたプログラム(以下、「ネイティブプログラム」と記載する)を用意し、ネイティブプログラムとブラウザプログラムとを連係させることで、ブラウザプログラムを利用した組み込み機器の状態表示や各種の設定を実現している(例えば、特許文献1参照)。
2. Description of the Related Art Conventionally, as a GUI (Graphical User Interface) for embedded devices, a technique using a browser program for displaying structured documents such as HTML files is known. For such embedded devices, prepare a program written in native code (hereinafter referred to as "native program") that can acquire and set internal information, and link the native program and the browser program. , the state display and various settings of the embedded device are realized using a browser program (see
ブラウザプログラムにGUIを実現させるためには、画面を構成するためにブラウザプログラムが解釈し、描画可能なコンテンツ(以下、「ブラウザ表示可能コンテンツ」と省略する)が必要である。そのため、画面設計に基づき、HTML、CSS及びJavascript(登録商標)などを用いたコーディング(以下、「HTMLコーディング」と記載する)を行う必要がある。 In order to implement a GUI in a browser program, content that can be interpreted and drawn by the browser program (hereinafter abbreviated as "browser displayable content") is required to construct a screen. Therefore, based on the screen design, it is necessary to perform coding using HTML, CSS, Javascript (registered trademark), etc. (hereinafter referred to as "HTML coding").
HTMLコーディングは、C言語などのネイティブ言語を用いたコーディングに比べて、ツールが比較的安く、かつ、コーディングを行う者に求められるスキルも比較的低いという利点がある。 Compared to coding using a native language such as the C language, HTML coding has the advantage that tools are relatively inexpensive and the skills required of coders are relatively low.
しかしながら、コーディングを行う必要があることには変わりがない。また、HTMLコーディングにより作成されたブラウザ表示可能コンテンツが適切であるかどうかテストする必要がある。特に、GUIの表現を動的にするためには、Javascriptのようなスクリプトをブラウザ表示可能コンテンツに組み込む必要がある。この場合、ブラウザプログラムは、スクリプトを解釈及び実行し、HTMLファイルの一部を変更し、変更後のHTMLファイルを解釈及び描画し、画面の一部を更新する。このため、ブラウザ表示可能コンテンツを実際にブラウザプログラムで解釈し、スクリプトを実行し、画面が適切に更新されるか試してみる必要がある。したがって、HTMLコーディングでも、ネイティブ言語を用いたコーディングと同様に、開発の期間が長くなり、コストがかさむおそれがある。 However, you still need to do some coding. There is also a need to test whether browser-viewable content created by HTML coding is appropriate. In particular, to make the presentation of the GUI dynamic, scripts such as Javascript must be incorporated into the browser-viewable content. In this case, the browser program interprets and executes the script, modifies part of the HTML file, interprets and renders the modified HTML file, and updates part of the screen. For this reason, it is necessary to actually interpret the browser-viewable content in the browser program, execute the script, and try to update the screen appropriately. Therefore, even with HTML coding, as with coding using a native language, there is a risk that the development period will be long and the cost will increase.
また、ユーザが望む操作を組み込み機器に実行させるためには、例えば、ブラウザ表示可能コンテンツの中にスクリプトを埋め込む。そして、ブラウザプログラムに当該スクリプトを解釈及び実行させ、ネイティブプログラムと連係させ、ネイティブプログラムに組み込み機器のハードウェアを制御させる。このような制御が適切に行われるか否かを、ブラウザ表示可能コンテンツを実際にブラウザプログラムで解釈し、スクリプトを実行させて、テストする必要がある。 Also, in order to cause the embedded device to execute the operation desired by the user, for example, a script is embedded in the browser-displayable content. Then, the browser program interprets and executes the script, links with the native program, and causes the native program to control the hardware of the embedded device. It is necessary to test whether such control is properly performed by actually interpreting browser-displayable content with a browser program and executing a script.
このように、GUIが正常に動作し、ユーザによる操作を組み込み機器に適切に実行させることができるか否かは、ブラウザプログラムの性能、仕様などに依拠する部分が多い。この結果、テスト項目が多く、開発の期間が長くなり、コストがかさむおそれがある。 In this way, whether or not the GUI operates normally and whether or not the embedded device can appropriately execute the user's operation largely depends on the performance and specifications of the browser program. As a result, the number of test items is large, the development period is lengthened, and the cost may increase.
本発明は、かかる点に鑑みてなされたものであり、組み込み機器のために動的な表現に富んだGUIを短期及び低コストで開発できるユーザーインタフェース提供装置、ユーザーインタフェース提供方法、プログラム及び組み込み機器を提供することを目的の1つとする。 The present invention has been made in view of this point, and provides a user interface providing device, a user interface providing method, a program, and an embedded device that can develop a GUI rich in dynamic expressions for an embedded device in a short period of time and at low cost. One of the purposes is to provide
本発明に係るユーザーインタフェース提供装置の一態様は、イベントに応じ、少なくとも一部が構造化文書ファイルで構成された静的コンテンツを、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて動的に生成する静的コンテンツ生成手段と、前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力する制御要求手段と、を有することを特徴とする。 According to one aspect of the user interface providing apparatus of the present invention, static content , at least a part of which is structured document file, is generated according to an event based on a template and screen design information for the user interface. Acquiring user operation information related to a user's operation on the screen from a dynamically generated static content generating means and a browser program that interprets the static content and displays the screen on a display unit. and control request means for outputting control information relating to control of the embedded device corresponding to the user operation information to a native program that controls the embedded device.
本発明に係るユーザーインタフェース提供方法の一態様は、組み込み機器によって実行され、イベントに応じ、少なくとも一部が構造化文書ファイルで構成された静的コンテンツを、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて動的に生成するステップと、前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、前記組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力するステップと、を有することを特徴とする。 One aspect of the user interface providing method according to the present invention is executed by an embedded device, and according to an event, static content , at least a part of which is structured document file, is transferred to a template and screen for user interface. and a browser program that interprets the static content and displays the screen on a display unit, the user operation information about the user's operation performed on the screen. obtaining and outputting control information related to control of the embedded device corresponding to the user operation information to a native program that controls the embedded device.
本発明に係るプログラムの一態様は、イベントに応じ、少なくとも一部が構造化文書ファイルで構成された静的コンテンツを、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて動的に生成する手順と、前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、前記組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力する手順を実行させることを特徴とする。 One aspect of the program according to the present invention dynamically generates static content , at least a part of which is structured document file, based on template and screen design information for user interface in response to an event. A native device that acquires user operation information related to a user's operation performed on the screen from a browser program that interprets the procedure and the static content and displays the screen on a display unit, and controls the embedded device. The program is characterized by executing a procedure of outputting control information relating to control of the embedded device corresponding to the user operation information.
本発明によれば、組み込み機器のために、動的な表現に富んだGUIを短期及び低コストで開発できる。 According to the present invention, a GUI rich in dynamic expressions can be developed in a short period of time and at a low cost for an embedded device.
[発明の概要]
家電製品などの組み込み機器に搭載されるディスプレイの大型化及び高解像度化が進んでいる。このようなディスプレイで提供されるGUIには、ユーザーエクスペリエンス(以下、UXと記載する)をより高めることが求められ、動的な表現がより多く取り入れられる傾向がある。
[Summary of Invention]
The size and resolution of displays mounted in built-in devices such as home electric appliances are increasing. GUIs provided by such displays are required to have a higher user experience (hereinafter referred to as UX), and tend to incorporate more dynamic expressions.
動的な表現を、ブラウザ表示可能コンテンツで実現するには、Javascriptのようなスクリプトをブラウザプログラム上で実行させる動的コンテンツを用いることが一般的である。 In order to implement dynamic expressions in browser-displayable content, it is common to use dynamic content that causes a script such as Javascript to be executed on a browser program.
このような動的コンテンツは、バグを多く含みやすいため、ブラウザプログラムにより適切に表示され、所望の動的な表現が実現されるかどうかを確認するには、静的コンテンツに比べて、テスト項目が多くなる。 Such dynamic content is likely to contain many bugs, so in order to check whether the browser program can properly display it and achieve the desired dynamic presentation, test items are more important than static content. will increase.
また、ブラウザ表示可能コンテンツで実現されたGUIからユーザが望む制御をハードウェアに行わせるには、ブラウザプログラムが、スクリプトを実行し、ネイティブプログラムと連係し、ネイティブプログラムにハードウェアを制御させることが一般的である。 Also, in order for the hardware to perform the control desired by the user from the GUI implemented with the browser-displayable content, the browser program can execute scripts, interact with the native program, and let the native program control the hardware. Common.
このようなスクリプトを用いた組み込み機器のハードウェアへの制御は、ハードウェアを制御するネイティブプログラム(ドライバ等)に制御情報(命令等)を出力することで行われる。そして、スクリプトは、制御情報を出力したことを契機としてGUIを動的に変更し、ネイティブプログラムからのフィードバック(ハードウェアの状態変化等を含む)を反映していない。このため、ハードウェアの動作状態の変化に応じてGUIの変更が適切なタイミングに行われるかどうかを確認するため、テストの手間が増えることを回避しがたい。 Control of the hardware of an embedded device using such a script is performed by outputting control information (commands, etc.) to native programs (drivers, etc.) that control the hardware. Then, the script dynamically changes the GUI when the control information is output, and does not reflect feedback from the native program (including changes in hardware status, etc.). For this reason, it is difficult to avoid increasing the time and effort of testing to confirm whether or not the GUI is changed at appropriate timing in accordance with the change in the operating state of the hardware.
本発明者は、ネイティブ言語ではなく構造化文書を使用したGUIプラットフォームにおいて、UXを低下させることなく、また、GUIを介したハードウェアの制御も実現しながらも、開発コスト及び開発期間をさらに短縮することを目的とし、鋭意検討を重ねた。 In a GUI platform that uses structured documents instead of native languages, the inventors have achieved further reductions in development costs and development periods while realizing hardware control via the GUI without deteriorating UX. With the aim of doing so, we conducted extensive research.
本発明者は、静的コンテンツをイベントに応じて動的に切り替えることで動的な表現を実現すれば、動的コンテンツを用いなくてもUXに優れたGUIを構築できることに着目した。しかしながら、それに実現するには、静的コンテンツを画面内の構成要素の更新が行われる分だけ用意しなければならない。このため、テスト項目を削減できるが、ブラウザ表示可能コンテンツの作成のための工数が膨大になってしまう。 The inventor of the present invention has focused on the fact that a GUI with excellent UX can be constructed without using dynamic contents by realizing dynamic expressions by dynamically switching static contents according to events. However, in order to realize this, static content must be prepared for the number of updates of the constituent elements in the screen. As a result, the number of test items can be reduced, but the number of man-hours required to create browser-displayable content becomes enormous.
そこで、本発明者は、静的コンテンツを、イベントに応じてテンプレート及び画面の設計情報に基づいて動的に生成することにより、静的コンテンツの作成の工数を減らすことができることを見出した。 Accordingly, the inventors of the present invention have found that the number of man-hours for creating static content can be reduced by dynamically generating static content based on template and screen design information according to an event.
一方、静的コンテンツを採用したことに伴い、ブラウザプログラムでスクリプトを実行してハードウェアを制御する代わりに、ネイティブプログラムに組み込み機器のハードウェアに対する制御を行わせることとした。より具体的には、まず、ブラウザプログラムが画面に対して行われたユーザによる操作に関するユーザ操作情報を取得する。そして、ブラウザプログラムが、ユーザ操作情報に対応するハードウェア制御情報をネイティブプログラムに出力する。ネイティブプログラムは、ハードウェア制御情報に従って組み込み機器のハードウェアを制御する。 On the other hand, with the adoption of static content, it was decided to let the native program control the hardware of the embedded device instead of executing the script in the browser program to control the hardware. More specifically, first, the browser program acquires user operation information related to the user's operation on the screen. The browser program then outputs hardware control information corresponding to the user operation information to the native program. The native program controls the hardware of the embedded device according to the hardware control information.
本発明者は、上述のような新しい知見に基づいて本発明を完成した。すなわち、本発明のユーザーインタフェース提供装置は、イベントに応じ、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて少なくとも一部が構造化文書ファイルで構成された静的コンテンツを動的に生成する静的コンテンツ生成手段と、前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力する制御要求手段と、を有することを特徴とする。 The present inventor has completed the present invention based on the above new knowledge. That is, the user interface providing apparatus of the present invention dynamically generates static content, at least a portion of which is composed of a structured document file, based on a template and screen design information for a user interface according to an event. Acquisition of user operation information related to a user's operation performed on the screen from a static content generating means and a browser program that interprets the static content and displays the screen on a display unit, and controls the embedded device. and control request means for outputting control information relating to control of the embedded device corresponding to the user operation information to a native program that performs the processing.
本発明において、イベントとは、例えば、ブラウザプログラム又はネイティブプログラムで発生する事象であって、画面の構成要素のうち少なくとも一部を更新させるアクションを発生させるものを含む。 In the present invention, an event includes, for example, an event that occurs in a browser program or a native program, and that causes an action to update at least part of screen components.
より具体的には、イベントは、例えば、ブラウザプログラムが検出した、ユーザーインタフェースのための画面に対して行われたユーザによる操作を含む。 More specifically, the event includes, for example, an operation by the user performed on the screen for the user interface detected by the browser program.
また、イベントは、ネイティブプログラムからの画面の構成要素のうち少なくとも一部を更新させるアクションを発生させるものを含む。 Events also include those that cause actions to update at least some of the components of the screen from the native program.
また、本発明において、テンプレートとは、画面を構築するためのブラウザ表示可能コンテンツを構成するデータ群であって、例えば、少なくとも一つの構造化文書を含み、外部リソース(画像ファイル、動画ファイル、音声ファイルなど)を含んでいてもよい。外部リソースは、予めテンプレートに含まれていてもよいし、記憶部に別に記憶されていてもよいし、通信部を介してネットワークから取得されてもよい。 In the present invention, a template is a data group that constitutes content that can be displayed in a browser for constructing a screen. files, etc.). The external resource may be included in the template in advance, may be separately stored in the storage unit, or may be acquired from the network via the communication unit.
テンプレートは、そのままではブラウザプログラムで適切に表示できないか、又は、そのままでもブラウザプログラムで表示できるが、一部が仮の表示内容であるコンテンツであると言える。 A template can be said to be content that cannot be properly displayed by a browser program as it is, or that can be displayed by a browser program as it is, but a part of which is provisional display content.
例えば、テンプレートの一例としては、構造化文書の中に、ボタンのためのイメージファイルを埋め込むタグ"img"並びに属性"width"及び属性"height"が記述されているが、属性"src"は記述されていないものが挙げられる。この場合、属性"src"が記述されていないため、テンプレートを構成する構造化文書をブラウザプログラムで解釈し、描画したとき、ボタンが表示されない。このような状態を、「適正に表示できない」という。 For example, as an example of a template, a structured document describes a tag "img" that embeds an image file for a button, an attribute "width" and an attribute "height", but an attribute "src" is described. There are things that have not been done. In this case, since the attribute "src" is not described, the button will not be displayed when the browser program interprets and renders the structured document that constitutes the template. Such a state is referred to as "proper display is not possible".
また、テンプレートの他の一例としては、構造化文書の中に、ボタンに対し、当該ボタンに対応するハードウェア制御を表わす仮の文字列が記述されているものが挙げられる。例えば、ボタンに対し、ハードウェアが備える一機能のアクティベーションを意味する仮の文字列「ON」が記述されているコンテンツが考えられる。この仮の文字列「ON」は、ハードウェアが照明機器であれば、「明かりをつける」のような他の文字列に置き換えることができる。このように仮の文字列は、他の文字列に置き換え可能なようにコンテンツに記述することができる。 Another example of a template is a structured document in which a provisional character string representing hardware control corresponding to a button is described for the button. For example, there may be content in which a provisional character string "ON" is described for a button, which means activation of a function provided by hardware. This temporary character string "ON" can be replaced with another character string such as "Turn on the light" if the hardware is a lighting device. In this way, the temporary character string can be described in the content so as to be replaceable with another character string.
また、本発明において、ユーザーインタフェースのための画面(Screen)とは、GUI画面設計上の単一の画面をいう。GUI画面設計とは、組み込み機器などのGUI開発において、ユーザが操作することになる画面のレイアウト、表示項目などの設計を行うことをいう。GUI画面設計には、個々の画面を構成する画面要素と当該画面要素のレイアウトを決定する単一画面設計と、複数の画面間の関係を決定する画面遷移設計と、画面要素に対するユーザによる操作などのイベントと、当該イベントによって発生するアクションとの関係を定義するアクション設計と、を含む。したがって、画面設計上の単一画面とは、上述の単一画面設計で対象とする個々の画面であると言える。 Also, in the present invention, a screen for user interface means a single screen in GUI screen design. GUI screen design refers to designing the layout of screens operated by users, display items, and the like in GUI development for embedded devices and the like. GUI screen design includes screen elements that make up individual screens and a single screen design that determines the layout of the screen elements, screen transition design that determines the relationship between multiple screens, and user operations on screen elements. and an action design that defines the relationship between the events of the event and the actions that occur due to the event. Therefore, it can be said that the single screen in screen design is the individual screens targeted in the above-described single screen design.
また、本発明において、画面の設計情報とは、画面の設計に関する情報をいう。設計情報には、例えば、画面レイアウト情報、画面遷移情報及びアクション情報が含まれる。 In the present invention, screen design information refers to information relating to screen design. The design information includes, for example, screen layout information, screen transition information, and action information.
画面レイアウト情報は、画面を構成する画面要素及びその配置、画面要素の属性、及び、画面要素に対するユーザの操作によって発生するイベント及びそのタイミングなどを含むが、これら以外の情報が含まれていてもよい。 The screen layout information includes screen elements that make up the screen and their arrangement, attributes of the screen elements, and events that occur due to user operations on screen elements and their timing. good.
画面要素には、テキストボックス、リストボックス、ラジオボタン、ボタン(クリック又はタッチすることによりアクションが発生する)、ラベル(文字列)、画像(静止画像及び動画を含む)などが含まれるが、これらに限定されるものではない。 Screen elements include text boxes, list boxes, radio buttons, buttons (action occurs when clicked or touched), labels (character strings), images (including still images and moving images), etc., and these is not limited to
画面遷移情報は、複数の画面の流れを表す情報である。画面遷移情報は、例えば、表示される複数の画面とそれらの画面の順序関係、及び、画面から画面への遷移を起こすきっかけとなるイベントを含むが、これら以外の情報が含まれていてもよい。 The screen transition information is information representing the flow of multiple screens. The screen transition information includes, for example, a plurality of screens to be displayed, the order relationship of those screens, and an event that triggers the transition from screen to screen, but may include information other than these. .
アクション情報は、イベントと、当該イベントによって発生するアクションとの関係を示す情報である。 Action information is information that indicates the relationship between an event and an action that occurs due to the event.
また、本発明において、静的コンテンツとは、ブラウザプログラムにより解釈され、描画されるブラウザ表示可能コンテンツであって、当該コンテンツを変更するスクリプトを含まないものをいう。 In the context of the present invention, static content refers to browser-displayable content that is interpreted and rendered by a browser program and does not include scripts that modify the content.
また、本発明において、ユーザ操作情報とは、ユーザが画面を構成する画面要素に対して操作を行ったことを示す情報である。ユーザ操作情報は、ブラウザプログラムで発生したイベントのうち、画面に対するユーザが行った操作に基づくものに関する情報であるとも言える。 Further, in the present invention, user operation information is information indicating that the user has performed an operation on a screen element that configures the screen. The user operation information can also be said to be information related to an event that has occurred in the browser program and that is based on an operation performed by the user on the screen.
本発明のユーザーインタフェース提供装置は、組み込み機器のためのGUIを構築するのに適している。本発明において、組み込み機器とは、広義には、ソフトウェアを用いて制御される機器の総称であるが、狭義には、パーソナルコンピュータのような汎用コンピュータを含まない、特定の用途向けに特化、限定した機能を果たすことを目的とした、ソフトウェアが組み込まれた機器の総称である。 The user interface providing device of the present invention is suitable for constructing a GUI for embedded equipment. In the present invention, embedded equipment is a general term for equipment controlled using software in a broad sense, but in a narrow sense it does not include general-purpose computers such as personal computers. It is a general term for devices with embedded software intended to perform limited functions.
また、組み込み機器とは、ファームウェアにより制御される機器であるということもできる。ファームウェアとは、ハードウェアを制御するためのソフトウェアであって、ROMなどの集積回路に予め書き込まれた状態で機器に組み込まれたものをいう。したがって、本発明の一つの態様においては、ネイティブプログラム及びブラウザプログラムは、このようなファームウェアであることができる。 Also, an embedded device can be said to be a device controlled by firmware. Firmware is software for controlling hardware, which is pre-written in an integrated circuit such as a ROM and incorporated in a device. Thus, in one aspect of the invention, native programs and browser programs can be such firmware.
さらに、本発明のユーザーインタフェース提供装置は、組み込み機器のうち、固有のIPアドレスを持ち、インターネットに接続可能な機器、すなわちIoT(Internet of Things)機器のGUIを構築するのに適している。IoT機器は、インターネットに接続するための通信部を備えた組み込み機器であるとも言える。 Furthermore, the user interface providing apparatus of the present invention is suitable for constructing a GUI of a device that has a unique IP address and can be connected to the Internet, that is, an IoT (Internet of Things) device among built-in devices. An IoT device can also be said to be an embedded device having a communication unit for connecting to the Internet.
以下、本発明の実施の形態について、図面を参照して説明する。なお、本発明は、以下に示す実施の形態に限定されるものではなく、その発明の趣旨の範囲内で種々変形して実施することができる。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described with reference to the drawings. It should be noted that the present invention is not limited to the embodiments described below, and various modifications can be made within the spirit and scope of the invention.
[GUI提供部]
図1は、本実施の形態に係るユーザーインタフェース提供装置に含まれるGUI提供部の構成を示すブロック図である。
[GUI provider]
FIG. 1 is a block diagram showing the configuration of a GUI providing unit included in a user interface providing device according to this embodiment.
ユーザーインタフェース提供装置100において、GUI提供部101は、例えば、後述の制御部11によって実行されるネイティブプログラムによって実現される。GUI提供部101は、静的コンテンツ生成部102及び画面制御部103を備えている。
In the user
静的コンテンツ生成部102は、テンプレート104に基づいて、本発明の画面の設計情報の一例である画面設計情報105を参照し、静的コンテンツを動的に生成する。静的コンテンツの生成の詳細については後述する。
Based on the
静的コンテンツ生成部102は、ブラウザプログラム200と連係可能に構成されている。静的コンテンツ生成部102は、ブラウザプログラム200からイベント発生に関する情報を受信し、静的コンテンツを生成することができる。また、静的コンテンツ生成部102は、生成した静的コンテンツを出力し、ブラウザプログラム200に表示部111に表示させることができる。
The
また、静的コンテンツ生成部102は、少なくとも1つのネイティブプログラム300と連係可能に構成されている。静的コンテンツ生成部102は、ネイティブプログラム300からイベント発生に関する情報を受信し、静的コンテンツを生成することができる。
Also, the
一方、本発明の制御要求手段の一例である画面制御部103は、ブラウザプログラム200で発生したイベントに応じ、ネイティブプログラム300に対して、イベントに対応する組み込み機器の制御に関する制御情報を出力する。ここでイベントは、ブラウザプログラムが表示部111に表示させた画面に対して、入力部112を介して行われたユーザによる操作を検知したことである。
On the other hand, the
画面制御部103は、ブラウザプログラム200と連係可能に構成されている。画面制御部103は、ブラウザプログラム200からイベント発生に関する情報を受信し、画面設計情報105に基づいて、当該イベントに対応する制御情報を取得することができる。
The
さらに、画面制御部103は、ネイティブプログラム300と連係可能に構成されている。画面制御部103は、取得した制御情報を出力し、ネイティブプログラム300に制御情報に対応するハードウェア121の制御を実行させることができる。
Furthermore, the
また、画面制御部103は、ネイティブプログラム300からハードウェア121の動作状態に関する情報(以下、「状態情報」と記載する)を受信する。
The
そして、画面制御部103は、画面設計情報105に含まれる画面遷移情報に基づいて、ハードウェア121の動作状態に応じた静的コンテンツを動的に生成し、ブラウザプログラム200に静的コンテンツを画面に表示させる。
Based on the screen transition information included in the
上述のようなGUI提供部101の静的コンテンツ生成部102及び画面制御部103と、ブラウザプログラム200及びネイティブプログラム300との連係は、特に限定されないが、例えば、GUI提供部101を実現するプログラム(以下、「GUI提供プログラム」と記載する)と、ブラウザプログラム200及びネイティブプログラム300とを、動的又は静的にリンクすることで実現できる。また、GUI提供プログラムと、ブラウザプログラム200及びネイティブプログラム300の間にソフトウェアインタフェースを設けてデータ交換できるようにすることで実現することができる。
The linkage between the static
[ブラウザプログラム]
次に、図2を参照して、ブラウザプログラム200について説明する。図2は、本実施の形態に係るブラウザプログラムの構成を示すブロック図である。ブラウザプログラム200は、HTML、XMLなどの構造化文書で記述された構造化文書ファイルを取得し、当該構造化文書ファイルを解析し、解析結果に基づいて、構造化文書ファイルに埋め込まれた、又は、参照された要素を画面に描画する機能を備えている。
[browser program]
Next, the
ブラウザプログラム200は、ユーザーインタフェース(UI)201、ブラウザエンジン202、レンダリングエンジン203、ネットワーキングモジュール(通信部)204、スクリプトエンジン205、データストレージ(記憶部)206で構成される。
The
ユーザーインタフェース201は、一般的なWebブラウジングのためのUI要素(戻るボタン、進むボタン、アドレスバー、ブックマーク、更新ボタン、中止ボタン、ホームボタンなど)を表示部111(図1参照)に表示させ、入力部112(図1参照)を介して当該画面要素へのユーザからの入力を受け付けるように構成されている。ただし、本実施の形態のようにGUIを構築するためにブラウザプログラム200を使用するときは、ユーザーインタフェース201は、一般的なWebブラウジングのためのUI要素を提供する必要は必ずしもない。
The
ブラウザエンジン202は、ユーザーインタフェース201からの入力をレンダリングエンジン203に伝え、ユーザからの入力にしたがってレンダリングエンジン203を操作することを実現可能に構成されている。
The
レンダリングエンジン203は、ブラウザ表示可能コンテンツを解釈し、描画して、表示部に表示できるように構成されている。
The
ネットワーキングモジュール204は、通信部の一例であり、例えばサーバへのHTTPリクエストの送信などを行うように構成されている。
The
スクリプトエンジン205は、例えば、ブラウザ表示可能コンテンツに含まれるスクリプトファイルを解釈し、実行するように構成されている。本実施の形態では、スクリプトは、Javascriptであるが特に限定されない。ただし、本実施の形態では、ブラウザプログラム200は、後述の静的コンテンツを解釈し、描画して、UI画面を表示部に表示させるだけであれば、スクリプトエンジン205は必ずしも必要ない。
データストレージ206は、Cookieなどのデータを保存するように構成されている。
さらに、ブラウザプログラム200は、上述のようにGUI提供部101と連係可能に構成されている。
Furthermore, the
以下、レンダリングエンジン203での処理について説明する。レンダリングエンジン203は、HTMLファイルを解析し、DOMツリーを生成する。レンダリングエンジン203は、HTMLファイルに記述されたタグをツリー上のDOMノードに変換し、DOMツリーを生成する。DOMツリーは、HTMLファイルに含まれる全ての要素のツリー状の集合である。DOMノードとは、DOMツリーに含まれる一つ一つの要素である。
Processing in the
また、レンダリングエンジン203は、HTMLファイルにCSS(Cascading Style Sheet)が含まれている、又は、外部のCSSファイルにリンクされている場合、当該CSSを、styleエレメントからなるスタイルデータを解析し、描画ツリーに変換する。
If the HTML file contains CSS (Cascading Style Sheet) or is linked to an external CSS file, the
このようなHTMLファイル及びCSSファイルを解析する処理を、解析(パース)処理と呼ぶ。 Processing for analyzing such HTML files and CSS files is called analysis (parsing) processing.
また、レンダリングエンジン203は、DOMツリー及び描画ツリーを組み合わせ、レンダリングツリーを構築する。
The
また、レンダリングエンジン203は、レンダリングツリーに格納されたDOMノードの位置を決定する。この処理はレイアウト処理と呼ばれる。より具体的には、レンダリングエンジン203は、レンダリングツリーに追加されたレンダラーに「位置」と「サイズ」の情報を加える。
The
また、レンダリングエンジン203は、レンダリングツリーに格納されたDOMノードを「位置」と「サイズ」に従って、表示部111に表示する。この処理はペイント処理と呼ばれる。
Also, the
このようなレンダリングツリーの構築、レイアウト処理及びペイント処理を合わせて、描画処理と呼ぶ。 Such rendering tree construction, layout processing, and painting processing are collectively referred to as drawing processing.
[ネイティブプログラム]
次に、図3を参照して、ネイティブプログラム300について説明する。図3は、本実施の形態に係るネイティブプログラム300の構成を示すブロック図である。図3Aに示すように、ネイティブプログラム300は、ミドルウェア301及びオペレーションシステム(OS)302を介してハードウェア121を制御してもよいし、図3Bに示すように、ネイティブプログラム300が、ミドルウェア及びオペレーションシステム(OS)なしで、ハードウェア121を直接制御してもよい。ここでは、説明の便宜上、一つのネイティブプログラム300だけを図示しているが、ネイティブプログラム300が複数同時に存在していても構わない。
[Native program]
Next, the
[ユーザーインタフェース提供方法]
本実施の形態に係るユーザーインタフェース提供方法について、以下で説明する。図4は、本実施の形態に係るユーザーインタフェース提供方法の一例を示すフローチャートである。
[User interface provision method]
A method for providing a user interface according to this embodiment will be described below. FIG. 4 is a flow chart showing an example of a user interface providing method according to this embodiment.
まず、GUI提供部101(図1参照)の静的コンテンツ生成部102は、イベントに応じ、テンプレート104及び画面設計情報105に基づいて、静的コンテンツを動的に生成する(ST101)。
First, static
次に、ブラウザプログラム200は、静的コンテンツを解釈し、表示部111に画面を表示させる(ST102)。
Next,
次いで、画面制御部103は、ブラウザプログラム200からイベント発生に関する情報を受信する(ST103)。
Next,
その後、画面制御部103は、ネイティブプログラム300に対して、イベントに対応する組み込み機器のハードウェア121の制御に関する制御情報を出力する(ST104)。
After that, the
図5は、本実施の形態に係るユーザーインタフェース提供方法によって提供される動的なGUIの一例を示す模式図である。 FIG. 5 is a schematic diagram showing an example of a dynamic GUI provided by the user interface providing method according to this embodiment.
ここで説明するGUIの一例は、照明コントロール装置のための動的なGUIである。図5に示すように、まず、制御対象を、2つの照明機器であるLight A又はBから選択するためのメニュー画面410を表示する。
One example of a GUI described herein is a dynamic GUI for a lighting control device. As shown in FIG. 5, first, a
メニュー画面410に表示された2つのメニューボタン411、412のうち1つ目のメニューボタン411を選択すると、Light Aを制御するためのコントロール画面420が表示される。コントロール画面420には、ONボタン421及びOFFボタン422が含まれている。コントロール画面420が最初に表示されたときには、ONボタン421がイネーブル(操作可能な状態)であり、かつ、OFFボタン422がディセイブル(操作不可能な状態)であることが一見してわかるように、OFFボタン422がグレーアウトされている。
When the
コントロール画面420に対してユーザがONボタン421をタッチし、Light Aを点灯させると、コントロール画面420のONボタン421がディセイブルに、OFFボタン422がイネーブルに変わり、ONボタン421がディセイブルであることが一見してわかるように、ONボタン421がグレーアウトされる。一方、OFFボタン422がイネーブルであることが一見してわかるように、OFFボタン422が標準の表示状態に変わる。このように、コントロール画面420において、ユーザの操作により、ONボタン421がタッチされるというイベントが発生したことに応じ、コントロール画面のONボタン421及びOFFボタン422の表示状態が更新される。
When the user touches the
以下、このような動的なGUIを本実施の形態に係るユーザーインタフェース提供装置100により実現する場合について説明する。
A case in which such a dynamic GUI is realized by the user
まず、従来のユーザーインタフェース提供装置において、動的コンテンツにより動的GUIを実現する場合について説明する。図6は、動的コンテンツを構成する構造化文書の一例を示す説明図である。構造化文書600は、スタイルシートパート601、コンテンツパート602及びスクリプトパート603で構成される。
First, a case where a dynamic GUI is realized by dynamic contents in a conventional user interface providing device will be described. FIG. 6 is an explanatory diagram showing an example of a structured document forming dynamic content. A structured
スタイルシートパート601は、構造化文書600の表示形式(体裁、見た目等)を制御するスタイルシートを含む。スタイルシートは、例えば、CSSのようなスタイルシート言語を用いて記述される。
The
コンテンツパート602は、構造化文書600の本体であり、ここに記述された内容が画面に表示される。本実施の形態において、コンテンツパート602は、例えば、少なくとも1つのブロックを含む。ここでブロックとは、例えば、div要素を用いて、コンテンツパート602に記述された内容を複数の部分に分割したとき、その一つ一つをいう。
The
コンテンツパート602において、div要素やタグ"button"に、例えば、属性"class"を併用して、ブロックに含まれる表示内容に表示形式を個別に指定することができる。
In the
例えば、本実施の形態では、まずブロックにクラス(class)名を付与する。そして、スタイルシートパート601において、属性"class"でスタイルにクラス名を指定し、そのクラス名が付けられたブロックにのみ、当該スタイルを適用させることができる。
For example, in this embodiment, first, a class name is given to a block. Then, in the
スクリプトパート603は、構造化文書に動的な処理を加えるスクリプトを含む。スクリプトは、例えば、Javascriptのようなスクリプト言語で記述される。
A
なお、ここでの説明では、構造化文書は一つのファイルで構成されているが、複数のファイルで構成されていてもよい。例えば、スタイルシートパート601を別のファイル(外部スタイルシート)としてもよいし、スクリプトパート603を別のファイル(外部スクリプト)にしても構わない。
Note that the structured document is composed of one file in the description here, but may be composed of a plurality of files. For example, the
ブラウザプログラムは、上述のような動的コンテンツのための構造化文書600を解釈し、コンテンツパート602に記述された内容に、スタイルシートパート601に記述されたスタイルシートを適用し、GUIを画面に表示させると共に、スクリプトパート603に記述されたスクリプトを実行し、GUIに動的な処理を加えることができる。
The browser program interprets the structured
一方、本実施の形態に係るユーザーインタフェース提供装置100においては、静的コンテンツ生成部102が、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて少なくとも一部が構造化文書ファイルで構成された静的コンテンツを動的に生成する。
On the other hand, in the user
図7は、本実施の形態に係るユーザーインタフェース提供装置100が使用するテンプレートの一例を示す説明図である。図7に示すテンプレート700は、構造化文書で構成されている。
FIG. 7 is an explanatory diagram showing an example of a template used by the user
テンプレート700は、スタイルシートパート701及びコンテンツパート702で構成される。スタイルシートパート701及びコンテンツパート702は、図5を参照して説明した動的コンテンツのための構造化文書600のスタイルシートパート601及びコンテンツパート602と同様である。この例では、テンプレート700は、スクリプトパートを含まない。
A
テンプレート700のスタイルシートパート701のセレクタ"container"において、動的コンテンツと同様にコントロール画面420(図5参照)の大きさ、コンテンツパート702に含まれる要素の配置及び背景色が定義されている。より具体的には、テンプレート700では、例えば、背景色を指定するプロパティ"background-color"の引数(値)を変数名"bgc1"と設定し、これにより、コントロール画面420の背景色を変更可能な表示形式にしている。
In the selector "container" of the
また、セレクタ"btn"において、ONボタン421及びOFFボタン422の大きさ、フォントサイズ及び色、並びに、背景色が定義されている。より具体的には、テンプレート700では、例えば、フォントの色を指定するプロパティ"color"の引数を変数名"fontc1"、及び、背景色を指定するプロパティ"background-color"の引数を変数名"bgc2"と定義し、これらにより、ONボタン421及びOFFボタン422のフォントの色及び背景色を変更可能な表示形式にしている。
Also, the size, font size and color of the
また、セレクタ"btn-on-active"において、ONボタン421及びOFFボタン422がアクティブな状態における背景色が定義されている。テンプレート700では、背景色を指定するプロパティ"background-color"の引数を変数名"bgc3"と設定し、これらにより、ONボタン421及びOFFボタン422がイネーブルであり、操作可能であることが認識しやすいように背景色を変更可能な表示形式にしている。
Also, in the selector "btn-on-active", a background color is defined when the
また、セレクタ"btn-off-active"において、ONボタン421及びOFFボタン422がアクティブでない状態における背景色が定義されている。テンプレート700では、背景色を指定するプロパティ"background-color"の引数を変数名"bgc4"と設定し、ONボタン421及びOFFボタン422がディセイブルであり、操作可能でないことが認識しやすいように背景色を変更可能な表示形式にしている。
In the selector "btn-off-active", a background color is defined when the
コンテンツパート702のクラス名"container"のブロックにおいて、2つの要素、すなわちONボタン421及びOFFボタン422(図5参照)をタグ"button"を用いて定義している。まず、タグ"button"において、<button>~</button>で囲まれた部分にONボタン421及びOFFボタン422上に表示される文字列"ON"及び"OFF"が定義されている。
In the block with the class name "container" of the
また、タグ"button"において、属性"class"を用いてスタイルシートパート701でセレクタにより指定されたクラス名が付与されるが、ここでは、ONボタン421及びOFFボタン422のそれぞれについて、属性"class"の変数を変数名"class1"及び"class2"とそれぞれ設定し、これにより、ONボタン421及びOFFボタン422が適用される表示形式を変更できるようにしている。
Also, in the tag "button", the class name specified by the selector in the
なお、ここで引数を変数名で定義したプロパティ及び属性の一例にすぎず、これらの一部を変数名で定義せずに固定としてもよいし、これら以外のプロパティ及び属性の引数を変数名で設定し、表示形式を変更可能なようにしてもよい。 Note that this is just an example of properties and attributes whose arguments are defined with variable names. It may be set so that the display format can be changed.
また、タグ"button"において、<button>~</button>で囲まれた部分を変数名で設定し、ONボタン421及びOFFボタン422上に表示される文字列を変更可能なようにしてもよい。
Also, in the tag "button", the part enclosed by <button> and </button> is set with a variable name so that the character strings displayed on the
本実施の形態に係るユーザーインタフェース提供装置100において、GUI提供部101の静的コンテンツ生成部102(図1参照)は、上述のようなテンプレート700に基づいて、画面設計情報105を参照し、静的コンテンツを生成する。
In user
図8及び図9は、本実施の形態に係るユーザーインタフェース提供装置により生成される静的コンテンツの一例を示す説明図である。図8は、図5に示すコントロール画面420において、ONボタン421がイネーブルであるときの静的コンテンツAを示し、図9は、コントロール画面420において、OFFボタン422がイネーブルであるときの静的コンテンツBを示す。
8 and 9 are explanatory diagrams showing an example of static content generated by the user interface providing device according to this embodiment. 8 shows static content A when the
まず、静的コンテンツA、Bに共通する点として、スタイルシートパート801、901において、背景色及びフォントの色を指定するプロパティ"color"及び"background-color"に設定されていた変数名"bgc1"、"bgc2"、"bgc3"、"bgc4"、"fontc1"に、カラーコードが設定される。
First, as a point common to the static contents A and B, in the
また、図8に示すように、静的コンテンツAのコンテンツパート802において、1つめのタグ"button"(ONボタン421に対応)の属性"class"の変数名"class1"に、クラス名"btn"、"btn-on-active"が設定される。
Also, as shown in FIG. 8, in the
また、静的コンテンツAのコンテンツパート802において、2つめのタグ"button"(OFFボタン422に対応)の属性"class"の変数名"class2"に、クラス名"btn"が設定されると共に、属性"disable"が設定され、OFFボタン422が無効化される。
Also, in the
一方、図9に示すように、静的コンテンツBのコンテンツパート902において、1つめのタグ"button"(ONボタン421に対応)の属性"class"の変数名"class1"に、クラス名"btn"が設定されると共に、属性"disable"が設定され、ONボタン421が無効化される。
On the other hand, as shown in FIG. 9, in the
また、静的コンテンツBのコンテンツパート902において、2つめのタグ"button"(OFFボタン422に対応)の属性"class"の変数名"class2"に、クラス名"btn"、"btn-on-active"が設定される。
In the
本実施の形態では、GUI提供部101(図1参照)の画面制御部103が、画面設計情報105に含まれる画面遷移情報に基づいて、照明機器の動作状況に応じて静的コンテンツA、Bを、ブラウザブラグラム200により処理させ、表示部111に表示させる。
In this embodiment, the
例えば、照明装置が点灯していない状態では、画面制御部103は、画面遷移情報に基づいて、静的コンテンツAを、ブラウザプログラム200に処理させ、表示部111にONボタン421がイネーブルであるコントロール画面420を表示させる。
For example, when the lighting device is not turned on, the
コントロール画面420のONボタン421に対し、ユーザにより入力部112を介した操作が行なれると、画面制御部103は、ブラウザプログラム200から、ONボタン421に対して操作イベント発生に関する情報を受信する。画面制御部103は、操作イベントに対応する制御情報を画面設計情報105に基づいて取得し、当該制御情報をネイティブプログラム300に出力し、照明装置をONにする制御を実行させる。
When the
制御が実行され成功すると、ネイティブプログラム300から照明装置がONになったことを示す状態情報を送信する。これに応じて、画面制御部103は、画面遷移情報に基づいて、静的コンテンツBを、ブラウザプログラム200に処理させ、表示部111にONボタン421がディセイブルであるコントロール画面420を表示させる。
When the control is successfully executed, the
このように、照明装置がONになったことに応じて、図5に示すように、コントロール画面420が切り替えられるので、ネイティブプログラム300からのフィードバックを反映している。
As described above, the
以上説明したように、本実施の形態に係るユーザーインタフェース提供装置100によれば、静的コンテンツを用いて動的なGUIを実現できるので、動的コンテンツを用いた場合に比べてバグが少なくなり、テスト項目を少なくすることができる。
As described above, according to the user
また、GUI提供部101の画面制御部103が、ネイティブプログラム300からのフィードバックを反映して、画面の切り替えを行うため、組み込み機器の動作状態の変化に応じてGUIの変更が適切なタイミングに行われるかどうかを確認するためのテストの手間を省くことができる。
In addition, since the
以上説明した本実施の形態によれば、組み込み機器のために、動的な表現に富んだGUIを短期及び低コストで開発できる。 According to the present embodiment described above, a GUI rich in dynamic expressions can be developed in a short period of time and at low cost for an embedded device.
[組み込み機器の構成]
図10は、本実施の形態に係るユーザーインタフェース提供装置が適用される組み込み機器の機能構成の一例を示す図である。図10に示すように、組み込み機器10は、制御部11と、記憶部12と、通信部13と、入力部14と、出力部15と、を有する。なお、図10では、本実施の形態における特徴部分の機能ブロックを主に示しており、組み込み機器10は、他の処理に必要な他の機能ブロックも有してもよい。また、一部の機能ブロックを含まない構成としてもよい。
[Configuration of embedded device]
FIG. 10 is a diagram showing an example of the functional configuration of an embedded device to which the user interface providing device according to this embodiment is applied. As shown in FIG. 10 , the embedded
制御部11は、組み込み機器10の制御を実施する。制御部11は、本発明に係る技術分野での共通認識に基づいて説明されるコントローラ、制御回路又は制御装置により構成することができる。
The
例えば、制御部11は、組み込み機器10の特定の用途に必要な制御を実施してもよい。制御部11は、通信部13の通信を介してデータを受信したり、データを送信したり、行ってもよい。
For example, the
また、例えば、組み込み機器10が照明機器のコントローラである場合、制御部11は、照明機器の点灯、消灯、明暗、色調などを制御する機能を含んでもよい。
Further, for example, if the embedded
また、例えば、組み込み機器10が自動洗濯機のコントローラである場合、制御部11は、自動洗濯機の洗浄時間、すすぎ時間、脱水時間などを制御する機能を含んでもよい。
Further, for example, when the embedded
記憶部12は、組み込み機器10において利用する情報を記憶(保持)する。例えば、記憶部12は、テンプレート104及び画面設計情報105(図1参照)を記憶してもよい。記憶部12は、例えば、本発明に係る技術分野での共通認識に基づいて説明されるメモリ、ストレージ、記憶装置などにより構成することができる。
The
通信部13は、インターネットを介して他の通信デバイス(組み込み機器、サーバなど)と通信を行ってもよい。また、通信部13は、受信した種々の情報を制御部11に出力してもよい。
The
通信部13は、本発明に係る技術分野での共通認識に基づいて説明されるトランスミッター/レシーバー、送受信回路又は送受信装置により構成することができる。なお、通信部13は、送信部及び受信部から構成されてもよい。
The
入力部14は、ユーザからの操作により入力を受け付ける。また、入力部14は、所定の機器、記憶媒体などと接続され、データの入力を受け付けてもよい。入力部14は、入力結果を例えば制御部11に出力してもよい。
The
入力部14は、本発明に係る技術分野での共通認識に基づいて説明されるキーボード、マウス、ボタンなどの入力装置、入出力端子、入出力回路などにより構成することができる。また、入力部14は、表示部と一体となった構成(例えば、タッチパネルディスプレイ)としてもよい。
The
出力部15は、コンテンツの描画を行って、出力する。例えば、出力部15は、テキスト、画像などを表示する表示部、音声を出力する音声出力部などを含んで構成されてもよい。
The
表示部111(図1参照)は、例えば、本発明に係る技術分野での共通認識に基づいて説明されるディスプレイ、モニタなどの表示装置により構成することができる。また、音声出力部は、本発明に係る技術分野での共通認識に基づいて説明されるスピーカーなどの出力装置により構成することができる。 The display unit 111 (see FIG. 1) can be configured by, for example, a display device such as a display or a monitor, which are explained based on common recognition in the technical field of the present invention. Also, the audio output unit can be configured by an output device such as a speaker, which is explained based on the common recognition in the technical field related to the present invention.
出力部15は、例えば、本発明に係る技術分野での共通認識に基づいて説明される演算器、演算回路、演算装置、プレイヤー、画像/映像/音声処理回路、画像/映像/音声処理装置、アンプなどを含んで構成することができる。
The
[ハードウェア構成]
なお、上記実施の形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的に結合した1つの装置により実現されてもよいし、物理的に分離した2つ以上の装置を有線又は無線によって接続し、これら複数の装置により実現されてもよい。
[Hardware configuration]
It should be noted that the block diagrams used in the description of the above embodiments show blocks in units of functions. These functional blocks (components) are implemented by any combination of hardware and/or software. Further, means for realizing each functional block is not particularly limited. In other words, each functional block may be realized by one physically connected device, or may be realized by two or more physically separated devices connected by wire or wirelessly. good.
図11は、本実施の形態に係るユーザーインタフェース提供装置が適用される組み込み機器のハードウェア構成の一例を示す図である。上述の組み込み機器10は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1008などを含むコンピュータ装置として構成されてもよい。
FIG. 11 is a diagram showing an example of the hardware configuration of an embedded device to which the user interface providing device according to this embodiment is applied. The embedded
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。組み込み機器10のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
Note that in the following description, the term "apparatus" can be read as a circuit, device, unit, or the like. The hardware configuration of the embedded
例えば、プロセッサ1001は1つだけ図示されているが、複数のプロセッサがあってもよい。また、処理は、1つのプロセッサによって実行されてもよいし、処理が同時に、逐次に、又はその他の手法を用いて、1以上のプロセッサによって実行されてもよい。
For example, although only one
組み込み機器10における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みなどを制御することによって実現される。
Each function in the embedded
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインタフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。なお、上述の制御部11などの各部は、プロセッサ1001によって実現されてもよい。プロセッサ1001は、1以上のチップによって実装されてもよい。
The
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ1003及び/又は通信装置1004からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、制御部11は、メモリ1002に格納され、プロセッサ1001において動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。
The
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically EPROM)、RAM(Random Access Memory)、その他の適切な記憶媒体の少なくとも1つによって構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本実施の形態に係る広告配信方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
The
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、フレキシブルディスク、フロッピー(登録商標)ディスク、光磁気ディスク(例えば、コンパクトディスク(CD-ROM(Compact Disc ROM)など)、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、リムーバブルディスク、ハードディスクドライブ、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、磁気ストライプ、データベース、サーバ、その他の適切な記憶媒体の少なくとも1つによって構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。なお、上述の記憶部12は、メモリ1002及び/又はストレージ1003によって実現されてもよい。
The
通信装置1004は、有線及び/又は無線ネットワークを介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。なお、上述の通信部13は、通信装置1004によって実現されてもよい。
The
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウスなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカーなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。なお、上述の入力部14及び出力部15は、それぞれ入力装置1005及び出力装置1006によって実現されてもよい。
The
また、プロセッサ1001、メモリ1002などの各装置は、情報を通信するためのバス1008によって接続される。バス1008は、単一のバスによって構成されてもよいし、装置間で異なるバスで構成されてもよい。
Devices such as the
また、組み込み機器10は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つで実装されてもよい。
The embedded
[プログラム構成]
本実施の形態に係るユーザーインタフェース提供方法を実現するプログラムは、例えば、図1を参照して説明したように、GUI提供プログラムと、ブラウザプログラム200と、ネイティブプログラム300と、で構成されるが、これに限定されるものではない。例えば、GUI提供プログラム、ブラウザプログラム200及びネイティブプログラム300が、一つのプログラムになっていてもよい。また、GUI提供プログラム及びブラウザプログラム200が一つのプログラムになっていてもよい。
[Program structure]
A program that implements the user interface providing method according to the present embodiment includes, for example, a GUI providing program, a
また、ブラウザプログラム200は、一般的なインターネットブラウザプログラムと同様にインターネットコンテンツを解釈及び描画可能な構成であってもよいし、本発明の実現のために、GUI提供プログラムが出力するブラウザ表示可能コンテンツのみを解釈及び描画可能な構成であってもよい。
In addition, the
また、GUI提供プログラムは、ライブラリの形式であってもよい。ライブラリとは、汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたものであり、それ単体ではプログラムとして作動させることはできない、つまり実行ファイルの形式でなくてもよい。つまり、ライブラリは、他のプログラムに何らかの機能を提供するコードの集まりであってもよい。 Also, the GUI providing program may be in the form of a library. A library is a collection of highly versatile programs in a reusable form, and cannot be operated as a single program, that is, does not have to be in the form of an executable file. In other words, a library may be a collection of code that provides some functionality to other programs.
[変形例]
なお、上述の実施の形態では、例を示したが、これに限られない。上述の実施の形態では、ユーザーインタフェース提供装置が組み込み機器自体である場合を例に挙げて説明したが、組み込み機器の表示部に、外部のユーザーインタフェース提供装置が出力したGUIを表示させるようにしても構わない。
[Modification]
In addition, although an example was shown in the above-described embodiment, the present invention is not limited to this. In the above-described embodiments, the case where the user interface providing device is the embedded device itself has been described as an example. I don't mind.
また、本明細書において説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。 Also, the terms described in this specification and/or terms necessary for understanding this specification may be replaced with terms having the same or similar meanings.
本明細書において説明した情報、パラメータなどは、絶対値によって表されてもよいし、所定の値からの相対値によって表されてもよいし、対応する別の情報によって表されてもよい。また、本明細書においてパラメータなどに使用する名称は、いかなる点においても限定的なものではない。 The information, parameters, etc. described herein may be represented by absolute values, by relative values from a predetermined value, or by corresponding other information. Also, the names used for parameters and the like in this specification are not restrictive in any respect.
本明細書において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。 Information, signals, etc. described herein may be represented using any of a variety of different technologies. For example, data, instructions, commands, information, signals, bits, symbols, chips, etc. that may be referred to throughout the above description may refer to voltages, currents, electromagnetic waves, magnetic fields or magnetic particles, light fields or photons, or any of these. may be represented by a combination of
情報、信号などは、複数のネットワークノードを介して入出力されてもよい。入出力された情報、信号などは、特定の場所(例えば、メモリ)に保存されてもよいし、テーブルを用いて管理してもよい。入出力される情報、信号などは、上書き、更新又は追記をされ得る。出力された情報、信号などは、削除されてもよい。入力された情報、信号などは、他の装置へ送信されてもよい。 Information, signals, etc. may be input and output through multiple network nodes. Input/output information, signals, and the like may be stored in a specific location (for example, memory), or may be managed using a table. Input and output information, signals, etc. may be overwritten, updated or appended. Output information, signals, etc. may be deleted. Input information, signals, etc. may be transmitted to other devices.
また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗示的に(例えば、当該所定の情報の通知を行わないことによって)行われてもよい。 In addition, the notification of the predetermined information (for example, the notification of "being X") is not limited to being performed explicitly, but may be performed implicitly (for example, by not notifying the predetermined information). may
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。 Software, whether referred to as software, firmware, middleware, microcode, hardware description language or otherwise, includes instructions, instruction sets, code, code segments, program code, programs, subprograms, and software modules. , applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, and the like.
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)など)及び/又は無線技術(赤外線、マイクロ波など)を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。 Software, instructions, information, etc. may also be sent and received over a transmission medium. For example, the software uses wired technology (coaxial cable, fiber optic cable, twisted pair and digital subscriber line (DSL), etc.) and/or wireless technology (infrared, microwave, etc.) to access websites, servers, or other When transmitted from a remote source, these wired and/or wireless technologies are included within the definition of transmission media.
本明細書において使用する「システム」及び「ネットワーク」という用語は、互換的に使用される。 As used herein, the terms "system" and "network" are used interchangeably.
本明細書において説明した各態様/実施の形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、本明細書で説明した各態様/実施の形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書において説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。 Each aspect/embodiment described in this specification may be used alone, may be used in combination, or may be used by switching according to execution. Also, the processing procedures, sequences, flowcharts, etc. of each aspect/embodiment described in this specification may be rearranged in order as long as there is no contradiction. For example, the methods described herein present elements of the various steps in a sample order, and are not limited to the specific order presented.
本明細書において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。 As used herein, the phrase "based on" does not mean "based only on," unless expressly specified otherwise. In other words, the phrase "based on" means both "based only on" and "based at least on."
本明細書において使用する「第1の」、「第2の」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定するものではない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書において使用され得る。したがって、第1及び第2の要素の参照は、2つの要素のみが採用され得ること、又は何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。 Any reference to elements using the "first," "second," etc. designations used herein does not generally limit the quantity or order of those elements. These designations may be used herein as a convenient method of distinguishing between two or more elements. Thus, references to first and second elements do not imply that only two elements may be employed or that the first element must precede the second element in any way.
以上、本発明に係る発明について詳細に説明したが、当業者にとっては、本発明に係る発明が本明細書中に説明した実施の形態に限定されないということは明らかである。本発明に係る発明は、請求の範囲の記載に基づいて定まる発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とし、本発明に係る発明に対して何ら制限的な意味をもたらさない。 Although the invention according to the present invention has been described in detail above, it will be apparent to those skilled in the art that the invention according to the present invention is not limited to the embodiments described herein. The invention according to the present invention can be implemented as modifications and changes without departing from the spirit and scope of the invention determined based on the description of the claims. Therefore, the descriptions in this specification are for the purpose of illustration, and do not impose any limitation on the invention according to the present invention.
以上説明したように、組み込み機器のために、動的な表現に富んだGUIを短期及び低コストで開発できるという効果を有し、特に、IoT機器に有用である。 As described above, there is an effect that a GUI rich in dynamic expressions can be developed in a short period of time and at a low cost for embedded devices, and it is particularly useful for IoT devices.
10 組み込み機器
11 制御部
12 記憶部
13 通信部
14 入力部
15 出力部
100 ユーザーインタフェース提供装置
101 GUI提供部
102 静的コンテンツ生成部(静的コンテンツ生成手段)
103 画面制御部(制御要求手段)
104 テンプレート
105 画面設計情報(画面の設計情報)
111 表示部
112 入力部
121 ハードウェア
200 ブラウザプログラム
201 ユーザーインタフェース
202 ブラウザエンジン
203 レンダリングエンジン
204 ネットワーキングモジュール
205 スクリプトエンジン
206 データストレージ
300 ネイティブプログラム
301 ミドルウェア
410 メニュー画面
411 メニューボタン
412 メニューボタン
420 コントロール画面
421 ONボタン
422 OFFボタン
600 構造化文書
601、701、801、901 スタイルシートパート
602、702、802、902 コンテンツパート
603 スクリプトパート
700 テンプレート
10 embedded
103 Screen control unit (control request means)
104
111
Claims (5)
前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力する制御要求手段と、を有することを特徴とするユーザーインタフェース提供装置。 static content generation means for dynamically generating static content , at least a portion of which is composed of a structured document file, according to an event based on template and screen design information for the user interface ;
To the native program that interprets the static content, acquires user operation information regarding the user's operation on the screen from the browser program that displays the screen on the display unit, and controls the embedded device and control request means for outputting control information relating to control of the embedded device corresponding to the user operation information.
イベントに応じ、少なくとも一部が構造化文書ファイルで構成された静的コンテンツを、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて動的に生成するステップと、
前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、前記組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力するステップと、
を有することを特徴とするユーザーインタフェース提供方法。 executed by an embedded device,
dynamically generating, in response to an event, static content , at least a portion of which is a structured document file, based on template and screen design information for the user interface ;
To the native program that interprets the static content, acquires user operation information about the user's operation on the screen from the browser program that displays the screen on the display unit, and controls the embedded device a step of outputting control information related to control of the embedded device corresponding to the user operation information;
A method for providing a user interface, comprising:
イベントに応じ、少なくとも一部が構造化文書ファイルで構成された静的コンテンツを、テンプレート及びユーザーインタフェースのための画面の設計情報に基づいて動的に生成する手順と、
前記静的コンテンツを解釈し、表示部に前記画面を表示させるブラウザプログラムから、前記画面に対して行われたユーザによる操作に関するユーザ操作情報を取得し、前記組み込み機器の制御を行うネイティブプログラムに対して、前記ユーザ操作情報に対応する前記組み込み機器の制御に関する制御情報を出力する手順と、
を実行させることを特徴とするプログラム。 embedded devices,
a procedure for dynamically generating static content , at least a portion of which is composed of a structured document file, according to an event, based on a template and screen design information for a user interface ;
To the native program that interprets the static content, acquires user operation information about the user's operation on the screen from the browser program that displays the screen on the display unit, and controls the embedded device a step of outputting control information related to control of the embedded device corresponding to the user operation information;
A program characterized by causing the execution of
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018230638A JP7159027B2 (en) | 2018-12-10 | 2018-12-10 | User interface providing device, user interface providing method, program and embedded device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018230638A JP7159027B2 (en) | 2018-12-10 | 2018-12-10 | User interface providing device, user interface providing method, program and embedded device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020095308A JP2020095308A (en) | 2020-06-18 |
JP7159027B2 true JP7159027B2 (en) | 2022-10-24 |
Family
ID=71085700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018230638A Active JP7159027B2 (en) | 2018-12-10 | 2018-12-10 | User interface providing device, user interface providing method, program and embedded device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7159027B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230014542A (en) | 2021-07-21 | 2023-01-30 | 현대자동차주식회사 | System and method for providing graphical user interface thereof |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000250841A (en) | 1999-03-02 | 2000-09-14 | Hitachi Ltd | Page generation method and apparatus, storage medium storing page generation program, and electronic mall system |
JP2004078341A (en) | 2002-08-12 | 2004-03-11 | Sony Corp | Data processor, its method and its program |
JP2006323610A (en) | 2005-05-18 | 2006-11-30 | Canon Inc | Image processing apparatus, its control method and program |
JP2011008490A (en) | 2009-06-25 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | Incorporated equipment and its state display control method |
JP2013077279A (en) | 2011-09-16 | 2013-04-25 | Ricoh Co Ltd | Information processing system, equipment, information processor, information processing method, information notification method, and program |
JP2016218705A (en) | 2015-05-20 | 2016-12-22 | 株式会社リコー | Information processing device, apparatus, information processing system, information processing method, and program |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1188965A (en) * | 1997-09-12 | 1999-03-30 | Matsushita Electric Ind Co Ltd | Equipment control device |
-
2018
- 2018-12-10 JP JP2018230638A patent/JP7159027B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000250841A (en) | 1999-03-02 | 2000-09-14 | Hitachi Ltd | Page generation method and apparatus, storage medium storing page generation program, and electronic mall system |
JP2004078341A (en) | 2002-08-12 | 2004-03-11 | Sony Corp | Data processor, its method and its program |
JP2006323610A (en) | 2005-05-18 | 2006-11-30 | Canon Inc | Image processing apparatus, its control method and program |
JP2011008490A (en) | 2009-06-25 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | Incorporated equipment and its state display control method |
JP2013077279A (en) | 2011-09-16 | 2013-04-25 | Ricoh Co Ltd | Information processing system, equipment, information processor, information processing method, information notification method, and program |
JP2016218705A (en) | 2015-05-20 | 2016-12-22 | 株式会社リコー | Information processing device, apparatus, information processing system, information processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP2020095308A (en) | 2020-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106569900B (en) | Applied program processing method and device | |
CN104636139B (en) | One kind visualizes cross-platform mobile application exploitation and generation system | |
US10643023B2 (en) | Programmatic native rendering of structured content | |
WO2018095261A1 (en) | Page rendering method, device, and data storage medium | |
US8732588B2 (en) | Method and apparatus for remotely displaying screen files and efficiently handling remote operator input | |
CN112800370B (en) | Processing method and device of business document, computer equipment and storage medium | |
US8930824B2 (en) | Facilitating propagation of user interface patterns or themes | |
CN110673847A (en) | Configuration page generation method and device, electronic equipment and readable storage medium | |
US9122763B2 (en) | Consistent web application presentation | |
CN112100550A (en) | Page construction method and device | |
CN110221899B (en) | User interface adjusting method, device and system | |
JP4893108B2 (en) | Information processing apparatus, information processing method, and computer program | |
CN112395027B (en) | Widget interface generation method and device, storage medium and electronic equipment | |
CN107092589B (en) | Web server system, screen control display method, and presentation application generation method | |
CN112269576A (en) | Component display method and device, server and storage medium | |
CN105359104A (en) | Synchronization points for state information | |
JP7159027B2 (en) | User interface providing device, user interface providing method, program and embedded device | |
CN109857503B (en) | Page interaction effect self-adaption method and device and electronic equipment | |
JP7014960B2 (en) | Information processing equipment, servers, their processing methods and programs | |
KR100755253B1 (en) | System and method for interactive wireless applications with conditional ui controls and screen navigation | |
CN112130888B (en) | Method, device, equipment and computer storage medium for updating application program | |
CN113157270A (en) | Page adaptation method and device | |
CN110083407B (en) | Method and device for realizing step bar in applet, electronic equipment and storage medium | |
US20120304120A1 (en) | Data-driven menuing system for providing a flexible user interface on an electronic device | |
JP2010262548A (en) | Data providing method and server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210830 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220527 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220531 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220715 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221011 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221012 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7159027 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |