JP2018531454A6 - 非ブラウザアプリケーションにおけるコンテンツの統合 - Google Patents
非ブラウザアプリケーションにおけるコンテンツの統合 Download PDFInfo
- Publication number
- JP2018531454A6 JP2018531454A6 JP2018516170A JP2018516170A JP2018531454A6 JP 2018531454 A6 JP2018531454 A6 JP 2018531454A6 JP 2018516170 A JP2018516170 A JP 2018516170A JP 2018516170 A JP2018516170 A JP 2018516170A JP 2018531454 A6 JP2018531454 A6 JP 2018531454A6
- Authority
- JP
- Japan
- Prior art keywords
- browser application
- browser
- web content
- tab
- displaying
- 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.)
- Granted
Links
- 230000000875 corresponding Effects 0.000 claims description 98
- 230000004044 response Effects 0.000 claims description 56
- 238000000034 method Methods 0.000 claims description 50
- 238000009877 rendering Methods 0.000 claims description 15
- 230000015654 memory Effects 0.000 description 42
- 238000004891 communication Methods 0.000 description 19
- 230000036316 preload Effects 0.000 description 18
- 239000003086 colorant Substances 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 239000000969 carrier Substances 0.000 description 4
- 230000003287 optical Effects 0.000 description 3
- 230000001953 sensory Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 235000014510 cooky Nutrition 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000035832 Lag time Effects 0.000 description 1
- 230000035648 Lag-time Effects 0.000 description 1
- 230000001413 cellular Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006011 modification reaction Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000001960 triggered Effects 0.000 description 1
Abstract
包括的な態様において、コンピュータが実施する方法は、コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、リンクが選択されたという標示を受信するステップとを含みうる。その方法は、リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップと、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップとを含みうる。
Description
本開示は、ウェブコンテンツの提示を可能にする技術的態様に関する。より具体的には、本開示は、非ブラウザユーザアプリケーションにウェブコンテンツの表示を統合するための手法に関する。
アプリケーション開発者(例えば、モバイルコンピューティングスペースにおけるアプリケーション開発者など)は、関連するアプリケーションによって表示されるコンテンツに含まれるリンク(例えば、ユニフォームリソースロケータ(URL)のハイパーリンク)に関連するウェブコンテンツなどの、それらアプリケーションに対応するウェブベースの(例えば、インターネットベースの)コンテンツを表示するためのオプションが制限されている。ウェブコンテンツを表示するための1つの手法は、アプリケーション開発者が、基本的なブラウザ機能を提供するアプリケーションプログラミングインタフェース(API)を使用するなど、アプリケーションインタフェース(例えば、グラフィカルユーザインタフェース)内に独自のブラウザと同様の機能を実装することである。しかしながら、そのような手法は、閲覧セキュリティの欠如、および複数のアプリケーションにわたるユーザの統一されたウェブブラウジングエクスペリエンスを提供することができないなどの欠点を有する可能性がある。
アプリケーションに関連するウェブコンテンツを表示するための別の手法は、アプリケーション開発者がアプリケーションをブラウザアプリケーション(例えばフル機能のブラウザアプリケーション)に関連するアプリケーションを表示(例えば示す、レンダリングなど)するようにインテントアウトさせることである。「インテントアウト」とは、フル機能のブラウザアプリケーションがまだ起動されていない場合に起動し、フル機能のブラウザアプリケーションによって関連付けられたウェブコンテンツを表示することをアプリケーションがトリガすることを意味する。さらに、フル機能を備えたブラウザアプリケーションは、非ブラウザアプリケーションから独立したスタンドアロンアプリケーションであり得る。そのような手法は閲覧セキュリティを提供するかもしれないが、アプリケーションのユーザインタフェース(UI)からブラウザのUIへのかなりのコンテキスト切り替えが必要となる。このコンテキスト切り替えは、(例えば、ブラウザアプリケーションを開始し、ウェブコンテンツをロードし、ウェブコンテンツをレンダリングするために)かなりの時間を要し、このことはユーザエクスペリエンスに悪影響を及ぼし得る。さらに、ユーザは、(例えば、ブラウザアプリケーションの遅れによりおよび/またはブラウザアプリケーションにおける継続状態により)ブラウザアプリケーションからのアプリケーションに対して放棄(たとえば、ノットリターン)することがあり得る。これは、アプリケーション開発者にとっては、アプリケーションとのユーザ関与を維持する上で望ましくないことである。非ブラウザアプリケーションおよびブラウザアプリケーションは別個のUIを有する別個のフル機能のアプリケーションとして実行するので、非ブラウザアプリケーションのインタフェース内にブラウザと同様の機能を実装する上記の手法よりも多くのシステムリソースが必要となり得る。
1つの包括的な態様によれば、コンピュータが実施する方法は、コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、リンクが選択されたという標示を受信するステップとを含む。コンピュータが実施する方法はまた、リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップと、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップとを含むことができる。
実施形態は、以下の特徴のうちの1つまたは複数を含むことができる。例えば、コンピューティングデバイスはモバイルコンピューティングデバイスであってもよい。非ブラウザアプリケーションおよび割り当てられたブラウザタブは、コンピューティングデバイスにより別個の処理として実行することができる。割り当てられたブラウザタブは、ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、非ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、ブラウザアプリケーションにより定義される少なくとも1つのボタンと、および/または非ブラウザアプリケーションにより定義される少なくとも1つのボタンとを含むことができる。リンクが選択されたという標示は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含むことができる。
この方法は、ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信するステップを含むことができる。方法は、このプリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップを含むことができる。
プリインテント要求は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含むことができる。少なくとも1つのカスタマイズパラメータは、1つまたは複数のメニュー項目およびメニュー項目に関連した対応する動作と、非ブラウザアプリケーションに対応するアイコンと、ボタンおよびボタンに関連した対応する動作と、ユーザインタフェースに対応する色と、割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションとのうちの1つまたは複数を含むことができる。
ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、ブラウザアプリケーションを起動することと、ブラウザアプリケーションのネイティブライブラリをロードすることと、URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、DNSルックアップに対応するサーバに接続することと、サーバからウェブコンテンツをダウンロードすることと、ダウンロードされたウェブコンテンツをレンダリングすることとのうちの1つまたは複数を含むことができる。
別の包括的な態様では、コンピュータが実施する方法は、コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップとを含むことができる。この方法は、ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求をブラウザアプリケーションに送信するステップをさらに含むことができる。方法はさらに、プリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップと、リンクの選択を示す信号を受信するステップとを含むことができる。方法は、信号を受信するのに応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップであって、プリインテント要求が、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータをさらに含むものであるステップと、少なくとも1つのカスタマイズパラメータに従って、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップとを含む。
実施形態は、以下のうちの1つまたは複数の特徴を含むことができる。例えば、少なくとも1つのカスタマイズパラメータは、1つまたは複数のメニュー項目と、メニュー項目に関連した対応する動作と、アイコンと、ボタンおよびボタンに関連した対応する動作と、ユーザインタフェースに対応する色と、割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションとを含むことができる。
ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、ブラウザアプリケーションを起動することと、ブラウザアプリケーションのネイティブライブラリをロードすることと、URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、DNSルックアップに対応するサーバに接続することと、サーバからウェブコンテンツをダウンロードすることと、ウェブコンテンツをレンダリングすることとのうちの1つまたは複数を含むことができる。
非ブラウザアプリケーションおよび割り当てられたブラウザタブは、コンピューティングデバイスにより別個の処理として実行することができる。方法は、割り当てられたブラウザタブにURLを表示することを含むことができる。方法は、割り当てられたブラウザタブに表示されたウェブコンテンツに対応するセキュアソケットレイヤ(SSL)の状態を表示することを含むことができる。
割り当てられたブラウザタブは、ブラウザアプリケーションの少なくとも1つのリソースにアクセスすることができる。ブラウザアプリケーションの少なくとも1つのリソースは、電子決済サービスと、言語翻訳サービスと、履歴閲覧と、オートフィルデータの作成と、パスワードボールトとのうちの1つまたは複数を含むことができる。
プリインテント要求に応答してウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行するステップは、非ブラウザアプリケーションをコンピューティングデバイスのフォアグラウンド処理として実行しながら、コンピューティングデバイスのバックグラウンドブラウザ処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行することを含むことができる。
別の包括的な態様において、非一時的なコンピュータ可読媒体は、非一時的なコンピュータ可読媒体上に記憶された命令を有することができる。命令は、コンピューティングデバイスの少なくとも1つのプロセッサにより実行されたときに、非ブラウザアプリケーションを実行することと、非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示することと、リンクが選択されたという標示を受信することとをコンピューティングデバイスに行わせる。命令は、少なくとも1つのプロセッサにより実行されたときに、リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てることをコンピューティングデバイスに行わせる。命令は、コンピューティングデバイスの少なくとも1つのプロセッサにより実行されたときに、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示することと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示することとをコンピューティングデバイスに行わせる。
実施形態は、以下のうちの1つまたは複数の特徴を含むことができる。例えば、命令は、少なくとも1つのプロセッサにより実行されたときに、ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信することと、プリインテント要求に応答して、バックグラウンド処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行することとをコンピューティングデバイスに行わせる。
別の包括的な態様では、コンピュータが実施する方法は、第1のタイプのコンテンツに対する要求を非ブラウザアプリケーションから受信することを含むことができる。コンピュータが実施する方法は、ブラウザアプリケーション用のユーザインタフェース要素を非ブラウザアプリケーションに提供することをさらに含むことができる。非ブラウザアプリケーションは、非ブラウザアプリケーション用に専ら作成された異なる第2のタイプのコンテンツを表示することができる。コンピュータが実施する方法はまた、非ブラウザアプリケーションのユーザインタフェース用のユーザインタフェース要素を変更して、非ブラウザアプリケーションに対して第1のタイプのコンテンツを表示することを含むことができる。
実施形態は、以下のうちの1つまたは複数の特徴を含むことができる。例えば、第1のタイプのコンテンツはウェブコンテンツを含むことができる。第1のタイプのコンテンツは、非ブラウザアプリケーションにより表示するためには専ら作成されていないコンテンツを含むことができる。ユーザインタフェース要素はブラウザタブを含むことができる。ユーザインタフェース要素の変更は、少なくとも1つのカスタマイズパラメータをユーザインタフェース要素に適用することを含むことができる。
1つまたは複数の実施形態の詳細は、添付の図面および以下の説明に記載されている。他の特徴は、説明および図面、ならびに特許請求の範囲から明らかになるであろう。
様々な図面における同様の参照符号は同様の構成要素を示す。
以下の説明では、非ブラウザアプリケーションにウェブコンテンツを統合するためのシステムおよび対応する方法の例示的な実施形態の理解を提供するために特定の詳細な説明が記載されている。しかしながら、開示された実施形態は、これらの特定の詳細な説明の一部を用いずに実施することができることは明らかであろう。他の例では、開示を不明瞭にしないように、周知の構造および技術は詳細に示されていない。
以下の説明では、非ブラウザアプリケーションにウェブコンテンツを統合するためのシステムおよび対応する方法の例示的な実施形態の理解を提供するために特定の詳細な説明が記載されている。しかしながら、開示された実施形態は、これらの特定の詳細な説明の一部を用いずに実施することができることは明らかであろう。他の例では、開示を不明瞭にしないように、周知の構造および技術は詳細に示されていない。
本明細書で説明する手法では、ブラウザアプリケーション(例えば、ブラウザアプリケーション)と非ブラウザアプリケーションとの間にインタフェース(例えば、API)が提供される。提供されたインタフェースは、非ブラウザアプリケーションがブラウザタブの割り当てを要求するのを可能にするために使用することができる。本開示の目的のために、「ブラウザタブを割り当てる」とは、本明細書に記載の技術を使用するなど、非ブラウザアプリケーションのユーザインタフェース(UI)内のコンテンツを取得、レンダリングおよび/または表示することを意味する。いくつかの実施形態では、非ブラウザアプリケーションをコンピューティングデバイス上で実行することができ、非ブラウザアプリケーションの実行は、アプリケーションのUIにおいてアプリケーションコンテンツ(例えば、アプリケーションコードに組み込まれた非ウェブコンテンツ、または非ブラウザアプリケーション用に専ら作成されたコンテンツ)を表示することを含み、そのアプリケーションコンテンツは、他のコンテンツ(例えば、ウェブコンテンツ)へのリンク(例えば、ハイパーリンク)を含むことができる。一実施形態では、アプリケーションコンテンツは、個々のウェブコンテンツへの複数のリンクを含むことができる。開示された実施形態では、非ブラウザアプリケーションは、任意の数の形式を取ることができる。例えば、非ブラウザアプリケーションは、電子メールアプリケーション、ソーシャルメディアアプリケーション、写真共有アプリケーション、ニュースサービスアプリケーション、コンシュマーサービスアプリケーションなどとすることができる。
非ブラウザアプリケーションは、インタフェースを介してブラウザアプリケーションとさらにインタラクトして、必要に応じてブラウザアプリケーションを初期化することを要求し、かつ初期化後に、ブラウザアプリケーションに表示されたアプリケーションコンテンツに含まれる1つまたは複数のリンクに関連するウェブコンテンツをプリロードすることを要求する。プリロードされたウェブコンテンツは、非ブラウザアプリケーションによってブラウザアプリケーションに要求において識別することができるか、またはブラウザアプリケーション自体が、ユーザの閲覧履歴などの他の情報に基づいてプリロードするウェブコンテンツを識別する(例えば、ユーザによって選択されるアプリケーションコンテンツの最も可能性の高いリンクを識別する)ことができる。
図1は、一実施形態による、非ブラウザアプリケーションにおけるウェブコンテンツの表示を統合するためのシステム100の図である。システム100は、クライアント110およびサーバ130を含む。システム100において、クライアント110およびサーバ130は、ネットワーク(例えば、インターネットなどのデータネットワーク)150を介して接続される。
システム100において、クライアント110の各々は、ウェブサイト、実行可能なウェブコンテンツなどのウェブコンテンツ(ウェブコンテンツ)にアクセス、ダウンロード、レンダリングおよび/または表示するためのブラウザアプリケーションを実行するように構成されている。本明細書に記載された手法では、ブラウザアプリケーションは、ウェブコンテンツをレンダリングし、かつ表示するための独立したブラウザタブを実装することができ、各ブラウザタブを使用して、個々の(例えば、異なる)ウェブコンテンツを表示することができ、複数のブラウザタブは、単一のブラウザアプリケーションプロセスに関連付けること(例えば、単一のブラウザアプリケーションプロセスによって実装されること)ができる。
特定の実施形態では、クライアント110は、複数のサーバ130のうちの1つからブラウザアプリケーションをダウンロードしてインストールするように構成することができる。ブラウザアプリケーションは、モバイルコンピューティングデバイスおよび/または非モバイルコンピューティングデバイスであるクライアント130上で動作するように構成されている。例えば、クライアント110は、デスクトップコンピュータ、ラップトップコンピュータ、モバイルコンピューティングデバイス(例えば、スマートフォン、タブレットコンピュータなど)、セットトップボックス(例えば、テレビ(TV)での使用用途)、スマートTV、ビデオゲームコンソール、または適切なプロセッサ、メモリ、およびデータネットワーク通信機能を有する任意の他の装置を含む。
本明細書に記載されている実施形態では、ブラウザアプリケーションのタブ(ブラウザタブ)を非ブラウザアプリケーションに割り当てることができ、割り当てられたブラウザタブを使用して、非ブラウザアプリケーションのユーザインタフェース内でウェブコンテンツを表示することができる。そのような実施形態では、割り当てられたブラウザタブは、非ブラウザアプリケーションに埋め込まれている、非ブラウザ・アプリケーション上で動作している、非ブラウザアプリケーションのユーザインタフェース(UI)に統合されている等として参照される。いくつかの実施形態では、割り当てられたブラウザタブを使用して、ブラウザタブがブラウザアプリケーションの制御下に維持された状態で、非ブラウザアプリケーションのユーザインタフェース内でウェブコンテンツを表示することができる。他の実施形態では、割り当てられたブラウザタブを使用して、割り当てられたブラウザタブが非ブラウザアプリケーションの制御下にある状態で、非ブラウザアプリケーションのユーザインタフェース内でウェブコンテンツを表示することができる。さらに他の実施形態では、割り当てられたブラウザタブを使用して、非ブラウザアプリケーションおよびブラウザアプリケーションの両方の制御下で協調的な状態で、非ブラウザアプリケーションのユーザインタフェース内でウェブコンテンツを表示することができる。
他の実施形態では、ブラウザアプリケーションを使用して、非ブラウザアプリケーションの(によって表示される)コンテンツに含まれるリンク(ハイパーリンク)に対応するウェブコンテンツをプリロードする(例えば、アクセス、ダウンロード及び/又はレンダリングする)ことができる。そのような手法は、非ブラウザアプリケーションによって表示されたアプリケーション(非ウェブベースの)コンテンツにおける関連するリンクの選択に応答してウェブコンテンツをロードおよびレンダリングすることと比較して、ラグタイムをほとんどまたは全く伴わずに、非ブラウザアプリケーションのUI内(上に、埋め込まれているなど)の割り当てられたブラウザタブによってウェブコンテンツを表示することが可能となる。非ブラウザアプリケーションによって表示されるアプリケーション(非ウェブベース)コンテンツ内の関連リンクの選択に応答して、ウェブコンテンツを表示することができる。特定の例では、本明細書に開示された特徴を含むブラウザアプリケーションの異なるバージョンおよび/または異なる構成が、サーバ130からダウンロードされ、クライアント110上に後でインストールされるように利用可能である。このようなダウンロードおよび/またはインストールの詳細は、クライアント110がモバイルコンピューティングデバイスであるか非モバイルコンピューティングデバイスであるかに少なくとも依存する。ブラウザアプリケーションは、一旦クライアント110にインストールされると、ウェブコンテンツをホストするように構成された複数のサーバ130のうちの任意の1つまたは複数からウェブコンテンツ(例えば、ウェブページ)をロードするように構成することができる。サーバ130は、ウェブブラウザをインストールし、かつ/またはウェブコンテンツをホストするように構成されたデータファイルをホストするための適切なプロセッサ、メモリ、および通信機能を有する任意のデバイスとすることができる。
ネットワーク150は、例えば、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、キャンパスエリアネットワーク(CAN)、メトロポリタンエリアネットワーク(MAN)、広域ネットワーク(WAN)、広帯域ネットワーク(BBN)、無線LAN(WLAN)インターネットなどを含むことができる。さらに、ネットワーク150は、これに限定されないが、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スターバスネットワーク、ツリーまたは階層ネットワークなどを含むネットワークトポロジのうちの任意の1つまたは複数を含むことができる。
一実施形態では、ブラウザアプリケーションは、クライアント110上での実行時に、非ブラウザアプリケーションからの要求(信号、指示など)を受信して、ブラウザアプリケーションにウェブコンテンツをロードするように構成することができ、その際、ブラウザアプリケーション(および任意の関連するブラウザタブ)は、バックグラウンドで(例えば、バックグラウンド処理として)動作し、非ブラウザアプリケーションは、フォアグラウンドで(例えば、フォアグラウンド処理として)動作する(実行する等)。いくつかの実施形態では、ブラウザアプリケーションがまだバックグラウンドで動作していない場合、ウェブコンテンツをロードするための非ブラウザアプリケーションからの要求に応答する等でバックグラウンドにウェブコンテンツをロードする前に、ブラウザアプリケーションはバックグラウンドで初期化(または「ウォーミングアップ」)される。プリロードされるべきウェブコンテンツは、非ブラウザアプリケーションによって(例えば、非ブラウザアプリケーション内のリンクによって)識別されるか、またはブラウザ履歴、お気に入りのウェブサイトのリスト、ブラウジングクッキージャーなどの他のデータに応答して、ブラウザアプリケーションによって識別される。
図2は、一実施形態による図1のシステムの例示的なクライアント110およびサーバ130を示すブロック図である。図1と同様に、図2のクライアント110およびサーバ130は、ネットワーク150を介して(例えば、個々のネットワークアダプタ218および238を介して)接続される。ネットワークアダプタ218および238は、ネットワーク150とインタフェースし、データ、要求、応答、およびコマンドなどの情報をネットワーク150上の他のデバイスに送信および他のデバイスから受信するように構成される。ネットワークアダプタ218および238は、セルラ無線機、Wi−Fiアダプタ、イーサネット(登録商標)ネットワークインタフェースカードなどを含む。
図2に示すように、クライアント110は、プロセッサ212、ネットワークアダプタ218、およびメモリ220を含む。図2の例において、クライアント110のメモリ220は、ブラウザアプリケーション222、非ブラウザアプリケーション226、およびウェブコンテンツ224bのクライアントコピーを含むことができる。例えば、ウェブコンテンツコピー224bは、ブラウザアプリケーション222によって(サーバ130内のウェブコンテンツ224aから)取得され、非ブラウザアプリケーション226に割り当てられたウェブブラウザ222のタブにレンダリングされ、非ブラウザアプリケーション226のUIに含まれる(UI内に表示される、UIに割り当てられるなどの)ブラウザアプリケーション222のブラウザタブに(例えば、クライアント110の出力デバイス214(例えば、ディスプレイ)を使用して)表示される。図1に示すように、クライアント110は、リンク選択、テキスト入力などのユーザ入力を受信するために、キーボード、タッチスクリーン、タッチパッドまたはマウスなどの入力デバイス216を含むこともできる。
クライアント110のプロセッサ212は、プロセッサ212に物理的にコード化された命令、メモリ240内のソフトウェア(例えば、ブラウザアプリケーション222および/または非ブラウザアプリケーション)から受信された命令、またはその両方の組み合わせなどの命令を実行して、(例えば、非ブラウザアプリケーション226のUI内の割り当てられたブラウザタブに表示するために)ブラウザアプリケーション222にコンテンツをプリロードするように構成される。例えば、クライアント110のプロセッサ212は、ブラウザアプリケーション222の命令を実行して、非ブラウザアプリケーション226からの要求を(例えば、ブラウザアプリケーション222のインタフェースを介して)受信して、ウェブコンテンツコピー224bをブラウザアプリケーション222の(非ブラウザアプリケーション226に割り当てられた)ブラウザタブにロードまたはプリロードすることができる。
図2に示すように、ウェブコンテンツコピー224bは、ブラウザアプリケーション222によってネットワーク150を介してサーバ130からダウンロードされ、かつウェブコンテンツコピー224bとしてクライアント110のメモリ220に記憶されたウェブコンテンツ224aのコピーであってもよい。いくつかの例では、ブラウザアプリケーション222によってプリロードされるコンテンツコピー224bは、クライアント110のメモリ220に既に存在することができる。例えば、ウェブコンテンツコピー224bは、ブラウザアプリケーション222によって以前に取得され、クライアント110のメモリ220に格納されたウェブコンテンツ224aのキャッシュされたコピーとすることができる。
非ブラウザアプリケーション226からブラウザアプリケーション222への要求は、非ブラウザアプリケーションのUIに表示されるアプリケーションコンテンツに含まれる(関連する)リンクの選択に応答するものとすることができる。このような要求は、「インテント(intent)」要求、「直接インテント(direct intent)」要求などと呼称されることがある。一例では、インテント要求は、「直接インテント」要求であり、「直接」要求とも呼称され、かつ非ブラウザアプリケーションのUIに表示されるアプリケーションコンテンツに含まれるリンクの選択時にトリガされる。他の例では、非ブラウザアプリケーション226からブラウザアプリケーション222への要求は、ウェブコンテンツ224aに関連するリンクが(例えば、ユーザによって)選択されることを予期して、ウェブコンテンツ224aを(ウェブコンテンツコピー224bとして)ブラウザアプリケーション222(例えば、ブラウザアプリケーションのタブ)にプリロードするための「予備的な(preliminary)」要求(「プリインテント(pre−intent)」要求とも呼称される)とすることができる。このような予備的な要求は、「プリインテント」要求、「ペンディングインテント(pending intent)」要求などと呼称されることがある。言い換えれば、そのような予備的な要求は、非ブラウザアプリケーション226のUIに表示されるアプリケーションコンテンツに含まれる対応するリンクの選択に先立って送信することができる。
(例えば、直接または予備的な)要求は、ブラウザアプリケーション222によってブラウザアプリケーション222のAPIを介して非ブラウザアプリケーション226から受信することができる。要求の受信に応答して、ブラウザアプリケーション222は、(例えば、ウェブコンテンツコピー224bとしての)ウェブコンテンツ224aを非ブラウザアプリケーション226に割り当てられたブラウザタブにロードまたはプリロードすることができる。本明細書で説明するように、非ブラウザアプリケーション226は、ウェブコンテンツをロードまたはプリロードに対する要求をする場合、フォアグラウンド処理として動作することができる。次いで、要求されたウェブコンテンツ224aは、ブラウザアプリケーション222によってバックグラウンドに(例えば、ブラウザタブに)ロードされ、かつ/またはレンダリングされる。
本明細書で説明するように、非ブラウザアプリケーション226からの要求を受信すると、ブラウザアプリケーション222は、ユーザには見えないアプリケーションであるバックグラウンド処理として動作するか、または初期化される。ブラウザアプリケーション222のAPIに提供されるとき、(例えば、直接または予備的な)要求は、ウェブコンテンツ224aがネットワーク150を介してブラウザアプリケーション222によってサーバ130からダウンロードされるべきであることを示すことができる。一旦ダウンロードされると、ウェブコンテンツ224aは、ブラウザアプリケーション222によるロードまたはプリロードのためにクライアント110のメモリ220にウェブコンテンツコピー224bとして格納される(または、ネットワークアダプタ238からブラウザアプリケーション222に直接ロードまたはプリロードされる)。ブラウザアプリケーション222が、バックグラウンドで(例えば、バックグラウンド処理として)動作していない場合、またはコンテンツ224aをダウンロードする状態にない場合、ブラウザアプリケーション222は、ブラウザアプリケーション222によって受信された非ブラウザアプリケーション226からの要求に応答して、バックグラウンドにおいて初期化される(再初期化、起動、ウォームアップなど)。一旦初期化されると、ブラウザアプリケーション222は、ウェブコンテンツ224aまたはウェブコンテンツコピー224bを非ブラウザアプリケーション226に割り当てられた(関連付けられた)ブラウザタブにロードまたはプリロードすることができる。非ブラウザアプリケーション226
クライアント110のプロセッサ212は、非ブラウザアプリケーション226からの(例えば、直接または予備的な)要求に応答して、および/または非ブラウザアプリケーション226によって表示されるアプリケーションコンテンツに含まれる(関連する)リンク(ウェブコンテンツ224aへのリンク)の選択(例えば、ユーザによる)に応答して、ブラウザアプリケーション222のブラウザタブにウェブコンテンツ224aまたはウェブコンテンツコピー224bをロードまたはプリロードするように構成することもできる。ブラウザアプリケーション222は、非ブラウザアプリケーション226のUIに含まれる(例えば、埋め込まれている、動作している等)ブラウザアプリケーションの割り当てられたブラウザタブを使用して、ウェブコンテンツ224a(または、ウェブコンテンツコピー224b)をレンダリングして表示するように構成することができる。
クライアント110のプロセッサ212は、非ブラウザアプリケーション226からの(例えば、直接または予備的な)要求に応答して、および/または非ブラウザアプリケーション226によって表示されるアプリケーションコンテンツに含まれる(関連する)リンク(ウェブコンテンツ224aへのリンク)の選択(例えば、ユーザによる)に応答して、ブラウザアプリケーション222のブラウザタブにウェブコンテンツ224aまたはウェブコンテンツコピー224bをロードまたはプリロードするように構成することもできる。ブラウザアプリケーション222は、非ブラウザアプリケーション226のUIに含まれる(例えば、埋め込まれている、動作している等)ブラウザアプリケーションの割り当てられたブラウザタブを使用して、ウェブコンテンツ224a(または、ウェブコンテンツコピー224b)をレンダリングして表示するように構成することができる。
いくつかの実施形態では、ブラウザアプリケーション222は、(プリロードされた)ウェブコンテンツ224aまたはウェブコンテンツコピー224bが必要でない(例えば、非ブラウザ・アプリケーション226のアプリケーションコンテンツにおける異なるリンク選択された)ことを示す別の(第2の)要求を非ブラウザアプリケーション226から受信するように構成することができる。第2の要求に応答して、ブラウザアプリケーション222は、ブラウザアプリケーション222(例えば、ブラウザアプリケーション222のブラウザタブから)からプリロードされたウェブコンテンツをアンロード(廃棄)するように構成することができる。例えば、非ブラウザアプリケーション226が最初にブラウザアプリケーションにバックグラウンドでウェブコンテンツ224a(またはウェブコンテンツコピー224b)をプリロードすることを要求するが、後で(例えば、非ブラウザアプリケーション226によって)プリロードされたウェブコンテンツが(例えば、予測されたリンクとは異なるリンクの選択により)必要でないと決定される場合、非ブラウザアプリケーション226は、プリロードされたウェブコンテンツが不要であり、かつブラウザアプリケーション222が、クライアント110のメモリ220から(例えば、ウェブコンテンツコピー224bとして記憶されている)プリロードされたウェブコンテンツをアンロードするか、または廃棄することができることを通知する。
非ブラウザアプリケーション226は、ブラウザアプリケーション222によってプリロードされるべきウェブコンテンツ224aを直接的に識別するか、またはその要求の一部としてブラウザアプリケーション222に情報を提供して、ブラウザアプリケーション222が非ブラウザアプリケーション226からの情報を評価して、プリロードするウェブコンテンツ224aを決定することができるようにする。例えば、ブラウザアプリケーション222(例えば、ブラウザアプリケーション222のブラウザタブ)にプリロードされるべきウェブコンテンツ224aは、ウェブページまたは他の適切なウェブコンテンツとすることができる。このような場合、非ブラウザアプリケーション226がブラウザアプリケーション222によってロードまたはプリロードされるべきウェブコンテンツ224aを直接的に識別するように構成されている場合、非ブラウザアプリケーション226からのコンテンツのプリロード要求は、ブラウザアプリケーション222によって(例えば、バックグラウンドに)ロードまたはプリロードされるウェブコンテンツ224aのアドレス(例えば、URL)を含む。
非ブラウザアプリケーション226が、要求の一部としてブラウザアプリケーション222に情報を提供するように構成されて、ブラウザアプリケーション222が非ブラウザアプリケーション226からの情報を評価してプリロードするウェブコンテンツ224aを決定するようにする場合において、非ブラウザアプリケーション226からのコンテンツのプリロード要求は、ユーザの閲覧履歴、および/またはどのウェブコンテンツ224aをプリロードするかを決定する(例えば予測する)ために使用する他の情報を含むことができる。次いで、ブラウザアプリケーション222は、閲覧履歴および/または他の情報に基づいて、ブラウザアプリケーション222(例えば、ブラウザタブ)にプリロードするコンテンツ224aを識別する。
他の例では、非ブラウザアプリケーション226が、要求の一部としてブラウザアプリケーション222に情報を提供するように構成されて、ブラウザアプリケーション222が非ブラウザアプリケーション226からの情報を評価してプリロードするウェブコンテンツ224aを決定するようにする場合において、ブラウザアプリケーション222は、プリロードするコンテンツに関するリンクが非ブラウザアプリケーション226においてユーザによって選択される確率値に基づいて、ブラウザアプリケーション222にプリロードするコンテンツを識別することができる。例えば、非ブラウザアプリケーション226がブラウザアプリケーション222に、非ブラウザアプリケーション226のユーザが現地のレストランに関するアプリケーションコンテンツを現在視聴していることを示す場合、ブラウザアプリケーション222は、(例えば、プリロードされるリンクに対応するレストランが、非ブラウザアプリケーション226においてユーザによって最も選択される可能性が高い閾値確率を満たすという決定に基づいて)非ブラウザアプリケーション226のUIに表示されているアプリケーションコンテンツに含まれる1つまたは複数のレストランのリンクに対応するウェブコンテンツをプリロードすることができる。このように、ブラウザアプリケーション222にプリロードされるべきコンテンツは、1つのコンテンツアイテムに限定されず、複数のウェブページのような複数のコンテンツアイテムとすることができる。
非ブラウザアプリケーション226が、要求の一部として情報をブラウザアプリケーション222に提供するように構成されて、ブラウザアプリケーション222が非ブラウザアプリケーション226からの情報を評価してプリロードするウェブコンテンツ224aを決定するようにする実施形態において、非ブラウザアプリケーション226からの要求は、非ブラウザアプリケーション226において(例えば、入力デバイス216を使用して)にユーザによって入力された入力(例えば、テキストまたは他の入力)を含むことができる。次いで、ブラウザアプリケーション222は、非ブラウザアプリケーションにおいてユーザによって現在入力された入力に基づいて、ブラウザアプリケーション222(のブラウザタブ)にプリロードするコンテンツ224aを識別することができる。
例えば、前の例に引き続き、非ブラウザアプリケーション226が、非ブラウザアプリケーション226のユーザが非ブラウザアプリケーション226の検索入力フィールドに「タイ」を入力したことをブラウザアプリケーション222に示す場合、ブラウザアプリケーション222は、タイのレストラン(例えば、非ブラウザアプリケーション226によって表示されているアプリケーションコンテンツに含まれるリンクに対応するタイのレストランなど)に関する1つまたは複数のウェブページに対応するウェブコンテンツをプリロードすることができる。
図3A、図3Bおよび図3Cは、一実施形態によるモバイルコンピューティングデバイス(モバイルデバイス)300上で動作(実行など)する非ブラウザアプリケーションにおけるウェブコンテンツの統合を示す図である。図3A、図3Bおよび図3Cに示される実施形態は、例として、図解のために示されている。他の実施形態では、他の構成を使用して非ブラウザアプリケーションにおけるウェブコンテンツの表示(レンダリング)を統合することができる。図3A、図3Bおよび図3Cの説明において、いくつかの要素が概略的に(例えば、ブロック図形式で)示されており、他の要素は図で示されている。任意の実施形態の特定の配置および詳細は、少なくとも、特定の非ブラウザアプリケーション、ブラウザアプリケーション、および表示(レンダリング)されるウェブコンテンツに依存する。また、説明のために、図3A、図3B、図3Cは、図1および2を適宜参照しつつ説明する。例えば、モバイルデバイス300を使用して図1および図2に示すようなクライアントデバイス110を実施するために使用することができる。
図3Aは、クライアント110の出力デバイス214等のモバイルデバイス300の出力デバイス(例えば、ディスプレイパネル)上に表示される非ブラウザアプリケーション(非ブラウザアプリケーション226など)のユーザインタフェース(グラフィカルユーザインタフェース)310を示す。この例では、ユーザインタフェース310は、アイコン312、タイトル314、メニューアイコン316、およびアプリケーションコンテンツ320を含む。モバイルデバイス300はまた、スマートフォン上のナビゲーションボタンなど、モバイルデバイス300の様々な操作および機能を制御するために使用することができるナビゲーションボタンパネル330を含む。ユーザインタフェース310は、関連する非ブラウザアプリケーション226に対応する色、フォントおよび/または他の感覚的要素(aesthetic elements)を用いて表示されることもできる。この例示的な実施形態では、このような色、フォントおよび/または他の感覚的要素は、非ブラウザアプリケーション226によって(直接または予備的な)インテント要求において示され、かつ非ブラウザアプリケーション226に割り当てられたブラウザタブに統合されたウェブコンテンツを表示するときに使用される。このような手法は、ブラウザアプリケーション222へのコンテキスト切り替えを実行する現在の手法とは対照的に、非ブラウザアプリケーションにおけるウェブコンテンツを視聴するときに、ユーザに「シームレス」な視覚エクスペリエンスを提供することができる。
図3Aに示すように、アイコン312は、非ブラウザアプリケーション226に対応するアイコンとすることができる。同様に、ユーザインタフェース310がモバイルデバイス300上に表示されている状態で、タイトル314を使用して、特定の非ブラウザアプリケーション226が実行されていることを示す名前(例えば、定型化されたロゴ)を表示することができる。メニューアイコン316は、非ブラウザアプリケーション226用のメニュー(例えば、アプリケーション操作メニュー)を開くために使用することができる。メニューアイコン316に関連するメニューは、非ブラウザアプリケーション226に、非ブラウザアプリケーション226の関連する動作(処理、タスクなど)を実行させるための、モバイルデバイス300のユーザによって選択可能な各種メニュー項目を含む。
アプリケーションコンテンツ320は、非ブラウザアプリケーション226によって表示されるグラフィカルコンテンツ、または他の視覚コンテンツ(例えば、ビデオコンテンツ、テキストコンテンツなど)であってもよい。特定の実施形態では、アプリケーションコンテンツ320は、モバイルデバイス300のオーディオシステム(図示せず)によって再生されるオーディオコンテンツと併せて表示される。図3Aに示すように、アプリケーションコンテンツ320は、個々のウェブコンテンツに関連付けられたリンク322,324,326、および328(例えば、個々のURLを含むハイパーリンク)を含むことができる。図3Aには4つのリンクが示されているが、他の実施形態では、より少ないまたは追加のリンクを使用することができる。
図3に示すリンク322、324、326および328は、それぞれ画像、アイコン、テキスト、ビデオなどの視覚的要素に個々に対応することができる。本明細書で説明するように、リンク322、324、326および328のうちの1つまたは複数は、ブラウザアプリケーション222に(直接インテント要求および/または予備的なインテント要求において)提供することができる。分かりやすく説明するために、図3A、図3Bおよび図3Cの残りの説明は、(直接または予備的な)インテント要求に含まれる単一のリンク(リンク322)に関して説明する。特定の実施形態では、複数のリンクに関する情報をインテント要求に含めることができることは理解されよう。他の実施形態では、各リンクについて別個のインテント要求を送ることができる。
(直接または予備的な)インテント要求を受信した後、ブラウザアプリケーション222は、そのようなインテント要求に応答して、(例えば、ウェブコンテンツコピー224bとして記憶することができる)関連するウェブコンテンツ224aを取得するための処理(例えば、バックグラウンド処理)を実行し、非ブラウザアプリケーション226に割り当てられた(割り当てることができる、または割り当てられ得る)ブラウザタブに得られたウェブコンテンツをロードおよび/またはレンダリングする。上述したように、インテント要求は、非ブラウザアプリケーション226に対応する色、フォントおよび/または他の感覚的要素の標示を含むことができる。ブラウザアプリケーション222は、それらの標示に従ってウェブコンテンツ224bをレンダリングすることができる。したがって、(非ブラウザアプリケーション226のユーザインタフェース内での)割り当てられたブラウザタブへのウェブコンテンツの表示は、アプリケーションコンテンツ320の表示と感覚的に一致するようにレンダリングすることができる。
この例において、図3Aに示すようにユーザがリンク322を選択するのに応答して、モバイルデバイス300によって表示される非ブラウザアプリケーション226のユーザインタフェースは、図3Aに示すように、アプリケーションコンテンツ320を表示することから、図3Bに示すように、割り当てられたブラウザタブ340に対応するウェブコンテンツ224a(またはウェブコンテンツコピー224b)を表示することに移行する。本明細書で説明するように、ウェブコンテンツ224bは、インテント要求に応答してブラウザアプリケーション222によって(ウェブコンテンツ224aのコピーとして)取得され、かつ図3Bに示すように非ブラウザアプリケーション226のユーザインタフェース内での表示に先立って、バックグラウンドにおいて割り当てられたブラウザタブ340にレンダリングされる。図3Aから図3Bへの表示の移行は、非ブラウザアプリケーションにより(例えば、インテント要求において)定義されるアニメーションに従って行うことができる。例えば、移行は、スライドイン移行(slide−in transition)、フェードイン/フェードアウト移行(fade−in/fade−out transition)、ディゾルブアウト/ディゾルブイン移行(dissolve−out/dissolve−in transition)などとすることができる。
図3Bに示すように、割り当てられたブラウザタブ340は、バックボタン342、セキュリティ状態アイコン344、ドメインインジケータ346、アイコンおよび/またはボタン347、メニューアイコン348、レンダリングされた(ウェブコンテンツ224bからレンダリングされた)ウェブコンテンツ350、(レンダリングされたウェブコンテンツ350と共に表示される視覚的要素を含んでも含まなくてもよい)ブラウザアシストレイヤ352とを含む。この例では、バックボタン342を選択すると、図3Bに示すモバイルデバイス300上の(割り当てられたブラウザタブ140の)表示が図3Aに示す(アプリケーションコンテンツ320の)表示に移行する。セキュリティ状態アイコン342は、レンダリングされたウェブコンテンツ350がセキュア接続(例えば、セキュアソケットレイヤ(SSL)を介して)またはセキュアでない接続を使用して取得されたかどうかを示す。ドメインインジケータ346は、レンダリングされたウェブコンテンツ350が得られたドメイン(例えば、ウェブロケーションまたはURL)を示すために使用される。いくつかの実施形態では、ドメインインジケータ346は、(編集不可能な)表示専用インジケータであってもよい。
割り当てられたブラウザタブ340においても、アイコンおよび/またはボタン347は、非ブラウザアプリケーション226に対応するアイコンとすることができる。アイコンおよび/またはボタン347は、アイコンおよび/またはボタン347の選択(例えば、クリック)に応答して、非ブラウザアプリケーション226(またはブラウザアプリケーション)の動作(処理)を実行させることができる。アイコンおよび/またはボタン347に関連する特定の動作は、特定の実施形態に依存し、かつ対応するインテント要求の一部として定義することができる。さらに、メニューアイコン348を選択すると、図3Cに示すメニュー360等のメニュー(例えば、メニューアイコン316に関連するアプリケーションメニューとは異なるメニュー)が表示される。これについては、以下にさらに詳細に説明する。
図3Bに示す例において、ブラウザアシストレイヤ352は、(例えば、割り当てられたブラウザタブ140を表示する場合)ブラウザアプリケーション326の機能への非ブラウザアプリケーション226のアクセスを提供することができる。そのような機能は、ブラウザクッキージャー、閲覧履歴、言語翻訳サービス、パスワードボールト(password vault)(リポジトリなど)などを含む。ブラウザアシストレイヤ352で(介して、からなど)利用可能な特定の機能は、モバイルデバイス300上のウェブコンテンツをレンダリングするために使用される特定のブラウザアプリケーション222に少なくとも依存する。
上述したように、図3Cは、図3Bのメニューアイコン348の選択に応答して表示されるメニュー360を示す。図3Cに示すように、メニュー360は、1つまたは複数のブラウザメニュー項目362および1つまたは複数のアプリケーションメニュー項目364を含むことができる。このような手法では、ブラウザメニュー項目362(および関連する動作)は、ブラウザアプリケーション222により定義され、かつ割り当てられたブラウザタブ340に含まれ、アプリケーションメニュー項目364(および関連する動作)は、非ブラウザアプリケーション226により(例えば、インテント要求において)定義され、かつ割り当てられたブラウザタブ340のメニュー360に含まれる(例えば、ブラウザアプリケーション222によって)。ブラウザメニュー項目362またはアプリケーションメニュー項目364の選択によって、モバイルデバイス300に個々の関連する処理を実行させることができる。ブラウザメニュー項目362およびアプリケーションメニュー項目364に関連する特定の処理は、特定の実施形態に依存する。
図4は、一実施形態による、非ブラウザアプリケーションにウェブコンテンツを統合する(例えば、ウェブコンテンツを表示および/またはレンダリングする)方法400を示すフローチャートである。この例示的な実施形態では、方法400は、図2および図3A〜3Cに関連して説明された技術および手法を使用して図1に示すシステム100において実施することができる。従って、説明の目的のために、方法400は、図1、図2および図3A〜図3Cをさらに参照して説明される。しかしながら、他の実施形態では、方法400は、他の構成を有するシステムおよびデバイスにおいて実施することができることが理解されるであろう。
ブロック410において、方法400は、モバイルデバイス300上で非ブラウザアプリケーション226を実行することを含む。ブロック420において、方法400は、非ブラウザアプリケーション226によってモバイルデバイス300のディスプレイ(出力デバイス214)にウェブコンテンツ224aへのリンク(リンク322)を表示することを含む。ブロック430において、方法400は、リンク322が選択されたという標示(選択)を受信することを含む。ブロック440において、方法400は、リンク322が選択されたという標示に応答して、ブラウザアプリケーション222のブラウザタブ340を非ブラウザアプリケーション226に割り当てることを含む。ブロック450において、方法400は、割り当てられたブラウザタブ340を非ブラウザアプリケーション222のユーザインタフェース内で表示することを含む。さらに、方法400は、ブロック460において、割り当てられたブラウザタブ340により(において、を用いてなど)非ブラウザアプリケーションのユーザインタフェース内でウェブコンテンツ224a(またはウェブコンテンツコピー224b)を表示することを含む。
方法400において、ブロック420においてリンクが選択されたという標示は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含むことができる。少なくとも1つのカスタマイズパラメータは、メニュー項目およびメニュー項目に関連した対応する動作と、アイコンと、ボタンおよびボタンに関連した対応する動作と、ユーザインタフェースに対応する色と、割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションとのうちの少なくとも1つを含むことができる。
この例では、非ブラウザアプリケーション226および割り当てられたブラウザタブ340は、モバイルデバイス300により別個のプロセスとして実行することができる(例えば、割り当てられたブラウザタブがブラウザアプリケーションに関連するプロセスの一部として実行される)。さらに、方法400において、割り当てられたブラウザタブは、ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、非ブラウザ・アプリケーションにより定義される少なくとも1つのメニュー項目と、ブラウザアプリケーションにより定義される少なくとも1つのボタンと、非ブラウザアプリケーションにより定義される少なくとも1つのボタンとのうちの少なくとも1つを含む。
図5は、一実施形態による、非ブラウザアプリケーションにウェブコンテンツを統合する(例えば、レンダリングされたウェブコンテンツを表示する)別の方法500を示すフローチャートである。この例示的な実施形態では、方法400と同様に、方法500は、図2および図3A〜図3Cに関連して説明された技術および手法を使用して、図1に示すシステム100において実施することができる。したがって、説明の目的のために、方法500は、図1、図2および図3A〜図3Cをさらに参照して説明される。しかしながら、他の実施形態では、方法500は、他の構成を有するシステムおよびデバイスにおいて実施することができることは理解されるであろう。
方法500は、ブロック510において、モバイルデバイス300上で非ブラウザアプリケーション226を実行すること、およびブロック520において、非ブラウザアプリケーション226によってモバイルデバイス300のディスプレイ(例えば、出力デバイス214)上に、ウェブコンテンツ224aへのリンク(例えば、リンク322)を表示することを含む。方法500は、リンク322をウェブコンテンツ224aに表示するのに応答して、ブロック530において、ブラウザアプリケーションにプリインテント要求を送信することを含む。ブロック530のプリインテント要求は、ウェブコンテンツ224aへのリンクに対応するユニフォームリソースロケータ(URL)を含むことができる。方法500は、ブロック540において、プリインテント要求に応答して、ブラウザアプリケーション226によってウェブコンテンツ224aを表示するのに対応する少なくとも1つの(バックグラウンド)処理を実行することを含む。
ブロック550において、方法500は、(例えば、モバイルデバイス300のユーザによる)リンク322の選択を示す信号を受信することを含む。方法500は、ブロック550において信号を受信するのに応答して、ブロック560において、ブラウザアプリケーション222のタブ(ブラウザタブ340)を非ブラウザアプリケーション226に割り当てることを含む。本明細書で説明するように、ブロック530のプリインテント要求は、方法400に関して説明したカスタマイズパラメータのような、割り当てられたブラウザタブ340用の少なくとも1つのカスタマイズパラメータをさらに含むことができる。
ブロック570において、方法500は、ブロック560の少なくとも1つのカスタマイズパラメータに従って、割り当てられたブラウザタブ340を非ブラウザアプリケーション226のユーザインタフェース内で表示することを含む。さらに、方法500は、ブロック580において、割り当てられたブラウザタブ340によって、図3Bに示すような非ブラウザアプリケーションのユーザインタフェース内でウェブコンテンツ224a(またはウェブコンテンツコピー224b)を表示することを含む。
方法500において、ブロック540においてウェブコンテンツを表示するのに対応する少なくとも1つの動作は、ブラウザアプリケーションを起動することと、ブラウザアプリケーションのネイティブライブラリをロードすることと、URLに基づいてドメインネームシステム(DNS:domain name system)ルックアップを実行することと、DNSルックアップに対応するサーバに接続することと、サーバからウェブコンテンツをダウンロードすることと、(例えば、ブロック560の少なくとも1つのカスタマイズパラメータに従って)ウェブコンテンツをレンダリングすることのうちの少なくとも1つを含む。方法500では、方法400の場合と同様に、非ブラウザアプリケーション226および割り当てられたブラウザタブ340は、モバイルデバイス300により別個のプロセスとして実行することができる。他の例では、非ブラウザアプリケーション226および割り当てられたブラウザタブ340は、モバイルデバイス300上の同じプロセスの一部として実行することができ、その際、割り当てられたブラウザタブ340は非ブラウザアプリケーション226の制御下にある。これは、特にリソース効率の良い実施形態である。さらに、ブロック540において、ウェブコンテンツ224a(またはウェブコンテンツコピー224b)を表示するのに対応する少なくとも1つの動作を実行することは、ブロック530におけるプリインテント要求に応答して、非ブラウザアプリケーション226をモバイルデバイス300上のフォアグラウンド処理として実行しながら、モバイルデバイス300上のブラウザアプリケーション222のバックグラウンド処理においてウェブコンテンツ(上述したものなど)を表示するのに対応する少なくとも1つの動作を実行することを含む。
ブロック580においてウェブコンテンツを表示することは、ウェブコンテンツ224aに関連するURL(ドメイン)を割り当てられたブラウザタブ340に表示することを含むことができる。さらに、ブロック580においてウェブコンテンツを表示することは、割り当てられたブラウザタブに表示されたウェブコンテンツに対応する、セキュリティ状態アイコン344などのセキュアソケットレイヤ(SSL)の状態を表示することを含む。
方法500において、割り当てられたブラウザタブ340は、ブラウザアシストレイヤ352などを介して、ブラウザアプリケーション222の少なくとも1つのリソースにアクセスすることができる。ブラウザアプリケーション222のこのようなリソースは、電子決済サービス、言語翻訳サービス、履歴閲覧、オートフィルデータの作成、およびパスワードボールトを含むが、他のブラウザリソースもアクセス可能であり得る。
図6は、一実施形態による、非ブラウザアプリケーションにコンテンツを統合する(例えば、非ブラウザアプリケーションに対して特に作成されていないコンテンツを表示する)別の方法600を示すフローチャートである。この例では、方法400および500と同様に、方法600は、図2および図3A〜図3Cに関連して説明されたのと同様の技術および手法を用いて、図1に示すシステム100において実施することができる。したがって、例示の目的のために、方法600は、図1、図2、および図3A〜図3Cをさらに適宜参照して説明される。しかしながら、他の実施形態では、方法600は、他の構成を有するシステムおよびデバイスにおいて、およびウェブコンテンツ以外のコンテンツを用いて実施することができることは理解されるであろう。
ブロック610において、方法600は、非ブラウザアプリケーション(例えば、非ブラウザアプリケーション226)から、第1のタイプのコンテンツに対する要求を受信することを含む。第1のタイプのコンテンツは、非ブラウザアプリケーションにより表示するためには専ら作成されていないコンテンツとすることができる。例えば、一実施形態において、第1のタイプのコンテンツは、ウェブコンテンツ224aまたはウェブコンテンツ(コピー)224bとすることができる。他の実施形態では、第1のタイプのコンテンツは、ウェブコンテンツ以外のコンテンツとすることができる。ブロック620において、方法600は、非ブラウザアプリケーションに、ブラウザアプリケーション(例えば、ブラウザアプリケーション222)用のユーザインタフェース要素を提供することを含み、非ブラウザアプリケーションは、非ブラウザアプリケーションにおける/による使用のために専ら構成された(適応された、フォーマット化された、生成された等)異なる第2のタイプのコンテンツを表示する。第2のタイプのコンテンツは、テキスト、画像、ハイパーリンクなどを含むことができる。一実施形態では、ユーザインタフェース要素はブラウザタブとすることができうる。他の実施形態では、ユーザインタフェース要素は、ブラウザウィンドウ、ポップアップウィンドウなどの他の形態をとることができる。
ブロック630において、方法600は、非ブラウザアプリケーションのユーザインタフェース用のユーザインタフェース要素を変更して、非ブラウザアプリケーションに対して第1のタイプのコンテンツを表示することを含む。変更は、ブロック630において、本明細書に記載の手法を使用するなど、非ブラウザアプリケーションのユーザインタフェースにユーザインタフェース要素(例えば、ブラウザタブ)を統合することを含む。例えば、ユーザインタフェース要素の変更は、本明細書に記載されたカスタマイズパラメータなどの少なくとも1つのカスタマイズパラメータをユーザインタフェース要素に適用することを含む。
1つの包括的な態様によれば、コンピュータが実施する方法は、コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、非ブラウザアプリケーションによって、コンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、リンクが選択されたという標示を受信するステップとを含む。コンピュータが実施する方法はまた、リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップと、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップとを含むことができる。
実施形態は、以下の特徴のうちの1つまたは複数を含むことができる。例えば、コンピューティングデバイスはモバイルコンピューティングデバイスであってもよい。非ブラウザアプリケーションおよび割り当てられたブラウザタブは、コンピューティングデバイスにより別個の処理として実行することができる。割り当てられたブラウザタブは、ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、非ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、ブラウザアプリケーションにより定義される少なくとも1つのボタンと、および/または非ブラウザアプリケーションにより定義される少なくとも1つのボタンとを含むことができる。リンクが選択されたという標示は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含むことができる。
この方法は、ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信することを含むことができる。方法は、このプリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行することを含むことができる。
プリインテント要求は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含むことができる。少なくとも1つのカスタマイズパラメータは、1つまたは複数のメニュー項目およびメニュー項目に関連した対応する動作と、非ブラウザアプリケーションに対応するアイコンと、ボタンおよびボタンに関連した対応する動作と、ユーザインタフェースに対応する色と、割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションとのうちの1つまたは複数を含むことができる。
ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、ブラウザアプリケーションを起動することと、ブラウザアプリケーションのネイティブライブラリをロードすることと、URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、DNSルックアップに対応するサーバに接続することと、サーバからウェブコンテンツをダウンロードすることと、ダウンロードされたウェブコンテンツをレンダリングすることとのうちの1つまたは複数を含むことができる。
別の包括的な態様では、コンピュータが実施する方法は、コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップとを含むことができる。この方法は、ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求をブラウザアプリケーションに送信するステップをさらに含むことができる。方法はさらに、プリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップと、リンクの選択を示す信号を受信するステップとを含むことができる。方法は、信号を受信するのに応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップであって、プリインテント要求が、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータをさらに含むものであるステップと、少なくとも1つのカスタマイズパラメータに従って、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップとを含む。
実施形態は、以下のうちの1つまたは複数の特徴を含むことができる。例えば、少なくとも1つのカスタマイズパラメータは、1つまたは複数のメニュー項目と、メニュー項目に関連した対応する動作と、アイコンと、ボタンおよびボタンに関連した対応する動作と、ユーザインタフェースに対応する色と、割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションとを含むことができる。
ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、ブラウザアプリケーションを起動することと、ブラウザアプリケーションのネイティブライブラリをロードすることと、URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、DNSルックアップに対応するサーバに接続することと、サーバからウェブコンテンツをダウンロードすることと、ウェブコンテンツをレンダリングすることとのうちの1つまたは複数を含むことができる。
非ブラウザアプリケーションおよび割り当てられたブラウザタブは、コンピューティングデバイスにより別個の処理として実行することができる。方法は、割り当てられたブラウザタブにURLを表示することを含むことができる。方法は、割り当てられたブラウザタブに表示されたウェブコンテンツに対応するセキュアソケットレイヤ(SSL)の状態を表示することを含むことができる。
割り当てられたブラウザタブは、ブラウザアプリケーションの少なくとも1つのリソースにアクセスすることができる。ブラウザアプリケーションの少なくとも1つのリソースは、電子決済サービスと、言語翻訳サービスと、履歴閲覧と、オートフィルデータの作成と、パスワードボールトとのうちの1つまたは複数を含むことができる。
プリインテント要求に応答してウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行するステップは、非ブラウザアプリケーションをコンピューティングデバイスのフォアグラウンド処理として実行しながら、コンピューティングデバイスのバックグラウンドブラウザ処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行することを含むことができる。
別の包括的な態様において、非一時的なコンピュータ可読媒体は、非一時的なコンピュータ可読媒体上に記憶された命令を有することができる。命令は、コンピューティングデバイスの少なくとも1つのプロセッサにより実行されたときに、非ブラウザアプリケーションを実行することと、非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示することと、リンクが選択されたという標示を受信することとをコンピューティングデバイスに行わせる。命令は、少なくとも1つのプロセッサにより実行されたときに、リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てることをコンピューティングデバイスに行わせる。命令は、コンピューティングデバイスの少なくとも1つのプロセッサにより実行されたときに、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示することと、割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示することとをコンピューティングデバイスに行わせる。
実施形態は、以下のうちの1つまたは複数の特徴を含むことができる。例えば、命令は、少なくとも1つのプロセッサにより実行されたときに、ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信することと、プリインテント要求に応答して、バックグラウンド処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行することとをコンピューティングデバイスに行わせる。
別の包括的な態様では、コンピュータが実施する方法は、第1のタイプのコンテンツに対する要求を非ブラウザアプリケーションから受信することを含むことができる。コンピュータが実施する方法は、ブラウザアプリケーション用のユーザインタフェース要素を非ブラウザアプリケーションに提供することをさらに含むことができる。非ブラウザアプリケーションは、非ブラウザアプリケーション用に専ら作成された異なる第2のタイプのコンテンツを表示することができる。コンピュータが実施する方法はまた、非ブラウザアプリケーションのユーザインタフェース用のユーザインタフェース要素を変更して、非ブラウザアプリケーションに対して第1のタイプのコンテンツを表示することを含むことができる。
実施形態は、以下のうちの1つまたは複数の特徴を含むことができる。例えば、第1のタイプのコンテンツはウェブコンテンツを含むことができる。第1のタイプのコンテンツは、非ブラウザアプリケーションによって表示するためには専ら作成されていないコンテンツを含むことができる。ユーザインタフェース要素は、ブラウザタブを含むことができる。ユーザインタフェース要素の変更は、少なくとも1つのカスタマイズパラメータをユーザインタフェース要素に適用することを含むことができる。
図7は、本明細書において説明する技術に関し使用され得る一般的なコンピュータデバイス700及び一般的なモバイル・コンピュータデバイス750の一例を示している。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、個人用情報端末、サーバ、ブレードサーバ、メインフレーム、及び他の適切なコンピュータ等、様々な形態のデジタル・コンピュータを表すよう意図されている。コンピューティングデバイス750は、個人用情報端末、携帯電話、スマートフォン、及び他の同様のコンピューティングデバイス等、様々な形態のモバイルデバイスを表すよう意図されている。本明細書において示している構成要素と、構成要素同士の接続及び関係と、構成要素の機能とは、例示としてのみ意図されており、本文書において説明し、及び/又は特許請求の範囲に記載した発明の実施形態を限定するようには意図されていない。
コンピューティングデバイス700は、プロセッサ702と、メモリ704と、記憶デバイス706と、メモリ704及び高速拡張ポート710に接続している高速インタフェース708と、低速バス714及び記憶デバイス706に接続している低速インタフェース712と、を備える。構成要素702,704,706,708,710,712の各々は、様々なバスを用いて相互接続されており、共通のマザーボードに取り付けられていることもあれば、適切な場合には他の態様により取り付けられていることもある。プロセッサ702は、高速インタフェース708に結合されているディスプレイ716等の外部の入力デバイス又は出力デバイス上においてGUI用のグラフィカル情報を表示するためのメモリ704又は記憶デバイス706に記憶されている命令を含む、コンピューティングデバイス700内における実行のための命令を処理できる。他の実施形態では、複数のプロセッサ及び/又は複数のバスは、適切な場合、複数のメモリ及びある種のメモリとともに使用されてもよい。さらに、複数のコンピューティングデバイス700が互いに接続されて、各々のデバイスが必要な動作のうちの部分を提供してもよい(例えば、サーババンク、ブレードサーバのグループ、又はマルチプロセッサシステム)。
メモリ704は、コンピューティングデバイス700内において情報を記憶する。一実施形態では、メモリ704は、1つ以上の揮発性メモリユニットである。別の実施形態では、メモリ704は、1つ以上の不揮発性メモリユニットである。さらに、メモリ704は、磁気ディスク又は光学ディスク等、別の形態のコンピュータ可読媒体であってもよい。
記憶デバイス706は、コンピューティングデバイス700のために大容量の記憶を提供できる。一実施形態では、記憶デバイス706は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、テープデバイス、フラッシュメモリ若しくは他の同様のソリッド・ステート・メモリ・デバイス、又はデバイスからなるアレイ(ストレージ・エリア・ネットワーク又は他の構成のデバイスを含む)等、コンピュータ可読媒体であってもよく、また、そのコンピュータ可読媒体を含んでいてもよい。コンピュータプログラム製品は、情報キャリアに有形に具現化される場合がある。さらに、コンピュータプログラム製品は、実行されたときに、上述した方法等の1つ以上の方法を実行する命令を含んでいてもよい。情報キャリアは、メモリ704、記憶デバイス706、又はプロセッサ702上のメモリ等、コンピュータ可読媒体又は機械可読媒体である。
高速制御部708は、コンピューティングデバイス700のために帯域集約の動作を管理する一方、低速制御部712は、比較的低い帯域集約の動作を管理する。機能のそのような割り当ては、例示にすぎない。一実施形態では、高速制御部708は、メモリ704と、ディスプレイ716(例えば、グラフィクスのプロセッサ又はアクセラレータを通じて)と、様々な拡張カード(図示せず)を受容し得る高速拡張ポート710と、に結合されている。その実施形態では、低速制御部712は、記憶デバイス706と低速拡張ポート714に結合されている。様々な通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット)を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナ等、1つ以上の入力デバイス若しくは出力デバイス、又はスイッチ若しくはルータ等のネットワーキングデバイス(例えば、ネットワークアダプタを通じて)に結合されていてもよい。
コンピューティングデバイス700は、図に示すように、多くの異なる形態において実装されてよい。例えば、それは、スタンダードサーバ720として実装されたり、そのようなサーバのグループにおいて複数回にわたって実装されたりする場合がある。さらに、それは、ラックサーバシステム724の一部として実装されてもよい。さらに、それは、ラップトップコンピュータ722等のパーソナルコンピュータにおいて実装されてもよい。これに代えて、コンピューティングデバイス700の構成要素は、デバイス750等のモバイルデバイス(図示せず)における他の構成要素と組み合わされてもよい。そのようなデバイスの各々は、コンピューティングデバイス700,750のうちの1つ以上を含んでいてもよく、システム全体が、互いに通信する複数のコンピューティングデバイス700,750から構成されてもよい。
コンピューティングデバイス750は、プロセッサ752と、メモリ764と、ディスプレイ754等の入力デバイス又は出力デバイスと、通信インタフェース766と、送受信機768と、を構成要素として特に備える。デバイス750は、追加の記憶部を提供するために、マイクロドライブ又は他のデバイス等の記憶デバイスをさらに備えていてもよい。構成要素750,752,764,754,766,768の各々は、様々なバスを用いて相互接続されており、構成要素のうちのいくつかは、共通のマザーボードに取り付けられていることもあれば、適切な場合には他の態様により取り付けられていることもある。
プロセッサ752は、コンピューティングデバイス750内において、メモリ764に記憶されている命令を含む命令を実行できる。プロセッサは、別個の複数のアナログプロセッサ及びデジタルプロセッサを含むチップからなるチップセットとして実装されてもよい。プロセッサは、例えば、ユーザインタフェースの制御等のデバイス750の他の構成要素の協調と、デバイス750によって動作させられるアプリケーションと、デバイス750による無線通信とを可能にする。
プロセッサ752は、ディスプレイ754に結合されている制御インタフェース758及びディスプレイインタフェース756を通じて使用者と通信し得る。ディスプレイ754は、例えば、TFT LCD(薄膜トランジスタ液晶ディスプレイ)若しくはOLED(有機発光ダイオード)ディスプレイ、又は他の適切なディスプレイ技術であってよい。ディスプレイインタフェース756は、グラフィカル情報及び他の情報を使用者に提示するためにディスプレイ754を動作させるための適切な回路を備えることができる。制御インタフェース758は、使用者からコマンドを受信し、プロセッサ752に渡すためにそのコマンドを変換できる。さらに、外部インタフェース762は、他のデバイスとのデバイス750の近領域通信を可能にするように、プロセッサ752と通信していてもよい。外部インタフェース762は、例えば、一部の実施形態における有線通信又は他の実施形態における無線通信を可能にする場合があり、さらに、複数のインタフェースが用いられてもよい。
メモリ764は、コンピューティングデバイス750内において、情報を記憶する。メモリ764は、1つ以上のコンピュータ可読媒体と、1つ以上の揮発性メモリユニットと、1つ以上の不揮発性メモリユニットと、のうちの1つ以上として実装される場合がある。さらに、拡張メモリ774が提供されるとともに、例えば、SIMM(Single In Line Memory Module)カードインタフェースを含み得る拡張インタフェース772を通じてデバイス750に接続されてもよい。そのような拡張メモリ774によって、デバイス750のための余分な記憶スペースが提供される場合もあれば、また、デバイス750のためのアプリケーション又は他の情報が記憶される場合もある。具体的には、拡張メモリ774は、上述した処理を実行し、又は補完するための命令を含んでいてもよく、さらに、セキュア情報も含んでいる場合がある。したがって、例えば、拡張メモリ774は、デバイス750のためのセキュリティモジュールとして提供される場合もあり、デバイス750のセキュアな使用を可能にする命令に関しプログラミングされていてもよい。さらに、セキュアアプリケーションは、ハッキング不可能な態様により識別情報をSIMMカード上に配置すること等、追加の情報とともにSIMMカードを介して提供される場合がある。
メモリは、例えば、下記のように、フラッシュメモリ及び/又はNVRAMメモリを含み得る。一実施形態では、コンピュータプログラム製品は、情報キャリアに有形に具現化される。コンピュータプログラム製品は、実行されたときに、上述した方法等の1つ以上の方法を実行する命令を含む。情報キャリアは、例えば、送受信機768又は外部インタフェース762によって受信される、メモリ764、拡張メモリ774、又はプロセッサ752上のメモリ等、コンピュータ可読媒体又は機械可読媒体である。
デバイス750は、必要な場合にはデジタル信号処理回路を含み得る通信インタフェース766を通じて無線により通信できる。通信インタフェース766は、特に、GSM(登録商標)ボイスコール、SMS、EMS、又はMMSのメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、又はGPRS等、様々なモード又はプロトコルの下、通信を可能にし得る。そのような通信は、例えば、無線周波数の送受信機768を通じて行われてもよい。さらに、狭域通信は、Bluetooth、WiFi(登録商標)、又は他のそのような送受信機(図示せず)を用いること等によって、行われてもよい。さらに、GPS(全地球測位システム)受信機モジュール770は、航行及び場所に関係する追加の無線データをデバイス750に提供でき、その無線データは、適切な場合には、デバイス750上において動作するアプリケーションによって使用されてもよい。
さらに、デバイス750は、使用者から音声情報を受信し、これを使用に適したデジタル情報に変換できる音声コーデック760を用いて可聴の通信を行ってもよい。音声コーデック760は、例えば、デバイス750のハンドセットにおいて、スピーカを通じること等により使用者に対して可聴音を同様に生成してもよい。そのような音は、音声通話からの音を含む場合もあれば、記録された音(例えば、ボイスメッセージ、音楽ファイル等)を含む場合もあれば、また、デバイス750上において動作するアプリケーションによって生成される音を含む場合もある。
コンピューティングデバイス750は、図に示すように、多くの異なる形態により実装されてよい。例えば、それは、携帯電話780として実装されてもよい。さらに、それは、スマートフォン782、個人用情報端末、又は他の同様のモバイルデバイスの一部として実装されてもよい。
本明細書に記載されたシステムおよび技術の様々な実施形態は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現することができる。これらの様々な実施形態は、データおよび命令を受信し、かつデータおよび命令を記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスに送信するように結合された少なくとも1つのプログラム可能なプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実施を含むことができる。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られている)は、プログラム可能なプロセッサ用のマシン命令を含み、高度な手続き型および/またはオブジェクト指向プログラミング言語および/またはアセンブリ言語/機械語で実施することができる。本明細書で使用される「機械可読媒体」という用語は、機械可読信号として機械命令を受信する機械可読媒体を含むプログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意のコンピュータプログラム製品、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
使用者との対話を提供するために、本明細書に記載されたシステムおよび技術は、情報を使用者に表示するためのディスプレイデバイス(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、使用者がそれによって入力をコンピュータに提供できるキーボード及びポインティングデバイス(例えば、マウス又はトラックボール)と、を有するコンピュータ上において実装されてもよい。他の種類のデバイスもまた、使用者との対話を提供するために使用されてもよく、例えば、使用者に提供されるフィードバックは、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触知フィードバック)であってよく、使用者からの入力は、音響入力、音声入力、又は触知入力を含む任意の形態により受信されてよい。
本明細書に記載されたシステムおよび技術は、バックエンド構成要素(例えば、データサーバとして)を含むコンピューティングシステム、ミドルウェア構成要素(例えば、アプリケーションサーバ)を含むコンピューティングシステム、フロントエンド構成要素(例えば、ユーザが本明細書に記載されたシステムおよび技術の実施形態と対話可能なグラフィカルユーザインタフェース又はウェブブラウザを有するクライアントコンピュータ)を含むコンピューティングシステム、又はそのようなバックエンド構成要素、ミドルウェア構成要素、若しくはフロントエンド構成要素の任意の組み合わせにより実装される場合がある。システムの構成要素は、デジタルデータ通信の任意の形態又は媒体(例えば、通信ネットワーク)によって相互接続されてよい。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびインターネットを含む。
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に、互いに遠隔であり、典型的には、通信ネットワークを介してインタラクトする。クライアントとサーバとの関係は、個々のコンピュータ上で動作し、かつ互いにクライアント−サーバ関係を有するコンピュータプログラムにより生じる。
いくつかの実施形態について説明した。それにもかかわらず、本発明の技術思想および範囲から逸脱することなく様々な変更がなされ得ることが理解されるであろう。
さらに、図面に記載された論理フローは、望ましい結果を達成するために示された特定の順序または逐次的な順序を必要としない。さらに、記載されたフローから他のステップを設けてもよく、またステップを省略してもよく、他の構成を記載されたシステムに追加したり、システムから削除したりしてもよい。従って、他の実施態様も以下の特許請求の範囲内にある。
さらに、図面に記載された論理フローは、望ましい結果を達成するために示された特定の順序または逐次的な順序を必要としない。さらに、記載されたフローから他のステップを設けてもよく、またステップを省略してもよく、他の構成を記載されたシステムに追加したり、システムから削除したりしてもよい。従って、他の実施態様も以下の特許請求の範囲内にある。
さらなる実施形態は、以下の実施例に要約される。
実施例1: コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、
非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、
リンクが選択されたという標示を受信するステップと、
リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップと、
割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、
割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップと
を含むコンピュータが実施する方法。
実施例1: コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、
非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、
リンクが選択されたという標示を受信するステップと、
リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップと、
割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、
割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップと
を含むコンピュータが実施する方法。
実施例2: コンピューティングデバイスはモバイルコンピューティングデバイスである、実施例1に記載のコンピュータが実施する方法。
実施例3: ウェブコンテンツへのリンクを表示するのに応答して、
ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信するステップと、
プリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップと
をさらに含む実施例1または2に記載のコンピュータが実施する方法。
実施例3: ウェブコンテンツへのリンクを表示するのに応答して、
ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信するステップと、
プリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップと
をさらに含む実施例1または2に記載のコンピュータが実施する方法。
実施例4: プリインテント要求は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含む、実施例3に記載のコンピュータが実施する方法。
実施例5: 少なくとも1つのカスタマイズパラメータは、
メニュー項目および該メニュー項目に関連した対応する動作と、
非ブラウザアプリケーションに対応するアイコンと、
ボタンおよび該ボタンに関連した対応する動作と、
ユーザインタフェースに対応する色と、
割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションと
のうちの1つまたは複数を含む、実施例4に記載のコンピュータが実施する方法。
実施例5: 少なくとも1つのカスタマイズパラメータは、
メニュー項目および該メニュー項目に関連した対応する動作と、
非ブラウザアプリケーションに対応するアイコンと、
ボタンおよび該ボタンに関連した対応する動作と、
ユーザインタフェースに対応する色と、
割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションと
のうちの1つまたは複数を含む、実施例4に記載のコンピュータが実施する方法。
実施例6: ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、
ブラウザアプリケーションを起動することと、
ブラウザアプリケーションのネイティブライブラリをロードすることと、
URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、
DNSルックアップに対応するサーバに接続することと、
サーバからウェブコンテンツをダウンロードすることと、
ダウンロードされたウェブコンテンツをレンダリングすることと
のうちの1つまたは複数を含む、実施例3乃至5のうちの1つに記載のコンピュータが実施する方法。
ブラウザアプリケーションを起動することと、
ブラウザアプリケーションのネイティブライブラリをロードすることと、
URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、
DNSルックアップに対応するサーバに接続することと、
サーバからウェブコンテンツをダウンロードすることと、
ダウンロードされたウェブコンテンツをレンダリングすることと
のうちの1つまたは複数を含む、実施例3乃至5のうちの1つに記載のコンピュータが実施する方法。
実施例7: リンクが選択されたという標示は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含む、実施例1乃至6のうちの1つに記載のコンピュータが実施する方法。
実施例8: 非ブラウザアプリケーションおよび割り当てられたブラウザタブは、コンピューティングデバイスにより別個の処理として実行される、実施例1乃至7のうちの1つに記載のコンピュータが実施する方法。
実施例9: 割り当てられたブラウザタブは、
ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、
非ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、
ブラウザアプリケーションにより定義される少なくとも1つのボタンと、
非ブラウザアプリケーションにより定義される少なくとも1つのボタンと
を含む、実施例1乃至8のうちの1つに記載のコンピュータが実施する方法。
ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、
非ブラウザアプリケーションにより定義される少なくとも1つのメニュー項目と、
ブラウザアプリケーションにより定義される少なくとも1つのボタンと、
非ブラウザアプリケーションにより定義される少なくとも1つのボタンと
を含む、実施例1乃至8のうちの1つに記載のコンピュータが実施する方法。
実施例10: コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、
非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、
ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求をブラウザアプリケーションに送信するステップと、
プリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップと、
リンクの選択を示す信号を受信するステップと、
信号を受信するのに応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップであって、プリインテント要求が、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータをさらに含むものであるステップと、
少なくとも1つのカスタマイズパラメータに従って、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、
割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップと
を含むコンピュータが実施する方法。
非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、
ウェブコンテンツへのリンクを表示するのに応答して、ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求をブラウザアプリケーションに送信するステップと、
プリインテント要求に応答して、ウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行するステップと、
リンクの選択を示す信号を受信するステップと、
信号を受信するのに応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てるステップであって、プリインテント要求が、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータをさらに含むものであるステップと、
少なくとも1つのカスタマイズパラメータに従って、割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、
割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示するステップと
を含むコンピュータが実施する方法。
実施例11: 少なくとも1つのカスタマイズパラメータは、
メニュー項目および該メニュー項目に関連した対応する動作と、
アイコンと、
ボタンおよび該ボタンに関連した対応する動作と、
ユーザインタフェースに対応する色と、
割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションと
のうちの1つまたは複数を含む、実施例10に記載のコンピュータが実施する方法。
メニュー項目および該メニュー項目に関連した対応する動作と、
アイコンと、
ボタンおよび該ボタンに関連した対応する動作と、
ユーザインタフェースに対応する色と、
割り当てられたブラウザタブをユーザインタフェース内で表示するために使用されるアニメーションと
のうちの1つまたは複数を含む、実施例10に記載のコンピュータが実施する方法。
実施例12: ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、
ブラウザアプリケーションを起動することと、
ブラウザアプリケーションのネイティブライブラリをロードすることと、
URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、
DNSルックアップに対応するサーバに接続することと、
サーバからウェブコンテンツをダウンロードすることと、
ウェブコンテンツをレンダリングすることと
のうちの1つまたは複数を含む、実施例10または11に記載のコンピュータが実施する方法。
ブラウザアプリケーションを起動することと、
ブラウザアプリケーションのネイティブライブラリをロードすることと、
URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、
DNSルックアップに対応するサーバに接続することと、
サーバからウェブコンテンツをダウンロードすることと、
ウェブコンテンツをレンダリングすることと
のうちの1つまたは複数を含む、実施例10または11に記載のコンピュータが実施する方法。
実施例13: 非ブラウザアプリケーションおよび割り当てられたブラウザタブは、コンピューティングデバイスにより別個の処理として実行される、実施例10乃至12のうちの1つに記載のコンピュータが実施する方法。
実施例14: 割り当てられたブラウザタブにURLを表示することをさらに含む実施例10乃至13のうちの1つに記載のコンピュータが実施する方法。
実施例15: 割り当てられたブラウザタブに表示されたウェブコンテンツに対応するセキュアソケットレイヤ(SSL)の状態を表示することをさらに含む実施例10乃至14のうちの1つに記載のコンピュータが実施する方法。
実施例15: 割り当てられたブラウザタブに表示されたウェブコンテンツに対応するセキュアソケットレイヤ(SSL)の状態を表示することをさらに含む実施例10乃至14のうちの1つに記載のコンピュータが実施する方法。
実施例16: 割り当てられたブラウザタブは、ブラウザアプリケーションの少なくとも1つのリソースにアクセスする、実施例10乃至15のうちの1つに記載のコンピュータが実施する方法。
実施例17: ブラウザアプリケーションの少なくとも1つのリソースは、
電子決済サービスと、
言語翻訳サービスと、
履歴閲覧と、
オートフィルデータの作成と、
パスワードボールトと
のうちの1つまたは複数を含む、実施例16に記載のコンピュータが実施する方法。
電子決済サービスと、
言語翻訳サービスと、
履歴閲覧と、
オートフィルデータの作成と、
パスワードボールトと
のうちの1つまたは複数を含む、実施例16に記載のコンピュータが実施する方法。
実施例18: プリインテント要求に応答してウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行するステップは、非ブラウザアプリケーションをコンピューティングデバイスのフォアグラウンド処理として実行しながら、コンピューティングデバイスのバックグラウンドブラウザ処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行することを含む、実施例10乃至17のうちの1つに記載のコンピュータが実施する方法。
実施例19: 非一時的なコンピュータ可読媒体上に記憶された命令を有する非一時的なコンピュータ可読媒体であって、命令は、コンピューティングデバイスの少なくとも1つのプロセッサにより実行されたときに、
非ブラウザアプリケーションを実行することと、
非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示することと、
リンクが選択されたという標示を受信することと、
リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てることと、
割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示することと、
割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示することと
をコンピューティングデバイスに行わせる、非一時的なコンピュータ可読媒体。
非ブラウザアプリケーションを実行することと、
非ブラウザアプリケーションによりコンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示することと、
リンクが選択されたという標示を受信することと、
リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを非ブラウザアプリケーションに割り当てることと、
割り当てられたブラウザタブを非ブラウザアプリケーションのユーザインタフェース内で表示することと、
割り当てられたブラウザタブによりユーザインタフェース内でウェブコンテンツを表示することと
をコンピューティングデバイスに行わせる、非一時的なコンピュータ可読媒体。
実施例20: 命令は、少なくとも1つのプロセッサにより実行されたときに、ウェブコンテンツへのリンクを表示するのに応答して、
ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信することと、
プリインテント要求に応答して、バックグラウンド処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行することと
をコンピューティングデバイスに行わせる、実施例19に記載の非一時的なコンピュータ可読媒体。
ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を非ブラウザアプリケーションによりブラウザアプリケーションに送信することと、
プリインテント要求に応答して、バックグラウンド処理においてウェブコンテンツを表示するのに対応する少なくとも1つの動作をブラウザアプリケーションにより実行することと
をコンピューティングデバイスに行わせる、実施例19に記載の非一時的なコンピュータ可読媒体。
実施例21: コンピュータが実施する方法であって、該方法は、
第1のタイプのコンテンツに対する要求を非ブラウザアプリケーションから受信するステップと、
ブラウザアプリケーション用のユーザインタフェース要素を非ブラウザアプリケーションに提供するステップであって、非ブラウザアプリケーションが非ブラウザアプリケーション用に専ら作成された異なる第2のタイプのコンテンツを表示するものであるステップと、
非ブラウザアプリケーションのユーザインタフェース用のユーザインタフェース要素を変更して、非ブラウザアプリケーションに対して第1のタイプのコンテンツを表示するステップとを含む。
第1のタイプのコンテンツに対する要求を非ブラウザアプリケーションから受信するステップと、
ブラウザアプリケーション用のユーザインタフェース要素を非ブラウザアプリケーションに提供するステップであって、非ブラウザアプリケーションが非ブラウザアプリケーション用に専ら作成された異なる第2のタイプのコンテンツを表示するものであるステップと、
非ブラウザアプリケーションのユーザインタフェース用のユーザインタフェース要素を変更して、非ブラウザアプリケーションに対して第1のタイプのコンテンツを表示するステップとを含む。
実施例22: 第1のタイプのコンテンツはウェブコンテンツを含む、実施例21に記載のコンピュータが実施する方法。
実施例23: ユーザインタフェース要素はブラウザタブを含む、実施例21または22に記載のコンピュータが実施する方法。
実施例23: ユーザインタフェース要素はブラウザタブを含む、実施例21または22に記載のコンピュータが実施する方法。
実施例24: ユーザインタフェース要素の変更は、少なくとも1つのカスタマイズパラメータをユーザインタフェース要素に適用するステップを含む、実施例21乃至23のうちの1つに記載のコンピュータが実施する方法。
Claims (22)
- コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、
前記非ブラウザアプリケーションにより前記コンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、
前記リンクが選択されたという標示を受信するステップと、
前記リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを前記非ブラウザアプリケーションに割り当てるステップであって、割り当てられたブラウザタブが
第1のメニュー項目および前記非ブラウザアプリケーションの対応する動作と、
第2のメニューおよび前記ブラウザアプリケーションの関連する動作とを含むステップと、
前記割り当てられたブラウザタブを前記非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、
前記割り当てられたブラウザタブにより前記ユーザインタフェース内で前記ウェブコンテンツを表示するステップと
を含むコンピュータが実施する方法。 - 前記コンピューティングデバイスはモバイルコンピューティングデバイスである、請求項1に記載のコンピュータが実施する方法。
- 前記ウェブコンテンツへのリンクを表示するのに応答して、
前記ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を前記非ブラウザアプリケーションにより前記ブラウザアプリケーションに送信するステップと、
前記プリインテント要求に応答して、前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作を前記ブラウザアプリケーションにより実行するステップと
をさらに含む請求項1または2に記載のコンピュータが実施する方法。 - 前記プリインテント要求は、前記割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含む、請求項3に記載のコンピュータが実施する方法。
- 前記少なくとも1つのカスタマイズパラメータは、
前記第1のメニュー項目および前記非ブラウザアプリケーションの対応する動作と、
前記非ブラウザアプリケーションに対応するアイコンと、
ボタンおよび該ボタンに関連した対応する動作と、
前記ユーザインタフェースに対応する色と、
前記割り当てられたブラウザタブを前記ユーザインタフェース内で表示するために使用されるアニメーションと
のうちの1つまたは複数を含む、請求項4に記載のコンピュータが実施する方法。 - 前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、
前記ブラウザアプリケーションのネイティブライブラリをロードすることと、
前記URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、
前記DNSルックアップに対応するサーバに接続することと、
前記サーバから前記ウェブコンテンツをダウンロードすることと、
ダウンロードされたウェブコンテンツをレンダリングすることと
のうちの1つまたは複数を含む、請求項3乃至5のいずれか1項に記載のコンピュータが実施する方法。 - 前記リンクが選択されたという標示は、前記割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータを含む、請求項1または2に記載のコンピュータが実施する方法。
- 前記非ブラウザアプリケーションおよび前記割り当てられたブラウザタブは、前記コンピューティングデバイスにより別個の処理として実行される、請求項1乃至7のいずれか1項に記載のコンピュータが実施する方法。
- 前記割り当てられたブラウザタブは、
前記ブラウザアプリケーションにより定義される少なくとも1つのボタンと、
前記非ブラウザアプリケーションにより定義される少なくとも1つのボタンと
を含む、請求項1乃至8のいずれか1項に記載のコンピュータが実施する方法。 - コンピューティングデバイス上で非ブラウザアプリケーションを実行するステップと、
前記非ブラウザアプリケーションにより前記コンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示するステップと、
前記ウェブコンテンツへのリンクを表示するのに応答して、前記ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求をブラウザアプリケーションに送信するステップと、
前記プリインテント要求に応答して、前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作を前記ブラウザアプリケーションにより実行するステップと、
前記リンクの選択を示す信号を受信するステップと、
前記信号を受信するのに応答して、前記ブラウザアプリケーションのタブを前記非ブラウザアプリケーションに割り当てるステップであって、前記プリインテント要求は、割り当てられたブラウザタブ用の少なくとも1つのカスタマイズパラメータをさらに含み、前記割り当てられたブラウザタブが
第1のメニュー項目および前記非ブラウザアプリケーションの対応する動作と、
第2のメニューおよび前記ブラウザアプリケーションの関連する動作とを含むステップと、
前記少なくとも1つのカスタマイズパラメータに従って、前記割り当てられたブラウザタブを前記非ブラウザアプリケーションのユーザインタフェース内で表示するステップと、
前記割り当てられたブラウザタブにより前記ユーザインタフェース内で前記ウェブコンテンツを表示するステップと
を含むコンピュータが実施する方法。 - 前記少なくとも1つのカスタマイズパラメータは、
前記第1のメニュー項目および前記非ブラウザアプリケーションの対応する動作と、
アイコンと、
ボタンおよび該ボタンに関連した対応する動作と、
前記ユーザインタフェースに対応する色と、
前記割り当てられたブラウザタブを前記ユーザインタフェース内で表示するために使用されるアニメーションと
のうちの1つまたは複数を含む、請求項10に記載のコンピュータが実施する方法。 - 前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作は、
前記ブラウザアプリケーションのネイティブライブラリをロードすることと、
前記URLに基づいてドメインネームシステム(DNS)ルックアップを実行することと、
前記DNSルックアップに対応するサーバに接続することと、
前記サーバから前記ウェブコンテンツをダウンロードすることと、
前記ウェブコンテンツをレンダリングすることと
のうちの1つまたは複数を含む、請求項10または11に記載のコンピュータが実施する方法。 - 前記非ブラウザアプリケーションおよび前記割り当てられたブラウザタブは、前記コンピューティングデバイスにより別個の処理として実行される、請求項10乃至12のいずれか1項に記載のコンピュータが実施する方法。
- 前記割り当てられたブラウザタブに前記URLを表示することをさらに含む請求項10乃至13のいずれか1項に記載のコンピュータが実施する方法。
- 前記割り当てられたブラウザタブに表示されたウェブコンテンツに対応するセキュアソケットレイヤ(SSL)の状態を表示することをさらに含む請求項10乃至14のいずれか1項に記載のコンピュータが実施する方法。
- 前記割り当てられたブラウザタブは、前記ブラウザアプリケーションの少なくとも1つのリソースにアクセスする、請求項10乃至15のいずれか1項に記載のコンピュータが実施する方法。
- 前記ブラウザアプリケーションの少なくとも1つのリソースは、
電子決済サービスと、
言語翻訳サービスと、
履歴閲覧と、
オートフィルデータの作成と、
パスワードボールトと
のうちの1つまたは複数を含む、請求項16に記載のコンピュータが実施する方法。 - 前記プリインテント要求に応答して前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行するステップは、前記非ブラウザアプリケーションを前記コンピューティングデバイスのフォアグラウンド処理として実行しながら、前記コンピューティングデバイスのバックグラウンドブラウザ処理において前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作を実行することを含む、請求項10乃至17のいずれか1項に記載のコンピュータが実施する方法。
- 非一時的なコンピュータ可読媒体上に記憶された命令を有する非一時的なコンピュータ可読媒体であって、前記命令は、コンピューティングデバイスの少なくとも1つのプロセッサにより実行されたときに、
非ブラウザアプリケーションを実行することと、
前記非ブラウザアプリケーションにより前記コンピューティングデバイスのディスプレイ上にウェブコンテンツへのリンクを表示することと、
前記リンクが選択されたという標示を受信することと、
前記リンクが選択されたという標示に応答して、ブラウザアプリケーションのタブを前記非ブラウザアプリケーションに割り当てることであって、割り当てられたブラウザタブが
第1のメニュー項目および前記非ブラウザアプリケーションの対応する動作と、
第2のメニュー項目および前記ブラウザアプリケーションの関連する動作とを含むことと、
前記割り当てられたブラウザタブを前記非ブラウザアプリケーションのユーザインタフェース内で表示することと、
前記割り当てられたブラウザタブにより前記ユーザインタフェース内で前記ウェブコンテンツを表示することと
を前記コンピューティングデバイスに行わせる、非一時的なコンピュータ可読媒体。 - 前記命令は、前記少なくとも1つのプロセッサにより実行されたときに、前記ウェブコンテンツへのリンクを表示するのに応答して、
前記ウェブコンテンツへのリンクに対応するユニフォームリソースロケータ(URL)を含んだプリインテント要求を前記非ブラウザアプリケーションにより前記ブラウザアプリケーションに送信することと、
前記プリインテント要求に応答して、バックグラウンド処理において前記ウェブコンテンツを表示するのに対応する少なくとも1つの動作を前記ブラウザアプリケーションにより実行することと
を前記コンピューティングデバイスに行わせる、請求項19に記載の非一時的なコンピュータ可読媒体。 - コンピュータが実施する方法であって、該方法は、
第1のタイプのコンテンツに対する要求を非ブラウザアプリケーションから受信するステップと、
ブラウザアプリケーション用のユーザインタフェース要素を前記非ブラウザアプリケーションに提供するステップであって、前記非ブラウザアプリケーションが前記非ブラウザアプリケーション用に専ら作成された異なる第2のタイプのコンテンツを表示するものであるステップと、
前記非ブラウザアプリケーションのユーザインタフェース用のユーザインタフェース要素を変更して、前記非ブラウザアプリケーションに対して前記第1のタイプのコンテンツを表示するステップと
を含み、前記第1のタイプのコンテンツはウェブコンテンツであり、前記ユーザインタフェース要素の変更は、
ブラウザアプリケーションのタブを前記非ブラウザアプリケーションに割り当てるステップであって、割り当てられたブラウザタブが
第1のメニュー項目および前記非ブラウザアプリケーションの対応する動作と、
第2のメニューおよび前記ブラウザアプリケーションの関連する動作とを含むステップと、
前記割り当てられたブラウザタブを用いて前記非ブラウザアプリケーションのユーザインタフェース内で前記ウェブコンテンツを表示するステップと
を含む、コンピュータが実施する方法。 - 前記ユーザインタフェース要素の変更は、前記割り当てられたブラウザタブに少なくとも1つのカスタマイズパラメータを適用するステップを含む、請求項21に記載のコンピュータが実施する方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/877,262 | 2015-10-07 | ||
US14/877,262 US10613713B2 (en) | 2015-10-07 | 2015-10-07 | Integration of content in non-browser applications |
PCT/US2016/053737 WO2017062203A1 (en) | 2015-10-07 | 2016-09-26 | Integration of content in non-browser applications |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020044077A Division JP6853397B2 (ja) | 2015-10-07 | 2020-03-13 | 非ブラウザアプリケーションにおけるコンテンツの統合 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2018531454A JP2018531454A (ja) | 2018-10-25 |
JP2018531454A6 true JP2018531454A6 (ja) | 2018-12-13 |
JP6677805B2 JP6677805B2 (ja) | 2020-04-08 |
Family
ID=58488305
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018516170A Active JP6677805B2 (ja) | 2015-10-07 | 2016-09-26 | 非ブラウザアプリケーションにおけるコンテンツの統合 |
JP2020044077A Active JP6853397B2 (ja) | 2015-10-07 | 2020-03-13 | 非ブラウザアプリケーションにおけるコンテンツの統合 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020044077A Active JP6853397B2 (ja) | 2015-10-07 | 2020-03-13 | 非ブラウザアプリケーションにおけるコンテンツの統合 |
Country Status (7)
Country | Link |
---|---|
US (3) | US10613713B2 (ja) |
EP (1) | EP3360032A4 (ja) |
JP (2) | JP6677805B2 (ja) |
KR (1) | KR102147714B1 (ja) |
CN (2) | CN108139852B (ja) |
MX (1) | MX2018004130A (ja) |
WO (1) | WO2017062203A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10432748B2 (en) | 2014-07-16 | 2019-10-01 | Tensera Networks Ltd. | Efficient content delivery over wireless networks using guaranteed prefetching at selected times-of-day |
US11095743B2 (en) * | 2014-07-16 | 2021-08-17 | Tensera Networks Ltd. | Optimized content-delivery network (CDN) for the wireless last mile |
US10613713B2 (en) | 2015-10-07 | 2020-04-07 | Google Llc | Integration of content in non-browser applications |
WO2017113757A1 (zh) * | 2015-12-31 | 2017-07-06 | 北京小鸟看看科技有限公司 | 一种环绕式界面布局方法、三维沉浸式环境下内容切换方法和列表切换方法 |
US11922187B2 (en) | 2018-03-05 | 2024-03-05 | Tensera Networks Ltd. | Robust application preloading with accurate user experience |
WO2019171237A1 (en) | 2018-03-05 | 2019-09-12 | Tensera Networks Ltd. | Application preloading in the presence of user actions |
US11010466B2 (en) * | 2018-09-04 | 2021-05-18 | International Business Machines Corporation | Keyboard injection of passwords |
EP3857431A1 (en) * | 2018-10-30 | 2021-08-04 | Google LLC | Automatic hyperlinking of documents |
US20220095071A1 (en) * | 2019-04-09 | 2022-03-24 | Hewlett-Packard Development Company, L.P. | Applying directionality to audio by encoding input data |
US11824956B2 (en) | 2019-07-30 | 2023-11-21 | Tensera Networks Ltd. | Pre-rendering of application user-interfaces in user devices using off-line pre-render mode |
JP7490472B2 (ja) * | 2020-07-06 | 2024-05-27 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
WO2022055538A1 (en) * | 2020-09-09 | 2022-03-17 | Google Llc | Pre-launching an application using interprocess communication |
CN116670646A (zh) | 2020-12-03 | 2023-08-29 | 腾赛拉网络有限公司 | 预加载具有现有任务的应用 |
US11789963B2 (en) * | 2021-03-18 | 2023-10-17 | Capital One Services, Llc | Systems and methods for presenting web application content |
KR102616188B1 (ko) * | 2021-06-29 | 2023-12-21 | 주식회사 페어리 | 네트워크 정보를 이용한 이용 서비스의 결제 수단 혜택 정보 출력 방법 및 그 장치 |
WO2023277568A1 (ko) * | 2021-06-29 | 2023-01-05 | 주식회사 페어리 | 사용자 단말 이용 서비스에 따른 결제 수단 혜택 정보 출력 방법 및 그 장치 |
US20230418441A1 (en) * | 2022-06-24 | 2023-12-28 | Microsoft Technology Licensing, Llc | Deferred decisions in web browser |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103594B1 (en) | 1994-09-02 | 2006-09-05 | Wolfe Mark A | System and method for information retrieval employing a preloading procedure |
JP3941253B2 (ja) | 1998-08-11 | 2007-07-04 | 富士ゼロックス株式会社 | ハイパーテキスト・システム及びハイパーテキストを扱う方法 |
US6414677B1 (en) * | 1998-09-14 | 2002-07-02 | Microsoft Corporation | Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and which visually groups proximally located objects |
US7756967B1 (en) | 1999-04-26 | 2010-07-13 | Mainstream Scientific, Llc | Apparatus and method of hosting internet content |
IL130972A0 (en) * | 1999-07-15 | 2001-01-28 | Hotbar Com Israel Ltd | Method for the dynamic improvement of internet browser appearance and connectivity |
US6529948B1 (en) * | 1999-08-31 | 2003-03-04 | Accenture Llp | Multi-object fetch component |
JP2003263255A (ja) | 2002-03-11 | 2003-09-19 | Fujitsu Ltd | 通信を行うためのプログラム |
JP2005266929A (ja) | 2004-03-16 | 2005-09-29 | Canon Inc | 情報処理方法及び装置 |
US7606821B2 (en) * | 2004-06-30 | 2009-10-20 | Ebay Inc. | Method and system for preventing fraudulent activities |
US7840911B2 (en) * | 2004-09-27 | 2010-11-23 | Scott Milener | Method and apparatus for enhanced browsing |
US7707242B2 (en) * | 2004-09-30 | 2010-04-27 | Bally Gaming, Inc. | Internet browser-based gaming system and method for providing browser operations to a non-browser enabled gaming network |
US20070244900A1 (en) * | 2005-02-22 | 2007-10-18 | Kevin Hopkins | Internet-based search system and method of use |
US8069215B2 (en) * | 2005-05-16 | 2011-11-29 | Cisco Technology, Inc. | Configurable downloading of content pointed to in electronic messages |
US8863013B2 (en) | 2008-04-01 | 2014-10-14 | International Business Machines Corporation | Generating a user defined page having representations of content in other pages |
US8745018B1 (en) | 2008-07-10 | 2014-06-03 | Google Inc. | Search application and web browser interaction |
US9197486B2 (en) | 2008-08-29 | 2015-11-24 | Google Inc. | Adaptive accelerated application startup |
JP2010128994A (ja) | 2008-11-28 | 2010-06-10 | Kyocera Mita Corp | 表示制御装置、画像形成装置、及び表示制御プログラム |
CN102483742B (zh) * | 2009-09-04 | 2016-06-22 | Iii控股2有限责任公司 | 用于管理因特网媒体内容的系统和方法 |
JP4941533B2 (ja) | 2009-09-30 | 2012-05-30 | ブラザー工業株式会社 | 情報閲覧システム、情報閲覧方法、情報閲覧端末 |
US9715332B1 (en) * | 2010-08-26 | 2017-07-25 | Cypress Lake Software, Inc. | Methods, systems, and computer program products for navigating between visual components |
US20110307808A1 (en) | 2010-06-10 | 2011-12-15 | Microsoft Corporation | Rendering incompatible content within a user interface |
US20120066634A1 (en) * | 2010-09-14 | 2012-03-15 | Microsoft Corporation | Branded browser frame |
US20120239504A1 (en) * | 2011-03-15 | 2012-09-20 | Microsoft Corporation | Virtual Shopping Assistance |
US8881250B2 (en) * | 2011-06-17 | 2014-11-04 | Ebay Inc. | Passporting credentials between a mobile app and a web browser |
US9146909B2 (en) * | 2011-07-27 | 2015-09-29 | Qualcomm Incorporated | Web browsing enhanced by cloud computing |
US20130073399A1 (en) * | 2011-09-15 | 2013-03-21 | Admotion Srl | Sidetabs |
US8509816B2 (en) * | 2011-11-11 | 2013-08-13 | International Business Machines Corporation | Data pre-fetching based on user demographics |
US9294582B2 (en) * | 2011-12-16 | 2016-03-22 | Microsoft Technology Licensing, Llc | Application-driven CDN pre-caching |
US9325806B2 (en) * | 2012-02-24 | 2016-04-26 | Qualcomm Incorporated | Cooperative loading of webpages based on shared meta information |
US9449094B2 (en) * | 2012-07-13 | 2016-09-20 | Google Inc. | Navigating among content items in a set |
US8656265B1 (en) | 2012-09-11 | 2014-02-18 | Google Inc. | Low-latency transition into embedded web view |
CN103777967B (zh) | 2012-10-17 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 页面返回方法、页面生成方法和装置 |
US20150207854A1 (en) | 2012-10-29 | 2015-07-23 | Google Inc. | External application request |
CN103473047B (zh) * | 2013-08-29 | 2017-03-29 | 贝壳网际(北京)安全技术有限公司 | 浏览器中标签页背景的管理方法、装置和客户端 |
JP5963815B2 (ja) | 2013-11-08 | 2016-08-03 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置および情報処理方法 |
EP3084640A1 (en) * | 2013-12-22 | 2016-10-26 | Interdigital Patent Holdings, Inc. | Web application acceleration with personalized cache or prerendering |
CN104063415B (zh) * | 2014-02-27 | 2018-07-10 | 优视科技有限公司 | 显示网页自定义内容的方法及系统 |
US9411947B2 (en) * | 2014-05-30 | 2016-08-09 | Apple Inc. | Method for managing security of a data processing system with configurable security restrictions |
US9959506B1 (en) * | 2014-06-17 | 2018-05-01 | Amazon Technologies, Inc. | Predictive content retrieval using device movements |
US20160117611A1 (en) * | 2014-10-09 | 2016-04-28 | Wrap Media, LLC | Creating and delivering a wrapped package of cards as a digital companion accompanying the purchase of ticket(s) for an event |
JP5931243B1 (ja) * | 2015-03-20 | 2016-06-08 | ヤフー株式会社 | 情報処理装置、端末装置、情報処理方法、及び情報処理プログラム |
US10613713B2 (en) | 2015-10-07 | 2020-04-07 | Google Llc | Integration of content in non-browser applications |
-
2015
- 2015-10-07 US US14/877,262 patent/US10613713B2/en active Active
-
2016
- 2016-09-26 EP EP16854085.4A patent/EP3360032A4/en active Pending
- 2016-09-26 CN CN201680056854.9A patent/CN108139852B/zh active Active
- 2016-09-26 WO PCT/US2016/053737 patent/WO2017062203A1/en active Application Filing
- 2016-09-26 CN CN202111094116.2A patent/CN113885762A/zh active Pending
- 2016-09-26 KR KR1020187009907A patent/KR102147714B1/ko active IP Right Grant
- 2016-09-26 JP JP2018516170A patent/JP6677805B2/ja active Active
- 2016-09-26 MX MX2018004130A patent/MX2018004130A/es unknown
-
2020
- 2020-03-13 JP JP2020044077A patent/JP6853397B2/ja active Active
- 2020-03-23 US US16/827,197 patent/US11151303B2/en active Active
-
2021
- 2021-09-17 US US17/447,992 patent/US11995393B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6853397B2 (ja) | 非ブラウザアプリケーションにおけるコンテンツの統合 | |
JP2018531454A6 (ja) | 非ブラウザアプリケーションにおけるコンテンツの統合 | |
US11778430B2 (en) | Layers in messaging applications | |
US10255255B2 (en) | Customization of mobile applications using web-based technology | |
CN110795195B (zh) | 一种网页渲染方法、装置、电子设备及存储介质 | |
KR102298602B1 (ko) | 확장가능한 애플리케이션 표시 | |
US10303526B2 (en) | Device specific handling of user interface components | |
US20150201008A1 (en) | Shell Integration on a Mobile Device for an Application Executing Remotely on a Server | |
US20130080930A1 (en) | Modifying running of plug-in on hidden tab of browser | |
US20170054792A1 (en) | Systems and methods for deploying applications | |
US9047469B2 (en) | Modes for applications | |
US10637804B2 (en) | User terminal apparatus, communication system, and method of controlling user terminal apparatus which support a messenger service with additional functionality | |
WO2019007327A1 (zh) | 视频播放方法、装置、计算设备以及存储介质 | |
US10592063B1 (en) | Controlling actions for browser extensions | |
CN112088362A (zh) | 针对已保存站点的通知更新 | |
US9342386B1 (en) | Messaging channel for web pages, extensions, and applications to communicate | |
WO2022265775A1 (en) | Service-driven widgets with multiple forms of authentication displayed in a widgets board | |
US9811333B2 (en) | Using a version-specific resource catalog for resource management |