JP6363738B2 - ネイティブアプリケーションに関する検索結果 - Google Patents

ネイティブアプリケーションに関する検索結果 Download PDF

Info

Publication number
JP6363738B2
JP6363738B2 JP2016574943A JP2016574943A JP6363738B2 JP 6363738 B2 JP6363738 B2 JP 6363738B2 JP 2016574943 A JP2016574943 A JP 2016574943A JP 2016574943 A JP2016574943 A JP 2016574943A JP 6363738 B2 JP6363738 B2 JP 6363738B2
Authority
JP
Japan
Prior art keywords
application
native
page
name
data
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
Application number
JP2016574943A
Other languages
English (en)
Other versions
JP2017527006A (ja
Inventor
ドン・ハ・イ
ジェヒョン・ヨム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2017527006A publication Critical patent/JP2017527006A/ja
Application granted granted Critical
Publication of JP6363738B2 publication Critical patent/JP6363738B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

優先権の主張
本出願は、2012年6月24日出願の米国特許出願第62/016,645号に対する米国特許法第119条(e)の優先権を主張し、その内容全体を参照により本明細書に組み込む。
本開示は、アプリのディープリンキングに関し、より詳細には、簡潔で正確なディープリンク識別文字列を自動的に生成し、提供するディープリンク処理のためのシステムおよび方法に関する。
インターネットにより、多種多様な情報へのアクセスが可能となる。たとえば、デジタルイメージファイル、ビデオおよび/またはオーディオファイル、ならびに、特定の主題または特定のニュース記事に対するウェブページリソースが、インターネットを介してアクセス可能である。ウェブページリソースに関して、これらのリソースの多くは、銀行業務、ホテル予約業務、ショッピングなど特定の機能の実行を容易にする、または、オンライン百科事典、映画データベースなど構造化情報を提供するように設計されている。
様々な検索エンジンが、インターネットを介してアクセス可能な特定のリソースを識別するために利用可能である。これらの検索エンジンは、様々なウェブページリソースをクローリングし、インデックス付けを行う。次いで、検索エンジンは、そのインデックスを使用して、どのリソースが検索クエリに対して最も敏感か判定して、クエリに応答してリソースにリンクする検索結果を提供する。
タブレットコンピュータおよびスマートフォンの出現とともに、ウェブページリソースの使用によって容易になった同一の機能の性能を促進するネイティブアプリケーションが、現在、大量に提供されつつある。しかし、検索エンジンは、ネイティブアプリケーション環境内からの情報にクローリング、またはインデックス付けを行うことはしない。代わりに、そのネイティブアプリケーションに関するメタデータがインデックス付けされ、次いで、検索クエリを処理するときにアクセスされる。
一般に、本明細書に記載の本主題の革新的な一態様は、ネイティブアプリケーションに関するアプリケーションパッケージファイルにアクセスするアクションと、各ネイティブアプリケーションに対して、アプリケーションパッケージファイルから、ネイティブアプリケーションのアプリケーション名を決定するアクションと、データ処理装置においてネイティブアプリケーションのアプリケーションページにアクセスし、かつ、各アプリケーションページに対して、アプリケーションページのコンテンツを記述するアプリケーションページデータ、アプリケーションページのアプリケーションページ名、ユーザデバイスがアプリケーションページを表示するときユーザデバイスがアプリケーションページ上に表示するテキストを含むアプリケーションページデータによって記述されるコンテンツを生成するアクションと、ネイティブアプリケーションに関するアプリケーションページデータおよびアプリケーションアイコンに検索エンジンによって検索可能なインデックスでインデックス付けを行うアクションと、を含む方法において具体化することができる。この態様の他の実施形態は、コンピュータの記憶デバイスに符号化された方法のアクションを実行するように構成された、対応するシステム、装置およびコンピュータプログラムを含む。
本明細書に記載の本主題の特別な実施形態は、以下の利点のうちの1つまたは複数を実現するように実装され得る。ネイティブアプリケーションページのアプリケーションページインデックス中に記憶された情報は、実際のアプリケーションページデータおよびアプリケーションパッケージから取り出され、これにより、ネイティブアプリケーションを記述するものの、他の点ではネイティブアプリケーションパッケージの部分ではない他のデータによって提供されるものよりも、より包括的なアプリケーションコンテンツの記述を提供することが可能となる。
本明細書に記載の本主題の1つまたは複数の実施形態の詳細は、添付の図面および以下の説明に述べる。本主題の他の機能、態様および利点は、記述、図面および特許請求の範囲から明らかとなろう。
ネイティブアプリケーションに関するアプリケーションページが、ネイティブアプリケーション検索結果によって、インデックス付けされ、検索され、かつ、識別される環境の一例のブロック図である。 ネイティブアプリケーションのアプリケーションページデータにインデックス付けを行うためのプロセスの一例の流れ図である。 ネイティブアプリケーション検索結果を生成するためのプロセスの一例の流れ図である。 ネイティブアプリケーション検索結果の図である。
いくつかの図面において同様の参照番号および名称は同様の要素を示す。
インターネット検索エンジンは、インターネット上に存在するインデックス付きのウェブページの一群を検索する機能を提供する。典型的な検索エンジンは、クエリに応答して、しばしばユーザが対象の結果に迅速にナビゲートすることが可能なハイパーリンクを有する、クエリに関連する結果リストを提供する。ユーザはリンク付けられた結果を選択することができ、それによりタレント、製品、ビジネス等についてのコンテンツを含むウェブページを提供される。リンクはサイトの「ホームページ」(たとえば、レシピなどクッキング情報を集約したサイトに対するウエルカムおよび検索ページ)に対するもの、または、サイトのホームページからナビゲートしたときユーザがアクセスすることができる「コンテンツページ」(たとえば、クッキング情報サイトにおける特定のレシピ)とすることができる。コンテンツページへのリンクは、ホームページへのリンクに対する対語として、「ディープリンク」と呼ばれる(これらのコンテンツページをクローリングし、インデックス付けし、サービスするプロセスは同様に「ディープリンキング」と呼ばれる)。
ページへナビゲートする機能、ならびに、そのページが提供するコンテンツのアクセス可能性および機能性は、公開されたページの性質によって部分的に規定される。たとえば、あるページは、クローリングおよび検索が困難または不可能な動的コンテンツ(たとえば、非同期ジャバスクリプトおよびXML(AJAX)、Adobe Flash等)を含むことができる。その結果、これらのページは、検索しても利用することはできないことがあり、ユーザはブックマークなどでページを保存することができないことがあり、また、ブラウザ制御によるページナビゲーション(たとえば、履歴を進むおよび戻る)は意図通りには動作しないことがある。
ある実例において、文書の検索は、「アプリの範囲内において」またはアプリ(すなわち、ネイティブアプリケーション)に特有のコンテンツに対して現在実行することが可能である。たとえば、ユニフォームリソースアイデンティファイア(URI)を処理するように適切に構成されているとき、ブラウザは、ネイティブアプリケーションを立ち上げ、ネイティブアプリケーション内において、ユーザに特定のコンテンツページを提供することができる。
典型的な検索エンジンは、ユーザが個々の検索結果の妥当性を判断する際の助けとなる識別テキストの文字列を構築することができる。これはユーザに、コンテンツにリンクされたものは何についてのものかを示すために、太字体、下線付き、および、しばしば強調表示色で提供されることが多いテキストである。これはアンカーテキストに似ているが、アンカーテキストという用語はしばしば、ユーザがリンクに割り当てたテキストに関連付けられる一方、検索結果テキストは、ターゲットページのコンテンツに対して何らかの指標を提供するために、検索エンジンによって識別され、収集されたテキストである。ある実装形態において、検索エンジンは、文書タイトル、検索文字列を含むフレーズ、および、検索結果文書からの他の手掛かりを使用して、検索結果に対する識別文字列を生成することができる。
ネイティブアプリケーションディープリンキングについての1つの問題は、リンクのターゲットは、ブラウザがリンクに対する識別文字列を生成するのをできるようにするテキストまたは他のリソースを含まないことがあるということである。別の問題は、識別文字列が、それ自体、そこからリンクを得る(かつ、リンクを開くために必要な)ネイティブアプリケーションに関する手掛かりを提供しないことがあるということである。その結果、ネイティブアプリケーションディープリンキング検索結果に対する、有益な検索結果ページを構築することが可能ではなくなってきた。
検索結果に対する識別文字列を作成しようとするいくつかの試みは、アプリケーションマーケットからのメタデータを使用してきた。しかし、こうした方法で得られた文字列は、長すぎることが多く、繰り返し、および/または、無関係の細部を含み、十分には明快ではなく、本来なら使用できない。
システムはネイティブアプリケーション検索結果を提供する。本明細書で使用される場合、ネイティブアプリケーションは、ユーザデバイス上のブラウザアプリケーションとは独立して動作する。ネイティブアプリケーションは、ブラウザ内ではなく、特別なユーザデバイスのオペレーティングシステムおよびマシンのファームウェア上で実行するように特別に設計されたアプリケーションである。したがって、ネイティブアプリケーションは、ブラウザ、ブラウザベースのアプリケーション、およびブラウザのレンダリングリソースとは異なる。後者は、インスタンス生成またはレンダリングされるたびごとに、ウェブサーバからダウンロードされたすべてまたは少なくとも一部の要素または命令が必要である。さらに、ブラウザベースのアプリケーションおよびブラウザのレンダリングリソースは、ブラウザ内のすべてのウェブ対応の携帯デバイスによって処理することができ、したがって、ネイティブアプリケーションのようにオペレーティングシステム固有のものではない。さらに、本明細書で使用される場合、ネイティブアプリケーション検索結果は、特定のネイティブアプリケーションに対応する検索結果であり、したがって、選択されるとき、特定のネイティブアプリケーションを呼び出す。
ネイティブアプリケーションに関するデータにインデックス付けを行うために、いくつかの実装形態において、システムは、ユーザデバイス上で動作するオペレーティングシステムをエミュレートするバーチャルマシンをインスタンス生成する。バーチャルマシン内で、システムは、そのオペレーティングシステムに特有のネイティブアプリケーションをインスタンス生成する。ネイティブアプリケーションは、ネイティブアプリケーション内でユーザデバイス上に表示するためのアプリケーションページを生成し、ユーザデバイス上でブラウザアプリケーションとは無関係に動作する。
システムは、バーチャルマシン内で、ネイティブアプリケーションのアプリケーションページにアクセスする。システムは、各アプリケーションページおよび後続の各アプリケーションページに関する様々なメニューおよび選択オプションを探索する、自動的なプロセスによってページにアクセスすることができる。あるいは、システムは、ネイティブアプリケーションの発行者によって指定されたページにアクセスすることができる。
各アプリケーションページに対して、システムは、アプリケーションページのコンテンツおよびアプリケーションページのタイトルを記述するアプリケーションページデータを生成する。アプリケーションページデータによって記述されるコンテンツは、たとえば、ユーザデバイスがアプリケーションページを表示するとき、ユーザデバイスがアプリケーションページ上に表示する、タイトルテキストを含むテキスト、ネイティブアプリケーション内にレンダリングされるであろうアプリケーションページの画像を定める画像データ、アプリケーションページの様々なリストおよびメニューを記述するリスティング/メニューデータ、および、アプリケーションページの他の機能を記述する他のデータを含むことができる。
システムはまた、ネイティブアプリケーションに関するアプリケーションパッケージにアクセスする。いくつかの実装形態において、アプリケーションパッケージは、ネイティブアプリケーションのソフトウェアおよびミドルウェアをデバイスに配布し、インストールするのに使用されるファイルの集合体である。システムは、アプリケーションパッケージファイルを解凍および解釈し、ネイティブアプリケーションに関するアプリケーションアイコンを識別し、各アプリケーションアイコンに対して、アプリケーションがインストールされたとき、アプリケーションアイコンの下に現れるテキスト文字列を識別する。一部のアプリケーションでは、ロケール(国および言語)に基づくなど多くの文字列が存在し、各文字列は、対応する荷物(luggage)にインデックス付けされ、かつ、関連付けられ得る。テキスト文字列によって定義される名前を、本明細書では「アプリケーション表示名」と呼ぶ。アプリケーションアイコン、テキスト文字列、および、アプリケーションパッケージから収集された他のデータも、アプリケーションページデータの一部としてインデックス付けされる。
ネイティブアプリケーション検索結果の生成は、「ページタイトル」と「アプリケーション表示名」の結合された文字列としての結果タイトルの作成を含むことができる。アプリケーションアイコンはまた、ネイティブアプリケーション検索結果のためのタイトルに付加することができる。順序およびコンテンツの変更例も使用することができる。たとえば、
アイコン + [ページタイトル] + " - " + [アプリ表示名];または、
2行サイズのアイコン + [ページタイトル] + " : " + [アプリ表示名]、検索日、動的コンテンツのキャプチャ日;
などである。
要するに、本開示は、各検索結果が、タイトル(アプリ識別子)、テキストの抜粋(ページタイトル)、およびコンテンツへのリンクを含む識別文字列によって簡潔かつ正確に表示される、ネイティブアプリケーションディープリンク検索に対する検索結果を入手するための方法を提供する。関連するアプリに対するアイコンなどさらなる詳細も提供され得る。
アプリケーションページデータにインデックス付けを行うシステムの動作、および、アプリケーションページに対する検索結果の処理を、以下でより詳細に説明する。
図1は、ネイティブアプリケーションに関するアプリケーションページが、インデックス付けされ、検索される環境100の一例のブロック図である。インターネットなどのコンピュータネットワーク102が、リソース発行者ウェブサイト104、アプリケーション発行者106、ユーザデバイス108および検索エンジン110を接続している。
リソース発行者ウェブサイト104は、ドメインに関連付けられ、1つまたは複数の場所の1つまたは複数のサーバによってホスティングされた1つまたは複数のウェブリソース105を含む。一般に、リソース発行者ウェブサイトは、テキスト、画像、マルチメディアコンテンツおよびプログラミングエレメントを含むことができる、ハイパーテキストマークアップ言語(HTML)によってフォーマットされたウェブページの集合体である。各ウェブサイト104は、ウェブサイト104を制御し、管理し、かつ/または所有するエンティティであるコンテンツ発行者によって保守される。
ウェブページリソースは、発行者ウェブサイト104によってネットワーク102を介して提供され得る任意のデータであり、リソースのアドレス、たとえばユニフォームリソースロケータ(URL)を有する。ウェブリソースには2〜3例を挙げると、HTMLページ、画像ファイル、ビデオファイル、音声ファイルおよびフィードソースなどがあり得る。リソースは、埋め込み情報、たとえばメタ情報およびハイパーリンク、および/または埋め込み命令、たとえばクライアントサイドスクリプトを含むことができる。
アプリケーション発行者ウェブサイト106はまた、1つまたは複数のウェブリソース105を含み、またネイティブアプリケーション107を提供することができる。上述のように、ネイティブアプリケーション107は、特定のユーザデバイスのオペレーティングシステムおよびマシンのファームウェア上で実行するように特に設計されたアプリケーションである。
本明細書で使用される場合、「アプリケーションページ」は、ネイティブアプリケーション内の特別の表示環境であり、その中にテキスト、画像などのコンテンツが表示される。アプリケーションページは、特定のネイティブアプリケーションに特有であり、ネイティブアプリケーションは、ユーザデバイス108の特別なオペレーティングシステムに特有である。アプリケーションページは、ネイティブアプリケーション内で生成されかつそれに特有であるという点で、レンダリングされたウェブリソースと異なり、一方、ウェブリソースは、ウェブページリソースが互換性のある任意のブラウザ内にレンダリングすることが可能であり、ユーザデバイスのオペレーティングシステムから独立している。
ユーザデバイス108は、通常、ネットワーク102を介してウェブページリソース105およびネイティブアプリケーション107を要求し、受信することができる。例示のユーザデバイス108は、パーソナルコンピュータ、携帯通信デバイスおよびタブレットコンピュータを含む。
ウェブリソース105およびネイティブアプリケーション107を検索するために、検索エンジン110は、ウェブインデックス112およびアプリケーションインデックス114にアクセスする。ウェブインデックス112は、ウェブリソース105のインデックスであり、これは、たとえば、発行者ウェブサイト104をクローリングすることから作成されたものである。アプリケーションインデックス114は、ネイティブアプリケーション107に関するアプリケーションページのインデックスであり、バーチャルマシン120および以下でより詳細に説明するインデックス付けプロセスを使用して作成される。別個のインデックスとして示されているが、ウェブインデックス112およびアプリケーションインデックス114は、1つのインデックスに結合され得る。
ユーザデバイス108は、検索クエリを検索エンジン110に提出する。各クエリに応答して、検索エンジン110は、ウェブインデックス112およびアプリケーションインデックス114にアクセスして、クエリに関連するコンテンツを識別する。検索エンジン110は、たとえば、検索結果ジェネレータ116を使用することによって、ウェブリソース検索結果およびネイティブアプリケーション検索結果の形式で、それぞれリソースおよびアプリケーションを識別することができる。一度生成されると、検索結果はクエリが受信されたユーザデバイス108に提供される。
ウェブリソース検索結果は、ウェブリソースを識別する検索エンジン110によって生成されたデータであり、特定の検索クエリを満足する情報を提供する。リソースに対するウェブリソース検索結果は、ウェブページのタイトル、リソースから抽出されたテキストの抜粋、およびリソースに対するリソースロケータ、たとえば、ウェブページのURLを含むことができる。
ネイティブアプリケーション検索結果は、ネイティブアプリケーションを指定し、以下でより詳細に説明するように、アプリケーションインデックス114およびウェブインデックス112の検索に応答して生成される。ユーザデバイスにおいて選択されると、ネイティブアプリケーション検索結果によって、ユーザデバイス上にインストールされたネイティブアプリケーションが同期されたコンテンツを要求する。ネイティブアプリケーションは、一度要求されたコンテンツを受信すると、そのコンテンツをネイティブアプリケーションのユーザインタフェース内に表示する。こうした機能は、アプリケーション検索結果内の「ディープリンキング」と呼ばれる。
アプリケーションインデックスに関する、アプリケーションページデータおよびアプリケーションパッケージデータの集合体を、図1、さらに、ネイティブアプリケーションのアプリケーションページデータにインデックス付けを行うためのプロセス200の一例の流れ図である、図2を参照しながら説明する。プロセス200は、データ通信における1つまたは複数のコンピュータのデータ処理装置に実装され得る。このプロセスは、いくつかのアプリケーションページデータを収集するために、バーチャルマシンを使用するものとして記述されているが、プロセスおよびデバイスも使用され得る。
プロセス200は、ユーザデバイス用のオペレーティングシステムをエミュレートするバーチャルマシン120をインスタンス生成する(202)。バーチャルマシン120は、いくつかの実装形態において、オペレーティングシステムの変更バージョンとすることができ、以下でより詳細に説明するように、アプリケーションページからデータを抽出するエクストラクタを含む。
プロセス200は、ユーザデバイス上で表示するためのアプリケーションページをネイティブアプリケーション107内で生成するネイティブアプリケーション107をバーチャルマシン120内でインスタンス生成する。たとえば、バーチャルマシン120は、処理対象の1組のネイティブアプリケーション107の各アプリケーションに対して、ネイティブアプリケーション107のインスタンスを立ち上げることができる。
プロセス200は、ネイティブアプリケーションのアプリケーションページに、バーチャルマシン120内でアクセスする(206)。いくつかの実装形態において、バーチャルマシンは、各アプリケーションページおよび後続の各アプリケーションページに関する様々なメニューおよび選択オプションを探索する、自動的なプロセスによってページにアクセスする。こうした自動的なプロセスは、ネイティブアプリケーション107によって提供される各アプリケーションページを選択することになる決定論的ルーチンに従って、メニューオプションおよびリンクを順次選択することによって達成することができる。あるいは、バーチャルマシン120は、ネイティブアプリケーションの発行者によって指定されたアプリケーションページにアクセスすることができる。たとえば、アプリケーション発行者は、発行者がクローリングされ、アプリケーションインデックス114でインデックス付けされたいと希望するユニフォームリソースアイデンティファイア(URI)の形式で、アプリケーションページ識別子108のリストを提供することができ、特定のネイティブアプリケーション107に関するURIによって参照されるアプリケーションページのみが、アクセスされ、インデックス付けされる。
各アプリケーションページに対して、プロセス200は、アプリケーションページのコンテンツを説明するアプリケーションページデータを生成する(208)。ページのコンテンツは、たとえば、アプリケーションページ上に表示されたテキスト、アプリケーションページ上に表示された画像、他のアプリケーションページまたは他のウェブリソースへのアプリケーションページ上のリンク、およびインデックス付けに適切な他のコンテンツを含むことができる。
いくつかの実装形態において、バーチャルマシン120は、インデックス付けのためのコンテンツデータを抽出するエクストラクタを含む。抽出されたコンテンツデータは、たとえば、ネイティブアプリケーションのレンダリングプロセスに提供されるデータである。レンダリングプロセスでは、ユーザデバイス上に表示するためのデータに基づいて、コンテンツをレンダリングする。エクストラクタを使用することにより、アプリケーションページの様々なコンテンツをより正確に識別することが可能となる。たとえば、テキストエクストラクタ122は、ネイティブアプリケーションのレンダリングプロセスに提供されたテキストデータを抽出する。テキストデータは、アプリケーションページにおいてレンダリングされるテキストを指定する。テキストは、初期化されるか、ラベル付けされるか、または別の方法で、タイトルテキスト、ヘッダテキスト、記事のコンテンツなどとして識別可能である。したがってバーチャルマシン120は、アプリケーションページの画像を処理する、または、ディスプレイのバイナリデータを処理するのではなく、ネイティブアプリケーション107の環境においてレンダリングされる実際のテキストを受信する。
画像エクストラクタ124およびリストエクストラクタ126など、他のエクストラクタも同様に使用することができる。画像エクストラクタ124は、ネイティブアプリケーション107の環境においてレンダリングされる画像の画像データを提供し、リストエクストラクタ126は、ネイティブアプリケーション107の環境においてレンダリングされる、スクロール可能な項目のリストのリストデータを提供する。別のアプリケーションページにリンクする、アプリケーションページ内のリンクを記述するアプリケーションページリンクデータ、ユニフォームリソースロケータによって参照されるウェブリソースにリンクし、選択されるとき、ネイティブアプリケーションとは分離したブラウザ環境において、リソースをレンダリングするブラウザアプリケーションをインスタンス生成する、アプリケーションページ内のリンクを記述するウェブページリンクデータなど、他のデータもまた抽出することができる。
エクストラクタ122、124および126、ならびに他の適切なデータエクストラクタは、特定のオペレーティングシステムのための適切なデータハンドラを使用して、実装することができる。たとえば、Android(登録商標)オペレーティングシステムの場合、エクストラクタ122、124および126は、TextViewオブジェクト、ImageViewオブジェクト、およびListViewオブジェクトをそれぞれ使用することにより実装することができる。バーチャルマシン120はオブジェクトを処理して、たとえば、バーチャルマシンに、レンダリングするために提供された対応するデータにインデックス付けするために記憶させる命令を含むことによって、対応するデータを抽出する。
プロセス200は、アプリケーションパッケージファイルを処理する(210)。たとえば、アプリケーションパッケージを解凍し、分析するように構成されたコンピュータデバイスなどのパッケージプロセッサ130が、アプリケーションパッケージを処理することができる。あるいは、バーチャルマシン120がアプリケーションパッケージを処理することができる。様々なネイティブアプリケーション関連データが、アプリケーションパッケージファイルから収集され、インデックス付けされ得る。たとえば、アプリケーションがインストールされたとき表示されるアイコンなど、アプリケーションアイコンが識別される。アイコンの下に現れるテキスト文字列が識別され、アプリケーション表示名が、このテキスト文字列にセットされる。アプリケーション表示名は、実際のアプリケーション名と異なっていてもよい。
多数のテキスト文字列が存在し、それぞれが特定の言語(またはロケール)に関連するとき、その言語またはロケールはテキスト文字列に関連付けられる。クエリに対するネイティブアプリケーション検索結果を生成するとき、言語またはロケールを使用して、クエリに関連した言語またはロケールに基づいて、テキスト文字列を選択することができる。
アプリケーションパッケージファイルからの他の情報は、探知され、インデックス中に記憶され得る。たとえば、アプリケーションパッケージ中のファイルのリストが生成され、ファイルサイズ、バージョンレベル、および他の記述データも探知され得る。
プロセス200は、ネイティブアプリケーションに関するアプリケーションページデータに、検索エンジンによって検索可能なインデックスでインデックス付けを行う(212)。たとえば、インデクサ140は、各アプリケーションページのURIおよびネイティブアプリケーション107の識別子について、アプリケーションページのコンテンツを記述するアプリケーションページデータにインデックス付けを行う。インデックス付けされたデータは、アプリケーションインデックス114に記憶される。様々な適切なインデックス付けのプロセスが、データにインデックス付けを行うために使用され得る。たとえば、アプリケーションインデックス114は、各ネイティブアプリケーション107およびURIのペアに関して、アプリケーションページデータを記述するデータ行を含むことができる。特定のデータベースおよび使用されるインデックス付けスキームは、たとえば、検索エンジン内で使用される検索エンジンアルゴリズムによって左右されることがある。
いくつかの状況において、特定のネイティブアプリケーションページは、異なるコンテンツに対応する異なるURIを有することができる。たとえば、株式相場アプリケーションは、すべての株式相場に共通のURIの第1の部分、および、アプリケーションページ上に表示されることになる特定の1つまたは複数の相場に対する名前と値の組(name-value pair)を含む、クエリパラメータなどの、URIの第2の部分を有することができる。いくつかの実装形態において、一意のURIのそれぞれの特定のインスタンスは、アプリケーションインデックス114におけるエントリを構成する。
アプリケーションインデックス114の生成後に、検索エンジン110はアプリケーションインデックス114にアクセスして、クエリに応答可能なネイティブアプリケーションを識別することができる。いくつかの実装形態において、アプリケーションは、ネイティブアプリケーション検索結果によって識別することができる。図3は、ネイティブアプリケーション検索結果を生成するためのプロセス300の一例の流れ図であり、検索エンジン110の検索結果ジェネレータ116中に実装される。
プロセス300は、クエリに応答するものとして、ネイティブアプリケーションのアプリケーションページを識別するデータを受信する(302)。たとえば、検索エンジン110は、クエリに応答するように特定のネイティブアプリケーションに関する特定のアプリケーションページを定め、かつ、そのアプリケーションページに関するネイティブアプリケーション検索結果が生成されることを示すデータを提供することができる。データは、ネイティブアプリケーションページに関するデータを含む、インデックス114中の行またはエントリを参照することができる。
プロセス300は、インデックスから、アプリケーション名、アプリケーションアイコン、アプリケーションページタイトル、および、アプリケーションページのコンテンツを選択する(304)。たとえば、検索結果ジェネレータは、検索エンジンからのデータを使用して、インデックス付けされたアプリケーション名、アプリケーションアイコン、アプリケーションページタイトル、および、アプリケーションページのコンテンツにアクセスする。選択されるデータは、検索クエリ、および、検索エンジン110によって指定することができる特定のデータによって決まってもよい。
プロセス300は、選択されたデータを使用して、ネイティブアプリケーション検索結果を生成する(306)。たとえば、図4は、プロセス300によって生成された、ネイティブアプリケーション検索結果400の図である。図4から明らかなように、検索結果ジェネレータは、ネイティブアプリケーション検索結果400中に第1の画像記述子として、ネイティブアプリケーションに関するアプリケーションアイコン402を含めた。たとえば、スクリーンショットのサムネイルなど、他の画像も選択され得る。検索結果は、たとえば、アプリケーションページのURI403を含む。URIは目で見ることができてもよく、または、検索結果400に埋め込まれてもよい。
また、ネイティブアプリケーション検索結果400中に、第1のテキスト記述子として、アプリケーション表示名404が含まれている。アプリケーション表示名は、たとえば、アプリケーションがユーザデバイス上にインストールされるとき、アイコン402とともに表示される名前とすることができる。
いくつかの実装形態において、ネイティブアプリケーション検索結果における第2のテキスト記述子として、URI403によって参照されるアプリケーションページ名のアプリケーションページ名406。アプリケーションページ名406は、図4に示すように、アプリケーション表示名404と連結、または結合され得る。任意選択として、第1のテキスト記述子および第2のテキスト記述子を整形する表示は、異なる記述子タイプを強調するために異なるものとすることができる。
アプリケーションページデータ上に表示され、次いで、アプリケーションページが表示されるコンテンツ408など他のデータも、第3のテキスト記述子として含まれ得る。
プロセス300は、ユーザデバイスにネイティブアプリケーション検索結果を提供する(308)。ユーザデバイスにおいて受信すると、ユーザデバイスは、ユーザにネイティブアプリケーション検索結果400を表示する。いくつかの実装形態において、検索結果400を選択することにより、ネイティブアプリケーションが、検索クエリに関連するコンテンツを含むアプリケーションページのインスタンスを立ち上げ、生成する。たとえば、ネイティブアプリケーションExample App Titleがユーザデバイス上にインストールされたとすると、検索結果400を選択することにより、ネイティブアプリケーションが、ページタイトル406およびコンテンツ408に対応するアプリケーションページを立ち上げ、生成する。
例示のネイティブアプリケーション検索結果400は、アイコン402、アプリケーション表示名404、およびページタイトル406を含んではいるものの、これらの要素のすべてが、ネイティブアプリケーション検索結果に含まれる必要があるというわけではない。
主題に関する実施形態および本明細書に記載の動作は、デジタル電子回路、または、本明細書で開示した構造体およびその構造的同等物を含む、コンピュータソフトウェア、ファームウェアもしくはハードウェア、またはそれらのうちの1つまたは複数の組合せによって実装され得る。本明細書に記載の主題に関する実施形態は、データ処理装置によって実行されるかまたはそれらの動作を制御する、コンピュータ記憶媒体上に符号化された1つまたは複数のコンピュータプログラム、すなわちコンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。別法として、またはこれに加えて、プログラム命令は、データ処理装置によって実行するために、適切な受信装置に送信する情報を符号化するために生成される人工的に生成された伝搬信号、たとえば、機械生成された電気的、光学的または電磁的信号上で符号化され得る。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶回路基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらのうちの1つもしくは複数の組合せとすることができ、またはそれらに含まれてもよい。さらに、コンピュータ記憶媒体は伝搬信号ではないのに対して、コンピュータ記憶媒体は、人工的に生成された伝搬信号中に符号化されたコンピュータプログラム命令の発信元または宛先とすることができる。コンピュータ記憶媒体もまた、1つまたは複数の別個の物理的コンポーネントまたは媒体(たとえば、複数枚のCD、ディスク、または他の記憶デバイス)とすることができるか、またはそれらに含まれていてもよい。
本明細書に記載の動作は、1つまたは複数のコンピュータ可読記憶デバイスに記憶されたまたは他のソースから受信されたデータに対して、データ処理装置によって実行された動作として実装され得る。
「データ処理装置」という用語は、例として、プログラマブルプロセッサ、コンピュータ、システムオンチップ、またはこれらの複数もしくは組合せを含む、あらゆる種類のデータ処理用の装置、デバイスおよびマシンを包含する。装置はまた、ハードウェアに加えて、当該のコンピュータプログラム用の実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、バーチャルマシン、またはそれらのうちの1つもしくは複数の組合せ、を構成するコードを含むことができる。装置および実行環境は、ウェブサービス、分散コンピューティング、およびグリッドコンピューティングインフラストラクチャなど様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイル型またはインタープリタ型言語、宣言型または手続き型言語を含む任意のプログラミング言語形式で書くことができ、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、オブジェクト、もしくはコンピューティング環境で使用するのに適切な他のユニットとしての形式を含む、任意の形式において展開することができる。コンピュータプログラムは、ファイルシステム中のファイルに対応してもよいが、対応する必要はない。プログラムは、当該プログラムに割り当てられた単一ファイル、または複数の協調ファイル(たとえば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を記憶するファイル)中の他のプログラムまたはデータ(たとえば、マークアップ言語文書中に記憶された1つまたは複数のスクリプト)を保持するファイルの一部に記憶され得る。コンピュータプログラムは、1つのサイトに配置された、または、複数のサイトにわたって分散され通信ネットワークによって相互に接続された、1つのコンピュータまたは複数のコンピュータ上で実行するために展開することができる。
本明細書に記載のプロセスフローおよび論理フローは、1つまたは複数のプログラマブルプロセッサが、1つまたは複数のコンピュータプログラムを実行して、入力データに作用し出力を生成することによってアクションを行うことにより実施され得る。コンピュータプログラムを実行するのに適切なプロセッサとしては、一例として、汎用マイクロプロセッサおよび特殊用途のマイクロプロセッサの両者、ならびに、任意の種類のデジタルコンピュータのうちのいずれか1つまたは複数のプロセッサが挙げられる。一般に、プロセッサは、リードオンリメモリまたはランダムアクセスメモリまたは両者から、命令およびデータを受け取る。コンピュータの重要な要素は、命令に従ってアクションを実行するためのプロセッサ、ならびに、命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、たとえば、磁気ディスク、光磁気ディスク、または光ディスクなどデータを記憶するための1つまたは複数の大量記憶デバイスを含むか、または、それとの間でデータを受け取り、送信し、またはその両方を行うために、動作可能なようにそれに結合される。しかし、コンピュータはこうしたデバイスを有する必要はない。さらに、コンピュータは、ほんの少し名前を挙げるだけでも、たとえば、携帯電話、携帯情報端末(PDA)、携帯オーディオプレーヤもしくは携帯ビデオプレーヤ、ゲーム機、全地球測位システム(GPS)受信機、または携帯記憶デバイス(たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブ)など、別のデバイスに埋め込むことができる。コンピュータプログラム命令およびデータを記憶するのに適切なデバイスとしては、一例として、たとえば、EPROM、EEPROMなど半導体メモリデバイス、ならびにフラッシュメモリデバイス、たとえば、内蔵ハードディスクまたはリムーバブルディスクなど磁気ディスク、光磁気ディスク、ならびに、CD-ROMおよびDVD-ROMディスクを含む、あらゆる形式の不揮発性メモリ、メディアおよびメモリデバイスが挙げられる。プロセッサおよびメモリは、特殊目的の論理回路によって追加され、またはその中に組み込むことができる。
ユーザとの対話操作を提供するために、本明細書に記載の本主題の実施形態は、情報をユーザに表示するための、たとえば、CRT(陰極線管)モニタまたはLCD(液晶ディスプレイ)モニタなど表示デバイス、ならびに、ユーザがそれによって入力をコンピュータに提供することができる、キーボードおよびたとえばマウスまたはトラックボールなどのポインティングデバイスを有するコンピュータ上に実装することができる。同様に、ユーザとの対話操作を提供するために、他の種類のデバイスも使用することができる。たとえば、ユーザに提供されるフィードバックは、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックなど、任意の形式の感覚フィードバックとすることができ、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形式で受け取ることができる。さらに、コンピュータは、たとえば、ウェブブラウザから受信した要求に応答して、ウェブページをユーザのユーザデバイス上のウェブブラウザに送信するなど、ユーザによって使用されるデバイスに文書を送信し、そこから文書を受信することによってユーザと対話することができる。
本明細書に記載の本主題の実施形態は、たとえば、データサーバとしてのバックエンドコンポーネント、または、たとえばアプリケーションサーバなどミドルウェアコンポーネント、または、たとえば、それを通してユーザが本明細書に記載の本主題の実装形態と対話することができるグラフィカルユーザインタフェースもしくはウェブブラウザを有するユーザコンピュータなどフロントエンドコンポーネント、または、1つまたは複数のこれらのバックエンド、ミドルウェア、もしくはフロントエンドコンポーネントのうちの任意の組合せを含む、コンピューティングシステムに実装され得る。システムのコンポーネントは、たとえば、通信ネットワークなどデジタルデータ通信の任意の形式または媒体によって、相互に接続され得る。通信ネットワークの例としては、ローカルエリアネットワーク(「LAN」)、広域ネットワーク(「WAN」)、インターネットワーク(たとえば、インターネット)、および、ピアツーピアネットワーク(たとえば、アドホックピアツーピアネットワーク)が挙げられる。
コンピューティングシステムは、ユーザおよびサーバを含むことができる。ユーザおよびサーバは、一般的には相互に離れており、通常は通信ネットワークを介して対話する。ユーザとサーバの関係は、それぞれのコンピュータ上で実行し、相互にユーザ/サーバ関係を有するコンピュータプログラムによって生じる。いくつかの実施形態において、サーバはデータ(たとえば、HTMLページ)をユーザデバイスに送信する(たとえば、ユーザデバイスと対話するユーザにデータを表示する、および、ユーザデバイスと対話するユーザからユーザ入力を受け取る目的で)。ユーザデバイスにおいて生成されるデータ(たとえば、ユーザ対話の結果)は、サーバにおいてユーザデバイスから受信され得る。
本明細書は、多くの特定の実装形態の詳細を含んでいるが、これらは、任意の発明の範囲、または特許請求の範囲を制限するものと解釈されるべきではなく、特定の発明の特定の実施形態に固有の特徴を説明したものと解釈されるべきである。本明細書において、別個の実施形態との関連で説明されたある特徴も、1つの実施形態において組み合わせて実装され得る。反対に、1つの実施形態との関連で説明された様々な特徴も、別個の複数の実施形態、または任意の適切な副結合において実装され得る。さらに、特徴が上にてある組合せにおいて動作すると説明され、そのように最初は特許請求され得るとしても、特許請求された組合せからの1つまたは複数の特徴は、いくつかの場合には組合せから実行され、その特許請求された組合せは、副結合または副結合の変形を対象とすることができる。
同様に、動作は図面において特定の順序で記載されているが、望ましい結果を達成するために、こうした動作が示された特定の順序または順番通りに実行される、または示されたすべての動作が実行されることが必要であると考えるべきではない。ある状況においては、マルチタスキングおよび並列処理が有利なことがある。さらに、上述の実施形態において、様々なシステムコンポーネントの区別は、すべての実施形態においてこうした区別が必要であると理解すべきではなく、説明されたプログラムコンポーネントおよびシステムは、一般に、1つのソフトウェア製品に共に統合され、または複数のソフトウェア製品にパッケージ化され得ると理解されたい。
上述のとおり、本主題の特定の実施形態を説明してきた。他の実施形態は、以下の特許請求の範囲内にある。いくつかの場合において、特許請求の範囲で述べられるアクションは、異なる順序で実行することができ、なお望ましい結果を達成することができる。さらに、添付の図面に記載したプロセスは、望ましい結果を達成するために、必ずしも示された特定の順序または順番を必要とはしない。ある実装形態においては、マルチタスキングおよび並列処理が有利なことがある。
100 例示の環境、環境
102 コンピュータネットワーク
104 発行者ウェブサイト
105 ウェブリソース
106 アプリケーション発行者
107 ネイティブアプリケーション
108 ユーザデバイス、アプリケーションページ識別子
110 検索エンジン
112 ウェブインデックス
114 アプリケーションインデックス
116 ウェブインデックス、検索結果ジェネレータ
120 バーチャルマシン
122 画像テキストエクストラクタ
124 画像エクストラクタ
126 リストエクストラクタ
130 パッケージプロセッサ
140 インデクサ
200 プロセス
300 プロセス
400 ネイティブアプリケーション検索結果
402 アプリケーションアイコン
403 URI
404 アプリケーション表示名
406 アプリケーションページ名、ページタイトル
408 コンテンツ

Claims (13)

  1. データ通信において、1つまたは複数のコンピュータを含むデータ処理装置によって実行されるコンピュータ実施方法であって、
    ネイティブアプリケーションに関するアプリケーションパッケージファイルにアクセスするステップと、各ネイティブアプリケーションに対して、
    前記アプリケーションパッケージファイルから、前記ネイティブアプリケーションのアプリケーション名を決定するステップであって、
    前記ネイティブアプリケーションに関するアプリケーションアイコンを決定するステップと、
    前記アプリケーション名として前記アプリケーションアイコンに関するアプリケーション表示名を定めるテキスト文字列を選択するステップと
    を含む、ステップと、
    前記データ処理装置において、前記ネイティブアプリケーションのアプリケーションページにアクセスするステップであって、前記アプリケーションページのそれぞれに対して、前記アプリケーションページのコンテンツを記述するアプリケーションページデータ、前記アプリケーションページのアプリケーションページ名、ユーザデバイスが前記アプリケーションページを表示するとき前記ユーザデバイスが前記アプリケーションページ上に表示するテキストを含む前記アプリケーションページデータによって記述されるコンテンツ、を生成する、ステップと、
    前記ネイティブアプリケーションに関する前記アプリケーションページデータおよび前記アプリケーション名に、検索エンジンによって検索可能なインデックスでインデックス付けを行うステップと
    を含む、コンピュータ実施方法。
  2. クエリに応答するものとして、ネイティブアプリケーションのアプリケーションページを識別するデータを受信するステップであって、これに対し、
    前記インデックスから前記アプリケーション名を選択し、前記アプリケーション名を第1のテキスト記述子としてネイティブアプリケーション検索結果に含め、
    前記インデックスから前記ネイティブアプリケーションに関する前記アプリケーションアイコンを選択し、前記アプリケーションアイコンを第1の画像記述子として前記ネイティブアプリケーション検索結果に含め、
    前記インデックスから前記ネイティブアプリケーションに関するアプリケーションページのユニフォームリソースアイデンティファイア(URI)を選択し、前記URIを前記ネイティブアプリケーション検索結果に含め、
    前記URIによって参照される前記アプリケーションページ名のアプリケーションペー
    ジ名を、前記ネイティブアプリケーション検索結果における第2のテキスト記述子として選択する、ステップと、
    前記クエリに応答して、前記ネイティブアプリケーション検索結果をユーザデバイスに提供するステップと
    をさらに含む、請求項1に記載のコンピュータ実施方法。
  3. 前記インデックスから前記アプリケーション名を選択し、前記アプリケーション名を第1のテキスト記述子としてネイティブアプリケーション検索結果に含めることが、
    前記クエリに対応する複数の言語のうちの1つを決定することと、
    前記ネイティブアプリケーションに関するそれぞれ異なる言語の複数のアプリケーション名から、前記クエリに対応する前記言語に対応する前記アプリケーション名を選択することと
    を含む、請求項2に記載のコンピュータ実施方法。
  4. 前記ネイティブアプリケーションの発行者から、前記ネイティブアプリケーションに関してインデックス付けされるアプリケーションページを指定するデータを受信するステップと、
    前記ネイティブアプリケーションのアプリケーションページにアクセスするステップであって、前記ネイティブアプリケーションに関してインデックス付けされるように指定される前記アプリケーションページのみにアクセスすることを含む、ステップと
    をさらに含む、請求項2に記載のコンピュータ実施方法。
  5. 第1の表示形式にて前記第1のテキスト記述子を整形するステップと、
    前記第1の表示形式と異なる第2の表示形式にて前記第2のテキスト記述子を整形するステップと
    をさらに含む、請求項2に記載のコンピュータ実施方法。
  6. 前記インデックスから、前記アプリケーションページが表示されるとき、前記アプリケーションページデータ上に表示されるコンテンツのコンテンツデータを選択するステップ
    と、
    前記コンテンツデータを第3のテキスト記述子として前記ネイティブアプリケーション検索結果に含めるステップと
    をさらに含む、請求項2に記載のコンピュータ実施方法。
  7. データ処理装置と、
    前記データ処理装置によって実行可能な命令を記憶する、非一時的なコンピュータ可読記憶媒体に記憶されたソフトウェアと
    を備え、前記命令が実行されると前記データ処理装置に、
    ネイティブアプリケーションに関するアプリケーションパッケージファイルにアクセスするステップと、各ネイティブアプリケーションに対して、
    前記アプリケーションパッケージファイルから、前記ネイティブアプリケーションのアプリケーション名を決定するステップであって
    前記ネイティブアプリケーションに関するアプリケーションアイコンを決定するステップと、
    前記アプリケーション名として前記アプリケーションアイコンに関するアプリケーション表示名を定めるテキスト文字列を選択するステップと
    を含む、ステップと、

    前記データ処理装置において、前記ネイティブアプリケーションのアプリケーションページにアクセスするステップであって、前記アプリケーションページのそれぞれに対して、前記アプリケーションページのコンテンツを記述するアプリケーションページデータ、前記アプリケーションページのアプリケーションページ名、ユーザデバイスが前記アプリケーションページを表示するとき前記ユーザデバイスが前記アプリケーションページ上に表示するテキストを含む前記アプリケーションページデータによって記述されるコンテンツ、を生成する、ステップと、
    前記ネイティブアプリケーションに関する前記アプリケーションページデータおよび前記アプリケーション名に、検索エンジンによって検索可能なインデックスでインデックス付けを行うステップと
    を含む動作を実行させる、システム。
  8. 前記動作が、
    クエリに応答して、ネイティブアプリケーションのアプリケーションページを識別するデータを受信するステップであって、これに対し、
    前記インデックスから前記アプリケーション名を選択し、前記アプリケーション名を第1のテキスト記述子としてネイティブアプリケーション検索結果に含め、
    前記インデックスから前記ネイティブアプリケーションに関する前記アプリケーションアイコンを選択し、前記アプリケーションアイコンを第1の画像記述子として前記ネイティブアプリケーション検索結果に含め、
    前記インデックスから前記ネイティブアプリケーションに関するアプリケーションページのユニフォームリソースアイデンティファイア(URI)を選択し、前記URIを前記ネイティブアプリケーション検索結果に含め、
    前記URIによって参照される前記アプリケーションページ名のアプリケーションページ名を、前記ネイティブアプリケーション検索結果における第2のテキスト記述子として選択する、ステップと、
    前記クエリに応答して、前記ネイティブアプリケーション検索結果をユーザデバイスに提供するステップと
    をさらに含む、請求項7に記載のシステム。
  9. 前記インデックスから前記アプリケーション名を選択し、前記アプリケーション名を第1のテキスト記述子としてネイティブアプリケーション検索結果に含めることが、
    前記クエリに対応する複数の言語のうちの1つを決定することと、
    前記ネイティブアプリケーションに関するそれぞれ異なる言語の複数のアプリケーション名から、前記クエリに対応する前記言語に対応する前記アプリケーション名を選択することと
    を含む、請求項8に記載のシステム。
  10. 前記動作が、
    前記ネイティブアプリケーションの発行者から、前記ネイティブアプリケーションに関してインデックス付けされるアプリケーションページを指定するデータを受信するステップと、
    前記ネイティブアプリケーションのアプリケーションページにアクセスするステップであって、前記ネイティブアプリケーションに関してインデックス付けされるように指定される前記アプリケーションページのみにアクセスすることを含む、ステップと
    をさらに含む、請求項8に記載のシステム。
  11. 前記動作が、
    第1の表示形式にて前記第1のテキスト記述子を整形するステップと、
    前記第1の表示形式と異なる第2の表示形式にて前記第2のテキスト記述子を整形するステップと
    をさらに含む、請求項8に記載のシステム。
  12. 前記動作が、
    前記インデックスから、前記アプリケーションページが表示されるとき、前記アプリケーションページデータ上に表示されるコンテンツのコンテンツデータを選択するステップと、
    前記コンテンツデータを第3のテキスト記述子として前記ネイティブアプリケーション検索結果に含めるステップと
    をさらに含む、請求項8に記載のシステム。
  13. データ処理装置によって実行可能な命令を記憶する、非一時的なコンピュータ可読記憶媒体であって、前記命令が実行されると前記データ処理装置に、
    ネイティブアプリケーションに関するアプリケーションパッケージファイルにアクセスするステップと、各ネイティブアプリケーションに対して、
    前記アプリケーションパッケージファイルから、前記ネイティブアプリケーションのアプリケーション名を決定するステップであって
    前記ネイティブアプリケーションに関するアプリケーションアイコンを決定するステップと、
    前記アプリケーション名として前記アプリケーションアイコンに関するアプリケーション表示名を定めるテキスト文字列を選択するステップと
    を含む、ステップと、
    前記データ処理装置において、前記ネイティブアプリケーションのアプリケーションページにアクセスするステップであって、前記アプリケーションページのそれぞれに対して、前記アプリケーションページのコンテンツを記述するアプリケーションページデータ、前記アプリケーションページのアプリケーションページ名、ユーザデバイスが前記アプリケーションページを表示するとき前記ユーザデバイスが前記アプリケーションページ上に表示するテキストを含む前記アプリケーションページデータによって記述されるコンテンツ、を生成する、ステップと、
    前記ネイティブアプリケーションに関する前記アプリケーションページデータおよび前記アプリケーション名に、検索エンジンによって検索可能なインデックスでインデックス付けを行うステップと
    を含む動作を実行させる、非一時的なコンピュータ可読記憶媒体。
JP2016574943A 2014-06-24 2015-06-23 ネイティブアプリケーションに関する検索結果 Active JP6363738B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201462016645P 2014-06-24 2014-06-24
US62/016,645 2014-06-24
PCT/US2015/037111 WO2015200277A1 (en) 2014-06-24 2015-06-23 Search results for native applications

Publications (2)

Publication Number Publication Date
JP2017527006A JP2017527006A (ja) 2017-09-14
JP6363738B2 true JP6363738B2 (ja) 2018-07-25

Family

ID=53540858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016574943A Active JP6363738B2 (ja) 2014-06-24 2015-06-23 ネイティブアプリケーションに関する検索結果

Country Status (6)

Country Link
US (2) US9881095B2 (ja)
EP (1) EP3161682A1 (ja)
JP (1) JP6363738B2 (ja)
CN (2) CN112417243A (ja)
RU (2) RU2710293C2 (ja)
WO (1) WO2015200277A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505123B1 (en) * 2000-07-24 2003-01-07 Weatherbank, Inc. Interactive weather advisory system
US10303802B2 (en) * 2013-03-15 2019-05-28 Gadget Software, Inc. System for mobile application search
CN112417243A (zh) * 2014-06-24 2021-02-26 谷歌有限责任公司 本地应用的搜索结果
US10095794B2 (en) * 2014-09-05 2018-10-09 Samsung Electronics Co., Ltd. Augmenting search results with device and application history
US20160132596A1 (en) * 2014-11-12 2016-05-12 Quixey, Inc. Generating Search Results Based On Software Application Installation Status
US10296641B2 (en) * 2014-12-23 2019-05-21 Samsung Electronics Co., Ltd. Techniques for efficient access of software application functionality in search
US20170046438A1 (en) 2015-08-13 2017-02-16 Quixey, Inc. Cloud-Enabled Caching Architecture for On-Demand Native Application Crawling
US10120949B2 (en) * 2015-10-29 2018-11-06 Google Llc Indexing native application data
US10120954B2 (en) 2015-12-31 2018-11-06 Samsung Electronics Co., Ltd. Transformation and presentation of on-demand native application crawling results
EP3356965A4 (en) * 2016-01-05 2018-10-03 Samsung Electronics Co., Ltd. Computer-automated generation of application deep links
US11269961B2 (en) * 2016-10-28 2022-03-08 Microsoft Technology Licensing, Llc Systems and methods for App query driven results
CN107203397B (zh) * 2017-05-24 2021-02-05 广州四三九九信息科技有限公司 移动应用的运行方法和装置
CN109862096A (zh) * 2019-01-31 2019-06-07 网宿科技股份有限公司 一种应用配置方法、配置管理***及终端
CN117130981A (zh) * 2023-01-04 2023-11-28 荣耀终端有限公司 一种应用内容搜索方法及电子设备
CN117707563A (zh) * 2023-06-21 2024-03-15 荣耀终端有限公司 应用资源处理方法及相关设备

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003042871A2 (en) * 2001-11-14 2003-05-22 Brian Mervyn Morrow Systems and methods for indexing data in a network environment
US20040030882A1 (en) 2002-08-08 2004-02-12 Forman George Henry Managed application pre-launching
US7076616B2 (en) 2003-03-24 2006-07-11 Sony Corporation Application pre-launch to reduce user interface latency
US7136851B2 (en) 2004-05-14 2006-11-14 Microsoft Corporation Method and system for indexing and searching databases
US7730012B2 (en) 2004-06-25 2010-06-01 Apple Inc. Methods and systems for managing data
CA2588219C (en) * 2004-11-22 2014-05-20 Truveo, Inc. Method and apparatus for an application crawler
US20070011739A1 (en) 2005-06-28 2007-01-11 Shay Zamir Method for increasing the security level of a user machine browsing web pages
US8707451B2 (en) 2006-03-01 2014-04-22 Oracle International Corporation Search hit URL modification for secure application integration
JP5018536B2 (ja) * 2008-02-15 2012-09-05 日本電気株式会社 情報サービス検索システム、巡回収集方法、及び情報サービス巡回収集プログラム
US8086957B2 (en) 2008-05-21 2011-12-27 International Business Machines Corporation Method and system to selectively secure the display of advertisements on web browsers
US8909925B2 (en) * 2008-11-17 2014-12-09 Prakash Baskaran System to secure electronic content, enforce usage policies and provide configurable functionalities
US20100257466A1 (en) 2009-04-01 2010-10-07 Yahoo! Inc. Method and system for generating a mini-software application corresponding to a web site
AU2010253843B2 (en) 2009-05-27 2015-12-03 Google Inc. Computer application data in search results
US8396857B2 (en) * 2009-08-31 2013-03-12 Accenture Global Services Limited System to modify websites for organic search optimization
US8458384B2 (en) 2010-02-03 2013-06-04 National Instruments Corporation Automatically launching a measurement application in response to measurement device connection
US9098363B2 (en) 2010-04-07 2015-08-04 Apple Inc. Search extensibility to third party applications
US8515979B2 (en) 2010-06-18 2013-08-20 Verizon Patent And Licensing, Inc. Cross application execution service
US20120124061A1 (en) 2010-11-12 2012-05-17 Microsoft Corporation Rich Search Over and Deep Integration with Applications
EP2533162B1 (en) 2010-11-29 2022-10-26 Hughes Network Systems, LLC Proxy Server Apparatus for pre-fetching content using browser specifics
US9317621B2 (en) 2011-01-06 2016-04-19 Microsoft Technology Licensing, Llc Providing deep links in association with toolbars
US9858092B2 (en) 2011-01-06 2018-01-02 Mitel Networks Corporation Contextual application launch via search query
CN102043656A (zh) * 2011-01-20 2011-05-04 宇龙计算机通信科技(深圳)有限公司 软件管理方法、软件管理服务器
US20120316955A1 (en) 2011-04-06 2012-12-13 Yahoo! Inc. System and Method for Mobile Application Search
CN103930871B (zh) 2011-05-09 2019-07-09 谷歌有限责任公司 基于安装历史给移动设备推荐应用
US9519726B2 (en) 2011-06-16 2016-12-13 Amit Kumar Surfacing applications based on browsing activity
US8650139B2 (en) 2011-07-01 2014-02-11 Google Inc. Predicting user navigation events
US8930940B2 (en) * 2011-08-19 2015-01-06 Yongyong Xu Online software execution platform
KR101491878B1 (ko) 2011-08-31 2015-02-09 라인 가부시키가이샤 사용자 단말에서 취득한 정보를 기반으로 모바일 애플리케이션의 순위를 제공하는 시스템 및 방법
ES2755780T3 (es) * 2011-09-16 2020-04-23 Veracode Inc Análisis estático y de comportamiento automatizado mediante la utilización de un espacio aislado instrumentado y clasificación de aprendizaje automático para seguridad móvil
US9043480B2 (en) * 2011-10-11 2015-05-26 Citrix Systems, Inc. Policy-based application management
US20130110815A1 (en) 2011-10-28 2013-05-02 Microsoft Corporation Generating and presenting deep links
CA2854142A1 (en) 2011-11-01 2013-05-10 Google Inc. Launching applications from webpages
US8554345B2 (en) 2011-11-10 2013-10-08 Cbs Interactive, Inc. APP rating system
KR101295644B1 (ko) 2011-11-11 2013-09-16 한국전자통신연구원 스마트폰 앱 검증 시스템 및 그 방법
US20130124606A1 (en) 2011-11-14 2013-05-16 Boopsie, Inc. Automatic personalization of downloadable mobile apps
US8793235B2 (en) 2012-01-19 2014-07-29 Google Inc. System and method for improving access to search results
JP5712150B2 (ja) * 2012-02-22 2015-05-07 株式会社ゼンリンデータコム 検索サーバ装置、情報検索方法および情報検索プログラム
GB2501276A (en) 2012-04-18 2013-10-23 Ibm Determining web page loading at a client
US8756432B1 (en) * 2012-05-22 2014-06-17 Symantec Corporation Systems and methods for detecting malicious digitally-signed applications
US9195721B2 (en) 2012-06-04 2015-11-24 Apple Inc. Mobile device with localized app recommendations
US20140040231A1 (en) * 2012-08-06 2014-02-06 Hsiu-Ping Lin Methods and systems for searching software applications
CN102831243A (zh) * 2012-09-12 2012-12-19 北京播思软件技术有限公司 一种灵活部署搜索的方法
US9069735B2 (en) * 2012-10-15 2015-06-30 Sweetlabs, Inc. Systems and methods for integrated application platforms
CN103778156A (zh) * 2012-10-24 2014-05-07 阿里巴巴集团控股有限公司 数据搜索的方法和装置以及用于数据搜索的服务器
US8510764B1 (en) 2012-11-02 2013-08-13 Google Inc. Method and system for deep links in application contexts
CN102968469B (zh) * 2012-11-09 2016-05-18 小米科技有限责任公司 一种应用索引建立方法和***、应用检索方法和***
US9558275B2 (en) 2012-12-13 2017-01-31 Microsoft Technology Licensing, Llc Action broker
CN103020253A (zh) * 2012-12-20 2013-04-03 北京奇虎科技有限公司 应用搜索方法和设备
CN103064595A (zh) * 2012-12-24 2013-04-24 北京百度网讯科技有限公司 移动应用的搜索方法、***和移动终端
US9002821B2 (en) * 2013-01-16 2015-04-07 Google Inc. Indexing application pages of native applications
US9959360B2 (en) * 2013-03-01 2018-05-01 Samsung Electronics Co., Ltd. Generating search results containing state links to applications
CN103488490A (zh) * 2013-10-08 2014-01-01 深圳市金立通信设备有限公司 一种确定弹窗所对应的应用的方法、装置及终端
CN103713931B (zh) * 2014-01-02 2016-10-12 广州恒业软件科技有限公司 一种全屏面板的移动终端桌面实现方法及***
US9608870B1 (en) * 2014-02-28 2017-03-28 Google Inc. Deep link verification for native applications
US9524347B1 (en) * 2014-04-01 2016-12-20 Google Inc. Automatically implementing an application in response to a search query
CN112417243A (zh) * 2014-06-24 2021-02-26 谷歌有限责任公司 本地应用的搜索结果

Also Published As

Publication number Publication date
CN106687949B (zh) 2020-11-17
US9881095B2 (en) 2018-01-30
RU2665888C2 (ru) 2018-09-04
RU2710293C2 (ru) 2019-12-25
JP2017527006A (ja) 2017-09-14
RU2016152161A3 (ja) 2018-07-24
CN106687949A (zh) 2017-05-17
US20180121449A1 (en) 2018-05-03
US20150370812A1 (en) 2015-12-24
EP3161682A1 (en) 2017-05-03
CN112417243A (zh) 2021-02-26
RU2018128787A (ru) 2018-10-01
WO2015200277A1 (en) 2015-12-30
US10713324B2 (en) 2020-07-14
RU2018128787A3 (ja) 2019-09-09
RU2016152161A (ru) 2018-07-24

Similar Documents

Publication Publication Date Title
JP6363738B2 (ja) ネイティブアプリケーションに関する検索結果
JP6370408B2 (ja) ネイティブアプリケーションに関するディープリンク
KR102208988B1 (ko) 네이티브 어플리케이션들의 어플리케이션 페이지들을 인덱싱
US9547721B2 (en) Native application search results
US20230106266A1 (en) Indexing Access Limited Native Applications
JP6580708B2 (ja) 対応するリソースへのアプリケーション部分ディープリンク
US11003728B1 (en) Native application search results
RU2774319C2 (ru) Глубинные ссылки для нативных приложений

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180412

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: 20180604

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180628

R150 Certificate of patent or registration of utility model

Ref document number: 6363738

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250