以下の説明は、例示的な方法、パラメータなどについて記載する。しかしながら、そのような説明は、本開示の範囲に対する限定として意図されるものではなく、むしろ例示的な実施形態の説明として提供されることを認識されたい。
オーディオデータを共有するための効率的な方法及びインタフェースを提供する電子デバイスが必要とされている。いくつかの実施形態では、一次デバイスが第1の無線デバイス(例えば、一次デバイスとペアリングされたペアの無線ヘッドホン)に接続されている間に、共有オーディオアフォーダンスの選択に応じて、一次デバイスは共有モードに入る。第2の無線デバイス(例えば、別のユーザのペアの無線ヘッドホン)が一次デバイスのごく近接に近づけられたことに応じて、第1の外部デバイスに同じオーディオデータを同時に提供しながら、一次デバイスが第2の外部デバイスとオーディオデータを共有するプロセスが開始される。いくつかの実施形態では、オーディオデータは、第2の外部デバイスと一時的に共有される。このことにより、ユーザは、例えば、一次デバイスと第2の外部デバイスとの間の既存の関係又は永続的関係を必要とせずに、オーディオを一緒に聴くことができるように、別の人と無線でオーディオを容易に共有することができる。いくつかの実施形態では、共有プロセスは、最初に共有オーディオアフォーダンスの選択を必要とすることなく、第2の外部デバイスを一次デバイスと近接させることによって開始される。オーディオデータを共有している間に、第1及び第2の外部デバイスの音量を制御するための例示的な技術もまた記載される。例えば、一次デバイスは、第2の外部デバイスとの接続の構成に基づいて音量制御インタフェースを提供することができる(例えば、第2の外部デバイスが第3の外部デバイス(例えば、電話機)によって制御されているかどうか)。オーディオを再生するためのデバイスを選択するための例示的な技術もまた記載される。例えば、オーディオメディアユーザインタフェースは、一次デバイスがオーディオを共有しているかどうかに基づいて音楽を再生する場所を選択するオプション(例えば、アフォーダンス)を提供する。このような技術は、オーディオデータを共有するユーザの認識的負担を軽減し、それにより、生産性を高めることができる。更に、そのような技術は、普通なら冗長なユーザ入力に浪費されるプロセッサ及びバッテリの電力を低減することができる。
以下、図1A~図1B、図2、図3、図4A~図4B、及び図5A~図5Hは、オーディオデータを共有するための手法を実行するための例示的なデバイスの説明を提供する。図6A~図6Rは、オーディオデータを共有するための例示的なユーザインタフェースを示す。図7~図8は、いくつかの実施形態に係る、オーディオデータを共有する方法を示すフロー図である。図6A~図6Rのユーザインタフェースは、図7~図8のプロセスを含む、後述のプロセスを示すために使用される。図9A~図9Eは、オーディオデータを共有するための例示的なユーザインタフェースを示す。図10は、いくつかの実施形態に係る、オーディオデータを共有する方法を示すフロー図である。図9A~図9Eのユーザインタフェースは、図10のプロセスを含む、後述のプロセスを示すために使用される。図11A~図11Fは、オーディオデータを共有するための例示的なユーザインタフェースを示す。図12は、いくつかの実施形態に係る、オーディオデータを共有する方法を示すフロー図である。図11A~図11Fのユーザインタフェースは、図12のプロセスを含む後述するプロセスを示すために使用される。
以下の説明では、様々な要素について説明するために、「第1の」、「第2の」などの用語を使用するが、これらの要素は、それらの用語によって限定されるべきではない。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、記載する様々な実施形態の範囲から逸脱することなく、第1のタッチを第2のタッチと呼ぶこともでき、同様に第2のタッチを第1のタッチと呼ぶこともできる。第1のタッチ及び第2のタッチはどちらもタッチであるが、これらは同じタッチではない。
本明細書に記載する様々な実施形態の説明で使用される術語は、特定の実施形態を説明することのみを目的とし、限定的であることは意図されていない。記載する様々な実施形態の説明及び添付の特許請求の範囲では、単数形の「a(1つ、一)」、「an(1つ、一)」、及び「the(その、この)」は、文脈上別途明白に記載しない限り、複数形も同様に含むことが意図される。また、本明細書で使用されるとき、用語「及び/又は」は、関連する列挙された項目のうちの1つ以上のいずれか及び全ての考えられる組み合わせを指し、且つこれを含むことを理解されたい。用語「includes(含む)」、「including(含む)」、「comprises(含む、備える)」、及び/又は「comprising(含む、備える)」は、本明細書で使用する場合、述べられた特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらのグループの存在又は追加を除外しないことが更に理解されるであろう。
「~の場合(if)」という用語は、任意選択的に、文脈に応じて、「~とき(when)」若しくは「~とき(upon)」、又は「~と判定したことに応じて(in response to determining)」若しくは「~を検出したことに応じて(in response to detecting)」を意味すると解釈される。同様に、「~と判定された場合(if it is determined)」又は「[記載の状態又はイベント]が検出された場合(if [a stated condition or event] is detected)」という語句は、任意選択的に、文脈に応じて、「~と判定したとき(upon determining)」若しくは「~と判定したことに応じて(in response to determining)」、又は「[記載の状態又はイベント]を検出したとき(upon detecting [the stated condition or event])」若しくは「[記載の状態又はイベント]を検出したことに応じて(in response to detecting [the stated condition or event])」を意味すると解釈される。
電子デバイス、そのようなデバイス用のユーザインタフェース、及びそのようなデバイスを使用する関連するプロセスの実施形態が説明される。いくつかの実施形態では、デバイスは、PDA機能及び/又は音楽プレーヤ機能などの他の機能も含む、携帯電話などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態としては、カリフォルニア州クパチーノのApple Inc.からのiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)のデバイスが挙げられるが、これらに限定されない。任意選択的に、タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を有するラップトップ又はタブレットコンピュータなどの他のポータブル電子デバイスも使用される。また、いくつかの実施形態では、デバイスはポータブル通信デバイスではなく、タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を有するデスクトップコンピュータであることも理解されたい。
以下の論考では、ディスプレイ及びタッチ感知面を含む電子デバイスについて説明する。しかしながら、電子デバイスは、任意選択的に、物理キーボード、マウス、及び/又はジョイスティックなどの1つ以上の他の物理ユーザインタフェースデバイスを含むことを理解されたい。
デバイスは、通常、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション、及び/又はデジタルビデオプレーヤアプリケーションのうちの1つ以上などの様々なアプリケーションをサポートする。
本デバイス上で実行される様々なアプリケーションは、タッチ感知面などの、少なくとも1つの共通の物理ユーザインタフェースデバイスを、任意選択的に使用する。タッチ感知面の1つ以上の機能、並びにデバイス上に表示される対応する情報は、アプリケーション毎に、及び/又はそれぞれのアプリケーション内で、任意選択的に、調整及び/又は変更される。このように、デバイスの共通の物理アーキテクチャ(タッチ感知面など)は、任意選択的に、ユーザにとって直観的且つ透明なユーザインタフェースを備える様々なアプリケーションをサポートする。
ここで、タッチ感知ディスプレイを備えるポータブルデバイスの実施形態に注意を向ける。図1Aは、いくつかの実施形態に係る、タッチ感知ディスプレイシステム112を有するポータブル多機能デバイス100を示すブロック図である。タッチ感知ディスプレイ112は、便宜上「タッチスクリーン」と呼ばれることがあり、「タッチ感知ディスプレイシステム」として知られている又は呼ばれることがある。デバイス100は、メモリ102(任意選択的に、1つ以上のコンピュータ可読記憶媒体を含む)、メモリコントローラ122、1つ以上の処理ユニット(CPU)120、周辺機器インタフェース118、RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、入出力(I/O)サブシステム106、他の入力コントロールデバイス116、及び外部ポート124を含む。デバイス100は、任意選択的に、1つ以上の光センサ164を含む。デバイス100は、任意選択的に、デバイス100上の接触の強度を検出する1つ以上の接触強度センサ165(例えば、デバイス100のタッチ感知ディスプレイシステム112などのタッチ感知面)を含む。デバイス100は、任意選択的に、デバイス100上で触知出力を生成する(例えばデバイス100のタッチ感知ディスプレイシステム112又はデバイス300のタッチパッド355などのタッチ感知面上で触知出力を生成する)1つ以上の触知出力生成器167を含む。これらの構成要素は、任意選択的に、1つ以上の通信バス又は信号ライン103を介して通信する。
本明細書及び特許請求において使用されるとき、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触(例えば、指の接触)の力若しくは圧力(単位面積当たりの力)、又はタッチ感知面上の接触の力若しくは圧力に対する代理(プロキシ)を指す。接触の強度は、少なくとも4つの別個の値を含み、より典型的には、数百の(例えば、少なくとも256の)別個の値を含む、値の範囲を有する。接触の強度は、任意選択的に、様々な手法、及び様々なセンサ又はセンサの組み合わせを使用して、判定(又は測定)される。例えば、タッチ感知面の下又はそれに隣接する1つ以上の力センサは、任意選択的に、タッチ感知面上の様々なポイントにおける力を測定するために使用される。いくつかの実装形態では、複数の力センサからの力測定値が、接触の推定される力を決定するために組み合わされる(例えば、加重平均される)。同様に、スタイラスの感圧性先端部が、任意選択的に、タッチ感知面上のスタイラスの圧力を判定するために使用される。あるいは、タッチ感知面上で検出される接触エリアのサイズ及び/若しくはその変化、接触に近接するタッチ感知面の電気容量及び/若しくはその変化、並びに/又は、接触に近接するタッチ感知面の抵抗及び/若しくはその変化が、任意選択的に、タッチ感知面上の接触の力又は圧力の代替物として使用される。一部の実装形態では、接触の力又は圧力の代替測定値が、強度閾値を上回っているかどうかを判定するために直接使用される(例えば、強度閾値は、代替測定値に対応する単位で記述される)。いくつかの実装形態では、接触力又は圧力の代理測定値は、力又は圧力の推定値に変換され、力又は圧力の推定値が、強度閾値を上回っているかどうかを判定するために使用される(例えば、強度閾値は、圧力の単位で測定される圧力閾値である)。接触の強度をユーザ入力の属性として使用することにより、アフォーダンスを表示する実装面積が限られている低減されたサイズのデバイス上で、ユーザが他の方法ではアクセス不可能であり得る追加のデバイス機能にユーザがアクセスすること(例えば、タッチ感知ディスプレイ上で)、及び/又は、ユーザ入力を受け取ること(例えば、タッチ感知ディスプレイ、タッチ感知面、又は、ノブ若しくはボタンなどの物理的/機械的コントロールを介して)が可能となる。
本明細書及び特許請求の範囲で使用されるように、用語「触知出力」は、ユーザの触覚でユーザによって検出されることになる、デバイスの従前の位置に対するそのデバイスの物理的変位、デバイスの構成要素(例えば、タッチ感知面)の、そのデバイスの別の構成要素(例えば、筐体)に対する物理的変位、又は、デバイスの質量中心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面(例えば、ユーザの手の指、手のひら、又は他の部分)に接触している状況では、物理的変位によって生成された触知出力は、そのデバイス又はデバイスの構成要素の物理的特性の認識される変化に相当する触感として、ユーザによって解釈されることになる。例えば、タッチ感知面(例えば、タッチ感知ディスプレイ又はトラックパッド)の移動は、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として、任意選択的に解釈される。場合によっては、ユーザの動作により物理的に押された(例えば、変位された)タッチ感知面に関連付けられた物理アクチュエータボタンの移動がないときでさえ、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じる。別の例として、タッチ感知面の移動は、タッチ感知面の平滑度に変化がない場合であっても、ユーザによって、そのタッチ感知面の「粗さ」として、任意選択的に解釈又は感知される。そのようなユーザによるタッチの解釈は、ユーザの個人的な感覚認知に左右されるが、大多数のユーザに共通する、多くのタッチの感覚認知が存在する。したがって、触知出力が、ユーザの特定の感覚認知(例えば、「アップクリック」「ダウンクリック」、「粗さ」)に対応するものと記述される場合、別途記載のない限り、生成された触知出力は、典型的な(又は、平均的な)ユーザの記述された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。
デバイス100は、ポータブル多機能デバイスの一例に過ぎず、デバイス100は、任意選択的に、示されているものよりも多くの構成要素又は少ない構成要素を有するものであり、任意選択的に、2つ以上の構成要素を組み合わせるものであり、又は、任意選択的に、それらの構成要素の異なる構成若しくは配置を有するものであることを理解されたい。図1Aに示す様々な構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアの両方の組み合わせで実施される。
メモリ102は、任意選択的に、高速ランダムアクセスメモリを含み、また任意選択的に、1つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステートメモリデバイスなどの不揮発性メモリを含む。メモリコントローラ122は、任意選択的に、デバイス100の他の構成要素によるメモリ102へのアクセスを制御する。
周辺機器インタフェース118は、デバイスの入力及び出力周辺機器をCPU120及びメモリ102に結合するために使用することができる。1つ以上のプロセッサ120は、メモリ102に記憶された様々なソフトウェアプログラム及び/又は命令セットを動作させる又は実行して、デバイス100のための様々な機能を実行し、データを処理する。いくつかの実施形態では、周辺機器インタフェース118、CPU120、及びメモリコントローラ122は、任意選択的に、チップ104などの単一のチップ上に実装される。いくつかの他の実施形態では、それらは別々のチップ上に任意選択的に実装される。
RF(radio frequency、無線周波数)回路108は、電磁信号とも呼ばれるRF信号を送受信する。RF回路108は、電気信号を電磁信号に又は電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。RF回路108は、任意選択的に、これらの機能を実行するための周知の回路を含み、それらの回路としては、限定するものではないが、アンテナシステム、RF送受信機、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュール(subscriber identity module、SIM)カード、メモリなどが挙げられる。RF回路108は、任意選択的に、ワールドワイドウェブ(World Wide Web、WWW)とも呼ばれるインターネット、イントラネット、並びに/又はセルラー電話ネットワーク、無線ローカルエリアネットワーク(local area network、LAN)及び/若しくはメトロポリタンエリアネットワーク(metropolitan area network、MAN)などの無線ネットワークなどのネットワークと、また他のデバイスと、無線通信によって通信する。RF回路108は、任意選択的に、短距離通信無線機などによって近距離通信(near field communication、NFC)フィールドを検出するよく知られている回路を含む。無線通信は、任意選択的に、それだけに限定されるものではないが、モバイル通信用グローバルシステム(Global System for Mobile Communications、GSM)、拡張データGSM環境(Enhanced Data GSM Environment、EDGE)、高速ダウンリンクパケットアクセス(high-speed downlink packet access、HSDPA)、高速アップリンクパケットアクセス(high-speed uplink packet access、HSUPA)、エボリューションデータオンリ(Evolution,Data-Only、EV-DO)、HSPA、HSPA+、デュアルセルHSPA(Dual-Cell HSPA、DC-HSPDA)、ロングタームエボリューション(long term evolution、LTE)、近距離通信(NFC)、広帯域符号分割多元接続(wideband code division multiple access、W-CDMA)、符号分割多元接続(code division multiple access、CDMA)、時分割多元接続(time division multiple access、TDMA)、Bluetooth(登録商標)、Bluetoothローエネルギー(Bluetooth Low Energy、BTLE)、ワイヤレスフィデリティ(Wireless Fidelity、Wi-Fi)(例えば、IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11n、及び/若しくはIEEE802.11ac)、ボイスオーバインターネットプロトコル(voice over Internet Protocol、VoIP)、Wi-MAX、電子メール用プロトコル(例えば、インターネットメッセージアクセスプロトコル(Internet message access protocol、IMAP)及び/若しくはポストオフィスプロトコル(post office protocol、POP))、インスタントメッセージング(例えば、拡張可能なメッセージング及びプレゼンスプロトコル(extensible messaging and presence protocol、XMPP)、インスタントメッセージング及びプレゼンスレベレイジングエクステンション用のセッション開始プロトコル(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions、SIMPLE)、インスタントメッセージング及びプレゼンスサービス(Instant Messaging and Presence Service、IMPS))、並びに/若しくはショートメッセージサービス(Short Message Service、SMS)、又は本明細書の出願日の時点でまだ開発されていない通信プロトコルを含む任意の他の適切な通信プロトコルを含む、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
オーディオ回路110、スピーカ111、及びマイクロフォン113は、ユーザとデバイス100との間のオーディオインタフェースを提供する。オーディオ回路110は、周辺機器インタフェース118からオーディオデータを受信し、このオーディオデータを電気信号に変換し、この電気信号をスピーカ111に送信する。スピーカ111は、電気信号を人間の可聴音波に変換する。また、オーディオ回路110は、マイクロフォン113によって音波から変換された電気信号を受信する。オーディオ回路110は、電気信号をオーディオデータに変換し、このオーディオデータを処理のために周辺機器インタフェース118に送信する。オーディオデータは、任意選択的に、周辺機器インタフェース118によって、メモリ102及び/若しくはRF回路108から取得され、且つ/又はメモリ102及び/若しくはRF回路108に伝送される。いくつかの実施形態では、オーディオ回路110はまた、ヘッドセットジャック(例えば、図2の212)を含む。ヘッドセットジャックは、オーディオ回路110と、出力専用ヘッドホン又は出力(例えば片耳又は両耳用のヘッドホン)及び入力(例えばマイクロフォン)の両方を備えるヘッドセットなどの着脱可能なオーディオ入出力周辺機器との間のインタフェースを提供する。
I/Oサブシステム106は、タッチスクリーン112及び他の入力コントロールデバイス116などのデバイス100上の入出力周辺機器を、周辺機器インタフェース118に結合する。I/Oサブシステム106は、任意選択的に、ディスプレイコントローラ156、光センサコントローラ158、深度カメラコントローラ169、強度センサコントローラ159、触覚フィードバックコントローラ161、及び、他の入力デバイス若しくはコントロールデバイス用の1つ以上の入力コントローラ160を含む。1つ以上の入力コントローラ160は、他の入力コントロールデバイス116からの電気信号の受信/他の入力コントロールデバイス116への電気信号の送信を行う。他の入力コントロールデバイス116は、任意選択的に、物理ボタン(例えば、プッシュボタン、ロッカボタンなど)、ダイヤル、スライダスイッチ、ジョイスティック、クリックホイールなどを含む。いくつかの代替的な実施形態では、入力コントローラ(単数又は複数)160は、任意選択的に、キーボード、赤外線ポート、USBポート、及びマウスなどのポインタデバイスのうちのいずれかに結合される(又はいずれにも結合されない)。1つ以上のボタン(例えば、図2の208)は、任意選択的に、スピーカ111及び/又はマイクロフォン113の音量制御のためのアップ/ダウンボタンを含む。1つ以上のボタンは、任意選択的に、プッシュボタン(例えば、図2の206)を含む。
全体が参照により本明細書に組み込まれる、2005年12月23日出願の米国特許出願第11/322,549号、「Unlocking a Device by Performing Gestures on an Unlock Image」、米国特許第7,657,849号に記載されているように、プッシュボタンの素早い押下は、任意選択的に、タッチスクリーン112のロックを解放し、又は任意選択的に、タッチスクリーン上のジェスチャを使用してデバイスをロック解除するプロセスを開始する。プッシュボタン(例えば、206)のより長い押下は、任意選択的に、デバイス100への電力をオン又はオフにする。ボタンのうちの1つ以上の機能性は、任意選択的に、ユーザによってカスタマイズ可能である。タッチスクリーン112は、仮想又はソフトボタン及び1つ以上のソフトキーボードを実装するために使用される。
タッチ感知ディスプレイ112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112からの電気信号の受信、及び/又はタッチスクリーン112への電気信号の送信を行う。タッチスクリーン112は、ユーザに対して視覚出力を表示する。この視覚出力は、グラフィック、テキスト、アイコン、動画、及びそれらの任意の組み合わせ(総称して「グラフィック」)を任意選択的に含む。いくつかの実施形態では、視覚出力の一部又は全ては、任意選択的に、ユーザインタフェースオブジェクトに対応する。
タッチスクリーン112は、触覚及び/又は触知接触に基づくユーザからの入力を受け入れるタッチ感知面、センサ、又はセンサのセットを有する。タッチスクリーン112及びディスプレイコントローラ156は、(メモリ102内の任意の関連モジュール及び/又は命令セットと共に)、タッチスクリーン112上で接触(及び任意の接触の移動又は中断)を検出し、検出された接触をタッチスクリーン112に表示されたユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)との対話に変換する。例示的な実施形態では、タッチスクリーン112とユーザとの間の接触点は、ユーザの指に対応する。
タッチスクリーン112は、任意選択的に、LCD(液晶ディスプレイ)技術、LPD(発光ポリマーディスプレイ)技術、又はLED(発光ダイオード)技術を使用するが、他の実施形態では、他のディスプレイ技術も使用される。タッチスクリーン112及びディスプレイコントローラ156は、任意選択的に、それだけに限定されるものではないが、容量性、抵抗性、赤外線、及び表面音波の技術、並びにタッチスクリーン112との1つ以上の接触点を判定する他の近接センサアレイ又は他の要素を含む、現在知られている又は今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触及びそのあらゆる移動又は中断を検出する。例示的な実施形態では、カリフォルニア州クパチーノのApple Inc.からのiPhone(登録商標)及びiPod Touch(登録商標)に見られるものなどの、投影型相互静電容量感知技術が使用される。
タッチスクリーン112のいくつかの実施形態におけるタッチ感知ディスプレイは、任意選択的に、それぞれ全体が参照により本明細書に組み込まれる、米国特許第6,323,846号(Westermanら)、同第6,570,557号(Westermanら)、及び/若しくは同第6,677,932号(Westerman)、並びに/又は米国特許出願公開第2002/0015024(A1)号に記載されているマルチタッチ感知タッチパッドに類似している。しかし、タッチスクリーン112はデバイス100からの視覚出力を表示するのに対して、タッチ感知タッチパッドは視覚出力を提供しない。
タッチスクリーン112のいくつかの実施形態におけるタッチ感知ディスプレイは、以下の出願、(1)2006年5月2日出願の米国特許出願第11/381,313号、「Multipoint Touch Surface Controller」、(2)2004年5月6日出願の米国特許出願第10/840,862号、「Multipoint Touchscreen」、(3)2004年7月30日出願の米国特許出願第10/903,964号、「Gestures For Touch Sensitive Input Devices」、(4)2005年1月31日出願の米国特許出願第11/048,264号、「Gestures For Touch Sensitive Input Devices」、(5)2005年1月18日出願の米国特許出願第11/038,590号、「Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices」、(6)2005年9月16日出願の米国特許出願第11/228,758号、「Virtual Input Device Placement On A Touch Screen User Interface」、(7)2005年9月16日出願の米国特許出願第11/228,700号、「Operation Of A Computer With A Touch Screen Interface」、(8)2005年9月16日出願の米国特許出願第11/228,737号、「Activating Virtual Keys Of A Touch-Screen Virtual Keyboard」、及び(9)2006年3月3日出願の米国特許出願第11/367,749号、「Multi-Functional Hand-Held Device」で説明されている。これらの出願は全て、全体が参照により本明細書に組み込まれる。
タッチスクリーン112は、任意選択的に、100dpiを超える動画解像度を有する。いくつかの実施形態では、タッチスクリーンは、約160dpiの動画解像度を有する。ユーザは、任意選択的に、スタイラス、指などの任意の適した物体又は付属物を使用して、タッチスクリーン112に接触する。いくつかの実施形態では、ユーザインタフェースは、指ベースの接触及びジェスチャを主に使用して動作するように設計されるが、これは、タッチスクリーン上の指の接触面積がより大きいため、スタイラスベースの入力ほど正確でない可能性がある。いくつかの実施形態では、デバイスは、指による粗い入力を、ユーザによって所望されているアクションを実行するための、正確なポインタ/カーソルの位置又はコマンドに変換する。
いくつかの実施形態では、タッチスクリーンに加えて、デバイス100は、任意選択的に、特定の機能をアクティブ化又は非アクティブ化するためのタッチパッドを含む。いくつかの実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知エリアである。タッチパッドは、任意選択的に、タッチスクリーン112とは別個のタッチ感知面又はタッチスクリーンによって形成されるタッチ感知面の拡張部である。
デバイス100は、様々な構成要素に電力を供給する電力システム162も含む。電力システム162は、任意選択的に、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにポータブルデバイス内での電力の生成、管理、及び分配に関連付けられた任意の他の構成要素を含む。
また、デバイス100は、任意選択的に、1つ以上の光センサ164を含む。図1Aは、I/Oサブシステム106内の光センサコントローラ158に結合された光センサを示す。光センサ164は、任意選択的に、電荷結合デバイス(charge-coupled device、CCD)又は相補的金属酸化物半導体(complementary metal-oxide semiconductor、CMOS)フォトトランジスタを含む。光センサ164は、1つ以上のレンズを通って投影された環境からの光を受信し、その光を、画像を表すデータに変換する。光センサ164は、撮像モジュール143(カメラモジュールとも呼ばれる)と連携して、任意選択的に、静止画像又は動画をキャプチャする。いくつかの実施形態では、光センサは、デバイスの前面にあるタッチスクリーンディスプレイ112とは反対側のデバイス100の裏面に位置し、したがってタッチスクリーンディスプレイは、静止画像及び/又は動画の取得のためのビューファインダとして使用することが可能である。いくつかの実施形態では、ユーザが他のテレビ会議参加者をタッチスクリーンディスプレイ上で見ている間に、ユーザの画像が、任意選択的に、テレビ会議のために入手されるように、光センサはデバイスの前面に配置される。いくつかの実施形態では、光センサ164の位置は、ユーザによって(例えば、デバイス筐体内でレンズ及びセンサを回転させることによって)変更することができ、したがって単一の光センサ164が、タッチスクリーンディスプレイと共に、テレビ会議にも静止画像及び/又は動画の取得にも使用される。
デバイス100は、任意選択的に、1つ以上の深度カメラセンサ175もまた含む。図1Aは、I/Oサブシステム106内の深度カメラコントローラ169に結合された深度カメラセンサを示す。深度カメラセンサ175は、環境からデータを受信して、視点(例えば、深度カメラセンサ)からのシーン内の対象物(例えば、顔面)の3次元モデルを作成する。いくつかの実施形態では、撮像モジュール143(カメラモジュールとも呼ばれる)と連携して、深度カメラセンサ175は、任意選択的に、撮像モジュール143によってキャプチャされた画像の異なる部分の深度マップを決定するために使用される。いくつかの実施形態では、ユーザが他のテレビ会議参加者をタッチスクリーンディスプレイ上で見る間に、任意選択的に、深度情報を有するユーザの画像をテレビ会議のために取得し、また、深度マップデータを有する自撮り画像をキャプチャするために、デバイス100の前面に深度カメラセンサが配置されている。いくつかの実施形態では、深度カメラセンサ175は、デバイスの背面に、あるいはデバイス100の背面及び前面に配置される。いくつかの実施形態では、深度カメラセンサ175の位置は、ユーザによって(例えば、デバイス筐体内でレンズ及びセンサを回転させることによって)変更することができ、したがって深度カメラセンサ175が、タッチスクリーンディスプレイと共に、テレビ会議にも静止画像及び/又は動画の取得にも使用される。
デバイス100はまた、任意選択的に、1つ以上の接触強度センサ165を含む。図1Aは、I/Oサブシステム106内の強度センサコントローラ159に結合された接触強度センサを示す。接触強度センサ165は、任意選択的に、1つ以上のピエゾ抵抗ひずみゲージ、容量性力センサ、電気力センサ、圧電力センサ、光学力センサ、容量性タッチ感知面、又は他の強度センサ(例えば、タッチ感知面上の接触の力(若しくは圧力)を測定するために使用されるセンサ)を含む。接触強度センサ165は、接触強度情報(例えば、圧力情報、又は圧力情報に対するプロキシ)を環境から受信する。いくつかの実施形態では、少なくとも1つの接触強度センサは、タッチ感知面(例えばタッチ感知ディスプレイシステム112)と並置される、又はそれに近接される。いくつかの実施形態では、少なくとも1つの接触強度センサは、デバイス100の前面に配置されたタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に配置される。
また、デバイス100は、任意選択的に、1つ以上の近接センサ166を含む。図1Aは、周辺機器インタフェース118に結合された近接センサ166を示す。あるいは、近接センサ166は、任意選択的に、I/Oサブシステム106内の入力コントローラ160に結合される。近接センサ166は、任意選択的に、全体が参照により本明細書に組み込まれる、米国特許出願第11/241,839号、「Proximity Detector In Handheld Device」、同第11/240,788号、「Proximity Detector In Handheld Device」、同第11/620,702号、「Using Ambient Light Sensor To Augment Proximity Sensor Output」、同第11/586,862号、「Automated Response To And Sensing Of User Activity In Portable Devices」、及び同第11/638,251号、「Methods And Systems For Automatic Configuration Of Peripherals」で記載されているように機能する。いくつかの実施形態では、多機能デバイスが、ユーザの耳の近くに置かれた場合(例えば、ユーザが電話をかけている場合)、近接センサは、タッチスクリーン112をオフにして無効化する。
デバイス100はまた、任意選択的に、1つ以上の触知出力生成器167を含む。図1Aは、I/Oサブシステム106内の触覚フィードバックコントローラ161に結合された触知出力生成器を示す。触知出力生成器167は、任意選択的に、スピーカ若しくは他のオーディオ構成要素などの1つ以上の電気音響デバイス、及び/又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力生成構成要素(例えば、デバイス上で電気信号を触知出力に変換する構成要素)などのエネルギーを直線の動きに変換する電気機械デバイスを含む。接触強度センサ165は、触知フィードバック生成命令を触覚フィードバックモジュール133から受信し、デバイス100のユーザが感知することが可能な触知出力をデバイス100上に生成する。いくつかの実施形態では、少なくとも1つの触知出力生成器は、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)と並置される、又はそれに近接しており、任意選択的に、タッチ感知面を垂直方向(例えば、デバイス100の表面の内/外)に、又は水平方向(例えば、デバイス100の表面と同じ平面内の前後)に移動させることによって、触知出力を生成する。いくつかの実施形態では、少なくとも1つの触知出力生成器センサは、デバイス100の前面に配置されたタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に配置される。
また、デバイス100は、任意選択的に、1つ以上の加速度計168を含む。図1Aは、周辺機器インタフェース118に結合された加速度計168を示す。あるいは、加速度計168は、任意選択的に、I/Oサブシステム106内の入力コントローラ160に結合される。加速度計168は、任意選択的に、どちらも全体が参照により本明細書に組み込まれる、米国特許出願公開第20050190059号、「Acceleration-based Theft Detection System for Portable Electronic Devices」、及び米国特許出願公開第20060017692号、「Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer」に記載されているように機能する。いくつかの実施形態では、情報は、1つ以上の加速度計から受信したデータの分析に基づいて、縦長表示又は横長表示でタッチスクリーンディスプレイに表示される。デバイス100は、加速度計(単数又は複数)168に加えて、磁気計並びにデバイス100の位置及び向き(例えば、縦方向又は横方向)に関する情報を取得するためのGPS(又はGLONASS又は他のグローバルナビゲーションシステム)受信機を任意選択的に含む。
いくつかの実施形態では、メモリ102内に記憶されているソフトウェア構成要素は、オペレーティングシステム126、通信モジュール(又は命令セット)128、接触/動きモジュール(又は命令セット)130、グラフィックモジュール(又は命令セット)132、テキスト入力モジュール(又は命令セット)134、全地球測位システム(Global Positioning System、GPS)モジュール(又は命令セット)135、及びアプリケーション(又は命令セット)136を含む。更に、いくつかの実施形態では、メモリ102(図1A)又は370(図3)は、図1A及び図3に示すように、デバイス/グローバル内部状態157を記憶する。デバイス/グローバル内部状態157は、現在アクティブ状態のアプリケーションがある場合に、どのアプリケーションがアクティブであるかを示すアクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチスクリーンディスプレイ112の様々な領域を占めているかを示す表示状態、デバイスの様々なセンサ及び入力コントロールデバイス116から取得した情報を含むセンサ状態、並びにデバイスの位置、及び/又は姿勢に関する位置情報のうちの1つ以上を含む。
オペレーティングシステム126(例えば、Darwin、RTXC、LINUX、UNIX(登録商標)、OS X、iOS、WINDOWS(登録商標)、又はVxWorksなどの組込み型オペレーティングシステム)は、全般的なシステムタスク(例えば、メモリ管理、記憶デバイス制御、電力管理など)を制御及び管理する様々なソフトウェア構成要素及び/又はドライバを含み、様々なハードウェア構成要素とソフトウェア構成要素との間の通信を容易にする。
通信モジュール128は、1つ以上の外部ポート124を介して他のデバイスとの通信を容易にし、RF回路108及び/又は外部ポート124が受信したデータを処理するための様々なソフトウェア構成要素をも含む。外部ポート124(例えば、ユニバーサルシリアルバス(Universal Serial Bus、USB)、FIREWIRE(登録商標)など)は、直接的に、又はネットワーク(例えばインターネット、無線LANなど)を介して間接的に、他のデバイスに結合するように適合されている。いくつかの実施形態では、外部ポートは、iPod(Apple Inc.の商標)デバイス上で使用される30ピンコネクタと同じ若しくは同様であり、且つ/又はそれに適合しているマルチピン(例えば、30ピン)コネクタである。
接触/動きモジュール130は、任意選択的に、タッチスクリーン112及び他のタッチ感知デバイス(例えば、タッチパッド又は物理クリックホイール)との接触を(ディスプレイコントローラ156と連携して)検出する。接触/動きモジュール130は、接触が生じたかどうかを判定すること(例えば、指ダウンイベントを検出すること)、接触の強度(例えば、接触の力若しくは圧力、又は接触の力若しくは圧力の代替物)を判定すること、接触の移動が存在するかどうかを判定し、タッチ感知面を横断する移動を追跡すること(例えば、指をドラッグする1つ以上のイベントを検出すること)、及び接触が停止したかどうかを判定すること(例えば、指アップイベント又は接触の中断を検出すること)などの、接触の検出に関する様々な動作を実行するための、様々なソフトウェア構成要素を含む。接触/動きモジュール130は、タッチ感知面から接触データを受信する。一連の接触データによって表される、接触点の移動を判定することは、任意選択的に、接触点の速さ(大きさ)、速度(大きさ及び方向)、及び/又は加速度(大きさ及び/又は方向の変化)を判定することを含む。これらの動作は、任意選択的に、単一の接触(例えば、1本の指の接触)又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用される。いくつかの実施形態では、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッド上の接触を検出する。
いくつかの実施形態では、接触/動きモジュール130は、ユーザによって動作が実行されたかどうかを判定するために(例えば、ユーザがアイコン上で「クリック」したかどうかを判定するために)、1つ以上の強度閾値のセットを使用する。いくつかの実施形態では、強度閾値の少なくとも1つのサブセットは、ソフトウェアパラメータに従って判定される(例えば、強度閾値は、特定の物理アクチュエータのアクティブ化閾値によって決定されるのではなく、デバイス100の物理ハードウェアを変更することなく調整することができる)。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイハードウェアを変更することなく、広範囲の既定閾値のうちのいずれかに設定することができる。加えて、いくつかの実装形態では、デバイスのユーザに、(例えば、個々の強度閾値を調整すること、及び/又は複数の強度閾値をシステムレベルのクリック「強度」パラメータによって一度に調整することによって)強度閾値のセットのうちの1つ以上を調整するソフトウェア設定が提供される。
接触/動きモジュール130は、任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターンを有する(例えば検出される接触の動き、タイミング、及び/又は強度が異なる)。したがって、ジェスチャは、任意選択的に、特定の接触パターンを検出することによって検出される。例えば、指タップジェスチャを検出することは、指ダウンイベントを検出し、それに続いて指ダウンイベントと同じ位置(又は実質的に同じ位置)(例えば、アイコンの位置)で指アップ(リフトオフ)イベントを検出することを含む。別の例として、タッチ感知面上で指スワイプジェスチャを検出することは、指ダウンイベントを検出し、それに続いて1つ以上の指ドラッグイベントを検出し、その後それに続いて指アップ(リフトオフ)イベントを検出することを含む。
グラフィックモジュール132は、表示されるグラフィックの視覚的な影響(例えば、輝度、透明度、彩度、コントラスト、又は他の視覚的特性)を変化させる構成要素を含む、タッチスクリーン112又は他のディスプレイ上にグラフィックをレンダリング及び表示する様々な既知のソフトウェア構成要素を含む。本明細書では、「グラフィック」という用語は、それだけに限定されるものではないが、文字、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクトなど)、デジタル画像、動画、アニメーションなどを含む、ユーザに表示することができる任意のオブジェクトを含む。
いくつかの実施形態では、グラフィックモジュール132は、使用されることになるグラフィックを表すデータを記憶する。各グラフィックには、任意選択的に、対応するコードが割り当てられる。グラフィックモジュール132は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィック特性データと共に、表示されることとなるグラフィックを指定する1つ以上のコードを受信し、次にディスプレイコントローラ156に出力する画面の画像データを生成する。
触覚フィードバックモジュール133は、触知出力生成器167によって使用される命令を生成するための様々なソフトウェア構成要素を含み、ユーザのデバイス100との対話に応じて、デバイス100上の1つ以上の位置での触知出力を生成する。
テキスト入力モジュール134は、任意選択で、グラフィックモジュール132の構成要素であり、様々なアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147、及びテキスト入力を必要とする任意の他のアプリケーション)でテキストを入力するためのソフトキーボードを提供する。
GPSモジュール135は、デバイスの場所を判定し、様々なアプリケーション内で使用するためにこの情報を提供する(例えば、場所ベースのダイアリングで使用するために電話138へ、ピクチャ/ビデオメタデータとしてカメラ143へ、及び気象ウィジェット、ローカルイエローページウィジェット、及び地図/ナビゲーションウィジェットなどの場所ベースのサービスを提供するアプリケーションへ)。
アプリケーション136は、任意選択的に、以下のモジュール(又は命令セット)又はそれらのサブセット若しくはスーパーセットを含む。
● 連絡先モジュール137(アドレス帳又は連絡先リストと呼ばれることもある)、
● 電話モジュール138、
● テレビ会議モジュール139、
● 電子メールクライアントモジュール140、
● インスタントメッセージング(Instant messaging、IM)モジュール141、
● トレーニングサポートモジュール142、
● 静止画像及び/又は動画用のカメラモジュール143、
● 画像管理モジュール144、
● 動画プレーヤモジュール、
● 音楽プレーヤモジュール、
● ブラウザモジュール147、
● カレンダーモジュール148、
● 任意選択的に、気象ウィジェット149-1、株価ウィジェット149-2、計算機ウィジェット149-3、アラーム時計ウィジェット149-4、辞書ウィジェット149-5、及びユーザによって入手された他のウィジェット、並びにユーザ作成ウィジェット149-6のうちの1つ以上を含むウィジェットモジュール149、
● ユーザ作成ウィジェット149-6を作成するためのウィジェットクリエータモジュール150、
● 検索モジュール151、
● 動画プレーヤモジュール及び音楽プレーヤモジュールを一体化した動画及び音楽プレーヤモジュール152、
● メモモジュール153、
● 地図モジュール154、並びに/又は、
● オンライン動画モジュール155。
任意選択的にメモリ102に記憶される他のアプリケーション136の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、連絡先モジュール137は、任意選択的に、アドレス帳に名前(単数又は複数)を追加すること、アドレス帳から名前(単数又は複数)を削除すること、電話番号(単数又は複数)、電子メールアドレス(単数又は複数)、住所(単数又は複数)、又は他の情報を名前に関連付けること、画像を名前に関連付けること、名前を分類して並べ替えること、電話番号又は電子メールアドレスを提供して、電話138、テレビ会議モジュール139、電子メール140、又はIM141による通信を開始及び/又は促進することなどを含めて、アドレス帳又は連絡先リスト(例えば、メモリ102又はメモリ370内の連絡先モジュール137のアプリケーション内部状態192内に記憶される)を管理するために使用される。
電話モジュール138は、RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、任意選択的に、電話番号に対応する文字シーケンスの入力、連絡先モジュール137内の1つ以上の電話番号へのアクセス、入力された電話番号の修正、それぞれの電話番号のダイヤル、通話の実行、並びに通話終了時の接続解除及び通話停止のために使用される。前述したように、無線通信は、任意選択的に、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
テレビ会議モジュール139は、RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、連絡先モジュール137、及び電話モジュール138と連携して、ユーザの指示に従ってユーザと1人以上の他の参加者との間のテレビ会議を開始、実行、及び終了するための実行可能な命令を含む。
電子メールクライアントモジュール140は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、ユーザの指示に応じて電子メールを作成、送信、受信、及び管理するための実行可能な命令を含む。画像管理モジュール144と連携して、電子メールクライアントモジュール140は、カメラモジュール143で撮影された静止画像又は動画画像を有する電子メールの作成及び送信を非常に容易にする。
インスタントメッセージングモジュール141は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、インスタントメッセージに対応する文字シーケンスの入力、以前に入力された文字の修正、(例えば、電話通信ベースのインスタントメッセージ向けのショートメッセージサービス(Short Message Service、SMS)若しくはマルチメディアメッセージサービス(Multimedia Message Service、MMS)プロトコル、又はインターネットベースのインスタントメッセージ向けのXMPP、SIMPLE、若しくはIMPSを使用する)それぞれのインスタントメッセージの送信、インスタントメッセージの受信、及び受信したインスタントメッセージの閲覧のための実行可能な命令を含む。いくつかの実施形態では、送信される及び/又は受信されるインスタントメッセージは、任意選択的に、MMS及び/又は拡張メッセージングサービス(Enhanced Messaging Service、EMS)でサポートされるようなグラフィック、写真、オーディオファイル、動画ファイル、及び/又は他の添付ファイルを含む。本明細書では、「インスタントメッセージング」とは、電話通信ベースのメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)と、インターネットベースのメッセージ(例えば、XMPP、SIMPLE、又はIMPSを使用して送信されるメッセージ)との両方を指す。
トレーニングサポートモジュール142は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、地図モジュール154、及び音楽プレーヤモジュールと連携して、トレーニング(例えば、時間、距離、及び/又はカロリー燃焼の目標を有する)を作成し、トレーニングセンサ(スポーツデバイス)と通信し、トレーニングセンサデータを受信し、トレーニングをモニタするために使用されるセンサを較正し、トレーニングのための音楽を選択及び再生し、並びに、トレーニングデータを表示、記憶、及び送信するための実行可能な命令を含む。
カメラモジュール143は、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、及び画像管理モジュール144と連携して、静止画像若しくは(動画ストリームを含む)動画のキャプチャ及びメモリ102内への記憶、静止画像若しくは動画の特性の修正、又はメモリ102からの静止画像若しくは動画の削除のための実行可能な命令を含む。
画像管理モジュール144は、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びカメラモジュール143と連携して、静止画像及び/若しくは動画の配置、修正(例えば、編集)、又はその他の操作、ラベル付け、削除、(例えば、デジタルスライドショー若しくはアルバムにおける)提示、及び記憶のための実行可能な命令を含む。
ブラウザモジュール147は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、ウェブページ又はその一部分、並びにウェブページにリンクされた添付ファイル及び他のファイルの検索、リンク、受信、及び表示を含む、ユーザの指示に従ってインターネットをブラウジングするための実行可能な命令を含む。
カレンダーモジュール148は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連携して、ユーザの指示に従って、カレンダー及びカレンダーに関連付けられたデータ(例えば、カレンダーアイテム、to-doリストなど)を作成、表示、修正、及び記憶するための実行可能な命令を含む。
ウィジェットモジュール149は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と連携して、任意選択的に、ユーザによってダウンロード及び使用されるミニアプリケーション(例えば、気象ウィジェット149-1、株価ウィジェット149-2、計算機ウィジェット149-3、アラーム時計ウィジェット149-4、及び辞書ウィジェット149-5)、又はユーザによって作成されたミニアプリケーション(例えば、ユーザ作成ウィジェット149-6)である。いくつかの実施形態では、ウィジェットは、HTML(Hypertext Markup Language、ハイパーテキストマークアップ言語)ファイル、CSS(Cascading Style Sheets、カスケーディングスタイルシート)ファイル、及びJavaScriptファイルを含む。いくつかの実施形態では、ウィジェットは、XML(Extensible Markup Language、拡張可能マークアップ言語)ファイル及びJavaScriptファイル(例えば、Yahoo!ウィジェット)を含む。
ウィジェットクリエータモジュール150は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と連携して、任意選択的に、ウィジェットを作成する(例えば、ウェブページのユーザ指定部分をウィジェットにする)ために、ユーザによって使用される。
検索モジュール151は、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、ユーザの指示に従って1つ以上の検索基準(例えば、1つ以上のユーザ指定検索語)と一致するメモリ102内の文字、音楽、サウンド、画像、動画、及び/又は他のファイルを検索するための実行可能な命令を含む。
動画及び音楽プレーヤモジュール152は、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、オーディオ回路110、スピーカ111、RF回路108、及びブラウザモジュール147と連携して、MP3又はAACファイルなどの1つ以上のファイル形式で記憶された録音済みの音楽及び他のサウンドファイルをユーザがダウンロード及び再生できるようにする実行可能な命令、並びに動画を(例えば、タッチスクリーン112上又は外部ポート124を介して接続された外部のディスプレイ上に)表示、提示、又は別の方法で再生するための実行可能な命令を含む。いくつかの実施形態では、デバイス100は、任意選択的に、iPod(Apple Inc.の商標)などのMP3プレーヤの機能を含む。
メモモジュール153は、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、ユーザの指示に従ってメモ、to-doリストなどを作成及び管理するための実行可能な命令を含む。
地図モジュール154は、RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、及びブラウザモジュール147と連携して、任意選択的に、ユーザの命令に従って、地図及び地図に関連付けられたデータ(例えば、運転の道順、特定の場所又はその付近の店舗及び他の見どころに関するデータ、並びに他の位置ベースのデータ)を受信、表示、修正、及び記憶するために使用される。
オンライン動画モジュール155は、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、オーディオ回路110、スピーカ111、RF回路108、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連携して、ユーザが特定のオンライン動画へのアクセス、特定のオンライン動画のブラウジング、(例えば、ストリーミング及び/又はダウンロードによる)受信、(例えば、タッチスクリーン上又は外部ポート124を介して接続された外部ディスプレイ上の)再生、特定のオンライン動画へのリンクを有する電子メールの送信、並びにH.264などの1つ以上のファイル形式のオンライン動画の他の管理を行うことを可能にする命令を含む。いくつかの実施形態では、特定のオンライン動画へのリンクを送信するために、電子メールクライアントモジュール140ではなく、インスタントメッセージングモジュール141が使用される。オンライン動画アプリケーションについての追加の説明は、その内容の全体が参照により本明細書に組み込まれる、2007年6月20日出願の米国仮特許出願第60/936,562号、「Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos」、及び2007年12月31日出願の米国特許出願第11/968,067号、「Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos」を参照されたい。
上記で特定したモジュール及びアプリケーションは各々、前述した1つ以上の機能及び本出願に記載した方法(例えば、本明細書に記載したコンピュータにより実装される方法及び他の情報処理方法)を実行する実行可能な命令のセットに対応する。これらのモジュール(例えば、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、したがって、様々な実施形態において、これらのモジュールの様々なサブセットが、任意選択的に、組み合わされ、又は別の方法で再構成される。例えば、動画プレーヤモジュールは、任意選択的に、音楽プレーヤモジュールと組み合わされて、単一のモジュール(例えば、図1Aの動画及び音楽プレーヤモジュール152)にされる。いくつかの実施形態では、メモリ102は、任意選択で、上記で特定されたモジュール及びデータ構造のサブセットを記憶する。更に、メモリ102は、上記で説明されていない追加のモジュール及びデータ構造を任意選択で記憶する。
いくつかの実施形態では、デバイス100は、そのデバイスにおける既定の機能のセットの動作がタッチスクリーン及び/又はタッチパッドのみを介して実行されるデバイスである。デバイス100が動作するための主要な入力コントロールデバイスとしてタッチスクリーン及び/又はタッチパッドを使用することにより、任意選択的に、デバイス100上の物理的な入力コントロールデバイス(プッシュボタン、ダイヤルなど)の数が削減される。
タッチスクリーン及び/又はタッチパッドを通じてのみ実行される既定の機能のセットは、任意選択的に、ユーザインタフェース間のナビゲーションを含む。いくつかの実施形態では、タッチパッドは、ユーザによってタッチされたときに、デバイス100上に表示される任意のユーザインタフェースから、メインメニュー、ホームメニュー、又はルートメニューにデバイス100をナビゲートする。このような実施形態では、「メニューボタン」は、タッチパッドを使用して実装される。一部の他の実施形態では、メニューボタンは、タッチパッドではなく、物理プッシュボタン又はその他の物理入力コントロールデバイスである。
図1Bは、いくつかの実施形態に係る、イベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ102(図1A)又は370(図3)は、イベントソータ170(例えば、オペレーティングシステム126内)と、それぞれのアプリケーション136-1(例えば、前述のアプリケーション137~151、155、380~390のうちのいずれか)とを含む。
イベントソータ170は、イベント情報を受信し、イベント情報を配信するアプリケーション136-1、及びアプリケーション136-1のアプリケーションビュー191を判定する。イベントソータ170は、イベントモニタ171及びイベントディスパッチャモジュール174を含む。いくつかの実施形態では、アプリケーション136-1は、アプリケーションがアクティブ又は実行中であるときにタッチ感知ディスプレイ112に表示される現在のアプリケーションビューを示すアプリケーション内部状態192を含む。いくつかの実施形態では、デバイス/グローバル内部状態157は、どのアプリケーション(単数又は複数)が現在アクティブであるかを判定するためにイベントソータ170によって使用され、アプリケーション内部状態192は、イベント情報が配信されるアプリケーションビュー191を判定するためにイベントソータ170によって使用される。
いくつかの実施形態では、アプリケーション内部状態192は、アプリケーション136-1が実行を再開するときに使用すべき再開情報、アプリケーション136-1によって表示されている情報を示す又は表示する準備ができたユーザインタフェース状態情報、ユーザがアプリケーション136-1の前の状態又はビューに戻ることを可能にする状態キュー、及びユーザによって行われた前のアクションのリドゥ/アンドゥキューのうちの1つ以上などの追加の情報を含む。
イベントモニタ171は、周辺機器インタフェース118からイベント情報を受信する。イベント情報は、サブイベント(例えば、タッチ感知ディスプレイ112でのマルチタッチジェスチャの一部としてのユーザタッチ)に関する情報を含む。周辺機器インタフェース118は、I/Oサブシステム106、又は近接センサ166、加速度計(単数又は複数)168、及び/若しくは(オーディオ回路110を介した)マイクロフォン113などのセンサから受信する情報を送信する。周辺機器インタフェース118がI/Oサブシステム106から受信する情報は、タッチ感知ディスプレイ112又はタッチ感知面からの情報を含む。
いくつかの実施形態では、イベントモニタ171は、所定の間隔で周辺機器インタフェース118に要求を送信する。それに応じて、周辺機器インタフェース118は、イベント情報を送信する。他の実施形態では、周辺機器インタフェース118は、重要なイベント(例えば、所定のノイズ閾値を上回る及び/又は所定の持続時間を超える入力の受信)があるときのみイベント情報を送信する。
いくつかの実施形態では、イベントソータ170はまた、ヒットビュー判定モジュール172及び/又はアクティブイベント認識部判定モジュール173を含む。
ヒットビュー判定モジュール172は、タッチ感知ディスプレイ112が2つ以上のビューを表示しているときに、サブイベントが1つ以上のビュー内のどこで起きたかを判定するソフトウェア手順を提供する。ビューは、ユーザがディスプレイ上で見ることができる制御装置及び他の要素から構成されている。
アプリケーションに関連付けられたユーザインタフェースの別の態様は、本明細書ではアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれることもあるビューのセットであり、その中で情報が表示され、タッチに基づくジェスチャが生じる。タッチが検出される(それぞれのアプリケーションの)アプリケーションビューは、任意選択的に、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応する。例えば、タッチが検出される最下位レベルビューは、任意選択的に、ヒットビューと呼ばれ、また、適切な入力として認識されるイベントのセットは、任意選択的に、タッチによるジェスチャを開始する初期タッチのヒットビューに少なくとも部分的に基づいて決定される。
ヒットビュー判定モジュール172は、タッチに基づくジェスチャのサブイベントに関連する情報を受信する。アプリケーションが階層状に構成された複数のビューを有するとき、ヒットビュー判定モジュール172は、サブイベントを処理すべき階層内の最下位のビューとして、ヒットビューを特定する。ほとんどの状況では、ヒットビューは、開始サブイベント(例えば、イベント又は潜在的イベントを形成するサブイベントシーケンスにおける第1のサブイベント)が発生する最も低いレベルのビューである。ヒットビューがヒットビュー判定モジュール172によって特定されると、ヒットビューは、通常、ヒットビューとして特定されたタッチ又は入力ソースと同じタッチ又は入力ソースに関係する全てのサブイベントを受信する。
アクティブイベント認識部判定モジュール173は、ビュー階層内のどのビュー(単数又は複数)がサブイベントの特定のシーケンスを受信すべきかを判定する。いくつかの実施形態では、アクティブイベント認識部判定モジュール173は、ヒットビューのみがサブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール173は、サブイベントの物理位置を含む全てのビューがアクティブに関わりがあるビューであると判定し、したがって、全てのアクティブに関わりがあるビューが、サブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、タッチサブイベントが1つの特定のビューに関連付けられたエリアに完全に限定された場合でも、階層内の上位のビューは、依然としてアクティブに関わりがあるビューであり続ける。
イベントディスパッチャモジュール174は、イベント情報をイベント認識部(例えばイベント認識部180)にディスパッチする。アクティブイベント認識部判定モジュール173を含む実施形態では、イベントディスパッチャモジュール174は、アクティブイベント認識部判定モジュール173により判定されたイベント認識部にイベント情報を配信する。いくつかの実施形態では、イベントディスパッチャモジュール174は、それぞれのイベント受信部182によって取得されるイベント情報をイベントキューに記憶する。
いくつかの実施形態では、オペレーティングシステム126は、イベントソータ170を含む。あるいは、アプリケーション136-1がイベントソータ170を含む。更に他の実施形態では、イベントソータ170は、独立型のモジュールであり、又は接触/動きモジュール130などのメモリ102内に記憶されている別のモジュールの一部分である。
いくつかの実施形態では、アプリケーション136-1は、各々がアプリケーションのユーザインタフェースのそれぞれのビュー内で発生するタッチイベントを処理するための命令を含む、複数のイベント処理部190及び1つ以上のアプリケーションビュー191を含む。アプリケーション136-1の各アプリケーションビュー191は、1つ以上のイベント認識部180を含む。典型的には、それぞれのアプリケーションビュー191は、複数のイベント認識部180を含む。他の実施形態では、イベント認識部180のうちの1つ以上は、ユーザインタフェースキット、又は、アプリケーション136-1がメソッド及び他のプロパティを継承する上位レベルのオブジェクトなどの、別個のモジュールの一部である。いくつかの実施形態では、それぞれのイベント処理部190は、データ更新部176、オブジェクト更新部177、GUI更新部178、及び/又はイベントソータ170から受信されたイベントデータ179、のうちの1つ以上を含む。イベント処理部190は、任意選択的に、データ更新部176、オブジェクト更新部177、又はGUI更新部178を利用し又は呼び出して、アプリケーション内部状態192を更新する。あるいは、アプリケーションビュー191のうちの1つ以上が、1つ以上のそれぞれのイベント処理部190を含む。また、いくつかの実施形態では、データ更新部176、オブジェクト更新部177、及びGUI更新部178のうちの1つ以上は、それぞれのアプリケーションビュー191に含まれる。
それぞれのイベント認識部180は、イベントソータ170からイベント情報(例えば、イベントデータ179)を受信し、イベント情報からイベントを特定する。イベント認識部180は、イベント受信部182及びイベント比較部184を含む。いくつかの実施形態では、イベント認識部180はまた、メタデータ183及びイベント配信命令188(任意選択的にサブイベント配信命令を含む)の少なくともサブセットも含む。
イベント受信部182は、イベントソータ170からイベント情報を受信する。イベント情報は、サブイベント、例えば、タッチ又はタッチの移動についての情報を含む。サブイベントに応じて、イベント情報はまた、サブイベントの位置などの追加の情報を含む。サブイベントがタッチの動きに関わるとき、イベント情報はまた任意選択的に、サブイベントの速さ及び方向を含む。いくつかの実施形態では、イベントは、1つの向きから別の向きへの(例えば、縦向きから横向きへ、又はその逆の)デバイスの回転を含み、イベント情報は、デバイスの現在の向き(デバイスの姿勢とも呼ぶ)についての対応する情報を含む。
イベント比較部184は、イベント情報を、定義済みのイベント又はサブイベントの定義と比較し、その比較に基づいて、イベント又はサブイベントを判定するか、あるいはイベント又はサブイベントの状態を判定若しくは更新する。いくつかの実施形態では、イベント比較部184は、イベント定義186を含む。イベント定義186は、例えばイベント1(187-1)及びイベント2(187-2)などのイベント(例えば、既定のサブイベントのシーケンス)の定義を含む。いくつかの実施形態では、イベント(187)内のサブイベントは、例えば、タッチの開始、タッチの終了、タッチの移動、タッチの取り消し、及び複数のタッチを含む。一実施例では、イベント1(187-1)についての定義は、表示されたオブジェクト上のダブルタップである。ダブルタップは、例えば、所定の段階に対する表示オブジェクト上の第1のタッチ(タッチ開始)、所定の段階に対する第1のリフトオフ(タッチ終了)、所定の段階に対する表示オブジェクト上の第2のタッチ(タッチ開始)、及び所定の段階に対する第2のリフトオフ(タッチ終了)を含む。別の実施例では、イベント2(187-2)の定義は、表示されたオブジェクト上のドラッグである。ドラッグは、例えば、所定の段階に対する表示オブジェクト上のタッチ(又は接触)、タッチ感知ディスプレイ112にわたるタッチの移動、及びタッチのリフトオフ(タッチ終了)を含む。いくつかの実施形態では、イベントは、1つ以上の関連付けられたイベント処理部190に関する情報も含む。
いくつかの実施形態では、イベント定義187は、それぞれのユーザインタフェースオブジェクトについてのイベントの定義を含む。いくつかの実施形態では、イベント比較部184は、どのユーザインタフェースオブジェクトがサブイベントに関連付けられているかを判定するヒットテストを実行する。例えば、タッチ感知ディスプレイ112に3つのユーザインタフェースオブジェクトが表示されているアプリケーションビュー内で、タッチ感知ディスプレイ112上でタッチが検出されると、イベント比較部184は、ヒットテストを実行して、3つのユーザインタフェースオブジェクトのうちのどれがタッチ(サブイベント)に関連付けられているかを判定する。表示された各オブジェクトが、それぞれのイベント処理部190に関連付けられている場合、イベント比較部は、ヒットテストの結果を用いて、どのイベント処理部190をアクティブ化すべきかを判定する。例えば、イベント比較部184は、ヒットテストをトリガするサブイベント及びオブジェクトに関連付けられたイベント処理部を選択する。
いくつかの実施形態では、それぞれのイベント187の定義は、サブイベントのシーケンスがイベント認識部のイベントタイプに対応するかどうかが判定されるまで、イベント情報の伝送を遅らせる遅延アクションも含む。
それぞれのイベント認識部180は、一連のサブイベントがイベント定義186のイベントのいずれとも一致しないと判断した場合、それぞれのイベント認識部180は、イベント不可能、イベント失敗、又はイベント終了の状態に入り、その後は、タッチに基づくジェスチャの次のサブイベントを無視する。この状況では、ヒットビューについてアクティブのままである他のイベント認識部があれば、そのイベント認識部は、進行中のタッチによるジェスチャのサブイベントの追跡及び処理を続行する。
いくつかの実施形態では、それぞれのイベント認識部180は、イベント配信システムがどのようにサブイベント配信を実行すべきかをアクティブに関与しているイベント認識部に示す構成可能なプロパティ、フラグ、及び/又はリストを有するメタデータ183を含む。いくつかの実施形態では、メタデータ183は、イベント認識部が互いにどのように対話するか、又はイベント認識部が互いにどのように対話することが可能となるかを示す構成可能なプロパティ、フラグ、及び/又はリストを含む。いくつかの実施形態では、メタデータ183は、サブイベントがビュー階層又はプログラム階層における多様なレベルに配信されるかを示す構成可能なプロパティ、フラグ、及び/又はリストを含む。
いくつかの実施形態では、それぞれのイベント認識部180は、イベントの1つ以上の特定のサブイベントが認識されるときに、イベントに関連付けられたイベント処理部190をアクティブ化する。いくつかの実施形態では、それぞれのイベント認識部180は、イベントに関連付けられたイベント情報をイベント処理部190に配信する。イベント処理部190をアクティブ化することは、それぞれのヒットビューにサブイベントを送信する(及び、送信を延期する)こととは別個である。いくつかの実施形態では、イベント認識部180は、認識したイベントに関連付けられたフラグを投入し、そのフラグに関連付けられたイベント処理部190は、そのフラグを捕らえ、既定のプロセスを実行する。
いくつかの実施形態では、イベント配信命令188は、イベント処理部をアクティブ化することなくサブイベントについてのイベント情報を配信するサブイベント配信命令を含む。代わりに、サブイベント配信命令は、一連のサブイベントと関連付けられたイベント処理部に、又はアクティブに関与しているビューにイベント情報を配信する。一連のサブイベント又はアクティブに関与しているビューと関連付けられたイベント処理部は、イベント情報を受信し、所定の処理を実行する。
いくつかの実施形態では、データ更新部176は、アプリケーション136-1で使用されるデータを作成及び更新する。例えば、データ更新部176は、連絡先モジュール137で使用される電話番号を更新し、又は動画プレーヤモジュールで使用される動画ファイルを記憶する。いくつかの実施形態では、オブジェクト更新部177は、アプリケーション136-1で使用されるオブジェクトを作成及び更新する。例えば、オブジェクト更新部177は、新たなユーザインタフェースオブジェクトを作成し、又はユーザインタフェースオブジェクトの位置を更新する。GUI更新部178は、GUIを更新する。例えば、GUI更新部178は、表示情報を準備し、タッチ感知ディスプレイ上に表示するために表示情報をグラフィックモジュール132に送る。
いくつかの実施形態では、イベント処理部(単数又は複数)190は、データ更新部176、オブジェクト更新部177、及びGUI更新部178を含む又はそれらへのアクセスを有する。いくつかの実施形態では、データ更新部176、オブジェクト更新部177、及びGUI更新部178は、それぞれのアプリケーション136-1又はアプリケーションビュー191の単一モジュールに含まれる。他の実施形態では、それらは、2つ以上のソフトウェアモジュールに含まれる。
タッチ感知ディスプレイ上のユーザのタッチのイベント処理に関する前述の記載は、入力デバイスを用いて多機能デバイス100を動作させるための他の形態のユーザ入力にも適用されるが、それらの全てがタッチスクリーン上で開始されるわけではないことを理解されたい。例えば、キーボードの単一又は複数の押圧若しくは保持と任意選択的に連携される、マウスの移動及びマウスボタンの押圧、タッチパッド上のタップ、ドラッグ、スクロールなどの接触の移動、ペンスタイラス入力、デバイスの移動、口頭による命令、検出された目の動き、バイオメトリック入力、並びに/又はそれらの任意の組み合わせを、任意選択的に、認識するイベントを定義するサブイベントに対応する入力として利用する。
図2は、いくつかの実施形態に係る、タッチスクリーン112を有するポータブル多機能デバイス100を示す。タッチスクリーンは、任意選択的に、ユーザインタフェース(user interface、UI)200内に1つ以上のグラフィックを表示する。本実施形態、並びに以下で説明される他の実施形態では、ユーザは、例えば、1本以上の指202(図には正確な縮尺では描かれていない)又は1つ以上のスタイラス203(図には正確な縮尺では描かれていない)を使用して、グラフィック上でジェスチャを実施することによって、それらのグラフィックのうちの1つ以上を選択することが可能となる。いくつかの実施形態では、1つ以上のグラフィックの選択は、ユーザが、その1つ以上のグラフィックとの接触を中断する場合に実施される。いくつかの実施形態では、ジェスチャは、デバイス100と接触した指の、1回以上のタップ、1回以上のスワイプ(左から右へ、右から左へ、上向きに及び/若しくは下向きに)、並びに/又は、ローリング(右から左へ、左から右へ、上向きに及び/若しくは下向きに)を、任意選択的に含む。一部の実装形態又は状況では、グラフィックとの不測の接触は、そのグラフィックを選択するものではない。例えば、選択に相当するジェスチャがタップである場合、アプリケーションアイコンの上をスイープするスワイプジェスチャは、任意選択的に、対応するアプリケーションを選択するものではない。
デバイス100はまた、任意選択的に、「ホーム」ボタン又はメニューボタン204などの1つ以上の物理ボタンを含む。前述したように、メニューボタン204は、任意選択的にデバイス100上で実行される1組のアプリケーション内の任意のアプリケーション136にナビゲートするために、任意選択的に使用される。あるいは、いくつかの実施形態では、メニューボタンは、タッチスクリーン112に表示されるGUI内のソフトキーとして実装される。
いくつかの実施形態では、デバイス100は、タッチスクリーン112、メニューボタン204、デバイスの電源をオン/オフにしてデバイスをロックするプッシュボタン206、音量調整ボタン208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212、及びドッキング/充電用外部ポート124を含む。プッシュボタン206は、任意選択的に、ボタンを押し下げて、既定の期間にわたってボタンを押し下げた状態に保持することによって、デバイスの電源をオン/オフするため、ボタンを押し下げて、既定の時間が経過する前にボタンを解放することによってデバイスをロックするため、及び/又はデバイスをロック解除する、若しくはロック解除プロセスを開始するために、使用される。代替の実施形態では、デバイス100は、マイクロフォン113を介して、いくつかの機能をアクティブ化又は非アクティブ化するための口頭入力もまた受け入れる。デバイス100は、任意選択的に、タッチスクリーン112上の接触の強度を検出する1つ以上の接触強度センサ165、及び/又はデバイス100のユーザに対する触知出力を生成する1つ以上の触知出力生成器167もまた含む。
図3は、いくつかの実施形態に係る、ディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。デバイス300は、ポータブル型である必要はない。いくつかの実施形態では、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディアプレーヤデバイス、ナビゲーションデバイス、教育的デバイス(子供の学習玩具など)、ゲームシステム、又は制御デバイス(例えば、家庭用又は業務用コントローラ)である。デバイス300は、通常、1つ以上の処理ユニット(CPU)310、1つ以上のネットワーク又は他の通信インタフェース360、メモリ370、及びこれらの構成要素を相互接続する1つ以上の通信バス320を含む。通信バス320は、任意選択的に、システム構成要素間の通信を相互接続及び制御する回路(チップセットと呼ばれることもある)を含む。デバイス300は、ディスプレイ340を含む入出力(I/O)インタフェース330を含み、ディスプレイ340は、通常、タッチスクリーンディスプレイである。I/Oインタフェース330はまた、任意選択的に、キーボード及び/又はマウス(若しくは他のポインティングデバイス)350並びにタッチパッド355と、デバイス300上に触知出力を生成する(例えば、図1Aを参照して前述した触知出力生成器167に類似している)触知出力生成器357と、センサ359(例えば、光、加速度、近接、タッチ感知、及び/又は図1Aを参照して前述した、接触強度センサ165に類似している接触強度センサ)とを含む。メモリ370は、DRAM、SRAM、DDR RAM、又は他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含み、任意選択的に、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステート記憶デバイスなどの不揮発性メモリを含む。メモリ370は、任意選択で、CPU(単数又は複数)310からリモートに位置する1つ以上の記憶デバイスを含む。いくつかの実施形態では、メモリ370は、ポータブル多機能デバイス100(図1A)のメモリ102内に記憶されているプログラム、モジュール、及びデータ構造に類似したプログラム、モジュール、及びデータ構造、又はそのサブセットを記憶する。更に、メモリ370は、任意選択で、ポータブル多機能デバイス100のメモリ102に存在しない追加のプログラム、モジュール、及びデータ構造を記憶する。例えば、デバイス300のメモリ370は、任意選択的に、描画モジュール380、プレゼンテーションモジュール382、ワードプロセッシングモジュール384、ウェブサイト作成モジュール386、ディスクオーサリングモジュール388、及び/又はスプレッドシートモジュール390を記憶するのに対して、ポータブル多機能デバイス100(図1A)のメモリ102は、任意選択的に、これらのモジュールを記憶しない。
図3の上記で特定した要素は各々、任意選択的に、前述したメモリデバイスのうちの1つ以上の中に記憶される。上記で特定したモジュールは各々、前述した機能を実行する命令セットに対応する。上記で特定したモジュール又はプログラム(例えば、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、したがって様々な実施形態では、これらのモジュールの様々なサブセットが、任意選択的に組み合わされ、又は他の方法で再構成される。いくつかの実施形態では、メモリ370は、任意選択で、上記で特定されたモジュール及びデータ構造のサブセットを記憶する。更に、メモリ370は、上記で説明されていない追加のモジュール及びデータ構造を任意選択で記憶する。
次に、任意選択的に、例えばポータブル多機能デバイス100に実装されるユーザインタフェースの実施形態に注意を向ける。
図4Aは、いくつかの実施形態に係る、ポータブル多機能デバイス100上のアプリケーションのメニューの例示的なユーザインタフェースを示す。同様のユーザインタフェースは、デバイス300上に任意選択的に実装される。いくつかの実施形態では、ユーザインタフェース400は、以下の要素、又はそれらのサブセット若しくはスーパーセットを含む。
● セルラー信号及びWi-Fi信号などの無線通信(単数又は複数)用の信号強度インジケータ(単数又は複数)402、
● 時刻404、
● Bluetoothインジケータ405、
● バッテリ状態インジケータ406、
● 以下のような、頻繁に使用されるアプリケーションのアイコンを有するトレイ408
○ 不在着信又はボイスメールメッセージの数のインジケータ414を任意選択的に含む、「電話」とラベル付けされた、電話モジュール138のアイコン416、
○ 未読電子メールの数のインジケータ410を任意選択的に含む、「メール」とラベル付けされた、電子メールクライアントモジュール140のアイコン418、
○ 「ブラウザ」とラベル付けされた、ブラウザモジュール147のアイコン420、及び
○ 「iPod」とラベル付けされる、iPod(Apple Inc.の商標)モジュール152とも称される動画及び音楽プレーヤモジュール152用のアイコン422、及び
● 以下のような、他のアプリケーションのアイコン、
○ 「メッセージ」とラベル付けされた、IMモジュール141のアイコン424、
○ 「カレンダー」とラベル付けされた、カレンダーモジュール148のアイコン426、
○ 「写真」とラベル付けされた、画像管理モジュール144のアイコン428、
○ 「カメラ」とラベル付けされた、カメラモジュール143のアイコン430、
○ 「オンライン動画」とラベル付けされた、オンライン動画モジュール155のアイコン432、
○ 「株価」とラベル表示された株価ウィジェット149-2に対するアイコン434、
○ 「マップ」とラベル付けされた、地図モジュール154のアイコン436、
○ 「天気」とラベル表示された気象ウィジェット149-1に対するアイコン438、
○ 「時計」とラベル表示されたアラーム時計ウィジェット149-4に対するアイコン440、
○ 「トレーニングサポート」とラベル付けされた、トレーニングサポートモジュール142のアイコン442、
○ 「メモ」とラベル付けされた、メモモジュール153のアイコン444、及び
○ デバイス100及びその様々なアプリケーション136の設定へのアクセスを提供する、「設定」とラベル付けされた、設定アプリケーション又はモジュールのアイコン446。
図4Aに示すアイコンラベルは、単なる例示であることに留意されたい。例えば、動画及び音楽プレーヤモジュール152のアイコン422は、「音楽」又は「音楽プレーヤ」とラベル付けされる。他のラベルが、様々なアプリケーションアイコンのために、任意選択的に使用される。いくつかの実施形態では、それぞれのアプリケーションアイコンに関するラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。いくつかの実施形態では、特定のアプリケーションアイコンのラベルは、その特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
図4Bは、ディスプレイ450(例えば、タッチスクリーンディスプレイ112)とは別個のタッチ感知面451(例えば、図3のタブレット又はタッチパッド355)を有するデバイス(例えば、図3のデバイス300)上の例示的なユーザインタフェースを示す。デバイス300はまた、任意選択的に、タッチ感知面451上の接触の強度を検出する1つ以上の接触強度センサ(例えば、センサ359のうちの1つ以上)、及び/又はデバイス300のユーザに対して触知出力を生成する1つ以上の触知出力生成器357を含む。
以下の例のうちのいくつかは、タッチスクリーンディスプレイ112(タッチ感知面及びディスプレイが組み合わされている)上の入力を参照して与えられるが、いくつかの実施形態では、デバイスは、図4Bに示すように、ディスプレイとは別個のタッチ感知面上の入力を検出する。いくつかの実施形態では、タッチ感知面(例えば、図4Bの451)は、ディスプレイ(例えば、450)上の一次軸(例えば、図4Bの453)に対応する一次軸(例えば、図4Bの452)を有する。これらの実施形態によれば、デバイスは、ディスプレイ上のそれぞれの位置に対応する位置(例えば、図4Bでは、460は468に対応し、462は470に対応する)で、タッチ感知面451との接触(例えば、図4Bの460及び462)を検出する。このようにして、タッチ感知面(例えば、図4Bの451)上でデバイスによって検出されるユーザ入力(例えば、接触460及び462、並びにこれらの移動)は、タッチ感知面がディスプレイとは別個であるとき、多機能デバイスのディスプレイ(例えば、図4Bの450)上のユーザインタフェースを操作するために、デバイスによって使用される。同様の方法が、本明細書に記載の他のユーザインタフェースに任意選択的に使用されることを理解されたい。
加えて、以下の例は、主に指入力(例えば、指接触、指タップジェスチャ、指スワイプジェスチャ)を参照して与えられる一方、いくつかの実施形態では、指入力のうちの1つ以上が別の入力デバイスからの入力(例えば、マウスベースの入力又はスタイラス入力)に置き換えられることを理解されたい。例えば、スワイプジェスチャは、任意選択的に、(例えば、接触の代わりに、)マウスクリックであって、その後に(例えば、接触の移動の代わりに)スワイプの経路に沿ったカーソルの移動を伴うマウスクリックによって置き換えられる。別の例として、タップジェスチャは、任意選択的に、カーソルがタップジェスチャの位置上に位置する間は、(例えば、接触を検出して、それに続いて接触の検出を停止する代わりに)マウスクリックによって置き換えられる。同様に、複数のユーザ入力が同時に検出されるとき、複数のコンピュータマウスが、任意選択的に、同時に使用され、又はマウス及び指の接触が、任意選択的に、同時に使用されることを理解されたい。
図5Aは、例示的なパーソナル電子デバイス500を示す。デバイス500は、本体502を含む。いくつかの実施形態では、デバイス500は、デバイス100及び300(例えば、図1A~図4B)に関して説明された特徴のうちのいくつか又は全てを含むことができる。いくつかの実施形態では、デバイス500は、タッチ感知ディスプレイスクリーン504、以下ではタッチスクリーン504、を有する。あるいは、又はタッチスクリーン504に加えて、デバイス500は、ディスプレイ及びタッチ感知面を有する。デバイス100及び300と同様に、いくつかの実施形態では、タッチスクリーン504(又はタッチ感知面)は、任意選択的に、加えられている接触(例えば、タッチ)の強度を検出する1つ以上の強度センサを含む。タッチスクリーン504(又はタッチ感知面)の1つ以上の強度センサは、タッチの強度を表す出力データを提供することができる。デバイス500のユーザインタフェースは、タッチ(複数)に、その強度に基づいて応答することができ、これは、異なる強度のタッチが、デバイス500上で異なるユーザインタフェース動作を呼び出すことができることを意味する。
タッチ強度を検出し処理する例示的な技術は、例えば、それぞれ全体が参照により本明細書に組み込まれる関連出願である、国際公開第WO/2013/169849号として公開された、2013年5月8日出願の国際特許出願第PCT/US2013/040061号、「Device,Method,and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application」、及び国際公開第WO/2014/105276号として公開された、2013年11月11日出願の国際特許出願第PCT/US2013/069483号、「Device,Method,and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships」を参照されたい。
いくつかの実施形態では、デバイス500は、1つ以上の入力機構506及び508を有する。入力機構506及び508は、含まれる場合、物理的であり得る。物理的入力機構の例としては、プッシュボタン及び回転可能機構が挙げられる。いくつかの実施形態では、デバイス500は、1つ以上のアタッチメント機構を有する。そのようなアタッチメント機構は、含まれる場合、例えば帽子、眼鏡類、イアリング、ネックレス、シャツ、ジャケット、ブレスレット、腕時計のバンド、チェーン、ズボン、ベルト、靴、財布、バックパックなどにデバイス500を取り付けることを可能にすることができる。これらのアタッチメント機構は、ユーザがデバイス500を着用することを可能にする。
図5Bは、例示的なパーソナル電子デバイス500を示す。いくつかの実施形態では、デバイス500は、図1A、図1B、及び図3に関して説明した構成要素のうちのいくつか又は全てを含むことができる。デバイス500は、I/Oセクション514を1つ以上のコンピュータプロセッサ516及びメモリ518に動作可能に結合するバス512を有する。I/Oセクション514は、ディスプレイ504に接続することができ、ディスプレイ504は、タッチ感知構成要素522と、任意選択で強度センサ524(例えば、接触強度センサ)とを有することができる。加えて、I/Oセクション514は、Wi-Fi、Bluetooth、近距離通信(NFC)、セルラー、及び/又は他の無線通信技術を使用してアプリケーション及びオペレーティングシステムデータを受信する通信ユニット530と接続することができる。デバイス500は、入力機構506及び/又は508を含むことができる。入力機構506は、任意選択的に、例えば回転可能入力デバイス又は押下可能及び回転可能入力デバイスである。いくつかの実施例では、入力メカニズム508は、任意選択的にボタンである。
いくつかの実施例では、入力メカニズム508は、任意選択的にマイクロフォンである。パーソナル電子デバイス500は、任意選択的に、GPSセンサ532、加速度計534、方向センサ540(例えば、コンパス)、ジャイロスコープ536、動きセンサ538、及び/又はそれらの組み合わせなどの様々なセンサを含み、それらは全て、I/Oセクション514に動作可能に接続することができる。
パーソナル電子デバイス500のメモリ518は、コンピュータ実行可能命令を記憶するための1つ以上の非一時的コンピュータ可読記憶媒体を含むことができ、命令は、1つ以上のコンピュータプロセッサ516によって実行されると、例えば、コンピュータプロセッサに、方法700、800、1000、及び方法1200(図7、図8、図10、及び図12)を含む、以下に説明する技法を実行させることができる。コンピュータ可読記憶媒体は、命令実行システム、装置、若しくはデバイスによって、又は命令実行システム、装置、若しくはデバイスに関連して、使用されるコンピュータ実行可能命令を、有形に含み又は記憶することができる任意の媒体であり得る。いくつかの実施例では、記憶媒体は、一時的コンピュータ可読記憶媒体である。いくつかの実施例では、記憶媒体は、非一時的コンピュータ可読記憶媒体である。非一時的コンピュータ可読記憶媒体は、それらに限定されるものではないが、磁気、光学、及び/又は半導体記憶装置を含むことができる。そのような記憶装置の例としては、磁気ディスク、CD、DVD、又はBlu-ray(登録商標)技術に基づく光学ディスク、並びにフラッシュ、ソリッドステートドライブなどの常駐ソリッドステートメモリなどが挙げられる。パーソナル電子デバイス500は、図5Bの構成要素及び構成に限定されるものではなく、他の又は追加の構成要素を複数の構成で含むことができる。
本明細書で使用される「アフォーダンス」という用語は、任意選択的に、デバイス100、300、及び/又は500(図1A、図3、及び図5A~図5B)のディスプレイスクリーンに表示されるユーザ対話グラフィカルユーザインタフェースオブジェクトを指す。例えば、画像(例えば、アイコン)、ボタン、及び文字(例えば、ハイパーリンク)は各々、任意選択的に、アフォーダンスを構成する。
本明細書で使用される「フォーカスセレクタ」という用語は、ユーザが対話しているユーザインタフェースの現在の部分を示す入力要素を指す。カーソル又は他の位置マーカを含むいくつかの実装形態では、カーソルが「フォーカスセレクタ」として作用し、したがってカーソルが特定のユーザインタフェース要素(例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインタフェース要素)の上に位置する間に、入力(例えば、押下入力)がタッチ感知面(例えば、図3のタッチパッド355又は図4Bのタッチ感知面451)上で検出されたとき、特定のユーザインタフェース要素は、検出された入力に従って調整される。タッチスクリーンディスプレイ上のユーザインタフェース要素との直接対話を可能にするタッチスクリーンディスプレイ(例えば、図1Aのタッチ感知ディスプレイシステム112又は図4Aのタッチスクリーン112)を含むいくつかの実装形態では、タッチスクリーン上の検出された接触が「フォーカスセレクタ」として作用し、したがってタッチスクリーンディスプレイ上の特定のユーザインタフェース要素(例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインタフェース要素)の位置で入力(例えば、接触による押下入力)が検出されたとき、特定のユーザインタフェース要素が、検出された入力に従って調整される。いくつかの実装形態では、(例えば、フォーカスを1つのボタンから別のボタンへ動かすためにタブキー又は矢印キーを使用することによって)タッチスクリーンディスプレイ上の対応するカーソルの移動又は接触の移動なしに、フォーカスがユーザインタフェースの1つの領域からユーザインタフェースの別の領域に動かされ、これらの実装形態では、フォーカスセレクタは、ユーザインタフェースの種々の領域間でのフォーカスの移動に従って移動する。フォーカスセレクタがとる具体的な形態に関わらず、フォーカスセレクタは、一般に、ユーザが意図するユーザインタフェースとの対話について(例えば、ユーザがそれを通じて対話することを意図しているユーザインタフェースの要素をデバイスに示すことによって)伝えるためにユーザによって制御されるユーザインタフェース要素(又はタッチスクリーンディスプレイ上の接触)である。例えば、タッチ感知面(例えば、タッチパッド又はタッチスクリーン)上で押圧入力が検出されている間の、対応のボタンの上のフォーカスセレクタ(例えば、カーソル、接触、又は選択ボックス)の位置は、その対応のボタンを(そのデバイスのディスプレイ上に示される他のユーザインタフェース要素ではなく)アクティブ化することをユーザが意図していることを示すものである。
本明細書及び特許請求の範囲において使用されるとき、接触の「特性強度」という用語は、接触の1つ以上の強度に基づく、その接触の特性を指す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、既定の数の強度サンプル、すなわち、既定のイベント(例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終了を検出する前、接触の強度の増大を検出する前若しくは後、及び/又は、接触の強度の減少を検出する前若しくは後の)に関連する所定の時間(例えば、0.05、0.1、0.2、0.5、1、2、5、10秒)の間に収集された強度サンプルのセットに基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均(mean)値、接触の強度の平均(average)値、接触の強度の上位10パーセンタイル値、接触の強度の最大の2分の1の値、接触の強度の最大の90パーセントの値などのうちの1つ以上に基づいている。いくつかの実施形態では、特性強度を判定する際に(例えば、特性強度が経時的な接触の強度の平均であるときに)、接触の持続期間が使用される。いくつかの実施形態では、特性強度は、ユーザによって動作が実行されたかどうかを判定するために、1つ以上の強度閾値のセットと比較される。例えば、1つ以上の強度閾値のセットは、任意選択的に、第1の強度閾値及び第2の強度閾値を含む。この例では、第1の閾値を超えない特性強度を有する接触は第1の動作をもたらし、第1の強度閾値を上回るが第2の強度閾値を超えない特性強度を有する接触は第2の動作をもたらし、第2の閾値を超える特性強度を有する接触は第3の動作をもたらす。いくつかの実施形態では、特性強度と1つ以上の閾値との間の比較は、第1の動作を実行するべきか、それとも第2の動作を実行するべきかを判定するために使用されるのではなく、1つ以上の動作を実行するべきか否か(例えば、それぞれの動作を実行するべきか、それともそれぞれの動作を実行するのを見送るべきか)を判定するために使用される。
図5Cは、複数の強度センサ524A~524Dによってタッチ感知ディスプレイスクリーン504上で複数の接触552A~552Eを検出することを示している。図5Cは、追加として、強度単位に対する強度センサ524A~524Dの現在の強度測定値を示す強度ダイアグラムを含む。この例では、強度センサ524A及び524Dの強度測定値は各々9強度単位であり、強度センサ524B及び524Cの強度測定値は各々7強度単位である。いくつかの実装形態では、集約強度は、複数の強度センサ524A~524Dの強度測定値の和であり、この例では32強度単位である。いくつかの実施形態では、各接触に、集約強度の一部分であるそれぞれの強度が割り当てられる。図5Dは、力の中心554からの距離に基づいて、集約強度を接触552A~552Eに割り当てることを示している。この例では、接触552A、552B、及び552Eの各々に、集約強度の8強度単位の接触の強度が割り当てられ、接触552C及び552Dのそれぞれに、集約強度の4強度単位の接触の強度が割り当てられる。より一般的には、一部の実装例では、各接触jは、既定の数学関数Ij=A・(Dj/ΣDi)に従って、集約強度Aの一部分である、それぞれの強度Ijが割り当てられ、ここで、Djは、力の中心からそれぞれの接触jまでの距離であり、ΣDiは、力の中心から全てのそれぞれ接触(例えば、i=1から最後まで)までの距離の和である。図5C~図5Dを参照して説明した動作は、デバイス100、300又は500と類似若しくは同一の電子デバイスを使用して行うことができる。いくつかの実施形態では、接触の特性強度は、接触の1つ以上の強度に基づいている。いくつかの実施形態では、強度センサは、単一の特性強度(例えば、単一の接触の単一の特性強度)を判定するために使用される。強度ダイアグラムは、表示ユーザインタフェースの一部ではなく、読み手の助けになるように図5C~図5Dに含まれていることに留意されたい。
いくつかの実施形態では、特性強度を判定する目的のために、ジェスチャの一部分が特定される。例えば、タッチ感知面は、任意選択的に、開始位置から遷移して終了位置に到達し、その位置で接触の強度が増大している、連続するスワイプ接触を受信する。この例では、終了位置での接触の特性強度は、任意選択的に、スワイプ接触全体ではなく、連続するスワイプ接触の一部分のみ(例えば、スワイプ接触のうち終了位置の部分のみ)に基づいている。いくつかの実施形態では、任意選択的に、接触の特性強度を判定する前に、平滑化アルゴリズムがスワイプ接触の強度に適用される。例えば、平滑化アルゴリズムは、任意選択的に、非加重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び/又は指数平滑化アルゴリズムのうちの1つ以上を含む。いくつかの状況では、これらの平滑化アルゴリズムは、特性強度を判定する目的のために、スワイプ接触強度の幅の狭いスパイク又は下落を排除する。
タッチ感知面上の接触の強度は、任意選択的に、接触検出強度閾値、軽い押下強度閾値、深い押下強度閾値、及び/又は1つ以上の他の強度閾値などの1つ以上の強度閾値に対して特徴付けられる。いくつかの実施形態では、軽い押下強度閾値は、通常、物理マウスのボタン又はトラックパッドをクリックすることに関連付けられた動作をデバイスが実行する強度に相当する。いくつかの実施形態では、深い押下強度閾値は、通常、物理マウスのボタン又はトラックパッドをクリックすることに関連付けられた動作とは異なる動作をデバイスが実行する強度に相当する。いくつかの実施形態では、軽い押下強度閾値を下回る(例えば、且つそれを下回ると接触が検出されなくなる公称接触検出強度閾値を上回る)特性強度を有する接触が検出されたとき、デバイスは、タッチ感知面上の接触の移動に従い、軽い押下強度閾値又は深い押下強度閾値に関連付けられた動作を実行することなく、フォーカスセレクタを動かす。一般に、特に明記しない限り、これらの強度閾値は、ユーザインタフェースの値の様々なセットの間で一貫している。
軽い押下強度閾値を下回る強度から、軽い押下強度閾値と深い押下強度閾値との間の強度への、接触の特性強度の増大は、「軽い押下」の入力と呼ばれることがある。深い押下強度閾値を下回る強度から、深い押下強度閾値を上回る強度への、接触の特性強度の増大は、「深い押下」の入力と呼ばれることがある。接触検出強度閾値を下回る強度から、接触検出強度閾値と軽い押下強度閾値との間の強度への、接触の特性強度の増大は、タッチ面上の接触の検出と呼ばれることがある。接触検出強度閾値を上回る強度から、接触検出強度閾値を下回る強度への、接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と呼ばれることがある。いくつかの実施形態では、接触検出強度閾値はゼロである。いくつかの実施形態では、接触検出強度閾値はゼロより大きい。
本明細書に記載するいくつかの実施形態では、それぞれの押下入力を含むジェスチャを検出したことに応じて、又はそれぞれの接触(若しくは複数の接触)によって実行されたそれぞれの押下入力を検出したことに応じて、1つ以上の動作が実行され、それぞれの押下入力は、押下入力強度閾値を上回る接触(又は複数の接触)の強度の増大を検出したことに少なくとも部分的に基づいて検出される。いくつかの実施形態では、それぞれの動作は、押下入力強度閾値を上回るそれぞれの接触の強度の増大(例えば、それぞれの押下入力の「ダウンストローク」)を検出したことに応じて実行される。いくつかの実施形態では、押下入力は、押下入力強度閾値を上回るそれぞれの接触の強度の増大、及びそれに続く押下入力強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、それに続く押下入力閾値を下回るそれぞれの接触の強度の減少(例えば、それぞれの押下入力の「アップストローク」)を検出したことに応じて実行される。
図5E~5Hは、図5Eの軽い押下強度閾値(例えば、「ITL」)を下回る強度から、図5Hの深い押下強度閾値(例えば、「ITD」)を上回る強度への、接触562の強度の増大に対応する押下入力を含むジェスチャの検出を示す。接触562によって実行されるジェスチャは、タッチ感知面560上で検出され、既定の領域574内に表示されたアプリケーションアイコン572A~572Dを含む表示ユーザインタフェース570上では、アプリ2に対応するアプリケーションアイコン572Bの上にカーソル576が表示される。いくつかの実施形態では、ジェスチャは、タッチ感知ディスプレイ504上に検出される。強度センサは、タッチ感知面560上の接触の強度を検出する。デバイスは、接触562の強度が深い押下強度閾値(例えば、「ITD」)を上回ってピークに達したと判定する。接触562は、タッチ感知面560上で維持される。ジェスチャの検出に応じて、ジェスチャ中に深い押下強度閾値(例えば、「ITD」)を上回る強度を有する接触562に従って、図5F~図5Hに示すように、アプリ2に対して最近開いた文書の縮尺が低減された表現578A~578C(例えば、サムネイル)が表示される。いくつかの実施形態では、1つ以上の強度閾値と比較されるこの強度は、接触の特性強度である。接触562に対する強度ダイアグラムは、表示ユーザインタフェースの一部ではなく、読み手の助けになるように図5E~図5Hに含まれていることに留意されたい。
いくつかの実施形態では、表現578A~578Cの表示は、アニメーションを含む。例えば、図5Fに示すように、表現578Aが、アプリケーションアイコン572Bに近接して最初に表示される。アニメーションが進むにつれて、図5Gに示すように、表現578Aは上方へ動き、表現578Bが、アプリケーションアイコン572Bに近接して表示される。次いで、図5Hに示すように、表現578Aが上方へ動き、表現578Bが表現578Aに向かって上方へ動き、表現578Cが、アプリケーションアイコン572Bに近接して表示される。表現578A~578Cは、アイコン572Bの上にアレイを形成する。いくつかの実施形態では、アニメーションは、図5F~図5Gに示すように、接触562の強度に従って進行し、接触562の強度が深い押下強度閾値(例えば、「ITD」)に向かって増大するにつれて、表現578A~578Cが現れ、上方へ動く。いくつかの実施形態では、アニメーションの進行が基づいている強度は、接触の特性強度である。図5E~図5Hを参照して説明する動作は、デバイス100、300、又は500に類似若しくは同一の電子デバイスを使用して実行することができる。
いくつかの実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的な入力を回避するために強度ヒステリシスを採用し、デバイスは、押下入力強度閾値との既定の関係を有するヒステリシス強度閾値を定義又は選択する(例えば、ヒステリシス強度閾値は、押下入力強度閾値よりもX強度単位低い、又はヒステリシス強度閾値は、押下入力強度閾値の75%、90%、若しくはなんらかの妥当な割合である)。したがって、いくつかの実施形態では、押下入力は、押下入力強度閾値を上回るそれぞれの接触の強度の増大、及びそれに続く押下入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、それに続くヒステリシス強度閾値を下回るそれぞれの接触の強度の減少(例えば、それぞれの押下入力の「アップストローク」)を検出したことに応じて実行される。同様に、いくつかの実施形態では、押下入力は、デバイスが、ヒステリシス強度閾値以下の強度から押下入力強度閾値以上の強度への接触の強度の増大、及び任意選択的に、その後のヒステリシス強度以下の強度への接触の強度の減少を検出するときにのみ検出され、それぞれの動作は、押下入力(例えば、状況に応じて、接触の強度の増大又は接触の強度の減少)を検出したことに応じて実行される。
説明を容易にするために、押下入力強度閾値に関連付けられた押下入力、又は押下入力を含むジェスチャに応じて実行される動作の説明は、任意選択的に、押下入力強度閾値を上回る接触の強度の増大、ヒステリシス強度閾値を下回る強度から押下入力強度閾値を上回る強度への接触の強度の増大、押下入力強度閾値を下回る接触の強度の減少、及び/又は押下入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少のいずれかを検出したことに応じてトリガされる。更に、押下入力強度閾値を下回る接触の強度の減少を検出したことに応じて実行されるように動作が記載される例では、動作は、任意選択的に、押下入力強度閾値に対応し、且つそれよりも低いヒステリシス強度閾値を下回る接触の強度の減少を検出したことに応じて実行される。
本明細書では、「インストール済みアプリケーション」は、電子デバイス(例えば、デバイス100、300、及び/又は500)上へダウンロードされ、デバイス上で起動する準備ができた(例えば、開かれた)ソフトウェアアプリケーションを指す。いくつかの実施形態では、ダウンロードされたアプリケーションは、ダウンロードされたパッケージからプログラム部分を抽出し、抽出された部分をコンピュータシステムのオペレーティングシステムと統合するインストールプログラムによって、インストール済みアプリケーションになる。
本明細書では、「開いているアプリケーション」又は「実行中のアプリケーション」という用語は、保持された状態情報(例えば、デバイス/グローバル内部状態157及び/又はアプリケーション内部状態192の一部として)を有するソフトウェアアプリケーションを指す。開いている又は実行中のアプリケーションは、任意選択的に、以下のタイプのアプリケーションのうちのいずれか1つである。
● アプリケーションが使用されているデバイスのディスプレイスクリーンに現在表示されているアクティブなアプリケーション、
● 現在表示されていないが、アプリケーションに対する1つ以上のプロセスが1つ以上のプロセッサによって処理されている背景アプリケーション(又は背景プロセス)、並びに
● 稼働していないが、(それぞれ、揮発性及び不揮発性の)メモリに記憶されており、且つアプリケーションの実行を再開するために使用することができる状態情報を有する、中断又は休止状態のアプリケーション。
本明細書では、「閉じているアプリケーション」という用語は、保持された状態情報を有していないソフトウェアアプリケーションを指す(例えば、閉じているアプリケーションに対する状態情報は、デバイスのメモリ内に記憶されていない)。したがって、アプリケーションを閉じることは、アプリケーションに対するアプリケーションプロセスを停止及び/又は除去し、アプリケーションに対する状態情報をデバイスのメモリから除去することを含む。概して、第1のアプリケーション中に第2のアプリケーションを開いても、第1のアプリケーションは閉じない。第2のアプリケーションが表示されており、且つ第1のアプリケーションが表示を終了されたとき、第1のアプリケーションは背景アプリケーションになる。
次に、ポータブル多機能デバイス100、デバイス300、又はデバイス500などの電子デバイス上で実施されるユーザインタフェース(「UI」)及び関連プロセスの実施形態に注意を向ける。
図6A~図6Rは、いくつかの実施形態に係る、オーディオデータを共有するための例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、図7~図8のプロセスを含む後述のプロセスを例示するために使用される。
図6Aは、電子デバイス600及びデバイス625(「TAYLORのイヤホン」とも呼ばれる)を示す。いくつかの実施形態では、デバイス600は、デバイス100、300又は500である。デバイス600は、タッチ感知ディスプレイ(例えば、タッチスクリーン504)として示されるディスプレイデバイス602を有する。デバイス625は、デバイス600に接続し、通信リンクC1を介してデバイス600から受信したオーディオデータに基づいてオーディオ(例えば、人間の可聴音波)を出力するように構成されている。図6Aに示す実施形態では、通信リンクC1は無線(例えば、Bluetooth)接続である。いくつかの実施形態では、通信リンクC1は有線接続である。いくつかの実施形態では、デバイス625は、デバイス100、デバイス300又はデバイス500の1つ以上の特徴(例えば、オーディオ回路110、スピーカ111、マイクロフォン113)を含む。いくつかの実施形態では、デバイス625は、無線スピーカ、又はデバイス600に接続し、デバイス600から受信したオーディオデータに基づいてオーディオを出力するように構成された任意のデバイスである。図6Aに示すように、デバイス625は、イヤホン625a及びイヤホン625bからなるペアの無線イヤホンである。図6Aに示す実施形態では、デバイス625は、2つの物理的に別個のイヤホンを含む複合デバイスであるが、イヤホン625a及びイヤホン625bは、1つのデバイスとして一緒に動作する。いくつかの実施形態では、デバイス625は、デバイス600と接続する一次イヤホンと、一次イヤホンと通信し、一次構成要素を介してデバイス600からオーディオ信号を受信する二次イヤホンとを有する。いくつかの実施形態では、イヤホン625a及びイヤホン625bは、デバイス600に各々接続されるが、デバイス600によって単一の外部デバイスとして扱われる。
図6Aでは、デバイス600は、オーディオメディアユーザインタフェース604aを含むユーザインタフェース604を表示する。オーディオメディアユーザインタフェース604aは、現在のオーディオインジケータ604a-1を含み、現在のオーディオインジケータ604a-1は、オーディオ出力を提供するデバイス(「TAYLORのイヤホン」)、トラック名(「トラック1」)、及びアーティスト名(「DJ APPLESEED」)などのデバイス600に関連付けられたオーディオアプリケーション(例えば、オープンオーディオアプリケーション)に関する情報を含む。オーディオメディアユーザインタフェース604aは、アフォーダンス604a-2、604a-3、604a-4、604a-5及び604a-6を含む。アフォーダンス604a-2、604a-3、604a-5は、それぞれのオーディオデバイスに対応し、選択されると、選択されたデバイスにオーディオを提供する。図6Aでは、アフォーダンス604a-3上のチェックマークは、デバイス625(「TAYLORのイヤホン」)が現在選択されているオーディオデバイスであり、現在のオーディオインジケータ604a-1と一致することを示す。音量アフォーダンス604a-6は、現在選択されているオーディオデバイスの音量レベルを調整するように選択することができる。
オーディオアフォーダンス604a-4を共有することは、現在選択されているオーディオデバイス(例えば、デバイス625)を介してオーディオを同時に提供しながら、オーディオデータを別のデバイスと共有するためのプロセスを開始するように選択することができる。例えば、オーディオを共有することにより、デバイス600は、他のユーザのデバイスとの一時的な接続を形成することが可能になり、その結果、2人のユーザは、他のユーザのデバイスと持続的又は恒久的な関連付けを形成することなく(例えば、以下により詳細に説明するように、デバイス600を他のユーザのデバイスとペアリングすることなく)、同時に同じオーディオを一緒に聞くことができる。
図6Aでは、デバイス600は、共有オーディオアフォーダンス604a-4の選択に相当する入力610a(例えば、タップ)を検出する。入力610aを検出したことに応じて、デバイス600は、デバイス625及び第2の外部デバイスに同時にオーディオデータを提供するプロセスを開始する。図6Bに示す実施形態では、プロセスは、ユーザインタフェース606を表示することを含む。ユーザインタフェース606は、オーディオデータを別のデバイス(例えば、別のペアの無線ヘッドホン又はイヤホン)と共有する方法に関する命令606a-1を有するユーザインタフェースカード606aを含む。命令606a-1は、別のペアの無線ヘッドホンをデバイス600に近接させることによって、オーディオを共有することができることを説明する。ユーザインタフェースカード606aは、デバイス600がデバイス600に近づけられた場合にオーディオデータを共有することができるデバイス(又はデバイスのタイプ)を表すグラフィカル要素606a-2を含む。このようにして、デバイス600は、デバイス600に近づけられた場合に、オーディオデータを共有することができる潜在的なデバイス又は製品をユーザに通知する。いくつかの実施形態では、デバイス600は、デバイス600が共有することができる2つ以上のデバイスの表現を表示する。図6Cでは、デバイス600は、デバイス600がデバイス600に近づけられた場合にオーディオデータを共有することができる別のグラフィカル要素606a-3を表示する。デバイス600は、様々な方法(例えば、同時に又は順次)で、潜在的デバイスのグラフィカル要素(例えば、グラフィカル要素606a-2及び606a-3)を表示することができる。図6Cに示すように、デバイス600は、ユーザインタフェース606上でグラフィカル要素606a-2をグラフィカル要素606a-3に置き換える。
命令606a-1によって示されるように、デバイス600は、オーディオデータ(例えば、同じオーディオデータ)をデバイス625に同時に提供しながら、近接条件の充足を使用して、オーディオデータを別のデバイスと共有することができる。1つのデバイスの別のデバイスへの近接度の使用は、ユーザが、デバイスの一方又は両方の上でなんらかのアクションを実行する(例えば、インタフェースを呼び出す、オーディオデータを共有する)ことを望むという明確なインジケータとして使用することができる。例えば、これにより、機能を実行するために、(例えば、デバイスディスプレイ上の1つ以上のメニューをナビゲートするための)過剰なユーザ入力を回避することによって、デバイスリソースの浪費を防止することができる。更に、これにより、例えば、機能を実行する(例えば、ディスプレイ上のインタフェースを呼び出す、オーディオデータを共有する)ために必要とされるユーザ入力の数を低減することによって、ユーザの時間を節約することもできる。
図6Cは、デバイス650(「CHANCEのイヤホン」とも呼ばれる)を、デバイス600から比較的長い距離で含むシナリオの例示的な図を示す。デバイス650は、デバイス600に接続し、デバイス600から受信したオーディオデータに基づいてオーディオ(例えば、人間の可聴音波)を出力するように構成されている。いくつかの実施形態では、デバイス650は、デバイス100、300、500又は625の1つ以上の特徴(例えば、オーディオ回路110、スピーカ111、マイクロフォン113)を含む。いくつかの実施形態では、デバイス650は、無線スピーカ、又はデバイス600に接続し、デバイス600から受信したオーディオデータに基づいてオーディオを出力するように構成された任意のデバイスである。図6Cに示すように、デバイス650は、イヤホン650a、イヤホン650b及びケース650cからなるペアの無線イヤホンである。いくつかの実施形態では、ケース650cは、イヤホン650a及びイヤホン650bとインタフェースして、デバイス600との接続を初期化し(例えば、図6Eを参照して以下に説明するように)、及び/又はイヤホン650a及びイヤホン650bに関連付けられた他の動作(例えば、充電)を実行する。図6Cに示す実施形態では、イヤホン650a、イヤホン650b及びケース650cは、単一のデバイスとして一緒に動作し、単一のデバイスとしてデバイス600によって扱われる。
図6Cに示す実施形態では、デバイス600は、デバイス625と同じユーザ(例えば、Taylor)に関連付けられ、デバイス625とペアリングされる。いくつかの実施形態では、2つのデバイスは、それらが互いに永続的な関連性を有する場合にペアリングされ、通信リンクを介してデータを交換するように構成される。例えば、デバイス625は、デバイス間の通信リンクC1が現在アクティブでないときにデバイス600に関連付けられたままである(例えば、デバイス600は、接続が失われた場合にデバイス625と自動的に再接続することを試みるか、又はデバイス600が、デバイス625と共通の永続的構成設定を共有する)。図8Cでは、デバイス650は、デバイス600とペアリングされていない。後述するように、デバイス600は、デバイス650との一時的な接続を確立して、ペアリングされたデバイス625(例えば、Taylor自身のイヤホン)にも提供されている別のユーザ(例えば、Chance)とオーディオデータを共有することができるが、デバイス650は、一時的な接続が終了した後、デバイス600との関連付けを維持しない。
図6Cは、デバイス600の周囲の近接条件範囲インジケータ605を示す。近接条件範囲インジケータは、本明細書では、「近接ゾーンインジケータ」、又は単に「近接ゾーン」とも呼ばれる。デバイス650は、近接条件範囲インジケータ605の内側にない。近接条件範囲インジケータ605は、視覚的補助として含まれ、近接条件を満たす物理的近接度を表すことを意図している。例えば、範囲インジケータ605は、デバイス600の近距離通信検出回路の範囲を表すことができる。いくつかの実施形態では、任意の適切な技術を使用して、デバイス間の近接度を検出することができる。例えば、いくつかの実施例では、広帯域無線接続が使用される。広帯域無線接続は、例えば、1つ以上のデバイスの方向性、距離、及び向きのうちの1つ以上を判定するために使用される。したがって、(例えば、部分的又は完全に)近接条件範囲インジケータ605内の検出可能なデバイスの存在は、近接条件を満たすが、検出可能なデバイスが範囲インジケータ605の外側に位置する場合は、近接条件を満たさない。当業者であれば、物理的近接度の検出範囲が不均一であり得、多数の変数(例えば、無線干渉、空気湿度など)によって影響を受け得、三次元の空間内の点を含むことができ、これらの全てが本開示の範囲内であることが意図されていることを理解するであろう。したがって、近接条件範囲インジケータ605のグラフィカル表現は、近接条件が満たされているかどうかを判定する範囲を限定することを意図するものではない。更に、図は必ずしも縮尺とおりではなく、単に視覚的補助として含まれる。したがって、特に断りがない限り、図に示される特徴のサイズ及び縮尺は、近接している又は近接条件を満たすために必要とされる距離に対する制限として意図するものではない。いくつかの実施形態では、入力610aの検出に応じて、デバイス600は、デバイス600が、オーディオデータを共有することができる近接条件範囲インジケータ605内のデバイスを検出するように構成されるモードに入る。
図6Dは、デバイス600から離れた短い距離にあるデバイス600を含む例示的な図を示す。6Dに示すように、デバイス600及びデバイス650は、互いに近接し、この時、デバイス650は、少なくとも部分的に近接条件範囲インジケータ605内にある。近接条件範囲インジケータ605は、近接条件を満たす物理的近接度を表すので、デバイス600は、デバイス600とデバイス650との間の物理的近接度が近接条件を満たすというインジケーションを検出する(例えば、且つこれに応じて、デバイス650との通信を開始し、例えば、条件が満たされているというインジケーションを送信する)。いくつかの実施例では、デバイス650は、近接条件が満たされているというインジケーションを検出する(例えば、且つこれに応じて、デバイス600との通信を開始し、例えば、条件が満たされているというインジケーションを送信する)。
物理的近接度が近接条件を満たすというインジケーションを検出したことに応じて、デバイス600は、図6Dに示すように、デバイス600とデバイス650との間の物理的近接度が近接条件を満たすことを示すユーザインタフェース608を表示する。ユーザインタフェース608は、デバイス600との近接条件を満たしたデバイスを識別し、選択されると、オーディオデータをデバイス625に同時に提供する間に、オーディオデータを提供するためのデバイス650との接続(例えば、通信リンク)を開始することによってオーディオデータを共有するプロセスを継続する確認アフォーダンス608a-3を提供する、近接ユーザインタフェース608aを含む。近接ユーザインタフェース608aは、デバイス650を、テキストインジケータ608a-1(「CHANCEのイヤホン」)と、デバイス650の代表画像を含むグラフィカル要素608a-2とを有する近接条件範囲インジケータ605内にあると識別する。グラフィカル要素608a-2は、デバイス650が、(例えば、図6Cのグラフィカル要素606a-3によって示されるような、無線ヘッドホンのペアとは対照的に)無線イヤホンのペアであることを示す。
図6Dでは、デバイス600は、確認アフォーダンス608a-3の選択に相当する入力610b(例えば、タップ)を検出する。入力610bを検出したことに応じて、デバイス600は、図6Eに示されるように、ユーザインタフェース612を表示する。ユーザインタフェース612は、テキストインジケータ612a-1(例えば、608a-1)と、グラフィカル要素612a-2と、デバイス650をデバイス600と接続するプロセスを継続するための命令612a-3とを含む、接続指示ユーザインタフェース612aを含む。命令612a-3は、デバイス650上のボタン650c-1を押し続けるようにユーザに指示し、グラフィカル要素612a-2は、ボタン650c-1の表現を見ることができる視点からのデバイス650の代表画像を含む。
図6Eでは、デバイス650は、ボタン650c-1の押圧及び保持を含む入力610cを検出する。いくつかの実施形態では、入力610cを検出することに応じて、デバイス650は、デバイス650がデバイス600に接続され得ることを示す信号をデバイス600に送信する。デバイス650から信号を受信した後(例えば、応じて)、デバイス600は、図6Fに示されるように、ユーザインタフェース614を表示する。ユーザインタフェース614は、デバイス600がデバイス650を用いて通信リンクC2を作成するプロセスにあることを示す。ユーザインタフェース614は、テキストインジケータ614a-1(例えば、608a-1)、グラフィカル要素614a-2(例えば、グラフィカル要素608a-3及びグラフィカル要素612a-3とは異なる視点からのデバイス650の代表画像)を含むユーザインタフェース614aを接続することを含む。いくつかの実施形態では、デバイス600は、第2の外部デバイス(例えば、デバイス650)に接続し、(例えば、デバイス650上の入力610cを必要とせず、ユーザインタフェース612を表示することなく)入力610bを検出したことに応じて、ユーザインタフェース614を表示する。
デバイス600との通信リンクC2を確立した後(例えば、応じて)、図6Gに示すように、ユーザインタフェース616を表示する。図6Gでは、デバイス600は、デバイス625及びデバイス650が同じオーディオを出力するように、(通信リンクC1を介して)デバイス625及び(通信リンクC2を介して)デバイス650に同時に接続され、オーディオデータを提供する。いくつかの実施形態では、デバイス600は、第2の外部デバイス(例えば、デバイス650)に接続し、(例えば、デバイス650上の入力610cを必要とせず、ユーザインタフェース612及び614を表示することなく)入力610bを検出したことに応じて、ユーザインタフェース616を表示する。
ユーザインタフェース616は、デバイス600がデバイス625及びデバイス650にオーディオデータを同時に提供することを示すオーディオメディアユーザインタフェース616a(例えば、オーディオメディアユーザインタフェース604aの更新されたバージョン)を含む。オーディオメディアユーザインタフェース616aは、トラック名(トラック1)及びアーティスト名(DJ Appleseed)を含む現在のオーディオインジケータ616a-1を含む。現在のオーディオインジケータ604a-1と比較して、現在のオーディオインジケータ616a-1は、図6Aのように、デバイス625(TAYLORのイヤホン)のみではなく、オーディオが2つのヘッドホンに提供されていることを示す。オーディオメディアユーザインタフェース616aは、アフォーダンス616a-2、616a-3、616a-4、616a-5及び616a-6を含む。アフォーダンス616a-3及びアフォーダンス616a-4上のチェックマークは、デバイス625(「TAYLORのイヤホン」)及びデバイス650が現在、現在のオーディオインジケータ616a-1と一致してオーディオ出力のために選択されていることを示す。アフォーダンス616a-3及びアフォーダンス616a-4は各々、選択されると、対応するデバイスの個々の音量レベルを制御する音量スライダ(例えば、アフォーダンス616a-4上の音量スライダは、デバイス625の音量レベルを変更することなく、デバイス650の音量レベルを調整するために選択され得る)を含む。アフォーダンス616a-2は、デバイス600に関連付けられた寝室スピーカ上にオーディオデータを出力するように(例えば、またデバイス625及びデバイス650にオーディオデータを提供するのを停止するために)選択することができる。音量アフォーダンス616a-6は、単一の入力でデバイス625及びデバイス650の音量レベルを調整するように選択することができる。いくつかの実施形態では、アフォーダンス616a-6を用いてデバイス625及びデバイス650の音量レベルを調整することは、デバイス625及びデバイス650の音量レベルを、同じ音量レベルに設定する(例えば、デバイス625及びデバイス650が、アフォーダンス616a-6の選択前に異なる音量レベルを有していても)。いくつかの実施形態では、アフォーダンス616a-6を用いてデバイス625及びデバイス650の音量レベルを調整することは、それぞれのデバイスの初期音量レベル及びアフォーダンス616a-6上の入力(例えば、音量調整アフォーダンス616a-7がその初期位置から移動される位置)に基づいて、デバイス625及びデバイス650の音量レベルをそれぞれの音量レベルに設定する。
図6Gでは、デバイス650のイヤホン650a及び650bは、ケース650cなしで、近接条件範囲インジケータ605の外側に描かれている。いくつかの実施形態では、イヤホン650a及び650bは、通信リンクC2を確立する(例えば、入力610cの間に)ためにケース650c内になければならず、通信ラインC2が確立された後にケース650cなしでデバイス600からオーディオデータを受信することができる。いくつかの実施形態では、デバイス650はケース650cを含まず、且つ/又はイヤホン650a及び650bは、デバイス600との通信リンクC2を確立するためにケース650c内にある必要はない。
上述したように、図6Gでは、デバイス650は、通信リンクC2を維持している間に近接条件範囲インジケータ605の外側にある(例えば、デバイス650は、オーディオデータを受信するために、近接条件範囲インジケータ605の内部に留まる必要はない)。図6Hでは(例えば、デバイス650がデバイス600から離れて近接条件範囲インジケータ605の外側に移動された後)、デバイス650は、近接条件範囲インジケータ615の内側に配置される(例えば、デバイス650はデバイス600に向かって戻される)。いくつかの実施形態では、近接条件範囲インジケータ615は、近接条件範囲インジケータ605と同じである。いくつかの実施形態では、近接条件範囲インジケータ615は、近接条件範囲インジケータ605とは異なる。近接条件範囲インジケータ615は、接続解除近接条件を満たす物理的近接度を表す。いくつかの実施形態では、接続解除近接条件は、第2の外部デバイスを用いてオーディオデータを提供するためのプロセスを開始するための上述の近接条件と同じである。いくつかの実施形態では、接続解除近接条件は、第2の外部デバイスを用いてオーディオデータを提供するためのプロセスを開始するための近接条件とは異なる。
近接条件範囲インジケータ615は、接続解除近接条件を満たす物理的近接度を表すので、デバイス600は、デバイス600とデバイス650との間の物理的近接度が接続解除近接条件を満たすというインジケーションを検出する(例えば、且つこれに応じて、デバイス650との通信を開始し、例えば、接続解除の条件が満たされているというインジケーションを送信する)。いくつかの実施例では、デバイス650は、接続解除近接条件が満たされているというインジケーションを検出する(例えば、且つこれに応じて、デバイス600との通信を開始し、例えば、接続解除条件が満たされているというインジケーションを送信する)。
物理的近接度が接続解除近接条件を満たすというインジケーションを検出したことに応じて、デバイス600は、デバイス600とデバイス650との間の物理的近接度が接続解除近接条件を満たすことを示すユーザインタフェース618を表示する。ユーザインタフェース618は、デバイス600との接続解除近接条件を満たしたデバイス(例えば、デバイス650)を識別し、選択されると、デバイス600と近接しているデバイスをデバイス600から接続解除するためのプロセスを開始する接続解除アフォーダンス618a-4を提供する接続解除ユーザインタフェース618aを含む。接続解除近接ユーザインタフェース618aは、デバイス650がテキストインジケータ618a-1 (「Chanceのイヤホン」)と共に近接条件範囲インジケータ615内にあると識別し、グラフィカル要素618a-2及びグラフィカル要素618a-3を含む。グラフィカル要素618a-2は、デバイス600がデバイス650の代表画像を含むグラフィカル要素618a-3によって表されるデバイスとオーディオを一時的に共有していることを示す。
いくつかの実施形態では、デバイス600は、デバイス600との接続解除近接条件を満たすデバイスがデバイス600とペアリングされていないという判定に従って、ユーザインタフェース618aを接続解除する。いくつかの実施形態では、デバイス600との接続解除近接条件を満たすデバイスがデバイス600とペアリングされているとデバイス600が判定した場合、デバイス600は、接続解除ユーザインタフェース618aの表示を取り止め、任意選択的に異なるユーザインタフェースを表示する。例えば、デバイス625がデバイス600とペアリングされているいくつかの実施形態では、デバイス625がデバイス600との接続解除近接条件を満たすという判定に従って、デバイス600は、デバイス625をデバイス600から接続解除するか、又はデバイス625へのオーディオデータの提供を停止するオプションなしに、デバイス625に関する情報(例えば、バッテリレベルなどのデバイス625の現在の状態)を表示する。
図6Hでは、デバイス600は、接続解除アフォーダンス618a-4の選択に相当する入力610d(例えば、タップ)を検出する。入力610dの検出に応じて、デバイス600は、デバイス650へのオーディオデータの提供を停止する。いくつかの実施形態では、入力610dの検出に応じて、デバイス600は、図6Iに示すように、デバイス650から接続解除し(例えば、通信リンクC2を接続解除する)、ユーザインタフェース620(例えば、ユーザインタフェース618aを接続解除せずにユーザインタフェース618)を表示する。いくつかの実施形態では、デバイス600は、デバイス625にオーディオデータを提供することを停止した後、及び/又はデバイス650から接続解除した後、デバイス650にオーディオデータを提供し続ける。
図6Iでは、デバイス600がデバイス650から接続解除された後、デバイス600は、デバイス625と接続されたままであり、デバイス650は、近接条件範囲インジケータ635の外側に配置される。図6Jでは、デバイス650は、近接条件範囲インジケータ635の内側に配置される(例えば、デバイス650はデバイス600に向かって戻される)。いくつかの実施形態では、近接条件範囲インジケータ635は、近接条件範囲インジケータ605及び/又は615と同じである。いくつかの実施形態では、近接条件範囲インジケータ635は、近接条件範囲インジケータ605及び/又は615とは異なる。近接条件範囲インジケータ635は、第2の近接条件を満たす物理的近接度を表す。いくつかの実施形態では、第2の近接条件は、第2の外部デバイスを用いてオーディオデータを提供するためのプロセスを開始するための上記の近接条件と同じである。いくつかの実施形態では、第2の近接条件は、第2の外部デバイスを用いてオーディオデータを提供するためのプロセスを開始するための近接条件とは異なる。
近接条件範囲インジケータ635は、第2の近接条件を満たす物理的近接度を表すので、デバイス600は、デバイス600とデバイス650との間の物理的近接度が第2の近接条件を満たすというインジケーションを検出する(例えば、且つこれに応じて、デバイス650との通信を開始し、例えば、第2の条件が満たされているというインジケーションを送信する)。いくつかの実施形態では、デバイス650は、第2の近接条件が満たされているというインジケーションを検出する(例えば、且つこれに応じて、デバイス600との通信を開始し、例えば、第2の条件が満たされているというインジケーションを送信する)。いくつかの実施形態では、デバイス600は、デバイス600とデバイス650との間の物理的近接度が、共有オーディオアフォーダンス604a-1の選択に相当する入力を以前に検出することなく、第2の近接条件を満たすというインジケーションを検出する。
物理的近接度が第2の近接条件を満たすというインジケーションを検出したことに応じて、デバイス600は、デバイス600とデバイス650との間の物理的近接度が第2の近接条件を満たすことを示すユーザインタフェース622を表示する。ユーザインタフェース622は、デバイス600との第2の近接条件を満たしたデバイスを識別する第2の近接ユーザインタフェース622aを含み、選択されると、デバイス650及びデバイス625に同時にオーディオデータを提供するためにデバイス650との接続を確立するプロセスを開始する共有オーディオアフォーダンス622a-4を提供する。いくつかの実施形態では、デバイス600は、第2の近接ユーザインタフェース622aを表示するために、デバイス650との接続又は通信リンクを以前に確立する必要はない。
第2の近接ユーザインタフェース622aは、テキストインジケータ622a-1(「CHANCEのイヤホン」)、グラフィカル要素622a-2、及びグラフィカル要素622a-3を有する近接条件範囲インジケータ635内にあるものとしてデバイス650を識別する。グラフィカル要素622a-2は、デバイス600がデバイス650とオーディオを一時的に共有することができる情報(例えば、テキスト)を含む。グラフィカル要素622a-3は、デバイス650の代表画像を含む。加えて、第2の近接ユーザインタフェース622aは、選択されると、デバイス650をデバイス600に接続する(例えば、ペアリングする)アフォーダンス622a-5を含む。いくつかの実施形態では、共有アフォーダンス622a-4を選択することによりオーディオを一時的に共有するのとは対照的に、アフォーダンス622a-5を選択することによりデバイス650をデバイス600に接続すると、デバイス625とデバイス600との間の通信リンクC1が接続解除され、それにより、デバイス600は、デバイス625及びデバイス650の両方にオーディオデータを同時に提供しない(例えば、デバイス650は、一次ヘッドホンデバイスとしてデバイス625に取って代わる)。
図6Jでは、デバイス600は、共有アフォーダンス622a-4の選択に相当する入力610e(例えば、タップ)を検出する。入力610eの検出に応じて、デバイス600は、デバイス650及びデバイス625に同時にオーディオデータを提供するためにデバイス650との接続を確立するプロセスを開始する(例えば、図6E~図6Fを参照して説明したプロセスを含む)。
いくつかの実施形態では、デバイス600がデバイス650との通信リンクC2を確立した後、デバイス600は、図6Kに示すように、確認ユーザインタフェース624aを含むユーザインタフェース624を表示する。確認ユーザインタフェース624aは、デバイス600がデバイス650とオーディオデータを共有している(又は共有するように構成されている)一方で、同時にデバイス625にオーディオデータを提供していることを示す(例えば、グラフィカル要素624a-1、624a-2、及び624a-3を介して)。いくつかの実施形態では、確認ユーザインタフェース624aは、入力610b若しくは入力610cに応じて、又はユーザインタフェース614aの接続を表示した後に、デバイス600とデバイス650との間の通信リンクを確立すると、表示される。
図6Kでは、デバイス600は、完了アフォーダンス624a-4の選択に相当する入力610f(例えば、タップ)を検出する。入力610fを検出したことに応じて、デバイス600は、通信リンクC1及びC2を維持しながら、確認ユーザインタフェース624aの表示を停止する。
ここで図6Lを参照すると、デバイス600が(上述の)ユーザインタフェース604を表示し、デバイス625(「TAYLORのイヤホン」)と(例えば、通信リンクC1を介して)接続されるシナリオが示されている。デバイス650は、(通信リンクC3を介して)デバイス675に接続される(例えば、デバイス650と同じユーザに関連付けられた電話機)。デバイス675は、近接条件範囲インジケータ635内にあり、デバイス650及びデバイス675は、デバイス600に接続されていない。いくつかの実施形態では、図6Jの近接条件範囲インジケータ635内にあるデバイス650とは対照的に、デバイス600は、デバイス675とオーディオデータを共有するための近接ユーザインタフェース(例えば、622a)を表示しない。例えば、デバイス600は、デバイス675が特定の種類のデバイス(例えば、電話機)であるという判定に従って、又はデバイス675が特定の種類のデバイス(例えば、無線ヘッドホン又は無線イヤホン)ではないという判定に従って、近接ユーザインタフェース識別デバイス675を表示を取り止める。
図6Lでは、デバイス600は、共有オーディオアフォーダンス604a-4の選択に相当する入力610g(例えば、タップ)を検出する。入力610gを検出したことに応じて、デバイス600は、デバイス625及び第2の外部デバイスに同時にオーディオデータを提供するプロセスを開始する(例えば、図6Aを参照して説明したプロセス)。いくつかの実施形態では、共有オーディオアフォーダンス604a-4の選択を検出したことに応じて、デバイス600は、デバイス600がデバイス675とオーディオデータを共有し、同時にオーディオデータをデバイス625に提供するモードに入る(例えば、デバイス600は、オーディオ共有アフォーダンス604a-4の選択に応じて、オーディオ共有アフォーダンス604a-4の選択前に適用された近接条件とは異なる近接条件を適用する)。
図6Mでは、デバイス675は、近接条件範囲インジケータ605内にある。いくつかの実施形態では、近接条件範囲インジケータ635は、共有オーディオアフォーダンス604a-4の選択の前に適用され、近接条件範囲インジケータ605は、共有オーディオアフォーダンス604a-4の選択後に(例えば、所定の時間にわたって)適用される。近接条件範囲インジケータ605は、近接条件を満たす物理的近接度を表すので、デバイス600は、デバイス600とデバイス675との間の物理的近接度が近接条件を満たすというインジケーションを検出する(例えば、且つこれに応じて、デバイス675との通信を開始し、例えば、条件が満たされているというインジケーションを送信する)。いくつかの実施形態では、デバイス675は、近接条件が満たされているというインジケーションを検出する(例えば、且つこれに応じて、デバイス600との通信を開始し、例えば、条件が満たされているというインジケーションを送信する)。
物理的近接度が近接条件を満たすというインジケーションを検出したことに応じて、デバイス600は、図6Mに示すように、デバイス600とデバイス675との間の物理的近接度が近接条件を満たすことを示すユーザインタフェース626を表示する。ユーザインタフェース626は、デバイス600との近接条件を満たすデバイス(例えば、675)のユーザ(例えば、Chance)を識別する近接ユーザインタフェース626aを含む。近接ユーザインタフェース626aは、とりわけ、選択されると、同時にオーディオデータをデバイス625に提供する間に、オーディオデータを提供するためのデバイス675との接続(例えば、通信リンク)を開始することによってオーディオデータを共有するプロセスを継続する確認アフォーダンス626a-3を提供する。近接ユーザインタフェース626aは、共有オーディオアフォーダンス626a-3を選択することによって実行されるアクションを示すテキストインジケータ626a-1を有する近接条件範囲インジケータ605内にあるものとしてデバイス675を識別し、デバイス600とオーディオデータを共有する間に、デバイス625の音量を制御するためにデバイス675を独立して使用できるという情報を提供するグラフィカル要素626a-2を含む。いくつかの実施形態では、ユーザインタフェース626aは、デバイス675とデバイス600との近接度が近接条件を満たすという判定に従って表示される(例えば、デバイス650の近接度の代わりに)。いくつかの実施形態では、デバイス600とデバイス675との間の物理的近接度が近接条件を満たすというインジケーションを検出したことに応じて、デバイス600は、デバイス650の代わりにデバイス675に対応する情報及びグラフィカル要素を除いて、近接ユーザインタフェース608aと同様の近接ユーザインタフェースを表示する。
図6Mでは、デバイス600は、共有アフォーダンス626a-3の選択に相当する入力610h(例えば、タップ)を検出する。入力610hの検出に応答して、デバイス600は、図6Nに示すように、デバイス675との通信リンクC4を開始して、(デバイス625とデバイス650との間の通信リンクC3を介して)デバイス675及びデバイス650に同時にオーディオデータを提供する。
図6Nに示す実施形態では、デバイス600は、デバイス625及びデバイス650(デバイス675を介して)にオーディオデータを同時に提供する間に、ユーザインタフェース628を表示する。ユーザインタフェース628は、オーディオデータが2つのヘッドホンに同時に提供されていることを(オーディオ情報628a-1を介して)示すオーディオメディアユーザインタフェース628aを含む。オーディオメディアユーザインタフェース628aは、図6Oに示すように、選択されると、オーディオメディアユーザインタフェース630a(例えば、オーディオメディアユーザインタフェース616a)を含むユーザインタフェース630を表示するアフォーダンス628a-2を含む。オーディオメディアユーザインタフェース630aは、(例えば、入力610jを介して)選択されると、図6Pに示すように、オーディオアプリケーションユーザインタフェース632aを表示するアフォーダンス630a-1を含む。オーディオアプリケーションユーザインタフェース632aは、とりわけ、トラック制御632a-1、オーディオデータが2つのヘッドホンに同時に提供されていることを示すインジケーション632a-2、及び音量制御アフォーダンス632a-3を含む。図6Pでは、デバイス600は、音量制御アフォーダンス632a-3の選択に相当する入力610k(例えば、タップ)を検出する。入力610kを検出したことに応じて、デバイス600は、図6Qに示されるように、オーディオメディアユーザインタフェース634aを含むユーザインタフェース634を表示する。オーディオメディアユーザインタフェース634aは、トラック制御632a-1が、それぞれデバイス625及びデバイス650に対応する個々の音量制御アフォーダンス634a-1及び634a-2に置き換えられていることを除いて、オーディオメディアユーザインタフェース632aと同じである。デバイス650に対応する音量制御アフォーダンス634a-2は、選択されると、例えば、デバイス600とデバイス650との間の通信リンクC4を接続解除することによって、デバイス600にデバイス675とのオーディオデータの共有を中止させる接続解除アフォーダンス634a-3を含む。いくつかの実施形態では、デバイス600は、接続解除アフォーダンス634a-3を含むユーザインタフェース634aを表示し、一方、デバイス650は、デバイス600に直接接続され(例えば、図6Gに示すように、通信リンクC2を介して)、接続解除アフォーダンス634a-3の選択に応じてデバイス650から接続解除する。
図6Rを参照すると、デバイス600は、デバイス625と同時にオーディオデータを提供しながら、第2の外部デバイスとのオーディオデータの共有を停止するための例示的なユーザインタフェースを表示する。図6Rでは、デバイス600は、(デバイス675を介して)デバイス625及びデバイス650に接続される。いくつかの実施形態では、デバイス650は、デバイス600に直接接続される。デバイス600は、デバイス625及びデバイス650の両方にオーディオデータを同時に提供するように構成されている間に、デバイス600は、設定ユーザインタフェース636(例えば、Bluetooth設定メニュー)を表示する。設定ユーザインタフェース636は、グラフィカル要素636-1及び接続解除アフォーダンス636-2を含む。グラフィカル要素636-1は、デバイス600がデバイス650(CHANCEのイヤホン)とオーディオを共有していることを示す。接続解除アフォーダンス636-2は、選択されると、例えば、デバイス600とデバイス675との間の通信リンクC4を接続解除することによって、デバイス600にデバイス650とのオーディオデータの共有を中止させる。デバイス600がユーザインタフェース636を表示する実施形態では、デバイス650がデバイス600に直接接続されている間に(例えば、図6Gに示すように、通信リンクC2を介して)、デバイス600は、接続解除アフォーダンス636-2の選択に応じてデバイス650から接続解除する。
図7は、いくつかの実施形態に係る、電子デバイスを使用してオーディオデータを共有するための方法を示すフロー図である。方法700は、ディスプレイデバイス(例えば、602)を備えたデバイス(例えば、100、300、500、又は600)において実行される。方法700のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
後述するように、方法700は、オーディオデータを共有するための直感的な方法を提供する。この方法は、オーディオデータを共有するためのユーザの認識的負担を軽減し、それにより、より効率的なヒューマン-マシンインタフェースを作り出す。バッテリ駆動のコンピューティングデバイスの場合、ユーザがオーディオデータをより迅速且つ効率的に共有できるようにすることで、電力が節約され、バッテリ充電の時間間隔が増加する。
電子デバイス(例えば、600)が通信リンク(例えば、C1、Bluetooth)を介して第1の外部デバイス(例えば、625、無線ヘッドホン又は無線イヤホン)に接続され、電子デバイスが通信リンクを介して第1の外部デバイスにオーディオデータを提供するように構成されている間に、電子デバイスは、ディスプレイデバイスを介して、第1のアフォーダンス(例えば、604-4)を含む第1のユーザインタフェース(例えば、604)を表示する(702)。いくつかの実施形態では、電子デバイスは、電子デバイスが第1の外部デバイスに接続されているというインジケーションと同時に第1のアフォーダンスを表示する。いくつかの実施形態では、電子デバイスは、電子デバイスが第1の外部デバイスに接続されており、任意選択的に、電子デバイスがオーディオメディアアプリケーションを実行しているか、又は通信リンクを介して第1の外部デバイスにオーディオデータを能動的に提供しているという判定に従って、第1のアフォーダンスを表示する。いくつかの実施形態では、外部デバイスは、例えば、ワイヤ又はヘッドバンドを介して物理的に接続された2つのイヤカップ又はイヤホンを有するヘッドホンのペアなどの単一の物理デバイスである。いくつかの実施形態では、外部デバイスは、1つのデバイスとして一緒に動作する、複数の物理的に別個の構成要素又は物理的ユニットを有する複合デバイスである。いくつかの実施形態では、複合デバイスは、電子デバイスと接続する一次構成要素(例えば、イヤホン)と、一次構成要素と通信し、一次構成要素を介して電子デバイスからオーディオ信号を受信する二次構成要素とを有する。いくつかの実施形態では、複合デバイスは、各々が電子デバイスに接続されているが、電子デバイスによって単一の外部デバイスとして扱われる2つの構成要素を含む。
いくつかの実施形態では、電子デバイスは、電子デバイスが第2の外部デバイスにオーディオデータを同時に提供している間に、第1の外部デバイスが電子デバイスからオーディオデータを受信するように構成されているという判定に従って、第1のアフォーダンスを含む第1のユーザインタフェースを表示する。いくつかの実施形態では、電子デバイスは、電子デバイスが第2の外部デバイスにオーディオデータを同時に提供している間に、第1の外部デバイスが電子デバイスからオーディオデータを受信するように構成されていないという判定に従って、第1のアフォーダンスなしで第1のユーザインタフェースを表示する。
いくつかの実施形態では、電子デバイスは、電子デバイスがオーディオメディアアプリケーション(例えば、音楽アプリケーション、ポッドキャストアプリケーション、オーディオブックアプリケーション、マルチメディアアプリケーション、ウェブブラウザ再生オーディオ及び/又は動画)を実行しているという判定に従って、第1のアフォーダンスを含む第1のユーザインタフェースを表示する。いくつかの実施形態では、電子デバイスがオーディオメディアアプリケーションを実行していないという判定に従って、電子デバイスは、第1のアフォーダンスなしに第1のユーザインタフェースを表示する。
電子デバイスは、第1のアフォーダンスの選択に相当する入力(例えば、610a)を検出する(704)。
第1のアフォーダンスの選択に相当する入力を検出したことに応じて、電子デバイスは、第1の外部デバイス(例えば、625)及び第1の外部デバイスとは異なる第2の外部デバイス(例えば、650、675、無線ヘッドホン又は無線ear pod)に同時にオーディオデータを提供するプロセスを開始する(706)。いくつかの実施形態では、電子デバイスは、電子デバイスが、第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するプロセスを開始したという視覚的なインジケーションを表示する。いくつかの実施形態では、オーディオデータを共有するプロセスは、別のデバイスを電子デバイスに近接させてオーディオを一時的に共有する命令をユーザインタフェースに表示することを含む。電子デバイスが、第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するためのプロセスを開始したことの視覚的表示を表示し、一時的にオーディオを共有するために別のデバイスを電子デバイスに近づけるための命令を有するユーザインタフェースを表示することは、電子デバイスがオーディオデータを共有する準備ができているというフィードバックをユーザに提供し、オーディオ共有プロセスを続行する方法をユーザに知らせる。ユーザに改善された視覚的フィードバックを提供することにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供するプロセスを開始した後、電子デバイスは、電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件(例えば、605によって表される)を満たすというインジケーションを検出する(708)。いくつかの実施形態では、インジケーションは、近距離通信技術を使用して検出される。いくつかの実施形態では、近接条件は、第2の電子デバイスが電子デバイスから離れた閾値距離を超えない場合に満たされる。いくつかの実施形態では、閾値距離は、6インチ、12インチ、又は18インチである。
電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすというインジケーションを検出したことに応じて、電子デバイスは、電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすことを示す第2のユーザインタフェース(例えば、608、608a)を表示する(710)。電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすことを示す第2のユーザインタフェースを表示することは、物理的近接度が近接条件を満たすことをユーザに指示することによってフィードバックを自動的に提供し、したがって、オーディオデータを共有するために必要とされる入力の数を低減する。改善されたフィードバックを提供し、動作を実行するために必要とされる入力の数を低減し、更なるユーザ入力を必要とせずに条件のセットが満たされたときに動作を実行することにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、第2のユーザインタフェースは、第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するプロセスを完了するための命令を含む。いくつかの実施形態では、第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するプロセスは、電子デバイスと第2の外部デバイスとの間の一時的接続を確立することを含む。いくつかの実施形態では、第2のユーザインタフェースは、電子デバイスが第1のデバイスと同時に第2の外部デバイスとオーディオデータを共有するために、第2の電子デバイスとの接続を確立したか、又は確立している最中であるというインジケーションを含む。
いくつかの実施形態では、第2の外部デバイスは、電子デバイスからのオーディオデータに基づいてオーディオを出力するように構成され、電子デバイスに直接接続される(例えば、図6G、図6K)。例えば、いくつかの実施形態では、第2の外部デバイスは、第2の外部デバイスが接続されている電話機などの中間デバイスを介して、電子デバイスからオーディオデータを受信しない。
いくつかの実施形態では、第2の外部デバイス(例えば、675)は、第3の外部デバイス(例えば、650、無線ヘッドホン又は無線イヤホン)に接続され、オーディオデータを電子デバイスから第3の外部デバイスに提供するように構成される。
いくつかの実施形態では、第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供するプロセスを開始することの一部として、電子デバイスは、第1の潜在的な第2の外部デバイスの表現(例えば、606a-2)を表示する。いくつかの実施形態では、第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供するプロセスを開始することの一部として、電子デバイスは、第2の潜在的な第2の外部デバイスの表現(例えば、606a-3)を表示する。いくつかの実施形態では、電子デバイスは、第1の外部デバイスにオーディオデータを同時に提供する間に、電子デバイスは、電子デバイスに接続し、電子デバイスからオーディオデータを受信するように構成されたオーディオ出力デバイスの画像を表示する。いくつかの実施形態では、電子デバイスは、第1の潜在的な第2の外部デバイスの表現に続いて、第2の潜在的な第2の外部デバイスの表現を順次表示する(例えば、電子デバイスは、潜在的な第2の外部デバイスの表現を循環する)。電子デバイスがデータを共有することができる1つ以上の外部デバイスの表現を表示することは、ユーザにデータを共有するためにどのデバイスを使用することができるかを示すことによって、フィードバックを提供する。全てのデバイスが共有能力をサポートするわけではないため、潜在的なオプションを表示することは、どのデバイスを使用することができるかをユーザが知る助けとなる。改善されたフィードバックを提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援しユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、第2のユーザインタフェースは、選択されると、電子デバイスに、第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供させる、第2のアフォーダンス(例えば、608a-3)を含む。いくつかの実施形態では、電子デバイスは、第1のアフォーダンスの選択に相当する入力を検出したことに応じて、第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供するプロセスを開始するが、電子デバイスは、第2のアフォーダンスが選択されるまでオーディオデータを実際には提供しない。第2のユーザインタフェース上の第2のアフォーダンスの選択に応じて、電子デバイスに、第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供させることは、共有が真に望まれていることを確認することによって改善された制御を提供し、意図する前又は意図されていないデバイスとオーディオデータを不注意に共有することを回避する。共有プロセスに対する改善された制御を提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援しユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすというインジケーションを検出した後、且つ第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供する前に、電子デバイスは、第2の外部デバイスで入力を与える指示(例えば、612a-3)を表示する。いくつかの実施形態では、第2の外部デバイスは、電子デバイスに接続するための入力(例えば、第2の外部デバイス上のハードウェアボタンの押下)を必要とする。
いくつかの実施形態では、電子デバイスは、第2の外部デバイスが電子デバイスに接続されているというインジケーションを受信する。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されているというインジケーションを受信したことに応じて、電子デバイスは、第2の外部デバイスが電子デバイス(例えば、608a、616a-4、624a)に接続されているというインジケーションを提供する。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されているというインジケーションを提供することは、第2の外部デバイスのグラフィカル表現を表示することを含む。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されているというインジケーションは、オーディオ出力及び/又は触知出力を含む。
いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されている間に、電子デバイスは、選択されると、第2の外部デバイスを電子デバイスから接続解除する第3のアフォーダンス(例えば、618a-4、634a-3、636-2、906-3)を表示する。
いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されている間に、電子デバイスは、電子デバイスと第2の外部デバイスとの間の物理的近接度が第2の近接条件(例えば、615で表される)を満たすというインジケーションを検出する。いくつかの実施形態では、電子デバイスは、電子デバイスと第2の外部デバイスとの間の物理的近接度が第2の近接条件を満たすというインジケーションを検出したことに応じて、第3のアフォーダンス(例えば、618a-4)を表示する。いくつかの実施形態では、第3のアフォーダンスは、第2の外部デバイスが、近接条件を満たすために必要な範囲に再び入ったという判定に従って、表示される。いくつかの実施形態では、第2の近接条件は、(第1の)近接条件と同じである。電子デバイスと第2の外部デバイスとの間の物理的近接度が第2の近接条件を満たすというインジケーションの検出に応じて第2の外部デバイスを接続解除するためのアフォーダンスを表示すると、ユーザが第2の外部デバイスとのオーディオの共有を中止できるというフィードバックが提供され、第2の外部デバイスを接続解除するオプションを自動的に提示し、したがって、オーディオデータの共有を中止するために必要な入力の数が減少する。改善されたフィードバックを提供し、動作を実行するために必要とされる入力の数を低減し、更なるユーザ入力を必要とせずに条件のセットが満たされたときに動作を実行することにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、電子デバイスは、第2の外部デバイスが電子デバイスとペアリングされていないという判定に従って、第3のアフォーダンスを表示する。いくつかの実施形態では、2つのデバイス(例えば、第2の外部デバイス及び電子デバイス)は、それらが互いに永続的な関連性を有する場合にペアリングされ、通信リンクを介してデータを交換するように構成される。いくつかの実施形態では、デバイスは、それらが互いに永続的な関連性を有さない場合にはペアリングされない。いくつかの実施形態では、ペアリングされたデバイスは、デバイス間の通信リンクが現在アクティブではない場合、互いに関連付けられたままであるが、一時的に接続されるがペアリングされていないデバイスは、一時的な接続が終了した後に互いに関連付けられていない。いくつかの実施形態では、ペアリングされたデバイスは、共通の構成設定を共有する。いくつかの実施形態では、第2の外部デバイスが電子デバイスとペアリングされている場合、電子デバイスは、第3のアフォーダンスの表示を取り止め、任意選択的に、第2の外部デバイスの情報(例えば、バッテリレベル)を表示する。
いくつかの実施形態では、第3のアフォーダンスは、メニューユーザインタフェース(例えば、636)内に表示される。いくつかの実施形態では、メニューユーザインタフェースは、Bluetooth設定メニュー又はオーディオメディアプレーヤアプリケーションのオーディオ出力メニューユーザインタフェースである。
方法700に関連して上述したプロセスの詳細(例えば、図7)はまた、後述する方法にも類似する方式で適用可能であることに留意されたい。例えば、方法800、1000、及び/又は1200は、任意選択的に、方法700を参照して上述した様々な方法の特徴のうちの1つ以上を含む。例えば、方法700における第2のユーザインタフェースを表示する動作710は、方法800の動作802におけるインジケーションの検出に応じて実行することができる。別の例として、方法700の動作は、方法1000及び/又は方法1200の動作の前に実行することができる。簡潔にするために、これらの詳細は、以下で繰り返さない。
図8は、いくつかの実施形態に係る、電子デバイスを使用してオーディオデータを共有するための方法を示すフロー図である。方法800は、ディスプレイデバイス(例えば、602)を備えたデバイス(例えば、100、300、500、又は600)において実行される。方法800のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
後述するように、方法800は、オーディオデータを共有するための直感的な方法を提供する。この方法は、オーディオデータを共有するためのユーザの認識的負担を軽減し、それにより、より効率的なヒューマン-マシンインタフェースを作り出す。バッテリ駆動のコンピューティングデバイスの場合、ユーザがオーディオデータをより迅速且つ効率的に共有できるようにすることで、電力が節約され、バッテリ充電の時間間隔が増加する。
電子デバイスが通信リンク(例えば、C1)を介して第1の外部デバイス(例えば、625、無線ヘッドホン又は無線ear pod)に接続されている間に、電子デバイスは通信リンクを介して第1の外部デバイスにオーディオデータを提供するように構成され(例えば、また第2の外部デバイス(例えば、650)にオーディオデータを提供するように現在構成されておらず)、電子デバイスは、電子デバイスと第1の外部デバイスとは異なる第2の外部デバイス(例えば、650、無線ヘッドホン又は無線ear pod)との間の物理的近接度が近接条件(例えば、635で表される)を満たすというインジケーションを検出する(802)。いくつかの実施形態では、インジケーションは、近距離通信技術を使用して検出される。いくつかの実施形態では、近接条件は、第2の電子デバイスが電子デバイスから離れた閾値距離を超えない場合に満たされる。いくつかの実施形態では、閾値距離は、6インチ、12インチ、又は18インチである。
電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすというインジケーションを検出したことに応じて、電子デバイスは、ディスプレイデバイスを介して、第1のアフォーダンス(例えば、622a-5)を含む第1のユーザインタフェース(例えば、622、622a)を表示する(804)。
いくつかの実施形態では、第1のユーザインタフェースは、電子デバイスが第2の外部デバイスと一時的にオーディオデータを共有することができるというインジケーションを含む。いくつかの実施形態では、第1のユーザインタフェースは、第1のアフォーダンスを選択すると、電子デバイスが第2の外部デバイスとオーディオデータを共有することになるというインジケーション(例えば、第1のアフォーダンスにおいて)を含む。いくつかの実施形態では、電子デバイスは、電子デバイスが第1の外部デバイスに接続されており、任意選択的に、電子デバイスがオーディオメディアアプリケーションを実行しているか、又は通信リンクを介して第1の外部デバイスにオーディオデータを能動的に提供しているという判定に従って、第1のアフォーダンスを表示する。電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすというインジケーションの検出に応じて、オーディオデータを共有するための第1のアフォーダンスを有する第1のユーザインタフェースを表示すると、物理的近接度が近接条件を満たし、オーディオデータを共有できることをユーザに示すことによってフィードバックが自動的に提供され、したがって、オーディオデータを共有するために必要な入力の数が削減される。改善されたフィードバックを提供し、動作を実行するために必要とされる入力の数を低減し、更なるユーザ入力を必要とせずに条件のセットが満たされたときに動作を実行することにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
電子デバイスは、第1のアフォーダンスの選択に相当する入力(例えば、610e)を検出する(806)。
第1のアフォーダンスの選択に相当する入力を検出したことに応じて、電子デバイスは、第1の外部デバイス(例えば、625)及び第2の外部デバイス(例えば、650)に同時にオーディオデータを提供するプロセスを開始する(808)。いくつかの実施形態では、第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するプロセスは、電子デバイスと第2の外部デバイスとの間の一時的接続を確立することを含む。いくつかの実施形態では、第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するプロセスは、電子デバイスが第1の外部デバイスと第2の外部デバイスと同時にオーディオデータを共有するために第2の外部デバイスとの接続を確立した、又は確立している最中であるという視覚的インジケーションを表示することを含む。いくつかの実施形態では、第1の外部デバイス及び第2の外部デバイスと同時にオーディオデータを共有するプロセスは、第1の外部デバイス及び第2の外部デバイスと同時にオーディオデータを共有するプロセスを完了するための命令を表示することを含む。オーディオデータを共有するためのプロセスを完了するための命令を表示すると、電子デバイスがオーディオデータを共有する準備ができているというフィードバックがユーザに提供され、オーディオ共有プロセスを続行する方法をユーザに知らせる。ユーザに改善された視覚的フィードバックを提供することにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、電子デバイスは、電子デバイスが第2の外部デバイスにオーディオデータを同時に提供している間に、第1の外部デバイスが電子デバイスからオーディオデータを受信するように構成されているという判定に従って、第1のアフォーダンスを含む第1のユーザインタフェースを表示する。いくつかの実施形態では、電子デバイスは、電子デバイスが第2の外部デバイスにオーディオデータを同時に提供している間に、第1の外部デバイスが電子デバイスからオーディオデータを受信するように構成されていないという判定に従って、第1のユーザインタフェースを表示することを取り止める。
いくつかの実施形態では、電子デバイスは、電子デバイスがオーディオメディアアプリケーション(例えば、音楽アプリケーション、ポッドキャストアプリケーション、オーディオブックアプリケーション、マルチメディアアプリケーション、ウェブブラウザ再生オーディオ及び/又は動画)を実行しているという判定に従って、第1のアフォーダンスを含む第1のユーザインタフェースを表示する。いくつかの実施形態では、電子デバイスがオーディオメディアアプリケーションを実行していないという判定に従って、電子デバイスは、第1のユーザインタフェースを表示することを取り止める。
いくつかの実施形態では、電子デバイスは、第2の外部デバイスが電子デバイスとペアリングされていないという判定に従って、第1のアフォーダンスを含む第1のユーザインタフェースを表示する。いくつかの実施形態では、2つのデバイス(例えば、第2の外部デバイス及び電子デバイス)は、それらが互いに永続的な関連性を有する場合にペアリングされ、通信リンクを介してデータを交換するように構成される。いくつかの実施形態では、デバイスは、それらが互いに永続的な関連性を有さない場合にはペアリングされない。いくつかの実施形態では、ペアリングされたデバイスは、デバイス間の通信リンクが現在アクティブではない場合、互いに関連付けられたままであるが、一時的に接続されるがペアリングされていないデバイスは、一時的な接続が終了した後に互いに関連付けられていない。いくつかの実施形態では、ペアリングされたデバイスは、共通の構成設定を共有する。いくつかの実施形態では、第2の外部デバイスが電子デバイスとペアリングされている場合、電子デバイスは、第1のユーザインタフェースの表示を取り止め、任意選択的に、第2の外部デバイスの情報(例えば、バッテリレベル)を表示する。
いくつかの実施形態では、第1のユーザインタフェースは、選択されると、第2の外部デバイスを電子デバイスとペアリングする第2のアフォーダンス(例えば、622a-5)を含む。いくつかの実施形態では、第2の外部デバイスを電子デバイスとペアリングすることは、第2の外部デバイスと電子デバイスとの間に永続的な関連付けを作成する。いくつかの実施形態では、第2のアフォーダンスは、選択されると、第1の外部デバイスを電子デバイスから接続解除する。電子デバイスと第2の外部デバイスとの間の物理的近接度が近接条件を満たすというインジケーションの検出に応じて、第2の外部デバイスをペアリングするためのアフォーダンスを表示する(例えば、第2の外部デバイスとデータを一時的に共有するためのアフォーダンスを同時に表示することに加えて)と、ユーザが第2の外部デバイスとペアリング又はオーディオデータを一時的に共有するいずれかのオプションを有するというフィードバックが提供され、それらのオプションを自動的に提示する。改善された視覚フィードバックを提供し、更なるユーザ入力を必要とせずに条件のセットが満たされたときに動作を実行する(例えば、ペアリング及び共有オプションを表示する)ことにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、第2の外部デバイスは、電子デバイスからのオーディオデータに基づいてオーディオを出力するように構成され、電子デバイスに直接無線接続される(例えば、図6K)。例えば、いくつかの実施形態では、第2の外部デバイスは、第2の外部デバイスが接続されている電話機などの中間デバイスを介して、電子デバイスからオーディオデータを受信しない。
いくつかの実施形態では、第1のアフォーダンスの選択に相当する入力を検出した後、且つ第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供する前に、電子デバイスは、第2の外部デバイスで入力を与える指示(例えば、612a-3)を表示する。いくつかの実施形態では、第2の外部デバイスは、電子デバイスに接続するための入力(例えば、第2の外部デバイス上のハードウェアボタンの押下(例えば、610c))を必要とする。
いくつかの実施形態では、電子デバイスは、第2の外部デバイスが電子デバイスに接続されているというインジケーションを受信する。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されているというインジケーションを受信したことに応じて、電子デバイスは、第2の外部デバイスが電子デバイスに接続されているというインジケーション(例えば、616a-4、624a)を提供する。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されているというインジケーションを提供することは、第2の外部デバイスのグラフィカル表現を表示することを含む。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されているというインジケーションは、オーディオ出力及び/又は触知出力を含む。
いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されている間に、電子デバイスは、選択されると、第2の外部デバイスを電子デバイスから接続解除する第2のアフォーダンス(例えば、618a-4、634a-3、636-2、906-3)を表示する。いくつかの実施形態では、第2の外部デバイスが電子デバイスに接続されている間に、電子デバイスは、電子デバイスと第2の外部デバイスとの間の物理的近接度が第2の近接条件(例えば、図6H)を満たすというインジケーションを検出する。いくつかの実施形態では、電子デバイスは、電子デバイスと第2の外部デバイスとの間の物理的近接度が第2の近接条件を満たすというインジケーションを検出したことに応じて、第2のアフォーダンスを表示する。いくつかの実施形態では、第2のアフォーダンスは、第2の外部デバイスが、近接条件(例えば、第2の近接条件又は(第1の)近接条件)を満たすために必要な範囲に再び入ったという判定に従って、表示される。いくつかの実施形態では、第2の近接条件は、(第1の)近接条件と同じである。電子デバイスと第2の外部デバイスとの間の物理的近接度が第2の近接条件を満たすというインジケーションの検出に応じて第2の外部デバイスを接続解除するためのアフォーダンスを表示すると、ユーザが第2の外部デバイスとのオーディオの共有を中止できるというフィードバックが提供され、第2の外部デバイスを接続解除するオプションを自動的に提示し、したがって、オーディオデータの共有を中止するために必要な入力の数が減少する。改善されたフィードバックを提供し、動作を実行するために必要とされる入力の数を低減し、更なるユーザ入力を必要とせずに条件のセットが満たされたときに動作を実行することにより、デバイスの操作性を向上させ、(例えば、デバイスを操作する/デバイスと対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースをより効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、電子デバイスは、第2の外部デバイスが電子デバイスとペアリングされていないという判定に従って、第2のアフォーダンス(例えば、618a-4)を表示する。いくつかの実施形態では、第2の外部デバイスが電子デバイスとペアリングされている場合、電子デバイスは、第2のアフォーダンスの表示を取り止め、任意選択的に、第2の外部デバイスの情報(例えば、バッテリレベル)を表示する。いくつかの実施形態では、第2のアフォーダンスは、メニューユーザインタフェース(例えば、636)内に表示される。いくつかの実施形態では、メニューユーザインタフェースは、Bluetooth設定メニュー又はオーディオメディアプレーヤアプリケーションのオーディオ出力メニューユーザインタフェースである。
方法800に関して上述したプロセス(例えば、図8)の詳細はまた、上述及び後述する方法にも、類似の方式で適用可能であることに留意されたい。例えば、方法700、方法1000、及び/又は方法1200は、方法800に関して前述した様々な方法の特性のうちの1つ以上を任意選択的に含む。例えば、方法700における第2のユーザインタフェースを表示する動作804は、方法700の動作708におけるインジケーションの検出に応じて実行することができる。別の例として、方法800の動作は、方法1000及び/又は方法1200の動作の前に実行することができる。簡潔にするために、これらの詳細は、以下で繰り返さない。
図9A~図9Eは、いくつかの実施形態に係る、1つ以上のデバイスの音量レベルを調整するための例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、図10のプロセスを含む後述のプロセスを例示するために使用される。
図9Aは、デバイス625(通信リンクC5を介して)及びデバイス650(通信リンクC6を介して)に同時に接続され、オーディオデータを提供するデバイス600を示す。デバイス600は、ユーザインタフェース900(例えば、ホームスクリーン又はアプリケーションスプリングボード)を表示し、入力910a(例えば、タッチ感知ディスプレイ602上のスワイプ)を検出する。入力910aを検出したことに応じて、デバイス600は、ユーザインタフェース902(例えば、制御センタ)を表示する。ユーザインタフェース902は、デバイス600と、デバイス625及びデバイス650などのデバイス600に接続された周辺デバイスの様々な機能及び設定を制御するためのアフォーダンスを含む。アフォーダンス902-1は、メディアアイテム(DJ Appleseedによるトラック1)を現在再生しているオーディオメディアアプリケーションに対応する。音量アフォーダンス902-2は、ユーザインタフェース902からのデバイス625及びデバイス650の音量レベルを単一の入力で調整する能力を提供する。デバイス600が2つ以上のデバイスにオーディオデータを提供している(例えば、オーディオデータをデバイス650と共有し、同時にオーディオデータをデバイス625に提供すること)という判定に従って、ユーザインタフェース902は、グラフィカル要素902-3(例えば、音量アフォーダンス902-2上のバッジ)を含む。グラフィカル要素902-3は、デバイス600が複数のデバイス(例えば、複数のユーザに関連付けられたデバイス)にオーディオデータを提供するという視覚的なインジケーションを提供する。
図9Bでは、デバイス600は、音量アフォーダンス902-2の選択に相当する入力910b(例えば、上向きドラッグ)を検出する。入力910bが第1のタイプの入力(例えば、図9Bに示される上向きドラッグ)であることに応じて、デバイス600は、図9Cの音量アフォーダンス902-2の更新された視覚的外観によって示されるように、デバイス625の音量レベル及びデバイス650の音量レベルを調整する(例えば、増大させる)。図9Cに示す実施形態では、音量アフォーダンス902-2内の水平線の高さは、デバイス625及びデバイス650の現在のマスター音量レベルを示す。いくつかの実施形態では、アフォーダンス902-2を用いてデバイス625及びデバイス650の音量レベルを調整することは、デバイス625及びデバイス650の音量レベルを、同じ音量レベルに設定する(例えば、デバイス625及びデバイス650が、アフォーダンス902-2の選択前に異なる音量レベルを有していても)。いくつかの実施形態では、アフォーダンス902-2を用いてデバイス625及びデバイス650の音量レベルを調整することは、デバイス625及びデバイス650の音量レベルを、それぞれのデバイスの初期音量レベル及びアフォーダンス902-2上の入力(例えば、入力910bの方向及び長さ)に基づいて、デバイス625及びデバイス650の音量レベルをそれぞれの音量レベルに設定する。いくつかの実施形態では、デバイス625の音量レベルがデバイス650の音量レベルと同じである場合、音量アフォーダンス902-2は、デバイス625及びデバイス650の音量レベルを示す。いくつかの実施形態では、デバイス625の音量レベルがデバイス650の音量レベルと異なる場合、音量アフォーダンス902-2は、デバイス625の音量レベル、デバイス650の音量レベル、より高い音量レベルを有するデバイスの音量レベル、より低い音量レベルを有するデバイスの音量レベル、又はデバイス625及びデバイス650の音量レベルの組み合わせ(例えば、平均)を示す。
図9Cでは、デバイス600は、音量アフォーダンス902-2の選択に相当する入力910cを検出する。入力910bとは異なる第2の種類の入力である入力910cに応じて、デバイス600はユーザインタフェースを表示し、表示されるユーザインタフェースは外部デバイス(例えば、デバイス650)との接続条件に依存する。
接続条件が満たされている(例えば、デバイス650は、デバイス600と同時にデバイス625に接続される)という判定に従って、デバイス600は、図9Dに示すように、ユーザインタフェース904を表示する。ユーザインタフェース904は、グラフィカル要素904-1~904-4を含む。グラフィカル要素904-1は、デバイス625を表し、音量アフォーダンス904-3がデバイス625の音量レベルを制御することを示す。グラフィカル要素904-2は、デバイス650を表し、音量アフォーダンス904-4がデバイス650の音量レベルを制御することを示す。アフォーダンス904-3は、選択されると(例えば、垂直方向のドラッグで)、デバイス625の音量レベルを変更することなく、デバイス650の音量レベルを調整する。アフォーダンス904-4は、選択されると(例えば、垂直方向のドラッグ)、デバイス650の音量レベルを変更することなく、デバイス625の音量レベルを調整する。図9Dに示される実施形態において、デバイス625の音量レベルは、音量アフォーダンス902-2によって示される音量レベルに対応するデバイス650の音量レベルと同じである。
接続条件が満たされていないという判定に従って(例えば、デバイス650はデバイス675を介してデバイス600に接続されている)という判定に従って、デバイス600は、図9Eに示すように、ユーザインタフェース906を表示する。図9Eでは、デバイス625は、通信リンクC5を介してデバイス600に接続され、デバイス675は、通信リンクC8を介してデバイス600に接続され、デバイス650は、通信リンクC7を介してデバイス675に接続される。この構成にあるデバイス600、デバイス625及びデバイス675によれば、ユーザインタフェース906は、グラフィカル要素906-1~906-4を含む。グラフィカル要素906-1は、デバイス625を表し、音量アフォーダンス906-2がデバイス625の音量レベルを制御することを示す。ユーザインタフェース906は、デバイス650の音量レベルを制御するためのアフォーダンスを含まない(例えば、デバイス650がデバイス675を介してデバイス600に接続されているため)。例えば、デバイス650は、通信リンクC7を介してデバイス675に接続されているので、デバイス675は、デバイス650の音量レベルに対する制御を維持する(例えば、デバイス650の音量レベルは、デバイス675上の入力を介してのみ制御することができる)。接続解除アフォーダンス906-3が選択されると、グラフィカル要素906-4(「CHANCEとのリスニングを停止する」)によって示されるように、デバイス600にデバイス650とのオーディオデータの共有を中止させる(例えば、デバイス600は、デバイス675との通信リンクC8を接続解除する)。
図10は、いくつかの実施形態に係る、電子デバイスを使用して1つ以上のデバイスの音量レベルを調整する方法を示すフロー図である。方法1000は、ディスプレイデバイス(例えば、602)を備えたデバイス(例えば、100、300、500、又は600)において実行される。方法1000のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
後述するように、方法1000は、1つ以上のデバイスの音量レベルを調整するための直感的な方法を提供する。方法は、1つ以上のデバイスの音量レベルを調整するためのユーザの認識的負担を軽減し、それによって、より効率的な人間-機械インタフェースを作成する。バッテリ動作式のコンピューティングデバイスの場合には、ユーザが1つ以上のデバイスの音量レベルをより高速且つより効率的に調整することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
第1の接続条件が、電子デバイス(例えば、600)、第1の外部デバイス(例えば、625)、及び第2の外部デバイス(例えば、650、675)に対して満たされている間に、電子デバイスは、第1の外部デバイスに接続されたときに第1の外部デバイスにオーディオデータを提供し、第2の外部デバイスに接続されたときに第2の外部デバイスにオーディオデータを提供するように構成され、電子デバイスは、第1の音量制御アフォーダンス(例えば、902-2)を表示する要求(例えば、入力910a)を受信する(1002)。いくつかの実施形態では、接続条件は、第1の外部デバイス及び/又は第2の外部デバイスの電子デバイスへの接続条件に基づく。いくつかの実施形態では、接続条件は、電子デバイスが、第1の外部デバイス(例えば、単一のデバイスとして動作する無線ヘッドホン又は無線イヤホンのペア)と、第1の外部デバイスとは異なる第2の外部デバイス(例えば、単一のデバイスとして動作する無線ヘッドホン又は無線イヤホンのペア)とに同時に接続されている場合に満たされる。いくつかの実施形態では、電子デバイスは、第2の外部デバイスに直接接続される。いくつかの実施形態では、電子デバイスは、第3の外部デバイス(例えば、電話機)を介して第2の外部デバイスに接続される。例えば、電子デバイスは、第3の外部デバイスに接続され、第3の外部デバイスは、第2の外部デバイスに接続される。いくつかの実施形態では、接続条件は、第1の外部デバイス及び第2の外部デバイスが独立したデバイス(例えば、一緒に動作するイヤホンのペアとしてではなく)として動作している場合にのみ満たされる。第1の音量制御アフォーダンスを表示する要求の例は、電子デバイスのタッチ感知面上のタッチ入力(例えば、タッチ感知面の下端からの上向きスワイプジェスチャ、タッチ感知面の上端からの下向きスワイプジェスチャ)、アフォーダンスの選択、電子デバイス上の機械的ボタンの押下(例えば、電子デバイスがスリープ状態にある間、又はディスプレイデバイスが非アクティブである間)、動き条件を満たす電子デバイスの動き(例えば、電子デバイスをピックアップするか、又は電子デバイスを観察位置に移動させる)を含むが、これらに限定されない。いくつかの実施形態では、音量制御アフォーダンスを表示する要求は、音量制御アフォーダンスを有するユーザインタフェース(例えば、制御センタユーザインタフェース)を表示する要求を含む。
第1の音量制御アフォーダンスを表示する要求を受信したことに応じて、電子デバイスは、第1の音量制御アフォーダンス(例えば、902-2)を表示する(1004)。
電子デバイスは、第1の音量制御アフォーダンスの選択に相当する入力(例えば、910c)を検出する(1006)。いくつかの実施形態では、音量制御アフォーダンスの選択に相当する入力は、電子デバイスのタッチ感知面上の接触を含み、接触は、所定の閾値強度を超える特性強度を有すると判定される。いくつかの実施形態では、音量制御アフォーダンスの選択に相当する入力は、電子デバイスのタッチ感知面上の接触を含み、接触は、所定の閾値持続時間を超える持続時間を有すると判定される。
第1の音量制御アフォーダンスの選択に相当する入力を検出したことに応じて、電子デバイスは、ユーザインタフェース(例えば、904、906)を表示する(1008)。ユーザインタフェースを表示する一部として、第2の外部デバイスに対して第2の接続条件が満たされているという判定に従って(例えば、第2の外部デバイスは、電子デバイスに直接接続され、第2の外部デバイスは、第3の外部デバイス(例えば、電話機)を介して電子デバイスに接続されておらず、第2の外部デバイスが電子デバイスのみに接続されている)、電子デバイスは、選択されると、(例えば、第2の外部デバイスの体積を調整せずに)第1の外部デバイスの音量レベルを調整する第2の音量制御アフォーダンス(例えば、904-3)と、選択されると、第2の外部デバイス(例えば、第1の外部デバイスの音量を調整せずに、電子デバイスは、第1の外部デバイス及び第2の外部デバイスのための別個の制御項目を表示し、これは、第1の外部デバイスの音量レベルを第2の外部デバイスの音量レベルとは独立して制御する能力を提供し、逆もまた同様である)の音量レベルを調整する第3の音量制御アフォーダンス(例えば、904-4)とを表示する(1010)。いくつかの実施形態では、電子デバイスは、第1の音量制御アフォーダンスの表示を停止し、第2の音量制御アフォーダンス及び第3の音量制御アフォーダンスを表示する。いくつかの実施形態では、第2の外部デバイスが複合デバイス(例えば、1つのデバイスとして協働的に動作するイヤホンのペア)であり、複合デバイスの1つ以上の要素が電子デバイスに直接接続されている場合には、第2の外部デバイスに対して第2の接続条件が満たされる。第2の外部デバイスに関して接続条件が満たされているという判定に基づいて、第1の外部デバイス用の音量制御アフォーダンス及び第2の外部デバイス用の別個の音量制御アフォーダンスを表示することは、現在のコンテキストに関連する制御項目を表示することによってユーザにフィードバックを提供する。改善されたフィードバックを提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援しユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
ユーザインタフェースを表示する一部として、第2の接続条件が第2の外部デバイスに対して満たされていないという判定に従って、選択されると、第2の外部デバイスの音量レベルを調整するための音量制御アフォーダンスを表示することなく、第1の外部デバイスの音量レベルを調整する(例えば、第2の外部デバイスの音量を調整することなく)、第4の音量制御アフォーダンス(例えば、906-2)を電子デバイスが表示する(例えば、電子デバイスは、第1の外部デバイスの音量レベルを調整するための単一の音量制御アフォーダンスを表示する)(1012)。接続条件が第2の外部デバイスに対して満たされていないという判定に基づいて、第1の外部デバイスのみの音量制御アフォーダンスを表示することは、現在のコンテキストに関連する制御項目を表示することによって、ユーザにフィードバックを提供する。改善されたフィードバックを提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援しユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、第2の外部デバイスが第3の外部デバイス(例えば、電話機)とペアリングされ、電子デバイスから直接又は第3の外部デバイスを介して間接的にオーディオデータを受信する場合、第2の接続条件は、第2の外部デバイスに対して満たされない。いくつかの実施形態では、第2の外部デバイスが電子デバイス以外のデバイスとペアリングされたイヤホンのペアである場合、第2の接続条件は、第2の外部デバイスに対して満たされない。いくつかの実施形態では、2つのデバイスは、それらが互いに永続的な関連性を有する場合にペアリングされ、通信リンクを介してデータを交換するように構成される。いくつかの実施形態では、デバイスは、それらが互いに永続的な関連性を有さない場合にはペアリングされない。いくつかの実施形態では、ペアリングされたデバイスは、デバイス間の通信リンクが現在アクティブではない場合、互いに関連付けられたままであるが、一時的に接続されるがペアリングされていないデバイスは、一時的な接続が終了した後に互いに関連付けられていない。いくつかの実施形態では、ペアリングされたデバイスは、共通の構成設定を共有する。いくつかの実施形態では、電子デバイスは、第1の音量制御アフォーダンスの表示を停止し、第4の音量制御アフォーダンスを表示する。いくつかの実施形態では、ユーザインタフェースは、第1の音量制御アフォーダンスの選択に相当する入力が第1のタイプの入力(例えば、強い押下又は静的長押し)であるという判定に従って表示される。いくつかの実施形態では、第1の音量アフォーダンスは、第1の外部デバイス及び第2の外部デバイスの音量レベルを同時に調整する能力を提供する。例えば、いくつかの実施形態では、第1の音量制御アフォーダンスの選択に相当する入力が第1の種類とは異なる第2の種類の入力(例えば、第1の音量制御アフォーダンス上の上向き又は下向きスワイプジェスチャ)であるという判定に従って、電子デバイスは、新しい音量レベルを示すように第1の音量制御アフォーダンスを更新し、第1の外部デバイスの音量レベルを調整する命令を送信し、第2の外部デバイスが第3の外部デバイスに接続されていない場合、第2の外部デバイスの音量レベルを調整する命令を送信する。
いくつかの実施形態では、電子デバイスは、第2の音量制御アフォーダンス(例えば、616a-3)及び第3の音量制御アフォーダンス(例えば、616a-4)と同時に、選択されると、第1の外部デバイスの音量レベルを調整し、第2の外部デバイス(例えば、図6O及び図6Qも参照)の音量レベルを調整する第5の音量制御アフォーダンス(例えば、616a-6)を表示する。いくつかの実施形態では、第5の音量制御アフォーダンスは、第1の音量制御アフォーダンスである(例えば、第1の音量制御アフォーダンスは、選択されたときに表示されたままである)。
いくつかの実施形態では、第1の音量制御アフォーダンスの選択に相当する入力(例えば、910c)は、特性強度を有する接触を含み、ユーザインタフェース(例えば、904、906)を表示することは、特性強度が閾値強度を超えるという判定に従って実行される。いくつかの実施形態では、特性強度が閾値強度を超えないという判定に従って、電子デバイスはユーザインタフェースを表示することを取り止める。入力の特性に基づいてユーザインタフェースを表示することは、第1の音量制御アフォーダンスのための追加の制御オプションを提供し、さらなる制御項目が表示されることによってディスプレイが散らかった状態になることを回避する。表示される追加コントローラによってディスプレイを雑然とさせることなく、追加制御オプションを提供することにより、デバイスの操作性が高められ、ユーザデバイスインタフェースを(例えば、デバイスを操作する/デバイスと対話するときにユーザを適切な入力を付与するのを支援し、ユーザの誤りを減らすことによって)より効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、電子デバイスは、第1の音量制御アフォーダンスと同時に、第1の接続条件が電子デバイス、第1の外部デバイス、及び第2の外部デバイスに対して満たされるというインジケーション(例えば、902-3)を表示する。いくつかの実施形態では、電子デバイス、第1の外部デバイス、及び第2の外部デバイスに関して第1の接続条件が満たされているというインジケーションは、第1の音量制御アフォーダンス上に表示される。
いくつかの実施形態では、電子デバイスは、選択されると、第2の外部デバイスを電子デバイスから接続解除する、接続解除アフォーダンス(例えば、906-3)を、第5の音量制御アフォーダンスと同時に表示する。いくつかの実施形態では、接続解除アフォーダンスは、第4の音量制御アフォーダンスと同時に表示される。第2の外部デバイスを接続解除するためのアフォーダンスを表示することは、ユーザが、第2の外部デバイスとのオーディオの共有を中止することができ、(例えば、別個のオプションメニューにアクセスするために)追加の入力を必要とすることなく、第2の外部デバイスを接続解除するオプションを提示するというフィードバックが提供され、オーディオデータの共有を停止するために必要とされる入力の数を低減する。改善されたフィードバックを提供し、操作を実行するために必要な入力の数が減ることにより、デバイスの操作性が高められ、ユーザデバイスインタフェースを(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援し、ユーザの誤りを削減することによって)より効率的にし、加えて、ユーザがデバイスをより迅速且つ効率的に使用できるようにすることによって、デバイスの電力使用が抑えられ、バッテリ寿命が改善される。
方法1000に関して上述したプロセス(例えば図10)の詳細はまた、上述及び後述する方法にも、類似の方式で適用可能であることに留意されたい。例えば、方法700、800、及び/又は1200は、任意選択的に、方法1000を参照して上述した様々な方法の特徴のうちの1つ以上を含む。例えば、方法1000の動作は、方法700及び/又は方法800の動作の後、方法1200の動作の前又は後のいずれかで実行することができる。簡潔にするために、これらの詳細は、以下で繰り返さない。
図11A~図11Fは、いくつかの実施形態に係る、オーディオメディアアプリケーションを制御するための例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、図12のプロセスを含む後述のプロセスを例示するために使用される。
図11Aは、ディスプレイデバイス1102、回転可能入力デバイス1104及び機械式ボタン1106を有するデバイス1100(例えば、腕時計)を示す。いくつかの実施形態では、デバイス1100は、デバイス100、300又は500である。いくつかの実施形態では、回転可能入力デバイス1104は、押下可能であり、回転可能である。図11Aでは、デバイス1100は、アフォーダンス1108-1及びアフォーダンス1108-2を含むユーザインタフェース1108を表示する。アフォーダンス1108-1は、デバイス1100が接続されている第1のデバイス(例えば、電話機)上のオーディオメディアアプリケーションに対応している(例えば、Bluetooth又はインターネット接続を介して)。図11A~図11Fに示す実施形態では、デバイス1100は上述したデバイス600と接続され(例えば、ペアリング)、アフォーダンス1108-1はデバイス600上のオーディオメディアアプリケーションに対応する。アフォーダンス1108-2は、(例えば、Bluetooth又はインターネット接続を介して)デバイス1100が接続されている第2のデバイス(例えば、無線スピーカ)上のオーディオメディアアプリケーションに対応している。アフォーダンス1108-1及び1108-2は、対応するデバイス上の対応するアプリケーションを制御するためのユーザインタフェースを表示するように選択することができる。
図11Aでは、デバイス1100は、アフォーダンス1108-1の選択に相当する入力1110a(例えば、タップ)を検出する。入力1110aを検出したことに応じて、デバイス1100は、アフォーダンス1108-1に対応するデバイス600上のオーディオメディアアプリケーションを制御するためのオーディオメディアユーザインタフェース1112を表示する。オーディオメディアユーザインタフェース1112は、とりわけ、トラック情報1112-1、音量レベルインジケータ1112-2、及びコントロール1112-3を含む。音量レベルインジケータ1112-2は、デバイス600がオーディオデータを提供しているオーディオ出力デバイス(単数又は複数)の音量レベル(単数又は複数)を示す。いくつかの実施形態では、音量レベルインジケータ1112-2の右側の弧の数は、音量レベルを示す(例えば、1つの弧は低であり、2つの円弧は中であり、3つの弧は高である)。
図11Bでは、デバイス1100は、入力1110b(例えば、回転可能入力デバイス1104の回転)を検出する。入力1110bの検出に応じて、デバイス1100は、オーディオメディアユーザインタフェース1112に対応するアプリケーションによって提供されるオーディオを出力するデバイス(単数又は複数)の音量レベルを調整するための命令をデバイス600に送信する。例えば、上述したように、デバイス600がデバイス625及びデバイス650に同時にオーディオデータを提供している場合、回転可能入力デバイス1104を回転させて、デバイス625及びデバイス650の音量レベルを単一の入力で調整することができる。いくつかの実施形態では、回転可能入力デバイス1104を用いてデバイス625及びデバイス650の音量レベルを調整することは、デバイス625及びデバイス650の音量レベルを、同じ音量レベルに設定する(例えば、デバイス625及びデバイス650が、回転可能入力デバイス1104の動きの前に異なる音量レベルを有していても)。いくつかの実施形態では、回転可能入力デバイス1104を用いてデバイス625及びデバイス650の音量レベルを調整することは、デバイス625及びデバイス650の音量レベルを、それぞれのデバイスの初期音量レベル及び回転可能入力デバイス1104の動き(例えば、回転可能入力デバイス1104の回転量及び/又は回転速度)に基づいて、デバイス625及びデバイス650の音量レベルをそれぞれの音量レベルに設定する。
オーディオメディアユーザインタフェース1112に対応するデバイスが複数のデバイスにオーディオを提供しているという判定に従って(例えば、デバイス600は、デバイス625及びデバイス650にオーディオデータを提供している)という判定に従って、デバイス1100は、入力1110bを検出したことに応じて、複数の音量レベルインジケータを表示する。図11Cに示すように、デバイス1100は、第1の出力デバイス(例えば、デバイス625)に対応する個々の音量レベルインジケータ1112-4aと、第2の出力デバイス(例えば、デバイス650)に対応する個々の音量レベルインジケータ1112-4bとを含む音量レベルインジケータ1112-4を表示する。入力1110bが停止したこと(例えば、入力1110bが停止したことを検出した後の所定の時間量)を検出したことに応じて、デバイス1100は、図11Dに示すように、入力1110bの後の音量レベルを示す更新された音量レベルインジケータ1112-5を表示する。いくつかの実施形態では、デバイス625の音量レベルがデバイス650の音量レベルインジケータ1112-5の音量レベルと同じである場合、音量レベルインジケータ1112-5はデバイス625及びデバイス650の音量レベルを示す。いくつかの実施形態では、デバイス625の音量レベルがデバイス650の音量レベルと異なる場合、音量レベルインジケータ1112-5は、デバイス625の音量レベル、デバイス650の音量レベル、より高い音量レベルを有するデバイスの音量レベル、より低い音量レベルを有するデバイスの音量レベル、又はデバイス625及びデバイス650の音量レベルの組み合わせ(例えば、平均)を示す。
図11Dでは、デバイス1100は、ユーザインタフェース1112上のアフォーダンス1112-6の選択に相当する入力1110c(例えば、タップ)を検出する。入力1110cを検出したことに応じて、デバイス1100は、オーディオ出力デバイス(単数又は複数)を選択するためのユーザインタフェースを表示する。ユーザインタフェースは、例えば、利用可能な出力デバイスの構成に基づいて、出力デバイスの状態に依存する。
例えば、デバイス600が、2つのデバイス(デバイス625及びデバイス650)にオーディオデータを同時に提供する場合、デバイス1100は、図11Eに示すように、デバイス選択ユーザインタフェース1114を表示する。デバイス選択ユーザインタフェース1114は、アフォーダンス1114-1及びアフォーダンス1114-2を含む。アフォーダンス1114-1は、デバイス600に対応し、選択されると、デバイスがオーディオを出力するためにデバイス600を選択する。アフォーダンス1114-2は、デバイス625及びデバイス650に対応し、選択されると、デバイス625及びデバイス650の両方を、オーディオを出力するためのデバイスとして選択する。すなわち、単一のアフォーダンスを選択すること(アフォーダンス1114-2)は、オーディオメディアアプリケーションからのオーディオデータを、2つ以上のデバイス(デバイス625及びデバイス650)に同時に提供する。
デバイス600が、オーディオデータを2つのデバイスに同時に提供しない場合(例えば、デバイスは、デバイス625のみにオーディオデータを提供する)場合、デバイス1100は、図11Fに示すように、デバイス選択ユーザインタフェース1116を表示する。デバイス選択ユーザインタフェース1116は、アフォーダンス1116-1、アフォーダンス1116-2及びアフォーダンス1116-3を含む。アフォーダンス1116-1は、デバイス600に対応し、選択されると、デバイス600をオーディオを出力するためのデバイスとして選択し、アフォーダンス1116-2は、デバイス625に対応し、選択されると、デバイス625をオーディオを出力するためのデバイスとして選択し、アフォーダンス1116-3は、デバイス600がオーディオデータを提供するように構成されている第3のデバイスに対応する。いくつかの実施形態では、2つ以上のデバイスに対応するデバイス選択ユーザインタフェース1116上に、単一のアフォーダンスは存在しない(例えば、2つ以上のデバイス上でオーディオを出力させる単一のアフォーダンスはない)。
図12は、いくつかの実施形態に係る、電子デバイスを使用してオーディオメディア出力アプリケーションを制御する方法を示すフロー図である。方法1200は、ディスプレイデバイス(例えば、1102)を備えたデバイス(例えば、100、300、500、又は1100)において実行される。方法1200のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
後述するように、方法1200は、オーディオメディア出力を制御するための直感的な方法を提供する。この方法は、オーディオメディア出力を制御するためのユーザの認識的負担を軽減し、それにより、より効率的なヒューマン-マシンインタフェースを作り出す。バッテリ動作式コンピューティングデバイスの場合には、ユーザがより高速且つより効率的にオーディオメディア出力を制御することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
オーディオメディアアプリケーションの制御項目(例えば、1112-3)を含む第1のユーザインタフェース(例えば、1112)を表示している間に、電子デバイスは、オーディオメディアアプリケーションからのオーディオが出力される1つ以上のデバイス(例えば、無線ヘッドホン又は無線イヤホン)を選択するためのユーザインタフェース(例えば、1114、1116)を表示する要求(例えば、入力1110c)を受信する(1202)。
オーディオメディアアプリケーションからのオーディオが出力される1つ以上のデバイスを選択するためのユーザインタフェースを表示する要求の受信に応じて、電子デバイスは、第2のユーザインタフェース(例えば、1114、1116)を表示する(1204)。
第2のユーザインタフェースを表示する一部として、ソース電子デバイス(例えば、600、1100)が、第1の外部デバイス(例えば、625、単一のデバイスとして一緒に動作する無線ヘッドホン又は無線イヤホンのペア)と、第1の外部デバイスとは異なる第2の外部デバイス(例えば、650、単一のデバイスとして動作する無線ヘッドホン又は無線イヤホンのペア)とに接続され、第1の外部デバイス及び第2の外部デバイスに同時にオーディオメディアアプリケーションからのオーディオデータを提供するように構成されているという判定に従って、電子デバイスは、選択されると、オーディオメディアアプリケーションからのオーディオデータを、第1の外部デバイス及び第2の外部デバイスに同時に提供させる第1のアフォーダンス(例えば、1114-2)を表示する(1206)。ソース電子デバイスが第1の外部デバイス及び第2の外部デバイスに接続されており、またソース電子デバイスは、オーディオメディアアプリケーションから第1の外部デバイス及び第2の外部デバイスに同時にオーディオデータを提供するように構成されているという判定に基づいて、オーディオメディアアプリケーションからのオーディオデータを第1の外部デバイス及び第2の外部デバイスに同時に提供させる第1のアフォーダンスを表示することは、現在のコンテキストに関連する制御項目を表示することによって、ユーザにフィードバックを提供する。改善されたフィードバックを提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援しユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、ソース電子デバイスは、電子デバイスである。いくつかの実施形態では、ソース電子デバイスは、電子デバイスに接続された外部デバイスである。いくつかの実施形態では、オーディオメディアアプリケーションは、電子デバイスの外部のソースデバイス上で実行され、オーディオメディアアプリケーションは、電子デバイスとソースデバイスとの間の接続を介して電子デバイスにおける入力によって制御可能である。いくつかの実施形態では、オーディオは、第1の外部デバイスを介して第2の外部デバイスに提供されない。いくつかの実施形態では、第2の外部デバイスは、電子デバイスには、第1の外部デバイスとは別個の外部デバイスとして見える。いくつかの実施形態では、第1の外部デバイス及び第2の外部デバイスは、単一のデバイスとして動作するイヤホンのペアではない。
第2のユーザインタフェースを表示する一部として、ソース電子デバイスが第1の外部デバイスに接続されており、オーディオメディアアプリケーションからのオーディオデータを別の外部デバイスに同時に提供することなく、オーディオデータをオーディオメディアアプリケーションから第1の外部デバイスに提供するように構成されているという判定に従って、電子デバイスは、選択されると、オーディオメディアアプリケーションからのオーディオデータを第1の外部デバイスのみに提供させる第2のアフォーダンス(例えば、1116-2)を表示する(1208)。ソース電子デバイスが第1の外部デバイスに接続されており、オーディオメディアアプリケーションからのオーディオデータを別の外部デバイスに同時に提供することなく、オーディオメディアアプリケーションからのオーディオデータを第1の外部デバイスに提供するように構成されているという判定に基づいて、オーディオメディアアプリケーションからのオーディオデータを第1の外部デバイスにのみ提供させるための第2のアフォーダンスを表示することは、現在のコンテキストに関連する制御項目を表示することによってユーザにフィードバックを提供する。改善されたフィードバックを提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、ソース電子デバイスが複数の出力デバイス(例えば、第1の外部デバイス及び第2の外部デバイス)に接続され、オーディオメディアアプリケーションからのオーディオデータを各出力デバイスに提供するが、一度に2つ以上に同時に提供しないように構成されている場合、電子デバイスは、対応する出力デバイスにオーディオデータを提供するために、各出力デバイスに対して1つのアフォーダンスを表示する。いくつかの実施形態では、第1の外部デバイスのみにオーディオを提供することは、単一の外部デバイスとして動作する物理的に分離されたイヤホンのペアにオーディオを提供することを含む。
いくつかの実施形態では、第1の外部デバイス(例えば、625)は、ソース電子デバイス(例えば、600、1100)とペアリングされる。いくつかの実施形態では、2つのデバイス(例えば、第1の外部デバイス及びソース電子デバイス)は、それらが互いに永続的な関連性を有する場合にペアリングされ、通信リンクを介してデータを交換するように構成される。いくつかの実施形態では、デバイスは、それらが互いに永続的な関連性を有さない場合にはペアリングされない。いくつかの実施形態では、ペアリングされたデバイスは、デバイス間の通信リンクが現在アクティブではない場合、互いに関連付けられたままであるが、一時的に接続されるがペアリングされていないデバイスは、一時的な接続が終了した後に互いに関連付けられていない。いくつかの実施形態では、ペアリングされたデバイスは、共通の構成設定を共有する。
いくつかの実施形態では、第2の外部デバイス(例えば、650)は、ソース電子デバイス(例えば、600、1100)とペアリングされない。いくつかの実施形態では、ソース電子デバイス(例えば、600)は、電子デバイス(例えば、1100)とペアリングされる。
いくつかの実施形態では、第2のユーザインタフェースは、選択されると、オーディオメディアアプリケーションからのオーディオをソース電子デバイスによって出力させる第3のアフォーダンス(例えば、1114-1、1116-1)を含む。
いくつかの実施形態では、電子デバイスは、入力(例えば、単一の入力、単一の音量調整アフォーダンス上の単一の入力)を検出する。いくつかの実施形態では、入力(例えば、1110b)を検出したことに応じて、電子デバイスは、第1の外部デバイスの音量レベルを調整し、第2の外部デバイスの音量レベルを調整する。単一の入力に応じて第1の外部デバイスの音量レベル及び第2の外部デバイスの音量レベルを調整することは、両方のデバイスの音量を調整するために必要とされる入力の数を減らし、両方のデバイスの音量を調整するために追加の制御項目を表示する必要性を低減する。操作を実施する前に必要な入力数を減少させ、追加で表示される制御項目を有するユーザインタフェースを混乱させることなく、追加の制御オプションを提供することにより、デバイスの操作性が向上し、ユーザとデバイスのインタフェースがより効率的となり(例えば、ユーザが適切な入力を提供することを補助することにより、そして、デバイスの操作時/デバイスとの相互作用時にユーザの失敗を減らすことにより)、これによって更に、ユーザがデバイスをより素早く、そして効率的に使用することが可能となって、デバイスの電力使用が低下しバッテリ寿命が向上する。
いくつかの実施形態では、入力を検出したことに応じて、電子デバイスは、第1の外部デバイスの音量レベルのグラフィカルインジケーション(例えば、1112-4a)と、第1の外部デバイスの音量レベルのグラフィカルインジケーションとは異なる第2の外部デバイスの音量レベルのグラフィカルインジケーション(例えば、1112-4b)とを表示する。いくつかの実施形態では、第1及び第2の外部デバイスの音量レベルのグラフィカルインジケーションは、視覚的に別個のグラフィカル要素(例えば、別個のスライダ又はバー)である。各デバイスの音量レベルの別個のグラフィカルインジケーションを表示すると、入力が両方のデバイスの音量を調整するというフィードバックがユーザに提供される。改善されたフィードバックを提供することにより、デバイスの操作性が向上し、(例えば、デバイスを操作する/デバイスと対話するときにユーザが適切な入力を行うのを支援し、ユーザの誤りを削減することによって)ユーザデバイスインタフェースがより効率的になり、このことにより更に、ユーザがデバイスをより迅速且つ効率的に使用可能になることによって、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
いくつかの実施形態では、入力は、電子デバイスの筐体に対して回転する、電子デバイスの回転可能入力デバイス(例えば、1104)の回転を含む。いくつかの実施形態では、回転可能入力デバイスは回転可能であり、押下可能である。
方法1200に関して上述したプロセス(例えば、図12)の詳細はまた、上述した方法にも類似の方式で適用可能であることに留意されたい。例えば、方法700、800、及び/又は1000は、任意選択的に、方法1200を参照して上述した様々な方法の特徴のうちの1つ以上を含む。例えば、方法1200の動作は、方法700及び/又は方法800の動作の前又は後、方法1000の動作の前又は後のいずれかで実行することができる。簡潔にするために、これらの詳細は、以下で繰り返さない。
上記は、説明を目的として、特定の実施形態を参照して記述されている。しかしながら、上記の例示的な論考は、網羅的であること、又は開示される厳密な形態に本発明を限定することを意図するものではない。上記の教示を考慮して、多くの修正及び変形が可能である。本技術の原理、及びそれらの実際の適用を最もよく説明するために、実施形態が選択及び記載されている。それにより、他の当業者は、意図された具体的な用途に適するような様々な修正を用いて、本技術及び様々な実施形態を最も良好に利用することが可能となる。
添付図面を参照して、本開示及び例を十分に説明してきたが、様々な変更及び修正が、当業者には明らかとなるであろうことに留意されたい。そのような変更及び修正は、特許請求の範囲によって定義されるような、本開示及び例の範囲内に含まれるものとして理解されたい。
上述したように、本技術の一態様は、様々なソースから入手可能なデータを収集及び使用して、ユーザへのオーディオメディアの配信を改善することである。本開示は、いくつかの例において、この収集されたデータが、特定の人を一意に特定する個人情報データ、又は特定の人に連絡する若しくはその所在を突き止めるために使用できる個人情報データを含み得ることを考察する。そのような個人情報データとしては、人口統計データ、位置ベースのデータ、電話番号、電子メールアドレス、ツイッターID、住所、オーディオメディアサービス(例えば、音楽ストリーミングサービス)のアカウント情報及び/若しくはユーザの好み、ユーザの健康若しくはフィットネスレベルに関するデータ若しくは記録(例えば、バイタルサイン測定値、服薬情報、運動情報)、誕生日、又は任意の他の識別情報若しくは個人情報を挙げることができる。
本開示は、本技術におけるそのような個人情報データの使用がユーザの利益になる使用であり得る点を認識するものである。例えば、よりユーザの興味を引くオーディオメディアを提供するために、個人情報データが使用されてもよい。したがって、そのような個人情報データの使用は、ユーザによる提供されるコンテンツの計算された制御を可能にする。更に、ユーザに利益をもたらす個人情報データに関する他の使用も本開示によって意図されている。例えば、健康データ及びフィットネスデータは、ユーザの全般的なウェルネスについての洞察を提供するために使用することができ、又は、ウェルネスの目標を追求する技術を使用している個人への、積極的なフィードバックとして使用することもできる。
本開示は、そのような個人情報データの収集、分析、開示、伝送、記憶、又は他の使用に関与するエンティティが、確固たるプライバシーポリシー及び/又はプライバシー慣行を遵守するものとなることを想到する。具体的には、そのようなエンティティは、個人情報データを秘密として厳重に保守するための、業界又は政府の要件を満たしているか又は上回るものとして一般に認識されている、プライバシーのポリシー及び慣行を実施し、一貫して使用するべきである。そのようなポリシーは、ユーザによって容易にアクセス可能とするべきであり、データの収集及び/又は使用が変化するにつれて更新されるべきである。ユーザからの個人情報は、そのエンティティの合法的且つ正当な使用のために収集されるべきであり、それらの合法的使用を除いては、共有又は販売されるべきではない。更には、そのような収集/共有は、ユーザに告知して同意を得た後に実施されるべきである。その上、そのようなエンティティは、そのような個人情報データへのアクセスを保護及び安全化し、個人情報データへのアクセス権を有する他者が、それらのプライバシーポリシー及び手順を忠実に守ることを保証するための、あらゆる必要な措置を講じることを考慮するべきである。更に、そのようなエンティティは、広く受け入れられているプライバシーポリシー及び慣行に対する自身の遵守を証明するために、サードパーティによる評価を自らが受けることができる。更には、ポリシー及び慣行は、収集及び/又はアクセスされる具体的な個人情報データのタイプに適合されるべきであり、また、管轄権固有の考慮事項を含めた、適用可能な法令及び規格に適合されるべきである。例えば、アメリカ合衆国では、特定の健康データの収集又はそれへのアクセスは、医療保険の相互運用性と説明責任に関する法律(HIPAA)などの、連邦法及び/又は州法によって管理されてもよく、その一方で、他国における健康データは、他の規制及びポリシーの対象となり得るものであり、それに従って対処されるべきである。それゆえ、各国において、異なる個人データのタイプに関して異なるプライバシー慣行が保たれるべきである。
前述のことがらにも関わらず、本開示はまた、個人情報データの使用又は個人情報データへのアクセスを、ユーザが選択的に阻止する実施形態も想到する。すなわち、本開示は、そのような個人情報データへのアクセスを防止又は阻止するために、ハードウェア要素及び/又はソフトウェア要素が提供され得ることを意図している。例えば、オーディオストリーミングサービスの場合では、本技術は、ユーザが、サービスの登録中又はその後のいつでも、個人情報データの収集への参加の「オプトイン」又は「オプトアウト」を選択できるように構成することができる。別の実施例では、ユーザは、オーディオストリーミングサービスのユーザの好み又はアカウント情報を提供しないように選択することができる。更に別の実施例では、ユーザは、プリファレンスデータが維持される期間を制限する、又はベースラインプリファレンスプロファイルの展開を完全に禁止するかを選択することができる。「オプトイン」及び「オプトアウト」の選択肢を提供することに加えて、本開示は、個人情報のアクセス又は使用に関する通知を提供することを意図している。例えば、ユーザの個人情報データにアクセスすることとなるアプリのダウンロード時にユーザに通知され、その後、個人情報データがアプリによってアクセスされる直前に再びユーザに注意してもよい。
更には、本開示の意図は、個人情報データを、非意図的若しくは無許可アクセス又は使用の危険性を最小限に抑える方法で、管理及び処理するべきであるという点である。データの収集を制限し、データがもはや必要とされなくなると削除することにより、リスクを最小化することができる。加えて、且つ、特定の健康関連アプリケーションにおいて適用可能な場合、ユーザのプライバシーを保護するために、データの匿名化を使用することができる。非特定化は、適切な場合には、特定の識別子(例えば、生年月日など)を除去すること、記憶されたデータの量又は特異性を制御すること(例えば、位置データを住所レベルよりも都市レベルで収集すること)、データがどのように記憶されるかを制御すること(例えば、データをユーザ全体にわたって集約すること)及び/又は他の方法によって、容易にすることができる。
それゆえ、本開示は、1つ以上の様々な開示された実施形態を実施するための、個人情報データの使用を広範に網羅するものであるが、本開示はまた、そのような個人情報データにアクセスすることを必要とせずに、それらの様々な実施形態を実施することも可能であることを想到する。すなわち、本技術の様々な実施形態は、そのような個人情報データの全て又は一部分が欠如することにより、動作不可能にされるものではない。例えば、ユーザに関連付けられたデバイスによって要求されるコンテンツなどの非個人情報データ若しくは必要最小限の個人情報、オーディオコンテンツ配信サービスが入手可能な他の非個人情報、又は公的に入手可能な情報に基づいて嗜好を推測することによって、オーディオコンテンツを選択し、ユーザに配信することができる。