(57)【要約】  一態様では、ネイティブ・ウェブ・アプリを可能にするための方法およびシステムが提供され、前記方法は、ネイティブ・ウェブ・アプリケーション（「アプリ」）をアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記ネイティブ・ウェブ・アプリは、ユニフォーム・リソース・ロケーター（「ＵＲＬ」）に関連付けられているウェブ・アプリに関連付けられている機能を提供し、前記ウェブ・アプリは、ユーザのモバイル・デバイスにおいてブラウザ・アプリによって表示可能な一組のコンテンツを提供する、工程と、前記ネイティブ・ウェブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、前記ＵＲＬを用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程と、前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程と、を備える。
2017513137.tif 000002
【特許請求の範囲】
【請求項１】
ネイティブ・ウェブ・アプリを可能にするための方法において、
ネイティブ・ウェブ・アプリケーション（「アプリ」）を第１モバイル・デバイスにおいてアクセス可能なアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記ネイティブ・ウェブ・アプリは、ユニフォーム・リソース・ロケーター（「ＵＲＬ」）に関連付けられているウェブ・アプリに関連付けられている機能を提供し、前記ウェブ・アプリは、ユーザのモバイル・デバイスにおいてブラウザ・アプリによって表示可能な一組のコンテンツを提供する、工程と、
前記ネイティブ・ウェブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、
ブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、
前記ＵＲＬを用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程と、
前記リクエストに応じて、前記ユーザに表示するために前記一組のパーミッションを提供する工程と、
前記一組のパーミッションのうちの１つ以上のパーミッションの承諾を前記ユーザから受信する工程と、
前記承諾を受信することに応じて、前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程と、を備える方法。
【請求項２】
前記マニフェスト・ファイルと前記一組の命令とを生成する工程と、
ユーザのモバイル・デバイスにおいてアクセス可能な前記アプリ・ストア内の前記ネイティブ・ウェブ・アプリとして、前記マニフェスト・ファイルと一組の命令とを提供する工程と、をさらに備える、請求項１に記載の方法。
【請求項３】
前記マニフェスト・ファイルは、前記ネイティブ・ウェブ・アプリに関連付けられている固有の名前およびロゴをさらに含む、請求項１に記載の方法。
【請求項４】
前記マニフェスト・ファイルは、さらに、インテントのリストを含み、前記リストは、前記ネイティブ・ウェブ・アプリによってサービスが提供される１つ以上のウェブ・ページまたはアプリを指定する、請求項１に記載の方法。
【請求項５】
前記ネイティブ・ウェブ・アプリをインストールすることに応じて、前記第１モバイル・デバイスにおいて前記ネイティブ・ウェブ・アプリに関連付けられているアイコンを表示する工程をさらに備える、請求項１に記載の方法。
【請求項６】
前記アイコンは、前記マニフェスト・ファイルにしたがって前記ネイティブ・ウェブ・アプリに関連付けられている名前およびロゴのうちの少なくとも一方を含む、請求項５に記載の方法。
【請求項７】
前記ネイティブ・ウェブ・アプリは、１つ以上のネイティブ・アプリと同じ場所にインストールされる、請求項１に記載の方法。
【請求項８】
前記第１モバイル・デバイスにインストールされた前記ネイティブ・ウェブ・アプリを起動するためのリクエストを前記第１モバイル・デバイスにおいて受信する工程と、
前記リクエストに応じて前記ネイティブ・ウェブ・アプリを起動する工程と、をさらに備える、請求項１に記載の方法。
【請求項９】
前記ネイティブ・ウェブ・アプリを起動することは、前記ネイティブ・ウェブ・アプリに関連付けられている前記ＵＲＬを用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動することを含む、請求項８に記載の方法。
【請求項１０】
前記ネイティブ・ウェブ・アプリを起動することは、前記一組の命令を実行することを含む、請求項８に記載の方法。
【請求項１１】
前記リクエストは、前記モバイル・デバイスにおけるユーザからのリクエストを含む、請求項８に記載の方法。
【請求項１２】
前記リクエストは、前記ネイティブ・ウェブ・アプリによってサービスが提供されるアプリにサービスを提供するためのリクエストを含む、請求項８に記載の方法。
【請求項１３】
前記マニフェスト・ファイルにしたがって前記ネイティブ・ウェブ・アプリを起動することに応じて、前記第１モバイル・デバイスにおいて動作しているアプリのリストに前記ネイティブ・ウェブ・アプリを追加する工程をさらに備える、請求項８に記載の方法。
【請求項１４】
前記ネイティブ・ウェブ・アプリを起動することによって、前記ウェブ・アプリの前記コンテンツがフルスクリーン・モードで前記ユーザに表示される、請求項８に記載の方法。
【請求項１５】
ネイティブ・ウェブ・アプリを可能にするためのシステムにおいて、該システムは、
１つ以上のプロセッサと、
命令が記憶されている機械可読媒体と、を含み、前記命令は、前記プロセッサによる実行時に、前記プロセッサに、
ネイティブ・ウェブ・アプリケーション（「アプリ」）を第１モバイル・デバイスにおいてアクセス可能なアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記アプリ・ストアは、１つ以上のモバイル・デバイスに対し複数のネイティブ・アプリを提供し、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリによって表示可能な一組のコンテンツを提供するウェブ・アプリに関連付けられている機能を提供する、工程と、
前記ネイティブ・ウェブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、
ブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、
前記ウェブ・アプリに関連付けられているユニフォーム・リソース・ロケーター（「ＵＲＬ」）を用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程と、
前記リクエストに応じて、前記ユーザに表示するために前記一組のパーミッションを提供する工程と、
前記ブラウザ・アプリをフルスクリーン・モードで表示するための前記パーミッションの承諾を受信する工程と、
前記承諾を受信することに応じて、前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程と、
前記ネイティブ・ウェブ・アプリをインストールすることに応じて、前記第１モバイル・デバイス上の前記ネイティブ・ウェブ・アプリに関連付けられているアイコンを表示する工程と、を含む動作を実行させるシステム。
【請求項１６】
前記動作は、
前記マニフェスト・ファイルと前記一組の命令とを生成する工程と、
前記アプリ・ストアを含む１つ以上のアプリ・ストアに前記ネイティブ・ウェブ・アプリを提出する工程であって、前記１つ以上のアプリ・ストアの各々は、１つ以上のモバイル・デバイスに対し複数のネイティブ・アプリを提供する、工程と、をさらに含む、請求項１５に記載のシステム。
【請求項１７】
前記動作は、
前記モバイル・デバイスにインストールされた前記ネイティブ・ウェブ・アプリを起動するためのリクエストを前記第１モバイル・デバイスにおいて受信する工程と、
前記リクエストに応じて前記ネイティブ・ウェブ・アプリを起動する工程であって、前記ネイティブ・ウェブ・アプリを起動することは、前記ＵＲＬを用いて、前記モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動させるための前記一組の命令を実行することを含む、工程と、をさらに含む、請求項１５に記載のシステム。
【請求項１８】
命令が記憶されている機械可読媒体において、前記命令は、機械による実行時に、前記機械に、
ネイティブ・ウェブ・アプリケーション（「アプリ」）を第１モバイル・デバイスにおいてアクセス可能なアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記アプリ・ストアは、１つ以上のモバイル・デバイスに対し複数のネイティブ・アプリを提供し、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリによって表示可能な一組のコンテンツを提供するウェブ・アプリに関連付けられている機能を提供する、工程と、
前記ネイティブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、
モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、
前記ウェブ・アプリに関連付けられているユニフォーム・リソース・ロケーター（「ＵＲＬ」）を用いて、ブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程と、
前記リクエストに応じて、前記ユーザに表示するために前記一組のパーミッションを提供する工程と、
前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程と、を含む動作を実行させる機械可読媒体。
【請求項１９】
前記動作は、
前記マニフェスト・ファイルと前記一組の命令とを生成する工程と、
前記アプリ・ストアを含む１つ以上のアプリ・ストアに前記ネイティブ・ウェブ・アプリを提出する工程であって、前記１つ以上のアプリ・ストアの各々は、１つ以上のモバイル・デバイスに対し複数のネイティブ・アプリを提供する、工程と、をさらに含む、請求項１８に記載の機械可読媒体。
【請求項２０】
前記動作は、
インストールされた前記ネイティブ・ウェブ・アプリを起動するためのリクエストを前記第１モバイル・デバイスにおいて受信する工程と、
前記リクエストに応じて前記ネイティブ・ウェブ・アプリを起動する工程であって、前記ネイティブ・ウェブ・アプリを起動することは、前記ＵＲＬを用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動させるための前記一組の命令を実行することを含む、工程と、をさらに含む、請求項１８に記載の機械可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネイティブ・ウェブベース・アプリケーションに関する。
【背景技術】
【０００２】
モバイル・デバイスを通じて提示されるアプリ・ストアは、一群のネイティブ・アプリをユーザに提供する。これらのネイティブ・アプリはアプリ・ストアを通じて購入され、モバイル・デバイスにインストールされてもよい。また、ネイティブ・ブラウザ・アプリを通じてアクセス可能な様々なウェブサイトも、モバイル・デバイスにおいて、ネイティブ・アプリと同様のアプリ機能を提供するが、通常はウェブ用に開発されているので、ウェブ・ブラウザ・アプリを通じてアクセス可能であるに過ぎない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、ネイティブ・ウェブベース・アプリケーションに関する。
【課題を解決するための手段】
【０００４】
開示される主題は、ネイティブ・ウェブ・アプリケーション（「アプリ」）を第１モバイル・デバイスにおいてアクセス可能なアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記ネイティブ・ウェブ・アプリは、ユニフォーム・リソース・ロケーター（「ＵＲＬ」）に関連付けられているウェブ・アプリに関連付けられている機能を提供し、前記ウェブ・アプリは、ユーザのモバイル・デバイスにおいてブラウザ・アプリによって表示可能な一組のコンテンツを提供する、工程を備える機械実装方法に関する。前記方法は、前記ネイティブ・ウェブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、前記ＵＲＬを用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程をさらに備えていてもよい。前記方法は、前記リクエストに応じて、前記ユーザに表示するために前記一組のパーミッションを提供する工程をさらに備えていてもよい。前記方法は、前記一組のパーミッションのうちの１つ以上のパーミッションの承諾を前記ユーザから受信する工程をさらに備えていてもよい。前記方法は、前記承諾を受信することに応じて、前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程をさらに備えていてもよい。他の態様が、コンピュータ・プログラム製品を含む対応するシステムおよび装置において、具現化されてもよい。
【０００５】
また、開示される主題は、１つ以上のプロセッサと、命令が記憶されている機械可読媒体と、を含み、前記命令は、前記プロセッサによる実行時に、前記プロセッサに、ネイティブ・ウェブ・アプリケーション（「アプリ」）を第１モバイル・デバイスにおいてアクセス可能なアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記アプリ・ストアは、１つ以上のモバイル・デバイスに対し複数のネイティブ・アプリを提供し、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリによって表示可能な一組のコンテンツを提供するウェブ・アプリに関連付けられている機能を提供する、工程を含む動作を実行させるシステムに関する。前記動作は、前記ネイティブ・ウェブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、前記ウェブ・アプリに関連付けられているユニフォーム・リソース・ロケーター（「ＵＲＬ」）を用いて、前記第１モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程をさらに含んでいてもよい。前記動作は、前記リクエストに応じて、前記ユーザに表示するために前記一組のパーミッションを提供する工程をさらに含んでいてもよい。前記動作は、前記ブラウザ・アプリをフルスクリーン・モードで表示するための前記パーミッションの承諾を受信する工程をさらに含んでいてもよい。前記動作は、前記承諾を受信することに応じて、前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程をさらに含んでいてもよい。前記動作は、前記ネイティブ・ウェブ・アプリをインストールすることに応じて、前記第１モバイル・デバイス上の前記ネイティブ・ウェブ・アプリに関連付けられているアイコンを表示する工程をさらに含んでいてもよい。
【０００６】
また、開示される主題は、命令が記憶されている機械可読媒体において、前記命令は、機械による実行時に、前記機械に、ネイティブ・ウェブ・アプリケーション（「アプリ」）を第１モバイル・デバイスにおいてアクセス可能なアプリ・ストアからインストールするためのリクエストを、前記第１モバイル・デバイスにおいてユーザから受信する工程であって、前記アプリ・ストアは、１つ以上のモバイル・デバイスに対し複数のネイティブ・アプリを提供し、前記ネイティブ・ウェブ・アプリは、ブラウザ・アプリによって表示可能な一組のコンテンツを提供するウェブ・アプリに関連付けられている機能を提供する、工程を含む動作を実行させる機械可読媒体に関する。前記動作は、前記ネイティブ・アプリにアクセスする工程であって、前記ネイティブ・ウェブ・アプリは、モバイル・デバイスにおいてブラウザ・アプリをフルスクリーン・モードで表示するためのパーミッションを含む一組のパーミッションを含むマニフェスト・ファイルと、前記ウェブ・アプリに関連付けられているユニフォーム・リソース・ロケーター（「ＵＲＬ」）を用いて、ブラウザ・アプリをフルスクリーン・モードで起動するための命令を含む一組の命令と、を含む、工程をさらに含んでいてもよい。前記動作は、前記リクエストに応じて、前記ユーザに表示するために前記一組のパーミッションを提供する工程をさらに含んでいてもよい。前記動作は、前記第１モバイル・デバイス上に前記ネイティブ・ウェブ・アプリをインストールする工程をさらに含んでいてもよい。
【０００７】
本願技術の様々な構成が例示のために図示および説明される以下の詳細な説明から、本願技術の他の構成が容易に識別されると理解される。以下から分かるように、本願技術の範囲を逸脱することなく、本願技術は他の異なる構成が可能であり、そのいくつかの詳細は他の様々な点において変形が可能である。したがって、図面および詳細な説明は、本来は例示的であると考えられ、制限的であるとは考えられない。
【０００８】
本願技術のある特徴は、添付される請求項に示される。しかしながら、説明の目的で、本願技術のいくつかの実施形態が以下の図面において示される。
【図面の簡単な説明】
【０００９】
【図１】ネイティブ・アプリケーションと同様の挙動を有する、モバイル・デバイスにおけるネイティブ・ウェブ・アプリケーションの生成を提供する例示的なクライアント・サーバ・ネットワーク環境を示す図。
【図２】ネイティブ・ウェブ・アプリケーションを生成するための例示的なプロセスのフロー図。
【図３】ユーザのモバイル・デバイスにおけるネイティブ・ウェブ・アプリケーションのインストールを可能にするための例示的なプロセスのフロー図。
【図４】ユーザのモバイル・デバイスにおけるネイティブ・ウェブ・アプリケーションの起動を可能にするための例示的なプロセスのフロー図。
【図５】本願技術のいくつかの実施形態が実施される電子システムを概念的に示す図。
【発明を実施するための形態】
【００１０】
以下に示す詳細な説明は、本願技術の様々な構成の説明を意図し、本願技術が実施される唯一の構成のみを表すことを意図しない。添付された図面は、本明細書に組み込まれ、詳細な説明の一部を構成する。詳細な説明は、本願技術の十分な理解を提供する目的のための具体的詳細を含む。しかしながら、本願技術は本明細書に示される具体的詳細には限定されず、これら具体的詳細なしに実施されることは明白である。
【００１１】
ネイティブ・アプリケーション（「ネイティブ・アプリ」）は、モバイル・デバイス（スマートフォン、タブレットなど）上に直接インストールされる、当該デバイス用のアプリケーション（「アプリ」）である。このアプリは、通常、オンライン・アプリ・ストアやマーケットプレイス（以下、一般に「アプリ・ストア」と呼ぶ）を通じて取得される。ネイティブ・アプリは、アプリ・ストアからダウンロードされ、ユーザのモバイル・デバイスにインストールされる。ウェブ・アプリケーション（「ウェブ・アプリ」）は、モバイル・デバイス用の特定の機能を有する、インターネットにより利用可能なアプリを指す。ウェブ・アプリは、ダウンロードされてデバイスにインストールされるのではなく、モバイル・デバイスのウェブ・ブラウザを通じてアクセスされる。
【００１２】
ネイティブ・アプリは、ウェブ・アプリに対して、一定の利点を備える。例えば、ネイティブ・アプリは、通常、より容易に見つかる（例えばアプリ・ストアを通じて）。当該ネイティブ・アプリは、独立型のアプリとして動くように開発されているので、操作容易でアクセス可能なルック・アンド・フィールを通常有する。さらに、ネイティブ・アプリは、モバイル・デバイスのネイティブ・フィーチャ、情報およびハードウェアとインタフェースできる一方、ウェブ・アプリは、そのようなネイティブ・フィーチャへの限定されたアクセスしか有していない場合がある。一例では、ウェブ・アプリへのより容易なアクセスを可能にするために、モバイル・デバイスにおけるウェブ・ブラウザは、ウェブ・アプリに関連付けられているウェブサイトへのショートカットをメイン・メニュー（例えば、ホーム画面）に追加するオプションをユーザに提供してもよい。これにより、ウェブサイトへのリンク（例えば、ショートカット・アイコン）がユーザのメニュー上にネイティブ・アプリと共に配置され、よって、容易にアクセス可能である。
【００１３】
ネイティブ・アプリは、通常、専用プラットフォームの専用言語、標準化されたソフト開発キット（ＳＤＫ）、開発ツール、共通のユーザ・インタフェース要素を含む、プラットフォーム専用の開発プロセスを用いて開発される。これに対し、ウェブ・アプリは、通常、開発者が選択した言語またはフレームワーク（例えばＨＴＭＬ５、ＣＳＳ３、ＪａｖａＳｃｒｉｐｔ（登録商標）、ＰＨＰ、Ｒａｉｌｓ、Ｐｙｔｈｏｎ）により書かれている。ネイティブ・アプリおよびウェブ・アプリは、互いに異なる技術を用いて開発されているので、アプリ所有者がネイティブ・アプリとウェブ・アプリとを有することを望む場合、所有者は、そのプラットフォームあるいはアプリケーションの種類（例えばネイティブ・アプリあるいはウェブ・アプリ）のための専用の技術を別々に用いて、各アプリを開発する必要がある。
【００１４】
本開示は、ウェブ用に開発されたアプリに関して、ネイティブ・アプリの利点の有効利用を可能にする。方法とシステムは、ウェブ・アプリに基づいてネイティブ・アプリを生成するために提供される。アプリ開発者は、自身の既存のウェブ・アプリからネイティブ・ウェブベース・アプリケーション（「ネイティブ・ウェブ・アプリ」）を生成できる。ネイティブ・ウェブ・アプリは、非常に薄い層を含み、これは、１つのマニフェスト・ファイルと、既存のウェブ・アプリのＵＲＬを用いてフルスクリーン・モードでブラウザを起動することを開始する僅かなコードと、から構成される。次いで、ネイティブ・ウェブ・アプリは、アプリ・ストアに提出され、ネイティブ・アプリとして動作できる。埋め込まれているＵＲＬは、ウェブ・ブラウザにアクセスしフルスクリーン・モードでウェブ・アプリを起動することにより、ネイティブ・ウェブ・アプリを起動するために使用される。一例では、パーミッションは、フルスクリーン・モードでブラウザ・アプリケーションを起動するためのパーミッションを含む。
【００１５】
これによって、開発者は、別個のネイティブ・アプリを開発する追加の労力なく独立型のアプリの利点を得られる。これらの利点は、ウェブ上で動作するアプリには通常はない、アプリ・ストア内における見つかりやすさおよびランキングを含んでいる。さらに、ウェブ開発者は、マニフェスト・ファイルを使用して、ネイティブ・アプリの機能を有効利用できる。これらの機能は、例えば、様々なインテント（例えばＵＲＬ）のサービスを提供すると宣言することと、特定のパーミッションを宣言することと、固有のタイトルおよびロゴを指定することと、モバイル・デバイスのネイティブ・フィーチャ、情報およびハードウェアとインタフェースすることなどの性能を含む。ネイティブ・アプリのパーミッションがマニフェスト・ファイル内において宣言されているので、いくつかの実施形態では、ネイティブ・ウェブ・アプリがブラウザ内で起動するごとにユーザがパーミッションを求められないので、ユーザ・エクスペリエンスが向上する。
【００１６】
ネイティブ・ウェブ・アプリが生成され、アプリ・ストアに提出されると、ユーザは、ネイティブ・ウェブ・アプリを検索しインストールすることができる。そのアプリは、独立型のネイティブ・ウェブ・アプリとして起動し、これはネイティブ・アプリとして動作する。ネイティブ・ウェブ・アプリは、ウェブ・アプリに関連付けられているウェブサイトのサービス、情報および機能を提供するフルスクリーンのアプリとして表示される。すなわち、ネイティブ・ウェブ・アプリに関連付けられているＵＲＬを見たり、これと対話したりするためにブラウザ・ウィンドウへと迂回させられるのではなく、ユーザは、フルスクリーンのアプリを提示され、ブラウザ・アプリのブラウザ・ウィンドウから独立したアプリと対話できる。
【００１７】
１つ以上の実施形態によれば、ネイティブ・ウェブ・アプリは、モバイル・デバイスにおいて動作する独立型のアプリとして扱われる。従って、ネイティブ・ウェブ・アプリは、動作時において、モバイル・デバイスにおいて動作しているブラウザ・アプリから独立して動作しているアプリのリスト内の独立型のアプリとして提示される。いくつかの例において、アプリは、マニフェスト・ファイル内における、アプリに割り当てられた固有のタイトルおよび／またはロゴを使用して表示される。
【００１８】
従って、ネイティブ・ウェブ・アプリは既存のウェブ・アプリから開発されてよい。
図１は、ネイティブ・アプリと同様の挙動を有する、モバイル・デバイスにおけるネイティブ・ウェブ・アプリの生成を提供する例示的なクライアント・サーバ・ネットワーク環境を示す。ネットワーク環境１００は、ネットワーク１３０によってサーバ１２０と１つ以上のリモート・サーバ１４０とに通信可能に接続されたクライアント・デバイス１１０を含む。
【００１９】
いくつかの例示的な実施形態では、クライアント・デバイス１１０は、スマートフォン、ＰＤＡ、ポータブル・メディア・プレイヤー、タブレット・コンピュータあるいは他の適切なモバイル・コンピューティング・デバイス等、モバイル・コンピューティング・デバイスであってよい。図１の例では、クライアント・デバイス１１０はスマートフォンとして示される。一例では、クライアント・デバイス１１０は、ネイティブ・アプリと同様の挙動を有するネイティブ・ウェブ・アプリを生成するためのコンピュータ命令を実行するプロセッシング・デバイスを含む。一例では、プロセッシング・デバイス１１０は、１つ以上のネイティブ・アプリおよび／またはウェブ・アプリに関する情報と、ネイティブ・アプリと同様の挙動を有するネイティブ・ウェブ・アプリを生成するためのコンピュータ命令と、を記憶するためのメモリをさらに含む。一例では、プロセッシング・デバイスは、１つ以上のネイティブ・アプリと、１つの埋込型のウェブ・ブラウザと、を実行してもよい。
【００２０】
いくつかの実施形態では、サーバ１２０は、例えば、クライアント・デバイス１１０からのネイティブ・ウェブ・アプリ・リクエストを管理することを可能にするために、プロセッシング・デバイスとデータ・ストアとを含む。サーバ１２０は、ネットワーク１３０を通じて、あるいは、別のネットワークまたは通信手段を通じて、リモート・サーバ（例えばリモート・サーバ１４０）あるいは様々な他のクライアント・デバイスと通信状態にあってもよい。
【００２１】
リモート・サーバ１４０は、１つ以上のウェブサーバ、ネイティブ・アプリ、アプリ・ストア、あるいはクライアント・デバイス１１０上で動作するかサーバ１２０に関連して動作する他のクライアント・アプリまたはサービスをホストしてもよい。リモート・サーバ１４０は、ネットワーク１３０を含む様々な通信手段を通じて、クライアント・デバイス１１０あるいはサーバ１２０と通信状態にあってもよい。
【００２２】
いくつかの例示的な態様では、サーバ１２０および／またはリモート・サーバ１４０は、コンピュータ・サーバ等、１つのコンピューティング・デバイスであってよい。他の実施形態では、サーバ１２０および／またはリモート・サーバ１４０は、サーバ・コンピュータのアクションを実行するために共に作動する２つ以上のコンピューティング・デバイスを表わしていてもよい（例えばクラウド・コンピューティング）。サーバ１２０および／またはリモート・サーバ１４０は、様々なリモート・データベースあるいはストレージ・サービスに結合されてもよい。サーバ１２０および／またはリモート・サーバ１４０によって実行される機能は、１つのサーバ内において実行されてもよいし、複数のサーバにわたって実行されてもよいことが理解される。
【００２３】
クライアント・デバイス１１０とサーバ１２０および／またはリモート・サーバ１４０との間の通信は、様々な通信プロトコルを通じて可能にされてもよい。いくつかの態様では、クライアント・デバイス１１０は、通信インタフェース（図示せず）を通じて無線により通信してもよく、必要な場合には、それはデジタル信号処理回路を含んでいてもよい。通信インタフェースは、様々なモードあるいはプロトコルにより通信を提供してもよく、これは、特に、ＧＳＭ（Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎ）（登録商標）音声通話、ＳＭＳ（Ｓｈｏｒｔ  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ）、ＥＭＳ（Ｅｎｈａｎｃｅｄ  Ｍｅｓｓａｇｉｎｇ  Ｓｅｒｖｉｃｅ）、もしくはＭＭＳ（Ｍｕｌｔｉｍｅｄｉａ  Ｍｅｓｓａｇｉｎｇ  Ｓｅｒｖｉｃｅ）メッセージ、符号分割多重アクセス（ＣＤＭＡ）、時分割多重アクセス（ＴＤＭＡ）、ＰＤＣ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ｃｅｌｌｕｌａｒ）、広帯域符号分割多重アクセス（ＷＣＤＭＡ（登録商標））、ＣＤＭＡ２０００、またはＧＰＲＳ（Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｙｓｔｅｍ）を含む。例えば、その通信は、無線周波数トランシーバ（図示せず）を通じて生じてもよい。さらに、近距離通信が生じてもよい（Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＦｉ（登録商標）あるいは他のそのようなトランシーバを使用することを含む）。
【００２４】
ネットワーク１３０は、例えば、パーソナル・エリア・ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、キャンパス・エリア・ネットワーク（ＣＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）ワイド・エリア・ネットワーク（ＷＡＮ）、ブロードバンド・ネットワーク（ＢＢＮ）、インターネット等のうちのいずれか１つ以上も含んでよい。さらに、ネットワーク１３０は、次のネットワークトポロジーのうちのいずれか１つ以上含んでよいが、これらに限定されず、そのネットワークトポロジーは、バス・ネットワーク、スター・ネットワーク、リング・ネットワーク、メッシュ・ネットワーク、スター・バス・ネットワーク、ツリー・ネットワーク（階層型ネットワーク）等を含む。
【００２５】
ユーザは、電子デバイス１１０においてアプリ・ストアと対話してもよい。一例では、ユーザは、アプリ・ストア（例えば、サーバ１１０および／または１つ以上のリモート・サーバ１４０によってホストされる）を通じてネイティブ・ウェブ・アプリを探し、インストールのためのリクエストを行い得る。一例では、ネイティブ・ウェブ・アプリは、マニフェスト・ファイルと一組の命令とを含んでいてもよい。ネイティブ・ウェブ・アプリのマニフェスト・ファイルは、ネイティブ・ウェブ・アプリに関するパーミッションを含んでいてもよい。そのパーミッションは、フルスクリーン・モードでクライアント・デバイスにおいてウェブ・ブラウザを動作させるためのパーミッションを含んでいる。ユーザからリクエストを受信すると、マニフェスト・ファイルはアプリ・ストアから取り出され、ネイティブ・ウェブ・アプリに関するパーミッションはユーザに表示するために提供される。パーミッションを承諾するユーザ指示を受信すると、ネイティブ・ウェブ・アプリはアプリ・ストアからダウンロードされ、クライアント・デバイス１１０にインストールされる。
【００２６】
マニフェスト・ファイルは、さらに、ネイティブ・ウェブ・アプリのための固有の名前およびロゴを含んでいてもよい。ネイティブ・ウェブ・アプリは、マニフェスト・ファイル内に示された名前およびロゴを使用して、クライアント・デバイス１１０にインストールされる。ユーザがクライアント・デバイス１１０においてネイティブ・ウェブ・アプリを起動することを選択すると、ネイティブ・ウェブ・アプリの一組の命令は、クライアント・デバイス１１０においてウェブ・ブラウザをフルスクリーン・モードで起動させ、ネイティブ・ウェブ・アプリのＵＲＬに関連付けられているウェブ・アプリ（例えば１つ以上のウェブ・ページ）を当該ウェブ・ブラウザに表示させる。
【００２７】
図２は、ネイティブ・ウェブ・アプリを生成するための例示的なプロセス２００のフロー図を示す。工程２０１では、ウェブ・アプリに関連付けられているＵＲＬが識別される。一例では、ＵＲＬは、ユーザに表示するためにウェブ・アプリのコンテンツを提供するウェブサイトのホームページまたはメインページに関連付けられていてもよい。
【００２８】
工程２０２では、ウェブ・アプリに関連付けられるマニフェスト・ファイルが生成される。一例では、マニフェスト・ファイルは１つ以上のパーミッションを含む。そのパーミッションは、例えば、アプリ（例えばネイティブ・ウェブ・アプリ）が、ユーザのクライアント・モバイル・デバイス（例えば、当該アプリが動作するデバイス）に関する情報を収集および使用するパーミッションを許可してもよい。この情報によって、アプリがデバイスおよび／またはデバイス上で動作する他のアプリと一体化できる。その情報は、例えば、デバイスに関するセキュリティ情報（例えば、ＰＩＮ、シリアル番号）と、デバイス上で動作する他のアプリ（例えば、カレンダー、連絡先、電子メール、メッセンジャー、カメラ）に関する情報と、デバイス周囲に関する情報（例えば、場所、位置情報）と、他の同様の情報と、を含んでもよい。そのパーミッションは、さらに、フルスクリーン・ブラウザ・アプリ・パーミッションを含む。このパーミッションは、フルスクリーン・モードでモバイル・デバイスにおいてブラウザ・アプリ（例えば埋込型および／またはネイティブの）を開くためのウェブ・アプリ・パーミッションを許可する。さらに、ネイティブ・ウェブ・アプリのための固有の名前および／またはロゴが、マニフェスト・ファイルにおいて指定されてもよい。いくつかの例では、マニフェスト・ファイルは、さらに、１つ以上の他のアプリにサービスを提供するインテント（例えばＵＲＬあるいはネイティブ・アプリ呼出）を含んでいてもよい。
【００２９】
工程２０３では、ウェブ・アプリに関連付けられる一組の命令が生成される。一組の命令は、いくつかの例では、フルスクリーン・モードでデバイスにおいてブラウザ・アプリを使用して、工程２０１において識別されたＵＲＬを起動するためのコードを含む。工程２０４では、工程２０２および２０３において生成されたマニフェスト・ファイルと一組の命令とから構成されたウェブ・アプリが、ネイティブ・ウェブ・アプリへのアクセスを可能にする１つ以上のアプリ・ストアに提出される（例えば、ユーザのモバイル・デバイスにおいてネイティブ・ウェブ・アプリをインストールし起動するために）。一例では、名前および／またはロゴ（例えばマニフェスト・ファイルにおいて指定された同じ名前および／またはロゴ）は、ネイティブ・ウェブ・アプリがアプリ・ストアやマーケットプレイスに表示されるときに表示可能なように指定される。
【００３０】
図３は、ユーザのモバイル・デバイスにおけるネイティブ・ウェブ・アプリのインストールを可能にするための例示的なプロセス３００のフロー図を示す。工程３０１では、ネイティブ・ウェブ・アプリをインストールするためのユーザのリクエストの指示が受信される。一例では、アプリ・ストアやマーケットプレイスは、ユーザのモバイル・デバイスを通じてアクセス可能であってよく、ユーザのモバイル・デバイスにおけるインストールのための一群のネイティブ・アプリを提供してもよい。一例では、ユーザは、アプリ・ストアからネイティブ・ウェブ・アプリ（例えば上記の図２にしたがって生成されたネイティブ・ウェブ・アプリ）を検索したり、別様に探したりしてよい。一例では、アプリ・ストアは、ネイティブ・ウェブ・アプリにアクセスし、ユーザに表示するためにネイティブ・ウェブ・アプリのグラフィカル表示を提供する。一例では、ネイティブ・ウェブ・アプリは、ネイティブ・ウェブ・アプリがアプリ・ストアに提出される時に指定された名前および／またはロゴを使用して表示されてもよい。別例では、ネイティブ・ウェブ・アプリのマニフェスト・ファイルは、アプリ・ストア内においてネイティブ・ウェブ・アプリをユーザに表示するための名前および／またはロゴを決定するためにアクセスされてもよい。ネイティブ・ウェブ・アプリがユーザに表示されると、ユーザは、ユーザのモバイル・デバイスにネイティブ・ウェブ・アプリをインストールすることを選択できる。一例では、その選択は、ネイティブ・ウェブ・アプリを購入することおよび／またはインストールすることへの同意を含んでいてもよい。
【００３１】
工程３０２では、ネイティブ・ウェブ・アプリに関連付けられているパーミッションのリストが、モバイル・デバイスにおいてユーザに表示するために提供される。一例では、ネイティブ・ウェブ・アプリに関連付けられているマニフェスト・ファイルが、アクセスされ、ネイティブ・ウェブ・アプリに関連付けられているパーミッションのリストが、アクセスされ、ユーザに表示するために提供される。パーミッションのリストは、一例では、フルスクリーン・モードでモバイル・デバイスにおいてブラウザ・アプリを起動するためのフルスクリーン・パーミッションを含む。
【００３２】
工程３０３では、工程３０２において提供されたパーミッションのリストにリスト化されたパーミッションについてユーザの承諾の指示が、受信される。一例では、パーミッションのリストがユーザに表示されると、ユーザは、パーミッションを許可するよう承諾してもよい。一例では、ユーザは、パーミッションのリストからいずれのパーミッションを許可するかを選択することができる。いくつかの例では、フルスクリーン・パーミッション等のいくつかのパーミッションは、ネイティブ・ウェブ・アプリがユーザのモバイル・デバイスにインストールされ得るよりも前にユーザが承諾することが必要な、必要なパーミッションである場合がある。
【００３３】
工程３０４では、ネイティブ・ウェブ・アプリが、ユーザのモバイル・デバイスにインストールされる。一例では、ウェブ・アプリのマニフェスト・ファイルは、ネイティブ・ウェブ・アプリがインストールされている場合に、モバイル・デバイス上で使用されるロゴおよび／または名前に関する情報を含む。ネイティブ・ウェブ・アプリは、いくつかの実施形態では、他のネイティブ・アプリと同じ場所にインストールされる。例えば、いくつかの実施形態では、アプリは、モバイル・デバイスのホーム画面にインストールされる。いくつかの例では、ユーザは、インストールされたネイティブ・ウェブ・アプリを起動し、ネイティブ・ウェブ・アプリのコンテンツと対話し始めてもよい。
【００３４】
図４は、ユーザのモバイル・デバイスにおけるネイティブ・ウェブ・アプリの起動を可能にするための例示的なプロセス４００のフロー図を示す。工程４０１では、ネイティブ・ウェブ・アプリを起動するためのリクエストが、ユーザのモバイル・デバイスにおいて受信される。例えば、そのリクエストはユーザのリクエストを含んでいてもよい。例えば、ユーザは、モバイル・デバイスのメイン・メニュー（例えばホームページ）にインストールされたアプリにアクセスし、ウェブ・アプリを起動することを選択してもよい。
【００３５】
工程４０２では、ネイティブ・ウェブ・アプリに関連付けられているＵＲＬがアクセスされ、工程４０３では、ユーザのモバイル・デバイスにおけるブラウザは、ＵＲＬを使用してフルスクリーン・モードで起動される。一例では、ネイティブ・ウェブ・アプリの一組の命令が、実行される。一組の命令は、ネイティブ・ウェブ・アプリに関連付けられているＵＲＬを使用して、フルスクリーン・モードでブラウザ・アプリを起動するためのコマンドを含む。いくつかの例では、アプリは、さらに、ネイティブ・ウェブ・アプリによってサービスが提供されるとしてリスト化されているＵＲＬおよび／またはアプリが識別される場合において、アプリの起動の選択に応じて起動され得る。
【００３６】
工程４０４では、ウェブ・アプリのコンテンツは、フルスクリーン・モードでブラウザ・アプリを使用して、ユーザに表示するために提供される。アプリに関連付けられているウェブサイトのナビゲーション中、エクスペリエンスは、ユーザのネイティブ・アプリの使用と同様であり、ウェブ・ブラウザから独立しているように見え得る（例えば、ブラウザ・ウィンドウ、ブラウザ・アイコンがない）。一例では、アプリ内のコンテンツは、１つ以上の他の外部のウェブサイトあるいはウェブ・ページにおける追加のコンテンツへのリンクを含んでいてもよいし、当該追加のコンテンツへのナビゲーションを別様に提供してもよい。いくつかの例では、外部のウェブ・ページにナビゲーションする場合、コンテンツが、フルスクリーンのネイティブ・ウェブ・アプリ内において表示するために提供されてもよい。他の例では、外部のウェブ・ページは、ウェブ・ブラウザ・アプリを使用して提示されてもよい（例えばユーザをブラウザ・アプリにリダイレクトすることによって）。
【００３７】
ネイティブ・ウェブ・アプリが起動されると、動作しているネイティブ・ウェブ・アプリのインスタンスは、モバイル・デバイス上で動作しているネイティブ・アプリのリストに追加される。一例では、ネイティブ・ウェブ・アプリの固有の名前およびロゴは、動作しているアプリのリスト内に表示される（例えばマニフェストによって指定されたロゴおよび名前）。
【００３８】
多くの上述のフィーチャとアプリとは、コンピュータ可読記憶媒体（コンピュータ可読媒体とも称される）上に記録される一組の命令として特定されるソフトウェア・プロセスとして実施され得る。これらの命令が１つ以上のプロセッシング・ユニット（例えば、１つ以上のプロセッサ、プロセッサ・コア、他のプロセッシング・ユニット）によって実行されるとき、これらの命令によって、プロセッシング・ユニットは当該命令に示されるアクションを実行する。コンピュータ可読媒体の例として、ＣＤ−ＲＯＭ、フラッシュ・ドライブ、ＲＡＭチップ、ハードドライブ、ＥＰＲＯＭ等が含まれるが、コンピュータ可読媒体の例はこれらに限定されない。コンピュータ可読媒体は、無線または有線接続で送出される搬送波および電気信号を含まない。
【００３９】
本明細書においては、用語「ソフトウェア」は、読出専用メモリ内に常駐しているファームウェア、または、プロセッサによって処理を行うためのメモリに読み込まれる、磁気ストレージに記憶されるアプリを含むことが意図されている。また、いくつかの実施形態では、本開示の複数のソフトウェアの態様は、本開示の区別がなされるソフトウェアの態様でありつつ、より大きなプログラムの下位区分として実施され得る。いくつかの実施形態では、複数のソフトウェアの態様は別々のプログラムとして実施され得る。最後に、本明細書において説明されているソフトウェアの態様を同時に実施する別々のプログラムの組み合わせは、いずれも本開示の範囲内にある。いくつかの実施形態では、ソフトウェア・プログラムは、インストールされて１つ以上の電子システムを操作する際、該ソフトウェア・プログラムの操作を実行する１つ以上の特定の機械の実装を規定する。
【００４０】
コンピュータ・プログラム（プログラム、ソフトウェア、ソフトウェア・アプリ、スクリプト、またはコードとしても知られている）は、任意の形式のプログラミング言語（コンパイラ型言語またはインタプリタ型言語、宣言型言語または手続型言語を含む）で書かれてもよく、どのような形式でデプロイされてもよい（スタンドアロン・プログラム、モジュール、コンポーネント、サブルーチン、オブジェクト、コンピューティング環境においての使用が相応しい他のユニットを含む）。コンピュータ・プログラムは、ファイル・システム内のファイルと対応してもよいが、これに限定されない。プログラムは、他のプログラムやデータを保持するファイルの一部分（例えば、マークアップ言語ドキュメントに記憶される１つ以上のスクリプト）、対象プログラム専用の１つのファイル、または複数の調整ファイル（例えば、１つ以上のモジュール、サブ・プログラム、コードの一部分を記憶するファイル）に記憶され得る。コンピュータ・プログラムは、１つのコンピュータ、または１つのサイトに位置するか、若しくは複数のサイトに分散し、通信ネットワークによって相互接続される複数のコンピュータ上で実行されるようにデプロイされ得る。
【００４１】
図５は、本願技術のいくつかの実施形態が実施される電子システムを概念的に示す。電子システム５００は、サーバ、コンピュータ、電話機、ＰＤＡ、ラップトップ、タブレット・コンピュータ、１つ以上のプロセッサが組み込まれているか１つ以上のプロセッサに結合されているテレビであってもよいし、他の種類の任意の電子デバイスであってもよい。このような電子システムは、様々な種類のコンピュータ可読媒体と、他の様々な種類のコンピュータ可読媒体に関するインタフェースとを含む。電子システム５００は、バス５０８、プロセッシング・ユニット５１２、システム・メモリ５０４、読出専用メモリ（ＲＯＭ）５１０、パーマネント・ストレージ・デバイス５０２、入力デバイス・インタフェース５１４、出力デバイス・インタフェース５０６、およびネットワーク・インタフェース５１６を含む。
【００４２】
バス５０８は、電子システム５００の多数の内部デバイスを通信可能に接続する全てのシステムと、周辺機器と、チップセット・バスとを集合的に表す。例えば、バス５０８は、プロセッシング・ユニット５１２を、ＲＯＭ５１０と、システム・メモリ５０４と、パーマネント・ストレージ・デバイス５０２とに通信可能に接続する。
【００４３】
プロセッシング・ユニット５１２は、本開示のプロセスを実行するために、これらの様々なメモリ・ユニットから実行対象の命令と処理対象のデータとを取り出す。プロセッシング・ユニットは、互いに異なる実施形態において、１つのプロセッサであってもよいし、マルチコア・プロセッサであってもよい。
【００４４】
ＲＯＭ５１０は、プロセッシング・ユニット５１２と電子システムの他のモジュールとによって必要とされる静的なデータと命令とを記憶する。これに対し、パーマネント・ストレージ・デバイス５０２は、読出／書込メモリ・デバイスである。このデバイスは、電子システム５００がオフであるときでも命令とデータとを記憶する不揮発性メモリ・ユニットである。本開示のいくつかの実施形態では、パーマネント・ストレージ・デバイス５０２としてマス・ストレージ・デバイス（例えば、磁気または光ディスク、および、対応するディスク・ドライブ）が用いられる。
【００４５】
他の実施形態では、パーマネント・ストレージ・デバイス５０２としてリムーバブル・ストレージ・デバイス（例えば、フロッピー（登録商標）ディスク、フラッシュ・ドライブ、対応するディスク・ドライブ）が用いられる。システム・メモリ５０４は、パーマネント・ストレージ・デバイス５０２と同様に、読出／書込メモリ・デバイスである。しかしながら、システム・メモリ５０４は、ストレージ・デバイス５０２とは異なり、揮発性読出／書込メモリ（例えば、ランダム・アクセス・メモリ）である。システム・メモリ５０４は、ランタイムにおいてプロセッサが必要とする命令とデータとのいくつかを記憶する。いくつかの実施形態においては、本開示のプロセスは、システム・メモリ５０４、パーマネント・ストレージ・デバイス５０２、および／またはＲＯＭ５１０に記憶される。例えば、様々なメモリ・ユニットは、様々な実施形態に従ってネイティブ・ウェブ・アプリを生成するための命令を含んでよい。プロセッシング・ユニット５１２は、いくつかの実施形態のプロセスを実行するために、これらの様々なメモリ・ユニットから実行対象の命令と処理対象のデータとを取り出す。
【００４６】
さらにバス５０８は、入力デバイス・インタフェース５１４と出力デバイス・インタフェース５０６とに接続する。入力デバイス・インタフェース５１４によって、ユーザが情報を通信し、電子システムに対するコマンドを選択することが可能になる。入力デバイス・インタフェース５１４とともに用いられる入力デバイスは、例えば、英数字キーボード、ポインティング・デバイス（「カーソル制御デバイス」とも称される）を含む。出力デバイス・インタフェース５０６によって、例えば、電子システム５００によって生成された画像の表示が可能になる。出力デバイス・インタフェース５０６とともに用いられる出力デバイスは、例えば、プリンタ、ディスプレイ・デバイス（陰極線管（ＣＲＴ）や液晶ディスプレイ（ＬＣＤ）など）を含む。いくつかの実施形態は、入力デバイスおよび出力デバイスの両方として機能するタッチスクリーンなどのデバイスを含む。
【００４７】
最後に、図５に示すように、バス５０８はさらに電子システム５００を、ネットワーク・インタフェース５１６を介してネットワーク（図示せず）に接続する。このように、コンピュータは、コンピュータのネットワーク（例えば、ローカル・エリア・ネットワーク（「ＬＡＮ」）、ワイド・エリア・ネットワーク（「ＷＡＮ」）、イントラネット）の一部、または、複数のネットワーク（例えば、インターネット）のうちの１つのネットワークの一部であってもよい。任意の、または、すべての電子システム５００の要素が、本開示とともに用いられ得る。
【００４８】
これら上述の機能は、デジタル電子回路、コンピュータ・ソフトウェア、ファームウェア、またはハードウェアにより実装されることができる。上述の技術は、１つ以上のコンピュータ・プログラム製品を用いて実施される。プログラマブル・プロセッサおよびコンピュータは、モバイル・デバイスに含まれてもよいし、モバイル・デバイスとしてパッケージされてもよい。プロセスおよびロジック・フローは、１つ以上のプログラマブル・プロセッサと１つ以上のプログラマブル論理回路とによって実行されてよい。汎用および専用のコンピューティング・デバイスと、ストレージ・デバイスとは、通信ネットワークを通じて相互接続され得る。
【００４９】
いくつかの実施形態は電子部品（例えば、機械可読媒体またはコンピュータ可読媒体（あるいは、コンピュータ可読記憶媒体、機械可読媒体、機械可読記憶媒体とも称される）におけるコンピュータ・プログラムの命令を記憶するマイクロ・プロセッサ、ストレージ、メモリ）を含む。このようなコンピュータ可読媒体のいくつかの例には、ＲＡＭ、ＲＯＭ、読出専用コンパクト・ディスク（ＣＤ−ＲＯＭ）、記録可能コンパクト・ディスク（ＣＤ−Ｒ）、書き換え可能コンパクト・ディスク（ＣＤ−ＲＷ）、読出専用デジタル多用途ディスク（例えば、ＤＶＤ−ＲＯＭ、２層ＤＶＤ−ＲＯＭ）、種々の記録可能／書き換え可能ＤＶＤ（例えば、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ等）、フラッシュ・メモリ（例えば、ＳＤカード、ミニＳＤカード、マイクロＳＤカード等）、磁気および／またはソリッド・ステート・ハードドライブ、リード・オンリおよび記録可能ブルー・レイ・ディスク（登録商標）、超高密度光ディスク、他の任意の光または磁気メディア、フロッピーディスクが含まれる。コンピュータ可読媒体は、１つ以上のプロセッシング・ユニットにより実行可能であって、様々な操作を行うための一組の命令を含むコンピュータ・プログラムを記憶できる。コンピュータ・プログラムまたはコンピュータ・コードの例には、例えばコンパイラによって生成される機械コードと、インタプリタを用いてコンピュータ、電子部品、またはマイクロ・プロセッサによって実行される、より高レベルのコードを含むファイルと、が含まれる。
【００５０】
上記議論はソフトウェアを実行するマイクロ・プロセッサまたはマルチコア・プロセッサを主に指しているが、いくつかの実施形態は１つ以上の集積回路（例えば、特定用途向け集積回路（ＡＳＩＣ）またはフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ））によって実行される。いくつかの実施形態では、このような集積回路は回路上自体に記憶される命令を実行する。
【００５１】
本明細書および本願の任意の請求項で用いられる通り、用語「コンピュータ」、「サーバ」、「プロセッサ」および「メモリ」はすべて、電子または他の技術分野のデバイスのことを指す。これらの用語から、人または人の集団は除外される。本明細書上では、用語「表示」または「表示する」は、電子デバイス上での表示を意味する。本明細書および本願の任意の請求項で用いられる通り、用語「コンピュータ可読媒体」および「複数のコンピュータ可読媒体」は全体として、コンピュータによって読み込まれる形式の情報を記憶する有形の物理的な物体に限定される。これらの用語から、無線信号、有線ダウンロード信号、および他の任意の一時的な信号は除外される。
【００５２】
ユーザとの対話を提供するため、本明細書において説明されている主題の実施形態は、ユーザに対して情報を表示するためのディスプレイ・デバイス（例えば、ＣＲＴ（陰極線管）やＬＣＤ（液晶ディスプレイ）モニタ）と、キーボードと、ユーザがコンピュータに対して入力を提供できるポインティング・デバイス（例えば、マウスまたはトラックボール）と、を有するコンピュータ上で実施可能である。他の種類のデバイスも同様に、ユーザとの対話を提供するために用いられ得る。例えば、ユーザに対して提供されるフィードバックは、任意の形式の感覚フィードバック（例えば、視覚フィードバック、聴覚フィードバック、触覚フィードバックなど）であってよいし、ユーザからの入力は任意の形式（音響、音声または触覚入力を含む）で受信されてよい。さらに、ユーザによって用いられるデバイスに対してドキュメントを送信し、該デバイスからドキュメントを受信することによって（例えば、ユーザのクライアント・デバイス上でウェブ・ブラウザに対して、該ウェブ・ブラウザから受信したリクエストに応じてウェブ・ページを送信することによって）、コンピュータはユーザとの対話が可能である。
【００５３】
本明細書において説明されている主題の実施形態は、バックエンド・コンポーネント（例えば、データ・サーバ）、ミドルウェア・コンポーネント（例えば、アプリ・サーバ）、フロントエンド・コンポーネント（例えば、ユーザの本明細書において説明されている主題の実施形態との対話を可能にするグラフィカル・ユーザ・インタフェースまたはウェブ・ブラウザを有するクライアント・コンピュータ）、または、このようなバックエンド、ミドルウェア、およびフロントエンド・コンポーネントのうち１つ以上の任意の組み合わせを含むコンピューティング・システムにおいて実施可能である。該システムのコンポーネントは、デジタルデータ通信の任意の形式または媒体（例えば、通信ネットワーク）によって相互接続され得る。通信ネットワークの例には、ローカル・エリア・ネットワーク（「ＬＡＮ」）、ワイド・エリア・ネットワーク（「ＷＡＮ」）、インター・ネットワーク（例えば、インターネット）、および、ピアツーピア・ネットワーク（例えば、アドホック・ピアツーピア・ネットワーク）が含まれる。
【００５４】
コンピューティング・システムには、クライアントおよびサーバが含まれ得る。クライアントおよびサーバは一般的には互いにリモートであり、通常、通信ネットワークを介して対話する。クライアントおよびサーバの関係が生じるのは、各コンピュータ上で動作しており、互いにクライアント／サーバ関係を有するコンピュータ・プログラムを介してである。いくつかの実施形態においては、サーバがデータ（例えば、ＨＴＭＬページ）をクライアント・デバイスに対して（例えば、該クライアント・デバイスとの対話を行うユーザに対してデータを表示する目的、および、該ユーザからユーザ入力を受信する目的で）送信する。クライアント・デバイスにおいて生成されたデータ（例えば、ユーザ対話の結果）は、サーバにおいてクライアント・デバイスから受信され得る。
【００５５】
開示されるプロセスにおける工程の任意の特定の順番または階層は例示的アプローチを示すものである、と理解される。設計の嗜好に基づいて、プロセスにおける工程の特定の順番または階層は再配置されてもよく、いくつかの示した工程は実行されなくともよいと理解される。工程のうちのいくつかは同時に実行されてもよい。例えば、ある状況においては、マルチタスキングおよびパラレル・プロセッシングは効果的である。さらに、上述した実施形態における様々なシステム・コンポーネントの分離については、全ての実施形態においてそのような分離が必須であるとして理解されるべきではない。上述のプログラム・コンポーネントおよびシステムは一般的に１つのソフトウェア製品に統合され得る、または、複数のソフトウェア製品にパッケージされ得る、と理解されるべきである。
【００５６】
上記の説明は、本明細書において説明した様々な態様を当業者が実施できるようにするために提供されている。これらの態様に対する様々な改変は当業者に対して容易に明らかであり、本明細書に規定される包括的な原則は他の態様にも適用され得る。従って、本請求項は、本明細書に示される態様に限定される意図はなく、請求項の文言と一致する全ての範囲が付与され、単数である要素への参照は「１つおよび１つのみ」であることを（そのように特定的に記述されている場合を除いて）意味するのではなく、「１つ以上」を意味すると意図されている。用語「いくつか」は、（特定的に記述する場合を除いて）１つ以上を指す。男性の指示代名詞（例えば、「彼の」）は、女性および中性（例えば、「彼女の」「その」）を含み、その逆も同様である。見出しおよび小見出しは、それらがある場合にしても、便宜上用いられているに過ぎず、本開示を限定するものではない。
【００５７】
「態様」等の語句は、その態様が本願技術に必要不可欠であること、その態様が本願技術の全ての構成に適用されること、を暗示しない。態様に関する開示は、全ての構成または１つ以上の構成に適用され得る。態様等の語句は、１つ以上の態様を指してもよいし、その逆も同様である。「構成」等の語句は、そのような構成が本願技術に必要不可欠であること、その構成が本願技術の全ての構成に適用されること、を暗示しない。態様に関する開示は、全ての構成または１つ以上の構成に適用され得る。構成等の語句は、１つ以上の構成を指してもよいし、その逆も同様である。
【００５８】
「例示的」という単語は「例または示すものとして役立つ」ことを意味するために本明細書において使用される。「例示的」として本明細書において説明した態様または設計は、他の態様または設計よりも好適または有利であると必ずしも解釈されない。
【図１】
2017513137.tif 000003
【図２】
2017513137.tif 000004
【図３】
2017513137.tif 000005
【図４】
2017513137.tif 000006
【図５】
2017513137.tif 000007
【国際調査報告】
2017513137.tif 000008
2017513137.tif 000009
2017513137.tif 000010