(57)【特許請求の範囲】
【請求項１】
オペレーティング・システム、ソース・アプリケーション、およびターゲット・アプリケーションを含む計算デバイスにおいて実行される方法であって、
前記計算デバイスが、前記オペレーティング・システムを実行するステップと、
前記実行中のオペレーティング・システムが、共有アクションの選択情報を受け取るステップであって、
前記共有アクションは、コンテンツを前記ターゲット・アプリケーションと共有するために、前記ソース・アプリケーションから他の機能への切り替を不要とし、
前記オペレーティング・システムは、前記共有アクションを介して、前記ソース・アプリケーションと前記ターゲット・アプリケーションとの間での前記コンテンツの共有についてブローカーとしての働きを行うように構成され、
前記オペレーティング・システムの前記ブローカーとしての働きにより、前記ソース・アプリケーションおよび前記ターゲット・アプリケーションが互いの知識を有する必要性をなくす、
ステップと、
前記選択情報の受け取り後のバックグラウンド・プロセスとして、前記共有アクションに関連するデータ・バンドルをアップロードするステップと、
前記選択情報の受け取り後であり且つ前記アップロードの完了までに、前記ソース・アプリケーションおよび前記ターゲット・アプリケーションを、前記オペレーティング・システムのアクションを介して、シャットダウンを免除されるものとして特定するステップと
を含む方法。
【請求項２】
請求項１に記載の方法であって、更に、前記コンテンツの共有コンテンツ・タイプを登録するステップを含む方法。
【請求項３】
請求項１に記載の方法において、前記共有アクションは、前記オペレーティング・システムを介して、前記計算デバイスに固有のものとなる、方法。
【請求項４】
請求項１に記載の方法において、前記共有は、前記オペレーティング・システムが前記ソース・アプリケーションからリファレンスを受け取るステップを含み、前記リファレンスは前記コンテンツを照会する、方法。
【請求項５】
請求項４に記載の方法において、前記リファレンスは、更に、前記コンテンツに関連するプロパティ又はメタデータを照会する、方法。
【請求項６】
請求項４に記載の方法において、前記共有は、更に、前記オペレーティング・システムが前記受け取ったリファレンスを前記ターゲット・アプリケーションに送るステップを含む、方法。
【請求項７】
コンピュータに請求項１〜６のいずれか１項に記載の方法を実行させるためのプログラム。
【請求項８】
コンピュータに請求項１〜６のいずれか１項に記載の方法を実行させるためのプログラムを記録した１以上のコンピュータ可読記録媒体。
【請求項９】
計算デバイスと、オペレーティング・システム、ソース・アプリケーション、およびターゲット・アプリケーションを含む１以上のプログラムから成るシステムであって、前記計算デバイス及び前記プログラムはともに動作を実行するように構成されており、該動作は、
前記計算デバイスが、前記オペレーティング・システムを実行する動作と、
前記実行中のオペレーティング・システムが、共有アクションの選択情報を受け取る動作であって、
前記共有アクションは、コンテンツを前記ターゲット・アプリケーションと共有するために、前記ソース・アプリケーションから他の機能への切り替を不要とし、
前記オペレーティング・システムは、前記共有アクションを介して、前記ソース・アプリケーションと前記ターゲット・アプリケーションとの間での前記コンテンツの共有についてブローカーとしての働きを行うように構成され、
前記オペレーティング・システムの前記ブローカーとしての働きにより、前記ソース・アプリケーションおよび前記ターゲット・アプリケーションが互いの知識を有する必要性をなくす、
動作と、
前記選択情報の受け取り後のバックグラウンド・プロセスとして、前記共有アクションに関連するデータ・バンドルをアップロードする動作と、
前記選択情報の受け取り後であり且つ前記アップロードの完了までに、前記ソース・アプリケーションおよび前記ターゲット・アプリケーションを、前記オペレーティング・システムのアクションを介して、シャットダウンを免除されるものとして特定する動作と
を含むシステム。
【請求項１０】
請求項９に記載のシステムであって、前記動作は、更に、前記コンテンツの共有コンテンツ・タイプを登録する動作を含むシステム。
【請求項１１】
請求項９に記載のシステムにおいて、前記共有アクションは、前記オペレーティング・システムを介して、前記計算デバイスに固有のものとなる、システム。
【請求項１２】
請求項９に記載のシステムにおいて、前記共有は、前記オペレーティング・システムが前記ソース・アプリケーションからリファレンスを受け取る動作を含み、前記リファレンスは前記コンテンツを照会する、システム。
【請求項１３】
請求項１２に記載のシステムにおいて、前記リファレンスは、更に、前記コンテンツに関連するプロパティ又はメタデータを照会する、システム。
【請求項１４】
請求項１２に記載のシステムにおいて、前記共有は、更に、前記オペレーティング・システムが前記受け取ったリファレンスを前記ターゲット・アプリケーションに送る動作を含む、システム。
【請求項１５】
請求項９に記載のシステムにおいて、前記計算デバイスは、ソーシャル・ネットワーク・サイトに結合されるように構成されている、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
コンテキストに残りながら行われる共有のための拡張可能なシステム・アクション。
【背景技術】
【０００２】
[0001]  今日、電子デバイスのユーザは、様々な機構を用いてウェブ上でコンテンツを他のユーザと共有することが多く、その機構を数例あげると、Ｅメール、ソーシャル・ネットワーク・サイト、インスタント・メッセージ、写真共有サイト、ソーシャル・ブックマーク・サイト、ブログなどがある。しかし、デバイスで実行される多くのオペレーティング・システムは、典型的には、共有を容易にする役割を担わない。従って、例えば、ユーザは、一般に、コンテンツを或るアプリケーション／ウェブサイトから別のアプリケーション／ウェブサイトへコピー・アンド・ペーストするためのクリップボードのような一般的な機能に頼ることになるか、または、ユーザは、それぞれのアプリケーション／ウェブサイトにより提供される共有機能を使用しなければならない。現在の他のコンテンツ・シェアリング技術には、コンテンツを或るアプリケーション／ウェブサイトから別のアプリケーション／ウェブサイトへ移動させる「ドラッグ・アンド・ドロップ」や、マイクロソフト社のＷｉｎｄｏｗｓ（登録商標）Ｅｘｐｌｏｒｅｒなどのようなファイル・マネージャ／ブラウザ・アプリケーションを使用することが含まれ、このようなアプリケーションは、拡張ポイント（extensibility points）をＣＯＭ（common object model）インターフェースとして露出させることにより共有を可能とする。また、幾つかのウェブ・ブラウザ・プラグインも、現在はコンテンツ・シェアリングを容易にする。
【０００３】
[0002]  現在のこれらの機構の機能は、幾つかの場合においては十分であるが、その機能には制限があり、コンテンツ・シェアリングのために特別に調整されておらず、ユーザは、共有を行う際に、理想レベルに達していないと感じることが多い。例えば、ユーザは、コンテンツを共有するために、現在のアプリケーションから、クリップボードを使用するように切り替える必要があり、また、コンテンツを受信するアプリケーション／ウェブサイトは、共有をサポートするためにクリップボードを用いてコピー・アンド・ペーストを行うことを特定的に可能としない。コンテンツ・シェアリングのために特定的に可能とすることが欠如しているので、ドラッグ・アンド・ドロップも同様に制限され、その結果として、ユーザは、煩わしさを感じ、非能率的であると感じる。エクスプローラーを使用する場合、共有するコンテンツをローカルに記憶するために必要なステップを行い、共有は、エクスプローラーからのみ可能であり、ウィンドゥズ・アプリケーションにより表される何れのコンテンツに関しても可能ではない。共有のためのブラウザ・プラグインも、同様に、ブラウザ内でのみ動作するように制限され、ウィンドゥズ・アプリケーションにより表されるコンテンツに対して作用するように拡張できない。
【０００４】
[0003]  この背景は、以下に記載する概要および詳細な説明のために、簡単に状況を紹介するものである。この背景は、特許請求の範囲に記載の主題事項の範囲を限定する際の支援とすることを意図しておらず、また、特許請求の範囲に記載の主題事項を、上記の欠点や問題の幾つかまたは全てを解決する実施形態に限定するものと見られることを意図していない。
【発明の概要】
【０００５】
[0004]  オペレーティング・システムは、例えば、パーソナル・コンピュータ、タブレット・コンピュータ、スマートフォンなどのような計算プラットフォームで実行される複数のアプリケーションの間でのブローカ・コンテンツ（broker contents）の共有に関しての、拡張可能な共有アクションを提供する。共有アクションは、全てのアプリケーションにわたってコンテンツ・シェアリングが実施されることを首尾一貫してユーザが経験することを可能とし、また、コンテンツを共有するために、ユーザが使用中の現在のアプリケーションから他の機能へ切り替えることを不要にする。アプリケーションは、ソース・アプリケーションおよび／またはターゲット・アプリケーションとして、オペレーティング・システムの共有アクションに参加することができる。ユーザが共有アクションを呼び出すことを選択した場合、ソース・アプリケーションは、現在の状態において共有可能なコンテンツを記述する。ターゲット・アプリケーションは、コンテンツ・タイプに従って、共有されるコンテンツをソース・アプリケーションから受信するように構成でき、ユーザに対して、共有を容易にするように特定的に調整されたコンパニオン・ビューを表示する。
【０００６】
[0005]  様々な例において、ターゲット・アプリケーションは、受け入れ可能なコンテンツ・タイプを登録し、ターゲット・アプリケーションの開発者は、コンテンツ・シェアリングの間にプラットフォームで実行されるアプリケーションの、特定的に調整されたコンパニオン・ビューを構築する責務を負う。ユーザは、何れの時に何れからも（例えば、デスクトップ、全てのユーザ・インターフェース（ＵＩ）、全てのアプリケーションから）使用できるアクション・スペース（アクション区域）を呼び出すことにより、共有アクションへアクセスできる。アクション・スペースは、コンシステント・エントリ・ポイント（一貫性のあるエントリ・ポイント）をシステム・アクションのセットへ提供するものであり、システム・アクションの１つが共有アクションである。従って、ユーザが、ピクチャ・ビューワなどのようなソース・アプリケーションを用いてピクチャを見ており、アクション・スペースから共有アクションを選択した場合、コンテンツ・タイプ毎（例えば、この例では写真）の、共有可能コンテンツを受け入れ可能なターゲット・アプリケーションのフィルタリング済みリストが、共有ＵＩに表示される。ターゲット・アプリケーションは、様々なアプリケーションのうちの任意のものを含むことができ、例えば、ソーシャル・ネットワーク、Ｅメール、フォト・シェアリング、他の通信アプリケーションなどを含むことができる。ターゲット・アプリケーションは、様々な共有エンドポイントとのコンテンツ・シェアリングを容易にし、共有エンドポイントは、ウェブ・サイト、個人、複数の人、カテゴリに属する人などを含む。
【０００７】
[0006]  ユーザがリストからターゲット・アプリケーションを選択すると、オペレーティング・システムは、そのアプリケーションのコンパニオン・ビューを起動し、ユーザは、そのアプリケーションにおける共有を完了させる。この対話は、ソース・アプリケーションとターゲット・アプリケーションとが互いに認識する必要がないことを意味し、それらのアプリケーションは、ソース・アプリケーションとして提供できる又はターゲットとして受け入れできる共有可能コンテンツを記述することにより、単にこの共有パラダイムに参加するだけである。オペレーティング・システムは、この共有に関してブローカ（仲介手段）として働き、コンテンツと、場合によってはコンテンツ特性やメタデータなどのような他の情報とをソース・アプリケーションからターゲット・アプリケーションへ送る。ユーザの共有アクションが完了すると、ターゲット・アプリケーションは、コンパニオン・ビューのＵＩを閉じるように、メッセージをオペレーティング・システムへ送る。また、ターゲット・アプリケーションは、ユーザが今完了させたアクションを記述するショートカットを、送り戻すことができる。ユーザが次の共有を行うときに、共有ＵＩにおいて、そのショートカットを、頻繁に使用されるユーザ・アクションのリストの一部としてユーザに呈示することができる。ターゲット・アプリケーションは、共有されたコンテンツを、適切な共有エンドポイントへ、例えば、バックグラウンド・プロセスでアップロードすることができる。
【０００８】
[0007]  好適なことに、この共有アクションは、ユーザが、実行中のことから離れることや、別のアプリケーションを開始させることや、ブラウザの他のタブを開くことを必要とせず、所与のアプリケーションとの対話のコンテキストを維持し、現在の技術を用いて共有を実現するための複数のステップを行うことを可能とする。特に、一般的な技術を使用した際の最適レベル未満の経験と比較して、ターゲット・アプリケーションのコンパニオン・ビューの使用は、ＵＩおよび共有のための機能を調整することにより、共有の際のユーザ経験を更に改善する。
【０００９】
[0008]  この概要は、下記の詳細な説明に更に記載する概念のうちの選択したものを簡略化した形で紹介するものである。この概要は、特許請求の範囲に記載の主題事項の鍵となる特徴や本質的な特徴を特定するものではなく、また、特許請求の範囲に記載の主題事項の範囲を決定する際の支援として使用することを意図していない。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の共有のための拡張可能システム・アクションを実施できる例示的な計算環境を示す。
【図２】図２は、計算プラットフォームおよびローカル・キャプチャ・デバイスで実行でき、典型的にはソフトウェアで実現される例示的な機能コンポーネントを示す。
【図３】図３は、オペレーティング・システムにより実施できる例示的なシステム・アクションを示す。
【図４】図４は、本発明の共有のための拡張可能システム・アクションにより共有を容易にされて、発見されたコンテンツまたはローカルに生成／捕獲されたコンテンツが共有エンドポイントと共有される例示的な構成を示す。
【図５】図５は、ソース・アプリケーションからターゲット・アプリケーションへのデータ・バンドルの転送を容易にするためにブローカとして動作するオペレーティング・システムの動作を例示する。
【図６】図６は、ユーザがコンテキストに残りつつもコンテンツを共有することを可能にするための、例示的な共有の作業の流れを示す。
【図７】図７は、例示的なウィンドゥを示し、そのウィンドゥにおいて、コンパニオン・アプリケーションがそのユーザ・インターフェース（ＵＩ）を描画する。
【図８】図８は、計算プラットフォームで実行される例示的なＵＩを示し、ＵＩは、１組のシステム・アクションを起動するために、アクション・スペースに配される１組のアイコンを含み、システム・アクションの１つは共有アクションである。
【図９】図９は、共有のためのシステム・アクションにより提供される例示的なＵＩを示す。
【図１０】図１０は、共有ショートカットと関連する例示的な作業の流れを示す。
【図１１】図１１は、コンテンツ・シェアリングを容易にするために起動されるコンパニオン・アプリケーションによりサポートされる様々なＵＩスクリーンを示す。
【図１２】図１２は、ターゲット・アプリケーションによりバックグラウンド・プロセスとして行われるアップロードと関連する作業の流れを示す。
【図１３】図１３は、オペレーティング・システムが、シャットダウンを免除されるプロセスのリストへターゲット・アプリケーションを付加する際に用いる例示的な方法を示す。
【発明を実施するための形態】
【００１１】
[0022]  図面において、同じ参照番号は同じエレメントを示す。エレメントは、特に示していない場合には、尺度を考慮して描かれていない。
【００１２】
[0023]  図１は、共有のための拡張可能システム・アクションを実施できる例示的な計算環境１００を示し、計算環境１００は、個々の計算プラットフォーム１１０１，２，・・・Ｎと対話する複数のユーザ１０５１，２，・・・Ｎを含む。計算プラットフォーム１１０は、この例では、様々なデバイスのうちの任意のもの、例えば、デスクトップＰＣ、ラップトップＰＣ、ゲーム・コンソール、モバイルフォン、スマートフォン、パーソナルＥメール・デバイス、パーソナル・メディア・プレーヤ、パーソナル・デジタル・アシスタント、ＧＰＳ（グローバル・ポジショニング・システム）デバイス、タブレット・コンピュータ、デジタル・カメラなどを含む。
【００１３】
[0024]  示されるように、ユーザ１０５は、インターネット１１５などのような公衆ネットワーク・インフラストラクチャを用いて、互いに通信し、また、ワールド・ワイド・ウェブ上の様々なサービスと対話する。この例におけるサービスは、ニュース・サービス１２０１、ソーシャル・ネットワーク・サービス１２０２、フォト・シェアリング（写真共有）・サービス１２０３、および参照番号１２０Ｎにより代表的に示す様々な他のサービスまたはウェブサイトを含む。
【００１４】
[0025]  図２は、一般に１以上の計算プラットフォーム１１０で実行される様々な例示的な機能コンポーネント２０５を示す。図２に示すコンポーネントは、全てのコンポーネントを網羅するものではなく、特定の実施における要求を満たすために、必要に応じて他のコンポーネントも所与のプラットフォームにおいてサポートまたは実行され得ることを、留意されたい。多くの場合において、コンポーネント２０５は、１以上の機械読取可能媒体に記録されるソフトウェア命令により表されるコードを用いて実施されるが、コンポーネントは、ファームウェア、ハードウェア、またはソフトウェアとファームウェアとハードウェアとの様々な組み合わせや部分的組み合わせを用いて実施することもできる。示されるように、コンポーネント２０５は、アプリケーション２１０とオペレーティング・システム２１５とを含む。アプリケーション２１０は、例示的には、ウェブ・アプリケーション２１０１、ローカル・アプリケーション２１０２、クライアント−サーバ・アプリケーション２１０３、および他のアプリケーション２１０Ｎを含む。
【００１５】
[0026]  オペレーティング・システム２１５は、この例では、様々なアクション２２０を行うように、および様々なインターフェース２２５を表示するように、構成される。アクション２２０については、図３と関連して更に詳細に説明する。インターフェース２２５は、例えば、アプリケーション２１０がローカル・キャプチャ・デバイス２３０と通信することを可能にするドライバを含むことができ、ローカル・キャプチャ・デバイス２３０は、デジタル・カメラ２３０１、ウェブ・カメラ２３０２、スキャナ２３０Ｎなどである。
【００１６】
[0027]  オペレーティング・システム２１５は、典型的には、計算プラットフォーム１１０の各インスタンスにおいて同一に構成されないことに、留意されたい。換言すると、多くの差異の中でも特に、所与のプラットフォームの要求に従って、オペレーティング・システム２１５によりインプリメントされるフィーチャ、機能、構造、および方法における差異があることが想定される。しかし、共有のためのシステム・アクションの原理は、様々なオペレーティング・システムに適応させることができる。即ち、共有アクションは、様々なオペレーティング・システム、計算プラットフォーム、使用シナリオ、および環境に対して容易に適応させることができる。
【００１７】
[0028]  図３は、オペレーティング・システム２１５（図２）により実施可能な１組の例示的なシステム・アクション２２０を示す。示されるように、システム・アクション２２０の幾つかは、参照番号３０５で示されるグループ（即ち、システム・アクション２２０のサブセット）に含まれ、それらのシステム・アクションは、以下で更に説明するアクション・スペースを介して、ユーザ１０５に対して示される特定の作業の流れ（ワークフロー）へのコンシステント・エントリ・ポイントを提供する。これらのシステム・アクションは、例として、共有３０５１、お気に入り３０５２、サーチ３０５３、および他のアクション３０５Ｎを含む。これらのアクションは個々に、共有すること、別のデバイスへ接続すること、サーチすること、および他の機能を行うことを、ユーザが実施することを容易にする。アクション・スペースに表示されるこのシステム・アクションのサブセット３０５は、典型的には、任意の時点でコンピュータ上の何れの場所からでも、ユーザ１０５により呼び出すことができる。オペレーティング・システム２１５は、典型的には、本発明の開示範囲外の他のアクション３１０を実施することもできる。
【００１８】
[0029]  図４は例示的な構成４００を示し、この構成４００において、オペレーティング・システム２１５および共有アクション３０５１により共有が容易にされ、発見されたコンテンツ４０５またはローカルに生成／捕獲されたコンテンツ４１０が、共有されるコンテンツ（共有コンテンツ）４１５として、ユーザ１０５から、参照番号４２０により集合的に示す共有エンドポイントへ提供される。例えば、発見されたコンテンツ４０５は、ウェブ・サーフィンを行っているときにユーザ１０５により特定できるものである。ローカルに生成／捕獲されたコンテンツ４１０は、デジタル・カメラで捕獲できるものや、計算プラットフォーム１１０でワードプロセッサや描画アプリケーションなどのようなアプリケーションを用いて生成できるものである。従って、共有コンテンツ４１５は、ＨＴＭＬ（ハイパー・テキスト・マークアップ・ランゲージ）などのようなリンク４１５１、写真４１５２、ビデオ４１５３、文書４１５４、および参照番号４１５Ｎで示される様々なタイプの他のファイルを含むことができる。
【００１９】
[0030]  図５に示すように、アプリケーション２１０は、ソース・アプリケーション５０５とターゲット・アプリケーション５１０との双方を含むことができる。所与のアプリケーションの開発者の要望に応じて、アプリケーション２１０は、ソース・アプリケーション５０５およびターゲット・アプリケーション５１０とすること、またはソース・アプリケーション５０５またはターゲット・アプリケーション５１０とすること、またはソース・アプリケーション５０５でもターゲット・アプリケーション５１０でもないものとすることができる。ソース・アプリケーション５０５となるためには、アプリケーションは、単に、ユーザによる共有の選択に応答して共有可能コンテンツを提供できることを、登録する。その登録は、例えば、実行時宣言（runtime declaration）として実施でき、その場合、ソース・アプリケーションは、ソース・アプリケーションの所与のインスタンスにおける状態に個々に応じて、登録するようにおよび登録しないようにすることができる。例えば、或る状態において、ソース・アプリケーションは共有できるコンテンツを有し、別の状態において、ソース・アプリケーションはそのような共有可能コンテンツを有さない。幾つかの場合においては、ソース・アプリケーション５０５は、それ自体により共有可能コンテンツを生成する必要がない。なぜなら、オペレーティング・システム２１５は、スクリーン・ショットなどのようなシステム・オプションまたはアクションを用いてコンテンツ・キャプチャを提供できるからである。また、ターゲット・アプリケーション５１０は、受け入れ可能なコンテンツ・タイプを登録し、それにより、図６に示し且つ図６と関連して説明した共有のワークフローの中で、ターゲット・アプリケーションのフィルタリング済みリストをユーザ１０５へ呈示することができる。典型的には、その登録は、ターゲット・アプリケーション５１０が計算プラットフォーム１１０へインストールされるときに、行われる。
【００２０】
[0031]  図５に示すように、共有アクション３０５１の呼び出しを通じて、オペレーティング・システム２１５は、本質的に、共有コンテンツ４１５へのリファレンス５２０をソース・アプリケーション５０５からターゲット・アプリケーション５１０へ送ることを容易にするための、ブローカ（参照番号５１５で示す）として働く。そのようなブローカは、好都合に、ソース・アプリケーション５０５とターゲット・アプリケーション５１０とが互いの知識を有することを必要としないようにする。コンテンツ・シェアリングは、単に、上記の共有可能コンテンツのタイプの登録を通じて実施できる。更に、オペレーティング・システムによりサポートされる機能としてシェアリング（共有）を実施することにより、共有アクションは、オペレーティング・システムがインストールされた計算プラットフォームに固有のものとなり、ユーザは、共有アプリケーションを計算プラットフォームへインストールすることを除いて（幾つかの場合、共有アプリケーションはプリインストールされる）、典型的には、シェアリングを用いるための特別のプログラムをインストールする必要がなく、また、複雑なコンフィギュレーション設定を行う必要もない。更には、将来に開発または実施され得る他の通信機構が現在の共有パラダイムに従うかぎり、オペレーティング・システムにおける共有機能をインスタンス化（instantiating）することにより、そのような通信機構に対しての拡張性も確実なものとする。
【００２１】
[0032]  この例において、共有コンテンツ４１５はデータ・バンドル・リファレンス５２０ごとに照会（問い合わせ）され、従って、共有コンテンツ４１５と関連するプロパティおよび／またはメタデータ（参照番号５２５で示す）もまた、ターゲット・アプリケーション５１０へ送られる。そのプロパティ／メタデータ５２５は、例えば、リンクされたウェブ・ページのタイトルや他の記述データを含むことができる。リファレンス５２０は、オペレーティング・システム２１５により受信され、ターゲット・アプリケーション５１０へ送られ、ターゲット・アプリケーション５１０によりそのデータ・バンドルが読まれる。
【００２２】
[0033]  図６は、ユーザ１０５（図１）が、別のアプリケーションへの切り替えを必要とせずにコンテキストに残りつつ、コンテンツを共有することを可能にする、例示的な共有のワークフロー６００を示す。ソース・アプリケーション５０５を用いて作業を行っているとき、ユーザ１０５は、参照番号６０５で示すようにアクション・スペースを開き、ワークフローへのコンシステント・エントリ・ポイント３０５（図３に示され、且つ図３と関連して説明）をユーザに対して表示させることができる。幾つかの場合には、アクション・スペースは、例えば、専用のハードウェア・キーを用いて開くことができ、別の場合には、アクション・スペースは、ソフトウェア・コマンドを使用して開くことや、計算プラットフォームのタッチスクリーンの所定部分での指を用いたスワイプ動作などのような所定のジェスチャを用いて開くことができ、また、アクション・スペースは、ユーザ１０５が共有を望んでいるであろうことを共有アプリケーションが検出したときに、共有アプリケーションのアクションを介して自動的に開くようにすることもできる。典型的には、アクション・スペースは使用可能なシステム・アクションをグラフィックで表示し、この例では、使用可能なシステム・アクションに共有アクションが含まれている。ソース・アプリケーション５０５は、幾つかの場合にはオプションとして、ユーザ１０５が共有されるコンテンツを明確に特定することを可能にするように、構成される。しかし、そのようなオプションの構成は必要とされない場合が多いことに留意されたい。なぜなら、ソース・アプリケーション５０５により表示される共有コンテンツは、ユーザ１０５からの明確なアクションが無くとも容易に特定できると想定されるからである。例えば、幾つかの場合において、ユーザとソース・アプリケーション５０５との対話は、それ自体が十分なコンテキストを提供し、正確に共有コンテンツを特定することを可能とする。
【００２３】
[0034]  代替の実施形態では、ソース・アプリケーションにより共有ボタンを提供することができる。その場合、共有は、オペレーティング・システムによりサポートされるコンシステント・エントリ・ポイントのアクション・スペースを使用するのではなく、ソース・アプリケーション内から、ユーザ１０５により開始することができる。
【００２４】
[0035]  参照番号６１０で示すようにユーザが共有アクションを選択すると、ターゲット・ピッカー（target picker）６２０が表示され、それにより、ユーザ１０５は共有エンドポイント４２０（図４）を特定することができる。参照番号６２５で示されるように、ユーザは、典型的には、表示されたショートカット（以下で更に詳細に説明する）およびターゲット・アプリケーション５１０のリストから選択肢となっているものを選ぶことにより、共有エンドポイントを特定することができる。ショートカットおよびターゲット・アプリケーション５１０は、オペレーティング・システム２１５によりフィルタリングされ、それによって、ソース・アプリケーション５０５により提供されるコンテンツ・タイプを受信するように登録されているショートカットおよびターゲット・アプリケーションのみが、ターゲット・ピッカー６２０に表示される。
【００２５】
[0036]  ユーザ１０５が、共有するショートカット／ターゲット・アプリケーションを選択すると、ターゲット・アプリケーション５１０は、コンパニオン・アプリケーション（companion application）を起動し、コンパニオン・アプリケーションは共有スクリーン６３０（即ち、ＵＩ）をユーザに呈示する。図７に示すように、オペレーティング・システム２１５は描画ウィンドゥ７０５を提供し、この描画ウィンドゥに、コンパニオン・アプリケーション（参照番号７１０で示す）はそのＵＩを描くことができる。コンパニオン・アプリケーション７１０を通じてターゲット・アプリケーションがそれ自体のＵＩを描くことを可能とすることにより、更なる通信アプリケーションおよび機構に対しての共有アクションの拡張性が更に改善されることを期待できる。共有アクションの多くの典型的な実施では、コンパニオン・アプリケーション７１０は、小型軽量であり焦点を合わされたアプリケーションとして構成され、迅速に動作するものであり、システムのリソースに与える影響も小さい。
【００２６】
[0037]  図６を再び参照する。共有スクリーン６３０は、共有コンテンツとＵＩ制御オブジェクト（参照番号６４０で集合的に示す）とのプレビューを、ユーザ１０５に提供するものであり、ＵＩ制御オブジェクトは、例えば、ユーザが共有を実行することを可能にするために、また、幾つかの場合には、共有コンテンツヘ付随させる注釈、コメント、または他の入力を提供するために、使用される。
【００２７】
[0038]  オプションとして、参照番号６３５で示されるように、共有スクリーン６３０はまた、共有コンテンツを受信する特定の人をユーザ１０５が選択できるようにするインターフェースを表示することができる。
【００２８】
[0039]  参照番号６４５により示されるように、ユーザが、コンテンツの共有を実行すると、コンパニオン・アプリケーションにより提供される共有スクリーン６３０は隠され、参照番号６５０により示されるように、ワークフローの制御はソース・アプリケーション５０５へ戻される。従って、本発明における共有アクションは、ユーザ１０５が、ソース・アプリケーション５０５により与えられたコンテキストから離れることを必要とせずに、コンテンツを共有するための幾つかの簡単なステップを行うことを、可能とする。
【００２９】
[0040]  図８は、タブレット・コンピュータ１１０３のディスプレイスクリーン８０５においてサポートされている例示的なＵＩ８００を示す。なお、タブレット・コンピュータを例示的に示しているが、他のデバイス用のＵＩも、実質的に同様に表示されて機能することに留意されたい。ＵＩ８００は、１組のシステム・アクションを起動させるためにアクション・スペース８１５に配された１組のアイコンを含み、それらのシステム・アクションのうちの１つは共有アクションであり、ユーザがボタン８２０を操作して呼び出すことができる。この例では、示されているように、アクション・スペース８１５は、ＵＩウィンドゥの右縁に沿って配されている。しかし、特定の実施において必要に応じて、他の構成のアクション・スペースを使用することもできる。この例では、ユーザ１０５は、ビューワ・ウィンドゥ８２５を用いてイメージ・ビューワを実施しているソース・アプリケーション５０５と、対話している。ビューワ・ウィンドゥ８２５は、ピラミッド群の写真を表示しており、従って、ユーザ１０５が共有したいコンテンツを表している。
【００３０】
[0041]  アクション・スペース８１５から共有ボタン８２０を操作して作動させると、図９において参照番号９０５で示されるようなターゲット・ピッカーがＵＩ８００に表示される。アクション・スペース８１５（図８）と同様に、ターゲット・ピッカー９０５のグラフィックの構成も、例示したものから変更することができる。この例では、サムネイル９１０が表示され、それにより、選択されたコンテンツが共有されることをユーザ１０５が視覚的に確認できるようにする。コンテンツ・タイトル９１５や、参照番号９２０で示される記述情報やメタデータなどのような追加情報も、表示することができる。
【００３１】
[0042]  また、ターゲット・ピッカー９０５は、参照番号９２５により示されるショートカットのリストと、参照番号９３０により示される共有アプリケーションのリストとを表示する。共有アプリケーションにおけるショートカットの呈示は変更することができるが、典型的には、アイコンおよび関連する記述テキストを含むことができる。ショートカット９３５（図９では拡大図が示されている）は、ユーザ１０５が過去に、例えば、Ｆａｃｅｂｏｏｋ（登録商標）などのようなソーシャル・ネットワーク・サイトのユーザの掲示板へ投稿されたコンテンツを共有することにより行われた共有アクションを表す。同様に、共有アプリケーション９４０（図９では拡大図が示されている）は、ユーザ１０５が、Ｅメールを用いて共有エンドポイントへ選択されたコンテンツを送るために行える共有アクションを表し、これは、この例ではＨｏｔｍａｉｌ（登録商標）によりサポートされている。ターゲット・アプリケーションとしてのＦａｃｅｂｏｏｋ（登録商標）およびＨｏｔｍａｉｌ（登録商標）がターゲット・ピッカー９０５に表示されている。なぜなら、それらは、写真コンテンツを受信できるものとして登録されているからである。それに対して、写真コンテンツを受信できないターゲット・アプリケーション（例えば、テキスト・ベースのインスタント・メッセージ・アプリケーション）は、この例ではターゲット・ピッカー９０５により表示されない。
【００３２】
[0043]  図１０は、共有ショートカット９２５（図９）のうちの１つのものと関連する例示的なワークフロー１０００を示す。ここでは、参照番号１００５で示されるように、ソース・アプリケーション５０５は、共有コンテンツをターゲット・アプリケーション５１０へ送る。ターゲット・アプリケーション５１０は、参照番号１０１０で示されるように、ユーザのアクションについてのアクション詳細をオペレーティング・システム２１５へ報告する。オペレーティング・システム２１５は、参照番号１０１５により示されるように、ターゲット・アプリケーション５１０からの報告を使用して、頻繁に使用されるアクションのリストを生成し、そのリストは、共有ショートカット９２５のために使用される。
【００３３】
[0044]  図１１は、図９に示すＨｏｔｍａｉｌ（登録商標）アプリケーションに対するコンパニオン・アプリケーションによりサポートされる一連のＵＩスクリーン１１０５、１１１０、１１１５を示す。コンパニオン・アプリケーションは、ユーザ１０５（図１）によりアイコン９４０が選択されたときに起動され、最初に、ＵＩスクリーン１１０５を表示して、ユーザ１０５により最近行われたＥメール通信の受信者のリスト１１２０を表示する。意図した共有エンドポイントがリスト１１２０に表示されていない場合、ユーザ１０５は、ボタン１１２５を操作して作動させ、ＵＩスクリーン１１１０に示しているユーザのＨｏｔｍａｉｌ（登録商標）アドレス帳をプル・アップする（引き上げる）ことができる。この例では、アドレス帳は、ユーザがＥメール・アドレスをアルファベット順に捜すことを可能にするための、典型的なアイコン１１３０を含む。従って、多数のＥメール・アドレス１１３５が表示され、それらは、この例では、拡大図で示されている文字「Ａ」１１４０と関連するものである。ユーザ１０５は、アドレス帳を用いて作業を行うことにより共有コンテンツの受信者を選択することができ、それらの受信者は、参照番号により示すように、ＵＩスクリーン１１１５で確認される。コンパニオン・アプリケーションは、追加のインターフェースをサポートして、共有コンテンツヘ付随させる注釈、コメント、または他の入力をユーザ１０５が提供することを可能にする。この例の場合、参照番号１１５０により示されるように、ユーザ１０５は、コンパニオン・アプリケーションにより提供されるテキスト入力ウィンドゥへ、短い文章を入力している。
【００３４】
[0045]  ユーザ１０５は、コンテンツを共有する準備が完了すると、共有ボタン１１５５を操作して作動させ、共有アクションを完了させる。図１２に示すワークフロー１２００に示すように、共有ボタン１１５５を作動させると、コンパニオン・アプリケーションによりサポートされるＵＩは閉じられ（参照番号１２０５により示す）、ターゲット・アプリケーション５１０は、共有コンテンツと関連するデータ・バンドルを、選択された共有エンドポイント４２０へ、典型的にはバックグラウンド・プロセスでアップロードする（参照番号１２１０により示す）。
【００３５】
[0046]  アップロード処理をバックグラウンド・プロセスで実施することにより、ユーザ１０５は、ソース・アプリケーション５０５（図５）へ迅速に戻ることができ、それにより、ソース・アプリケーションと関連するユーザ経験のコンテキストが維持される。図１３に示すように、共有アクションの挙動に関してのユーザ１０５の期待に添うようにバックグラウンドでのアップロードが完了することを確実なものとするために、共有エンドポイント４２０へのアップロード処理と現在関係しているターゲット・アプリケーションのアイデンティティを、オペレーティング・システム２１５のアクションを介して、シャットダウンを免除されるプロセスのリスト１３０５へ付加する。また、関連するソース・アプリケーション５０５もリスト１３０５へ付加することができる。例えば、ターゲット・アプリケーション５１０が大きいデータ・バンドルを読み取り中の場合、その読み取りは、ソース・アプリケーションが時期尚早にシャットダウンされることにより中断されることはない。ソース・アプリケーション５０５およびターゲット・アプリケーション５１０は、アップロードが完了するとリスト１３０５から除去される。
【００３６】
[0047]  主題事項を、構造の特徴および／または方法の動作に関して特定的な言語で説明したが、特許請求の範囲で定めた主題事項は、上記の特定の特徴および動作に必ずしも限定されないことが理解されるであろう。上記の特定の特徴および動作は、特許請求の範囲を実施する際の例として開示されている。
【図１】
0005933589.tif 000002
【図２】
0005933589.tif 000003
【図３】
0005933589.tif 000004
【図４】
0005933589.tif 000005
【図５】
0005933589.tif 000006
【図６】
0005933589.tif 000007
【図７】
0005933589.tif 000008
【図８】
0005933589.tif 000009
【図９】
0005933589.tif 000010
【図１０】
0005933589.tif 000011
【図１１】
0005933589.tif 000012
【図１２】
0005933589.tif 000013
【図１３】
0005933589.tif 000014