(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-18
(45)【発行日】2025-04-28
(54)【発明の名称】身体活動に関連付けられたアフォーダンスのスクロール可能なリストの表示
(51)【国際特許分類】
G06F 3/01 20060101AFI20250421BHJP
G06F 3/0488 20220101ALI20250421BHJP
G06F 3/0481 20220101ALI20250421BHJP
G09G 5/00 20060101ALI20250421BHJP
【FI】
G06F3/01 510
G06F3/0488
G06F3/0481
G09G5/00 555D
G09G5/00 555G
G09G5/00 550C
【外国語出願】
(21)【出願番号】P 2024032418
(22)【出願日】2024-03-04
(62)【分割の表示】P 2023110196の分割
【原出願日】2018-05-08
【審査請求日】2024-04-02
(32)【優先日】2017-05-15
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2017-09-15
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】503260918
【氏名又は名称】アップル インコーポレイテッド
【氏名又は名称原語表記】Apple Inc.
【住所又は居所原語表記】One Apple Park Way,Cupertino, California 95014, U.S.A.
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】ウィリアムズ, アレッド ハイウェル
(72)【発明者】
【氏名】ブッチャー, ギャリー イアン
(72)【発明者】
【氏名】ソリ, クリストファー ディー.
(72)【発明者】
【氏名】サンドストロム, マシュー ジェイ.
(72)【発明者】
【氏名】ウィーブ, モリー プレイ
(72)【発明者】
【氏名】トリヴェリオ, マルコ
(72)【発明者】
【氏名】キャリガン, テイラー ジー.
(72)【発明者】
【氏名】ルメイ, ステファン オー.
(72)【発明者】
【氏名】ブリテイン, ロクサンヌ
(72)【発明者】
【氏名】リンチ, ケヴィン
【審査官】小河 俊弥
(56)【参考文献】
【文献】特開2016-052512(JP,A)
【文献】特開2010-088886(JP,A)
【文献】特開2014-216001(JP,A)
【文献】特表2017-531235(JP,A)
【文献】米国特許出願公開第2017/0080288(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/0488
G06F 3/0481
G09G 5/00
H04L 51/00
(57)【特許請求の範囲】
【請求項1】
方法であって、
ディスプレイと通信する電子デバイスにおいて、
外部デバイスからメッセージを受信することと、
前記メッセージがトレーニング情報を含むとの判定に従って、
前記ディスプレイに、前記メッセージに対する1以上の所定の応答を表示することと、
前記1以上の所定の応答のうちの所定の応答の選択に対応するユーザ入力を受け取ることと、
前記ユーザ入力を受け取った後に、返信メッセージを作成することであって、前記返信メッセージは、
選択された前記所定の応答と、
前記トレーニング情報と、
を含み、
前記メッセージがトレーニング情報を含まないとの判定に従って、前記ディスプレイに、前記1以上の所定の応答を表示せずに前記メッセージを表示することと
を含む、方法。
【請求項2】
前記トレーニング情報は人物を特定する情報を含む、請求項1に記載の方法。
【請求項3】
前記トレーニング情報はトレーニング指標を含む、請求項1または2に記載の方法。
【請求項4】
前記トレーニング情報はトレーニングの種類を含む、請求項1から3のいずれか1項に記載の方法。
【請求項5】
前記トレーニング情報は達成ステッカーを含む、請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記ユーザ入力を受け取ったことに応じて、前記返信メッセージを前記外部デバイスに送信することを更に含む、請求項1から5のいずれか1項に記載の方法。
【請求項7】
前記ディスプレイに、前記メッセージを表示することを更に含む、請求項1から6のいずれか1項に記載の方法。
【請求項8】
前記返信メッセージを作成することは、前記ユーザ入力を受け取ったことに応じて自動的に行われる、請求項1から7のいずれか1項に記載の方法。
【請求項9】
ディスプレイと通信する電子デバイスに、請求項1から8のいずれか1項に記載の方法を実行させるためのコンピュータプログラム。
【請求項10】
電子デバイスであって、
請求項9に記載のコンピュータプログラムを記憶したメモリと、
前記メモリに記憶された前記コンピュータプログラムを実行可能な1以上のプロセッサと
を備え、ディスプレイと通信するように構成された電子デバイス。
【請求項11】
ディスプレイと通信するように構成された電子デバイスであって、
請求項1から8のいずれか1項に記載の方法を実行するための手段を備える電子デバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して、コンピュータユーザインタフェースに関し、より具体的には、身体活動に関連付けられたアフォーダンスを表示するための技術に関する。
【0002】
[優先権の主張]
本出願は、2017年5月15日に出願された「DISPLAYING A SCROLLABLE LIST OF AFFORDANCES ASSOCIATED WITH PHYSICAL ACTIVITIES」と題する米国仮特許出願第62/506,304号及び2017年9月15日に出願された「DISPLAYING A SCROLLABLE LIST OF AFFORDANCES ASSOCIATED WITH PHYSICAL ACTIVITIES」と題する米国特許出願第15/705,849号に対する優先権を主張し、その内容全体が参照により本明細書に組み込まれる。
【背景技術】
【0003】
多くの最新の電子デバイスは、トレーニング追跡機能を制御する能力をもたらす。トレーニング追跡機能を制御するためのいくつかの技術は、複数のユーザ入力を必要とする。これらの技術は、煩雑で非効率的である場合がある。
【発明の概要】
【0004】
しかしながら、電子デバイスを使用して、身体活動に関連付けられたアフォーダンスを表示するための一部の技術は、一般的に煩雑で非効率的である。例えば、一部の既存の技術では、複数回のキー押下又は打鍵を含む場合がある、複雑かつ時間のかかるユーザインタフェースが使用されている。既存の技術は、必要以上の時間を要し、ユーザの時間及びデバイスのエネルギーを浪費する。後者の問題は、バッテリ動作式デバイスにおいては特に重大である。
【0005】
したがって、本技術は、身体活動に関連付けられたアフォーダンスを表示するための、より速く、より効率的な方法及びインタフェースを有する電子デバイスを提供する。そのような方法及びインタフェースは、任意選択的に、身体活動に関連付けられたアフォーダンスを表示するための他の方法を補完し又は置き換える。そのような方法及びインタフェースは、ユーザにかかる認識的負担を減らし、より効率的なヒューマンマシンインタフェースを作成する。バッテリ動作式のコンピューティングデバイスの場合、そのような方法及びインタフェースは、電力を節約し、電池充電の間隔を長くする。
【0006】
いくつかの実施形態では、方法が、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスにおいて、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示することと、アフォーダンスのスクロール可能なリスト内の第1のアフォーダンスに対応する第1のトレーニング指標変更アフォーダンスを表示することと、ユーザ入力を受け取ることと、ユーザ入力がアフォーダンスのスクロール可能なリスト内の第1のアフォーダンスで検出されたとの判定に従って、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能を起動することと、ユーザ入力が第1のトレーニング指標変更アフォーダンスで検出されたとの判定に従って、トレーニング指標を変更するように構成されたユーザインタフェースを表示することと、を含む。
【0007】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示し、アフォーダンスのスクロール可能なリスト内の第1のアフォーダンスに対応する第1のトレーニング指標変更アフォーダンスを表示し、ユーザ入力を受け取り、ユーザ入力がアフォーダンスのスクロール可能なリスト内の第1のアフォーダンスで検出されたとの判定に従って、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能を起動し、ユーザ入力が第1のトレーニング指標変更アフォーダンスで検出されたとの判定に従って、トレーニング指標を変更するように構成されたユーザインタフェースを表示する、命令を含む。
【0008】
いくつかの実施形態では、一時的コンピュータ可読記憶媒体は、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示し、アフォーダンスのスクロール可能なリスト内の第1のアフォーダンスに対応する第1のトレーニング指標変更アフォーダンスを表示し、ユーザ入力を受け取り、ユーザ入力がアフォーダンスのスクロール可能なリスト内の第1のアフォーダンスで検出されたとの判定に従って、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能を起動し、ユーザ入力が第1のトレーニング指標変更アフォーダンスで検出されたとの判定に従って、トレーニング指標を変更するように構成されたユーザインタフェースを表示する、命令を含む。
【0009】
いくつかの実施形態では、電子デバイスは、ディスプレイと、タッチ感知面と、身体活動追跡センサと、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶するメモリと、を備え、1つ以上のプログラムは、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示し、アフォーダンスのスクロール可能なリスト内の第1のアフォーダンスに対応する第1のトレーニング指標変更アフォーダンスを表示し、ユーザ入力を受け取り、ユーザ入力がアフォーダンスのスクロール可能なリスト内の第1のアフォーダンスで検出されたとの判定に従って、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能を起動し、ユーザ入力が第1のトレーニング指標変更アフォーダンスで検出されたとの判定に従って、トレーニング指標を変更するように構成されたユーザインタフェースを表示する、命令を含む。
【0010】
いくつかの実施形態では、電子デバイスは、ディスプレイと、タッチ感知面と、身体活動追跡センサと、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示する手段と、アフォーダンスのスクロール可能なリスト内の第1のアフォーダンスに対応する第1のトレーニング指標変更アフォーダンスを表示する手段と、ユーザ入力を受け取る手段と、ユーザ入力がアフォーダンスのスクロール可能なリスト内の第1のアフォーダンスで検出されたとの判定に従って、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能を起動する手段と、ユーザ入力が第1のトレーニング指標変更アフォーダンスで検出されたとの判定に従って、トレーニング指標を変更するように構成されたユーザインタフェースを表示する手段と、を備える。
【0011】
いくつかの実施形態では、方法は、ディスプレイ及びタッチ感知面を有する電子デバイスにおいて、オーディオアプリケーションがオーディオコンテンツを再生している間に、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示することと、オーディオアプリケーションがオーディオコンテンツを再生している間に、アフォーダンスのスクロール可能なリスト内のアフォーダンスでユーザ入力を受け取ることと、アフォーダンスでユーザ入力を受け取ったことに応じて、選択されたアフォーダンスに関連付けられた身体活動追跡機能を起動し、トレーニングオーディオ再生リスト設定が有効であるかどうかを判定することと、トレーニングオーディオ再生リスト設定が有効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を停止し、デバイス上でのトレーニングオーディオ再生リストの再生を開始することと、トレーニングオーディオ再生リスト設定が無効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を継続することと、を含む。
【0012】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、ディスプレイ及びタッチ感知面を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、オーディオアプリケーションがオーディオコンテンツを再生している間に、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示し、オーディオアプリケーションがオーディオコンテンツを再生している間に、アフォーダンスのスクロール可能なリスト内のアフォーダンスでユーザ入力を受け取り、アフォーダンスでユーザ入力を受け取ったことに応じて、選択されたアフォーダンスに関連付けられた身体活動追跡機能を起動し、トレーニングオーディオ再生リスト設定が有効であるかどうかを判定し、トレーニングオーディオ再生リスト設定が有効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を停止し、デバイス上でのトレーニングオーディオ再生リストの再生を開始し、トレーニングオーディオ再生リスト設定が無効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を継続する、命令を含む。
【0013】
いくつかの実施形態では、一時的コンピュータ可読記憶媒体は、ディスプレイ及びタッチ感知面を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、オーディオアプリケーションがオーディオコンテンツを再生している間に、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示し、オーディオアプリケーションがオーディオコンテンツを再生している間に、アフォーダンスのスクロール可能なリスト内のアフォーダンスでユーザ入力を受け取り、アフォーダンスでユーザ入力を受け取ったことに応じて、選択されたアフォーダンスに関連付けられた身体活動追跡機能を起動し、トレーニングオーディオ再生リスト設定が有効であるかどうかを判定し、トレーニングオーディオ再生リスト設定が有効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を停止し、デバイス上でのトレーニングオーディオ再生リストの再生を開始し、トレーニングオーディオ再生リスト設定が無効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を継続する、命令を含む。
【0014】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶するメモリと、を備え、1つ以上のプログラムは、オーディオアプリケーションがオーディオコンテンツを再生している間に、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示し、オーディオアプリケーションがオーディオコンテンツを再生している間に、アフォーダンスのスクロール可能なリスト内のアフォーダンスでユーザ入力を受け取り、アフォーダンスでユーザ入力を受け取ったことに応じて、選択されたアフォーダンスに関連付けられた身体活動追跡機能を起動し、トレーニングオーディオ再生リスト設定が有効であるかどうかを判定し、トレーニングオーディオ再生リスト設定が有効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を停止し、デバイス上でのトレーニングオーディオ再生リストの再生を開始し、トレーニングオーディオ再生リスト設定が無効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を継続する、命令を含む。
【0015】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、オーディオアプリケーションがオーディオコンテンツを再生している間に、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示する手段と、オーディオアプリケーションがオーディオコンテンツを再生している間に、アフォーダンスのスクロール可能なリスト内のアフォーダンスでユーザ入力を受け取る手段と、アフォーダンスでユーザ入力を受け取ったことに応じて、選択されたアフォーダンスに関連付けられた身体活動追跡機能を起動する手段と、トレーニングオーディオ再生リスト設定が有効であるかどうかを判定する手段と、トレーニングオーディオ再生リスト設定が有効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を停止する手段と、デバイス上でのトレーニングオーディオ再生リストの再生を開始する手段と、トレーニングオーディオ再生リスト設定が無効であるとの判定に従って、デバイス上でのオーディオコンテンツの再生を継続する手段と、を備える。
【0016】
いくつかの実施形態では、方法は、ディスプレイ及びタッチ感知面を有する電子デバイスにおいて、外部デバイスからメッセージを受信することと、メッセージがトレーニング情報を含むとの判定に従って、受信したメッセージに対する1つ以上の既定の応答を表示することと、1つ以上の既定の応答のうちの既定の応答の選択に対応するユーザ入力を受け取ることと、ユーザ入力を受け取った後に、返信メッセージを作成することであって、返信メッセージは、選択された既定の応答、及びトレーニング情報を含む、ことと、を含む。
【0017】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、ディスプレイ及びタッチ感知面を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、外部デバイスからメッセージを受信し、メッセージがトレーニング情報を含むとの判定に従って、受信したメッセージに対する1つ以上の既定の応答を表示し、1つ以上の既定の応答のうちの既定の応答の選択に対応するユーザ入力を受け取り、ユーザ入力を受け取った後に、返信メッセージであって、返信メッセージは、選択された既定の応答、及びトレーニング情報を含む、返信メッセージを作成する、命令を含む。
【0018】
いくつかの実施形態では、一時的コンピュータ可読記憶媒体は、ディスプレイ及びタッチ感知面を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、外部デバイスからメッセージを受信し、メッセージがトレーニング情報を含むとの判定に従って、受信したメッセージに対する1つ以上の既定の応答を表示し、1つ以上の既定の応答のうちの既定の応答の選択に対応するユーザ入力を受け取り、ユーザ入力を受け取った後に、返信メッセージであって、返信メッセージは、選択された既定の応答、及びトレーニング情報を含む、返信メッセージを作成する、命令を含む。
【0019】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶するメモリと、を備え、1つ以上のプログラムは、外部デバイスからメッセージを受信し、メッセージがトレーニング情報を含むとの判定に従って、受信したメッセージに対する1つ以上の既定の応答を表示し、1つ以上の既定の応答のうちの既定の応答の選択に対応するユーザ入力を受け取り、ユーザ入力を受け取った後に、返信メッセージであって、返信メッセージは、選択された既定の応答、及びトレーニング情報を含む、返信メッセージを作成する、命令を含む。
【0020】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、外部デバイスからメッセージを受信する手段と、メッセージがトレーニング情報を含むとの判定に従って、受信したメッセージに対する1つ以上の既定の応答を表示する手段と、1つ以上の既定の応答のうちの既定の応答の選択に対応するユーザ入力を受け取る手段と、ユーザ入力を受け取った後に、返信メッセージを作成する手段であって、返信メッセージが、選択された既定の応答、及びトレーニング情報を含む、手段と、を備える。
【0021】
いくつかの実施形態では、方法は、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスにおいて、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリストを表示することであって、アフォーダンスのスクロール可能なリストは、第1のアフォーダンスであって、第1の身体活動、及び第1の身体活動に関連付けられた第1の心拍数情報を特定し、第1の心拍数情報は、身体活動追跡センサによって測定される、第1のアフォーダンスと、第2のアフォーダンスであって、第2の身体活動、及び第2の身体活動に関連付けられた第2の心拍数情報を特定し、第2の心拍数情報は、第1の心拍数情報とは異なり、第2の心拍数情報は、身体活動追跡センサによって測定される、第2のアフォーダンスと、を含む、ことと、ユーザ入力を受け取ることと、ユーザ入力が第1のアフォーダンスに対応するとの判定に従って、追加の第1の心拍数情報を表示することと、ユーザ入力が第2のアフォーダンスに対応するとの判定に従って、追加の第2の心拍数情報を表示することであって、追加の第2の心拍数情報は、追加の第1の心拍数情報とは異なる、ことと、を含む。
【0022】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリストであって、アフォーダンスのスクロール可能なリストは、第1のアフォーダンスであって、第1の身体活動、及び第1の身体活動に関連付けられた第1の心拍数情報を特定し、第1の心拍数情報は、身体活動追跡センサによって測定される、第1のアフォーダンスと、第2のアフォーダンスであって、第2の身体活動、及び第2の身体活動に関連付けられた第2の心拍数情報を特定し、第2の心拍数情報は、第1の心拍数情報とは異なり、第2の心拍数情報は、身体活動追跡センサによって測定される、第2のアフォーダンスと、を含む、アフォーダンスのスクロール可能なリストを表示し、ユーザ入力を受け取り、ユーザ入力が第1のアフォーダンスに対応するとの判定に従って、追加の第1の心拍数情報を表示し、ユーザ入力が第2のアフォーダンスに対応するとの判定に従って、追加の第2の心拍数情報であって、追加の第2の心拍数情報は、追加の第1の心拍数情報とは異なる、追加の第2の心拍数情報を表示する、命令を含む。
【0023】
いくつかの実施形態では、一時的コンピュータ可読記憶媒体は、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリストであって、アフォーダンスのスクロール可能なリストは、第1のアフォーダンスであって、第1の身体活動、及び第1の身体活動に関連付けられた第1の心拍数情報を特定し、第1の心拍数情報が、身体活動追跡センサによって測定される、第1のアフォーダンスと、第2のアフォーダンスであって、第2の身体活動、及び第2の身体活動に関連付けられた第2の心拍数情報を特定し、第2の心拍数情報は、第1の心拍数情報とは異なり、第2の心拍数情報は、身体活動追跡センサによって測定される、第2のアフォーダンスと、を含む、アフォーダンスのスクロール可能なリストを表示し、ユーザ入力を受け取り、ユーザ入力が第1のアフォーダンスに対応するとの判定に従って、追加の第1の心拍数情報を表示し、ユーザ入力が第2のアフォーダンスに対応するとの判定に従って、追加の第2の心拍数情報であって、追加の第2の心拍数情報は、追加の第1の心拍数情報とは異なる、追加の第2の心拍数情報を表示する、命令を含む。
【0024】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、身体活動追跡センサと、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶するメモリと、を備え、1つ以上のプログラムは、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリストであって、アフォーダンスのスクロール可能なリストは、第1のアフォーダンスであって、第1の身体活動、及び第1の身体活動に関連付けられた第1の心拍数情報を特定し、第1の心拍数情報は、身体活動追跡センサによって測定される、第1のアフォーダンスと、第2のアフォーダンスであって、第2の身体活動、及び第2の身体活動に関連付けられた第2の心拍数情報を特定し、第2の心拍数情報は、第1の心拍数情報とは異なり、第2の心拍数情報は、身体活動追跡センサによって測定される、第2のアフォーダンスと、を含む、アフォーダンスのスクロール可能なリストを表示し、ユーザ入力を受け取り、ユーザ入力が第1のアフォーダンスに対応するとの判定に従って、追加の第1の心拍数情報を表示し、ユーザ入力が第2のアフォーダンスに対応するとの判定に従って、追加の第2の心拍数情報であって、追加の第2の心拍数情報は、追加の第1の心拍数情報とは異なる、追加の第2の心拍数情報を表示する、命令を含む。
【0025】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、身体活動追跡センサと、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリストを表示する手段であって、アフォーダンスのスクロール可能なリストは、第1のアフォーダンスであって、第1の身体活動、及び第1の身体活動に関連付けられた第1の心拍数情報を特定し、第1の心拍数情報は、身体活動追跡センサによって測定される、第1のアフォーダンスと、第2のアフォーダンスであって、第2の身体活動、及び第2の身体活動に関連付けられた第2の心拍数情報を特定し、第2の心拍数情報は、第1の心拍数情報とは異なり、第2の心拍数情報は、身体活動追跡センサによって測定される、第2のアフォーダンスと、を含む、手段と、ユーザ入力を受け取る手段と、ユーザ入力が第1のアフォーダンスに対応するとの判定に従って、追加の第1の心拍数情報を表示する手段と、ユーザ入力が第2のアフォーダンスに対応するとの判定に従って、追加の第2の心拍数情報を表示する手段であって、追加の第2の心拍数情報は、追加の第1の心拍数情報とは異なる、手段と、を備える。
【0026】
いくつかの実施形態では、方法が、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスにおいて、身体活動追跡センサから受信されるデータに対応する心拍数データを追跡している間に、心拍数データが心拍数警告基準を満たすかどうかを判定することと、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数警告アフォーダンスを表示することと、心拍数警告アフォーダンスに対応するユーザ入力を受け取ることと、心拍数警告アフォーダンスに対応するユーザ入力を受け取った後に、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含むグラフを表示させることと、心拍数データが心拍数警告基準を満たさないとの判定に従って、心拍数警告アフォーダンスの表示を見合わせることと、を含む。
【0027】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体が、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、身体活動追跡センサから受信されるデータに対応する心拍数データを追跡している間に、心拍数データが心拍数警告基準を満たすかどうかを判定し、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数警告アフォーダンスを表示しと、心拍数警告アフォーダンスに対応するユーザ入力を受け取りと、心拍数警告アフォーダンスに対応するユーザ入力を受け取った後に、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含むグラフを表示させ、心拍数データが心拍数警告基準を満たさないとの判定に従って、心拍数警告アフォーダンスの表示を見合わせる、命令を含む。
【0028】
いくつかの実施形態では、一時的コンピュータ可読記憶媒体は、ディスプレイと、タッチ感知面と、身体活動追跡センサと、を有する電子デバイスの1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶し、1つ以上のプログラムは、身体活動追跡センサから受信されるデータに対応する心拍数データを追跡している間に、心拍数データが心拍数警告基準を満たすかどうかを判定し、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数警告アフォーダンスを表示し、心拍数警告アフォーダンスに対応するユーザ入力を受け取り、心拍数警告アフォーダンスに対応するユーザ入力を受け取った後に、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含むグラフを表示させ、心拍数データが心拍数警告基準を満たさないとの判定に従って、心拍数警告アフォーダンスの表示を見合わせる、命令を含む。
【0029】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、身体活動追跡センサと、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶するメモリと、を備え、1つ以上のプログラムは、身体活動追跡センサから受信されたデータに対応する心拍数データを追跡している間に、心拍数データが心拍数警告基準を満たすかどうかを判定し、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数警告アフォーダンスを表示し、心拍数警告アフォーダンスに対応するユーザ入力を受け取り、心拍数警告アフォーダンスに対応するユーザ入力を受け取った後に、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含むグラフを表示させ、心拍数データが心拍数警告基準を満たさないとの判定に従って、心拍数警告アフォーダンスの表示を見合わせる、命令を含む。
【0030】
いくつかの実施形態では、電子デバイスが、ディスプレイと、タッチ感知面と、身体活動追跡センサと、身体活動追跡センサから受信されたデータに対応する心拍数データを追跡している間に、心拍数データが心拍数警告基準を満たすかどうかを判定する手段と、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数警告アフォーダンスを表示する手段と、心拍数警告アフォーダンスに対応するユーザ入力を受け取る手段と、心拍数警告アフォーダンスに対応するユーザ入力を受け取った後に、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含むグラフを表示させる手段と、心拍数データが心拍数警告基準を満たさないとの判定に従って、心拍数警告アフォーダンスの表示を見合わせる手段と、を備える。
【0031】
これらの機能を実行する実行可能な命令は、任意選択的に、1つ以上のプロセッサによって実行されるように構成された非一時的コンピュータ可読記憶媒体又は他のコンピュータプログラム製品内に含まれる。これらの機能を実行する実行可能な命令は、任意選択的に、1つ以上のプロセッサによって実行されるように構成された一時的コンピュータ可読記憶媒体又は他のコンピュータプログラム製品内に含まれる。
【0032】
したがって、身体活動に関連付けられたアフォーダンスを表示するための、より速く、より効率的な方法及びインタフェースを有することによって、そのようなデバイスによる有効性、効率性、及びユーザ満足度を高めるデバイスが提供される。そのような方法及びインタフェースは、身体活動に関連付けられたアフォーダンスを表示するための他の方法を補完又は置き換え得る。
【図面の簡単な説明】
【0033】
説明される様々な実施形態をより良く理解するため、以下の図面と併せて、以下の「発明を実施するための形態」が参照されるべきであり、類似の参照番号は、以下の図の全てを通じて、対応する部分を指す。
【0034】
【
図1A】いくつかの実施形態による、タッチ感知ディスプレイを備えたポータブル多機能デバイスを示すブロック図である。
【0035】
【
図1B】いくつかの実施形態による、イベント処理のための例示的な構成要素を示すブロック図である。
【0036】
【
図2】いくつかの実施形態による、タッチスクリーンを有するポータブル多機能デバイスを示す。
【0037】
【
図3】いくつかの実施形態による、ディスプレイ及びタッチ感知面を有する、例示的な多機能デバイスのブロック図である。
【0038】
【
図4A】いくつかの実施形態による、ポータブル多機能デバイス上のアプリケーションのメニューの例示的なユーザインタフェースを示す。
【0039】
【
図4B】いくつかの実施形態による、ディスプレイとは別個のタッチ感知面を有する多機能デバイスの例示的なユーザインタフェースを示す。
【0040】
【
図5A】いくつかの実施形態による、パーソナル電子デバイスを示す。
【0041】
【
図5B】いくつかの実施形態による、パーソナル電子デバイスを示すブロック図である。
【0042】
【
図5C】いくつかの実施形態による、タッチ感知ディスプレイ及び強度センサを有するパーソナル電子デバイスの例示的な構成要素を示す。
【
図5D】いくつかの実施形態による、タッチ感知ディスプレイ及び強度センサを有するパーソナル電子デバイスの例示的な構成要素を示す。
【0043】
【
図5E】いくつかの実施形態による、パーソナル電子デバイスの例示的な構成要素及びユーザインタフェースを示す。
【
図5F】いくつかの実施形態による、パーソナル電子デバイスの例示的な構成要素及びユーザインタフェースを示す。
【
図5G】いくつかの実施形態による、パーソナル電子デバイスの例示的な構成要素及びユーザインタフェースを示す。
【
図5H】いくつかの実施形態による、パーソナル電子デバイスの例示的な構成要素及びユーザインタフェースを示す。
【0044】
【
図6A】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6B】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6C】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6D】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6E】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6F】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6G】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6H】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6I】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6J】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6K】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6L】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6M】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6N】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6O】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6P】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6Q】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6R】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6S】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6T】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6U】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6V】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6W】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6X】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6Y】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6Z】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AA】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AB】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AC】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AD】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AE】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AF】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AG】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AH】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AI】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AJ】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AK】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AL】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AM】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AN】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AO】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AP】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AQ】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AR】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AS】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AT】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AU】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AV】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AW】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AX】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AY】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6AZ】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BA】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BB】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BC】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BD】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BE】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BF】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BG】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BH】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BI】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BJ】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BK】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BL】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BM】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図6BN】いくつかの実施形態による例示的なユーザインタフェースを示す。
【0045】
【
図7】いくつかの実施形態による、電子デバイスを動作させるための方法を示すフロー図である。
【0046】
【
図8A】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8B】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8C】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8D】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8E】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8F】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8G】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8H】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8I】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8J】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8K】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8L】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8M】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8N】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8O】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8P】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8Q】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8R】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8S】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図8T】いくつかの実施形態による例示的なユーザインタフェースを示す。
【0047】
【
図9】いくつかの実施形態による、電子デバイスを動作させるための方法を示すフロー図である。
【0048】
【
図10A】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10B】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10C】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10D】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10E】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10F】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10G】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10H】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10I】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10J】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10K】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10L】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10M】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図10N】いくつかの実施形態による例示的なユーザインタフェースを示す。
【0049】
【
図11】いくつかの実施形態による、電子デバイスを動作させるための方法を示すフロー図である。
【0050】
【
図12A】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12B】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12C】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12D】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12E】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12F】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12G】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12H】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12I】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12J】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12K】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12L】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図12M】いくつかの実施形態による例示的なユーザインタフェースを示す。
【0051】
【
図13】いくつかの実施形態による、電子デバイスを動作させるための方法を示すフロー図である。
【0052】
【
図14A】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14B】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14C】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14D】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14E】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14F】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14G】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14H】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14I】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14J】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14K】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14L】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14M】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14N】いくつかの実施形態による例示的なユーザインタフェースを示す。
【
図14O】いくつかの実施形態による例示的なユーザインタフェースを示す。
【0053】
【
図15】いくつかの実施形態による、電子デバイスを動作させるための方法を示すフロー図である。
【発明を実施するための形態】
【0054】
以下の説明は、例示的な方法、パラメータなどについて記載する。しかしながら、そのような説明は、本開示の範囲に対する限定として意図されるものではなく、代わりに例示的な実施形態の説明として提供されることを認識されたい。
【0055】
身体活動に関連付けられたアフォーダンスを表示するための効率的な方法及びアフォーダンスを提供する電子デバイスが必要とされている。そのような技術は、身体活動に関連付けられたアフォーダンスにアクセスするユーザの認識的負担を減らし、それによって生産性を高めることができる。更に、このような技法は、普通なら冗長なユーザ入力に浪費されるプロセッサ及び電池の電力を低減させることができる。
【0056】
以下に、
図1A~
図1B、
図2、
図3、
図4A~
図4B、及び
図5A~
図5Hは、イベント通知を管理する技法を行うための例示的なデバイスの説明を提供する。
図6A~
図6BNは、身体活動に関連付けられたアフォーダンスを表示するための例示的なユーザインタフェースを示す。
図7は、いくつかの実施形態による、身体活動に関連付けられたアフォーダンスを表示する方法を示すフロー図である。
図6A~
図6BNのユーザインタフェースは、
図7の処理を含む、後述の処理を説明するために使用される。
【0057】
図8A~
図8Tは、トレーニングの選択に応じて、現在再生している曲の再生を継続するか、又は再生を継続しない例示的なユーザインタフェースを示す。
図9は、いくつかの実施形態による、トレーニングの選択に応じて、現在再生している曲の再生を継続するか、又は再生を継続しない方法を示すフロー図である。
図8A~
図8Tのユーザインタフェースは、
図9の処理を含む、後述の処理を説明するために使用される。
【0058】
図10A~
図10Nは、既定の応答及びトレーニング情報を含む返信メッセージを作成するための例示的なユーザインタフェースを示す。
図11は、いくつかの実施形態による、既定の応答及びトレーニング情報を含む返信メッセージを作成する方法を示すフロー図である。
図10A~
図10Nのユーザインタフェースは、
図11の処理を含む、後述の処理を説明するために使用される。
【0059】
図12A~
図12Mは、心拍数情報に関連付けられたアフォーダンスを表示するための例示的なユーザインタフェースを示す。
図13は、いくつかの実施形態による、心拍数情報に関連付けられたアフォーダンスを表示する方法を示すフロー図である。
図12A~
図12Mのユーザインタフェースは、
図13の処理を含む、後述の処理を説明するために使用される。
【0060】
図14A~
図14Oは、心拍数警告を表示するための例示的なユーザインタフェースを示す。
図15は、いくつかの実施形態による、心拍数警告を表示する方法を示すフロー図である。
図14A~
図14Oのユーザインタフェースは、
図15の処理を含む、後述の処理を説明するために使用される。
【0061】
以下の説明では、様々な要素について説明するために、「第1の」、「第2の」などの用語を使用するが、これらの要素は、それらの用語によって限定されるべきではない。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、記載する様々な実施形態の範囲から逸脱することなく、第1のタッチを第2のタッチと呼ぶこともでき、同様に第2のタッチを第1のタッチと呼ぶこともできる。第1のタッチ及び第2のタッチはどちらもタッチであるが、これらは同じタッチではない。
【0062】
本明細書に記載する様々な実施形態の説明で使用される術語は、特定の実施形態を説明することのみを目的とし、限定的であることは意図されていない。記載する様々な実施形態の説明及び添付の特許請求の範囲では、単数形の「a(1つ、一)」、「an(1つ、一)」、及び「the(その、この)」は、文脈上別途明白に記載しない限り、複数形も同様に含むことが意図される。また、本明細書で使用されるとき、用語「及び/又は」は、関連する列挙された項目のうちの1つ以上のいずれか及び全ての考えられる組合せを指し、かつこれを含むことを理解されたい。用語「includes(含む)」、「including(含む)」、「comprises(含む、備える)」、及び/又は「comprising(含む、備える)」は、本明細書で使用する場合、述べられた特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらのグループの存在又は追加を除外しないことが更に理解されるであろう。
【0063】
「~の場合(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])」を意味すると解釈される。
【0064】
電子デバイス、そのようなデバイス用のユーザインタフェース、及びそのようなデバイスを使用する関連する処理の実施形態が説明される。いくつかの実施形態では、デバイスは、PDA機能及び/又は音楽プレーヤ機能などの他の機能も含む、携帯電話などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態としては、カリフォルニア州クパチーノのApple Inc.からのiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)のデバイスが挙げられるが、これらに限定されない。任意選択的に、タッチ感知面を有するラップトップ又はタブレットコンピュータ(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)などの他のポータブル電子デバイスも使用される。また、いくつかの実施形態では、デバイスはポータブル通信デバイスではなく、タッチ感知面を有するデスクトップコンピュータ(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)であることも理解されたい。
【0065】
以下の論考では、ディスプレイ及びタッチ感知面を含む電子デバイスについて説明する。しかしながら、電子デバイスは、任意選択的に、物理キーボード、マウス、及び/又はジョイスティックなどの1つ以上の他の物理ユーザインタフェースデバイスを含むことを理解されたい。
【0066】
デバイスは、典型的には、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション、及び/又はデジタルビデオプレーヤアプリケーションのうちの1つ以上などの様々なアプリケーションに対応する。
【0067】
本デバイス上で実行される様々なアプリケーションは、タッチ感知面などの、少なくとも1つの共通の物理ユーザインタフェースデバイスを、任意選択的に使用する。タッチ感知面の1つ以上の機能、並びにデバイス上に表示される対応する情報は、アプリケーションごとに、及び/又はそれぞれのアプリケーション内で、任意選択的に、調節及び/又は変更される。このように、デバイスの共通の物理アーキテクチャ(タッチ感知面など)は、任意選択的に、ユーザにとって直観的かつ透過的なユーザインタフェースを備える様々なアプリケーションをサポートする。
【0068】
ここで、タッチ感知ディスプレイを備えるポータブルデバイスの実施形態に注意を向ける。
図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を介して通信する。
【0069】
本明細書及び特許請求の範囲では、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触(例えば、指の接触)の力若しくは圧力(単位面積当たりの力)、又はタッチ感知面上の接触の力若しくは圧力に対する代理(プロキシ)を指す。接触の強度は、少なくとも4つの別個の値を含み、より典型的には、数百の(例えば、少なくとも256の)別個の値を含む、値の範囲を有する。接触の強度は、任意選択的に、様々な手法、及び様々なセンサ又はセンサの組合せを使用して、特定(又は測定)される。例えば、タッチ感知面の下又はそれに隣接する1つ以上の力センサは、任意選択的に、タッチ感知面上の様々な点における力を測定するために使用される。いくつかの実装形態では、複数の力センサからの力測定値は、接触の推定される力を判定するために組み合わされる(例えば、加重平均)。同様に、スタイラスの感圧性先端部は、任意選択的に、タッチ感知面上のスタイラスの圧力を特定するために使用される。あるいは、タッチ感知面上で検出される接触エリアのサイズ及び/若しくはその変化、接触に近接するタッチ感知面の電気容量及び/若しくはその変化、並びに/又は、接触に近接するタッチ感知面の抵抗及び/若しくはその変化は、任意選択的に、タッチ感知面上の接触の力又は圧力の代替物として使用される。いくつかの実装形態では、接触の力又は圧力のための代替測定値は、強度閾値を超えているかどうかを判定するために直接使用される(例えば、強度閾値は、代替測定値に対応する単位で記述される)。いくつかの実装形態では、接触力又は圧力に対する代理測定は、推定される力又は圧力に変換され、推定される力又は圧力は、強度閾値を超過したかどうかを判定するために使用される(例えば、強度閾値は、圧力の単位で測定される圧力閾値である)。接触の強度をユーザ入力の属性として使用することにより、アフォーダンスを(例えば、タッチ感知ディスプレイ上に)表示するための、及び/又は、ユーザ入力を(例えば、タッチ感知ディスプレイ、タッチ感知面、又は、ノブ若しくはボタンなどの物理的/機械的制御部を介して)受け取るための面積が制限されている、低減されたサイズのデバイス上で、通常であればユーザによってアクセスすることが不可能であり得る追加のデバイス機能への、ユーザのアクセスが可能となる。
【0070】
本明細書及び特許請求の範囲で使用されるように、用語「触知出力」は、ユーザの触覚でユーザによって検出されることになる、デバイスの従前の位置に対するそのデバイスの物理的変位、デバイスの構成要素(例えば、タッチ感知面)の、そのデバイスの別の構成要素(例えば、筐体)に対する物理的変位、又は、デバイスの質量中心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面(例えば、ユーザの手の指、手のひら、又は他の部分)に接触している状況では、物理的変位によって生成された触知出力は、そのデバイス又はデバイスの構成要素の物理的特性の認識される変化に相当する触感として、ユーザによって解釈されることになる。例えば、タッチ感知面(例えば、タッチ感知ディスプレイ又はトラックパッド)の移動は、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として、任意選択的に解釈される。いくつかの場合、ユーザの動作により物理的に押された(例えば、変位された)タッチ感知面に関連付けられた物理アクチュエータボタンの移動がない時でさえ、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じる。別の例として、タッチ感知面の移動は、タッチ感知面の平滑度に変化がない場合であっても、ユーザによって、そのタッチ感知面の「粗さ」として、任意選択的に解釈又は感知される。そのようなユーザによるタッチの解釈は、ユーザの個人的な感覚認知に左右されるが、大多数のユーザに共通する、多くのタッチの感覚認知が存在する。したがって、触知出力が、ユーザの特定の感覚認知(例えば、「アップクリック」「ダウンクリック」、「粗さ」)に対応するものと記述される場合、別途記載のない限り、生成された触知出力は、典型的な(又は、平均的な)ユーザの記述された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。
【0071】
デバイス100は、ポータブル多機能デバイスの一例に過ぎず、デバイス100は、任意選択的に、示されているものよりも多くの構成要素又は少ない構成要素を有するものであり、任意選択的に、2つ以上の構成要素を組合せるものであり、又は、任意選択的に、それらの構成要素の異なる構成若しくは配置を有するものであることを理解されたい。
図1Aに示す様々な構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアの両方の組合せで実施される。
【0072】
メモリ102は、任意選択的に、高速ランダムアクセスメモリを含み、また任意選択的に、1つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステートメモリデバイスなどの不揮発性メモリを含む。メモリコントローラ122は、任意選択的に、デバイス100の他の構成要素によるメモリ102へのアクセスを制御する。
【0073】
周辺機器インタフェース118は、デバイスの入力及び出力周辺機器をCPU120及びメモリ102に結合するために使用することができる。1つ以上のプロセッサ120は、メモリ102に記憶された様々なソフトウェアプログラム及び/又は命令セットを動作させる、又は実行して、デバイス100のための様々な機能を実行し、データを処理する。いくつかの実施形態では、周辺機器インタフェース118、CPU120、及びメモリコントローラ122は、任意選択的に、チップ104などの単一のチップ上で実施される。いくつかの他の実施形態では、それらは別々のチップ上に任意選択的に実装される。
【0074】
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(登録商標))(例えば、IEEE 802.11a、IEEE 802.11b、IEEE 802.11g、IEEE 802.11n、及び/若しくはIEEE 802.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)、又は本明細書の出願日の時点でまだ開発されていない通信プロトコルを含む任意の他の適した通信プロトコルを含む、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
【0075】
オーディオ回路110、スピーカ111、及びマイクロフォン113は、ユーザとデバイス100との間のオーディオインタフェースを提供する。オーディオ回路110は、周辺機器インタフェース118からオーディオデータを受信し、このオーディオデータを電気信号に変換し、この電気信号をスピーカ111に送信する。スピーカ111は、電気信号を人間の可聴音波に変換する。また、オーディオ回路110は、マイクロフォン113によって音波から変換された電気信号を受信する。オーディオ回路110は、電気信号をオーディオデータに変換し、このオーディオデータを処理のために周辺機器インタフェース118に送信する。オーディオデータは、任意選択的に、周辺機器インタフェース118によって、メモリ102及び/若しくはRF回路108から取得され、かつ/又はメモリ102及び/若しくはRF回路108に送信される。いくつかの実施形態では、オーディオ回路110はまた、ヘッドセットジャック(例えば、
図2の212)を含む。ヘッドセットジャックは、オーディオ回路110と、出力専用ヘッドホン又は出力(例えば片耳又は両耳用のヘッドホン)及び入力(例えばマイクロフォン)の両方を有するヘッドセットなどの着脱可能なオーディオ入出力周辺機器との間のインタフェースを提供する。
【0076】
I/Oサブシステム106は、タッチスクリーン112及び他の入力コントロールデバイス116などのデバイス100上の入出力周辺機器を、周辺機器インタフェース118に結合する。I/Oサブシステム106は、任意選択的に、ディスプレイコントローラ156、光センサコントローラ158、強度センサコントローラ159、触覚フィードバックコントローラ161、及び他の入力デバイス若しくは制御デバイスのための1つ以上の入力コントローラ160を含む。1つ以上の入力コントローラ160は、他の入力コントロールデバイス116からの電気信号の受信/他の入力コントロールデバイス116への電気信号の送信を行う。他の入力コントロールデバイス116は、任意選択的に、物理ボタン(例えば、プッシュボタン、ロッカボタンなど)、ダイヤル、スライダスイッチ、ジョイスティック、クリックホイールなどを含む。いくつかの代替実施形態では、入力コントローラ(単数又は複数)160は、任意選択的に、キーボード、赤外線ポート、USBポート、及びマウスなどのポインタデバイスのうちのいずれかに結合される(又はいずれにも結合されない)。1つ以上のボタン(例えば、
図2の208)は、任意選択的に、スピーカ111及び/又はマイクロフォン113の音量制御のための上下ボタンを含む。1つ以上のボタンは、任意選択的に、プッシュボタン(例えば、
図2の206)を含む。
【0077】
全体として参照により本明細書に組み込まれている、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つ以上のソフトキーボードを実施するために使用される。
【0078】
タッチ感知ディスプレイ112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112からの電気信号の受信及び/又はタッチスクリーン112への電気信号の送信を行う。タッチスクリーン112は、ユーザに対して視覚出力を表示する。この視覚出力は、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組合せ(総称して「グラフィック」)を任意選択的に含む。いくつかの実施形態では、視覚出力の一部又は全ては、任意選択的に、ユーザインタフェースオブジェクトに対応する。
【0079】
タッチスクリーン112は、触覚及び/又は触知接触に基づいてユーザからの入力を受信するタッチ感知面、センサ、又は1組のセンサを有する。タッチスクリーン112及びディスプレイコントローラ156は(あらゆる関連モジュール及び/又はメモリ102内の命令セットとともに)、タッチスクリーン112上の接触(及び接触のあらゆる動き又は中断)を検出し、検出した接触を、タッチスクリーン112上に表示されるユーザインタフェースオブジェクトとの対話(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)に変換する。例示的な実施形態では、タッチスクリーン112とユーザとの間の接触点は、ユーザの指に対応する。
【0080】
タッチスクリーン112は、任意選択的に、LCD(液晶ディスプレイ)技術、LPD(発光ポリマーディスプレイ)技術、又はLED(発光ダイオード)技術を使用するが、他の実施形態では、他のディスプレイ技術も使用される。タッチスクリーン112及びディスプレイコントローラ156は、任意選択的に、それだけに限定されるものではないが、容量性、抵抗性、赤外線、及び表面音波の技術、並びにタッチスクリーン112との1つ以上の接触点を判定する他の近接センサアレイ又は他の要素を含む、現在知られている又は今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触及びそのあらゆる動き又は中断を検出する。例示的な実施形態では、カリフォルニア州クパチーノのApple Inc.からのiPhone(登録商標)及びiPod Touch(登録商標)に見られるものなどの、投影型相互静電容量感知技術が使用される。
【0081】
タッチスクリーン112のいくつかの実施形態におけるタッチ感知ディスプレイは、任意選択的に、それぞれ全体として参照により本明細書に組み込まれている、米国特許第6,323,846号(Westermanら)、第6,570,557号(Westermanら)、及び/若しくは第6,677,932号(Westerman)、並びに/又は米国特許公報第2002/0015024A1号という米国特許に記載されているマルチタッチ感知タッチパッドに類似している。しかしながら、タッチスクリーン112はデバイス100からの視覚出力を表示するのに対して、タッチ感知タッチパッドは視覚出力を提供しない。
【0082】
タッチスクリーン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」という出願に記載されている。これらの出願は全て、全体として参照により本明細書に組み込まれている。
【0083】
タッチスクリーン112は、任意選択的に、100dpiを超えるビデオ解像度を有する。いくつかの実施形態では、タッチスクリーンは、約160dpiのビデオ解像度を有する。ユーザは、任意選択的に、スタイラス、指などの任意の適した物体又は付属物を使用して、タッチスクリーン112に接触する。いくつかの実施形態では、ユーザインタフェースは、指ベースの接触及びジェスチャを主に扱うように設計されるが、これは、タッチスクリーン上の指の接触面積がより大きいため、スタイラスベースの入力ほど精密でない可能性がある。いくつかの実施形態では、デバイスは、指に基づく粗い入力を、ユーザによって所望されているアクションを実行するための、正確なポインタ/カーソルの位置又はコマンドに変換する。
【0084】
いくつかの実施形態では、タッチスクリーンに加えて、デバイス100は、任意選択的に、特定の機能をアクティブ化又は非アクティブ化するためのタッチパッド(図示せず)を含む。いくつかの実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知エリアである。タッチパッドは、任意選択的に、タッチスクリーン112又はタッチスクリーンによって形成されるタッチ感知面の拡張部とは別個のタッチ感知面である。
【0085】
デバイス100は、また、様々なコンポーネントに電力を供給する電力システム162を含む。電力システム162は、任意選択的に、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにポータブルデバイス内での電力の生成、管理、及び分配に関連付けられた任意の他の構成要素を含む。
【0086】
また、デバイス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が、タッチスクリーンディスプレイとともに、テレビ会議にも静止画像及び/又はビデオ画像の取得にも使用される。
【0087】
また、デバイス100は、任意選択的に、1つ以上の接触強度センサ165を含む。
図1Aは、I/Oサブシステム106内の強度センサコントローラ159に結合された接触強度センサを示す。接触強度センサ165は、任意選択的に、1つ以上のピエゾ抵抗ひずみゲージ、容量性力センサ、電気力センサ、圧電力センサ、光学力センサ、容量性タッチ感知面、又は他の強度センサ(例えば、タッチ感知面上の接触の力(若しくは圧力)を測定するために使用されるセンサ)を含む。接触強度センサ165は、接触強度情報(例えば、圧力情報又は圧力情報に対するプロキシ)を環境から受信する。いくつかの実施形態では、少なくとも1つの接触強度センサは、タッチ感知面(例えばタッチ感知ディスプレイシステム112)と並置される、又はそれに近接している。いくつかの実施形態では、少なくとも1つの接触強度センサは、デバイス100の前面に位置するタッチスクリーンディスプレイ112とは反対に、デバイス100の裏面に位置する。
【0088】
また、デバイス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をオフにして無効化する。
【0089】
また、デバイス100は、任意選択的に、1つ以上の触知出力生成器167を含む。
図1Aは、I/Oサブシステム106内の触覚フィードバックコントローラ161に結合された触知出力生成器を示す。触知出力生成器167は、任意選択的に、スピーカ若しくは他のオーディオ構成要素などの1つ以上の電気音響デバイス、及び/又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力生成構成要素(例えば、デバイス上で電気信号を触知出力に変換する構成要素)などのエネルギーを直線の動きに変換する電気機械デバイスを含む。接触強度センサ165は、触覚フィードバックモジュール133から触知フィードバック生成命令を受信し、デバイス100のユーザが感知することが可能な触知出力をデバイス100上に生成する。いくつかの実施形態では、少なくとも1つの触知出力生成器は、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)に配置されているか、又はそれに近接しており、任意選択的に、タッチ感知面を垂直方向(例えば、デバイス100の表面の内/外)に、又は水平方向(例えば、デバイス100の表面と同じ平面内の前後)に動かすことによって、触知出力を生成する。いくつかの実施形態では、少なくとも1つの触知出力生成器センサは、デバイス100の前面に位置するタッチスクリーンディスプレイ112とは反対に、デバイス100の裏面に位置する。
【0090】
また、デバイス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又は他のグローバルナビゲーションシステム)受信機(図示せず)を含む。
【0091】
いくつかの実施形態では、メモリ102内に記憶されているソフトウェア構成要素は、オペレーティングシステム126、通信モジュール(又は命令セット)128、接触/動きモジュール(又は命令セット)130、グラフィックモジュール(又は命令セット)132、テキスト入力モジュール(又は命令セット)134、全地球測位システム(Global Positioning System、GPS)モジュール(又は命令セット)135、及びアプリケーション(又は命令セット)136を含む。更に、いくつかの実施形態では、メモリ102(
図1A)又は370(
図3)は、
図1A及び
図3に示すように、デバイス/グローバル内部状態157を記憶する。デバイス/グローバル内部状態157は、現在アクティブ状態のアプリケーションがある場合に、どのアプリケーションがアクティブであるかを示す、アクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチスクリーンディスプレイ112の様々な領域を占有しているかを示すディスプレイ状態、デバイスの様々なセンサ及び入力コントロールデバイス116から入手した情報を含むセンサ状態、並びにデバイスの場所及び/又は姿勢に関する場所情報のうちの1つ以上を含む。
【0092】
オペレーティングシステム126(例えば、Darwin(登録商標)、RTXC(登録商標)、LINUX(登録商標)、UNIX(登録商標)、OS X(登録商標)、iOS(登録商標)、WINDOWS(登録商標)、又はVxWorks(登録商標)などの組み込み型オペレーティングシステム)は、通常のシステムタスク(例えば、メモリ管理、記憶デバイスの制御、電力管理など)を制御及び管理する様々なソフトウェア構成要素及び/又はドライバを含み、様々なハードウェアとソフトウェア構成要素との間の通信を容易にする。
【0093】
通信モジュール128は、1つ以上の外部ポート124を介して他のデバイスとの通信を容易にし、RF回路108及び/又は外部ポート124が受信したデータを処理するための様々なソフトウェア構成要素をも含む。外部ポート124(例えばユニバーサルシリアルバス(Universal Serial Bus、USB)、FIREWIRE(登録商標)など)は、直接的に、又はネットワーク(例えばインターネット、無線LANなど)を介して間接的に、他のデバイスに連結するように適合されている。いくつかの実施形態では、外部ポートは、iPod(登録商標)(Apple Inc.の商標)デバイス上で使用される30ピンコネクタと同じ若しくは類似であり、かつ/又はそれに適合しているマルチピン(例えば、30ピン)コネクタである。
【0094】
接触/動きモジュール130は、任意選択的に、タッチスクリーン112(ディスプレイコントローラ156と連動して)及び他のタッチ感知デバイス(例えば、タッチパッド又は物理クリックホイール)との接触を検出する。接触/動きモジュール130は、接触が生じたかを判定すること(例えば、指を下ろすイベントを検出すること)、接触の強度(例えば、接触の力若しくは圧力、又は接触の力若しくは圧力の代替物)を判定すること、接触の移動が存在するかを判定し、タッチ感知面を横断する移動を追跡すること(例えば、指をドラッグする1つ以上のイベントを検出すること)、及び接触が停止したかを判定すること(例えば、指を上げるイベント又は接触の中断を検出すること)などの、接触の検出に関する様々な動作を実行する、様々なソフトウェア構成要素を含む。接触/動きモジュール130は、タッチ感知面から接触データを受信する。一連の接触データによって表される、接触点の移動を判定することは、任意選択的に、接触点の速さ(大きさ)、速度(大きさ及び方向)、及び/又は加速度(大きさ及び/又は方向の変化)を判定することを含む。これらの動作は、任意選択的に、単一の接触(例えば、1本の指の接触)又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用される。いくつかの実施形態では、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッド上の接触を検出する。
【0095】
いくつかの実施形態では、接触/動きモジュール130は、1つ以上の強度閾値のセットを使用して、ユーザによって操作が実行されたかどうかを判定する(例えば、ユーザがアイコン上で「クリック」したかどうかを判定する)。いくつかの実施形態では、強度閾値の少なくとも1つのサブセットが、ソフトウェアパラメータに従って判定される(例えば、強度閾値は、特定の物理アクチュエータのアクティブ化閾値によって判定されるのではなく、デバイス100の物理ハードウェアを変化させることなく調整することができる)。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイハードウェアを変化させることなく、広範囲の既定の閾値のうちのいずれかに設定することができる。加えて、いくつかの実装形態では、デバイスのユーザは、1組の強度閾値の1つ以上を調整するソフトウェア設定が提供される(例えば、システムレベルのクリック「強度」パラメータによって、個々の強度閾値を調整すること、及び/又は複数の強度閾値を一度に調整することによる)。
【0096】
接触/動きモジュール130は、任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターンを有する(例えば検出される接触の動き、タイミング、及び/又は強度が異なる)。したがって、ジェスチャは、任意選択的に、特定の接触パターンを検出することによって検出される。例えば、指タップジェスチャを検出することは、指ダウンイベントを検出し、それに続いて指ダウンイベントと同じ位置(又は実質的に同じ位置)(例えば、アイコンの位置)で指アップ(リフトオフ)イベントを検出することを含む。別の例として、タッチ感知面上で指スワイプジェスチャを検出することは、指ダウンイベントを検出し、それに続いて1つ以上の指ドラッグイベントを検出し、その後それに続いて指アップ(リフトオフ)イベントを検出することを含む。
【0097】
グラフィックモジュール132は、表示されるグラフィックの視覚的な影響(例えば、輝度、透明度、彩度、コントラスト、又は他の視覚的特性)を変化させる構成要素を含めて、タッチスクリーン112又は他のディスプレイ上にグラフィックをレンダリング及び表示する様々な知られているソフトウェア構成要素を含む。本明細書では、「グラフィック」という用語は、それだけに限定されるものではないが、文字、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクトなど)、デジタル画像、ビデオ、アニメーションなどを含む、ユーザに表示することができる任意のオブジェクトを含む。
【0098】
いくつかの実施形態では、グラフィックモジュール132は、使用されることになるグラフィックを表すデータを記憶する。各グラフィックには、任意選択的に、対応するコードが割り当てられる。グラフィックモジュール132は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィック特性データと共に、表示されることとなるグラフィックを指定する1つ以上のコードを受信し、次にディスプレイコントローラ156に出力するスクリーンの画像データを生成する。
【0099】
触覚フィードバックモジュール133は、デバイス100とのユーザ対話に応じて、デバイス100上の1つ以上の場所で触知出力を生成するために、触知出力生成器(単数又は複数)167によって使用される命令を生成するための、様々なソフトウェア構成要素を含む。
【0100】
テキスト入力モジュール134は、任意選択で、グラフィックモジュール132の構成要素であり、様々なアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147、及びテキスト入力を必要とする任意の他のアプリケーション)でテキストを入力するためのソフトキーボードを提供する。
【0101】
GPSモジュール135は、デバイスの位置を判定し、この情報を様々なアプリケーションで使用するために(例えば、位置に基づくダイヤル発呼で使用するために電話138へ、画像/ビデオのメタデータとしてカメラ143へ、並びに、天気ウィジェット、地域のイエローページウィジェット、及び地図/ナビゲーションウィジェットなどの、位置に基づくサービスを提供するアプリケーションへ)提供する。
【0102】
アプリケーション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。
【0103】
任意選択的にメモリ102に記憶される他のアプリケーション136の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。
【0104】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、連絡先モジュール137は、任意選択的に、アドレス帳に名前(単数又は複数)を追加することを含めて、(例えば、メモリ102又はメモリ370内の連絡先モジュール137のアプリケーション内部状態192に記憶された)アドレス帳又は連絡先リストを管理するために使用される。アドレス帳から名前(単数又は複数)を削除すること、電話番号(単数又は複数)、電子メールアドレス(単数又は複数)、住所(単数又は複数)、又は他の情報を名前に関連付けること、画像を名前に関連付けること、名前を分類して並べ替えること、電話番号又は電子メールアドレスを提供して、電話138、テレビ会議モジュール139、電子メール140、又はIM141による通信を開始及び/又は促進することなどを含めて、アドレス帳又は連絡先リストを管理するために使用される。
【0105】
RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、電話モジュール138は、任意選択的に、電話番号に対応する文字シーケンスの入力、連絡先モジュール137内の1つ以上の電話番号へのアクセス、入力された電話番号の修正、それぞれの電話番号のダイヤル、会話の実施、会話が終了したときの通話停止又はハングアップのために使用される。前述したように、無線通信は、任意選択的に、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
【0106】
RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、連絡先モジュール137、及び電話モジュール138と連動して、テレビ会議モジュール139は、ユーザ命令に従ってユーザと1人以上の他の参加者との間のテレビ会議を開始、実行、及び終了するための実行可能な命令を含む。
【0107】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、電子メールクライアントモジュール140は、ユーザ命令に応じて電子メールを作成、送信、受信、及び管理するための実行可能な命令を含む。画像管理モジュール144と連動して、電子メールクライアントモジュール140は、カメラモジュール143で撮影された静止画像又はビデオ画像を有する電子メールの作成及び送信を非常に容易にする。
【0108】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、インスタントメッセージングモジュール141は、インスタントメッセージに対応する文字シーケンスの入力、以前に入力された文字の修正、それぞれのインスタントメッセージの送信(例えば、電話通信ベースのインスタントメッセージ向けのショートメッセージサービス(Short Message Service、SMS)若しくはマルチメディアメッセージサービス(Multimedia Message Service、MMS)プロトコル、又はインターネットベースのインスタントメッセージ向けのXMPP、SIMPLE、若しくはIMPSを使用する)、インスタントメッセージの受信、及び受信したインスタントメッセージの閲覧のための実行可能な命令を含む。いくつかの実施形態では、送信及び/又は受信されるインスタントメッセージは、任意選択的に、MMS及び/又は拡張メッセージングサービス(Enhanced Messaging Service、EMS)でサポートされるグラフィック、写真、オーディオファイル、ビデオファイル、及び/又は他の添付ファイルを含む。本明細書では、「インスタントメッセージング」とは、電話通信ベースのメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)と、インターネットベースのメッセージ(例えば、XMPP、SIMPLE、又はIMPSを使用して送信されるメッセージ)との両方を指す。
【0109】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、地図モジュール154、及び音楽プレーヤモジュールと連動して、トレーニングサポートモジュール142は、トレーニング(例えば、時間、距離、及び/又はカロリー燃焼目標を有する)の作成、トレーニングセンサ(スポーツデバイス)との通信、トレーニングセンサデータの受信、トレーニングをモニタするために使用されるセンサの較正、トレーニングのための音楽の選択及び再生、並びに、トレーニングデータの表示、記憶、及び送信のための実行可能な命令を含む。
【0110】
タッチスクリーン112、ディスプレイコントローラ156、光センサ(単数又は複数)164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、及び画像管理モジュール144と連動して、カメラモジュール143は、静止画像若しくはビデオ(ビデオストリームを含む)のキャプチャ及びメモリ102内への記憶、静止画像若しくはビデオの特性の修正、又はメモリ102からの静止画像若しくはビデオの削除のための実行可能な命令を含む。
【0111】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びカメラモジュール143と連動して、画像管理モジュール144は、静止画像及び/又はビデオ画像の配置、修正(例えば、編集)、あるいはその他の操作、ラベル付け、削除、提示(例えば、デジタルスライドショー又はアルバムにおける)、及び記憶のための実行可能な命令を含む。
【0112】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、ブラウザモジュール147は、ウェブページ又はその一部分、並びにウェブページにリンクされた添付ファイル及び他のファイルの検索、リンク、受信、及び表示を含めて、ユーザ命令に従ってインターネットをブラウジングするための実行可能な命令を含む。
【0113】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連動して、カレンダーモジュール148は、ユーザ命令に従ってカレンダー及びカレンダーに関連付けられたデータ(例えば、カレンダー入力、やることリストなど)を作成、表示、修正、及び記憶するための実行可能な命令を含む。
【0114】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と連動して、ウィジェットモジュール149は、任意選択的にユーザによってダウンロード及び使用されるミニアプリケーション(例えば、気象ウィジェット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!ウィジェット)を含む。
【0115】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と連動して、ウィジェットクリエータモジュール150は、任意選択的に、ウィジェットを作成する(例えば、ウェブページのユーザ指定部分をウィジェットにする)ために、ユーザによって使用される。
【0116】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、検索モジュール151は、ユーザ命令に従って1つ以上の検索基準(例えば、1つ以上のユーザ指定検索語)に一致するメモリ102内の文字、音楽、サウンド、画像、ビデオ、及び/又は他のファイルを検索するための実行可能な命令を含む。
【0117】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、オーディオ回路110、スピーカ111、RF回路108、及びブラウザモジュール147と連動して、ビデオ及び音楽プレーヤモジュール152は、ユーザがMP3若しくはAACファイルなどの1つ以上のファイル形式で記憶されている記録された音楽及び他のサウンドファイルをダウンロード及び再生することを可能にする実行可能な命令、並びにビデオを表示、提示、又は他の方法で(例えば、タッチスクリーン112上又は外部ポート124を介して接続された外部ディスプレイ上に)再生するための実行可能な命令を含む。いくつかの実施形態では、デバイス100は、任意選択的に、iPod(Apple社の商標)などのMP3プレーヤの機能を含む。
【0118】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連動して、メモモジュール153は、ユーザ命令に従ってメモ、やることリストなどを作成及び管理するための実行可能な命令を含む。
【0119】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、及びブラウザモジュール147と連動して、地図モジュール154は、任意選択的に、ユーザ命令に従って、地図及び地図に関連付けられたデータ(例えば、運転方向、特定の場所又はその付近の店舗及び他の対象地点に関するデータ、並びに他の場所ベースのデータ)を受信、表示、修正、及び記憶するために使用される。
【0120】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、オーディオ回路110、スピーカ111、RF回路108、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連動して、オンラインビデオモジュール155は、ユーザが特定のオンラインビデオへのアクセス、特定のオンラインビデオのブラウジング、受信(例えば、ストリーミング及び/又はダウンロードによる)、再生(例えば、タッチスクリーン上又は外部ポート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」において見ることができる。
【0121】
上記で特定したモジュール及びアプリケーションはそれぞれ、前述した1つ以上の機能及び本出願に記載する方法(例えば、本明細書に記載するコンピュータにより実施される方法及び他の情報処理方法)を実行する1組の実行可能な命令に対応する。これらのモジュール(例えば、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実施する必要はなく、したがって、様々な実施形態において、これらのモジュールの様々なサブセットが、任意選択的に、組み合わされ、又は他の形で再構成される。例えば、ビデオプレーヤモジュールは、任意選択的に、音楽プレーヤモジュールと組み合わされて、単一のモジュール(例えば、
図1Aのビデオ及び音楽プレーヤモジュール152)にされる。いくつかの実施形態では、メモリ102は、任意選択的に、上記で特定したモジュール及びデータ構造のサブセットを記憶する。更に、メモリ102は、上記で説明されていない追加のモジュール及びデータ構造を任意選択的に記憶する。
【0122】
いくつかの実施形態では、デバイス100は、そのデバイスにおける既定の機能のセットの動作がタッチスクリーン及び/又はタッチパッドのみを通じて実行されるデバイスである。デバイス100が動作するための主要な入力コントロールデバイスとしてタッチスクリーン及び/又はタッチパッドを使用することにより、任意選択的に、デバイス100上の物理的な入力コントロールデバイス(プッシュボタン、ダイヤルなど)の数が削減される。
【0123】
タッチスクリーン及び/又はタッチパッドを通じてのみ実行される既定の機能のセットは、任意選択的に、ユーザインタフェース間のナビゲーションを含む。いくつかの実施形態では、タッチパッドは、ユーザによってタッチされたときに、デバイス100上に表示される任意のユーザインタフェースから、メインメニュー、ホームメニュー、又はルートメニューにデバイス100をナビゲートする。このような実施形態では、「メニューボタン」は、タッチパッドを使用して実装される。いくつかの他の実施形態では、メニューボタンは、タッチパッドではなく、物理プッシュボタン又はその他の物理入力コントロールデバイスである。
【0124】
図1Bは、いくつかの実施形態によるイベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ102(
図1A)又は370(
図3)は、イベントソート部170(例えば、オペレーティングシステム126内)と、それぞれのアプリケーション136-1(例えば、前述のアプリケーション137~151、155、380~390のうちのいずれか)とを含む。
【0125】
イベントソート部170は、イベント情報を受信し、イベント情報が配信されるアプリケーション136-1及びアプリケーション136-1のアプリケーションビュー191を判定する。イベントソート部170は、イベントモニタ171及びイベントディスパッチャモジュール174を含む。いくつかの実施形態では、アプリケーション136-1は、アプリケーションがアクティブ又は実行中であるときにタッチ感知ディスプレイ112上に表示される現在のアプリケーションビュー(単数又は複数)を示すアプリケーション内部状態192を含む。いくつかの実施形態では、デバイス/グローバル内部状態157は、どのアプリケーション(単数又は複数)が現在アクティブであるかを判定するためにイベントソート部170によって使用され、アプリケーション内部状態192は、イベント情報が配信されるアプリケーションビュー191を決定するためにイベントソート部170によって使用される。
【0126】
いくつかの実施形態では、アプリケーション内部状態192は、アプリケーション136-1が実行を再開するときに使用される再開情報、アプリケーション136-1によって表示されている又は表示される準備ができている情報を示すユーザインタフェース状態情報、ユーザがアプリケーション136-1の以前の状態又はビューに戻ることを可能にする状態待ち行列、及びユーザが行った以前のアクションのリドゥ/アンドゥ待ち行列のうちの1つ以上などの追加の情報を含む。
【0127】
イベントモニタ171は、周辺機器インタフェース118からイベント情報を受信する。イベント情報は、サブイベント(例えば、マルチタッチジェスチャの一部としてのタッチ感知ディスプレイ112上のユーザタッチ)に関する情報を含む。周辺機器インタフェース118は、I/Oサブシステム106、又は近接センサ166、加速度計(単数又は複数)168、及び/若しくは(オーディオ回路110を介した)マイクロフォン113などのセンサから受信する情報を送信する。周辺機器インタフェース118がI/Oサブシステム106から受信する情報は、タッチ感知ディスプレイ112又はタッチ感知面からの情報を含む。
【0128】
いくつかの実施形態では、イベントモニタ171は、所定の間隔で周辺機器インタフェース118に要求を送信する。それに応じて、周辺機器インタフェース118は、イベント情報を送信する。他の実施形態では、周辺機器インタフェース118は、重要なイベント(例えば、所定のノイズ閾値を上回る及び/又は所定の持続時間を超える入力の受信)があるときのみイベント情報を送信する。
【0129】
いくつかの実施形態では、イベントソート部170はまた、ヒットビュー判定モジュール172及び/又はアクティブイベント認識部判定モジュール173を含む。
【0130】
ヒットビュー判定モジュール172は、タッチ感知ディスプレイ112が2つ以上のビューを表示するとき、サブイベントが1つ以上のビュー内のどこで行われたかを判定するソフトウェア手順を提供する。ビューは、ユーザがディスプレイ上で見ることができる制御装置及び他の要素から構成されている。
【0131】
アプリケーションに関連付けられたユーザインタフェースの別の態様は、本明細書ではアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれることもあるビューのセットであり、その中で情報が表示され、タッチに基づくジェスチャが生じる。タッチが検出される(それぞれのアプリケーションの)アプリケーションビューは、任意選択的に、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応する。例えば、タッチが検出される最下位レベルビューは、任意選択的に、ヒットビューと呼ばれ、また、適切な入力として認識されるイベントのセットは、任意選択的に、タッチによるジェスチャを開始する初期タッチのヒットビューに少なくとも部分的に基づいて決定される。
【0132】
ヒットビュー判定モジュール172は、タッチに基づくジェスチャのサブイベントに関連する情報を受信する。アプリケーションが階層状に構成された複数のビューを有するときには、ヒットビュー判定モジュール172は、サブイベントを処理すべき階層内の最下位のビューとして、ヒットビューを特定する。ほとんどの状況では、ヒットビューは、開始サブイベント(例えば、イベント又は潜在的イベントを形成するサブイベントシーケンス内の第1のサブイベント)が行われる最も低いレベルのビューである。ヒットビューがヒットビュー判定モジュール172によって特定された後、このヒットビューは、典型的には、ヒットビューとして特定されたのと同じタッチ又は入力ソースに関係する全てのサブイベントを受信する。
【0133】
アクティブイベント認識部判定モジュール173は、ビュー階層内のどのビュー(単数又は複数)がサブイベントの特定のシーケンスを受信すべきかを判定する。いくつかの実施形態では、アクティブイベント認識部判定モジュール173は、ヒットビューのみがサブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール173は、サブイベントの物理位置を含む全てのビューがアクティブに関わりがあるビューであると判定し、したがって、全てのアクティブに関わりがあるビューが、サブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、タッチサブイベントが1つの特定のビューに関連するエリアに完全に限定された場合でも、階層内の上位のビューは、依然としてアクティブに関わりがあるビューであり続ける。
【0134】
イベントディスパッチャモジュール174は、イベント情報をイベント認識部(例えばイベント認識部180)にディスパッチする。アクティブイベント認識部判定モジュール173を含む実施形態において、イベントディスパッチャモジュール174は、アクティブイベント認識部判定モジュール173により判定されたイベント認識部にイベント情報を配信する。いくつかの実施形態では、イベントディスパッチャモジュール174は、それぞれのイベント受信部182によって取得されたイベント情報をイベント待ち行列に記憶する。
【0135】
いくつかの実施形態では、オペレーティングシステム126は、イベントソート部170を含む。代替として、アプリケーション136-1がイベントソート部170を含む。更に他の実施形態では、イベントソート部170は、独立型のモジュール、又は接触/動きモジュール130などの、メモリ102に記憶された別のモジュールの一部である。
【0136】
いくつかの実施形態では、アプリケーション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に含まれる。
【0137】
それぞれのイベント認識部180は、イベントソート部170からイベント情報(例えば、イベントデータ179)を受信し、このイベント情報からイベントを特定する。イベント認識部180は、イベント受信部182及びイベント比較部184を含む。いくつかの実施形態では、イベント認識部180はまた、メタデータ183及びイベント配信命令188(任意選択的にサブイベント配信命令を含む)の少なくともサブセットも含む。
【0138】
イベント受信部182は、イベントソート部170からイベント情報を受信する。イベント情報は、サブイベントについての情報、例えば、タッチ又はタッチの移動についての情報を含む。サブイベントに応じて、イベント情報はまた、サブイベントの位置などの追加の情報を含む。サブイベントがタッチの動きに関わるとき、イベント情報はまた任意選択的に、サブイベントの速さ及び方向を含む。いくつかの実施形態では、イベントは、1つの向きから別の向きへの(例えば、縦向きから横向きへ、又はその逆の)デバイスの回転を含み、イベント情報は、デバイスの現在の向き(デバイスの姿勢とも呼ぶ)についての対応する情報を含む。
【0139】
イベント比較部184は、イベント情報を、定義済みのイベント又はサブイベントの定義と比較し、その比較に基づいて、イベント又はサブイベントを判定するか、あるいはイベント又はサブイベントの状態を判定若しくは更新する。いくつかの実施形態では、イベント比較部184は、イベント定義186を含む。イベント定義186は、例えばイベント1(187-1)及びイベント2(187-2)などのイベント(例えば既定のサブイベントのシーケンス)の定義を含む。いくつかの実施形態では、イベント(187)内のサブイベントは、例えば、タッチの開始、タッチの終了、タッチの動き、タッチの取り消し、及び複数のタッチを含む。一例では、イベント1(187-1)についての定義は、表示されたオブジェクト上のダブルタップである。ダブルタップは、例えば、所定の段階に対する表示オブジェクト上の第1のタッチ(タッチ開始)、所定の段階に対する第1のリフトオフ(タッチ終了)、所定の段階に対する表示オブジェクト上の第2のタッチ(タッチ開始)、及び所定の段階に対する第2のリフトオフ(タッチ終了)を含む。別の例では、イベント2(187-2)の定義は、表示されたオブジェクト上のドラッグである。ドラッグは、例えば、所定の段階に対する表示オブジェクトのタッチ(又は接触)、タッチ感知ディスプレイ112におけるタッチの動き、及びタッチのリフトオフ(タッチ終了)を含む。いくつかの実施形態では、イベントはまた、1つ以上の関連付けられたイベント処理部190に関する情報を含む。
【0140】
いくつかの実施形態では、イベント定義187は、それぞれのユーザインタフェースオブジェクトについてのイベントの定義を含む。いくつかの実施形態では、イベント比較部184は、どのユーザインタフェースオブジェクトがサブイベントに関連付けられているかを判定するヒットテストを実行する。例えば、タッチ感知ディスプレイ112上に、3つのユーザインタフェースオブジェクトが表示されているアプリケーションビューでは、タッチ感知ディスプレイ112上でタッチが検出されると、イベント比較部184は、3つのユーザインタフェースオブジェクトのうちのいずれが、そのタッチ(サブイベント)と関連付けられているかを判定するために、ヒットテストを実行する。表示された各オブジェクトが、対応するイベント処理部190に関連付けられている場合、イベント比較部は、ヒットテストの結果を用いて、どのイベント処理部190をアクティブ化すべきかを判定する。例えば、イベント比較部184は、ヒットテストをトリガするサブイベント及びオブジェクトと関連付けられたイベント処理部を選択する。
【0141】
いくつかの実施形態では、それぞれのイベント(187)に対する定義はまた、サブイベントシーケンスがイベント認識部のイベントタイプに対応するか否かが判定される後までイベント情報の送信を遅延する遅延アクションを含む。
【0142】
それぞれのイベント認識部180が一連のサブイベントがイベント定義186のイベントのいずれとも一致しないと判断した場合には、それぞれのイベント認識部180は、イベント不可能状態、イベント失敗状態、又はイベント終了状態になり、その後は、タッチによるジェスチャの後続のサブイベントを無視する。この状況では、ヒットビューについてアクティブのままである他のイベント認識部があれば、そのイベント認識部は、進行中のタッチによるジェスチャのサブイベントの追跡及び処理を続行する。
【0143】
いくつかの実施形態では、対応するイベント認識部180は、イベント配信システムがどのようにサブイベント配信を実行すべきかをアクティブに関与しているイベント認識部に示す構成可能なプロパティ、フラグ、及び/又はリストを有するメタデータ183を含む。いくつかの実施形態では、メタデータ183は、イベント認識部が互いにどのように対話するか、又はイベント認識部が互いにどのように対話することができるようになっているかを示す構成可能なプロパティ、フラグ、及び/又はリストを含む。いくつかの実施形態では、メタデータ183は、サブイベントがビュー階層又はプログラム階層における多様なレベルに配信されるかを示す構成可能なプロパティ、フラグ、及び/又はリストを含む。
【0144】
いくつかの実施形態では、それぞれのイベント認識部180は、イベントの1つ以上の特定のサブイベントが認識されるときに、イベントと関連付けられたイベント処理部190をアクティブ化する。いくつかの実施形態では、それぞれのイベント認識部180は、イベントと関連付けられたイベント情報をイベント処理部190に配信する。イベント処理部190をアクティブ化することは、それぞれのヒットビューにサブイベントを送信する(及び、送信を延期する)こととは別個である。いくつかの実施形態では、イベント認識部180は、認識したイベントと関連付けられたフラグを投入し、そのフラグと関連付けられたイベント処理部190は、そのフラグを捕らえ、既定の処理を実行する。
【0145】
いくつかの実施形態では、イベント配信命令188は、イベント処理部をアクティブ化することなくサブイベントについてのイベント情報を配信するサブイベント配信命令を含む。代わりに、サブイベント配信命令は、一連のサブイベントと関連付けられたイベント処理部に、又はアクティブに関与しているビューにイベント情報を配信する。一連のサブイベント又はアクティブに関与しているビューと関連付けられたイベント処理部は、イベント情報を受信し、所定の処理を実行する。
【0146】
いくつかの実施形態では、データ更新部176は、アプリケーション136-1で使用されるデータを作成及び更新する。例えば、データ更新部176は、連絡先モジュール137で使用される電話番号を更新する、又はビデオプレーヤモジュールで使用されるビデオファイルを記憶する。いくつかの実施形態では、オブジェクト更新部177は、アプリケーション136-1で使用されるオブジェクトを作成及び更新する。例えば、オブジェクト更新部177は、新たなユーザインタフェースオブジェクトを作成するか、又はユーザインタフェースオブジェクトの位置を更新する。GUI更新部178は、GUIを更新する。例えば、GUI更新部178は、表示情報を準備し、タッチ感知ディスプレイ上に表示するために表示情報をグラフィックモジュール132に送る。
【0147】
いくつかの実施形態では、イベント処理部(単数又は複数)190は、データ更新部176、オブジェクト更新部177、及びGUI更新部178を含むか又はそれらへのアクセスを有する。いくつかの実施形態では、データ更新部176、オブジェクト更新部177、及びGUI更新部178は、それぞれのアプリケーション136-1又はアプリケーションビュー191の単一モジュールに含まれる。他の実施形態では、それらは、2つ以上のソフトウェアモジュールに含まれる。
【0148】
タッチ感知ディスプレイ上のユーザタッチのイベント処理に関する上記の論考は、入力デバイスを有する多機能デバイス100を動作させるためのユーザ入力の他の形態にも当てはまり、それらのユーザ入力は、必ずしも全てがタッチスクリーン上で開始されるとは限らないことが理解されよう。例えば、キーボードの単一又は複数の押圧若しくは保持と任意選択的に連携される、マウスの移動及びマウスボタンの押圧、タッチパッド上のタップ、ドラッグ、スクロールなどの接触の動き、ペンスタイラス入力、デバイスの移動、口頭による命令、検出された目の動き、バイオメトリック入力、並びに/又はそれらの任意の組合せを、任意選択的に、認識するイベントを定義するサブイベントに対応する入力として利用する。
【0149】
図2は、いくつかの実施形態によるタッチスクリーン112を有するポータブル多機能デバイス100を示す。タッチスクリーンは、任意選択的に、ユーザインタフェース(user interface、UI)200内に1つ以上のグラフィックを表示する。本実施形態、並びに以下で説明される他の実施形態では、ユーザは、例えば、1本以上の指202(図には正確な縮尺では描かれていない)又は1つ以上のスタイラス203(図には正確な縮尺では描かれていない)を使用して、グラフィック上でジェスチャを実施することによって、それらのグラフィックのうちの1つ以上を選択することが可能となる。いくつかの実施形態では、1つ以上のグラフィックの選択は、ユーザが、その1つ以上のグラフィックとの接触を中断する場合に実施される。いくつかの実施形態では、ジェスチャは、任意選択的に、1つ以上のタップ、1つ以上のスワイプ(左から右、右から左、上向き、及び/若しくは下向き)、並びに/又はデバイス100と接触した指のロール(右から左、左から右、上向き、及び/若しくは下向き)を含む。いくつかの実装形態又は状況では、グラフィックとの不測の接触は、そのグラフィックを選択するものではない。例えば、選択に対応するジェスチャがタップである場合、アプリケーションアイコンの上をスイープするスワイプジェスチャは、任意選択的に、対応するアプリケーションを選択するものではない。
【0150】
デバイス100はまた、任意選択的に、「ホーム」ボタン又はメニューボタン204などの1つ以上の物理ボタンを含む。前述したように、メニューボタン204は、任意選択的に、任意選択的にデバイス100上で実行される1組のアプリケーション内の任意のアプリケーション136へナビゲートするために使用される。別法として、いくつかの実施形態では、メニューボタンは、タッチスクリーン112上に表示されるGUI内のソフトキーとして実施される。
【0151】
いくつかの実施形態では、デバイス100は、タッチスクリーン112、メニューボタン204、デバイスの電源をオン/オフにしてデバイスをロックするプッシュボタン206、音量調整ボタン(単数又は複数)208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212、及びドッキング/充電用外部ポート124を含む。プッシュボタン206は、任意選択的に、ボタンを押し下げて、既定の時間間隔にわたってボタンを押し下げた状態に保持することによって、デバイスの電源をオン/オフするため、ボタンを押し下げて、既定の時間感覚が経過する前にボタンを解放することによって、デバイスをロックするため、及び/又はデバイスをロック解除する、若しくはロック解除プロセスを開始するために、使用される。代替的実施形態では、デバイス100はまた、マイクロフォン113を介して、一部の機能をアクティブ化又は非アクティブ化するための口頭入力も受け入れる。デバイス100はまた、任意選択的に、タッチスクリーン112上の接触の強度を検出する1つ以上の接触強度センサ165、及び/又はデバイス100のユーザに対する触知出力を生成する1つ以上の触知出力生成器167を含む。
【0152】
図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上に触知出力を生成する触知出力生成器357(例えば、
図1Aを参照して前述した触知出力生成器167に類似している)と、センサ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は、任意選択的に、これらのモジュールを記憶しない。
【0153】
図3の上記で特定した要素はそれぞれ、任意選択的に、前述したメモリデバイスのうちの1つ以上の中に記憶される。上記で特定したモジュールはそれぞれ、前述した機能を実行する1組の命令に対応する。上記で特定したモジュール又はプログラム(例えば、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実施する必要はなく、したがって様々な実施形態では、これらのモジュールの様々なサブセットは、任意選択的に、組み合わされ、又は他の形で再構成される。いくつかの実施形態では、メモリ370は、任意選択的に、上記で特定したモジュール及びデータ構造のサブセットを記憶する。更に、メモリ370は、上述していない追加のモジュール及びデータ構造を任意選択的に記憶する。
【0154】
次に、任意選択的に例えばポータブル多機能デバイス100上で実施されるユーザインタフェースの実施形態に注意を向ける。
【0155】
図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。
【0156】
図4Aに示すアイコンラベルは、単なる例示であることに留意されたい。例えば、ビデオ及び音楽プレーヤモジュール152のためのアイコン422は、「音楽」又は「音楽プレーヤ」と表示される、他のラベルが、様々なアプリケーションアイコンのために、任意選択的に使用される。いくつかの実施形態では、それぞれのアプリケーションアイコンに関するラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。いくつかの実施形態では、特定のアプリケーションアイコンのラベルは、その特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
【0157】
図4Bは、ディスプレイ450(例えば、タッチスクリーンディスプレイ112)とは別個のタッチ感知面451(例えば、
図3のタブレット又はタッチパッド355)を有するデバイス(例えば、
図3のデバイス300)上の例示的なユーザインタフェースを示す。デバイス300はまた、任意選択的に、タッチ感知面451上の接触の強度を検出する1つ以上の接触強度センサ(例えば、センサ359のうちの1つ以上)、及び/又はデバイス300のユーザに対する触知出力を生成する1つ以上の触知出力生成器357を含む。
【0158】
以下の例のうちのいくつかは、タッチスクリーンディスプレイ112(タッチ感知面及びディスプレイが組み合わされている)上の入力を参照して与えられるが、いくつかの実施形態では、デバイスは、
図4Bに示すディスプレイとは別個のタッチ感知面上の入力を検出する。いくつかの実施形態では、タッチ感知面(例えば、
図4Bの451)は、ディスプレイ(例えば、450)上の1次軸(例えば、
図4Bの453)に対応する1次軸(例えば、
図4Bの452)を有する。これらの実施形態によれば、デバイスは、ディスプレイ上のそれぞれの場所に対応する場所(例えば、
図4Bでは、460は468に対応し、462は470に対応する)で、タッチ感知面451との接触(例えば、
図4Bの460及び462)を検出する。このようにして、タッチ感知面(例えば、
図4Bの451)上でデバイスによって検出されるユーザ入力(例えば、接触460及び462、並びにこれらの動き)は、タッチ感知面がディスプレイとは別個であるとき、多機能デバイスのディスプレイ(例えば、
図4Bの450)上のユーザインタフェースを操作するために、デバイスによって使用される。同様の方法が、本明細書に記載の他のユーザインタフェースに任意選択的に使用されることを理解されたい。
【0159】
加えて、以下の例は、主に指入力(例えば、指接触、指タップジェスチャ、指スワイプジェスチャ)を参照して与えられるが、いくつかの実施形態では、指入力のうちの1つ以上は、別の入力デバイスからの入力(例えば、マウスベースの入力又はスタイラス入力)に置き換えられることを理解されたい。例えば、スワイプジェスチャは、(例えば、接触の代わりの)マウスクリックに続けた、(例えば、接触の移動の代わりの)スワイプの経路に沿ったカーソルの移動によって、任意選択的に置き換えられる。別の例として、タップジェスチャは、任意選択的に、カーソルがタップジェスチャの位置の上に位置する間はマウスクリックと置き換えられる(例えば、接触を検出して、それに続いて接触の検出を停止する代わりに)。同様に、複数のユーザ入力が同時に検出されるとき、複数のコンピュータマウスが、任意選択的に、同時に使用され、又はマウス及び指の接触が、任意選択的に、同時に使用されることを理解されたい。
【0160】
図5Aは、例示的なパーソナル電子デバイス500を示す。デバイス500は、本体502を含む。いくつかの実施形態では、デバイス500は、デバイス100及び300(例えば、
図1A~4B)に関して説明する特徴のうちのいくつか又は全てを含むことができる。いくつかの実施形態では、デバイス500は、タッチ感知ディスプレイスクリーン504、以下タッチスクリーン504を有する。タッチスクリーン504に対する別法又は追加として、デバイス500は、ディスプレイ及びタッチ感知面を有する。デバイス100及び300と同様に、いくつかの実施形態では、タッチスクリーン504(又はタッチ感知面)は、任意選択的に、加えられている接触(例えば、タッチ)の強度を検出する1つ以上の強度センサを含む。タッチスクリーン504(又はタッチ感知面)の1つ以上の強度センサは、タッチの強度を表す出力データを提供することができる。デバイス500のユーザインタフェースは、タッチの強度に基づいてタッチに応答することができ、これは、異なる強度のタッチが、デバイス500上で異なるユーザインタフェース動作を呼び出すことができることを意味する。
【0161】
タッチ強度を検出及び処理する例示的な技法は、例えば、それぞれ全体として参照により本明細書に組み込まれている、国際特許第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」という関連出願に見られる。
【0162】
いくつかの実施形態では、デバイス500は、1つ以上の入力機構506及び508を有する。入力機構506及び508は、含まれる場合、物理的機構とすることができる。物理的入力機構の例としては、プッシュボタン及び回転可能機構が挙げられる。いくつかの実施形態では、デバイス500は、1つ以上のアタッチメント機構を有する。そのようなアタッチメント機構は、含まれる場合、例えば帽子、アイウェア、イアリング、ネックレス、シャツ、ジャケット、ブレスレット、腕時計のバンド、チェーン、ズボン、ベルト、靴、財布、バックパックなどにデバイス500を取り付けることを可能にすることができる。これらのアタッチメント機構は、ユーザがデバイス500を着用することを可能にする。
【0163】
図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は、任意選択的にボタンである。
【0164】
いくつかの例では、入力機構508は、任意選択的にマイクロフォンである。パーソナル電子デバイス500は、任意選択的に、GPSセンサ532、加速度計534、方向センサ540(例えば、コンパス)、ジャイロスコープ536、動きセンサ538、及び/又はこれらの組合せなどの様々なセンサを含み、これらのセンサは全て、I/Oセクション514に動作可能に接続することができる。
【0165】
パーソナル電子デバイス500のメモリ518は、コンピュータ実行可能命令を記憶するための1つ以上の非一時的コンピュータ可読記憶媒体を含むことができ、それらの命令は、1つ以上のコンピュータプロセッサ516によって実行されると、例えば、コンピュータプロセッサに、処理700、900、1100、1300、及び処理1500(
図7、
図9、
図11、
図13、及び
図15)を含む後述の技術を行わせることができる。コンピュータ可読記憶媒体は、命令実行システム、装置、又はデバイスによって使用するための、又は命令実行システム、装置、又はデバイスに接続されているコンピュータ実行可能命令を、有形に含み又は記憶することができる任意の媒体とすることができる。いくつかの例では、記憶媒体は、一時的コンピュータ可読記憶媒体である。いくつかの例では、記憶媒体は、非一時的コンピュータ可読記憶媒体である。非一時的コンピュータ可読記憶媒体は、それだけに限定されるものではないが、磁気、光学、及び/又は半導体記憶装置を含むことができる。そのような記憶装置の例としては、磁気ディスク、CD、DVD、又はBlu-ray技術に基づく光学ディスク、並びにフラッシュ、ソリッドステートドライブなどの常駐ソリッドステートメモリなどが挙げられる。パーソナル電子デバイス500は、
図5Bの構成要素及び構成に限定されるものではなく、他の又は追加の構成要素を複数の構成で含むことができる。
【0166】
本明細書では、「アフォーダンス」という用語は、任意選択的にデバイス100、300、及び/又は500(
図1A、
図3、及び
図5A~
図5B)のディスプレイスクリーン上に表示されるユーザ対話グラフィカルユーザインタフェースオブジェクトを指す。例えば、画像(例えば、アイコン)、ボタン、及び文字(例えば、ハイパーリンク)はそれぞれ、意選択的に、アフォーダンスを構成する。
【0167】
本明細書で使用される「フォーカスセレクタ」という用語は、ユーザが対話しているユーザインタフェースの現在の部分を示す入力要素を指す。カーソル又は他の場所マーカを含むいくつかの実装形態では、カーソルが「フォーカスセレクタ」として作用し、したがってカーソルが特定のユーザインタフェース要素(例えば、ボタン、ウインドウ、スライダ、又は他のユーザインタフェース要素)の上に位置する間に、タッチ感知面(例えば、
図3のタッチパッド355又は
図4Bのタッチ感知面451)上で入力(例えば、押下入力)が検出されたとき、特定のユーザインタフェース要素が、検出された入力に従って調整される。タッチスクリーンディスプレイ上のユーザインタフェース要素との直接対話を有効化するタッチスクリーンディスプレイ(例えば、
図1Aのタッチ感知ディスプレイシステム112又は
図4Aのタッチスクリーン112)を含むいくつかの実装形態では、タッチスクリーン上の検出された接触が「フォーカスセレクタ」として作用し、したがってタッチスクリーンディスプレイ上の特定のユーザインタフェース要素(例えば、ボタン、ウインドウ、スライダ、又は他のユーザインタフェース要素)の場所で入力(例えば、接触による押下入力)が検出されたとき、特定のユーザインタフェース要素が、検出された入力に従って調整される。いくつかの実装形態では、タッチスクリーンディスプレイ上の対応するカーソルの動き又は接触の動き(例えば、フォーカスを1つのボタンから別のボタンへ動かすためにタブキー又は矢印キーを使用することによる)なく、フォーカスがユーザインタフェースの1つの領域からユーザインタフェースの別の領域へ動かされ、これらの実装形態では、フォーカスセレクタは、ユーザインタフェースの種々の領域間でのフォーカスの移動に従って移動する。フォーカスセレクタがとる特有の形態に関わらず、フォーカスセレクタは、概して、ユーザインタフェース要素(又はタッチスクリーンディスプレイ上の接触)であり、ユーザの意図する対話をユーザインタフェースによって通信するように、ユーザによって制御される(例えば、ユーザが対話することを意図しているユーザインタフェースの要素をデバイスに示すことによる)。例えば、タッチ感知面(例えば、タッチパッド又はタッチスクリーン)上で押圧入力が検出されている間の、対応のボタンの上のフォーカスセレクタ(例えば、カーソル、接触、又は選択ボックス)の位置は、その対応のボタンを(そのデバイスのディスプレイ上に示される他のユーザインタフェース要素ではなく)アクティブ化することをユーザが意図していることを示すものである。
【0168】
本明細書及び特許請求の範囲で使用される、接触の「特性強度」という用語は、接触の1つ以上の強度に基づく、その接触の特性を指す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、既定の数の強度サンプル、すなわち、既定のイベント(例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終了を検出する前、接触の強度の増大を検出する前若しくは後、及び/又は、接触の強度の減少を検出する前若しくは後の)に関連する所定の時間期間(例えば、0.05、0.1、0.2、0.5、1、2、5、10秒)の間に収集された強度サンプルのセットに基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均(mean)値、接触の強度の平均(average)値、接触の強度の上位10パーセンタイル値、接触の強度の最大の2分の1の値、接触の強度の最大の90パーセントの値などのうちの1つ以上に基づいている。いくつかの実施形態では、特性強度を特定する際に(例えば、特性強度が時間にわたる接触の強度の平均であるときに)、接触の持続期間が使用される。いくつかの実施形態では、特性強度は、ユーザによって操作が実行されたかどうかを判定するために、1つ以上の強度閾値のセットと比較される。例えば、1組の1つ以上の強度閾値は、任意選択的に、第1の強度閾値及び第2の強度閾値を含む。この例では、第1の閾値を超過しない特性強度を有する接触は、第1の動作をもたらし、第1の強度閾値を超過するが第2の強度閾値を超過しない特性強度を有する接触は、第2の動作をもたらし、第2の閾値を超過する特性強度を有する接触は、第3の動作をもたらす。いくつかの実施形態では、特性強度と1つ以上の閾値との間の比較は、第1の動作を実行するべきか、それとも第2の動作を実行するべきかを判定するために使用されるのではなく、1つ以上の動作を実行するべきか否か(例えば、それぞれの動作を実行するべきか、それともそれぞれの動作を実行するのを見合わすべきか)を判定するために使用される。
【0169】
図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に含まれていることに留意されたい。
【0170】
いくつかの実施形態では、特性強度を特定する目的のために、ジェスチャの一部分が識別される。例えば、タッチ感知面は、任意選択的に、開始場所から遷移して終了場所に到達する連続するスワイプ接触を受信し、その時点で接触の強度が増大する。この例では、終了場所での接触の特性強度は、任意選択的に、スワイプ接触全体ではなく、連続するスワイプ接触の一部分のみ(例えば、スワイプ接触のうち終了場所の部分のみ)に基づいている。いくつかの実施形態では、任意選択的に、接触の特性強度を判定する前に、平滑化アルゴリズムがスワイプ接触の強度に適用される。例えば、平滑化アルゴリズムは、任意選択的に、非加重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び/又は指数平滑化アルゴリズムのうちの1つ以上を含む。いくつかの状況では、これらの平滑化アルゴリズムは、特性強度を特定する目的のために、スワイプ接触の強度の小幅な上昇又は降下を排除する。
【0171】
タッチ感知面上の接触の強度は、任意選択的に、接触検出強度閾値、軽い押下の強度閾値、深い押下の強度閾値、及び/又は1つ以上の他の強度閾値などの1つ以上の強度閾値に対して特徴付けられる。いくつかの実施形態では、軽い押圧強度閾値は、通常、物理マウスのボタン又はトラックパッドをクリックすることに関連付けられた動作をデバイスが実行する強度に相当する。いくつかの実施形態では、深い押圧強度閾値は、通常、物理マウスのボタン又はトラックパッドをクリックすることに関連付けられた動作とは異なる動作をデバイスが実行する強度に相当する。いくつかの実施形態では、軽い押下の強度閾値を下回る(例えば、それを下回ると接触が検出されなくなる公称接触検出強度閾値を上回る)特性強度を有する接触が検出されたとき、デバイスは、軽い押下の強度閾値又は深い押下の強度閾値に関連付けられた動作を実行することなく、タッチ感知面上の接触の動きに従ってフォーカスセレクタを動かす。一般に、特に明記しない限り、これらの強度閾値は、ユーザインタフェース図の様々なセットの間で一貫している。
【0172】
軽い押下の強度閾値を下回る強度から、軽い押下の強度閾値と深い押下の強度閾値との間の強度への、接触の特性強度の増大は、「軽い押下」の入力と呼ばれることがある。深い押下の強度閾値を下回る強度から、深い押下の強度閾値を上回る強度への、接触の特性強度の増大は、「深い押下」の入力と呼ばれることがある。接触検出強度閾値を下回る強度から、接触検出強度閾値と軽い押下の強度閾値との間の強度への、接触の特性強度の増大は、タッチ面上の接触の検出と呼ばれることがある。接触検出強度閾値を上回る強度から、接触検出強度閾値を下回る強度への、接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と呼ばれることがある。いくつかの実施形態では、接触検出強度閾値はゼロである。いくつかの実施形態では、接触検出強度閾値は、ゼロより大きい。
【0173】
本明細書に記載するいくつかの実施形態では、それぞれの押下入力を含むジェスチャを検出したことに応じて、又はそれぞれの接触(若しくは複数の接触)によって実行されたそれぞれの押下入力を検出したことに応じて、1つ以上の動作が実行され、それぞれの押下入力は、押下入力強度閾値を上回る接触(又は複数の接触)の強度の増大を検出したことに少なくとも部分的に基づいて検出される。いくつかの実施形態では、それぞれの動作は、押下入力強度閾値を上回るそれぞれの接触の強度の増大(例えば、それぞれの押下入力の「ダウンストローク」)を検出したことに応じて実行される。いくつかの実施形態では、押下入力は、押下入力強度閾値を上回るそれぞれの接触の強度の増大、及びそれに続く押下入力強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、それに続く押下入力閾値を下回るそれぞれの接触の強度の減少(例えば、それぞれの押下入力の「アップストローク」)を検出したことに応じて実行される。
【0174】
図5E~
図5Hは、
図5Eの軽い押下の強度閾値(例えば、「IT
L」)を下回る強度から、
図5Hの深い押下の強度閾値(例えば、「IT
D」)を上回る強度への、接触562の強度の増大に対応する押下入力を含むジェスチャの検出を示す。接触562によって実行されるジェスチャは、タッチ感知面560上で検出され、既定の領域574内に表示されたアプリケーションアイコン572A~572Dを含む表示ユーザインタフェース570上では、アプリ2に対応するアプリケーションアイコン572Bの上にカーソル576が表示される。いくつかの実施形態では、ジェスチャは、タッチ感知ディスプレイ504上に検出される。強度センサは、タッチ感知面560上の接触の強度を検出する。デバイスは、接触562の強度が深い押下の強度閾値(例えば、「IT
D」)を上回ってピークに達したと判定する。接触562は、タッチ感知面560上で維持される。ジェスチャの検出に応じて、ジェスチャ中に深い押下の強度閾値(例えば、「IT
D」)を上回る強度を有する接触562に従って、
図5F~
図5Hに示すように、アプリ2に対して最近開いた文書の縮尺が低減された表現578A~578C(例えば、サムネイル)が表示される。いくつかの実施形態では、1つ以上の強度閾値と比較されるこの強度は、接触の特性強度である。接触562に対する強度ダイアグラムは、表示ユーザインタフェースの一部ではなく、読み手の助けになるように
図5E~5Hに含まれていることに留意されたい。
【0175】
いくつかの実施形態では、表現578A~578Cの表示は、アニメーションを含む。例えば、
図5Fに示すように、表現578Aが、アプリケーションアイコン572Bに近接して最初に表示される。アニメーションが進むにつれて、
図5Gに示すように、表現578Aは上方へ動き、表現578Bが、アプリケーションアイコン572Bに近接して表示される。次いで、
図5Hに示すように、表現578Aが上方へ動き、表現578Bが表現578Aに向かって上方へ動き、表現578Cが、アプリケーションアイコン572Bに近接して表示される。表現578A~578Cは、アイコン572Bの上にアレイを形成する。いくつかの実施形態では、アニメーションは、
図5F~
図5Gに示すように、接触562の強度に従って進行し、接触562の強度が深い押下の強度閾値(例えば、「IT
D」)に向かって増大するにつれて、表現578A~578Cが現れ、上方へ動く。いくつかの実施形態では、アニメーションの進行が基づいている強度は、接触の特性強度である。
図5E~
図5Hを参照して説明する動作は、デバイス100、300、又は500に類似又は同一の電子デバイスを使用して実行することができる。
【0176】
いくつかの実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的な入力を回避するために強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との既定の関係を有するヒステリシス強度閾値を定義又は選択する(例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりも低いX強度単位であり、又はヒステリシス強度閾値は、押圧入力強度閾値の75%、90%、若しくは何らかの妥当な割合である)。したがって、いくつかの実施形態では、押下入力は、押下入力強度閾値を上回るそれぞれの接触の強度の増大、及びそれに続く押下入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、それに続くヒステリシス強度閾値を下回るそれぞれの接触の強度の減少(例えば、それぞれの押下入力の「アップストローク」)を検出したことに応じて実行される。同様に、いくつかの実施形態では、押下入力は、デバイスが、ヒステリシス強度閾値以下の強度から押下入力強度閾値以上の強度への接触の強度の増大、及び任意選択的に、その後のヒステリシス強度以下の強度への接触の強度の減少を検出するときにのみ検出され、それぞれの動作は、押下入力(例えば、状況に応じて、接触の強度の増大又は接触の強度の減少)を検出したことに応じて実行される。
【0177】
説明を容易にするために、押下入力強度閾値に関連付けられた押下入力、又は押下入力を含むジェスチャに応じて実行される動作の説明は、任意選択的に、押下入力強度閾値を上回る接触の強度の増大、ヒステリシス強度閾値を下回る強度から押下入力強度閾値を上回る強度への接触の強度の増大、押下入力強度閾値を下回る接触の強度の減少、及び/又は押下入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少のいずれかを検出したことに応じてトリガされる。更に、押圧入力強度閾値を下回る接触の強度の減少を検出したことに応じて実行されるように動作が記載される例では、動作は、任意選択的に、押圧入力強度閾値に対応し、かつそれよりも低いヒステリシス強度閾値を下回る接触の強度の減少を検出したことに応じて実行される。
【0178】
本明細書では、「インストール済みアプリケーション」は、電子デバイス(例えば、デバイス100、300、及び/又は500)上へダウンロードされ、デバイス上で起動する準備ができた(例えば、開かれた)ソフトウェアアプリケーションを指す。いくつかの実施形態では、ダウンロードされたアプリケーションは、ダウンロードされたパッケージからプログラム部分を抽出し、抽出された部分をコンピュータシステムのオペレーティングシステムと統合するインストールプログラムによって、インストール済みアプリケーションになる。
【0179】
本明細書では、「開いているアプリケーション」又は「実行中のアプリケーション」という用語は、保持された状態情報(例えば、デバイス/グローバル内部状態157及び/又はアプリケーション内部状態192の一部として)を有するソフトウェアアプリケーションを指す。開いている又は実行中のアプリケーションは、任意選択的に、以下のタイプのアプリケーションのうちのいずれか1つである。
●アプリケーションが使用されているデバイスのディスプレイスクリーン上に現在表示されているアクティブアプリケーション、
●現在表示されていないが、アプリケーションに対する1つ以上の処理が1つ以上のプロセッサによって処理されているバックグラウンドアプリケーション(又はバックグラウンド処理)、並びに
●実行していないが、メモリ(それぞれ揮発性及び不揮発性)内に記憶されており、アプリケーションの実行を再開するために使用することができる状態情報を有する中断又は休止状態アプリケーション。
【0180】
本明細書では、「閉じているアプリケーション」という用語は、保持された状態情報を有していないソフトウェアアプリケーションを指す(例えば、閉じているアプリケーションに対する状態情報は、デバイスのメモリ内に記憶されていない)。したがって、アプリケーションを閉じることは、アプリケーションに対するアプリケーションプロセスを停止及び/又は除去し、アプリケーションに対する状態情報をデバイスのメモリから除去することを含む。概して、第1のアプリケーション中に第2のアプリケーションを開いても、第1のアプリケーションは閉じない。第2のアプリケーションが表示されており、かつ第1のアプリケーションが表示を終了されたとき、第1のアプリケーションは背景アプリケーションになる。
【0181】
次に、ポータブル多機能デバイス100、デバイス300、又はデバイス500などの電子デバイス上で実施されるユーザインタフェース(「UI」)及び関連する処理の実施形態に注意を向ける。
【0182】
図6A~
図6BNは、いくつかの実施形態による、身体活動アプリケーションに関連付けられた例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図7の処理を含む後述の処理を説明するために使用される。
【0183】
図6Aは、タッチ感知ディスプレイ602を有するデバイス600を示す。トレーニングアプリケーションのユーザインタフェース610Aが、タッチ感知ディスプレイ602上に表示される。デバイス600は、回転可能入力を受け取ることができる(プッシュ入力も受け得る)回転可能入力機構603、プッシュユーザ入力を受け取ることができる入力機構604など、ユーザ入力を受け取る様々な入力機構を含む。いくつかの実施形態では、デバイス600は、デバイス100、デバイス300、又はデバイス500の特徴の一部又は全てを含む。
【0184】
ユーザインタフェース610Aは、身体活動のためのそれぞれの身体活動追跡機能に関連付けられたアフォーダンスのスクロール可能なリスト620を含む。例えば、アフォーダンスのスクロール可能なリストは、屋外走行のための身体活動追跡機能に対応するアフォーダンス621と、プール水泳のための身体活動追跡機能に対応するアフォーダンス622と、を含む。アフォーダンスのスクロール可能なリスト620は、現在表示されていないが、スクロール入力(例えば、回転機構603の回転)に応じて表示することができる他の身体活動追跡機能に対応する追加のアフォーダンスを含むことに留意されたい。
【0185】
いくつかの実施形態では、アフォーダンスのスクロール可能なリスト620内のアフォーダンスのうちの1つ以上は、以下で更に詳細に説明する、それぞれのトレーニング指標変更アフォーダンスを含む(少なくとも
図6Jを参照)。例えば、アフォーダンス621は、トレーニング指標変更アフォーダンス631を含み、アフォーダンス622は、トレーニング指標変更アフォーダンス632を含む。
【0186】
いくつかの実施形態では、アフォーダンスのスクロール可能なリスト620内の1つ以上のアフォーダンスは、アフォーダンスに関連付けられた身体活動に対応する身体活動アイコンを含む。例えば、アフォーダンス621は、身体活動アイコン621-1(例えば、走者のアイコン)を含む。同様に、アフォーダンス622は、身体活動アイコン622-1(例えば、泳者のアイコン)を含む。様々な実施形態では、身体活動アイコン(例えば、身体活動アイコン621-1)は、第1の状態(例えば、静止状態)で表示される。
【0187】
いくつかの実施形態では、アフォーダンスのスクロール可能なリスト内の1つ以上のアフォーダンスは、トレーニング識別子を含む。例えば、アフォーダンス621は、アフォーダンス621が屋外走行トレーニングに関連付けられていることを示すトレーニング識別子621-2を含む。同様に、アフォーダンス622は、アフォーダンス622がプール水泳トレーニングに関連付けられていることを示すトレーニング識別子622-2を含む。
【0188】
いくつかの実施形態では、アフォーダンスのスクロール可能なリスト内の1つ以上のアフォーダンスは、トレーニング目標情報を含む。例えば、アフォーダンス622は、アフォーダンス622に関連付けられたプール水泳トレーニングが3マイルの所定の目標を有することを示すトレーニング目標情報622-3を含む。すなわち、アフォーダンス622が選択されると、関連付けられた身体活動追跡機能は、予め設定された3マイルの目標を有するプール水泳トレーニングの距離を自動的に追跡する。アフォーダンス621は、アフォーダンス621に関連付けられた屋外走行が「オープン目標」であることを示す目標トレーニングアフォーダンス621-3を含む。オープン目標の表示は、関連付けられたトレーニングが、予め設定されたいかなる目標も現在有していないことをユーザに示すものである。したがって、アフォーダンス621が選択されると、様々な指標が、関連付けられた身体活動追跡機能により追跡され、これらの指標は、予め設定されたいかなる目標値も含まない。
【0189】
図6Bを参照すると、タッチ入力(例えば、タップ入力)615Aが受け取られ、タッチ入力615Aは、アフォーダンス621の選択に対応する。ユーザ入力615Aがアフォーダンスのスクロール可能なリスト内の第1のアフォーダンス621で検出されたとの判定に従って、アフォーダンス621に関連付けられた身体活動追跡機能が起動される。すなわち、アフォーダンス621の選択に従って、身体活動追跡機能の実行が開始される。更に、いくつかの実施形態では、アフォーダンスのスクロール可能なリスト620内の別のアフォーダンス(例えば、アフォーダンス622)の選択が、関連付けられた別の身体活動追跡機能を起動し、これについては以下で更に詳細に説明する。
【0190】
図6C~
図6Fを参照すると、アフォーダンス621の選択に応じて、ユーザインタフェース610Bが、身体活動追跡機能によって指標を追跡する前のカウントダウンを表示する。例えば、ユーザインタフェース610Bは、「用意」(
図6C)を表示し、次いで、「3」(
図6D)、次に「2」(
図6E)、次に「1」(
図6F)を表示することによる数字カウントダウンを表示する。
【0191】
カウントダウンの完了に応じて、ユーザインタフェース610Cが表示される(
図6G~
図6I)。ユーザインタフェース610は、選択されたアフォーダンス621に対応するトレーニング(例えば、屋外走行)に関連付けられた(身体活動追跡機能によって追跡される)追跡指標630を表示する。例えば、ユーザインタフェース610Cは、様々な指標(例えば、マイル630-1、活動カロリー630-2、マイル平均630-3、及び時間630-4)の追跡を含む。
図6G~
図6Iに示すように、ユーザインタフェース610Cは、屋外走行を始めて0.01秒の時点での(
図6G)、屋外走行を始めて0.59秒の時点での(
図6H)、及び屋外走行を始めて1.23秒の時点での(
図6I)屋外走行トレーニングの追跡指標630を表示する。いくつかの実施形態では、アフォーダンス621の選択に応じて、ユーザインタフェース610Cは、ユーザインタフェース610Bの表示なしに(又はバイパスして)表示される。
【0192】
トレーニングアフォーダンスのスクロール可能なリストを表示し、選択されたトレーニングアフォーダンスに関連付けられた指標を追跡するための身体活動追跡機能を起動することにより、ユーザは、トレーニングを素早く選択し、追跡機能を起動して、選択したトレーニングに関連付けられた指標を追跡することができる。トレーニング指標の追跡を行うために必要な入力の回数を減らすことにより、(例えば、ユーザが適切な入力を提供することを支援し、デバイスを操作又はそれと対話するときのユーザの間違いを減らすことによって)デバイスの操作性が高められ、ユーザデバイスインタフェースがより効率的になり、それによって加えて、ユーザがデバイスをより素早く、効率的に使用できるようにすることによって、電力使用量が減り、デバイスの電池寿命が向上する。
【0193】
いくつかの実施形態では、アフォーダンスに関連付けられた身体活動追跡機能が実行されている間、身体活動アイコンは、アニメーション状態で表示される。例えば、
図6G~
図6Iを参照すると、身体活動追跡機能が指標630を追跡している間、身体活動アイコン621-1はアニメーション表示される(例えば、身体活動アイコン621-1内の走者は、走行中の動作で動く)。身体活動アイコン621-1は、アフォーダンスに関連付けられた身体活動追跡機能が実行を停止する(例えば、指標630の追跡を停止する)と、アニメーション表示を中止することを理解されたい。
【0194】
いくつかの実施形態では、指標の追跡は、デバイスの1つ以上の追跡センサによって実行される。例えば、デバイス600は、(
図3に示すような)トレーニングサポートモジュール142と通信する追跡センサ(又はトレーニングセンサ)によって身体活動を追跡する。
【0195】
図6Jを参照すると、ユーザインタフェース610Aは、(
図6Aと同様の)アフォーダンスのスクロール可能なリスト620を表示する。ユーザ入力615B(例えば、タップジェスチャ)が、トレーニング指標変更アフォーダンス631で受け取られる。
【0196】
図6Kを参照すると、ユーザ入力615Bがトレーニング指標変更アフォーダンス631で検出されたとの判定に従って、ユーザインタフェース610Dが表示され、ユーザインタフェース610Dは、アフォーダンス621に対応する身体活動(例えば、屋外走行)に関連付けられたトレーニング指標を変更するように構成される。特に、ユーザインタフェース610Dは、屋外走行トレーニングに対応するトレーニング指標に関連付けられた指標アフォーダンス640(例えば、オープン目標アフォーダンス640-1、距離アフォーダンス640-2、カロリーアフォーダンス640-3、及び時間アフォーダンス640-4)を含む。ユーザインタフェース610Dは、選択されると、前のUI610A(
図6J)を表示するように構成されたアフォーダンス641を含む。いくつかの実施形態では、ユーザ入力615Bがトレーニング指標変更アフォーダンス631で検出されたとの判定に従って、ユーザインタフェース610Dは表示され、アフォーダンス621に関連付けられた身体活動追跡機能を起動する。
【0197】
トレーニングのスクロール可能なリストと共にトレーニング指標変更アフォーダンスを表示することにより、ユーザは、指標の目標値を素早く変更し、追跡機能を起動して、トレーニングに関連付けられた指標を追跡することができる。目標値を変更するとともにトレーニング指標の追跡を行うために必要な入力の回数を減らすことにより、(例えば、ユーザが適切な入力を提供することを支援し、デバイスを操作又はそれと対話するときのユーザの間違いを減らすことによって)デバイスの操作性が高められ、ユーザデバイスインタフェースがより効率的になり、それによって加えて、ユーザがデバイスをより素早く、効率的に使用できるようにすることによって、電力使用量が減り、デバイスの電池寿命が向上する。
【0198】
図6Lを参照すると、ユーザ入力615C(例えば、タップジェスチャ)が距離アフォーダンス640-2で受け取られる。
【0199】
図6M~
図6Rを参照すると、距離アフォーダンス640-2でユーザ入力615Cを受け取ったことに応じて、目標値ユーザインタフェース610Eが表示される。目標値ユーザインタフェース610Eは、屋外走行トレーニングの選択された距離アフォーダンス640-2に対応する目標値642(例えば、7.5マイル)を含む。7.50マイルの初期目標値は、屋外走行の距離指標に関連付けられた現在値である。すなわち、屋外走行トレーニングが(7.50マイルの距離目標値を伴って)起動された場合、距離指標の追跡が7.50マイルに設定される。
【0200】
いくつかの実施形態では、目標値642(例えば、7.50マイル)は、目標変更アフォーダンス643(例えば、「-」アフォーダンス)及び/又は目標変更アフォーダンス644(例えば、「+」アフォーダンス)によって調整することができる。例えば、ユーザ入力615Dが、目標変更アフォーダンス644で受け取られる(
図6N)。目標変更アフォーダンス644でユーザ入力615Dを受け取ったことに応じて、7.50マイルの目標値は、7.60マイルに変更される(
図6O)。同様に、ユーザ入力615Eが、目標変更アフォーダンス643で受け取られる(
図6P)。目標変更アフォーダンス643でユーザ入力615Eを受け取ったことに応じて、7.60マイルの目標値は、7.50マイルに変更される(
図6Q)。
【0201】
図6Qに示すように、目標値ユーザインタフェース610Eは目標情報646を含む。例えば、目標情報646は、身体活動追跡機能が追跡した(屋外走行トレーニングに関連付けられた)以前の最長距離を特定する情報である。したがって、ユーザは、目標情報646に少なくとも部分的に基づいて、(上述したように目標値を増減させることによって)目標値642を調整し得る。目標値ユーザインタフェース610Eは、選択されると、以前のUI610Dを表示するように構成されたアフォーダンス645(
図6L)も含む。
【0202】
図6Rを参照すると、目標値ユーザインタフェース610Eは、アフォーダンス621に関連付けられた身体活動追跡機能を起動するように構成された開始アフォーダンス647を含む。例えば、ユーザ入力615Hが、開始アフォーダンス647で受け取られる。アフォーダンス647を選択するユーザ入力615Hに応じて、アフォーダンス621(例えば、屋外走行)に関連付けられた身体活動追跡機能が起動される。具体的には、身体活動追跡機能は、7.50マイルの目標値に基づいて屋外走行の移動距離を追跡する。いくつかの実施形態では、開始アフォーダンス647を介した、アフォーダンス621に関連付けられた身体活動追跡機能の起動は、アフォーダンス621でのユーザ入力615Aによる身体活動追跡機能の起動(例えば、
図6C~
図6I)と同様である。
【0203】
図6S~
図6Uは、目標値ユーザインタフェース610Eの様々な実施形態を示す。
図6Sは、オープン目標アフォーダンス640-1(
図6K)でのユーザ入力に応じて表示されたユーザインタフェース610Eを示す。オープン目標機能は、身体活動(例えば、屋外走行)に関連付けられたいかなる目標値も含まない。したがって、目標値ユーザインタフェース610Eは、(オープン目標アフォーダンス640-1の選択に応じて表示されるときに)いかなる目標値も表示しない。開始アフォーダンス647でユーザ入力615Iを受け取ったことに応じて、アフォーダンス621(例えば、屋外走行)に関連付けられた身体活動追跡機能が起動される。起動された身体活動追跡機能は、様々な指標(例えば、距離、カロリー、時間)を追跡するが、目標値に関する指標を追跡しない。いくつかの実施形態では、開始アフォーダンス647を介した、アフォーダンス621に関連付けられた身体活動追跡機能の起動は、アフォーダンス621でのユーザ入力615Aによる身体活動追跡機能の起動(例えば、
図6C~
図6I)と同様である。
【0204】
図6Tは、時間目標アフォーダンス640-4(
図6K)でのユーザ入力に応じて表示された目標値ユーザインタフェース610Eを示す。目標ユーザインタフェース610Eは(時間目標アフォーダンス640-4の選択に応じて表示されるときに)、目標値642(例えば、1時間の経過時間)、目標変更アフォーダンス643及び644、目標情報646(例えば、身体活動追跡機能が屋外走行について追跡した以前の最長継続時間を特定する情報)、並びに開始アフォーダンス647を含む。目標値642は、上述したように、目標変更アフォーダンス643及び/又は目標変更アフォーダンス644の選択によって調整することができる(
図6M~
図6Q)。加えて、アフォーダンス647を選択するユーザ入力(例えば、タップジェスチャ)に応じて、アフォーダンス621(例えば、屋外走行)に関連付けられた身体活動追跡機能が起動される。具体的には、身体活動追跡機能は、1時間の目標値に基づいて屋外走行の継続時間を追跡する。いくつかの実施形態では、開始アフォーダンス647を介した、アフォーダンス621に関連付けられた身体活動追跡機能の起動は、アフォーダンス621でのユーザ入力615Aによる身体活動追跡機能の起動(例えば、
図6C~
図6I)と同様である。
【0205】
図6Uは、カロリーアフォーダンス640-3(
図6K)でのユーザ入力に応じて表示されたユーザインタフェース610Eを示す。目標ユーザインタフェース610Eは(カロリーアフォーダンス640-3の選択に応じて表示されたときに)、目標値642(例えば、活動燃焼カロリー)、目標変更アフォーダンス643及び644、目標情報646(例えば、以前の屋外走行トレーニングから、身体活動追跡機能が追跡最大燃焼カロリーを特定する情報)、並びに開始アフォーダンス647を含む。目標値642は、上述したように、目標変更アフォーダンス643及び/又は目標変更アフォーダンス644の選択によって調整することができる(
図6M~
図6Q)。加えて、アフォーダンス647を選択するユーザ入力(例えば、タップジェスチャ)に応じて、アフォーダンス621(例えば、屋外走行)に関連付けられた身体活動追跡機能が起動される。具体的には、身体活動追跡機能は、700カロリーの目標値に基づいて屋外走行中に燃焼されるカロリーを追跡する。いくつかの実施形態では、開始アフォーダンス647を介した、アフォーダンス621に関連付けられた身体活動追跡機能の起動は、アフォーダンス621でのユーザ入力615Aによる身体活動追跡機能の起動(例えば、
図6C~
図6I)と同様である。
【0206】
図6V~
図6ABは、アフォーダンスのスクロール可能なリスト620のスクロールと、アフォーダンスの選択とを表示する、ユーザインタフェース610Aの一実施形態を示す。例えば、回転入力605が、回転可能入力機構603で受け取られる(
図6V~
図6W)。回転入力605に応じて、アフォーダンスのリスト620は、アフォーダンス622が完全に表示され、アフォーダンス621が部分的に表示され、(ステアスッテパートレーニングに関連付けられた)アフォーダンス623が部分的に表示される(
図6X)ように、上方向にスクロールされる。
【0207】
ユーザ入力615Jがアフォーダンス622で受け取られる(
図6Y)。(プール水泳トレーニングに関連付けられた)アフォーダンス622でのユーザ入力615Jに応じて、ユーザインタフェース610Fが表示される(
図6Z)。ユーザインタフェース610Fは、プール長値648、値変更アフォーダンス643、及び/又は値変更アフォーダンス644を含む。プール長値648は、値変更アフォーダンスのうちの1つ以上によって(例えば、50ヤードから100ヤードに、50ヤードから25ヤードになど)変更され得る。特に、ユーザインタフェース610Fは、身体活動追跡機能が、プール水泳トレーニング中にユーザが泳ぐプール長の数を追跡できるように、プール水泳トレーニングに関するプール長値(例えば、50ヤード)を受け取るように構成される。
【0208】
ユーザ入力615Kが開始アフォーダンス647で受け取られる(
図6AA)。ユーザ入力615Kに応じて、アフォーダンス622(例えば、プール水泳)に関連付けられた身体活動追跡機能が起動される。例えば、アフォーダンス647の選択に応じて、ユーザインタフェース610Cが表示される(
図6AB)。ユーザインタフェース610Cは、様々な指標633(例えば、ラップ数指標633-1、活動カロリー633-2、合計カロリー633-3、及び経過時間633-4)の追跡を含む。(屋外走行に関連付けられた追跡指標630を示す)
図6Gと、(プール水泳に関連付けられた追跡指標633を示す)
図6ABとの比較が、異なる指標を使用して異なる身体活動を追跡できることを示すことを理解されたい。例えば、走行活動の場合、全走行長(マイル)を追跡することが望ましいことが多く、プール水泳の場合、完了したラップ数を追跡することが望ましいことが多い。
【0209】
図6AC~
図6ADは、ユーザインタフェース610Aの一実施形態を示す。ユーザインタフェース610Aは、アフォーダンスのスクロール可能なリスト620内にアフォーダンス624及び625を表示する。一実施形態では、アフォーダンス625は、特定の身体活動に関連付けられておらず、「他、オープン目標」とラベル付けされる。加えて、一実施形態では、アフォーダンス625は、アフォーダンスのスクロール可能なリスト620内の最後(又は末尾)のアフォーダンスである。以下で更に詳細に説明するように、アフォーダンス625は、追加の特定の活動アフォーダンスによってアフォーダンスのスクロール可能なリスト220を更新することを容易にし、ユーザは、追加の特定の活動アフォーダンスに関連付けられた特定の身体活動(例えば、ヨガ)を選択することができる。
【0210】
ユーザ入力615Lがアフォーダンス625で受け取られる(
図6AD)。ユーザ入力615Lに応じて、ユーザインタフェース610Gが表示される(
図6AE)。ユーザインタフェース610Gは、ユーザが、身体活動追跡機能によって追跡される指標に関連付けられたトレーニングを選択できることを示す情報638を表示する。ユーザインタフェース610Gは、身体活動追跡機能を起動するように構成されたアフォーダンス647を含む。
【0211】
ユーザ入力615Mがアフォーダンス647で受け取られる(
図6AF)。ユーザ入力615Mに応じて、ユーザインタフェース610Bが表示される(
図6AG)。ユーザインタフェース610Bは、上述したように、身体活動追跡機能によって指標を追跡する前のカウントダウン(例えば、
図6C~
図6F)を表示する。
【0212】
カウントダウンが完了すると、ユーザインタフェース610Cが表示される(
図6AH~
図6AI)。ユーザインタフェース610Cは、身体活動(例えば、ヨガ)中に身体活動追跡機能によって追跡される複数の指標634(例えば、継続時間634-1、活動カロリー634-2、合計カロリー634-3、及び心拍数634-4)を表示するように構成される。いくつかの実施形態では、ユーザインタフェース610Cは、中間のユーザインタフェース610Bの表示なしにユーザ入力615Mに応じて表示される。
図6AH~
図6AIに示すように、ユーザインタフェース610Cは、アフォーダンス625が身体活動に関連付けられていないため、身体活動アイコン(例えば、身体活動アイコン621-1)を含まないことに留意されたい。
【0213】
ユーザ入力615N(例えば、スワイプジェスチャ)が、タッチ感知ディスプレイ602上で受け取られる(
図6AI~
図6AK)。ユーザ入力615Nに応じて、ユーザインタフェース610Hが表示される(
図6AL)。ユーザインタフェース610Hは、トレーニングアプリケーションの様々な機能を制御するためのアフォーダンスを含む。例えば、ユーザインタフェース610Hは、(画面をロックし、ユーザ入力を受け取らないように構成された)画面ロックアフォーダンス650と、(以下で更に詳細に説明する)トレーニング切替アフォーダンス651と、(現在実行しているトレーニングを終了するように構成された)トレーニング終了アフォーダンス652と、(現在実行しているトレーニングを休止するように構成された)トレーニング休止アフォーダンス653と、を含む。
【0214】
ユーザインタフェース610Cは、ページ呼出ドット639-1及びページ呼出ドット639-2を含む。ページ呼出ドットは、トレーニングアプリケーション内の連続ページ(又はユーザインタフェース)に対応する。例えば、ページ呼出ドット639-1はユーザインタフェース610Cに対応し、ページ呼出ドット639-2はユーザインタフェース610Hに対応する。スワイプジェスチャ(例えば、610H)などのユーザ入力に応じて、現在表示されているページ(例えば、
図6AHのユーザインタフェース610C)が、対応する連続ページ(例えば、
図6ALのユーザインタフェース610H)の表示に置き換えられる。ユーザインタフェース610Cが表示されると、ページ呼出ドット639-1が強調表示されることに留意されたい(
図6AH)。同様に、ユーザインタフェース610Hが表示されると、ページ呼出ドット639-2が強調表示される(
図6AL)。
【0215】
ユーザ入力615Oが、トレーニング終了アフォーダンス652で受け取られる(
図6AM)。例えば、ユーザのヨガトレーニングが完了すると、ユーザは、指標634の追跡を停止するために、トレーニング終了アフォーダンス652を選択する。トレーニング終了アフォーダンス652でのユーザ入力615Oに応じて、ユーザインタフェース610Iが表示される(
図6AN)。
【0216】
ユーザインタフェース610Iは、アフォーダンス625に関連付けられた追跡指標634の概要を含む。例えば、ユーザインタフェース610Iは、指標634に関連付けられた身体活動情報635を含む。追跡指標634は、アフォーダンス625(例えば、他、オープン目標アフォーダンス)の選択によって追跡されたため、完了したトレーニングの追跡指標634に現在割り当てられている又は関連付けられている身体活動(例えば、ヨガ)が存在しない。ユーザインタフェース610Iは、継続時間634-1、活動カロリー634-2、合計カロリー634-3、平均心拍数634-4、及び心拍数範囲634-5も含む。加えて、ユーザインタフェース610Iは、活動追加アフォーダンス636、及び実行済みアフォーダンス637を含む。いくつかの実施形態では、ユーザインタフェース610Iは、身体活動に関連付けられた日付及び気象情報を含む。
【0217】
説明を容易にするために、ユーザインタフェース610Iの全体(画面外の部分を含む)が
図6ANに示されていることに留意されたい。しかしながら、タッチ感知ディスプレイ602の制限された表示サイズにユーザインタフェース610Iの全体を表示できない場合があることを理解されたい。結果として、ユーザは、回転可能入力機構603で受け取られたユーザ入力(例えば、回転可能入力)によってユーザインタフェースをスクロールさせ得る。
【0218】
ユーザ入力615P(例えば、タップジェスチャ)がアフォーダンス636で受け取られる(
図6AO)。
図6APを参照すると、アフォーダンス636でのユーザ入力615Pに応じて、ユーザインタフェース610Jが表示される。ユーザインタフェース610Jは、選択可能な身体活動の既定のリスト660を表示する。選択可能な身体活動の既定のリスト660は、選択された後に、アフォーダンス625(例えば、他、オープン目標アフォーダンス)に対応する追跡指標634に関連付けられるように構成される。選択可能な身体活動の既定のリスト660は、サッカー660-1、ヨガ660-2、筋力トレーニング660-3、アーチェリー660-4、バスケットボール660-5、及びカーリング660-6を含む。選択可能な身体活動の既定のリスト660は、現在表示されていないが、スクロール入力(例えば、回転機構603の回転)に応じて表示され得る追加の身体活動を含んでもよいことに留意されたい。
【0219】
いくつかの実施形態では、選択可能な身体活動の既定のリスト660は、第1の身体活動のセット(例えば、サッカー660-1、ヨガ660-2、及び筋力トレーニング660-3)を含む。第1の身体活動のセットは、いくつかの実施形態では、人気のある活動の既定のリストであり、選択可能な身体活動の既定のリスト660の先頭に表示される。加えて、選択可能な身体活動の既定のリスト660は、アルファベット順に列挙された第2の身体活動のセット(例えば、アーチェリー660-4、バスケットボール660-5、及びカーリング660-6)を含む。
【0220】
図6AQ及び
図6ARを参照すると、ユーザ入力615Qが、ヨガ活動660-2で受け取られる。ヨガ活動660-2でのユーザ入力615Qに応じて、完了したトレーニングの指標634がヨガトレーニングに関連付けられる。したがって、(ユーザインタフェース660I中の)身体活動情報635は、指標634が、アフォーダンス625の選択によってヨガトレーニングに関連付けられていることを示す。加えて、ヨガ活動660-2でのユーザ入力615Qに応じて、ユーザインタフェース660Iは、ヨガトレーニングに対応するアイコン670を含む。
【0221】
図6ATは、デバイス600とペアリングされた相手側デバイス690を示す。いくつかの実施形態では、相手側デバイス690は、デバイス100、デバイス300、デバイス500、又はそれらデバイスの1つ以上の特徴を含むデバイスであってもよい。相手側デバイス690は、タッチ感知ディスプレイ691を含む。ユーザインタフェース692が、タッチ感知ディスプレイ691上に表示される。相手側デバイス690は、いくつかの実施形態では、デバイス600とペアリングされると、アプリケーションビューを表示し、本明細書に記載されるように、デバイス600と同じ処理のうちの少なくともいくつかを行うことができる。アフォーダンス637でのユーザ入力615R(
図6AS)に応じて、ヨガトレーニングの概要情報が、相手側デバイス690のユーザインタフェース692上に表示される。例えば、ユーザインタフェース692は、アイコン670と、完了したヨガトレーニングに関連付けられた指標634と、を含む。
【0222】
図6AU~
図6AVは、ユーザインタフェース610Aの一実施形態を示す。アフォーダンス637でのユーザ入力615R(
図6AS)に応じて、アフォーダンス626が、アフォーダンスのスクロール可能なリスト620に追加される。例えば、アフォーダンス626は、ヨガトレーニングに関連付けられた新規アフォーダンスである。アフォーダンス626は、ヨガトレーニングに関連付けられたオープン目標アフォーダンスである。オープン目標アフォーダンスは、いかなる既定の目標値にも関連付けられていない。そのため、いくつかの実施形態では、身体活動追跡機能が、オープン目標アフォーダンスに関連付けられた様々な指標を追跡し、いかなる既定の目標値も考慮せずに指標を追跡する。アフォーダンス626は、アフォーダンスのスクロール可能なリスト620の先頭又は最初に列挙される。一実施形態では、アフォーダンス626は、アフォーダンスのスクロール可能なリスト620の末尾又は最後に列挙される。様々な実施形態では、アフォーダンス625は、新規アフォーダンス(例えば、アフォーダンス626)を追加した際に、アフォーダンスのスクロール可能なリストに列挙されたままであり、新規アフォーダンスは、本明細書に記載されるように、アフォーダンス625の選択に部分的に基づいて作成される。
【0223】
ユーザ入力615Sが、アフォーダンス626で受け取られる(
図6AV)。ユーザ入力615Sに応じて、ユーザインタフェース610Bは、上述したように、身体活動追跡機能によって指標を追跡する前のカウントダウン(例えば、
図6C~
図6F)を表示する。ユーザインタフェース610Bに表示されるカウントダウンが完了すると、身体活動追跡機能が、起動されて、身体活動中に身体活動追跡機能によって追跡されるヨガトレーニングに関連付けられた指標634(例えば、継続時間634-1、活動カロリー634-2、合計カロリー634-3、及び心拍数634-4)を追跡する(
図6AX)。
【0224】
図6AY~
図6BBを参照すると、ユーザ入力615T(例えば、スワイプジェスチャ)が、タッチ感知ディスプレイ602上で受け取られる。ユーザ入力615Tに従って、ユーザインタフェース610Hが表示される(
図6BB)。ユーザインタフェース610Hは、トレーニングアプリケーションの様々な機能を制御するアフォーダンスを含む。例えば、ユーザインタフェース610Hは、画面ロックアフォーダンス650、トレーニング切替アフォーダンス651、トレーニング終了アフォーダンス652、及びトレーニング休止アフォーダンス653を含む。
【0225】
ユーザ入力615Uがトレーニング切替アフォーダンス651で受け取られる(
図6BC)。例えば、身体活動追跡機能が、ユーザのヨガトレーニング中に指標634を追跡している間に、ユーザは、トレーニング切替アフォーダンス651を選択して、異なるトレーニングに切り替える。トレーニング切替アフォーダンス651でのユーザ入力615Uに応じて、アフォーダンスのスクロール可能なリスト620(例えば、アフォーダンス621及びアフォーダンス622)を表示するユーザインタフェース610Aが表示される(
図6BD)。加えて、トレーニング切替アフォーダンス651でのユーザ入力615Uに応じて、指標634を追跡する身体活動追跡機能が休止される。
【0226】
図6BDは、休止身体活動アフォーダンス655を含むユーザインタフェース610Aを示す。一実施形態では、アフォーダンス655でのユーザ入力は、休止したトレーニング(例えば、休止したヨガトレーニング)を継続するように構成される。例えば、アフォーダンス655でのユーザ入力に応じて、ヨガトレーニングに関連付けられた休止した身体活動追跡機能は、指標634の追跡を再開する(例えば、
図6AY)。
【0227】
図6BE~
図6BGを参照すると、ユーザ入力615Vがアフォーダンス621で受け取られる(
図6BE)。アフォーダンス621でのユーザ入力615Vに応じて、身体活動追跡機能が起動されて、対応する身体活動(例えば、屋外走行)の指標630(例えば、マイル630-1、活動カロリー630-2、マイル平均630-3、及び時間630-4)を追跡する。加えて、アフォーダンス621でのユーザ入力615V(
図6BE)に応じて、休止したトレーニング(例えば、休止したヨガトレーニング)が取り消される。具体的には、指標634の追跡に関連付けられた身体活動追跡機能が取り消される。
【0228】
図6BHを参照すると、ユーザインタフェース610Hが表示される。例えば、ユーザインタフェース610Hは、
図6BGのタッチ感知ディスプレイ602上でのスワイプジェスチャに応じて表示される。
【0229】
ユーザ入力615Wがトレーニング終了アフォーダンス652で受け取られる(
図6BH)。トレーニング終了アフォーダンス652でのユーザ入力615Wに応じて、指標630の追跡が終了し、ユーザインタフェース610Jが表示される(
図6BI)。ユーザインタフェース610Jは、少なくとも2つの以前に完了したトレーニングの集約された指標の概要を表示するように構成される。例えば、ユーザインタフェース610Jは、屋外走行トレーニングに関連付けられた指標630と、ヨガトレーニングに関連付けられた指標634との集約を含む、集約された指標680(例えば、合計時間680-1、活動カロリー680-2、合計カロリー680-3、平均心拍数680-4、及び心拍数範囲680-5)を含む。一実施形態では、ユーザが、切替アフォーダンス651の選択によって、ヨガトレーニングから屋外走行トレーニングに切り替える(
図6BC)。
【0230】
ユーザインタフェース610Jは、ヨガトレーニングに関連付けられたトレーニングアフォーダンス681と、屋外走行トレーニングに関連付けられたアフォーダンス682と、を含む。ユーザ入力615Wが、屋外走行トレーニングに対応するアフォーダンス682で受け取られる。アフォーダンス682でのユーザ入力615Wに応じて、ユーザインタフェース610Kが表示される(
図6BK)。ユーザインタフェース610Kは、屋外走行に関連付けられた指標630(例えば、合計時間、平均ペース、活動カロリー、合計カロリー、平均心拍数、及び心拍数範囲)を含む。同様に、いくつかの実施形態では、アフォーダンス681でのユーザ入力に応じて、(例えば、
図6ASに表示された指標634と同様に)ヨガトレーニングに関連付けられた指標634が表示される。
【0231】
図6BL~
図6BMを参照すると、デバイス600は、ペアリング可能なトレーニングデバイス695(例えば、外部心拍数モニタ、ランニングマシーン、ステアスッテパー)に近接している。デバイス600とデバイス695は、通信的にペアリング可能である。例えば、デバイス600とデバイス695は、無線通信(例えば、近距離通信(NFC)、Bluetooth)によってペアリング可能である。デバイス690は、トレーニングデバイス695ともペアリング可能であることを理解されたい。
【0232】
デバイス600は、デバイス600がデバイス695に近接すると、ペアリング可能なトレーニングデバイス695を検出する。ペアリング可能なトレーニングデバイス695の検出に応じて、かつ、トレーニングデバイス自動ペアリング基準が満たされるとの判定に従って、デバイス600は、ペアリング可能なトレーニングデバイス695と(例えば、追加のユーザ入力なしで)自動的にペアリングされる(
図6BM)。例えば、デバイス695は、デバイス695(例えば、外部心拍数モニタ)と自動的にペアリングされる。したがって、デバイス600は、デバイス600とデバイス695が互いに自動的にペアリングされたことを示す情報696を表示する。
【0233】
一実施形態では、トレーニングデバイス自動ペアリング基準は、トレーニング(例えば、屋外走行トレーニング)がデバイス600上で完了した場合に満たされる。別の実施形態では、トレーニングデバイス自動ペアリング基準は、デバイス600が、ペアリング可能なデバイス695と所定時間以内(例えば、過去90日以内)にペアリングされていた場合に満たされる。更なる実施形態では、トレーニングデバイス自動ペアリング基準は、ユーザが、ペアリング可能なトレーニングデバイスとの自動ペアリングのための設定を肯定的に有効にした場合に満たされる。
【0234】
いくつかの実施形態では、ペアリング可能なトレーニングデバイス695の検出に応じて、かつ、トレーニングデバイス自動ペアリング基準が満たされないとの判定に従って、デバイス600は、ペアリング可能なトレーニングデバイスと自動的にペアリングされない。一実施形態では、トレーニングデバイス自動ペアリング基準は、トレーニング(例えば、屋外走行トレーニング)がデバイス600上で以前に完了しなかった場合には満たされない。別の実施形態では、トレーニングデバイス自動ペアリング基準は、デバイス600が、ペアリング可能なデバイス695と所定時間以内(例えば、過去90日以内)にペアリングされなかった場合には満たされない。更なる実施形態では、トレーニングデバイス自動ペアリング基準は、ユーザが、ペアリング可能なトレーニングデバイスとの自動ペアリングのための設定を肯定的に有効にしなかった場合には満たされない。別の実施形態では、トレーニングデバイス自動ペアリング基準は、ユーザがトレーニングアフォーダンス(例えば、アフォーダンス621)を選択した場合には満たされず、ユーザは、ペアリング可能なトレーニングデバイス695(例えば、心臓モニタ)と接続するためのユーザ入力を提供するように促される。例えば、
図6BNを参照すると、ペアリング承認アフォーダンス696-1(例えば、はい)、及びペアリング拒否アフォーダンス696-2(例えば、今はしない)が表示される。デバイス600及び695は、ペアリング承認アフォーダンス696-1のユーザ選択に従ってペアリングされる。あるいは、デバイス600及び695は、ペアリング拒否アフォーダンス696-2のユーザ選択に従ってペアリングされない。
【0235】
図7は、いくつかの実施形態による、電子デバイスを使用して、身体活動に関連付けられたアフォーダンスのスクロール可能なリストを表示するための方法を示すフロー図である。方法700は、1つ以上のプロセッサ、メモリ、及び身体活動追跡センサを有するデバイス(例えば、100、300、500、600)で実行される。方法700のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【0236】
後述するように、方法700は、とりわけ、ユーザ入力がアフォーダンスのスクロール可能なリスト内の第1のアフォーダンスで検出されたとの判定に従って、身体活動追跡機能を起動する直感的な方法を提供する。本方法は、トレーニングのリストからトレーニングを選択し、身体活動追跡機能を起動することによって、ユーザの認識的負担を減らすことにより、より効率的なヒューマンマシンインタフェースを作成する。バッテリ動作式のコンピューティングデバイスの場合、ユーザがトレーニングのリストからトレーニングを選択し、身体活動追跡機能をより速く、より効率的に起動することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0237】
ブロック710で、デバイス(例えば、600)は、身体活動に関連付けられたアフォーダンスのスクロール可能なリスト(例えば、620)を表示する。
【0238】
ブロック720で、デバイスは、アフォーダンスのスクロール可能なリスト(例えば、620)のうちの第1のアフォーダンス(例えば、621)に対応する第1のトレーニング指標変更アフォーダンス(例えば、631)を表示する。
【0239】
ブロック730で、デバイス(例えば、600)は、ユーザ入力(例えば、615A)を受け取る。
【0240】
ブロック740で、ユーザ入力(例えば、615A)がアフォーダンスのスクロール可能なリスト(例えば、220)内の第1のアフォーダンス(例えば、221)で検出されたとの判定に従って、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能が起動される(例えば、身体活動追跡機能が指標630を追跡する)。
【0241】
ブロック750で、ユーザ入力(例えば、615B)が第1のトレーニング指標変更アフォーダンス(例えば、631)で検出されたとの判定に従って、トレーニング指標を変更するように構成されたユーザインタフェース(例えば、610D)が表示される。
【0242】
いくつかの実施形態では、ユーザ入力(例えば、615L)が、アフォーダンスのスクロール可能なリスト内の第2のアフォーダンス(例えば、625)で受け取られる。第2のアフォーダンスでのユーザ入力に応じて、デバイス(例えば、600)は、選択された第2のアフォーダンスに関連付けられた身体活動追跡機能を起動する。追跡機能の完了後に、デバイスは、選択可能な身体活動の既定のリスト(例えば、660)を表示する。ユーザ入力(例えば、615Q)が、選択可能な身体活動の既定のリスト内の選択可能な身体活動(例えば、660-2)で受け取られる。選択可能な身体活動の既定のリスト内の身体活動の選択後、デバイスは、選択された身体活動に関連付けられた追加のアフォーダンス(例えば、626)によってアフォーダンスのスクロール可能なリスト(例えば、220)を更新する。
【0243】
いくつかの実施形態によれば、ユーザ入力(例えば、615B)が第1のトレーニング指標変更アフォーダンス(例えば、631)で検出されたとの判定に従って、デバイスは、第1のアフォーダンス(例えば、621)に関連付けられた身体活動追跡機能の起動を見合わせる。
【0244】
いくつかの実施形態では、複数の指標アフォーダンス(例えば、640)のうちの指標アフォーダンス(例えば、640-2)の選択に対応するユーザ入力(例えば、615C)を受け取られる。指標アフォーダンスの選択に対応するユーザ入力を受け取ったことに応じて、デバイス(例えば、600)は、選択された指標アフォーダンスに対応する第1の目標値(例えば、642)を表示する。
【0245】
いくつかの実施形態では、指標アフォーダンス(例えば、615C)の選択に対応するユーザ入力を受け取ったことに応じて、デバイス(例えば、600)は、少なくとも1つの目標変更アフォーダンス(例えば、643又は644)を表示する。少なくとも1つの目標変更アフォーダンスの選択に対応するユーザ入力(例えば、615D)が受け取られる。少なくとも1つの目標変更アフォーダンスに対応するユーザ入力を受け取ったことに応じて、第1の目標値(例えば、7.50マイルの目標値)は、第2の目標値(例えば、7.60マイルの目標値)に置き換えられる。
【0246】
いくつかの実施形態では、更に、指標アフォーダンス(例えば、640-2)の選択に対応するユーザ入力(例えば、615C)を受け取ったことに応じて、デバイス(例えば、600)は、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能の起動に対応する身体活動追跡機能開始アフォーダンス(例えば、647)を表示する。身体活動追跡機能開始アフォーダンスの選択に対応するユーザ入力(例えば、615H)が受け取られる。身体活動追跡機能開始アフォーダンスの選択に対応するユーザ入力を受け取ったことに応じて、選択された第1のアフォーダンスに関連付けられた身体活動追跡機能が起動される(例えば、デバイス600は、屋外走行トレーニングに関連付けられた指標630を追跡する)。
【0247】
いくつかの実施形態では、選択された第1のアフォーダンス(例えば、621)に関連付けられた身体活動追跡機能の起動は、第1の種類の身体活動(例えば、屋外走行)に関連付けられた第1の指標のセット(例えば、630)を追跡することを含む。ユーザ入力がアフォーダンスのスクロール可能なリスト(例えば、620)内の第2のアフォーダンス(例えば、622)で検出されたとの判定に従って、第2の種類の身体活動(例えば、プール水泳)に関連付けられた第2の指標のセット(例えば、633)を追跡することを含む、選択された第2のアフォーダンスに関連付けられた身体活動追跡機能が起動される。第2の指標のセット(例えば、633)は、第1の指標のセット(例えば、630)とは異なる。
【0248】
いくつかの実施形態では、アフォーダンスのスクロール可能なリスト内のアフォーダンス(例えば、621)が、アフォーダンスに関連付けられた身体活動(例えば、屋外走行)に対応する身体活動アイコン(例えば、621-1)を含む。いくつかの実施形態では、アフォーダンスに関連付けられた身体活動追跡機能が実行されている間に、身体活動アイコン(例えば、621-1)は、アニメーション状態で表示される。
【0249】
いくつかの実施形態では、アフォーダンス(例えば、626)に関連付けられた身体活動追跡機能が実行されている間に、トレーニングを切り替えるように構成されたユーザインタフェース(例えば、610H)を表示せよとの要求に対応するユーザ入力(例えば、615T)が受け取られる。トレーニングを切り替えるように構成されたユーザインタフェースを表示せよとの要求に対応するユーザ入力を受け取ったことに応じて、身体活動追跡機能は休止され、トレーニング切替アフォーダンス(例えば、651)が表示される。トレーニング切替アフォーダンスの選択に対応するユーザ入力(例えば、615U)が受け取られる。トレーニング切替アフォーダンスの選択に対応するユーザ入力を受け取ったことに応じて、アフォーダンスのスクロール可能なリスト(例えば、620)が表示され、休止した身体活動追跡機能に関連付けられた休止身体活動アフォーダンス(例えば、655)が表示される。
【0250】
いくつかの実施形態では、身体活動追跡機能を休止した後に、アフォーダンスのスクロール可能なリスト(例えば、620)内のアフォーダンス(例えば、621)の選択に対応するユーザ入力(例えば、615V)が受け取られる。アフォーダンスのスクロール可能なリスト内のアフォーダンスの選択に対応するユーザ入力を受け取ったことに応じて、休止した身体活動追跡機能は取り消され(例えば、ヨガトレーニングのための指標634の追跡を停止する)、選択されたアフォーダンスに関連付けられた異なる身体活動追跡機能が起動される(例えば、屋外走行のための指標630の追跡を開始する)。
【0251】
いくつかの実施形態では、休止身体活動アフォーダンス(例えば、655)の選択に対応するユーザ入力が受け取られる。休止身体活動アフォーダンスの選択に対応するユーザ入力を受け取ったことに応じて、休止した身体活動追跡機能が再開される(例えば、指標634の追跡が再開する)。
【0252】
いくつかの実施形態では、第1のトレーニング追跡機能及び第2のトレーニング追跡機能の完了後、第1のトレーニング追跡機能に関連付けられた第1の身体活動及び第2のトレーニング追跡機能に関連付けられた第2の身体活動のスクロール可能なトレーニング概要(例えば、集約された指標680の概要)が表示される。スクロール可能なトレーニング概要は、第1のトレーニング追跡機能及び第2のトレーニング追跡機能の集約された指標(例えば、680)と、第1の身体活動に関連付けられた第1のアフォーダンス(例えば、681)と、第2の身体活動に関連付けられた第2のアフォーダンス(例えば、682)とのセットを含む。ユーザ入力が受け取られる(例えば、615W)。ユーザ入力(例えば、615W)が、第1の身体活動に関連付けられた第1のアフォーダンス(例えば、681)の選択に対応するとの判定に従って、第1の身体活動に関連付けられた指標のセット(例えば、
図6BKの630)が表示される。ユーザ入力(例えば、615W)が、第2の身体活動に関連付けられた第2のアフォーダンス(例えば、682)の選択に対応するとの判定に従って、第2の身体活動に関連付けられた指標のセット(例えば、634)が表示される。
【0253】
いくつかの実施形態では、ペアリング可能なトレーニングデバイス(例えば、695)が検出される。ペアリング可能なトレーニングデバイスの検出に応じて、かつ、トレーニングデバイス自動ペアリング基準が満たされる(例えば、トレーニングがデバイス600上で完了されたか、デバイス600が、ペアリング可能なトレーニングデバイス695と所定の時間内にペアリングされたか、又は、ユーザが、ペアリング可能なトレーニングデバイスとの自動ペアリングのための設定を肯定的に有効にする)との判定に従って、デバイス(例えば、600)は、ペアリング可能なトレーニングデバイスと自動的にペアリングされる。ペアリング可能なトレーニングデバイス(例えば、695)の検出に応じて、かつ、トレーニングデバイス自動ペアリング基準が満たされない(例えば、トレーニングがデバイス600上で以前に完了されなかったか、デバイス600が、ペアリング可能なトレーニングデバイス695と所定の時間内にペアリングされなかったか、ユーザが、自動ペアリングのための設定を肯定的に有効にしないか、又は、ユーザが、ペアリング可能なトレーニングデバイスと接続するためのユーザ入力の提供を促される)との判定に従って、デバイスは、ペアリング可能なトレーニングデバイスとの自動ペアリングを見合わせる(
図6BN)。
【0254】
いくつかの実施形態では、トレーニング指標を変更するように構成されたユーザインタフェース(例えば、610D)は、第1のアフォーダンス(例えば、621)に関連付けられた身体活動に対応する複数の指標アフォーダンス(例えば、640-1、640-2、640-3、及び640-4)を含む。いくつかの実施形態では、身体活動追跡機能は、身体活動追跡センサ(例えば、トレーニングサポートモジュール142のセンサ)から受信されたデータに対応する指標(例えば、630)を追跡する。いくつかの実施形態では、アフォーダンスのスクロール可能なリスト(例えば、620)内の第1のアフォーダンス(例えば、621)は、最後に選択されたアフォーダンスである。
【0255】
方法700に関して上述した処理(例えば、
図7)の詳細は、類似するやり方で、後述の方法にも適用可能であることに留意されたい。例えば、方法900は、方法700を参照して上述した様々な方法の特性のうちの1つ以上を任意選択的に含む。例えば、方法900は、いくつかの実施形態では、身体活動追跡機能を起動すること、又はトレーニング指標を変更するように構成されたユーザインタフェースを表示することを含んでもよい。簡潔にするために、これらの詳細は、以下で繰り返さない。
【0256】
図8A~
図8Tは、いくつかの実施形態による、身体活動アプリケーション及びオーディオアプリケーションに関連付けられた例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図9の処理を含む後述の処理を説明するために使用される。
【0257】
図8Aは、タッチ感知ディスプレイ802を有するデバイス800を示す。デバイス800は、回転可能入力を受け取ることができる(プッシュ入力も受け取り得る)回転可能入力機構803、プッシュユーザ入力を受け取ることができる入力機構804など、ユーザ入力を受け取る様々な入力機構を含む。いくつかの実施形態では、デバイス800は、デバイス100、デバイス300、デバイス500、又はデバイス600の特徴の一部又は全てを含む。
【0258】
図8Aを参照すると、タッチ感知ディスプレイ802上に表示されるユーザインタフェース810Aは、オーディオアプリケーション上で再生しているオーディオコンテンツを制御するように構成されたオーディオアプリケーション制御ユーザインタフェースである。ユーザインタフェース810Aは、オーディオコンテンツ情報811及びオーディオコンテンツ制御812を含む。例えば、オーディオコンテンツ情報811としては、現在再生しているオーディオコンテンツのタイトル(例えば、「Across the Land」)及びその曲を演奏しているグループの名前(例えば、「Awe Singers」)が挙げられるが、これらに限定されない。オーディオコンテンツ制御812としては、次の曲へのジャンプ、休止/再生、前の曲へのジャンプ、及び音量制御が挙げられるが、これらに限定されない。
【0259】
ユーザ入力815A(例えば、指816によるプッシュ入力)が、回転可能入力機構803で受け取られる(
図8B)。ユーザ入力815Aに応じて、かつ、オーディオコンテンツがオーディオアプリケーション上で再生されている間に、ユーザインタフェース810Bが表示される(
図8C)。ユーザインタフェース810Bは、アプリケーションに関連付けられた複数のアプリケーションアフォーダンス805を含む。例えば、アフォーダンス805-1は、トレーニングアプリケーションに関連付けられ、アフォーダンス805-2は、オーディオコンテンツを現在再生しているオーディオアプリケーションに関連付けられる。
【0260】
ユーザ入力815B(例えば、タップジェスチャ)がアフォーダンス805-1で受け取られる(
図8D)。アフォーダンス805-1でのユーザ入力815Bに応じて、かつ、オーディオコンテンツがオーディオアプリケーション上で再生されている間に、ユーザインタフェース810Cが表示される(
図8E)。ユーザインタフェース810Cは、身体活動のためのそれぞれの身体活動追跡機能に関連付けられたアフォーダンスのスクロール可能なリスト820を含む。例えば、アフォーダンスのスクロール可能なリストは、屋外走行のための身体活動追跡機能に対応するアフォーダンス821と、プール水泳のための身体活動追跡機能に対応するアフォーダンス822と、を含む。アフォーダンスのリスト820は、現在表示されていないが、スクロール入力(例えば、回転機構803の回転)に応じて表示することができる他の身体活動追跡機能に対応する追加のアフォーダンスを含むことに留意されたい。
【0261】
いくつかの実施形態では、アフォーダンスのスクロール可能なリスト820内のアフォーダンスのうちの1つ以上は、それぞれのトレーニング指標変更アフォーダンスを含む。例えば、アフォーダンス821は、トレーニング指標変更アフォーダンス831を含み、アフォーダンス822は、トレーニング指標変更アフォーダンス832を含む。一実施形態では、ユーザインタフェース810Cは、ユーザインタフェース610A(
図6A)と同じである。したがって、ユーザインタフェース810Cは、上述したユーザインタフェース610Aと同じ特徴及び機能を含む。
【0262】
いくつかの実施形態では、オーディオコンテンツがデバイス800上で現在再生されている間に、デバイス800は、外部デバイス(例えば、相手側デバイス890)からトレーニングオーディオ再生リスト設定の有効設定を受信するが、これについては以下で更に詳細に説明する(
図8N~
図8T)。トレーニングオーディオ再生リスト設定が有効である場合、トレーニング再生リストが、トレーニングアフォーダンスの選択に応じて自動的に再生される。一実施形態では、トレーニングオーディオ再生リストは、トレーニング中に再生されるようにユーザによって選択されたオーディオコンテンツのリスト(例えば、曲のリスト)である。
【0263】
ユーザ入力815Cがアフォーダンス821で受け取られる(
図8F)。ユーザ入力815Cに応じて、ユーザインタフェース810Dが表示される(
図8G)。(ユーザインタフェース610Bと同様の)ユーザインタフェース810Dは、アフォーダンス821に関連付けられた身体活動追跡機能によって指標を追跡する前のカウントダウンを表示する。一実施形態では、ユーザインタフェース810Dは、ユーザインタフェース610B(
図6C~
図6F)と同じである。したがって、ユーザインタフェース810Dは、上述したユーザインタフェース610Bと同じ特徴及び機能を含む。
【0264】
カウントダウンの完了に応じて、ユーザインタフェース810Eが表示される(
図8H)。ユーザインタフェース810Eは、身体活動(例えば、屋外走行)中に身体活動追跡機能によって追跡される複数の指標830(例えば、マイル830-1、活動カロリー830-2、マイル平均830-3、及び時間830-4)を表示するように構成される。一実施形態では、ユーザインタフェース810Eは、ユーザインタフェース610C(
図6G~
図6I)と同じである。したがって、ユーザインタフェース810Eは、上述したユーザインタフェース610Cと同じ特徴及び機能を含む。一実施形態では、ユーザインタフェース810Eは、中間のユーザインタフェース810Dの表示なしにユーザ入力815Cに応じて表示される。
【0265】
加えて、ユーザ入力815C(
図8F)に応じて、オーディオアプリケーションは、現在再生している曲(例えば、「Across the Land」)の再生を停止し、トレーニングオーディオ再生リストの再生を開始する。例えば、現在再生している曲(例えば、「Across the Land」)は、トレーニング再生リストに列挙された曲ではない。したがって、現在再生している曲は取り消され、トレーニング再生リスト内の曲の再生に置き換えられる。
【0266】
図8I~
図8Lを参照すると、身体活動追跡機能が実行されており(例えば、屋外走行トレーニングに関連付けられた指標を追跡している)、かつ、オーディオアプリケーションがオーディオコンテンツを再生している間に、ユーザ入力815D(例えば、スワイプジェスチャ)がタッチ感知ディスプレイ802上で受け取られる。ユーザ入力815Dに応じて、ユーザインタフェース810Aが表示される。ユーザインタフェース810Aは、(上述したように)ユーザ入力815Cに応じて、トレーニングオーディオ再生リストの再生が開始されたことから、トレーニングオーディオ再生リストによるオーディオコンテンツを表示する。特に、ユーザインタフェース810Aは、トレーニングオーディオ再生リスト内の「Drill Sergeant」によって演奏される「Feel the Burn」という曲に対応するオーディオコンテンツ情報811を含む。ユーザインタフェース810Aは、現在再生している曲の音量を制御するように構成された音量制御813を含むことに留意されたい。
【0267】
いくつかの実施形態では、設定が有効でない場合、
図8Mに見られるように、現在再生している曲の再生が継続される。
【0268】
図8I~
図8Kを参照すると、ユーザインタフェース810Eは、ページ呼出ドット839-1、839-2、及び839-3を含む。ページ呼出ドットは、連続ページ(又はユーザインタフェース)に対応する。例えば、ページ呼出ドット839-1は、(例えば、ユーザインタフェース610Hと同様の)トレーニング制御ユーザインタフェースに対応し、ページ呼出ドット839-2は、ユーザインタフェース810Eに対応し、ページ呼出ドット839-3は、ユーザインタフェース810Aに対応する。スワイプジェスチャ815Dなどのユーザ入力に応じて、現在表示されているユーザインタフェース810E(
図8I)は、対応する連続ユーザインタフェース810Aの表示に置き換えられる(
図8K)。ユーザインタフェース810Eが表示されると、ページ呼出ドット839-2が強調表示される(
図8I)ことに留意されたい。同様に、ユーザインタフェース810Aが表示されると、ページ呼出ドット839-3が強調表示される(
図8L)。
【0269】
図8N~
図8Tは、デバイス800とペアリングされた相手側デバイス890の実施形態を示す。いくつかの実施形態では、相手側デバイス890は、デバイス100、デバイス300、デバイス500、又はそれらのデバイスの特徴うちの1つ以上を含むデバイスであってもよい。相手側デバイス890は、タッチ感知ディスプレイ891を含む。ユーザインタフェース892Aが、タッチ感知ディスプレイ891上に表示される。相手側デバイス890は、いくつかの実施形態では、デバイス800とペアリングされると、アプリケーションビューを表示し、本明細書に記載されるデバイス800と同じ処理のうちの少なくともいくつかを行うことができる。いくつかの実施形態では、トレーニングオーディオ再生リスト設定(例えば、有効又は無効)が、(上述したように)相手側デバイス890から受信される。
【0270】
図8Nを参照すると、ユーザインタフェース892Aは、それぞれのアプリケーション(例えば、ウォッチアプリケーション、カメラアプリケーション、気象アプリケーション、時計アプリケーション、電話アプリケーション、メッセージアプリケーション、メールアプリケーション、及びブラウザアプリケーション)に関連付けられた複数のアフォーダンス893を含む。一実施形態では、アフォーダンス893-1は、ウォッチアプリケーション(例えば、デバイス800の様々な特徴及び機能を制御するためのウォッチアプリケーション)に関連付けられる。
【0271】
ユーザ入力815Fがアフォーダンス893-1で受け取られる(
図8O)。アフォーダンス893-1でのユーザ入力815Fに応じて、ユーザインタフェース892Bが表示される(
図8P)。ユーザインタフェース892Bは、デバイス情報860(例えば、デバイス890とペアリングされたデバイス800に関連する情報)、文字盤861(例えば、デバイス800上に表示することができる様々な時計盤)、及びデバイス800にインストールされたアプリケーションに対応するアプリケーションアフォーダンスのリスト862を含む。アプリケーションアフォーダンスのリスト862は、いくつかの実施形態では、デバイス800のユーザインタフェース810B上に表示される複数のアプリケーションアフォーダンス805(
図8C)に少なくとも部分的に対応する。アプリケーションアフォーダンスのリスト862は、デバイス800にインストールされたトレーニングアプリケーションに対応するアフォーダンス862-1を含む。
【0272】
ユーザ入力815G(例えば、タップジェスチャ)がアフォーダンス862-1で受け取られる(
図8Q)。アフォーダンス862-1でのユーザ入力815Gに応じて、ユーザインタフェース892Cが表示される(
図8R)。ユーザインタフェース892Cは、デバイス800にインストールされたトレーニングアプリケーションに関連付けられた様々なトレーニングアプリケーション設定を含む。一実施形態では、ユーザインタフェース892Cは、トレーニングオーディオ再生リスト設定870(例えば、「トレーニング再生リスト自動再生」)を含む。
図8Rに示すように、トレーニングオーディオ再生リスト設定870の設定が有効である。したがって、トレーニングオーディオ再生リスト設定870が(デバイス890で)有効である場合、上述したように、アフォーダンスのスクロール可能なリスト820内のアフォーダンス(例えば、アフォーダンス821)の選択に応じて、トレーニングオーディオ再生リストが、(デバイス800で)オーディオアプリケーションによって自動的に再生される。一実施形態では、トレーニングオーディオ再生リスト設定870の設定(例えば、有効設定)は、デバイス890でのデフォルト設定に対応する。別の実施形態では、トレーニングオーディオ再生リスト設定870(例えば、有効設定)の設定は、デバイス890でユーザによって選択された設定に対応する。
【0273】
ユーザインタフェース892Cは、実行自動休止設定871を含む。例えば、実行自動休止設定871が有効であると判定されると、ユーザが所定の時間(例えば、3秒)にわたって走行を停止していると判定された場合に、実行しているトレーニングに関連付けられた指標の追跡が、自動的に休止される。あるいは、実行自動休止設定871が無効であると判定されると、ユーザが所定の時間(例えば、3秒)にわたって走行を停止していると判定された場合に、実行しているトレーニングに関連付けられた指標の追跡が、継続される(自動的に休止されない)。
【0274】
トレーニング再生リスト設定が有効であるときのトレーニングの選択に応じて、デバイス上で再生している曲を自動的に停止し、デバイス上でのトレーニングオーディオ再生リストの再生を開始することにより、現在再生している曲を停止し、トレーニング再生リストの再生を自動的に開始することを、ユーザに同時に可能にさせることによって、デバイスのより多くの制御がユーザに提供される。トレーニング再生リスト設定が有効であるときのトレーニングの選択に応じて、更なるユーザ入力を必要とせずに、デバイス上で再生している曲を自動的に停止し、デバイス上でのトレーニングオーディオ再生リストの再生を開始することにより、(例えば、ユーザが適切な入力を提供することを支援し、デバイスを操作又はそれと対話するときのユーザの間違いを減らすことによって)デバイスの操作性が高められ、ユーザデバイスインタフェースがより効率的になり、それによって加えて、ユーザがデバイスをより素早く、効率的に使用できるようにすることによって、電力使用量が減り、デバイスの電池寿命が向上する。
【0275】
図8Sを参照すると、ユーザ入力815Hが、トレーニングオーディオ再生リスト設定870で受け取られる。ユーザ入力815Hは、トレーニングオーディオ再生リスト設定を有効から無効に(又は無効から有効に)切り替えるためのものである。
図8Tを参照すると、ユーザ入力815Hに応じて、トレーニングオーディオ再生リスト設定870が無効に設定される。したがって、トレーニングオーディオ再生リスト設定870が(デバイス890で)無効である場合、上述したように、トレーニングオーディオ再生リストは、アフォーダンスのスクロール可能なリスト820内のアフォーダンス(例えば、アフォーダンス821)の選択に応じて、(デバイス800で)オーディオアプリケーションによって自動的には再生されない。例えば、トレーニングオーディオ再生リスト設定870が(デバイス890で)無効である場合、上述したように、アフォーダンスのスクロール可能なリスト820内のアフォーダンス(例えば、アフォーダンス821)の選択に応じて、(例えば、デバイス800で)オーディオアプリケーションによって現在再生している曲(例えば、「Across the Land」)が中断なしに再生される。一実施形態では、トレーニングオーディオ再生リスト設定870の設定(例えば、無効設定)は、デバイス890でのデフォルト設定に対応する。
【0276】
図9は、トレーニング再生リスト設定に基づいて、トレーニングアフォーダンスの選択に応じてトレーニング再生リストを自動的に再生するための方法を示すフロー図である。方法900は、1つ以上のプロセッサ及びメモリを有するデバイス(例えば、100、300、500、600、及び800)で実行される。方法900のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【0277】
後述するように、方法900は、とりわけ、トレーニング再生リスト設定に基づいて、トレーニングアフォーダンスの選択に応じてトレーニング再生リストを自動的に再生するための直感的な方法を提供する。本方法は、トレーニング再生リスト設定に基づいてトレーニング再生リストを自動的に再生することによって、ユーザの認識的負担を減らすことにより、より効率的なヒューマンマシンインタフェースを作成する。バッテリ動作式のコンピューティングデバイスの場合、ユーザがトレーニングのリストからトレーニングを選択し、身体活動追跡機能をより速く、より効率的に起動することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0278】
ブロック910で、オーディオアプリケーションがオーディオコンテンツ(例えば、「Across the Land」)を再生している間に、デバイス800は、身体活動に関連付けられたアフォーダンスのスクロール可能なリスト(例えば、820)を表示する。
【0279】
ブロック920で、オーディオアプリケーションがオーディオコンテンツを再生している間に、アフォーダンスのスクロール可能なリスト内のアフォーダンス(例えば、821)で、ユーザ入力(例えば、815C)を受け取る。
【0280】
ブロック930で、アフォーダンスでユーザ入力を受け取ったことに応じて、選択されたアフォーダンスに関連付けられた身体活動追跡機能を起動し、トレーニングオーディオ再生リスト設定が有効である(例えば、有効設定がデバイス890から受信される)かどうかを判定する。
【0281】
ブロック940で、トレーニングオーディオ再生リスト設定が有効であるとの判定に従って、デバイス上で現在再生しているオーディオコンテンツ(例えば、「Across the Land」)を停止し、トレーニングオーディオ再生リストの再生(例えば、「Feel the Burn」の再生)をデバイス(例えば、デバイス800)上で開始する。ブロック950で、トレーニングオーディオ再生リスト設定が無効である(例えば、無効設定がデバイス890から受信される)との判定に従って、デバイス上で現在再生しているオーディオコンテンツ(例えば、「Across the Land」)を継続する。
【0282】
いくつかの実施形態では、身体活動追跡機能(例えば、指標830の追跡)が実行されており、かつ、オーディオアプリケーションがオーディオコンテンツを再生している(例えば、「Across the Land」が再生されている)間に、オーディオアプリケーション制御ユーザインタフェース(例えば、810A)を表示せよとの要求に対応するユーザ入力(例えば、815D)が受け取られ、ユーザ入力(例えば、815D)に応じて、オーディオコンテンツを再生しているオーディオアプリケーションのオーディオアプリケーション制御ユーザインタフェース(例えば、810A)が表示される。
【0283】
いくつかの実施形態では、アフォーダンス(例えば、821)でユーザ入力(例えば、815C)を受け取る前に、トレーニングオーディオ再生リスト設定の設定(例えば、有効又は無効)が、外部デバイス(例えば、890)から受信される。
【0284】
方法900に関して上述した処理(例えば、
図9)の詳細は、類似するやり方で、後述の方法にも適用可能であることに留意されたい。例えば、方法900は、方法1300を参照して後述する様々な方法の特性のうちの1つ以上を任意選択的に含む。例えば、方法900における身体活動追跡機能による指標の追跡は、方法1300において説明するように、心拍数情報を追跡してもよい。簡潔にするために、これらの詳細は、以下で繰り返さない。
【0285】
図10A~
図10Nは、いくつかの実施形態による、メッセージングアプリケーションに関連付けられた例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図11の処理を含む後述の処理を説明するために使用される。
【0286】
図10Aは、タッチ感知ディスプレイ1002を有するデバイス1000を示す。デバイス1000は、回転可能入力を受け取ることができる(プッシュ入力も受け得る)回転可能入力機構1003、プッシュユーザ入力を受け取ることができる入力機構1004など、ユーザ入力を受け取る様々な入力機構を含む。いくつかの実施形態では、デバイス1000は、デバイス100、デバイス300、デバイス500、デバイス600、又はデバイス800の特徴の一部又は全てを含む。
【0287】
図10Aは、ユーザインタフェース1010Aを含む。ユーザインタフェース1010Aは、外部デバイスから受信したメッセージ1020(例えば、テキストメッセージ又は電子メール)を含む。メッセージ1020は、トレーニング情報を含む。例えば、トレーニング情報は、人物を特定する情報1020-1(例えば、「Johnはトレーニング完了した!」)、トレーニングの種類1020-2(例えば、「屋外走行」)、及びトレーニング指標1020-3(例えば、3.00マイル、活動カロリー326、及び合計カロリー351)を含む。
【0288】
いくつかの実施形態では、(メッセージ1020を送信した)外部デバイスは、デバイス1000(又はデバイス100、デバイス300、又はデバイス500)の特徴の一部又は全てを含む。一実施形態では、外部デバイスは、別の外部デバイスの相手側デバイスであるデバイス(例えば、上述した相手側デバイス690)である。一実施形態では、メッセージ1020は、外部デバイス上のトレーニングアプリケーション(又はトレーニング追跡アプリケーション)によって作成され、トレーニングアプリケーションは、メッセージ1020に含まれるトレーニング情報を生成する。更に、一実施形態では、外部デバイス上のトレーニングアプリケーションは、本明細書に記載されるトレーニングアプリケーション(例えば、少なくとも
図6Aに示したようなトレーニングアプリケーション)の機能の一部又は全てを含む。
【0289】
ユーザインタフェース1010Aは、(例えば、ユーザが返信メッセージを生成することを可能にするように構成された)返信アフォーダンス1022-1、(例えば、外部デバイスからの後続のメッセージをミュートするように構成された)ミュートアフォーダンス1022-1、及び(例えば、返信メッセージを送信せずにメッセージ1020を破棄するように構成された)破棄アフォーダンス1022-3も含む。
【0290】
ユーザ入力1015Aが返信アフォーダンス1022-1で受け取られる(
図10B)。
図10C~
図10Dを参照すると、返信アフォーダンス1022-1でのユーザ入力1015Aに応じて、かつ、メッセージ1020がトレーニング情報を含むとの判定に従って、ユーザインタフェース1010Bが表示される。ユーザインタフェース1010Bは、ユーザがメッセージ1020に対する返信メッセージを作成することを可能にするように構成される。ユーザインタフェース1010Bは、トレーニング情報を含むメッセージ1020に対応する既定の応答のリスト1030を含む。既定の応答1030は、いくつかの実施形態では、既定の応答1030-1(例えば、「どうやってうまくなったの」)、既定の応答1030-2(例えば、「#ゴール」)、既定の応答1030-3(例えば、「間違いなく、あなたが一番」)、既定の応答1030-4(例えば、「あなたの秘密は何?」)、既定の応答1030-5(例えば、「こんにちは!」)、既定の応答1030-6(例えば、「どうしたの?」)、既定の応答1030-7(例えば、「途中です」)、及び既定の応答1030-8(例えば、「オーケイ」)を含む。
【0291】
加えて、ユーザインタフェース1010Bは、メッセージ1020に対する音声返信をユーザが記録することを可能にするように構成されたアフォーダンス1031と、メッセージ1020に対する返信メッセージのための絵文字をユーザが選択することを可能にするように構成されたアフォーダンス1032と、メッセージ1020に対する手書きの返信メッセージ(又はステッカー)をユーザが送信することを可能にするように構成されたアフォーダンス1033と、メッセージ1020に対する(手書き入力から生成されたテキストを含む)返信メッセージをユーザが送信することを可能にするように構成されたアフォーダンス1034と、を含む。
【0292】
一実施形態では、メッセージ1020(例えば、「やあ、Jane」を含むテキスト)がトレーニング情報を含まないとの判定に従って、メッセージはデバイス1000に表示される。しかしながら、既定の応答1030はデバイス1000に表示されない。
【0293】
図10Dに示すように、ユーザ入力1015Bじゃ、既定の応答1030-2で受け取られる。既定の応答1030-2でのユーザ入力1015Bに応じて、メッセージ1020に対する返信メッセージ(例えば、
図10Eの返信メッセージ1050)が作成される。一実施形態では、既定の応答1030-2でユーザ入力1015Bを受け取った後に、返信メッセージの作成をユーザに促す中間のユーザインタフェースが表示される。返信メッセージを作成するためのユーザ入力に応じて、返信メッセージが作成される。
【0294】
図10E~
図10Fは、相手側デバイス1065(例えば、デバイス1000の相手側デバイス)及び外部デバイス1090に表示されたユーザインタフェース1010C(例えば、テキストメッセージユーザインタフェース)を示す。
図10Eを参照すると、返信メッセージ1050が相手側デバイス1065に表示されている。一実施形態では、返信メッセージ1050はデバイス1000に表示される。返信メッセージ1050は、選択された既定のメッセージ1030-2(例えば、デバイス1000で選択された「#ゴール」、
図10C)と、人物を特定する情報1020-1(例えば、「John」)、トレーニングの種類1020-2(例えば、「屋外走行」)及びトレーニング指標1020-3(例えば、3.00マイル)などのトレーニング情報と、を含む。相手側デバイス1065では、返信メッセージ1050は、(外部デバイス1090からの)他のメッセージとインラインで表示される。
図10Fを参照すると、返信メッセージ1050が、外部デバイス1090で受信され、外部デバイス1090に表示される。外部デバイス1090では、返信メッセージ1050は、(相手側デバイス1065からの)他のメッセージとインラインで表示される。
【0295】
選択された既定の応答及び受信したメッセージによるトレーニング情報を含む返信メッセージを生成することにより、ユーザは、(受信したメッセージによる)トレーニング情報を自動的に含む返信メッセージを素早く作成することができ、最小限のユーザ入力で返信メッセージを生成することができるようになる。操作を行うために必要な入力の回数が減ることにより、(例えば、ユーザが適切な入力を提供することを支援し、デバイスを操作又はそれと対話するときのユーザの間違いを減らすことによって)デバイスの操作性が高められ、ユーザデバイスインタフェースがより効率的になり、それによって加えて、ユーザがデバイスをより素早く、効率的に使用できるようにすることによって、電力使用量が減り、デバイスの電池寿命が向上する。
【0296】
図10Gは、デバイス1000上に表示されたユーザインタフェース1010Cを示す。ユーザインタフェース1010Cは、人物を特定する情報1020-1(例えば、「Johnはトレーニングを完了した!」)、選択された既定のメッセージ1030-2(例えば、「#ゴール」)、及び返信メッセージ配信表示1051(例えば、「配信済み」)を含む。返信メッセージ配信表示1051は、(メッセージ1020に対する)返信メッセージ1050が外部デバイス1090に送信されたことを示す。
【0297】
図10Hはユーザインタフェース1010Aを含む。ユーザインタフェース1010Aは、外部デバイスから受信したメッセージ1040(例えば、テキストメッセージ又は電子メール)を含む。メッセージ1040はトレーニング情報を含む。例えば、トレーニング情報は、人物を特定する情報1040-1(例えば、「Johnは達成した」)と、トレーニングの種類1040-2(例えば、「屋外走行」)と、外部デバイスのユーザ(例えば、John)によって達成されたトレーニング達成を示す達成ステッカー1040-3と、を含む。一実施形態では、メッセージ1040は、外部デバイス上のトレーニングアプリケーションによって作成され、トレーニングアプリケーションは、メッセージ1040に含まれるトレーニング情報を生成する。更に、一実施形態では、外部デバイス上のトレーニングアプリケーションは、本明細書に記載されるトレーニングアプリケーション(例えば、少なくとも
図6Aに示したようなトレーニングアプリケーション)の機能の一部又は全てを含む。
【0298】
ユーザインタフェース1010Aは、(例えば、ユーザが返信メッセージを生成することを可能にするように構成された)返信アフォーダンス1042-1、(例えば、外部デバイスからの後続のメッセージをミュートするように構成された)ミュートアフォーダンス1042-1、及び(例えば、返信メッセージを送信せずにメッセージ1020を破棄するように構成された)破棄アフォーダンス1042-3も含む。
【0299】
ユーザ入力1015Cが返信アフォーダンス1042-1で受け取られる(
図10I)。
図10J~
図10Kを参照すると、返信アフォーダンス1042-1でのユーザ入力1015Cに応じて、かつ、メッセージ1040がトレーニング情報を含むとの判定に従って、ユーザインタフェース1010Bが表示される。ユーザインタフェース1010Bは、ユーザがメッセージ1040に対する返信メッセージを作成することを可能にするように構成される。ユーザインタフェース1010Bは、トレーニング情報を含むメッセージ1040に対応する既定の応答のリスト1043を含む。既定の応答1043は、既定の応答1043-1(例えば、「あなたは調子がいいですね!」)、既定の応答1043-2(例えば、「信じられない」)、既定の応答1043-3(例えば、「がんばれ!」)、既定の応答1043-4(例えば、「あなたは私をやる気にさせる」)、既定の応答1043-5(例えば、「こんにちは!」)、既定の応答1043-6(例えば、「どうしたの?」)、既定の応答1043-7(例えば、「途中です」)、及び既定の応答1043-8(例えば、「オーケイ」)を含む。
【0300】
加えて、ユーザインタフェース1010Bは、メッセージ1040に対する音声返信をユーザが記録することを可能にするように構成されたアフォーダンス1031と、メッセージ1040に対する返信メッセージのための絵文字をユーザが選択することを可能にするように構成されたアフォーダンス1032と、メッセージ1040に対する手書きの返信メッセージ(又はステッカー)をユーザが送信することを可能にするように構成されたアフォーダンス1033と、メッセージ1040に対する(手書き入力から生成されたテキストを含む)返信メッセージをユーザが送信することを可能にするように構成されたアフォーダンス1034と、を含む。
【0301】
一実施形態では、メッセージ1040(例えば、「やあ、Jane」を含むテキスト)がトレーニング情報を含まないとの判定に従って、メッセージはデバイス1000に表示される。しかしながら、既定の応答1043は、デバイス1000に表示されない。
【0302】
ユーザ入力1015Dが、既定の応答1043-4で受け取られる。既定の応答1043-4でのユーザ入力1015Dに応じて、メッセージ1040に対する返信メッセージ(例えば、
図10Lの返信メッセージ1060)が作成される。一実施形態では、既定の応答1043-4でユーザ入力1015Dを受け取った後に、返信メッセージの作成をユーザに促す中間のユーザインタフェースが表示される。返信メッセージを作成するためのユーザ入力に応じて、メッセージ1040に対する返信メッセージが作成される。
【0303】
図10L~
図10Mは、相手側デバイス1065(例えば、デバイス1000の相手側デバイス)及び外部デバイス1090に表示されたユーザインタフェース1010C(例えば、テキストメッセージユーザインタフェース)を示す。
図10Lを参照すると、返信メッセージ1060が、相手側デバイス1065に表示されている。一実施形態では、返信メッセージ1060はデバイス1000に表示される。返信メッセージ1060は、選択された既定のメッセージ1043-4(例えば、デバイス1000で選択された「あなたは私をやる気にさせる」、
図10K)と、人物を特定する情報1040-1(例えば、「Johnは達成した」)及び達成ステッカー1040-3などのトレーニング情報と、を含む。相手側デバイス1065では、返信メッセージ1060は、(外部デバイス1090からの)他のメッセージとインラインで表示される。
図10Mを参照すると、返信メッセージ1060が、外部デバイス1090で受信され、外部デバイス1090に表示される。外部デバイス1090では、返信メッセージ1060は、(相手側デバイス1065からの)他のメッセージとインラインで表示される。
【0304】
図10Nは、デバイス1000上に表示されたユーザインタフェース1010Cを示す。ユーザインタフェース1010Cは、人物を特定する情報1040-1(例えば、「Johnは達成した」)、選択された既定のメッセージ1043-4(例えば、「あなたは私をやる気にさせる」)、及び返信メッセージ配信表示1051(例えば、「配信済み」)を含む。返信メッセージ配信表示1051は、(メッセージ1020に対する)返信メッセージ1060が外部デバイス1090に送信されたことを示す。
【0305】
図11は、選択された既定の応答及びトレーニング情報を含む返信メッセージを作成するための方法を示すフロー図である。方法1100は、1つ以上のプロセッサ及びメモリを有するデバイス(例えば、100、300、500、600、800、又は1000)で実行される。方法1100のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【0306】
後述するように、方法1100は、とりわけ、ユーザが(受信したメッセージによる)トレーニング情報を自動的に含む返信メッセージを素早く作成することを実現する直感的な方法を提供し、ユーザが最小限のユーザ入力で返信メッセージを生成することを可能にする。本方法は、受信したメッセージによるトレーニング情報を返信メッセージに自動的に含めることにより、ユーザの認識的負担を減らす。バッテリ動作式のコンピューティングデバイスの場合、ユーザがトレーニングのリストからトレーニングを選択し、身体活動追跡機能をより速く、より効率的に起動することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0307】
ブロック1110で、メッセージ(例えば、1020)をデバイス(例えば、1000)で外部デバイス(例えば、1090)から受信する。
【0308】
ブロック1120で、メッセージ(例えば、1020)がトレーニング情報(例えば、1020-1、1020-2、又は1020-3)を含むとの判定に従って、受信したメッセージに対する1つ以上の既定の応答(例えば、1030)を表示する。
【0309】
ブロック1130で、1つ以上の既定の応答のうちの既定の応答(例えば、1030-2)の選択に対応するユーザ入力(例えば、1015B)を受け取る。
【0310】
ユーザ入力(例えば、1015B)を受け取った後に、ブロック1140で、選択された既定の応答(例えば、1030-2)及びトレーニング情報(例えば、1020-1、1020-2、又は1020-3)を含む返信メッセージ(例えば、1050)を作成する。
【0311】
いくつかの実施形態では、メッセージ(例えば、1020)は、デバイス(例えば、1000)に表示される。いくつかの実施形態では、作成したメッセージ(例えば、1050)は、既定の応答(例えば、1030-2)を選択するためのユーザ入力(例えば、1015B)に応じて外部デバイス(例えば、1090)に送信される。いくつかの実施形態では、メッセージ(例えば、1020)がトレーニング情報を含まないとの判定に従って、メッセージは、1つ以上の既定の応答(例えば、1030)を続いて表示せずに表示される(例えば、デバイス1000に表示される)。
【0312】
いくつかの実施形態では、トレーニング情報は、人物を特定する情報(例えば、1020-1)、トレーニング指標(例えば、1020-3)、トレーニングの種類(例えば、1020-2)、又は達成ステッカー(例えば、1040-3)を含む。
【0313】
方法1100に関して上述した処理(例えば、
図11)の詳細は、類似するやり方で、上述した方法にも適用可能であることに留意されたい。例えば、方法1100は、方法700を参照して上述した様々な方法の特性のうちの1つ以上を任意選択的に含む。例えば、方法1100は、方法700に関して説明したトレーニング指標と同様のトレーニング指標を含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
【0314】
図12A~
図12Mは、いくつかの実施形態による、心拍数追跡アプリケーションに関連付けられた例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図13の処理を含む後述の処理を説明するために使用される。
【0315】
図12Aは、タッチ感知ディスプレイ1202を有するデバイス1200を示す。デバイス1200は、回転可能入力を受け取ることができる(プッシュ入力も受け取り得る)回転可能入力機構1203、プッシュユーザ入力を受け取ることができる入力機構1204など、ユーザ入力を受け取る様々な入力機構を含む。いくつかの実施形態では、デバイス1200は、デバイス100、デバイス300、デバイス500、デバイス600、デバイス800、又はデバイス1000の特徴の一部又は全てを含む。
【0316】
図12A~
図12Bを参照すると、心拍数アプリケーションのユーザインタフェース1210Aがタッチ感知ディスプレイ1202上に表示されている。ユーザインタフェース1210Aは、アフォーダンスのリスト1220を含む。アフォーダンスのリスト1220は、(デバイス1200のユーザの)現在の心拍数に関連付けられたアフォーダンス1221と、身体活動(例えば、屋外走行)中の心拍数に関連付けられたアフォーダンス1222と、呼吸アプリケーションの呼吸セッション中の心拍数に関連付けられたアフォーダンス1223と、を含む。
【0317】
アフォーダンスのリスト1220内の1つ以上のアフォーダンスは、アフォーダンスに関連付けられた身体活動を特定する。例えば、アフォーダンス1221は、活動1221-1(例えば、現在の心拍数に関連付けられたユーザの活動)を特定し、アフォーダンス1222は、活動1222-1(例えば、屋外走行)を特定し、アフォーダンス1223は、活動1223-1(例えば、呼吸セッション)を特定する。
【0318】
アフォーダンスのリスト1220内の1つ以上のアフォーダンスは、身体活動に関連付けられた心拍数情報を特定する。例えば、アフォーダンス1221は、心拍数情報1221-2(例ば、75BPM、69安静時)を特定する。アフォーダンス1222は、心拍数情報1222-2(例えば、平均心拍数138BPM)を特定し、アフォーダンス1223は、心拍数情報1223-2(例えば、60BPM)を特定する。一実施形態では、心拍数情報は、デバイス1200の身体活動追跡センサによって測定される。
【0319】
身体活動及び関連する心拍数情報を特定するアフォーダンスのリストを表示することにより、ユーザは、身体活動及び関連する心拍数情報を素早く見て、身体活動に関連付けられた追加の心拍数情報を見るためのアフォーダンスを選択することができる。追加の心拍数情報を見るために必要な入力の回数を減らすことにより、(例えば、ユーザが適切な入力を提供することを支援し、デバイスを操作又はそれと対話するときのユーザの間違いを減らすことによって)デバイスの操作性が高められ、ユーザデバイスインタフェースがより効率的になり、それによって加えて、ユーザがデバイスをより素早く、効率的に使用できるようにすることによって、電力使用量が減り、デバイスの電池寿命が向上する。
【0320】
ユーザ入力1215Aがアフォーダンス1221で受け取られる(
図12B)。アフォーダンス1221でのユーザ入力1215Aに応じて、ユーザインタフェース1210Bが表示される(
図12C)。ユーザインタフェース1210Bはグラフ1230を含む。グラフ1230は、ある時間期間にわたるユーザの現在の心拍数(例えば、今日の心拍数)のグラフである。ユーザインタフェース1210Bは、活動1221-1(例えば、現在の心拍数に関連付けられたユーザの活動)及び心拍数情報1221-2(例えば、75BPM、69安静時)も含む。
【0321】
グラフ1230は、様々な身体活動の心拍数に対応する身体活動点を含む。例えば、グラフ1230は、現在の心拍数に対応する身体活動点1230-1と、屋外走行に対応する身体活動点1230-2と、呼吸セッションに対応する身体活動点1230-3と、を含む。
図12Cに示すように、現在の心拍数に対応する身体活動点1230-1は、現在の心拍数情報が選択されたアフォーダンス1221に対応するため、強調表示されている。
【0322】
ユーザ入力1215B(例えば、回転入力)が、回転可能入力機構1203で受け取られる(
図12D)。回転可能入力機構1203でのユーザ入力1215Bに応じて、活動1222-1(例えば、屋外走行)及び対応する指標(例えば、高BPM142、平均BPM138)が表示される(
図12E)。加えて、屋外走行に対応する身体活動点1230-2が強調表示される。
【0323】
回転可能入力機構1203での更なるユーザ入力1215Bに応じて、活動1222-3(例えば、呼吸セッション)及び対応する指標(例えば、60BPM)が表示される(
図12F)。加えて、呼吸セッションに対応する身体活動点1230-3が強調表示される。
【0324】
図12G~
図12Hを参照すると、ユーザ入力1215Cがアフォーダンス1231で受け取られる。アフォーダンス1231でのユーザ入力1215Cに応じて、以前のユーザインタフェース1210Aが表示される(
図12H)。
【0325】
ユーザ入力1215Dがアフォーダンス1222で受け取られる(
図12H)。アフォーダンス1222でのユーザ入力1215Dに応じて、ユーザインタフェース1210Bが表示される(
図12I)。ユーザインタフェース1210Bはグラフ1240を含む。グラフ1240は、屋外走行の継続時間にわたる屋外走行中のユーザの心拍数のグラフである。ユーザインタフェース1210Bは、活動1221-1(例えば、屋外走行)及び対応する指標(例えば、高BPM142及び平均BPM116)も含む。グラフ1240は、屋外走行の継続時間にわたる平均心拍数1240-1(例えば、116BPM)も含む。
【0326】
いくつかの実施形態では、ユーザ入力(例えば、タップジェスチャ)が、タッチ感知ディスプレイ1202上で受け取られる(
図12I)。タッチ感知ディスプレイ1202上でのユーザ入力に応じて、ユーザインタフェース1210Bは、グラフ1245を表示する。グラフ1245は、身体活動(例えば、屋外走行)の完了後の回復期間(又はクールダウン期間)中のユーザの心拍数のグラフである。例えば、グラフ1245は、屋外走行後の第1の継続時間での心拍数情報1245-1(例えば、屋外走行の1分後で98BPM)と、屋外走行後の第2の継続時間での心拍数情報1245-2(例えば、屋外走行の2分後で74BPM)と、屋外走行後の第3の継続時間での心拍数情報1245-3(例えば、屋外走行の3分後で68BPM)と、を含む。加えて、グラフ1245は、心拍数情報1245-1(例えば、98BPM)に対応する第1の心拍数点1246-1と、心拍数情報1245-2(例えば、74BPM)に対応する第2の心拍数点1246-2と、心拍数情報1245-3(例えば、68BPM)に対応する第3の心拍数点1246-3と、を含む。
【0327】
図12K~
図12Lを参照すると、ユーザ入力1215Eがアフォーダンス1231で受け取られる。アフォーダンス1231でのユーザ入力1215Eに応じて、以前のユーザインタフェース1210Aが表示される(
図12L)。
【0328】
ユーザ入力1215Fがアフォーダンス1223で受け取られる(
図12L)。アフォーダンス1223でのユーザ入力1215Fに応じて、ユーザインタフェース1210Bが表示される(
図12M)。ユーザインタフェース1210Bはグラフ1250を含む。グラフ1250は、呼吸セッションの継続時間にわたる呼吸セッション中のユーザの心拍数のグラフである。ユーザインタフェース1210Bは、活動1223-1(例えば、呼吸セッション)と、呼吸セッションに関連付けられた心拍数情報1223-2(例えば、60BPM)と、を含む。グラフ1250は、呼吸セッションの継続時間にわたる平均心拍数1250-1を含む。
【0329】
図13は、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリストを表示するための方法を示すフロー図である。方法1300は、1つ以上のプロセッサ及びメモリを有するデバイス(例えば、100、300、500、600、800、1000、又は1200)で実行される。方法1300のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【0330】
後述するように、方法1300は、とりわけ、追加の心拍数情報を見るアフォーダンスを選択するための直感的な方法を提供する。本方法は、ユーザが複数の身体活動及び関連する心拍数情報を素早く見ることを可能にすることにより、ユーザの認識的負担を減らす。バッテリ動作式のコンピューティングデバイスの場合、ユーザが複数の身体活動及び関連付けられた心拍数情報をより速く、より効率的に見ることを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0331】
ブロック1310で、心拍数情報に関連付けられたアフォーダンスのスクロール可能なリスト(例えば、1220)が表示される。アフォーダンスのスクロール可能なリストは、少なくとも第1のアフォーダンス(例えば、1221)及び第2のアフォーダンス(例えば、1222)を含む。第1のアフォーダンス(例えば、1221)は、第1の身体活動(例えば、1221-1)、及び第1の心拍数情報(例えば、1221-2)を特定し、第1の心拍数情報は、身体活動追跡センサによって測定される。第2のアフォーダンス(例えば、1222)は、第2の身体活動(例えば、1222-1)、及び第2の心拍数情報(例えば、1222-2)を特定し、第2の心拍数情報は、身体活動追跡センサによって測定される。第2の心拍数情報(例えば、1222-2)は、第1の心拍数情報(例えば、1221-2)とは異なる。
【0332】
ブロック1320で、ユーザ入力(例えば、1215A)を受け取る。
【0333】
ブロック1330で、ユーザ入力が第1のアフォーダンス(例えば、1221)に対応するとの判定に従って、追加の第1の心拍数情報(例えば、1230)を表示する。
【0334】
ブロック1340で、ユーザ入力が第2のアフォーダンスに対応するとの判定に従って、追加の第2の心拍数情報(例えば、1240)を表示し、追加の第2の心拍数情報(例えば、1240)は、追加の第1の心拍数情報(例えば、1230)とは異なる。
【0335】
いくつかの実施形態では、追加の第1の心拍数情報又は追加の第2の心拍数情報は、時間にわたる心拍数のグラフ(例えば、1240)、時間にわたる平均心拍数のグラフ(例えば、1240-1)、時間にわたる呼吸心拍数のグラフ(例えば、1250)、所定の時間にわたる現在の心拍数のグラフ(例えば、1230)、時間にわたるトレーニング心拍数のグラフ(例えば、1240)、又は所定の時間期間にわたるトレーニング完了後の心拍数のグラフ(例えば、1245)を含む。一実施形態では、追加の第1の心拍数情報は、第1の心拍数情報(例えば、1210B)と同時に表示される。
【0336】
方法1300に関して上述した処理(例えば、
図13)の詳細は、類似するやり方で、後述の方法にも適用可能であることに留意されたい。例えば、方法1300は、方法1500を参照して後述する様々な方法の特性のうちの1つ以上を任意選択的に含む。例えば、方法1300は、いくつかの実施形態では、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数アフォーダンスを表示することを含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
【0337】
図14A~
図14Oは、いくつかの実施形態による、心拍数追跡アプリケーションに関連付けられた例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図15の処理を含む後述の処理を説明するために使用される。
【0338】
図14Aは、タッチ感知ディスプレイ1402を有するデバイス1400を示す。デバイス1400は、回転可能入力を受け取ることができる(プッシュ入力も受け取り得る)回転可能入力機構1403、プッシュユーザ入力を受け取ることができる入力機構1404などの、ユーザ入力を受け取る様々な入力機構を含む。いくつかの実施形態では、デバイス1400は、デバイス100、デバイス300、デバイス500、デバイス600、デバイス800、デバイス1000、又はデバイス1200の特徴の一部又は全てを含む。
【0339】
図14Aを参照すると、ユーザインタフェース1410Aが、タッチ感知ディスプレイ1402上に表示されている。ユーザインタフェース1410Aは、心拍数情報1420(例えば、75BPM、2分前)を含む。心拍数情報1420は、デバイス1400のユーザの現在の心拍数である。ユーザインタフェース1410Aは、それぞれのアプリケーションに関連付けられた1つ以上のアフォーダンス(例えば、トレーニングアプリケーションに関連付けられたアフォーダンス1421、及び活動追跡アプリケーションに関連付けられたアフォーダンス1422)を含む。加えて、ユーザインタフェース1410Aは、時刻、日付、温度などを含む。
【0340】
心拍数情報1420に対応するユーザ入力1415Aが、タッチ感知ディスプレイ1402で受け取られる(
図14B)。タッチ感知ディスプレイ1402でのユーザ入力1415Aに応じて、ユーザインタフェース1415Bが表示される(
図14C)。ユーザインタフェース1410Bは、いくつかの実施形態では、上述したユーザインタフェース1210A(
図12A)と同様である。ユーザインタフェース1410Bは、デバイス1400のユーザの現在の心拍数に関連付けられたアフォーダンス1421を含む。アフォーダンス1421は、身体活動1421-1(例えば、現在の心拍数に関連付けられたユーザの現在の活動)、及び心拍数情報1421-2(例えば、(現在の時刻の)2分前に測定された75BPM)を特定する。
【0341】
デバイス1400の身体活動追跡センサから受信されたデータに対応する心拍数データ(例えば、ユーザの現在の心拍数)を追跡している間に、心拍数データが心拍数警告基準を満たす(例えば、追跡された心拍数データが不整脈である)と判定される。心拍数データが心拍数警告基準を満たすとの判定(例えば、追跡された心拍数データが不整脈であるとの判定)に応じて、ユーザインタフェース1410Cが表示される(
図14D)。ユーザインタフェース1410Cは、ユーザの追跡された心拍数データが心拍数警告基準を満たすことをユーザに警告する心拍数警告アフォーダンス1430(例えば、「心臓健康状態、不整脈の可能性を検出しました」)を含む。
【0342】
一実施形態では、心拍数警告基準は、心拍数閾値を超える心拍数に基づく基準を含む。例えば、瞬間心拍数が、所定の心拍数閾値(例えば、心拍数が100BPMを上回る、又は60BPM未満の心拍数)を超え、所定の心拍数閾値を超えることは不整脈を示す。2つの連続する心拍数間の拍動間隔を測定することにより、瞬間心拍数を判定してもよい。瞬間心拍数は、(連続する心拍間の)単一の間隔に基づく。瞬間心拍数は、毎分拍動に変換されてもよく、したがって、そのような瞬間心拍数は、連続する拍動(間隔)の間で異なることがある。
【0343】
一実施形態では、心拍数警告基準は、心拍数パターンが心拍数警告パターンと一致するときに満たされる基準を含む。例えば、瞬間心拍数のパターン(例えば、連続する拍動間の不規則な瞬間心拍数)が、不整脈を示す心拍数警告パターンと一致する。
【0344】
ユーザの追跡された心臓情報がユーザが不整脈を示し得ると判定されたときに、心拍数警告アイコンを表示することにより、医療専門家によって診断されるべき心臓状態であり得ることがユーザに即座に警告される。更なるユーザ入力を必要とせずに、条件のセットが満たされたときに操作を行うことにより、(例えば、ユーザが適切な入力を提供することを支援し、デバイスを操作又はそれと対話するときのユーザの間違いを減らすことによって)デバイスの操作性が高められ、ユーザデバイスインタフェースがより効率的になり、それによって加えて、ユーザがデバイスをより素早く、効率的に使用できるようにすることによって、電力使用量が減り、デバイスの電池寿命が向上する。
【0345】
ユーザ入力1415Bが心拍数警告アフォーダンス1430で受け取られる(
図14D)。心拍数警告アフォーダンス1430でユーザ入力1415Bを受け取ったことに応じて、ユーザインタフェース1410Dが表示される(
図14E)。ユーザインタフェース1410Dは、心拍数データに関連付けられた更なる詳細に、デバイス1400の相手側デバイスでアクセスし得ることをユーザに教える情報を提供する。
【0346】
図14F~
図14Oは、デバイス1400とペアリングされた相手側デバイス1490を示す。相手側デバイス1490はタッチ感知ディスプレイ1491を含む。相手側デバイス1490は、いくつかの実施形態では、デバイス1400とペアリングされると、アプリケーションビューを表示し、本明細書に記載されるように、デバイス1400と同じ処理のうちの少なくともいくつかを行うことができる。
【0347】
図14Fを参照すると、ユーザインタフェース1492Aは、それぞれのアプリケーション(例えば、ウォッチアプリケーション、カメラアプリケーション、気象アプリケーション、時計アプリケーション、及び健康アプリケーション)に関連付けられたアフォーダンスのリスト1493を含む。アフォーダンス1493-1は、健康アプリケーションに関連付けられる。健康アプリケーションは、以下で更に詳細に説明する心拍数データを表示する。加えて、いくつかの実施形態では、相手側デバイス1490上の健康アプリケーションは、デバイス1400上の対応する健康アプリケーションの様々な特徴及び機能を制御するように構成される。
【0348】
ユーザ入力1415Cが、健康アプリケーションに関連付けられたアフォーダンス1493-1で受け取られる(
図14G)。ユーザ入力1415Cに応じて、ユーザインタフェース1492Bが表示される(
図14H)。ユーザインタフェース1492Bは、健康データに関連付けられた様々なアフォーダンス1494を含む。例えば、ユーザインタフェース1492Bは、活動データに関連付けられたアフォーダンス1494-1と、心臓健康状態データに関連付けられたアフォーダンス1494-2と、マインドフルネスデータに関連付けられたアフォーダンス1494-3と、栄養データに関連付けられたアフォーダンス1494-4と、睡眠データに関連付けられたアフォーダンス1494-5と、を含む。
【0349】
ユーザ入力1415Dがアフォーダンス1494-2で受け取られる(
図14I)。ユーザ入力1415Dに応じて、ユーザインタフェース1492Cが表示される(
図14J)。ユーザインタフェース1492Cはグラフ1495を含む。グラフ1495は、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含む。例えば、グラフ1495は、所定の時間期間(例えば、21秒)にわたる(心拍数警告基準を満たす)心拍数データのタコグラムである。グラフ1495は、同じ時間期間にわたる正常な心拍数1495-1を含む。グラフ1495は、心臓警告アフォーダンス1430でユーザ入力1415Bを受け取ったこと(
図14D)ことに続いて表示される。
【0350】
ユーザインタフェース1492Cは、グラフの種類1496-1(例えば、タコグラム)、心拍数データの追跡期間1496-2(例えば、21秒)、追加のグラフ情報1496-3、ユーザへの命令1496-4、及び心拍数警告設定1496-5(例えば、有効又は無効)を含む。一実施形態では、心拍数警告設定1496-5の設定は、デバイス1490でユーザによって選択された設定に対応する。別の実施形態では、心拍数警告設定1496-5の設定は、デバイス1490でのデフォルト設定に対応する。
【0351】
ユーザインタフェース1492Cは、スクロール可能な心臓データアフォーダンス1497-1、1497-2、及び1497-3を含む。スクロール可能な心臓データアフォーダンスは、身体活動追跡センサから受信されたデータに対応する設定心拍数データに関連付けられる。スクロール可能な心臓データアフォーダンスは、身体活動追跡センサから心拍数データが受信された日付及び時刻を特定する。例えば、心臓データアフォーダンス1497-1は、関連付けられたデータが身体活動追跡センサから受信された日付1498-1(例えば、今日、2016年11月16日)及び時刻1498-2(例えば、午後5:21)を特定する。
【0352】
グラフ1495は、アフォーダンス1497-1に関連付けられた心拍数データに対応する(
図14J)。したがって、アフォーダンス1497-1は、アフォーダンス1497-2及びアフォーダンス1497-3に対して強調表示される。
【0353】
図14K~
図14Mを参照すると、ユーザ入力1415E(例えば、スワイプジェスチャ)は、スクロール可能な心臓データアフォーダンス1497-1、1497-2、及び1497-3の近くで受け取られる。ユーザ入力1415Eに応じて、心臓データアフォーダンス1497-1、1497-2、及び1497-3は、新たな位置にスクロールされる。例えば、アフォーダンスは、少なくともアフォーダンス1497-3が完全に表示されるように左に平行移動される。
【0354】
図14N~
図14Oを参照すると、ユーザ入力1415Fは、アフォーダンス1497-3で受け取られる。アフォーダンス1497-3でユーザ入力1415Fを受け取ったことに応じて、グラフ1495は、グラフ1499に置き換えられる(
図14O)。グラフ1499は、アフォーダンス1497-3に関連付けられた心拍数データに対応する。したがって、アフォーダンス1497-3は、アフォーダンス1497-1及びアフォーダンス1497-2に対して強調表示される。少なくとも1つのアフォーダンス(例えば、アフォーダンス1497-1、1497-2、又は1497-3)に関連付けられた心拍数データは、心拍数警告基準を満たす心拍数データであることを理解されたい。いくつかの実施形態では、少なくとも1つのアフォーダンス(例えば、アフォーダンス1497-1、1497-2、又は1497-3)に関連付けられた心拍数データは、心拍数警告基準を満たさない心拍数データである。
【0355】
心拍数データ(例えば、心拍数警告基準を満たす心拍数データ)を外部デバイスに送信できることを理解されたい。例えば、心拍数データは、医療専門家が心拍数データにアクセスすること/心拍数データを見ることができるように、医療専門家のデバイスに送信(例えば、電子メール送信又はテキスト送信)することができる。
【0356】
図15は、心拍数警告アフォーダンスを表示するための方法を示すフロー図である。方法1500は、1つ以上のプロセッサ及びメモリを有するデバイス(例えば、100、300、500、600、800、1000、1200、又は1400)で実行される。方法1500のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【0357】
後述するように、方法1500は、とりわけ、心拍不整の可能性をユーザに即座に警告するための直感的な方法を提供する。本方法は、ユーザが心拍数警告を素早く見て、続いて心拍数警告基準を満たす心拍数データを見ることを可能にすることにより、ユーザの認識的負担を減らす。バッテリ動作式のコンピューティングデバイスの場合、ユーザが心拍数警告基準を満たす心拍数データをより速く、より効率的に見ることを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0358】
ブロック1510で、(例えば、現在の心拍数データを追跡している)身体活動追跡センサから受信されたデータに対応する心拍数データを追跡している間に、心拍数データが心拍数警告基準を満たす(例えば、心拍数データが不規則な心拍パターンと一致する)かどうかを判定する。
【0359】
ブロック1520で、心拍数データが心拍数警告基準を満たすとの判定に従って、心拍数警告アフォーダンスを表示する(例えば、1430)。
【0360】
ブロック1530で、心拍数警告アフォーダンスに対応するユーザ入力(例えば、1415B)を受け取る。
【0361】
ブロック1540で、心拍数警告アフォーダンスに対応するユーザ入力を受け取った後に、心拍数警告基準を満たす、ある時間期間にわたる心拍数データを含むグラフ(例えば、1495)を表示する。ブロック1550で、心拍数データ(例えば、ユーザの現在の心拍数データ)が心拍数警告基準を満たさないとの判定に従って、心拍数警告アフォーダンスの表示を見合わせる(例えば、1430が表示されない)。
【0362】
いくつかの実施形態では、グラフ1495は、ある時間期間にわたる予想心拍数又は正常な心拍数1495-1を含む。いくつかの実施形態では、心拍数警告基準は、心拍数閾値を超える心拍数に基づく基準を含む。いくつかの実施形態では、心拍数警告基準は、心拍数パターンが心拍数警告パターンと一致するときに満たされる基準を含む。いくつかの実施形態では、心拍数データは、瞬間心拍加速度である。いくつかの実施形態では、心拍数データのグラフ1495は、タコグラムである。
【0363】
いくつかの実施形態では、心拍数データは、外部デバイスに送信される。例えば、心拍数データは、医療専門家のデバイスに送信(例えば、電子メール送信、テキスト送信)される。
【0364】
方法1500に関して上述した処理(例えば、
図15)の詳細は、類似するやり方で、後述の方法にも適用可能であることに留意されたい。例えば、方法1500は、方法700を参照して上述した様々な方法の特性のうちの1つ以上を任意選択的に含む。例えば、方法1500は、いくつかの実施形態では、アフォーダンスのスクロール可能なリスト内のアフォーダンスの選択に応じて、身体活動追跡機能を起動することを含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
【0365】
上記は、説明を目的として、特定の実施形態を参照して記述されている。しかしながら、上記の例示的な論考は、網羅的であること、又は開示される厳密な形態に本発明を限定することを意図するものではない。上記の教示を考慮して、多くの修正及び変形が可能である。これらの実施形態は、本技術の原理、及びその実際の適用を最もよく説明するために、選択及び記載されている。それにより、他の当業者は、意図された具体的な用途に適するような様々な修正を用いて、本技術及び様々な実施形態を最も良好に利用することが可能となる。
【0366】
添付図面を参照して、本開示及び例を十分に説明してきたが、様々な変更及び修正が、当業者には明らかとなるであろうことに留意されたい。そのような変更及び修正は、特許請求の範囲によって定義されるような、本開示及び例の範囲内に含まれるものとして理解されたい。
【0367】
上述したように、本技術の一態様は、様々なソースから入手可能なデータを収集及び使用して、ユーザに対する身体活動情報の表示を向上させることである。本開示は、いくつかの例において、この収集されたデータは、特定の人物を一意に特定する個人情報データ、又は特定の人物に連絡する若しくはその所在を突き止めるために使用できる個人情報データを含み得ることを想到している。そのような個人情報データとしては、人口統計データ、位置ベースのデータ、電話番号、電子メールアドレス、ツイッターID、自宅の住所、ユーザの健康又はフィットネスのレベルに関するデータ若しくは記録(例えば、バイタルサイン測定値、投薬情報、運動情報)、誕生日、あるいは任意の他の識別情報又は個人情報を挙げることができる。
【0368】
本開示は、本技術におけるそのような個人情報データの使用がユーザの利益になる使用であり得る点を認識するものである。例えば、個人情報データを使用して、ユーザの身体活動の履歴をユーザに提供することができる。したがって、そのような個人情報データの使用により、ユーザの身体活動についてユーザにフィードバックすることが可能になる。更には、ユーザに利益をもたらす、個人情報データに関する他の使用もまた、本開示によって想到される。例えば、健康データ及びフィットネスデータは、ユーザの全般的なウェルネスについての洞察を提供するために使用することができ、或いは、ウェルネスの目標を追求するための技術を使用している個人への、積極的なフィードバックとして使用することもできる。
【0369】
本開示は、そのような個人情報データの収集、分析、開示、転送、記憶、又は他の使用に関与するエンティティが、確固たるプライバシーポリシー及び/又はプライバシー慣行を遵守するものとなることを想到する。具体的には、そのようなエンティティは、個人情報データを秘密として厳重に保守するための、業界又は政府の要件を満たしているか又は上回るものとして一般に認識されている、プライバシーのポリシー及び慣行を実施し、一貫して使用するべきである。そのようなポリシーは、ユーザによって容易にアクセス可能とするべきであり、データの収集及び/又は使用が変化するにつれて更新されるべきである。ユーザからの個人情報は、そのエンティティの合法的かつ正当な使用のために収集されるべきであり、それらの合法的使用を除いては、共有又は販売されるべきではない。更には、そのような収集/共有は、ユーザに告知して同意を得た後に実施されるべきである。更には、そのようなエンティティは、そのような個人情報データへのアクセスを保護して安全化し、その個人情報データへのアクセスを有する他者が、それらのプライバシーポリシー及び手順を遵守することを保証するための、あらゆる必要な措置を講じることを考慮するべきである。更には、そのようなエンティティは、広く受け入れられているプライバシーのポリシー及び慣行に対する自身の遵守を証明するために、第三者による評価を自らが受けることができる。更には、ポリシー及び慣行は、収集及び/又はアクセスされる具体的な個人情報データのタイプに適合されるべきであり、また、管轄権固有の考慮事項を含めた、適用可能な法令及び規格に適合されるべきである。例えば、アメリカ合衆国では、特定の健康データの収集又はアクセスは、医療保険の相互運用性と説明責任に関する法律(Health Insurance Portability and Accountability Act、HIPAA)などの、連邦法及び/又は州法によって管理することができ、その一方で、他国における健康データは、他の規制及びポリシーの対象となり得るものであり、それに従って対処されるべきである。それゆえ、各国の異なる個人データのタイプに関して、異なるプライバシー慣行が保たれるべきである。
【0370】
前述のことがらにも関わらず、本開示はまた、個人情報データの使用又は個人情報データへのアクセスを、ユーザが選択的に阻止する実施形態も想到する。すなわち、本開示は、そのような個人情報データへのアクセスを防止又は阻止するように、ハードウェア要素及び/又はソフトウェア要素を提供することができると想到する。例えば、身体活動サービスの場合において、本技術は、ユーザが、サービスの登録中に、個人情報データの収集への参加の「オプトイン」又は「オプトアウト」を選択することを可能とするように構成することができる。別の例では、ユーザは、ターゲットコンテンツ配信サービスに対して、又はその後のいかなる時点でも、位置情報を提供しないことを選択してもよい。更に別の例では、ユーザは、正確な身体活動情報を提供しないが、概略の身体活動情報の転送を許可することを選択してもよい。「オプトイン」及び「オプトアウト」の選択肢を提供することに加えて、本開示は、個人情報のアクセス又は使用に関する通知を提供することを想到する。例えば、ユーザの個人情報データにアクセスすることとなるアプリのダウンロード時にユーザに通知され、その後、個人情報データがアプリによってアクセスされる直前に再びユーザに注意してもよい。
【0371】
更には、本開示の意図は、個人情報データを、非意図的若しくは非認可アクセス又は使用の危険性を最小限に抑える方法で、管理及び処理するべきであるという点である。データの収集を制限し、データがもはや必要とされなくなった時点で削除することによって、危険性を最小限に抑えることができる。更には、適用可能な場合、特定の健康関連アプリケーションにおいて、ユーザのプライバシーを保護するために、データの非特定化を使用することができる。非特定化は、適切な場合には、特定の識別子(例えば、生年月日など)を除去すること、記憶されたデータの量又は特異性を制御すること(例えば、位置データを住所レベルよりも都市レベルで収集すること)、データがどのように記憶されるかを制御すること(例えば、データをユーザ全体にわたって集約すること)及び/又は他の方法によって、容易にすることができる。
【0372】
それゆえ、本開示は、1つ以上の様々な開示された実施形態を実施するための、個人情報データの使用を広範に網羅するものではあるが、本開示はまた、そのような個人情報データにアクセスすることを必要とせずに、それらの様々な実施形態を実施することもまた可能であることを想到している。すなわち、本技術の様々な実施形態は、そのような個人情報データの全て又は一部分が欠如することにより、実施不可能となるものではない。例えば、非個人情報データ又は個人情報の最低量に基づく身体活動を使用して情報を提示することができる。