以下の説明では、例示的な方法、パラメータなどが記載される。ただし、そのような説明の目的は、本開示の範囲を制限することではなく、例示的な実施形態の説明を提供することであることを理解されたい。
本開示は、健康データの集約及び共有に関する。健康データは、ユーザデバイス外部又は内部の任意の数のセンサから、健康データを手で入力するユーザから、又は他のユーザ若しくはエンティティから、ユーザデバイスによって受け取られ得る。ユーザデバイスは、健康データをユーザデバイス上にセキュアに保存することができるとともに、健康データを、リモートデータベースでの保存のために伝送することができる。デバイスのユーザは、健康データの一部又はすべてを、友人、親類、介護者、医療提供者等と共有することができる。ユーザデバイスは、ユーザの健康データを、様々な種類の健康データの集約ビュー内に更に表示することができる。例えば、集約ビューは、パーティションのセットを含むことができ、各パーティションは、異なる種類の健康データに対応する。他のユーザの健康データもまた、それらユーザからの許可を受け取った場合には見ることができる。いくつかの例においては、パーティションは、カードのスタックの外観及び関連付けられたアニメーションを有するものとして示すことができ、各カードは、異なるパーティション(及びしたがって、異なる種類の健康データ)に相当する。重ねられたカードのビューにおいては、各カードは、その対応する健康データの一部の部分ビューを表示することができる。ユーザがカードの1つを選択すると、第1の再構成データ、追加データ、又はオリジナルデータの拡張ビューのうちの少なくとも1つを含む、選択されたカードの第1の拡張ビューが表示され得る。選択されたカードの第2の拡張ビューが、ユーザデバイスの向きの変化に応じて表示され得る。第2の拡張ビューは、第2の再構成データ、追加データ、又はオリジナルデータの拡張ビューのうちの少なくとも1つを含み得る、が表示され得る。1つの例では、第2の拡張ビューは、経時的な健康データのグラフを含み得る。
以下、図1A~図1B、図2、図3、図4A~図4B、及び図5A~図5Bは、健康データを共有するための手法を実行するための例示的なデバイスの説明を提供する。図10~図15、図17、図19~図20、図22~図26、図28~図37、及び図39~図44は、健康データを共有するための例示的なユーザインタフェースを示す。図のユーザインタフェースは、図8、図9、図16、図18、図21、図27、図38A~B及び図45の処理を含む、以下で説明されるプロセスを例示するためにも用いられる。
以下の説明では、様々な要素を説明するために「第1」、「第2」などの用語が使用されるが、これらの要素はこれらの用語によって限定されるべきではない。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、説明されている様々な実施形態の範囲から逸脱することなく、第1のタッチは第2のタッチと称することができ、同様に、第2のタッチは第1のタッチと称し得る。第1のタッチと第2のタッチはともにタッチであるが、同じタッチではない。
本明細書で説明される様々な実施形態の説明で使用される用語法は、特定の実施形態を説明することのみを目的とするものであって、限定することを意図するものではない。説明される様々な実施形態の説明及び添付の特許請求の範囲で使用されるとき、単数形「a」、「an」、及び「the」は、文脈がそうではないことを明確に示さない限り、複数形もまた含むことが意図される。本明細書で使用されるときに、用語「及び/又は」が、関連する列挙された項目のうちの1つ以上のすべての可能な任意の組み合わせを指し、かつこれを含むことをもまた理解されたい。更に、用語「includes(含む)」、「including(含む)」、「comprises(備える)」、及び/又は「comprising(備える)」は、本明細書で使用される場合、記述される特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらの群の存在若しくは追加を排除するものではないことが理解されるであろう。
用語「if(~場合に)」は、文脈に応じて「when(~ときに)」、「upon(~ときに)」、「in response to determining(~という判定に応じて)」、又は「in response to detecting(~を検出したことに応じて)」を意味すると解釈することができる。同様に、句「if it is determined(~と判定される場合に)」又は「if[a stated condition or event]is detected([述べられる条件又はイベント]が検出される場合に)」は、文脈に応じて「upon determining(~と判定されるときに)」、「in response to determining(~との判定に応じて)」、「upon detecting[the stated condition or event]([述べられる条件又はイベント]の検出時に)」、又は「in response to detecting[the stated condition or event]([述べられる条件又はイベント]の検出に応じて)」を意味すると解釈することができる。
電子デバイス、そのようなデバイス用のユーザインタフェース、及びそのようなデバイスを使用するための関連プロセスの、実施形態を説明する。いくつかの実施形態では、このデバイスは、PDA機能及び/又は音楽再生機能などの、他の機能をも含む、モバイル電話機などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態は、限定を伴わずに、California州CupertinoのApple Inc.のiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)デバイスを含む。タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を備えたラップトップ又はタブレットコンピュータなど他のポータブル電子デバイスも、任意選択的に、使用できる。また、いくつかの実施形態では、このデバイスはポータブル通信デバイスではなく、タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を備えるデスクトップコンピュータであることを理解されたい。
以下の論考では、ディスプレイ及びタッチ感知面を備える電子デバイスを説明する。しかし、この電子デバイスが、物理キーボード、マウス、及び/又はジョイスティックなどの1つ以上の他の物理ユーザインタフェースデバイスを任意選択的に含むことを理解されたい。
そのデバイスは、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、ビデオ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽再生アプリケーション、及び/又はデジタルビデオ再生アプリケーションのうちの1つ以上など、様々なアプリケーションをサポートしてもよい。
このデバイス上で実行される様々なアプリケーションは、タッチ感知面などの、少なくとも1つの共通の物理ユーザインタフェースデバイスを、任意選択的に使用する。タッチ感知面の1つ以上の機能並びにデバイス上に表示される対応する情報は、1つのアプリケーションから次のアプリケーションへ、及び/又は対応するアプリケーションの中で、任意選択的に、調整、及び/又は変更される。この方式で、そのデバイスの共通の(タッチ感知面などの)物理アーキテクチャは、ユーザにとって直観的かつ透過的なユーザインタフェースを有する様々なアプリケーションを、任意選択的にサポートする。
ここで、タッチ感知ディスプレイを備えるポータブルデバイスの実施形態に注意を向ける。図1Aは、いくつかの実施形態に係る、タッチ感知ディスプレイシステム112を備えたポータブル多機能デバイス100を示すブロック図である。タッチ感知ディスプレイ112は、便宜上「タッチスクリーン」と呼ばれる場合があり、タッチ感知ディスプレイシステムとして既知であるか、又はそのように呼ばれる場合もある。デバイス100は、メモリ102(任意選択的に、1つ以上のコンピュータ可読記憶媒体を含む)、メモリコントローラ122、1つ以上の処理ユニット(CPU)120、周辺機器インタフェース118、RF回路108、音声回路110、スピーカ111、マイクロフォン113、入出力(I/O)サブシステム106、他の入力制御デバイス116、及び外部ポート124を含む。デバイス100は、1つ以上の光センサ164を、任意選択的に含む。デバイス100は、デバイス100(例えば、デバイス100のタッチ感知ディスプレイシステム112などのタッチ感知面)上の接触の強度を検出するための、1つ以上の接触強度センサ165を、任意選択的に含む。デバイス100は、デバイス100上に触知出力を生成する(例えば、デバイス100のタッチ感知ディスプレイシステム112又はデバイス300のタッチパッド355などの、タッチ感知面上に触知出力を生成する)ための、1つ以上の触知出力生成器167を、任意選択的に含む。これらの構成要素は、1つ以上の通信バス又は信号ライン103を介して、任意選択的に通信する。
本明細書及び特許請求の範囲で使用されるとき、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触(例えば、指接触)の力又は圧力(単位面積当たりの力)、あるいはタッチ感知面上の接触の力又は圧力の代替物(代用物)を指す。接触の強度は、少なくとも4つの異なる数値を含み、より典型的には、数百以上の異なる数値(例えば、少なくとも256)を含む、数値の範囲を有する。接触の強度は、様々な方法及び様々なセンサ、又はセンサの組み合わせを使用して、任意選択的に、判定(又は、測定)される。例えば、タッチ感知面の下に又は隣接して配置された1つ以上のセンサは、タッチ感知面上の様々な点における力を測定するために、任意選択的に用いられる。いくつかの実装において、複数の力センサの力測定値を組み合わせて(例えば、加重平均)、接触の推定の力を判定する。同様に、スタイラスの感圧性先端部を任意選択的に使用して、タッチ感知面上のスタイラスの圧力を判定する。別の方法としては、タッチ感知面上で検出される接触領域のサイズ及び/若しくはその変化、接触に近接するタッチ感知面の電気容量及び/若しくはその変化、並びに/又は、接触に近接するタッチ感知面の抵抗及び/若しくはその変化が、タッチ感知面上の接触の力又は圧力の代用物として、任意選択的に用いられる。いくつかの実装において、接触の力又は圧力の代替的測定値は、強度閾値を超えているかを判定するために直接に用いられる(例えば、強度閾値は、代替的測定値に対応する単位で記述される)。いくつかの実装において、接触の力又は圧力の代替的測定値は、推定される力又は圧力に変換され、この推定される力又は圧力を用いて、強度閾値を超えているか判定される(例えば、強度閾値は、圧力の単位で測定された圧力閾値である)。接触の強度をユーザ入力の属性として使用することは、アフォーダンスを(例えば、タッチ感知ディスプレイ上に)表示するため、及び/又はユーザ入力を(例えば、タッチ感知ディスプレイ、タッチ感知面、又はノブ若しくはボタンなどの物理的/機械的制御を介して)受信するための面積が制限された、低減されたサイズのデバイスにおいて、ユーザによるアクセスが他の場合に不可能であり得る、追加のデバイス機能へのユーザのアクセスを可能にする。
本明細書及び特許請求の範囲で使用されるとき、用語「触知出力」は、ユーザの触覚でユーザによって検出されることになる、デバイスの従前の位置に対するデバイスの物理的変位、デバイスの構成要素(例えば、タッチ感知面)の、デバイスの別の構成要素(例えば、筐体)に対する物理的変位、又はデバイスの質量中心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面(例えば、ユーザの手の指、手のひら、又は他の部分)に接触している状況において、物理的変位によって生成された触知出力は、デバイス又はデバイスの構成要素の物理的特性の認識された変化に相当する触感として、ユーザによって解釈される。例えば、タッチ感知面(例えば、タッチ感知ディスプレイ又はトラックパッド)の移動は、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として、任意選択的に解釈される。いくつかの場合、ユーザの移動により物理的に押された(例えば、変位された)タッチ感知面に関連付けられた物理アクチュエータボタンの移動がないときでさえ、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じる。別の例として、タッチ感知面の移動は、タッチ感知面の平滑度に変化がないときでさえ、タッチ感知面の「粗さ」としてユーザによって、任意選択的に、解釈又は感じられる。このようなユーザによるタッチの解釈は、ユーザの個別の感覚認知によるが、大多数のユーザに共通したタッチの感覚認知が数多くある。したがって、触知出力が、ユーザの特定の感覚認知(例えば、「アップクリック」「ダウンクリック」、「粗さ」)に対応するものと記述される場合、別途記載のない限り、生成された触知出力は、典型的な(又は、平均的な)ユーザの記述された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。
デバイス100は、ポータブル多機能デバイスの一実施例に過ぎず、デバイス100は、示されるものよりも多いか又は少ない構成要素を任意選択的に有するか、2つ以上の構成要素を任意選択的に組み合わせるか、又は構成要素の異なる構成若しくは配置を任意選択的に有することを理解されたい。図1Aに示される様々な構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの双方の組み合わせの形態で実装される。
メモリ102は、1つ以上のコンピュータ可読記憶媒体を含んでもよい。コンピュータ可読記憶媒体は、有形かつ非一時的であってもよい。メモリ102は高速ランダムアクセスメモリを含んでよく、また、1つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性固体メモリデバイスなどの、不揮発性メモリを含んでもよい。メモリコントローラ122は、デバイス100の他の構成要素によるメモリ102へのアクセスを制御してもよい。
周辺機器インタフェース118を使用して、このデバイスの入力及び出力周辺機器を、CPU120及びメモリ102に接続することができる。1つ以上のプロセッサ120は、デバイス100のための様々な機能を実行するため並びにデータ処理を行うために、メモリ102に記憶された様々なソフトウェアプログラム及び/若しくは命令セットを走らせたり、又は実行したりする。いくつかの実施形態では、周辺機器インタフェース118、CPU120、及びメモリコントローラ122はチップ104などの単一チップ上に実装されてもよい。一部の他の実施形態では、それらは、別個のチップ上に実装することができる。
RF(無線周波数)回路108は、電磁信号とも呼ばれるRF信号を送受信する。RF回路108は、電気信号を電磁信号に、又は電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。RF回路108は、アンテナシステム、RF送受信機、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュール(SIM)カード、メモリなどを含むがこれらに限定されない、上記の機能を実行するための周知の回路を、任意選択的に含む。RF回路108は、インターネット情報検索システム(WWW)とも呼ばれるインターネットなどのネットワーク、セルラー電話ネットワークなどのイントラネット及び/又は無線ネットワーク、ワイアレスローカルエリアネットワーク(LAN)及び/又はメトロポリタンエリアネットワーク(MAN)、及び他のデバイスと無線通信によって、任意選択的に通信する。RF回路108は、短距離通信無線(short-range communication radio)などにより、近距離通信(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+、2重セルHSPA(Dual-Cell HSPA、DC-HSPDA)、ロングタームエボリューション(long term evolution、LTE)、近距離無線通信(near field communication、NFC)、広帯域符号分割多元接続(wideband code division multiple access、W-CDMA)、符号分割多元接続(code division multiple access、CDMA)、時分割多元接続(time division multiple access、TDMA)、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)、あるいは本文書の出願日現在までに未だ開発されていない通信プロトコルを含めた任意の他の好適な通信プロトコルが挙げられるが、これらに限定されない。
音声回路110、スピーカ111、及びマイクロフォン113は、ユーザとデバイス100との間のオーディオインタフェースを提供する。音声回路110は、周辺機器インタフェース118から音声データを受信し、音声データを電気信号に変換し、電気信号をスピーカ111に送信する。スピーカ111は、電気信号を人間の可聴音波に変換する。音声回路110は、マイクロフォン113により音波から変換された電気信号も受信する。音声回路110は、電気信号を音声データに変換し、処理するために音声データを周辺機器インタフェース118に送出する。音声データは周辺機器インタフェース118によって、メモリ102及び/又はRF回路108から取得され、かつ/あるいはメモリ102及び/又はRF回路108に送信されてもよい。いくつかの実施形態では、音声回路110は更にヘッドセットジャック(例えば、図2の212)を備える。ヘッドセットジャックは、音声回路110と、出力専用ヘッドホン又は出力(例えば、片耳又は両耳用のヘッドホン)及び入力(例えば、マイクロフォン)の両方を持つヘッドセットなどの、取り外し可能なオーディオ入出力周辺機器との間のインタフェースを提供する。
I/Oサブシステム106は、周辺機器インタフェース118に、タッチスクリーン112及び他の入力制御デバイス116などのデバイス100の入出力周辺機器を接続する。I/Oサブシステム106は、ディスプレイコントローラ156、光センサコントローラ158、強度センサコントローラ159、触覚フィードバックコントローラ161、及び他の入力又は制御デバイス用の1つ以上の入力コントローラ160を、任意選択的に含む。1つ以上の入力コントローラ160は、他の入力制御デバイス116から/へ電気信号を受信/送信する。他の入力制御デバイス116は、物理ボタン(例えば、プッシュボタン、ロッカボタンなど)、ダイヤル、スライダースイッチ、ジョイスティック、クリックホイールなどを、任意選択的に含む。いくつかの代替的実施形態において、入力コントローラ(1つ又は複数)160は、キーボード、赤外線ポート、USBポート、及びマウスなどのポインタデバイスのうちのいずれかに、任意選択的に接続される(又は、いずれにも接続されない)。1つ以上のボタン(例えば、図2の208)は、スピーカ111及び/又はマイクロフォン113の音量調節のためのアップ/ダウンボタンを、任意選択的に、含む。1つ以上のボタンは、プッシュボタン(例えば、図2の206)を、任意選択的に、含む。
2005年12月23日に出願された、米国特許第7,657,849号である米国特許出願第11/322,549号、「Unlocking a Device by Performing Gestures on an Unlock Image」に記載されているように、プッシュボタンの素早い押下により、タッチスクリーン112のロックが解かれるか、又はタッチスクリーン上のジェスチャを用いてデバイスをロック解除する処理が開始されてもよい。同出願はその全体が本明細書において参照により組み込まれている。プッシュボタン(例えば、206)のより長い押下により、デバイス100への電源が入れられるか又は切られてもよい。ユーザは、1つ以上のボタンの機能性をカスタマイズすることが可能であってもよい。タッチスクリーン112は、仮想若しくはソフトボタン並びに1つ以上のソフトキーボードを実現するために用いられる。
タッチ感知ディスプレイ112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112から/へ電気信号を受信し及び/又は送信する。タッチスクリーン112は、ユーザに視覚出力を表示する。この視覚出力は、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組み合わせ(「グラフィック」と総称される)を含み得る。いくつかの実施形態では、これらの視覚出力の一部又は全てはユーザインタフェースオブジェクトに対応してもよい。
タッチスクリーン112は、触覚及び/若しくは触感の接触に基づくユーザからの入力を受け付けるタッチ感知面、センサ、又はセンサのセットを有している。タッチスクリーン112及びディスプレイコントローラ156(メモリ102内の任意の関連モジュール及び/又は命令セットと共に)は、タッチスクリーン112上で接触(及び任意の移動又は接触の中断)を検出し、検出された接触をタッチスクリーン112上に表示されたユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)との対話に変換する。ある例示的な実施形態では、タッチスクリーン112とユーザとの間の接触は、ユーザの指に対応する。
タッチスクリーン112は、LCD(liquid crystal display、液晶ディスプレイ)技術、LPD(light emitting polymer display、発光ポリマーディスプレイ)技術、又はLED(light emitting diode、発光ダイオード)技術を用いてもよいが、他の実施形態では、その他のディスプレイ技術が使用されてもよい。タッチスクリーン112及びディスプレイコントローラ156は、限定するものではないが、静電容量技術、抵抗性技術、赤外線技術、及び表面超音波技術、並びにタッチスクリーン112との1つ以上の接触点を判定するための、他の近接センサアレイ又は他の要素を含む、現在知られているか若しくは今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触及びそのあらゆる移動若しくは中断を検出してもよい。例示的な実施形態では、California州CupertinoのApple Inc.からのiPhone(登録商標)及びiPod Touch(登録商標)において見られるものなどの、投影型相互キャパシタンス感知技術が使用されている。
タッチスクリーン112のいくつかの実施形態におけるタッチ感知ディスプレイは、以下の米国特許、第6,323,846号(Westermanら)、第6,570,557号(Westermanら)、及び/若しくは第6,677,932号(Westerman)、並びに/又は米国特許公報第2002/0015024A1号に記載されているマルチタッチ感知タッチパッドに類似していてもよい。これらの文献はそれぞれその全体が本明細書において参照により組み込まれている。ただし、タッチスクリーン112はデバイス100からの視覚出力を表示するのに対して、タッチ感知タッチパッドは視覚出力を提供しない。
タッチスクリーン112のいくつかの実施形態におけるタッチ感知ディスプレイは、以下の出願で説明されているとおりであってもよい。(1)米国特許出願第11/381,313号、「Multipoint Touch Surface Controller」、2006年5月2日出願、(2)米国特許出願第10/840,862号、「Multipoint Touchscreen」、2004年5月6日出願、(3)米国特許出願第10/903,964号、「Gestures For Touch Sensitive Input Devices」、2004年7月30日出願、(4)米国特許出願第11/048,264号、「Gestures For Touch Sensitive Input Devices」、2005年1月31日出願、(5)米国特許出願第11/038,590号、「Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices」、2005年1月18日出願、(6)米国特許出願第11/228,758号、「Virtual Input Device Placement On A Touch Screen User Interface」、2005年9月16日出願、(7)米国特許出願第11/228,700号、「Operation Of A Computer With A Touch Screen Interface」、2005年9月16日出願、(8)米国特許出願第11/228,737号、「Activating Virtual Keys Of A Touch-Screen Virtual Keyboard」、2005年9月16日出願、及び(9)米国特許出願第11/367,749号、「Multi-Functional Hand-Held Device」、2006年3月3日出願。これらの出願は全てそれらの全体が本明細書において参照により組み込まれている。
タッチスクリーン112は、100dpiを超えるビデオ解像度を有してもよい。いくつかの実施形態において、タッチスクリーンは約160dpiの映像解像度を有する。ユーザは、スタイラス、指などの、任意の好適な物体又は付属物を使用して、タッチスクリーン112に接触してよい。いくつかの実施形態では、ユーザインタフェースは、主として指に基づく接触及びジェスチャで機能するように設計され、タッチスクリーン上の指の接触面積が広いことにより、スタイラスに基づく入力よりも精度が低いことがある。いくつかの実施形態において、デバイスは、粗い指に基づく入力を正確なポインタ/カーソル位置又はユーザの望むアクションを実行するためのコマンドに変換する。
いくつかの実施形態では、タッチスクリーンに加えて、デバイス100は、特定の機能をアクティブ化又は停止させるためのタッチパッド(図示せず)を含んでもよい。いくつかの実施形態において、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知エリアである。タッチパッドは、タッチスクリーン112とは別個のタッチ感知面、又はタッチスクリーンによって形成されるタッチ感知面の拡張部であってもよい。
デバイス100はまた、様々な構成要素に電力を供給するための電力システム162をも含む。電力システム162は、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC:alternating current))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにポータブルデバイスにおける電力の生成、管理、及び分配に関連付けられる任意の他の構成要素を含んでもよい。
デバイス100は1つ以上の光センサ164も含んでもよい。図1Aは、I/Oサブシステム106内の光センサコントローラ158に結合された光センサを示す。光センサ164は、電荷結合素子(CCD:charge-coupled device)又は相補的金属酸化物半導体(CMOS:complementary metal-oxide semiconductor)フォトトランジスタを含んでもよい。光センサ164は、1つ以上のレンズを通して投影された、環境からの光を受光し、その光を、画像を表すデータに変換する。撮像モジュール143(カメラモジュールとも呼ばれる)と連動して、光センサ164は静止画像又はビデオを取り込んでもよい。いくつかの実施形態では、タッチ画像ディスプレイを静止画像及び/又はビデオ画像取得のためのビューファインダとして使用することができるように、デバイスの前面のタッチ画像ディスプレイ112の反対側である、デバイス100の背面に光センサが配置されている。いくつかの実施形態では、ユーザが他のビデオ会議参加者をタッチ画像ディスプレイ上で見るのと同時に、ユーザの画像をビデオ会議のために得ることができるように、デバイスの前面に光センサが配置されている。いくつかの実施形態では、光センサ164の位置はユーザによって(例えば、デバイス筐体内のレンズ及びセンサを回転させることによって)変更されることができ、それにより、単一の光センサ164をタッチスクリーンディスプレイと共にビデオ会議並びに静止画像及び/若しくはビデオ画像取得のどちらにも用い得るようにしている。
デバイス100はまた、1つ以上の接触強度センサ165をも任意選択的に含む。図1Aは、I/Oサブシステム106内の強度センサコントローラ159に結合された、接触強度センサを示す。接触強度センサ165は、1つ以上のピエゾ抵抗ひずみゲージ、電気容量式力センサ、電気力センサ、圧電力センサ、光学力センサ、容量式タッチ感知面、又は他の強度センサ(例えば、タッチ感知面上の接触の力(又は圧力)を測定するために使用するセンサ)を、任意選択的に含む。接触強度センサ165は、環境から接触強度情報(例えば、圧力情報又は圧力情報のプロキシ)を受信する。いくつかの実施形態において、少なくとも1つの接触強度センサが、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)に併置されているか、又は近接している。いくつかの実施形態において、少なくとも1つの接触強度センサが、デバイス100の前面に配置されたタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に配置されている。
デバイス100は1つ以上の近接センサ166を含んでもよい。図1Aは、周辺機器インタフェース118と結合された近接センサ166を示す。その代わりに、近接センサ166は、I/Oサブシステム106内の入力コントローラ160に結合されてもよい。近接センサ166は、米国特許出願第11/241,839号、「Proximity Detector In Handheld Device」、第11/240,788号、「Proximity Detector In Handheld Device」、第11/620,702号、「Using Ambient Light Sensor To Augment Proximity Sensor Output」、第11/586,862号、「Automated Response To And Sensing Of User Activity In Portable Devices」、及び第11/638,251号、「Methods And Systems For Automatic Configuration Of Peripherals」で説明されているように動作してもよく、これらの文献は、その全体が参照により本明細書に組み込まれる。一部の実施形態では、この多機能デバイスが、ユーザの耳の近くに配置される場合(例えば、ユーザが電話通話を行っている場合)、近接センサは、タッチスクリーン112をオフにして無効化する。
デバイス100はまた、1つ以上の触知出力生成器167をも任意選択的に含む。図1Aは、I/Oサブシステム106内の触覚フィードバックコントローラ161に結合された、触知出力生成器を示す。触知出力生成器167は、スピーカ又は他の音声構成要素などの1つ以上の電気音響デバイス、及び/又はモータ、ソレノイド、電気活性ポリマ、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力構成要素(例えば、デバイス上で電気信号を触知出力に変換する構成要素)などの、エネルギーを直線運動に変換する電気機械デバイスを、任意選択的に含む。接触強度センサ165は、触覚フィードバックモジュール133から触覚フィードバック生成命令を受信し、デバイス100のユーザが感知できる触知出力をデバイス100上で生成する。いくつかの実施形態において、少なくとも1つの触知出力生成器は、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)と併置されているか、又は近接しており、任意選択的に、タッチ感知面を垂直方向に(例えば、デバイス100の表面の内/外)又は横方向(例えば、デバイス100の表面と同じ平面の前後方向)に移動することによって、触知出力を生成する。いくつかの実施形態において、少なくとも1つの触知出力生成器センサは、デバイス100の前面に配置されたタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に配置されている。
デバイス100は更に、1つ以上の加速度計168を備えてもよい。図1Aは、周辺機器インタフェース118に結合された加速度計168を示す。その代わりに、加速度計168は、I/Oサブシステム106内の入力コントローラ160に結合されてもよい。加速度計168は、米国特許公報第20050190059号、「Acceleration-based Theft Detection System for Portable Electronic Devices」、及び米国特許公報第20060017692号、「Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer」に記載されているように動作してもよく、これらの文献はどちらも、その全体が参照により本明細書に組み込まれている。いくつかの実施形態において、情報は、1つ以上の加速度計から受信したデータの分析に基づいて、ポートレートビュー又はランドスケープビューでタッチスクリーンディスプレイ上に表示される。デバイス100は、必要に応じて、加速度計(1つ又は複数)168に加えて、磁力計(図示せず)並びにデバイス100の位置及び向き(例えば、ポートレート又はランドスケープ)に関する情報を取得するためのGPS(又はGLONASS又は他のグローバルナビゲーションシステム)受信部(図示せず)を、任意選択的に含む。
いくつかの実施形態において、メモリ102に記憶されたソフトウェアコンポーネントは、オペレーティングシステム126、通信モジュール(又は命令セット)128、接触/動きモジュール(又は命令セット)130、グラフィックモジュール(又は命令セット)132、テキスト入力モジュール(又は命令セット)134、全地球測位システム(GPS)モジュール(又は命令セット)135、及びアプリケーション(命令セット)136を含む。更に、いくつかの実施形態では、図1A及び図3に示すように、メモリ102(図1A)又はメモリ370(図3)は、デバイス/グローバル内部状態157を記憶する。デバイス/グローバル内部状態157は、以下の1つ以上を含む:現在アクティブ状態のアプリケーションがある場合、どのアプリケーションがアクティブかを示す、アクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチスクリーンディスプレイ112の様々な領域を占領しているかを示す、表示状態、デバイスの様々なセンサ及び入力制御デバイス116から得られる情報を含む、センサ状態、並びに、デバイスの位置及び/又は姿勢に関する位置情報。
オペレーティングシステム126(例えば、Darwin(登録商標)、RTXC(登録商標)、LINUX(登録商標)、UNIX(登録商標)、OS X(登録商標)、iOS、WINDOWS(登録商標)、又はVxWorks(登録商標)などの組み込みオペレーティングシステム)は、一般的なシステムタスク(例えば、メモリ管理、記憶デバイス制御、電力管理など)を制御及び管理するための様々なソフトウェアコンポーネント及び/又はドライバを含み、様々なハードウェアとソフトウェアコンポーネントとの間の通信を容易にする。
通信モジュール128は、1つ以上の外部ポート124を介して他のデバイスとの通信を容易にし、RF回路108及び/又は外部ポート124が受信したデータを処理するための様々なソフトウェア構成要素を含む。外部ポート124(例えば、ユニバーサルシリアルバス(USB)、FIREWIRE(登録商標)など)は、直接的に、又はネットワーク(例えば、インターネット、無線LANなど)を介して間接的に他のデバイスに連結するように適合される。いくつかの実施形態において、外部ポートは、iPod(登録商標)(AppleInc.の商標)デバイス上で使用される30ピンコネクタと同一の、又はこれに類似した及び/若しくは互換性のあるマルチピン(例えば、30ピン)コネクタである。
接触/動きモジュール130は、任意選択的に、(ディスプレイコントローラ156と併せて)タッチスクリーン112との接触、及び他のタッチ感知デバイス(例えば、タッチパッド又は物理クリックホイール)との接触を検出する。接触/動きモジュール130は、接触が発生したかどうかの判定(例えば、フィンガダウンイベントの検出)、接触の強度(例えば、接触の力若しくは圧力、又は、接触の力若しくは圧力の代用語)の判定、接触の移動及びタッチ感知面にわたる動きの追跡(例えば、1つ以上のフィンガドラッグイベントの検出)があるかどうかの判定、及び接触が中止したかどうか(例えば、フィンガアップイベント又は接触の中断の検出)の判定などの、接触の検出に関係する様々な動作を実行するための様々なソフトウェア構成要素を含む。接触/動きモジュール130は、タッチ感知面から接触データを受信する。一連の接触データにより表される接触点の移動を判定することは、接触点の速さ(大きさ)、速度(大きさ及び方向)、及び/又は加速度(大きさ及び/又は方向の変化)を判定することを、任意選択的に含む。これらの動作は、任意選択的に、単一の接触(例えば、1つの指の接触)又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用される。いくつかの実施形態において、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッド上の接触を検出する。
いくつかの実施形態では、接触/動きモジュール130は、ユーザによって動作が実行されたか否かを判定するための(例えば、ユーザがアイコン上で「クリック」したか否かを判定するための)、1つ以上の強度閾値のセットを使用する。いくつかの実施形態において、少なくとも強度閾値のサブセットが、ソフトウェアパラメータに従って判定される(例えば、強度閾値は、特定の物理アクチュエータのアクティブ化閾値によって判定されず、デバイス100の物理ハードウェアを変更することなく調整し得る)。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイハードウェアを変更することなく広範囲の既定の閾値のうちのいずれかに設定し得る。加えて、いくつかの実装において、デバイスのユーザには、(例えば、個々の強度閾値を調整することにより、及び/又は「強度」パラメータのシステムレベルのクリックの後すぐに複数の強度閾値を調整することによって)強度閾値のセットのうちの1つ以上を調整するためのソフトウェア設定が提供されている。
接触/動きモジュール130は、任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターン(例えば、異なる動き、タイミング、及び/又は検出された接触の強度)を有する。したがって、ジェスチャは、特定の接触パターンを検出することによって、任意選択的に、検出される。例えば、指のタップジェスチャを検出することは、指を下ろすイベントを検出し、続いて(例えば、アイコンの位置での)その指を下ろすイベントと同じ位置(又は、実質的に同じ位置)で指を上げる(リフトオフする)イベントを検出することを含む。他の実施例として、タッチ感知面でのフィンガスワイプジェスチャの検出は、フィンガダウンイベントを検出し、続いて1つ以上のフィンガドラッグイベントを検出し、その後、フィンガアップ(リフトオフ)イベントを検出することを含む。
グラフィックモジュール132は、表示されるグラフィックの視覚的効果(例えば、輝度、透明度、彩度、コントラスト、又は他の視覚特性)を変更するための構成要素を含めた、タッチスクリーン112又は他のディスプレイ上にグラフィックをレンダリングして表示するための、様々な既知のソフトウェア構成要素を含む。本明細書で使用する用語「グラフィック」は、テキスト、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクトなど)、デジタル画像、ビデオ、アニメーション、及び類似物など、ユーザに対して表示することができる任意のオブジェクトを含むが、これらに限定されない。
いくつかの実施形態において、グラフィックモジュール132は、使用されるグラフィックを表すデータを記憶する。それぞれのグラフィックには、対応するコードが、任意選択的に、割り当てられる。グラフィックモジュール132は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィックプロパティデータと共に、表示されるグラフィックを指定する1つ以上のコードを受信し、ディスプレイコントローラ156に出力する画面画像データを生成する。
触覚フィードバックモジュール133は、デバイス100とのユーザ対話に応じて、デバイス100上の1つ以上の場所で触知出力を生成するために、触知出力生成器(1つ又は複数)167によって使用される命令を生成するための、様々なソフトウェア構成要素を含む。
テキスト入力モジュール134は、グラフィックモジュール132の構成要素であってもよく、様々なアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147、及びテキスト入力を必要とする任意の他のアプリケーション)でテキストを入力するための、ソフトキーボードを提供する。
GPSモジュール135は、デバイスの場所を判定し、この情報を、様々なアプリケーションで使用するために(例えば、場所に基づくダイヤル発呼で使用するために電話138へ、写真/ビデオのメタデータとしてカメラ143へ、並びに、天気ウィジェット、地域のイエローページウィジェット、及び地図/ナビゲーションウィジェットなどの、場所に基づくサービスを提供するアプリケーションへ)提供する。
アプリケーション136は、以下のモジュール(若しくは、命令のセット)、又はそれらの部分集合若しくは上位集合を含んでもよい。
●連絡先モジュール137(時には、アドレス帳又は連絡先リストとも呼ぶ)、
●電話モジュール138、
●ビデオ会議モジュール139、
●電子メールクライアントモジュール140、
●インスタントメッセージング(IM)モジュール141、
●トレーニングサポートモジュール142、
●静止画像及び/又はビデオ用のカメラモジュール143、
●画像管理モジュール144、
●ビデオ再生モジュール、
●音楽再生モジュール、
●ブラウザモジュール147、
●カレンダモジュール148、
●天気ウィジェット149-1、株価ウィジェット149-2、計算機ウィジェット149-3、アラーム時計ウィジェット149-4、辞書ウィジェット149-5、及びユーザによって取得された他のウィジェット、並びにユーザ作成ウィジェット149-6のうちの1つ以上を含んでもよい、ウィジェットモジュール149、
●ユーザ作成ウィジェット149-6を作るためのウィジェットクリエータモジュール150、
●検索モジュール151、
●ビデオ再生モジュール及び音楽再生モジュールを統合した、ビデオ及び音楽再生モジュール152、
●メモモジュール153、
●地図モジュール154、及び/又は
●オンラインビデオモジュール155。
メモリ102内に記憶されてもよい他のアプリケーション136の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と併せて、連絡先モジュール137は、(例えば、メモリ102又はメモリ370内の連絡先モジュール137のアプリケーション内部状態192に記憶される)アドレスブック又は連絡先リストを管理するために任意選択的に用いられ、それには、アドレスブックに名前(1つ又は複数)を加えること、アドレスブックから名前(1つ又は複数)を削除すること、電話番号(1つ又は複数)、メールアドレス(1つ又は複数)、住所(1つ又は複数)、又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前を分類して振り分けること、電話番号又はメールアドレスを提供して、電話138、ビデオ会議モジュール139、メール140、若しくはIM141による通信を開始させる及び/又は容易にすること、などが含まれる。
RF回路108、音声回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と併せて、電話モジュール138は、電話番号と対応する一連の文字を入力し、連絡先モジュール137内の1つ以上の電話番号にアクセスし、入力されている電話番号を修正し、対応する電話番号をダイヤルし、会話を遂行し、会話が完了した際に接続を切るか又は電話を切るために使用されてもよい。上述のように、無線通信は、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを使用してもよい。
RF回路108、音声回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、連絡先モジュール137、及び電話モジュール138と併せて、ビデオ会議モジュール139は、ユーザの指示に従って、ユーザと1人以上の他の参加者との間のビデオ会議を開始し、行い、終了するための、実行可能命令を含む。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と併せて、電子メールクライアントモジュール140は、ユーザの指示に応じて、電子メールを作成し、送信し、受信し、管理するための、実行可能命令を含む。画像管理モジュール144と併せて、電子メールクライアントモジュール140により、カメラモジュール143で撮影した静止画像又は映像を作成し、電子メールを送信することが非常に簡単になる。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と併せて、インスタントメッセージングモジュール141は、インスタントメッセージと対応する文字列を入力したり、入力済みの文字を修正したり、対応するインスタントメッセージを送信したり(例えば、電話ベースのインスタントメッセージのためのショートメッセージサービス(SMS)若しくはマルチメディアメッセージサービス(MMS)プロトコルを使用して、又はインターネットベースのインスタントメッセージのためのXMPP、SIMPLE、若しくはIMPSを使用して)、インスタントメッセージを受信してその受信したインスタントメッセージを表示したりするための、実行可能命令を含む。いくつかの実施形態では、送信及び/又は受信されるインスタントメッセージは、MMS及び/又は拡張メッセージングサービス(EMS:Enhanced Messaging Service)でサポートされるような、グラフィック、写真、オーディオファイル、ビデオファイル、及び/又は他の添付ファイルを含んでもよい。本明細書で使用するとき、「インスタントメッセージング」とは、電話ベースのメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)及びインターネットベースのメッセージ(例えば、XMPP、SIMPLE又はIMPSを使用して送信されるメッセージ)の双方を示す。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、地図モジュール154、及び音楽再生モジュールと併せて、トレーニングサポートモジュール142は、(例えば、時間、距離、及び/又はカロリー消費目標を有する)トレーニングを生成する、トレーニングセンサ(スポーツデバイス)と通信する、トレーニングセンサデータを受信する、トレーニングをモニタリングするために用いられるセンサを測定する、トレーニング用の音楽を選択して再生する、並びに、トレーニングデータを表示、記憶、及び送信するための、実行可能命令を含む。
タッチスクリーン112、ディスプレイコントローラ156、光センサ(1つ又は複数)164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、及び画像管理モジュール144と併せて、カメラモジュール143は、静止画像又はビデオ(ビデオストリームを含む)をキャプチャしてメモリ102にそれらを記憶したり、静止画像又はビデオの特徴を変更したり、又はメモリ102から静止画像若しくは動画を削除したりするための、実行可能命令を含む。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィクモジュール132、テキスト入力モジュール134、及びカメラモジュール143と関連して、画像管理モジュール144は、静止画像及び/又はビデオを配置し、修正し(例えば、編集し)及び別の方法で操作し、ラベルを付け、削除し、提示し(例えば、デジタルスライドショー又はアルバム内で)、並びに記憶したりするための実行可能命令を含む。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と関連して、ブラウザモジュール147は、ウェブページ又はそれらの一部、並びにウェブページにリンクされた添付及び他のファイルを検索し、リンク付け、受信し、表示することを含むユーザの指示に従い、インターネットをブラウズするための実行可能命令を含む。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と関連して、カレンダモジュール148は、ユーザの指示に従い、カレンダ及びカレンダに関連付けられたデータ(例えば、カレンダ項目、すべきことのリストなど)を作成し、表示し、変更し、記憶するための実行可能命令を含む。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と関連して、ウィジェットモジュール149は、ユーザによってダウンロードされ、使用することが可能なミニアプリケーション(例えば、天気ウィジェット149-1、株価ウィジェット149-2、電卓ウィジェット149-3、アラーム時計ウィジェット149-4、及び辞書ウィジェット149-5)、又はユーザによって作成することが可能なミニアプリケーション(例えば、ユーザ作成ウィジェット149-6)である。いくつかの実施形態では、ウィジェットは、HTML(ハイパーテキストマークアップ言語)ファイル、CSS(カスケーディングスタイルシート)ファイル、及びJavaScriptファイルを含む。一部の実施形態では、ウィジェットは、XML(拡張可能マークアップ言語)ファイル及びJavaScript(登録商標)ファイル(例えば、Yahoo!(登録商標)ウィジェット)を含む。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と関連して、ウィジェット作成モジュール150は、ウィジェットを作成する(例えば、ウェブページのユーザ指定箇所をウィジェットに変える)ために、ユーザによって使用されてもよい。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィクモジュール132、及びテキスト入力モジュール134と関連して、検索モジュール151は、ユーザの指示に従い、1つ以上の検索基準(例えば、1つ以上のユーザ指定の検索語句)と一致する、メモリ102内のテキスト、音楽、音、画像、ビデオ、及び/又は他のファイルを検索するための実行可能命令を含む。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィクモジュール132、音声回路110、スピーカ111、RF回路108、及びブラウザモジュール147と関連して、ビデオ及び音楽再生モジュール152は、MP3又はAACファイルなどの1つ以上のファイル形式で記憶された録音済みの音楽又は他のサウンドファイルをユーザがダウンロード及び再生できるようにする実行可能命令、並びにビデオを(タッチスクリーン112上又は外部ポート124を介して接続された外部のディスプレイ上に)表示、提示、又は別の方法で再生するための実行可能命令を含む。いくつかの実施形態において、デバイス100は、任意選択的に、iPod(Apple Inc.の登録商標)などのMP3プレーヤの機能を含む。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と共に、メモモジュール153は、ユーザの指示に従って、メモ、ToDoリストなどを作成及び管理するための、実行可能命令を含む。
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、及びブラウザモジュール147と関連して、地図モジュール154は、ユーザの指示に従い、地図及び地図に関連付けられたデータ(例えば、運転方向、特定の位置又はその近くの店舗及びその他の見所のデータ、並びに他の位置ベースのデータ)を受信、表示、変更、及び記憶するのに使用してもよい。
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、音声回路110、スピーカ111、RF回路108、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と関連して、オンラインビデオモジュール155は、ユーザがH.264などの1つ以上のファイル形式のオンラインビデオにアクセスし、ブラウズし、受信し(例えば、ストリーミング及び/又はダウンロードにより)、再生し(例えば、タッチスクリーン上で又は外部ポート124を介して接続された外部のディスプレイ上で)、特定のオンラインビデオへのリンクを含む電子メールを送信し、別の方法で管理できるようにする命令を含む。いくつかの実施形態においては、電子メールクライアントモジュール140ではなく、インスタントメッセージングモジュール141が、特定のオンライン映像へのリンクを送信するために用いられる。2007年6月20日に出願された米国仮特許出願第60/936,562号、「Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos」、及び2007年12月31日に出願された米国特許出願第11/968,067号、「Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos」に、オンラインビデオアプリケーションの追加の説明を見いだすことができる。これらの出願の内容はその全体が本明細書において参照により組み込まれている。
上記で識別されたモジュール及びアプリケーションのそれぞれは、1つ又はそれ以上の上記の機能を実行するための実行可能命令セット及び本出願に記載の方法(例えば、コンピュータにより実行される方法及び本明細書に記載の他の情報処理方法)に対応する。これらのモジュール(例えば、命令のセット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、それゆえ、様々な実施形態では、これらのモジュールの様々なサブセットを組み合わせるか、又は他の方式で再編成することができる。例えば、ビデオ再生モジュールは音楽再生モジュールと組み合わせて単一のモジュール(例えば、ビデオ及び音楽再生モジュール152、図1A)にされてもよい。いくつかの実施形態では、メモリ102は、上記で識別されたモジュール及びデータ構造のサブセットを記憶することができる。更に、メモリ102は、上述されていない追加のモジュール及びデータ構造を記憶してもよい。
いくつかの実施形態では、デバイス100は、デバイス上の機能の既定のセットの動作が排他的にタッチスクリーン及び/又はタッチパッドを介して実行されるデバイスである。デバイス100の動作のための主要な入力制御デバイスとしてタッチスクリーン及び/又はタッチパッドを使用することにより、デバイス100上の物理的な入力制御デバイス(プッシュボタン、ダイヤル、及び同様のものなど)の数を減らすことができる。
排他的にタッチスクリーン及び/又はタッチパッドを介して実行される、既定の機能のセットは、任意選択的に、ユーザインタフェース間のナビゲーションを含む。いくつかの実施形態において、タッチパッドは、ユーザによってタッチされると、デバイス100上に表示される任意のユーザインタフェースから、メインメニュー、ホームメニュー、又はルートメニューへデバイス100をナビゲートする。かかる実施形態において、「メニューボタン」はタッチパッドを使って実装される。いくつかの他の実施形態におい、メニューボタンは、タッチパッドの代わりに、物理的なプッシュボタン又は他の物理的な入力制御デバイスである。
図1Bは、いくつかの実施形態に係る、イベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ102(図1A)又は370(図3)は、イベントソータ170(例えば、オペレーティングシステム126内)及び対応するアプリケーション136-1(例えば、上述のアプリケーション137から151、155、及び380から390のいずれか)を含む。
イベントソータ170は、イベント情報を受け付け、イベント情報を送るアプリケーション136-1及びアプリケーション136-1のアプリケーションビュー191を決定する。イベントソータ170は、イベントモニタ171及びイベントディスパッチャモジュール174を含む。いくつかの実施形態において、アプリケーション136-1は、アプリケーションがアクティブ又は実行中の時、タッチ感知ディスプレイ112で上に表示される現在のアプリケーションビュー(1つ以上)を示す、アプリケーション内部状態192を含む。いくつかの実施形態では、デバイス/グローバル内部状態157は、いずれのアプリケーションが現在アクティブであるかを判定するために、イベントソータ170によって使用され、アプリケーション内部状態192は、イベント情報の配信先となるアプリケーションビュー191を決定するために、イベントソータ170によって使用される。
いくつかの実施形態では、アプリケーション内部状態192は、アプリケーション136-1が実行を再開する際に使用される再開情報、アプリケーション136-1によって情報が表示されているか又は表示の準備が整っていることを示すユーザインタフェース状態情報、ユーザがアプリケーション136-1の以前の状態又はビューに戻ることを可能にするための状態待ち行列、及びユーザが以前に行ったアクションのリドゥ/アンドゥ待ち行列のうちの1つ以上などの、追加情報を含む。
イベントモニタ171は、周辺機器インタフェース118からイベント情報を受信する。イベント情報は、サブイベント(例えば、マルチタッチジェスチャの一部としての、タッチ感知ディスプレイ112上でのユーザのタッチ)についての情報を含む。周辺機器インタフェース118は、I/Oサブシステム106又は(音声回路110を介して)近接センサ166、加速度計(1つ又は複数)168、及び/若しくはマイクロフォン113などのセンサから受信する情報を送信する。周辺機器インタフェース118がI/Oサブシステム106から受け取る情報は、タッチ感知ディスプレイ112又はタッチ感知面からの情報を含む。
いくつかの実施形態では、イベントモニタ171は、所定の間隔で周辺機器インタフェース118に要求を送る。これに応じて、周辺機器インタフェース118は、イベント情報を送出する。他の実施形態において、周辺機器インタフェース118は、重要なイベント(例えば、所定のノイズ閾値を超える、及び/又は所定時間より長い入力を受け付けること)がある場合にのみイベント情報を送出する。
いくつかの実施形態では、イベントソータ170はまた、ヒットビュー判定モジュール172及び/又はアクティブイベント認識部判定モジュール173も含む。
ヒットビュー判断モジュール172は、タッチ感知ディスプレイ112が1つ以上のビューを表示した際に、1つ以上のビュー内のどこにおいてサブイベントが発生したかを判断するためのソフトウェア手続きを提供する。ビューは、ユーザがディスプレイ上で見ることが可能な、制御部及び他の要素で構成される。
アプリケーションに関連付けられるユーザインタフェースの別の態様は、本明細書では、アプリケーションビュー又はユーザインタフェースウィンドウと呼ばれる場合がある、ビューのセットであり、それらの中で、情報が表示され、タッチに基づくジェスチャが実施される。タッチが検出される(それぞれのアプリケーションの)アプリケーションビューは、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応してもよい。例えば、タッチが検出される最低レベルのビューはヒットビューと呼ばれてもよく、適切な入力として認識されるイベントのセットは、少なくとも部分的には、タッチベースのジェスチャを開始する最初のタッチのヒットビューに基づいて判定されてもよい。
ヒットビュー判断モジュール172は、タッチベースのジェスチャのサブイベントと関連付けられた情報を受け取る。アプリケーションが、階層として編成された複数のビューを有する場合、ヒットビュー判定モジュール172は、サブイベントを処理するべき階層内の最下位のビューとして、ヒットビューを特定する。ほとんどの状況では、ヒットビューは、最初のサブイベント(例えば、イベント又は潜在的なイベントを形成するサブイベントのシーケンスにおける最初のサブイベント)が発生する最低レベルのビューである。ヒットビューがヒットビュー判定モジュール172によって識別されると、ヒットビューは、典型的には、それがヒットビューとして識別された、同じタッチ又は入力ソースに関連する全てのサブイベントを受け付ける。
アクティブイベント認識部判定モジュール173は、ビュー階層内のどのビュー(1つ以上)がサブイベントの特定のシーケンスを受け取るべきかを判断する。いくつかの実施形態において、アクティブイベント認識部判定モジュール173は、ヒットビューのみがサブイベントの特定のシーケンスを受け付けるべきであると判定する。他の実施形態において、アクティブイベント認識部判定モジュール173は、サブイベントの物理的な位置を含むすべてのビューはアクティブに関わっているビューであると判定し、したがって、全てのアクティブに関わっているビューは、サブイベントの特定のシーケンスを受け付けるべきであると判定する。他の実施形態では、タッチサブイベントがある特定のビューに関連付けられた領域に完全に限定されたとしても、階層の上位のビューはアクティブに関わっているビューのままであるであろう。
イベントディスパッチャモジュール174は、イベント情報をイベント認識部(例えば、イベント認識部180)に送信する。アクティブイベント識別部判定モジュール173を含む実施形態において、イベントディスパッチャモジュール174は、アクティブイベント認識部判定モジュール173により判定されたイベント認識部にイベント情報を送る。いくつかの実施形態では、イベントディスパッチャモジュール174は、それぞれのイベント受信部182により取得されるイベント情報をイベント待ち行列内に記憶する。
いくつかの実施形態では、オペレーティングシステム126は、イベントソータ170を含む。あるいは、アプリケーション136-1が、イベントソータ170を含む。更に他の実施形態において、イベントソータ170は、スタンドアロンモジュール、又は接触/動きモジュール130などのメモリ102に記憶された他のモジュールの一部である。
いくつかの実施形態では、アプリケーション136-1は、そのアプリケーションのユーザインタフェースの各ビュー内で発生するタッチイベントを処理するための命令をそれぞれが含む、複数のイベントハンドラ190及び1つ以上のアプリケーションビュー191を含む。アプリケーション136-1のそれぞれのアプリケーションビュー191は、イベント認識部180のうちの1つ以上を含む。典型的に、それぞれのアプリケーションビュー191は、複数のイベント認識部180を含む。他の実施形態において、イベント認識部180のうちの1つ以上は、ユーザインタフェースキット(図示せず)又はアプリケーション136-1が方法及び他の性質を継承する上位レベルのオブジェクトなど、別個のモジュールの一部である。いくつかの実施形態において、それぞれのイベントハンドラ190は、データアップデータ176、オブジェクトアップデータ177、GUIアップデータ178、及び/又はイベントソータ170から受け付けたイベントデータ179のうちの1つ以上を含む。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176、オブジェクトアップデータ177、又はGUIアップデータ178を利用するか又は呼び出してもよい。あるいは、アプリケーションビュー191のうちの1つ以上は、1つ以上のそれぞれのイベントハンドラ190を含む。また、いくつかの実施形態において、データアップデータ176、オブジェクトアップデータ177、及びGUIアップデータ178のうちの1つ以上がそれぞれのアプリケーションビュー191内に含まれている。
各イベント認識部180は、イベントソータ170からイベント情報(例えば、イベントデータ179)を受け取って、そのイベント情報からイベントを特定する。イベント認識部180は、イベント受信部182及びイベント比較部184を含む。いくつかの実施形態では、イベント認識部180は更に、メタデータ183及びイベント配信命令188(サブイベント配信命令を含んでいてもよい)の少なくともサブセットを含む。
イベント受信器182は、イベントソータ170からイベント情報を受信する。イベント情報は、例えば、タッチ又はタッチの移動などのサブイベントの情報を含む。サブイベントによっては、イベント情報は、サブイベントの位置などの追加情報をもまた含む。サブイベントがタッチの動きに関わる場合には、イベント情報はサブイベントの速さ及び方向を更に含んでもよい。いくつかの実施形態において、イベントは、ある方向から別の方向へ(例えば、ポートレートの向きからランドスケープの向きへ、又はその逆)のデバイスの回転を含み、イベント情報は、デバイスの現在の向き(デバイスの姿勢とも呼ばれる)についての対応する情報を含む。
イベント比較部184は、イベント情報を既定のイベント又はサブイベントの定義と比較し、その比較により、イベント又はサブイベントを判断、又はイベント若しくはサブイベントの状態を判断又は更新する。いくつかの実施形態において、イベント比較部184は、イベント定義186を含む。イベント定義186は、例えば、イベント1(187-1)、イベント2(187-2)などの、イベントの定義(例えば、サブイベントの既定のシーケンス)を含む。いくつかの実施形態において、イベント(187)内のサブイベントは、例えば、タッチ開始、タッチ終了、タッチの移動、タッチの中止、及び複数のタッチを含む。ある実施例において、イベント1(187-1)の定義は、表示されたオブジェクト上のダブルタップである。ダブルタップは、例えば、表示されたオブジェクト上の所定の段階についての第1のタッチ(タッチ開始)、所定の段階についての第1のリフトオフ(タッチ終了)、表示されたオブジェクト上の所定の段階についての第2のタッチ(タッチ開始)、及び所定の段階についての第2のリフトオフ(タッチ終了)を含む。別の実施形態において、イベント2(187-2)の定義は、表示されたオブジェクト上のドラッグである。ドラッグは、例えば、表示されたオブジェクト上の所定の段階についてのタッチ(又は接触)、タッチ感知ディスプレイ112にわたるタッチの移動、及びタッチのリフトオフ(タッチ終了)を含む。いくつかの実施形態において、イベントは、1つ以上の関連付けられたイベントハンドラ190についての情報も含む。
いくつかの実施形態では、イベント定義187は、それぞれのユーザインタフェースオブジェクト用のイベントの定義を含む。いくつかの実施形態において、イベント比較部184は、サブイベントに関連付けられたユーザインタフェースオブジェクトを判定するヒットテストを実行する。例えば、3つのユーザインタフェースオブジェクトがタッチ感知ディスプレイ112に表示されるアプリケーションビューにおいて、タッチ感知ディスプレイ112上でタッチが検出されると、イベント比較部184は、3つのユーザインタフェースオブジェクトのうちのどれがタッチ(サブイベント)に関連付けられているかを判断するためのヒットテストを行う。表示されたそれぞれのオブジェクトが、それぞれのイベントハンドラ190に関連付けられている場合、イベント比較部はヒットテストの結果を用いて、アクティブ化する必要のあるイベントハンドラ190を判定する。例えば、イベント比較部184は、サブイベント及びヒットテストのトリガーとなるオブジェクトに関連付けられたイベントハンドラを選択する。
いくつかの実施形態では、各イベント(187)に関する定義はまた、サブイベントのシーケンスがイベント認識部のイベントタイプに対応するか否かが判定されるまで、イベント情報の送付を遅延させる、遅延作用も含む。
それぞれのイベント認識部180は、一連のサブイベントがイベント定義186のイベントのいずれとも一致しないと判断した場合、それぞれのイベント認識部180は、イベント不可能、イベント失敗、又はイベント終了の状態に入り、その後は、タッチベースのジェスチャの次のサブイベントを無視する。この状況では、もしあれば、ヒットビューについてアクティブのままである他のイベント認識部は、進行中のタッチベースのジェスチャのサブイベントの追跡及び処理を続行する。
いくつかの実施形態において、それぞれのイベント認識部180は、構成可能なプロパティ、フラグ、及び/又はイベント配信システムがアクティブに関わっているイベント認識部にどのようにサブイベント配信を実行するかについて示すリストを持つメタデータ183を含む。いくつかの実施形態において、メタデータ183は、イベント認識部が互いにどのように対話し得るかについて示す構成可能なプロパティ、フラグ、及び/又はリストを含む。いくつかの実施形態において、メタデータ183は、構成可能なプロパティ、フラグ、及び/又はサブイベントがビュー階層又はプログラム階層内の様々なレベルに配布されるかどうかを示すリストを含む。
いくつかの実施形態において、それぞれのイベント認識部180は、イベントの1つ以上の特定のサブイベントが認識されたときに、イベントに関連付けられたイベントハンドラ190をアクティブ化する。いくつかの実施形態において、それぞれのイベント認識部180は、イベントハンドラ190に、イベントに関連付けられたイベント情報を送る。イベントハンドラ190をアクティブ化することと、それぞれのヒットビューにサブイベントを送信(及び送信を延期する)することとは、区別される。いくつかの実施形態において、イベント認識部180は、認識されたイベントに関連付けられたフラグをスローし、フラグに関連付けられたイベントハンドラ190はフラグをキャッチし、既定の処理を実行する。
いくつかの実施形態において、イベント配信命令188は、イベントハンドラをアクティブ化せずにサブイベントに関するイベント情報を配信するサブイベント配信命令を含む。その代わりに、サブイベント配信命令は、一連のサブイベントに関連付けられたイベントハンドラ又はアクティブに関わっているビューにイベント情報を送る。一連のサブイベント又はアクティブに関わっているビューに関連付けられているイベントハンドラは、イベント情報を受け付け、所定の処理を実行する。
いくつかの実施形態において、データアップデータ176は、アプリケーション136-1で使用されるデータを作成及び更新する。例えば、データアップデータ176は、連絡先モジュール137で使用される電話番号を更新したり、ビデオ再生モジュールで使用されるビデオファイルを記憶したりする。いくつかの実施形態において、オブジェクトアップデータ177は、アプリケーション136-1で使用されるオブジェクトを作成及び更新する。例えば、オブジェクトアップデータ177は、新たなユーザインタフェースオブジェクトを作成したり、ユーザインタフェースオブジェクトの位置を更新したりする。GUIアップデータ178は、GUIを更新する。例えば、GUIアップデータ178は、表示情報を準備し、タッチ感知ディスプレイ上に表示するため、表示情報をグラフィクモジュール132に送信する。
いくつかの実施形態では、イベントハンドラ190は、データアップデータ176、オブジェクトアップデータ177、及びGUIアップデータ178を含むか、若しくはそれらに対するアクセスを有する。いくつかの実施形態において、データアップデータ176、オブジェクトアップデータ177、及びGUIアップデータ178は、それぞれのアプリケーション136-1又はアプリケーションビュー191の1つのモジュールに含まれる。他の実施形態では、それらは、2つ以上のソフトウェアモジュールに含まれる。
タッチ感知ディスプレイ上のユーザのタッチのイベント処理に関する前述の論考はまた、入力デバイスを使用して多機能デバイス100を動作させるための他の形態のユーザ入力にも適用されるが、その全てがタッチスクリーン上で開始されるわけではないことが理解されよう。例えば、単一又は複数のキーボードの押下又は保持に任意選択的に合わせたマウスの移動及びマウスボタンの押下、タッチパッド上でのタップ、ドラッグ、スクロールなどの接触移動、ペンスタイラス入力、デバイスの移動、口頭指示、検出された眼球運動、バイオメトリック入力、及び/又はこれらの任意の組み合わせが、認識対象のイベントを定義するサブイベントに対応する入力として、任意選択的に利用される。
図2は、いくつかの実施形態に係る、タッチスクリーン112を有するポータブル多機能デバイス100を示す。タッチスクリーンは、ユーザインタフェース(UI)200内に1つ以上のグラフィックを、任意選択的に、表示する。後述する実施形態並びに本実施形態において、ユーザは、例えば、1本以上の指202(図には、正確な縮尺率では描かれていない)又は1つ以上のスタイラス203(図には、正確な縮尺率では描かれていない)を用いてグラフィック上でジェスチャを行うことにより、グラフィックのうちの1つ以上を選択できる。いくつかの実施形態において、ユーザが1つ以上のグラフィックとの接触を断った際に、1つ以上のグラフィックの選択が生じる。いくつかの実施形態において、ジェスチャは、1回以上のタップ、1回以上のスワイプ(左から右へ、右から左へ、上方向へ、及び/又は下方向へ)、及び/又はデバイス100と接触した指のローリング(右から左へ、左から右へ、上方向へ、及び/又は下方向へ)を、任意選択的に、含む。いくつかの実装又は状況において、グラフィックとの偶発的な接触は、グラフィックを選択しない。例えば、選択に対応するジェスチャがタップである場合、アプリケーションアイコンの上をスワイプするスワイプジェスチャは、対応するアプリケーションを、任意選択的に、選択しない。
デバイス100はまた、「ホーム」又はメニューボタン204などの、1つ以上の物理ボタンも含み得る。前述したように、メニューボタン204は、デバイス100上で実行することができるアプリケーションのセット内の任意のアプリケーション136へのナビゲーションに使用されてもよい。あるいは、いくつかの実施形態において、メニューボタンは、タッチスクリーン112に表示されたGUIにおけるソフトキーとして実装されている。
いくつかの実施形態において、デバイス100は、タッチスクリーン112、メニューボタン204、デバイスへの電源をオン/オフしてデバイスをロックするためのプッシュボタン206、音量調整ボタン(1つ以上)208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212、及びドッキング/充電用外部ポート124を含む。プッシュボタン206は、ボタンを押下して、既定の時間間隔にわたってボタンを押下された状態で保持することによって、デバイス上の電源をオン/オフし、ボタンを押下して、既定の時間間隔が経過する前にボタンを解放することによって、デバイスをロックし、及び/又はデバイスをロック解除するか、若しくはロック解除処理を開始するために、任意選択的に使用される。代替的実施形態において、デバイス100はまた、マイクロフォン113を通して、一部の機能をアクティブ化し、又はディアクティブ化するための口頭入力を受け付ける。また、デバイス100は、タッチスクリーン112への接触の強度を検出するための1つ以上の接触強度センサ165及び/又はデバイス100のユーザの触覚出力を生成するための1つ以上の触覚出力生成器167を、任意選択的に、含む。
図3は、いくつかの実施形態に係る、ディスプレイ及びタッチ感知面を備える例示的な多機能デバイスのブロック図である。デバイス300は、ポータブルでなくてもよい。いくつかの実施形態において、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディアプレーヤデバイス、ナビゲーションデバイス、教育的デバイス(子供の学習玩具など)、ゲームシステム、又は制御デバイス(例えば、ホーム又は業務用コントローラ)である。デバイス300は、典型的には、1つ以上の処理ユニット(CPU)310と、1つ以上のネットワーク又は他の通信インタフェース360と、メモリ370と、及びこれらの構成要素を相互接続するための1つ以上の通信バス320とを含む。通信バス320は、システム構成要素間の通信を相互接続及び制御する回路(チップセットと称することがある)を、任意選択的に含む。デバイス300は、典型的にはタッチスクリーンディスプレイである、ディスプレイ340を備える入出力(I/O)インタフェース330を含む。I/Oインタフェース330はまた、キーボード及び/又はマウス(又は他のポインティングデバイス)350並びにタッチパッド355、デバイス300上に触知出力を生成するための(例えば、図1Aを参照して上述された触知出力生成器167と同様の)触知出力生成器357、センサ359(例えば、光センサ、加速度センサ、近接センサ、タッチ感知センサ、及び/又は図1Aを参照して上述された接触強度センサ165と同様の接触強度センサ)も、任意選択的に含む。メモリ370は、DRAM、SRAM、DDR RAM、又は他のランダムアクセス半導体メモリデバイスなどの、高速ランダムアクセスメモリを含み、また任意選択的に、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性半導体記憶デバイスなどの、不揮発性メモリを含む。メモリ370は、CPU(1つ又は複数)310からは離れて位置する1つ以上の記憶デバイスを、任意選択的に、含む。いくつかの実施形態において、メモリ370は、ポータブル多機能デバイス100(図1A)のメモリ102に記憶されたプログラム、モジュール、及びデータ構造、プログラム、モジュール、及びデータ構造、又はそれらのサブセットを記憶する。更に、メモリ370は、携帯型多機能デバイス100のメモリ102内に存在しない追加プログラム、モジュール、及びデータ構造を記憶し得る。例えば、デバイス300のメモリ370は、描画モジュール380、プレゼンテーションモジュール382、文書作成モジュール384、ウェブサイト作成モジュール386、ディスクオーサリングモジュール388、及び/又はスプレッドシートモジュール390を、任意選択的に記憶するが、ポータブル多機能デバイス100(図1)のメモリ102は、これらのモジュールを、任意選択的に記憶しない。
図3の上記で識別された要素のそれぞれは、前述のメモリデバイスの1つ以上に記憶してもよい。上記で識別されたモジュールうちのそれぞれは、上述した機能を実行するための命令セットに対応する。上記で識別されたモジュール若しくはプログラム(例えば、命令セット)は、別個のソフトウェアプログラム、手続き、又はモジュールとして実施される必要はなく、したがって、様々な実施形態において、これらのモジュールの様々なサブセットを組み合わせてもよく、又は別の方法で再配置されてもよい。いくつかの実施形態では、メモリ370は、上記で識別されたモジュール及びデータ構造のサブセットを記憶することができる。更に、メモリ370は、上述されていない追加のモジュール及びデータ構造を記憶してもよい。
ここで、例えば、ポータブル多機能デバイス100上に実装してもよいユーザインタフェースの実施形態に注目する。
図4Aは、いくつかの実施形態に係る、ポータブル多機能デバイス100上のアプリケーションのメニューのための例示的なユーザインタフェースを示す。同様のユーザインタフェースが、デバイス300上に実装されてもよい。いくつかの実施形態では、ユーザインタフェース400は、以下の要素、又はそれらのサブセット若しくはスーパーセットを含む。
●セルラー及びWi-Fi信号などの無線通信(1つ又は複数)のための信号強度標識(1つ又は複数)402、
●時刻404、
●Bluetooth標識405、
●バッテリ状態標識406、
●下記などの、頻繁に利用されるアプリケーション用のアイコンを含むトレー408、
○不在着信又は音声メールメッセージの数の標識414を任意選択的に含む、「電話」とラベル付けされる、電話モジュール138用のアイコン416、
○未読電子メールの数の標識410を任意選択的に含む、「メール」とラベル付けされた、電子メールクライアントモジュール140用のアイコン418、
○「ブラウザ」とラベル付けされる、ブラウザモジュール147用のアイコン420、並びに
○「iPod」とラベル付けされる、iPod(Apple Inc.の商標)モジュール152とも称されるビデオ及び音楽再生モジュール152用のアイコン422、並びに
●下記などの、その他のアプリケーション用のアイコン、
○「メッセージ」とラベル付けされる、IMモジュール141用のアイコン424、
○「カレンダ」とラベル付けされる、カレンダモジュール148用のアイコン426、
○「写真」とラベル付けされる、画像管理モジュール144用のアイコン428、
○「カメラ」とラベル付けされる、カメラモジュール143用のアイコン430、
○「オンラインビデオ」とラベル付けされる、オンラインビデオモジュール155用のアイコン432、
○「株価」とラベル付けされる、株価ウィジェット149-2用のアイコン434、
○「マップ」とラベル付けされる、地図モジュール154用のアイコン436、
○「天気」とラベル付けされる、天気ウィジェット149-1用のアイコン438、
○「時計」とラベル付けされる、アラーム時計ウィジェット149-4用のアイコン440、
○「トレーニングサポート」とラベル付けされる、トレーニングサポートモジュール142用のアイコン442、
○「メモ」とラベル付けされる、メモモジュール153用のアイコン444、並びに
○「設定」とラベル付けされる、デバイス100及びその様々なアプリケーション136に関する設定へのアクセスを提供する、設定アプリケーション若しくはモジュール用のアイコン446。
図4Aに示されているアイコンのラベルは、単なる例示であることに留意されたい。例えば、ビデオ及び音楽再生モジュール152用のアイコン422は、任意選択的に、「音楽」又は「音楽プレーヤ」とラベル付けされてもよい。他のラベルが、様々なアプリケーションアイコンのために、任意選択的に使用される。いくつかの実施形態では、それぞれのアプリケーションアイコンに関するラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。いくつかの実施形態において、特定のアプリケーションアイコンのラベルは、特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
図4Bは、ディスプレイ450(例えば、タッチスクリーンディスプレイ112)とは別個のタッチ感知面451(例えば、図3のタブレット又はタッチパッド355)を備えるデバイス(例えば、図3のデバイス300)上の、例示的なユーザインタフェースを示す。デバイス300はまた、タッチ感知面451上の接触の強度を検出するための、1つ以上の接触強度センサ(例えば、センサ357のうちの1つ以上)、及び/又はデバイス300のユーザに対する触知出力を生成するための、1つ以上の触知出力生成器359を含む。
以下の実施例のうちのいくつかは、タッチスクリーンディスプレイ112上の入力(タッチ感知面とディスプレイとが組み合わされている場合)を参照して説明されるが、いくつかの実施形態では、デバイスは、図4Bに示すように、ディスプレイとは別個のタッチ感知面上で入力を検出する。いくつかの実施形態では、このタッチ感知面(例えば、図4Bでの451)は、ディスプレイ(例えば、450)上の主軸(例えば、図4Bでの453)に対応する主軸(例えば、図4Bでの452)を有する。これらの実施形態によれば、デバイスは、ディスプレイ上のそれぞれの場所に対応する場所(例えば、図4Bでは、460は468に対応し、462は470に対応する)での、タッチ感知面451との接触(例えば、図4Bでの460及び462)を検出する。このように、タッチ感知面がディスプレイとは別個のものである場合、タッチ感知面(例えば、図4Bでの451)上でデバイスによって検出されたユーザ入力(例えば、接触460及び462、並びにそれらの移動)が、多機能デバイスのディスプレイ(例えば、図4Bでの450)上のユーザインタフェースを操作するために、デバイスによって使用される。同様の方法が、本明細書に記載の他のユーザインタフェースに、任意選択的に使用されることを理解されたい。
更に加えて、以下の説明は、主に指入力(例えば、指の接触、指のタップジェスチャ、指のスワイプジェスチャ)を参照して説明されるが、いくつかの実施形態では、それらの指入力のうちの1つ以上は、別の入力デバイスからの入力(例えば、マウスに基づく入力又はスタイラス入力)で置き換えられることを理解されたい。例えば、スワイプジェスチャは、任意選択的に、(例えば、接触の代わりに)マウスクリックと置換され、その後、(例えば、接触の移動の代わりに)スワイプの経路に沿ってカーソルの移動が行われる。別の実施例として、タップジェスチャは、(例えば、接触の検出に続いて接触の検出を停止する代わりに)カーソルがタップジェスチャの位置上に配置される間、任意選択的に、マウスクリックと置換される。同様に、複数のユーザ入力が同時に検出されるとき、複数のコンピュータマウスが同時に、任意選択的に用いられ、又はマウスと指接触が同時に用いられることが理解されよう。
図5Bは、例示的な個人用電子デバイス500を示す。デバイス500は、本体502を備える。いくつかの実施形態では、デバイス500は、デバイス100及び300(例えば、図1A~図4B)に関して記載した特徴のいくつか又はすべてを含み得る。いくつかの実施形態では、デバイス500は、タッチ感知ディスプレイ画面504、以後、タッチスクリーン504、を有する。代替として、又はタッチスクリーン504に加えて、デバイス500はディスプレイ及びタッチ感知面を有する。デバイス100及び300と同様に、いくつかの実施形態では、タッチスクリーン504(又はタッチ感知面)は、加えられている接触(例えば、タッチ)の強度を検出するための1つ以上の強度センサを有してもよい。タッチスクリーン504(又はタッチ感知面)の1つ以上の強度センサは、タッチの強度を表す出力データを提供してもよい。デバイス500のユーザインタフェースは、タッチの強度に基づきタッチに応じてもよく、これは、異なる強度のタッチはデバイス500上で異なるユーザインタフェース動作を呼び出してもよいことを意味する。
タッチ強度を検出及び処理するための技術は、例えば、関連出願である、2013年5月8日出願の「Device,Method,and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application」と題された国際特許出願第PCT/US2013/040061号、及び2013年11月11日出願の「Device,Method,and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships」と題された国際特許出願第PCT/US2013/069483号に記載されていてもよい。これらのそれぞれは、その全体が参照により本明細書に援用される。
いくつかの実施形態では、デバイス500は、1つ以上の入力機構506及び508を有する。入力機構506及び508は、含まれている場合、物理的であってもよい。物理的入力機構の例は、プッシュボタン及び回転可能機構を含む。いくつかの実施形態では、デバイス500は、1つ以上の取付機構を有する。そのような取付機構は、含まれている場合、例えば、帽子、アイウェア、イヤリング、ネックレス、シャツ、ジャケット、ブレスレット、時計バンド、チェーン、ズボン、ベルト、靴、財布、バックパックなどへのデバイス500の取付を可能にしてもよい。これらの取付機構は、デバイス500がユーザによって着用されることを可能にしてもよい。
図5Bは、例示的な個人用電子デバイス500を示す。いくつかの実施形態では、デバイス500は、図1A、図1B及び図3に関して記載した構成要素のいくつか又はすべてを含み得る。デバイス500は、I/O部514を1つ以上のコンピュータプロセッサ516及びメモリ518に動作可能に結合する、バス512を有する。I/O部514は、タッチ感知構成要素522、及び、任意選択的に、タッチ強度感知構成要素524を有し得る、ディスプレイ504に接続されてもよい。更に、I/O部514は、Wi-Fi、Bluetooth(登録商標)、近距離通信(near field communication、NFC)、セルラー及び/又は他の無線通信技術を使用してアプリケーション及びオペレーティングシステムデータを受信するための通信ユニット530に接続されてもよい。デバイス500は、入力機構506及び/又は508を備えてもよい。入力機構506は、例えば、回転可能入力デバイス、又は押下可能かつ回転可能入力デバイスであってもよい。入力機構508は、いくつかの実施例では、ボタンであってもよい。
入力機構508は、いくつかの実施例では、マイクロフォンであってもよい。個人用電子デバイス500は、GPSセンサ532、加速度計534、方向センサ540(例えば、コンパス)、ジャイロスコープ536、動きセンサ538、及び/又はこれらの組み合わせなどの様々なセンサを備えてもよく、これらの全てはI/O部514に動作可能に接続されてもよい。
個人用電子デバイス500のメモリ518は、コンピュータ実行可能命令を記憶するための非一時的コンピュータ可読記憶媒体であってもよく、これらの命令は、1つ以上のコンピュータプロセッサ516によって実行されたときに、例えば、コンピュータプロセッサに、処理800、900、1600、1800、2100、2700、3800及び4500(図8、図9、図16、図18、図21、図27、図38A~B及び図45)を含む、上述の技術を実行させてもよい。コンピュータ実行可能命令はまた、コンピュータベースのシステム、プロセッサを含むシステム、又は、命令実行システム、装置、若しくはデバイスから命令をフェッチし、それらの命令を実行し得る他のシステムなどの、命令実行システム、装置、又はデバイスによって、又はそれらと共に使用するために、任意の非一時的コンピュータ可読記憶媒体に記憶及び/又は伝送されてもよい。本明細書の目的においては、「非一時的コンピュータ可読記憶媒体」は、命令実行システム、装置、若しくはデバイスによって、又はこれらと関連して使用するためのコンピュータ実行可能命令を有形的に収容又は記憶し得る、任意の媒体であってもよい。非一時的コンピュータ可読記憶媒体は、磁気的、光学的、及び/又は半導体記憶装置を含み得るが、これらに限定されない。そのような記憶装置の例は、磁気ディスク、CD、DVD、又はBlu-ray技術に基づく光ディスク、及びフラッシュメモリ、ソリッドステートドライブなどの永続的ソリッドステートメモリを含む。個人用電子デバイス500は、図5Bの構成要素及び構成に限定されず、他の又は追加の構成要素を複数の構成で含んでもよい。
ここで使用されるとき、用語「アフォーダンス」は、デバイス100、300、及び/又は500(図1、3、及び5)のディスプレイスクリーン上に表示され得るユーザ対話式のグラフィカルユーザインタフェースオブジェクトを指す。例えば、画像(例えば、アイコン)、ボタン、及びテキスト(例えば、ハイパーリンク)がそれぞれ、アフォーダンスを構成してもよい。
本明細書で使用されるとき、用語「フォーカスセレクタ」とは、ユーザが対話しているユーザインタフェースの現在の部分を示す、入力要素を指す。カーソル又は他のロケーションマーカを含む実装において、カーソルは、タッチ感知面(例えば、図3のタッチパッド355、又は図4Bのタッチ感知面451)上で入力(例えば、押下げ入力)が検出されたときに、カーソルが特定のユーザインタフェース要素(例えば、ボタン、ウインドウ、スライダ、又は他のユーザインタフェース要素)の上にあるとき、「フォーカスセレクタ」として機能し、特定のユーザインタフェース要素が、検出された入力に従って調整される。タッチスクリーン上でのユーザインタフェースとの直接的な対話を有効にするタッチスクリーンディスプレイ(例えば、図1Aのタッチ感知ディスプレイシステム112、又は図4Aのタッチスクリーン112)を含むいくつかの実装において、タッチスクリーン上の検出された接触は、入力(例えば、接触による押下げ入力)が特定のユーザインタフェース要素(例えば、ボタン、ウインドウ、又は他のユーザインタフェース要素)の位置にあるタッチスクリーン上で検出されたときに、「フォーカスセレクタ」として機能し、特定のユーザインタフェース要素が、検出された入力に従って調整される。いくつかの実装において、(例えば、タブキー又は矢印キーを使ったフォーカスの1つのボタンから別のボタンへの移動により)タッチスクリーン上の対応するカーソルの移動又は接触の移動なしに、フォーカスが、ユーザインタフェースの1つの領域からユーザインタフェースの別の領域に移動される。これらの実装において、フォーカスセレクタは、ユーザインタフェースの異なる領域間でのフォーカスの移動に従って移動する。フォーカスセレクタが取る特定のフォームに関係なく、フォーカスセレクタは、全体的に、ユーザのユーザインタフェースとの意図した(例えば、ユーザが対話したいと思っているユーザインタフェースの要素をデバイスに指示することによる)対話を伝達するように、ユーザによって制御されたユーザインタフェース要素(又は、タッチスクリーンディスプレイ上の接触)である。例えば、押下げ入力がタッチ感知面(例えば、タッチパッド又はタッチスクリーン)上で検出されたときにそれぞれのボタンの上にあるフォーカスセレクタ(例えば、カーソル、接触又は選択ボックス)の位置は、(デバイスのディスプレイ上に示されている他のユーザインタフェース要素とは反対に)ユーザが、それぞれのボタンをアクティブ化しようとしていることを指示する。
明細書及び特許請求の範囲で使用されるように、接触の「特性強度」という用語は、接触の1つ以上の強度に基づく接触の特性を指す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、既定の数の強度サンプル、又は既定のイベント(例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終了を検出する前、接触の強度の増加を検出する前若しくは後、及び/又は接触の強度の減少を検出する前若しくは後)に対して所定の時間期間(例えば、0.05、0.1、0.2、0.5、1、2、5、10秒)内に収集された強度サンプルのセットに基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均値(mean)、接触の強度の平均値(average)、接触の強度の上位10パーセンタイルの値、接触の強度の最大値の半分の値、接触の強度の最大値の90パーセントの値などのうちの1つ以上に基づく。いくつかの実施形態では、特性強度を判定するために、接触の期間が使用される(例えば、特性強度が経時的な接触の強度の平均であるとき)。いくつかの実施形態では、動作がユーザによって実行されたかどうかを判定するために、特性強度が1つ以上の強度閾値のセットと比較される。例えば、1つ以上の強度閾値のセットは、第1の強度閾値及び第2の強度閾値を含んでもよい。この実施例では、第1の閾値を上回らない特性強度を有する接触の結果として第1の動作が実行され、第1の強度閾値を上回り、第2の強度閾値を上回らない特性強度を有する接触の結果として第2の動作が実行され、第2の閾値を上回る特性強度を有する接触の結果として第3の動作が実行される。いくつかの実施形態では、特性強度と1つ以上の閾値との間の比較が、第1の動作又は第2の動作のいずれを実行するかを判定するために使用されるのではなく、1つ以上の動作を実行するかどうか(例えば、それぞれの動作を実行するのか、又はそれぞれの動作の実行を省略するのか)を判定するために使用される。
いくつかの実施形態では、特性強度を判定する目的で、ジェスチャの一部分が特定される。例えば、タッチ感知面は、接触の強度が増加する、開始位置から遷移して終了位置まで達する連続的なスワイプ接触を受け取ってもよい。この実施例では、終了位置における接触の特性強度は、連続的なスワイプ接触全体ではなく、そのスワイプ接触の一部分(例えば、終了位置におけるスワイプ接触の部分のみ)のみに基づいてもよい。いくつかの実施形態では、接触の特性強度を判定することの前に、平滑化アルゴリズムがスワイプ接触の強度に適用されてもよい。例えば、平滑化アルゴリズムは、任意選択的に、非荷重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び/又は指数平滑化アルゴリズムのうちの1つ以上を含む。いくつかの状況では、これらの平滑化アルゴリズムは、特性強度を判定する目的で、スワイプ接触の強度の小幅な上昇又は低下を除外する。
タッチ感知面上の接触の強度は、接触検出強度閾値、軽い押圧強度閾値、深い押圧強度閾値、及び/又は1つ以上の他の強度閾値などの1つ以上の強度閾値に対して特徴付けされてもよい。いくつかの実施形態では、軽い押圧強度閾値は、物理マウスのボタン又はトラックパッドのクリックに典型的に関連付けられた動作を、デバイスが実行することになる強度に相当する。いくつかの実施形態では、深い押圧強度閾値は、物理マウスのボタン又はトラックパッドのクリックに典型的に関連付けられた動作とは異なる動作を、デバイスが実行することになる強度に相当する。いくつかの実施形態では、軽い押圧強度閾値を下回る(例えば、かつ、それを下回ると接触がもはや検出されないわずかな接触検出強度閾値を上回る)特性強度で接触が検出される場合、デバイスは、軽い押圧強度閾値又は深い押圧強度閾値に関連付けられた動作を実行することなく、タッチ感知面上の接触の移動に従って、フォーカスセレクタを移動させることになる。全般的には、特に明記しない限り、これらの強度閾値は、異なるユーザインタフェース図のセット間でも一貫している。
軽い押圧強度閾値を下回る強度から、軽い押圧強度閾値と深い押圧強度閾値との間の強度への、接触の特性強度の増大は、「軽い押圧」入力と称される場合がある。深い押圧強度閾値を下回る強度から、深い押圧強度閾値を上回る強度への、接触の特性強度の増大は、「深い押圧」入力と称される場合がある。接触検出強度閾値を下回る強度から、接触検出強度閾値と軽い押圧強度閾値との間の強度への、接触の特性強度の増大は、タッチ面上の接触の検出と称される場合がある。接触検出強度閾値を上回る強度から、接触検出強度閾値を下回る強度への、接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と称される場合がある。いくつかの実施形態では、接触検出強度閾値はゼロである。いくつかの実施形態では、接触検出強度閾値はゼロを上回る。
本明細書で説明されるいくつかの実施形態では、1つ以上の動作は、それぞれの押圧入力を含むジェスチャの検出に応じて、又はそれぞれの接触(又は、複数の接触)で実行されるそれぞれの押圧入力の検出に応じて実行され、それらのそれぞれの押圧入力は、少なくとも部分的に、押圧入力強度閾値を上回る接触(又は、複数の接触)の強度の増大の検出に基づいて検出される。いくつかの実施形態では、それぞれの動作は、押圧入力強度閾値を上回る、それぞれの接触の強度の増大(例えば、それぞれの押圧入力の「ダウンストローク」)の検出に応じて、実行される。いくつかの実施形態では、押圧入力は、押圧入力強度閾値を上回る、それぞれの接触の強度の増大、及び後続の押圧入力強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、その後続の押圧入力閾値を下回るそれぞれの接触の強度の減少(例えば、それぞれの押圧入力の「アップストローク」)の検出に応じて、実行される。
いくつかの実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的入力を回避するために、強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との既定の関連性を有するヒステリシス強度閾値を、定義又は選択する(例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりもX強度単位低いか、又は、ヒステリシス強度閾値は、押圧入力強度閾値の75%、90%、若しくは何らかの妥当な比率である)。それゆえ、いくつかの実施形態では、押圧入力は、押圧入力強度閾値を上回る、それぞれの接触の強度の増大、及び後続の、押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、そのヒステリシス強度閾値を下回る、後続のそれぞれの接触の強度の減少(例えば、それぞれの押圧入力の「アップストローク」)の検出に応じて、実行される。同様に、いくつかの実施形態では、押圧入力は、デバイスが、ヒステリシス強度閾値以下の強度から、押圧入力強度閾値以上の強度への、接触の強度の増大、及び任意選択的に、ヒステリシス強度以下の強度への、後続の接触の強度の減少を検出する場合にのみ、検出され、それぞれの動作は、その押圧入力(例えば、状況に応じて、接触の強度の増大、又は接触の強度の減少)の検出に応じて、実行される。
説明を容易にするために、押圧入力強度閾値に関連付けられた押圧入力に応じて、又はその押圧入力を含むジェスチャに応じて実行される動作の説明は、押圧入力強度閾値を上回る接触の強度の増大、ヒステリシス強度閾値を下回る強度から押圧入力強度閾値を上回る強度への接触の強度の増大、押圧入力強度閾値を下回る接触の強度の減少、及び/又は押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少のいずれかの検出に応じて、任意選択的にトリガーされる。更に加えて、押圧入力強度閾値を下回る、接触の強度の減少の検出に応じて、動作が実行されるとして説明される実施例では、その動作は、押圧入力強度閾値に対応し、かつ押圧入力強度閾値よりも低い、ヒステリシス強度閾値を下回る、接触の強度の減少の検出に応じて、任意選択的に実行される。
本明細書で使用するとき、用語「閉じているアプリケーション」とは、状態情報が保持されていない(例えば、閉じているアプリケーションに関する状態情報が、デバイスのメモリ内に記憶されていない)ソフトウェアアプリケーションを指す。したがって、アプリケーションを閉じることは、アプリケーションのアプリケーションプロセスを停止すること及び/又は機器のメモリから除去すること、並びにアプリケーション状態情報を機器のメモリから除去することを含む。一般的には、第1のアプリケーションの間に、第2のアプリケーションを開くことにより、第1のアプリケーションが閉じられることはない。第2のアプリケーションが表示され、第1のアプリケーションが表示されるのが停止されると、第1のアプリケーションはバックグラウンドアプリケーションになる。
システムの概要
図6は、健康データを集約及び共有するための例示的システム600を示す。上で述べたように、健康データは、例えば、体重、心拍数、血圧、血糖値、服薬遵守、活動レベル等、人の健康に関連付けられた任意の種類のデータを含み得るが、これに限定されない。システム600を用いて、ユーザに関連付けられた健康データを収集し、健康データを保存し、健康データをユーザに対し有用な手法で示し、ユーザによって設定された許可に基づきユーザの健康データを他のユーザ又はエンティティと選択的に共有することができる。加えて、いくつかの例においては、システム600を更に用いて、非健康データを健康データと共に収集し、非健康データを健康データと相関させ、非健康データを健康データと共に表示することができる。
システム600は、携帯電話、タブレットコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、PDA等などの任意の電子デバイスを含む1つ以上のユーザデバイス610を含み得る。いくつかの例においては、ユーザデバイス610は、図1A及び図3に示されるもの並びに上述のものと類似する又は同一のデバイスを含み得る。例えば、ユーザデバイス610は、オペレーティングシステムと、健康又は非健康データを、データが記録された時間、データの種類、データを記録するために使用されたデバイス、データに関連付けられたユーザ等などの関連メタデータと共にセキュアに保存するための健康データベース611と、を含み得る。ユーザデバイス610は、健康データベース611内にデータを保存すること、及び健康データベース611内に保存されたデータにアクセスすることのためのアクセス制御を備えたアプリケーションプログラミングインタフェース(API)を更に含み得る。
ユーザデバイス610は、種々のソースから健康又は非健康データを受け取るように構成され得るとともに、受け取ったデータを健康データベース611内に保存することができる。例えば、ユーザデバイス610は、センサ602、604、606及び608から健康又は非健康データを受け取るように構成され得る。これらセンサは、生体センサ、活動量計等などの、健康データを得ることができる任意の種類のセンサを含み得る。例えば、センサ602、604、606及び608としては、体重計、血圧カフ、血糖モニタ、心電図、歩数計、ジャイロスコープ、加速度計、SpO2センサ、呼吸センサ、姿勢センサ、応力センサ、光電式指尖容積脈波、皮膚電気反射センサ、温度センサ、喘息吸入器等が挙げられ得るが、これらに限定されない。センサ602、604、606及び608は、また、状況データ、時間データ、個人データ、接触データ等のデータなどの非健康データを得るための、聴覚センサ、周囲光センサ、電磁センサ、タッチセンサ、容量センサ等などの他の種類のセンサを含み得る。いくつかの例においては、各センサは、別個のデバイスとすることができる一方で、他の例においては、センサのうちの2つ以上の任意の組み合わせを単一デバイス内に含めることができる。例えば、ジャイロスコープ、加速度計、光電式指尖容積脈波、皮膚電気反射センサ及び温度センサを、スマートウォッチなどの着用可能な電子デバイス内に含めることができる一方で、体重計、血圧カフ、血糖モニタ、SpO2センサ、呼吸センサ、姿勢センサ、応力センサ及び喘息吸入器はそれぞれ別個のデバイスとすることができる。特定の例を提供したものの、他のセンサを用いることができるとともに、センサの他の組み合わせを1つのデバイスへと組み合わせることができることは認識されるべきである。
センサ602、604、606及び608を用いて、健康若しくは非健康データを連続的に、断続的に、定期的に、又は任意の他の所望の頻度若しくは時間間隔で測定することができる。例えば、センサ602、604、606及び608を用いて、1つの測定値又は複数の測定値をある時間にわたって得ることができる。センサ602、604、606及び608は、健康若しくは非健康データを同じ時間間隔で測定するように構成され得る、又は、健康若しくは非健康データを異なる時間間隔で測定するように構成され得る。これら間隔は、ユーザによって設定されても、各センサのデフォルト設定であってもよい。加えて、センサ602、604、606、608を用いて、ユーザが所望する任意の時間又は場所にて健康又は非健康データを測定することができる。更に、センサ602、604、606及び608は医療提供者の監督あり又はなしで使用することができる。例えば、ユーザはセンサ602、604、606及び608を用いて、医療専門家の監督なしに家庭でセンサ測定値を得ることができる。
いくつかの例においては、ユーザデバイス610は、センサ602、604、606及び608のそれぞれと関連付けられた、センサと接続し、ユーザデバイス610が健康又は非健康データを受け取ることを可能にするためのソフトウェアセンサアプリケーション613(例えば、サードパーティアプリケーション)を含み得る。これら例においては、アプリケーション613はデバイスのAPIを用いて、ユーザデバイス610の健康データベース611内に健康又は非健康データを保存することができる。いくつかの例においては、ソフトウェアセンサアプリケーション613はAppとすることができ、デバイス610はスマートフォン、タブレットコンピュータ等とすることができる。「サードパーティ」は、デバイス610の製造者、並びに/又はデバイス610のオペレーティングシステムを作製及び/若しくは保守するエンティティとは異なるエンティティに相当し得ることを理解すべきである。これら例では、サードパーティアプリケーション及びそれらの対応するセンサは、デバイス610のオペレーティングシステム内で、デバイス610に関連付けられた既定のデバイスプロトコルに従い通信及び機能し得る。
アプリケーション613は、同様に、デバイスのAPIを用いて、健康データベース611内に保存されたデータにアクセスすることができる。他の例においては、ユーザデバイス610は、1つ以上の通信フォーマットをセンサ602、604、606及び608と共有し、ユーザデバイス610がセンサから健康又は非健康データを受け取り、解釈することを可能にするように構成され得る。受け取ったデータは、その後、ユーザデバイス610の健康データベース611内に保存され得る。
ユーザデバイス610は、GPSセンサ、クロック、ジャイロスコープ、加速度計等などの、自身の健康若しくは非健康データセンサ615から、ユーザデバイス610と対話するユーザから、医師などの別のエンティティから、又は他の非センサソースから、健康若しくは非健康データを更に受け取ることができる。例えば、デバイスのAPIを用いて、健康又は非健康データを、時計アプリケーション、カレンダアプリケーション、ゲームアプリケーション、医療提供者によるアプリケーション、メッセージアプリケーション等などの、ユーザデバイス610上のアプリケーション617から受け取ることができる。アプリケーション617からの健康又は非健康データは、アプリケーションと対話するユーザ、リモートデータベース(例えば、医療ウェブサイトのデータベース)、医療提供者の施設(例えば、施設のAppを介して)等から生じ得る。これら例においては、アプリケーション617の使用量(例えば、ビデオゲームアプリケーションをどのくらいプレイしたか、いつビデオゲームをプレイしたか、株価アプリケーションと対話した回数、ソーシャルネットワーキングアプリケーションと対話した回数、ソーシャルネットワーキングアプリケーションと対話した時間の長さ等)、ユーザデバイス610の使用量(例えば、電話代支払いアプリケーションから特定された電話の時間の長さ又は送信されたテキストメッセージの数、デバイスのブラウザから特定されたインターネットのブラウジングに費やした時間等)、音楽又はストリーミングラジオアプリケーションから特定された音楽を聴くのに費やした時間、テレビを制御するためのリモートアプリケーションを使用するのに費やした時間、ショッピングウェブサイトに費やした時間量又は金額、ポルノウェブサイトに費やした時間(例えば、依存症を特定するため)、天気アプリケーションからの天気データ(例えば、ユーザの健康に天気がどう影響するかを特定するため)、カレンダから特定される、ユーザの生活に起こるイベントの種類(例えば、会議、誕生日、休日等)、ユーザデバイス610の連絡先リスト及び/又はカレンダアプリケーション及び/又はメッセージアプリケーション及び/又は電話等から特定された特定の人々との交流を、ユーザデバイス610によって受け取ることができるとともに、健康データベース611内に保存することができる。
いくつかの例においては、デフォルトの設定又はユーザが選択した設定を設けて、ユーザデバイス610上の少なくとも1つのアプリケーション(例えば、アプリケーション613及び617の少なくとも1つ)が行う、ユーザデバイス610の健康データベース611(保存及び取得目的の両方のため)、並びにユーザデバイス610内のセンサ615によって生成されたセンサデータ及び/又はセンサ602、604、606及び608によって生成されたセンサデータへのアクセスを制限することができる。例えば、ユーザのランニングセッションを追跡するためのアプリケーションに、ユーザデバイス610のGPSセンサによって生成されたデータへのアクセスを与えることはできるが、健康データベース611内に保存されたユーザの血圧データにアクセスすることは妨げることができる。いくつかの例においては、ユーザデバイス610の所有者以外のエンティティが、ユーザデバイス610上の種々のアプリケーションに対する許可設定を設定することができる。例えば、ユーザデバイス610の製造者、並びに/又はユーザデバイス610のオペレーティングシステムを作成及び/若しくは保守するエンティティがアプリケーションを評価し、それらに、ユーザの健康データ、及び/又はユーザデバイス610によって生成された若しくは受け取られたセンサデータへのアクセスを与えるべきかどうかを判定することができる。いくつかの例においては、これら設定はユーザによってオーバーライドされ得る。
ユーザデバイス610は、保存された健康データ又は非健康データを表示するためのディスプレイを更に含み得る。ユーザデバイス610のディスプレイのインタフェースのより詳細な説明については、図12~図18に関して以下に記載される。
図7は、ユーザの健康データを共有するためのシステム700を示す。図7を参照すると、ユーザサーバ614がユーザデバイス610にネットワーク612を介して通信的に接続され得る。ネットワーク612は、インターネット、イントラネット又は任意の他の有線若しくは無線の公的若しくは私的ネットワークを含み得る。ユーザデバイス610は、集約された健康又は非健康データ、及びデバイス上に保存された関連メタデータを、ユーザデータベース616内での保存のために、ユーザサーバ614にセキュアに伝送するように構成され得る。いくつかの例においては、健康又は非健康データ及び関連メタデータは、デバイス610のユーザによる、そのような転送への明確な要求に応じて、ユーザデータベース616内での保存のために、ユーザサーバ614に伝送され得る一方で、他の例においては、健康又は非健康データは、ユーザデータベース616内のデータと、連続的に、定期的に、断続的に又は任意の所望の頻度で同期させることができる。更に他の例においては、ユーザの健康又は非健康データはユーザデバイス610上のみに保存することができ、外部データベース内に保存されなくてもよい。
いくつかの例においては、ユーザサーバ614及びユーザデータベース616は、ユーザの健康又は非健康データを、健康又は非健康データの所有者のみがデータを復号することを可能にするパブリック/プライベートキーシステムを用いて確実に保存するように構成され得る。加えて、ユーザデータベース616内に保存される健康又は非健康データは、匿名で保存することができる(例えば、ユーザを明らかにすることなく及び/又は実名、ユーザ名、時間及び位置データ等などのユーザに関する個人情報なしで)。このように、他のユーザ、ハッカー、及びユーザデータベース616の所有者/オペレータは、データベース616内に保存されたデータに関連付けられたユーザの身元を特定することはできない。いくつかの例においては、ユーザは、ユーザデータベース616内に保存された自身の健康又は非健康データに、健康又は非健康データをユーザサーバ614にアップロードするのに用いたものとは異なるユーザデバイスからアクセスすることができる。これら例では、ユーザは、自身の健康又は非健康データにアクセスするために、ログインクレデンシャルを提供することを要求され得る。ユーザサーバ614は、ユーザデータベース616内のデータへのアクセスを制限するために、許可プロセスを実行するように構成され得る。
システム700は、ネットワーク612に接続された、任意の数の他のユーザデバイス622及び624を更に含み得る。いくつかの例においては、ユーザデバイス622及び624は、ユーザデバイス610と同じユーザによって操作され得る。これら例では、ユーザは、ユーザサーバ614に適切なクレデンシャルを提供することによって、ユーザデータベース616内に保存された自身の健康又は非健康データにアクセスすることができる。いくつかの例においては、健康及び非健康データは、ユーザデータベース616と、ユーザデバイス610、622及び624の1つ以上との間で同期させることができる。他の例においては、ユーザデバイス622及び624のユーザは、ユーザデバイス610のユーザとは異なる人物であり得る。これら例においては、デバイス622及び624のユーザは、ユーザデバイス610のユーザの健康又は非健康データに、ユーザデバイス610のユーザの許可なしでアクセスすることはできない。許可が与えられれば、健康又は非健康データを、ユーザデバイス622及び624のユーザと共有することができる。このデータの共有については、図7~図8に関して以下により詳細に説明する。
いくつかの例においては、上述の、健康又は非健康データのソースのいずれも、健康又は非健康データを、連続的に、断続的に、定期的に、又は任意の他の所望の頻度若しくは時間間隔で測定する、生成する又は受け取るように構成され得る。したがって、健康又は非健康データは、同様に、健康データベース611又はユーザデータベース616内で、連続的に、断続的に、定期的に、又は任意の他の所望の頻度若しくは時間間隔で保存又は更新され得る。健康又は非健康を測定する、生成する、受け取る又は保存するために用いられる頻度及び時間間隔は、同じとすることができる、又はそれらは異なるものとすることもできる。加えて、これら頻度及び間隔は、デフォルト値とすることができる、又はそれらは、所望の時間の長さの範囲内で更新された健康若しくは非健康データをユーザに提供するようにユーザによって設定され得る。
図示しないものの、他のユーザの健康又は非健康データを、上述のものに類似する手法で収集及び保存するために、多くの他のユーザデバイスを、ネットワーク612を介してユーザサーバ614に接続することができることは認識すべきである。
ユーザデータベース
上述したように、ユーザの健康又は非健康データは、ユーザデータベース616内に保存することができるとともに、所有ユーザの許可によって他のユーザと共有することができる。他のユーザは、友人、家族の一員、介護者、医師、ソーシャルメディアプロバイダ等などの任意の種類のユーザとすることができる。健康データベース616内に収容された健康又は非健康データに、異なるタイプ及びレベルの許可を与えることができる。
いくつかの例においては、共有された健康又は非健康データは、許可された他のユーザのユーザデバイス(例えば、ユーザデバイス622又は624)にプッシュすることができる。図8は、健康又は非健康データを許可された他のユーザに認可及びプッシュするための例示的プロセス800を示す。ブロック802において、許可された他のユーザのIDが受け取られ得る。これは、共有される健康又は非健康データに関連付けられたユーザから、ユーザデバイス(例えば、ユーザデバイス610)によって受け取られ得る。IDには、健康若しくは非健康データのすべて、又は健康若しくは非健康データのサブセットへのアクセスなどのアクセスのレベルと共に、他のユーザのユーザ名、実名、連絡先情報、又は任意の他の識別子若しくはクレデンシャルを含み得る。いくつかの例においては、許可された他のユーザは、ユーザのカテゴリ(例えば、家族、友人、その他等)にグループ化することができ、それぞれのカテゴリは、それら許可された他のユーザが見ることを許可された健康データの種類の特定のセットに関連付けられる。例えば、家族カテゴリ内のユーザは、全種類の健康データを見ることが許可され得る一方で、友人カテゴリ内のユーザは活動データのみを見ることができる。
ブロック804では、ユーザの健康又は非健康データはユーザのデバイスによって監視され、データに何らかの更新が行われたかどうかを判定することができる。更新が行われていない場合、プロセスはブロック804を繰り返すことができる。しかしながら、ユーザの健康又は非健康データへの追加又は変更が認められた場合、プロセスはブロック806へと進むことができる。いくつかの例においては、ユーザの健康又は非健康データの任意の変更により、プロセス800をブロック806に進めることができる一方で、他の例においては、特定の種類のユーザの健康又は非健康データへの変更のみにより、プロセス800をブロック806に進めることができる。
ブロック806において、1人以上の許可された他のユーザに通知が伝送され得る。例えば、ユーザのデバイス(例えば、ユーザデバイス610)から、許可された他のユーザのデバイス(例えば、ユーザデバイス622又は624)に通知が伝送され得る。通知には、ユーザの健康又は非健康データに更新が行われたことを示すメッセージを含み得る。プロセスは、次に、ブロック808に進むことができる。
ブロック808において、更新された健康又は非健康データが、許可された他のユーザに伝送され得る。例えば、更新された健康又は非健康データは、ユーザのデバイス(例えば、ユーザデバイス610)から、許可された他のユーザのデバイス(例えば、ユーザデバイス622又は624)に伝送され得る。いくつかの例においては、このデータは、許可された他のユーザが、更新された健康又は非健康データを見るという要求を示した場合にのみ伝送され得る一方で、他の例においては、更新された健康又は非健康データは、許可された他のユーザから、データを見るという要求を受け取ることなしに、許可された他のユーザのユーザデバイスに伝送され得る。
プロセス800を用いて実施される健康又は非健康データのプッシュは、ユーザが、介護者又は家族の一員(又は他のユーザ)に対し、自身の健康又は非健康データを常に更新することを欲する状況において有用となり得る。例えば、高齢の親は自身の健康又は非健康データを子にプッシュするための許可を与え、子が、この情報を常に親に要求する必要なしに、高齢ユーザの健康又は服薬遵守を容易に監視することを可能にすることができる。
他の例においては、ユーザの健康又は非健康データは、他のユーザがこの健康又は非健康データをプルすることを可能にすることによって他のユーザと共有することができる。図9は、他のユーザが健康又は非健康データをプルすることを許可するための例示的プロセス900を示す。ブロック902において、特定のユーザの健康又は非健康データにアクセスする要求が受け取られ得る。この要求は、要求された健康又は非健康データ、及び任意選択的に、アクセスされる健康又は非健康データの一部に関連付けられたユーザを識別することができる。IDには、ユーザ名、実名、連絡先情報、又はユーザの任意の他の識別子若しくはクレデンシャルを含み得る。この要求は、要求側ユーザのユーザデバイス(例えば、ユーザデバイス622又は624)から、要求されたデータに関連付けられたユーザのユーザデバイス(例えば、ユーザデバイス610)によって受け取られ得る。
ブロック904において、要求された健康又は非健康データに関連付けられたユーザに、許可を求める要求が伝送され得る。いくつかの例においては、要求は、要求側ユーザのユーザデバイス(例えば、ユーザデバイス622又は624)から、要求されたデータに関連付けられたユーザのユーザデバイス(例えば、ユーザデバイス610)に伝送され得る。要求は、その後、要求されたデータに関連付けられたユーザに対し、ユーザのデバイス(例えば、ユーザデバイス610)によって、表示され得る。
ブロック906において、要求された健康又は非健康データに関連付けられたユーザから許可を受け取っているかどうかを判定することができる。許可は任意の手法で受け取ることができる。例えば、要求されたデータに関連付けられたユーザの、そのユーザデバイス610上にプロンプトが表示され得る。許可が拒否された場合、プロセスはブロック902に戻ることができる。しかしながら、許可が与えられた場合、プロセスはブロック908に進むことができる。
ブロック908において、要求された健康又は非健康データは、ブロック902において健康又は非健康データへのアクセスを要求したエンティティへと伝送され得る。要求された健康又は非健康データは、ユーザのデバイス(例えば、ユーザデバイス610)から、要求側のエンティティのデバイス(例えば、ユーザデバイス622又は624)へと伝送され得る。
いくつかの例においては、ユーザの健康又は非健康データにアクセスするための許可が、ブロック902において要求が行われる前に与えられた場合、プロセス900は、ブロック904又は906を実行することなくブロック902からブロック908に進むことができる。例えば、親が自身の健康又は非健康データへのアクセスを自身の子に与えた場合、子による、親の健康又は非健康データに対する要求は、ブロック902において受け取られ得るとともに、要求された健康又は非健康データは、ブロック908において、親によるあらゆる介在アクションなしに子に伝送され得る。
プロセス900を用いた健康又は非健康データのプルは、許可された他のユーザがユーザの健康又は非健康データへの更新を常に最新にすることを欲さず、データへの時折のアクセスを望む状況において有用となり得る。例えば、医師は、患者のカルテ及び健康又は非健康データへのアクセスを、患者と面会する直前に望む場合がある。このような状況では、医師は患者の健康又は非健康データを要求することができ、要求したデータを受け取るか、患者のユーザデバイス610に要求を送信させるかのいずれかを行うことができる。患者から許可を受け取ったことに応じて、要求されたデータは、ユーザデバイス610から、医師のコンピューティングデバイス(例えば、ユーザデバイス622又は624)へと送信され得る。いくつかの例においては、受け取った健康又は非健康データは、ユーザに関連付けられた電子カルテ(EMR)に追加することができる。
いくつかの例においては、プッシュ又はプル共有型を用いているかどうかに関わらず、ユーザの健康又は非健康データは許可された他のユーザのユーザデバイス上に永久的に保存されなくてもよい。このように、これら他のユーザへの許可は無効にすることができ、ユーザの健康データを、他の以前に許可されていたユーザによってアクセスできないようにする。加えて、いくつかの例においては、ユーザの健康又は非健康データを詳述する又は要約するレポートを生成することができる。これらレポートは、その後、電子メール、セキュアな転送等により、任意の所望の受取側に伝送することができる。更に他の例においては、ユーザデバイス610は、医療保険情報、血液型、病歴等などの、ユーザの健康又は非健康データのいくつか又はすべてを、近距離通信又は別の通信プロトコルを用いて医療関係者に伝達するように構成され得る。これは、病院にチェックインする際、又は医療緊急時に関連医療データが必要な場合に有用となり得る。
集約データビュー
上述したように、ユーザデバイス610は、ユーザから、1つ以上のセンサ602、604、606及び608から、又は非センサソースから受け取った、ユーザに関連付けられた健康又は非健康データを集約するように構成され得る。ユーザデバイス610は、また、ユーザの集約された健康又は非健康データを、種々のインタフェースを用いて種々の手法で表示するように構成され得る。
図10は、ユーザの集約された健康又は非健康データを表示するためにユーザデバイス610により使用され得る1つの例示的なインタフェース1000を示す。インタフェース1000は、任意の数のパーティション1002、1004、1006、1008、1010及び1012を含むことができ、そのそれぞれは、ユーザに関連付けられた異なる種類の健康データを含む。図10の集約ビューでは、パーティションを用いて、異なる種類の健康データの一部の部分ビューを表示することができる。図10~図15、図17及び図19~図20に示される例では、パーティションは、カードのスタックの外観及び関連付けられたアニメーションを有するものとして示され、各カードは、異なるパーティション(及びしたがって、異なる種類の健康データ)に相当する。しかしながら、パーティションを任意の他の所望の手法で表示することができることは認識すべきである。
インタフェース1000は、インタフェースの最上部に表示された、ユーザの識別子(例えば、名前)を含み得る第1のパーティション1002を含み得る。示されるように、ユーザデバイス610のユーザの名前「John Smith」がパーティション1002に表示されている。インタフェース1000は、他のユーザに関連付けられた健康データを見るためのボタン1001を更に含み得る。この特徴について、図15及び図16に関して以下により詳細に記載する。
インタフェース1000は、パーティション1004が重ねられたカードのようにパーティション1002に重なっているように見えるように、パーティション1002の隣に表示された別のパーティション1004を更に含み得る。このパーティションは、パーティションに収容された健康データの種類の指示、及び一部パーティションの健康データの部分ビュー(例えば、概要、例等)を含み得る。具体的には、パーティション1004は、「体重」という語を含み、このパーティションが、ユーザ「John Smith」に関連付けられた体重データを含むことを示す。パーティション1004は、「John Smith」の直近の体重「185lbs」を更に含み得る。
インタフェース1000は、パーティション1006が重ねられたカードのようにパーティション1004に重なっているように見えるように、パーティション1004の隣に表示された別のパーティション1006を更に含み得る。このパーティションは、パーティションに収容された健康データの種類の指示、及び一部パーティションの健康データの部分ビュー(例えば、概要、例等)を含み得る。具体的には、パーティション1006は、「血糖」という語を含み、パーティションがユーザ「John Smith」に関連付けられた血糖データを含むことを示す。パーティション1006は、「John Smith」の直近の血糖値「164mg/dL」を更に含み得る。
インタフェース1000は、パーティション1008が重ねられたカードのようにパーティション1006に重なっているように見えるように、パーティション1006の隣に表示された別のパーティション1008を更に含み得る。このパーティションは、パーティションに収容された健康データの種類の表示、及び一部パーティションの健康データの部分ビュー(例えば、概要、例等)を含み得る。具体的には、パーティション1008は、「血圧」という語を含み、パーティションがユーザ「John Smith」に関連付けられた血圧データを含むことを示す。パーティション1008は、「John Smith」の直近の血圧測定値「117/67mmHg」を更に含み得る。
インタフェース1000は、パーティション1010が重ねられたカードのようにパーティション1008に重なっているように見えるように、パーティション1008の隣に表示された別のパーティション1010を更に含み得る。このパーティションは、パーティションに収容された健康データの種類の指示、及びパーティションの健康データの一部の部分ビュー(例えば、概要、例等)を含み得る。具体的には、パーティション1010は、「活動」という語を含み、パーティションがユーザ「John Smith」に関連付けられた活動データ(例えば、燃焼カロリー)を含むことを示す。パーティション1010は、「John Smith」による現在の1日の燃焼カロリー数「467kcal」を更に含み得る。
インタフェース1000は、パーティション1012が重ねられたカードのようにパーティション1010に重なっているように見えるように、パーティション1010の隣に表示された別のパーティション1012を更に含み得る。このパーティションは、パーティションに収容された健康データの種類の指示、及びパーティションの健康データの一部の部分ビュー(例えば、概要、例等)を含み得る。具体的には、パーティション1012は、「心拍数」という語を含み、パーティションがユーザ「John Smith」に関連付けられた心拍数データを含むことを示す。パーティション1012は、「John Smith」の直近の心拍数測定値「122bpm」を更に含み得る。加えて、パーティション1012はパーティションのスタックの最上部にあるため、追加の情報1014及び/又はオプション1016がパーティションの正面に表示され得る。図示される例では、追加の情報には、オプション1016を用いて選択した、1週間の期間にわたる「John Smith」の最小、最大及び安静時心拍数を含む。
パーティションのいくつか又はすべての順序は、静的又は動的とすることができる。例えば、ユーザの名前を含むパーティション1002はディスプレイの最上部にとどまることができる一方で、残りのパーティションは、時刻、パーティションに関連付けられた健康データがどれほど最近に更新されたか、パーティションに関連付けられた健康データが更新される頻度、留意すべきイベントが近づいているかどうか(例えば、薬の服用、実施すべきセンサ測定等)等に基づき順序付けされ得る。順序は、また、ユーザが手で変更することができる。インタフェース1000が、1つの画面に表示することができるものよりも多くのパーティションを含む場合、垂直スクロールを行い、残りのパーティションを表示することができる。あるいは、パーティションの3Dスクロールを行い、カードのスタックをめくる外観を与えてもよい。
特定例のパーティションの種類を上に記載したが、異なる種類の健康データを含むパーティションをインタフェース1000内に含むことができることを認識すべきである。加えて、ユーザは、任意の所望の種類のユーザ入力データを表示するために用いられ得る、カスタマイズしたパーティションを生成することができる。例えば、ユーザの服薬遵守を追跡するためのパーティションを作成することができる。ユーザは、服用した薬の時間、量及び種類を入力することができ、このデータを作成されたパーティション上に表示することができる。栄養、睡眠、喫煙等などの異なる健康データの種類の他の特別仕様のパーティションもまた生成することができる。
加えて、パーティションの健康データの一部の部分ビュー(例えば、概要、例等)の特定の例を上で記載したが、部分ビューは、健康データの例を異なる手法で要約する又は提供することができることを認識すべきである。例えば、特定の健康データの種類の直近の値を表示するよりもむしろ、集約ビュー内のパーティション上に、時間全体又は一部にわたる(例えば、1週間、1か月、1年等)健康データの平均値、最頻値、中央値、別の単一データポイント等を表示することができる。あるいは、他の例においては、現在値及び平均値を集約ビュー内のパーティション上に表示することができる。更に他の例においては、集約ビュー内のパーティションは、健康データの種類の現在値及び目標値の表示を含み得る。
パーティション1002、1004、1006、1008、1010及び1012は、パーティションに収容されたオリジナルデータの再構成データ、追加データ又は拡大ビューを含む、パーティションの拡張ビューを表示するように選択することができる。例えば、ユーザは、タッチ感知ディスプレイ上に表示された所望のパーティション上をタップすることによってパーティションを選択することができる、マウス若しくは他の入力デバイスを用いてパーティションをハイライトし、クリックすることができる、又は任意の他の入力手段を用いて所望のパーティションを選択することができる。パーティションの選択に応じて、ユーザデバイス610は、他のパーティションの内容を隠し、選択されたパーティションを、ユーザデバイス610のディスプレイの全体又は大部分に表示することができる。
例えば、図11は、ユーザによるインタフェース1000内のパーティション1004の選択に応じて表示され得る例示的なインタフェース1100を示す。インタフェース1100では、パーティション1004の拡張ビュー1005が、ユーザデバイス610のディスプレイ内に目立つように表示され得る一方で、残りのパーティションは、ディスプレイから消えるように、ディスプレイの下部に表示されたパーティションのスタック1102へと折りたたまれているようにアニメーションされ得る。図示される例では、拡張ビュー1005は、インタフェース1000内に表示されなかった、ユーザの体重、ボディマス指数(BMI)及び体脂肪率などの更なる体重関連のデータを含み得る。拡張ビュー1005は、ある範囲の体重に対するユーザの体重を示すスライドスケール1140、及びユーザの体重を1日、1週間、1か月又は1年にわたり追跡したグラフ1141などの、ユーザの体重データの概要を更に含み得る。インタフェース1100は、ボタン1104を更に含み得る。ボタン1104は、自身の健康データのいくつか又はすべてを、テキストメッセージ、電子メール、ソーシャルメディアプロバイダ等などの任意の所望の通信媒体を用いて共有するためのオプションをユーザデバイス610に表示させることができる。これら例においては、健康データは、暗号化し、(ユーザサーバ614からよりもむしろ)ユーザデバイス610から直接受取側のユーザデバイスに送信することができ、そこで健康データは復号され得る。インタフェース1000に示されるパーティションの集約ビューに戻るためには、ユーザはパーティションのスタック1102を選択する(例えば、タップする、クリックする、又は他の方法で選択する)ことができる。インタフェース1100の内容及び拡張ビュー1005は例として提供されており、その代わりに、拡張ビュー1005は、体重関連のデータのあらゆる種類又は概要を含むことができることは認識すべきである。
図12は、ユーザによるインタフェース1000内のパーティション1006の選択に応じて表示され得る例示的なインタフェース1200を示す。インタフェース1200では、パーティション1006の拡張ビュー1007はユーザデバイス610のディスプレイ内に目立つように表示され得る一方で、残りのパーティションは、ディスプレイから消えるように、ディスプレイの下部に表示されたパーティションのスタック1102へと折りたたまれているようにアニメーションされ得る。図示される例では、拡張ビュー1007は、ユーザの血糖及びユニットなどの、インタフェース1000内に表示されなかった更なる血糖関連のデータを含み得る。拡張ビュー1007は、ある範囲の一般的な血糖値に対する食事後のユーザの血糖を示すスライドスケール1142、及びユーザの血糖を1日、1週間、1か月又は1年にわたり追跡したグラフ1143などの、ユーザの血糖データの概要を更に含み得る。インタフェース1200は、また、上述のボタン1104を含み得る。インタフェース1000に示されるパーティションの集約ビューに戻るためには、ユーザはパーティションのスタック1102を選択する(例えば、タップする、クリックする、又は他の方法で選択する)ことができる。インタフェース1200の内容及び拡張ビュー1007は例として提供されており、その代わりに、拡張ビュー1007は、血糖関連のデータのあらゆる種類又は概要を含むことができることは認識すべきである。
図13は、ユーザによるインタフェース1000内のパーティション1008の選択に応じて表示され得る例示的なインタフェース1300を示す。インタフェース1300では、パーティション1008の拡張ビュー1009が、ユーザデバイス610のディスプレイ内に目立つように表示され得る一方で、残りのパーティションは、ディスプレイから消えるように、ディスプレイの下部に表示されたパーティション1002のスタックへと折りたたまれているようにアニメーションされ得る。図示される例では、拡張ビュー1009は、インタフェース1000内に表示されなかった、ユーザの血圧及び毎分心拍数(bpm)などの更なる血圧関連のデータを含み得る。拡張ビュー1009は、一般的な血圧値に対するユーザの血圧を示すスライドスケール1044、及びユーザの血圧を1日、1週間、1か月又は1年にわたり追跡したグラフ1045などの、ユーザの血圧データの概要を更に含み得る。インタフェース1300は、また、上述のボタン1004を含み得る。インタフェース1000に示されるパーティションの集約ビューに戻るためには、ユーザはパーティションのスタック1002を選択する(例えば、タップする、クリックする、又は他の方法で選択する)ことができる。インタフェース1300の内容及び拡張ビュー1009は例として提供されており、その代わりに、拡張ビュー1009は、血圧関連のデータのあらゆる種類又は概要を含むことができることは認識すべきである。
図14は、ユーザによるインタフェース1000内のパーティション1010の選択に応じて表示され得る例示的なインタフェース1400を示す。インタフェース1400では、パーティション1010の拡張ビュー1011が、ユーザデバイス610のディスプレイ内に目立つように表示され得る一方で、残りのパーティションは、ディスプレイから消えるように、ディスプレイの下部に表示されたパーティションのスタック1102へと折りたたまれているようにアニメーションされ得る。図示される例では、拡張ビュー1011は、インタフェース1000内に表示されなかった、燃焼カロリー、歩数及びユーザが移動したマイルなどの、更なる活動関連のデータを含み得る。拡張ビュー1011は、自身の活動強度を1日、1週間、1か月又は1年にわたり追跡したグラフ1146、並びに活動、休止及び運動に費やした合計時間を示す概要1147などの、ユーザの血圧データの概要を更に含み得る。インタフェース1400は、また、上述のボタン1104を含み得る。インタフェース1000に示されるパーティションの集約ビューに戻るためには、ユーザはパーティションのスタック1102を選択する(例えば、タップする、クリックする、又は他の方法で選択する)ことができる。インタフェース1400の内容及び拡張ビュー1011は例として提供されており、その代わりに、拡張ビュー1011は、活動関連のデータのあらゆる種類又は概要を含むことができることは認識すべきである。
図15は、ユーザによるインタフェース1000内のパーティション1012の選択に応じて表示され得る例示的なインタフェース1500を示す。インタフェース1500では、パーティション1012の拡張ビュー1013がユーザデバイス610のディスプレイ内に目立つように表示され得る一方で、残りのパーティションは、ディスプレイから消えるように、ディスプレイの下部に表示されたパーティションのスタック1102へと折りたたまれているようにアニメーションされ得る。図示される例では、拡張ビュー1013は、1日、1週間、1か月又は1年にわたるユーザの最小、最大及び安静時心拍数などの、更なる心拍数関連のデータを含み得る。しかしながら、パーティション1004、1006、1008及び1010とは異なり、パーティション1012は、集約ビュー内で、パーティションのスタックの最上部に位置するものとして表示されることから、このデータはインタフェース1000内で以前に表示されていたものである。拡張ビュー1013は、ユーザの心拍数を1日、1週間、1か月又は1年にわたり追跡したグラフ1148などの、ユーザの心拍数データの概要を更に含み得る。インタフェース1500は、また、上述のボタン1104を含み得る。インタフェース1000に示されるパーティションの集約ビューに戻るためには、ユーザはパーティションのスタック1102を選択する(例えば、タップする、クリックする、又は他の方法で選択する)ことができる。インタフェース1500の内容及び拡張ビュー1013は例として提供されており、その代わりに、拡張ビュー1013は、心拍数関連のデータのあらゆる種類又は概要を含むことができることは認識すべきである。
いくつかの例においては、図10~図15に示されるインタフェースを生成するために用いられるユーザの健康データは、1つ以上のセンサデバイス及び/又はアプリケーションから受け取ったものであってもよい。これら例においては、異なるデバイスからの同じ種類の健康データを組み合わせ、1つのパーティション上に表示してもよい。例えば、図11のインタフェース1100に示される体重データは、同じ体重計を用いて繰り返し行った測定から得ることができる。あるいは、測定値のいくつかを1つの体重計から得ることができる一方で、残りの測定値を1つ以上の異なる体重計から得ることができる。このため、グラフ1141内のいくつかの点を、1つの体重計による体重データを用いて生成することができる一方で、グラフ1141内の他の点は、1つ以上の他の体重計による体重データを用いて生成することができる。別の例では、図14のインタフェース1400に示される活動データは1つの歩数計測デバイスから得られたものであってもよい。あるいは、データは、歩数計測デバイス、ユーザのランニングセッションを記録するために用いられる第1のGPS機能付き腕時計、及びユーザのローイングセッションを記録するために用いられる第2のGPS機能付き腕時計から集約してもよい。これら例においては、ユーザの活動強度を示すグラフ1146は、歩数トラッキングデバイスと、第1及び第2のGPS機能付き腕時計とから得られたデータの組み合わせから生成した、セグメント化されたグラフとすることができ、それぞれのセグメントはデバイスの1つから得たものである。特に、グラフ1146は、歩数計測デバイスのデータから生成した第1のセグメント1150、第1のGPS機能付き腕時計のデータから生成した第2のセグメント1152、及び第2のGPS機能付き腕時計のデータから生成した第3のセグメント1154を含み得る。この手法でデータを集約することで、ユーザが、健康データを特定のデバイス又はアプリケーション(例えば、スマートフォンのアプリケーション)に直接結びつけない手法で健康データを記録し、見ることが有利に可能になる。図14には3つのセグメントが示されるが、セグメント化されたグラフは、異なるセンサ及び/又はアプリケーションに対応する任意の数のセグメントを含むことができることを認識すべきである。
図16は、種々の例に係る、健康データを表示するための例示的なプロセス1600を示す。ブロック1602では、パーティション1002、1004、1006、1008、1010及び1012と類似する又は同一の複数のパーティションを含む健康データの集約ビューが、ユーザデバイス610と類似する又は同一のユーザデバイス上に表示され得る。パーティションは、パーティション上に表示される健康データの種類の識別子と、パーティションに関連付けられた健康データの種類の一部の部分ビュー(例えば、概要、例等)と、を含み得る。例えば、種々の健康データパーティション1002、1004、1006、1008、1010及び1012を含む、インタフェース1000に類似する又は同一のインタフェースが表示され得る。
ブロック1604では、表示されたパーティションのうちの1つの選択が受け取られ得る。この選択は、ユーザデバイスによって受け取ることができ、マウスクリック、タッチ感知ディスプレイのタップ等の形態とすることができる。パーティションの選択に応じて、ブロック1606において、選択されたパーティションの拡張ビューが表示され得る。拡張ビューは、選択されたパーティションのより広い部分を示すビューと、再構成された健康データ(例えば、ブロック1602において表示される集約ビュー内の選択されたパーティション上に表示されている健康データの並べ替え済みビュー)、更なる健康データ(例えば、ブロック1602において表示される集約ビュー内の選択されたパーティション上に以前は表示されていなかった健康データ)、又はブロック1602において表示される集約ビュー内に表示される健康データの拡大ビュー(例えば、ブロック1602において表示される集約ビュー内の選択されたパーティション上に表示される同じ健康データのより大きなビュー)、のうちの少なくとも1つと、を含み得る。加えて、選択されなかったパーティションは、サイズを縮小するか、ディスプレイから除去することができる。例えば、インタフェース1100、1200、1300、1400又は1500のいずれも、それぞれ、インタフェース1000のパーティション1004、1006、1008、1010又は1012の選択に応じて表示され得る。
いくつかの例においては、ブロック1606において示されるディスプレイは、健康データを共有するための、選択可能なオプション(例えば、ボタン1204)を含み得る。他の例においては、ブロック1606において示されるディスプレイは、ブロック1602において表示されたパーティションを含む集約ビューを、再度表示させるための、選択可能なオプション(例えば、パーティション1202)を更に含み得る。その後、プロセスはブロック1604に戻ることができ、そこで、別のパーティションの選択が受け取られ得る。
図17は、ユーザがユーザデバイス610をランドスケープビューに回転したことに応じて表示され得る例示的なインタフェース1700を示す。この向きにおいて、ユーザデバイス610は、インタフェース1000の集約ビューで表示されていたものに比べ、パーティションのより小さなサブセットの拡張ビューを表示することができる。例えば、インタフェース1700は、パーティション1008の拡張ビュー1702、パーティション1006の拡張ビュー1704、及びパーティション1012の拡張ビュー1706を含み得る。図示される例では、パーティションの拡張ビューは、種々の時間の長さにわたる健康データのグラフ表示を含み得る。これにより、ユーザが、表示された健康データの種類を見て、それらが経時的に互いにどのように変化したかを確認し、1つの種類の健康データの変化が別の種類の健康データの変化(又は変化が無いこと)にどのように関係するかを評価することを可能にすることができる。例えば、表示され得る1つの種類の健康データには、経時的に行われた投薬を含み得る。このデータを、ユーザの血圧及び心拍数と比較し、投薬が有益な又は好ましくない効果を及ぼしているかどうかを判断することができる。いくつかの例においては、ユーザデバイス610は、ユーザデバイス610をランドスケープ方向に回転させたときに表示される健康データの種類を選択することができる。選択は、互いに関連付けられたことが多い健康データ種類の所定の組み合わせに基づき行うことができる、又は、健康データの種々の種類の分析に基づき行うことができる。後者の例では、相関する可能性があると認識された健康データ種類が表示され得る。インタフェース1700の初期表示で表示されない健康データ種類は、パーティションをスクロールすることによって見ることができる。加えて、パーティションは、より詳細な情報を、インタフェース1000で実施したものと同じ手法で表示するように選択することができる。
図18は、種々の例に係る、健康データを、デバイスの向きに基づき表示するための例示的なプロセス1800を示す。ブロック1802において、パーティション1002、1004、1006、1008、1010及び1012に類似する又は同一の複数のパーティションを含む集約ビューが、ユーザデバイス610に類似する又は同一のユーザデバイスによって表示され得る。パーティションは、パーティション上に表示される健康データの種類の識別子と、パーティションに関連付けられた一部健康データの種類の部分ビュー(例えば、概要、例等)と、を含み得る。例えば、種々の健康データパーティション1002、1004、1006、1008、1010及び1012を含む、インタフェース1000に類似する又は同一のインタフェースが表示され得る。
ブロック1804において、ユーザデバイスの向きの変化を検出することができる。例えば、ユーザデバイス内のジャイロスコープ及び/又は加速度計は、デバイスの向きがポートレートからランドスケープに変化したことを示すことができる。検出された、閾値量に及ぶ向きの変化に応じて、プロセスはブロック1806に進むことができる。
ブロック1806において、ブロック1802において表示された複数のパーティションのサブセットを選択して表示させることができる。いくつかの例においては、サブセットは、複数のパーティションの所定のサブセットとすることができる。他の例においては、サブセットは、ユーザが定義した表示の好みに基づき選択することができる。更に他の例においては、複数のパーティションのサブセットを、各パーティションに関連する健康データセットの分析に基づき選択し、健康データの種類のいずれかが相関する可能性があるかどうかを判断することができる。潜在的相関が特定された場合、ブロック1806において、相関する可能性のあるデータに関連付けられたパーティションが選択され得る。
ブロック1808において、ブロック1806において選択されたパーティションのサブセットの拡張ビューが表示され得る。いくつかの例においては、パーティションの拡張ビューに表示された健康データの種類の識別子、及び/又はパーティションに関連付けられた健康データの種類の概要、例若しくは他のビューは、ブロック1802においてパーティション上に示されたものとは異なり得る。例えば、図17に示すように、各拡張ビュー上の概要又は例示的データは、経時的な健康データのグラフ表示と差し替えることができる。このようにして、表示された健康データの種類間の関係が観察され得る。いくつかの例においては、ユーザデバイスの、ポートレート方向への向きの変化を検出したことに応じて、プロセスはブロック1802に戻ることができる。
上述したように、いくつかの例においては、ユーザデバイス610のユーザに、他のユーザの健康データへのアクセスを与えることができる。これら例においては、ユーザデバイス610は、ユーザが、他のユーザの健康データを、図10~図18に関して上述したものと類似のフォーマットで見ることを可能にすることができる。例えば、図19のインタフェース1900によって示されるように、他のユーザの健康データを見るためには、ユーザは、インタフェースの内容を方向1906に側方にスクロールし、第1のユーザからのパーティション1904の第1のセットを、第2のユーザからのパーティション1902の第2のセットの代わりに表示させることができる。特に、第2のユーザのパーティション1902の第2のセットは、ディスプレイから消えるようにスクロールの方向1906に平行移動させることができる一方で、第1の複数のパーティション1904は、ディスプレイ上で、同じ方向1906ではあるが、ディスプレイの反対側から平行移動させることができる。図19は、パーティション1902がディスプレイから除去され、パーティション1904がディスプレイ上へと方向1906にスクロールされている、移行状態を示すことは認識すべきである。したがって、パーティション1902の左側及びパーティション1904の右側のみが見えている。パーティション1902及び1904は方向1906に継続的にスクロールされているため、パーティション1902がディスプレイから完全に除去され、パーティション1904がディスプレイの全体又は大部分を占有するまで、見ることができるパーティション1902の部分は小さくなる一方で、見ることができるパーティション1904の部分は大きくなる。図示しないものの、パーティション1904の最上部のパーティションは、第1のユーザの名前を含むことができ、方向1906に画面がスクロールされ続ける際に表示され得る。このスクロール操作を任意の回数(及び任意の方向に)実施して、デバイス610のユーザがアクセスすることを許可されたすべてのユーザのパーティションを通してスクロールすることができる。
図20は、他のユーザの健康データを見るための別の例示的なインタフェース2000を示す。いくつかの例においては、インタフェース2000は、インタフェース1000のボタン1001の選択に応じて表示され得る。示されるように、インタフェース2000は、ユーザデバイス610のユーザに、自身の健康データにアクセスすることを許可したユーザ2002、2004、2006及び2008のリストを含み得る。いくつかの例においては、各ユーザの名前の隣の円は、ユーザに関連付けられた画像と差し替えることができる。これら画像は、デバイス610の連絡先リストで使用されるものと同じ画像とすることができる、又は別の画像を含むことができる。図示される例では、ユーザ2002、2004、2006及び2008は異なるカテゴリ(例えば、自分、家族及び友人)にグループ化されている。カテゴリは、ユーザをともに論理的にグループ化するために用いることができる、又は上述したように、他のユーザの健康データを見るための許可のレベルを示すことができる。例えば、「家族」カテゴリ内のユーザは、自身の健康データのより大きなセットを見ることが許可されてもよい一方で、「友人」カテゴリ内のユーザは、自身の健康データのより小さなセットを見ることが許可されてもよい。ユーザ2002、2004、2006及び2008の1人の選択に応じて、パーティション2010は、選択されたユーザの健康データを反映するように更新され得る。これには、(例えば、他のユーザがユーザデバイス610のユーザに見ることを許可した健康データの種類に基づき)パーティション上に表示された健康データの種類、及び部分健康データの関連付けられた部分ビュー(例えば、概要、例等)を更新することを含み得る。他の例においては、ユーザ2002、2004、2006及び2008のリストは、インタフェース1000を上又は下に垂直方向にスクロールし、ユーザのリストを露出させたことに応じて表示され得る。
図21は、種々の例に係る、2人以上のユーザに関連付けられた健康データを表示するための例示的なプロセス2100を示す。ブロック2102において、第1のユーザに関連付けられた第1の複数のパーティションの表示が表示され得る。パーティションは、パーティション1002、1004、1006、1008、1010及び1012に類似の又は同一とすることができるとともに、ユーザデバイス610に類似する又は同一のユーザデバイスによって表示され得る。パーティションは、パーティション上に表示される健康データの種類の識別子と、パーティションに関連付けられた一部健康データの種類の部分ビュー(例えば、概要、例等)と、を含み得る。例えば、種々の健康データパーティション1002、1004、1006、1008、1010及び1012を含む、インタフェース1000に類似する又は同一のインタフェースが表示され得る。
ブロック2104において、第2のユーザの第2の複数のパーティションを見る要求を受け取ることができる。第2のユーザは、上述のように、第1のユーザに自身の健康データを見ることを許可したユーザとされ得る。いくつかの例においては、要求は、ブロック2102において表示された第1の複数のパーティションの表示をスクロールするためのユーザ入力を含むことができ、ユーザデバイスにより、マウスホイールの回転、キーボード上の矢印キー、タッチ感知ディスプレイ上のタッチ及び/又はスワイプ等の形態で受け取ることができる。図19に示される例と同様に、スクロール方向は、表示の内容に対して水平方向とすることも、第1のユーザに関連付けられた更なるパーティションを表示させるスクロール方向に垂直とすることもできる。しかしながら、他のスクロール方向も使用できることは認識すべきである。他の例においては、第2の複数のパーティションを見る要求は、ユーザのリストからの第2のユーザの選択の形態で受け取ることができる。例えば、第2のユーザは、図20に示されるものに類似するユーザのリストから選択され得る。リストは、ボタン(例えば、ボタン1001)、又はブロック2102において表示された第1の複数のパーティションを垂直方向にスクロールしてユーザのリストを露出させるなどの、他の選択機構の選択に応じて表示され得る。ブロック2104において第2の複数のパーティションを見る要求を受け取ったことに応じて、プロセスはブロック2106に進むことができる。
ブロック2106において、第2のユーザに関連付けられた第2の複数のパーティションの表示が表示され得る。いくつかの例においては、第1の複数のパーティションの表示をスクロールする要求が含まれる、第2の複数のパーティションを見る要求がブロック2104において受け取られると、図19に示すように、第1の複数のパーティションは、ディスプレイから消えるようにスクロールの方向に平行移動させることができる一方で、第2の複数のパーティションは、ディスプレイ上で、同じ方向ではあるが、ディスプレイの反対側から平行移動させることができる。他の例においては、ブロック2104において受け取られる第2の複数のパーティションを見る要求に、ユーザのリストからの第2のユーザの選択が含まれる場合、図20に示すように、第1の複数のパーティションは第2の複数のパーティションの表示に差し替えることができる。他のユーザの健康データパーティションを見る更なる要求を受け取ることができ、ブロック2104及び2106を繰り返して、デバイス610のユーザに自身の健康データを見ることを許可したユーザに関連付けられたパーティションのセットのいくつか又はすべてを表示することができる。
上記の処理を組み合わせることができる点を理解されたい。例えば、ブロック1502において複数のパーティションが表示された後、ユーザデバイスの向きの変化により、ブロック1804、1806及び1808を実施することができるように、プロセス1800はプロセス1600と組み合わせることができる。同様に、ブロック1602において複数のパーティションが表示された後、他のユーザに関連付けられたパーティションを見る要求の受け取りにより、ブロック2104及び2106を実施し、別のユーザに関連付けられた複数のパーティションを表示することができるように、プロセス2100はプロセス1500と組み合わせることができる。
上に言及したように、システム600及び700は、健康若しくは非健康データを、連続的に、断続的に、定期的に、又は任意の他の所望の頻度若しくは時間間隔で測定する、生成する、受け取る若しくは保存するように構成され得る。プロセス1600、1800及び2100は、同様に、健康又は非健康データの表示を、連続的に、断続的に、定期的に、又は任意の他の所望の頻度若しくは時間間隔で更新するために実施することができる。例えば、プロセス1600、1800又は2100を実施するデバイスは、更新された健康又非健康データを、健康データベース611又はユーザデータベース616から、連続的に、断続的に、定期的に、又は任意の他の所望の頻度若しくは時間間隔で受け取ることができる。いくつかの例においては、プロセス1600、1800又は2100を実施するデバイスは、すべての健康又は非健康データの更新を、同じ頻度又は時間間隔で受け取ることができる。他の例においては、プロセス1600、1800又は2100を実施するデバイスは、異なる種類のデータの更新を、異なる頻度又は時間間隔で受け取るように構成され得る。例えば、心拍数データは、毎秒更新され得る一方で、体重データは1日ごとに更新され得る。これら間隔及び頻度はデフォルト値とすることも、ユーザが選択することもできる。
ダッシュボードビュー
図22は、ユーザデバイス610によって表示され得る、ユーザの健康又は非健康データの詳細ビューを表示するための1つの例示的インタフェース2200を示す。インタフェース2200は、任意の数のパーティション2202、2204及び2206を含むことができ、そのそれぞれは、ユーザに関連付けられた異なる種類の健康又は非健康データ(例えば、健康データベース611内に保存されたデータ)を示す。いくつかの例においては、パーティションは、それが示す健康又は非健康データの種類に基づく色で表示され得る。例えば、栄養データを示すパーティションは、ある色で表示することができ、フィットネスデータを示すパーティションは別の色で表示することができる。
いくつかの例においては、パーティションは、パーティションが示す健康又は非健康データの種類の識別(例えば、カロリー、歩数、体重等)、示される健康又は非健康データの種類の毎日の数値、及び示される健康又は非健康データの種類のグラフ表示を含み得る。例えば、パーティション2202は「カロリー」という文字を含み、それがカロリーデータ、燃焼カロリーの現在の1日の値2210である1250、及び1日の経時的なカロリーデータのグラフ表示2208を表すことを示すことができる。同様に、パーティション2204は、「歩数」という文字を含み、それが歩数データ、歩数の現在の1日の値2211である3100、及び1日の経時的な歩数データのグラフ表示2209を表すことを示すことができる。インタフェース2200は、「体重」という文字を示すパーティション2206の部分ビューを更に含み、それが体重データ、及び1日の値2212である160lbsを表すことを示すことができる。図示される例では、各パーティションのグラフは互いに重なっていない。
いくつかの例においては、ユーザの健康又は非健康データの詳細ビューは、インタフェース2200に図示されないパーティションを含み得る。これら例においては、ユーザは、タッチ感知ディスプレイ上で上又は下にスワイプすることによって、マウス又は他の入力デバイスを用いてディスプレイ上をクリックし、ドラッグすることによって、スクロールホイールを操作することによって、タッチパッド上でスワイプジェスチャを実行すること等によって、スクロール要求を開始することができる。スクロール要求の検出に応じて、ユーザデバイス610は、インタフェース2200のビューをスクロールし、以前は表示されていなかった(又はパーティション2206などの部分的に表示されていた)他のパーティションを表示することができる。
例えば、図23は、インタフェース2200のビューを上方向にスクロールするためにユーザがスクロール要求を開始したことに応じて、表示され得る例示的なインタフェース2300を示す。インタフェース2300では、パーティション2206の残りを表示させて、1週間の経時的な体重データのグラフ表示2214を示すことができる。インタフェース2300内のパーティション2206の下に別のパーティション2216も表示させることができる。パーティション2316は、「血圧」という文字を含み、それが血圧データ、現在の1日の値2210である117/67mmHg、及び1週間の経時的な血圧データのグラフ表示2218を表すことを示すことができる。図23に示される例では、グラフ2218は、日ごとの2つの縦棒を含む。上方の日ごとの縦棒の上部及び下部は、それぞれ、1日の高及び低拡張期血圧値を示し得る。同様に、下方の日ごとの縦棒の上部及び下部は、それぞれ、その日の高及び低収縮期血圧値を示し得る。
いくつかの例においては、インタフェース2200又は2300内のパーティションの順序は、ユーザによる、パーティションを順序換えする要求を検出したことに応じて、変更することができる。いくつかの例においては、順序換えする要求は、パーティションの1つを選択し、閾値時間長よりも長い間保持することを含み得る。閾値時間長が経過したことを検出後、ユーザデバイス610は、パーティションを順序換えできることを示すようにパーティションをアニメーションすることができる。いくつかの例においては、選択されたパーティションを所望の位置にドラッグすることによってパーティションを順序換えできる。しかしながら、他の例においては、パーティションを任意の他の所望の手法で順序換えできる。
インタフェース2200及び2300によって示される詳細ビューには4つのみのパーティション2202、2204、2206及び2216が示されているが、詳細ビューは、任意の数及び任意の種類の健康又は非健康データを示す更なるパーティションを含み得ることは認識すべきである。パーティション2202、2204、2206及び2216と同様に、これら更なるパーティションは、パーティションが示す健康又は非健康データの種類の見出し、示される健康又は非健康データの種類の毎日の数値、及び示される健康又は非健康データの種類のグラフ表示を含み得る。
いくつかの例においては、詳細ビューで表示される健康又は非健康データのいくつか又はすべてのグラフビューは、グラフビュー入力に応じて表示され得る。いくつかの例においては、グラフビュー入力は、検出された、ユーザデバイス610の向きの変化を含み得る。例えば、図24は、ユーザデバイス610の、ランドスケープビューへの回転の検出に応じて表示され得る例示的なインタフェース2400を示す。インタフェース2400のグラフビューは、データセット表示2402、2404、2406及び2408を含むことができ、そのそれぞれは、健康又は非健康データの異なるセットを表す。図示される例では、グラフのy軸は、種々のデータセットの従属変数を示すことができ、グラフのx軸は独立変数を示すことができる。例えば、データセット表示2402がカロリーデータのセットを示す場合、y軸の従属変数はカロリーとすることができ、x軸の独立変数は時間とすることができる。同様に、データセット表示2404が歩数データを示す場合、y軸の従属変数は歩数とすることができ、x軸の独立変数は時間とすることができる。
いくつかの例においては、データセット表示はそれが表す健康又は非健康データの種類に基づく色で表示され得る。例えば、栄養データを表すデータセット表示はある色で表示することができ、フィットネスデータのデータセット表示は別の色で表示することができる。いくつかの例においては、異なる種類の健康又は非健康データに用いられる色は、インタフェース2200及び2300の詳細ビュー内のパーティションを表示するのに用いられる色に一致し得る。例えば、栄養データのセットを表すパーティションは、同じ栄養データのセットを表すデータセット表示と同じ色で表示され得る。
いくつかの例においては、x軸の独立変数は、グラフビューに示されるすべてのデータセット表示において同じとすることができる。例えば、x軸によって表される時間は、各データセット表示において同じとすることができる。
いくつかの例においては、データセット表示のいくつか又はすべてにおいて、y軸の従属変数は異なる単位で測定され得る。例えば、データセット表示2402の従属変数は、カロリーで表すことができ、データセット表示2404の従属変数は、歩数で表すことができ、データセット表示2406の従属変数はポンド(体重データを表す)で表すことができ、データセット表示2408の従属変数はmmHg(血圧データを表す)で表すことができる。異なる測定単位を有するこれらのデータセット表示は同じディスプレイ上に重ねて示され得ることから、異なる縦y軸スケーリング用いて、種々のデータセット表示を表示することができる。いくつかの例においては、データセット表示のうちの1つの縦軸のスケールを決定するために、グラフ内に表示されることになる、示されるデータセットの最小値及び最大値が特定され得る。例えば、カロリーデータを示すデータセット表示2402のスケールファクタを決定するために、ディスプレイのx軸によって示される時間範囲にわたるカロリーデータの最大値及び最小値が特定され得る。図24に示される例では、これは、1週間にわたるカロリーデータの最大値及び最小値の特定を含み得る。特定された最大値に、任意の値(例えば、1.1などの、1以上の値)を有し得る第1のスケールファクタを乗じることができ、特定された最小値に、第1のスケールファクタと同じ又は異なり得る第2のスケールファクタ(例えば、0.9などの、1以下の値)を乗じることができる。最大値及び最小値に第1及び第2のスケールファクタを乗じた積を、グラフ内の最大垂直位置(例えば、y軸上の最高位置)及び最小垂直位置(例えば、y軸上の最低位置)にそれぞれ割り当てることができる。これにより、データセット表示をグラフ内に完全に表示することが可能になる。例えば、データセット表示2402によって示されるカロリーデータの最大値及び最小値が、それぞれ、1000カロリー及び300カロリーである場合、並びに第1のスケールファクタ1.1及び第2のスケールファクタ0.9が用いられる場合、データセット表示2402において、y軸の最大垂直位置は1100カロリーを示すことができ、y軸の最小垂直位置は270カロリーを示すことができる。このプロセスは、表示されたデータセット表示のそれぞれに対して繰り返すことができ、データセット表示のそれぞれに対して異なるスケールが生成される。これにより、データセット表示を同じグラフ上に重ねて明瞭に表示することを有利に可能にする。例えば、この代わりに、すべてのデータセットに対して同じスケールファクタを用いた場合、1つのデータセット表示の値が別のデータセットの値よりも著しく大きくなり得る可能性があり、他のデータセット表示が平らな線に見えることになる。
いくつかの例においては、表示されたデータセット表示の1つ以上を、選択されたデータセット表示に関連付けられた追加データを表示するように選択することができる。いくつかの例においては、ユーザが特定のデータセット表示を選択するために、インタフェース2400に示されるグラフビューのデータセット表示を、グラフ内の垂直位置のある範囲(例えば、固有の範囲)に関連付けることができる。例えば、インタフェース2400に示されるグラフは、破線によって分けられた、垂直位置の4つの範囲2410、2412、2414及び2416に分割することができる。この例では、データセット表示2402は、垂直位置の第1の範囲2410と関連付けることができ、データセット表示2404は、垂直位置の第2の範囲2412と関連付けることができ、データセット表示2406は垂直位置の第3の範囲2414と関連付けることができ、データセット表示2408は垂直位置の第4の範囲2416と関連付けることができる。データセット表示のうちの1つの選択は、ユーザ入力の水平位置に関わらず、所望のデータセット表示に対応する垂直位置の範囲内にユーザ入力を入れることによって行うことができる。例えば、データセット表示2402を選択するためには、指又は他のデバイスによるタッチ感知ディスプレイ上のタッチイベント、マウス又は他のデバイスのクリック、タッチパッド上のタッチイベント等の形態のユーザ入力を、垂直位置の第1の範囲2410内に位置する垂直位置を有する位置2418にて行うことができる。第1の範囲2410内の垂直位置を有する位置2418にてユーザ入力を検出したことに応じて、ユーザデバイス610はデータセット表示2402が選択されたという指示を表示することができる。例えば、図25は、インタフェース2400内の位置2418にて受け取った入力を検出したことに応じて表示され得るインタフェース2500を示す。示されるように、円形マーカが、位置2418の水平位置に対応する水平位置においてデータセット表示2410に重ねて表示され得る。加えて、データセット表示2402によって示されるデータセットの値が、ユーザ入力の水平位置(例えば、位置2418の水平位置)において480の値を有することを示す、480kcalという数値が表示され得る。示されるように、データセット表示2402は、データセット表示2402の線が位置2418の近辺に位置していなくても、位置2418におけるユーザ入力によって選択され得る。これにより、ユーザが、データセット表示の特定部分を選択する(これは複数のデータセット表示が重なっている位置では困難となり得る)必要なしに、所望のデータセット表示を選択することを有利に可能にすることができる。
いくつかの例においては、データセット表示2402、2404、2406又は2408の1つは、血圧データを示し得る。これら例においては、データセット表示の線を生成するために、血圧データの従属変数は、拡張期血圧と収縮期血圧との平均値を含み得る。しかしながら、血圧データのデータセット表示の選択に応じて表示される数値は、ユーザ入力の水平位置に対応する時間に関連付けられた、拡張期血圧の高値、拡張期血圧の低値、収縮期血圧の高値及び収縮期血圧の低値を含み得る。
いくつかの例においては、データセット表示2402、2404、2406又は2408の1つは、心拍数データを示し得る。これら例においては、心拍数データのデータセット表示の選択に応じて表示される数値は、ユーザ入力の水平位置に対応する時間に関連付けられた、心拍数の高値及び心拍数の低値を含み得る。
いくつかの例においては、ユーザ入力の検出に応じて表示される選択の指示は、選択されたデータセット表示の線の下の領域の強調表示を更に含み得る。例えば、折れ線グラフを、選択されたデータセットの面グラフに変更するために、選択されたデータセット表示の線の下の領域を、グラフのその他の部分に対して、暗くする、明るくする、異なる色で表示する、又は他の方法で強調表示することができる。いくつかの例においては、現在選択されていないデータセット表示は、ディスプレイから取り除くことも、グレイアウトすることも、又は他の方法で、グラフ内であまり見えないようにすることもできる。
いくつかの例においては、ユーザ入力は、表示されたグラフに連続的に適用することができるとともに、垂直位置の範囲のうちの1つ内を水平方向に移動させて、選択されたデータセット表示の値全体をスクラブすることができる。例えば、位置2418において受け取ったユーザ入力が左方向に移動したのを検出したことに応じて、データセット表示2402上に表示された円形マーカは、それが、ユーザ入力の現在の水平位置に対応する水平位置においてデータセット表示2402の線に沿って動くように見えるように、アニメーションされ得る。同様に、表示される値は、ユーザ入力の水平位置におけるデータセット表示2402によって示されるデータセットの値を反映するように変化することができる。
いくつかの例においては、データセット表示に関連付けられたグラフ内の値の垂直範囲は静的とされ得る。他の例においては、データセット表示に関連付けられたグラフ内の値の垂直範囲は変化することができる。例えば、第1の範囲2410内のある位置におけるユーザ入力の検出に応じて、検出されたユーザ入力が第1の範囲2410内にとどまる時間の長さに基づいて、第1の範囲2410の大きさを拡大することができる。この結果、他の垂直範囲は大きさが縮小又は減少し得る。いくつかの例においては、第1の範囲2410の大きさは拡大してグラフ全体に及ぶことができる。他の例においては、第1の範囲2410の大きさは既定の限界まで拡大することができる。垂直位置の選択された範囲の大きさを拡大することで、ユーザが自身のユーザ入力を水平方向に移動させてデータセット表示の異なる部分を選択する際に、ユーザに、垂直方向のずれに対するより高い許容度を有利に提供する。
いくつかの例においては、インタフェース2400又は2500は、グラフビュー内に表示されることになる健康又は非健康データのセットを選択するための比較オプション2420を含み得る。例えば、図26は、ユーザによるインタフェース2400又は2500内の比較オプション2420の選択に応じて表示され得る例示的なインタフェース2600を示す。示されるように、インタフェース2600は、グラフビュー内に表示され得る健康又は非健康データの種類のリストを含む。健康又は非健康データの各種類は、オプション2602などの選択可能なオプションに関連付けられ、ユーザが、関連付けられた健康又は非健康データの種類をグラフビューに追加する又はグラフビューから除去することを可能にすることができる。図示される例では、カロリーデータ、歩数データ、血圧データ及び心拍数データに対応するデータセットが選択されグラフビュー内に表示されている一方で、体重データは選択されていない。いくつかの例においては、インタフェース2600内に表示される健康又は非健康データのリストは、インタフェース2200及び2300のパーティションによって示される健康又は非健康の種類を含み得る。
いくつかの例においては、健康又は非健康データの詳細ビューは、インタフェース2400、2500又は2600のいずれかが表示されている間に受け取った詳細ビュー入力に応じて表示され得る。いくつかの例においては、詳細ビュー入力は、検出された、ユーザデバイス610の向きの変化を含み得る。例えば、インタフェース2200又は2300は、ユーザデバイス610の、ポートレートビューへの回転を検出したことに応じて表示され得る。
インタフェース2400及び2500に示されるグラフビューは4つのデータセット表示を含むが、グラフは任意の数のデータセット表示を含み得ることを認識すべきである。加えて、垂直位置の範囲の数は、表示されるデータセット表示の数に基づき(例えば、表示されるデータセット表示の数に等しくなるように)変化することができる。例えば、6つのデータセット表示がグラフ内に表示される場合、6つの別個の垂直位置の範囲をデータセット表示に関連付けて、ユーザが所望のデータセット表示を選択することを可能にすることができる。
図27は、種々の例に係る、健康又は非健康データを表示するための例示的なプロセス2700を示す。プロセス2700は、ディスプレイを備える電子デバイス(例えば、デバイス610)において実施され得る。いくつかの実施例では、ディスプレイは、タッチ感知ディスプレイを含み得る。いくつかの実施例では、ディスプレイは、タッチ感知面とは別個とされ得る。プロセス2700のいくつかのブロックは組み合わせることができ、並びに/又はいくつかのブロックの順序は変更することができる。
以下に記載されるように、プロセス2700は、グラフビューにおいて、重なったデータセット表示を選択するための直感的手法を提供する。このプロセスにより、ユーザが、データセット表示上の特定の位置を標的とする(これは複数のデータセット表示が重なっている位置では困難となり得る)必要なしに、特定のデータセット表示を選択することが可能になる。
ブロック2702において、健康又は非健康データのグラフビューが、ユーザデバイス(例えば、ユーザデバイス610)のディスプレイ上に表示され得る。例えば、インタフェース2400又は2500に類似する又は同一のインタフェースが表示され得る。グラフビューは、独立変数が変化すると第1の従属変数が変わる第1のデータセットの第1のデータセット表示(例えば、データセット表示2402)と、独立変数が変化すると第2の従属変数が変わる第2のデータセットの第2のデータセット表示(例えば、データセット表示2404)と、を含み得る。第1のデータセット表示はグラフ内の垂直位置の第1の範囲(例えば、第1の範囲2410)と関連付けることができ、第2のデータセット表示はグラフ内の垂直位置の第2の範囲(例えば、第1の範囲2412)と関連付けることができる。
いくつかの例においては、第1のデータセット表示は、グラフ内に、第2のデータセット表示と重なって表示され得る。例えば、データセット表示2402、2404、2406及び2408は、インタフェース2400及び2500内で重なって示される。いくつかの例においては、第1のデータセット表示及び第2のデータセット表示は、それらが示すデータの種類に基づき色分けされ得る。
いくつかの例においては、第1のデータセットは、健康データの第1のセットを含むことができ、第2のデータセットは、健康データの第2のセットを含むことができる。いくつかの例においては、第1のデータセットの従属変数は、第2のデータセットの従属変数とは異なる単位で測定され得る。
いくつかの例においては、垂直位置の第1の範囲は第1のデータセット表示に固有に関連付けることができ、垂直位置の第2の範囲は第2のデータセット表示に固有に関連付けることができる。例えば、インタフェース2400及び2500内において、第1の範囲2410はデータセット表示2402と固有に関連付けられ、第2の範囲2412はデータセット表示2404と固有に関連付けられる。
いくつかの例においては、第1のデータセット表示を表示するための縦軸のスケールは、第2のデータセット表示を表示するための縦軸のスケールとは異なり得る。これら例においては、グラフを表示することには、第1のデータセット表示の縦軸のスケールを、グラフに表示されることになる第1のデータセット表示の第1の従属変数の最大値及び最小値に基づき決定することを含み得る。グラフを表示することには、第2のデータセット表示の縦軸のスケールを、グラフに表示されることになる第2のデータセット表示の第2の従属変数の最大値及び最小値に基づき決定することを更に含み得る。いくつかの例においては、第1のデータセット表示の縦軸のスケールは、第1の乗率に、グラフに表示されることになる第1のデータセット表示の第1の従属変数の最大値を乗じたもの対応する、グラフ内の最大垂直位置と、第2の乗率に、グラフに表示されることになる第1のデータセット表示の第1の従属変数の最小値を乗じたものに対応する、グラフ内の最小垂直位置と、によって画定され得る。いくつかの例においては、第2のデータセット表示の縦軸のスケールは、第3の乗率に、グラフに表示されることになる第2のデータセット表示の第2の従属変数の最大値を乗じたものに対応する、グラフ内の最大垂直位置と、第4の乗率に、グラフに表示されることになる第2のデータセット表示の第2の従属変数の最小値を乗じたものに対応する、グラフ内の最小垂直位置と、によって画定され得る。
ブロック2704において、ユーザ入力がディスプレイ上のある位置において検出され得る。ユーザ入力を検出することには、指又は他のデバイスによるタッチ感知ディスプレイ上のタッチ又はホバーイベント、マウス又は他のデバイスのクリック、タッチパッド上のタッチ又はホバーイベント等を検出することを含み得る。
ブロック2706において、ユーザ入力の位置を判定することができる。例えば、ユーザ入力の垂直位置及び水平位置(例えば、y軸座標及びx軸座標)を判定することができる。ブロック2704において検出された、ディスプレイ上のユーザ入力の位置が、垂直位置の第1の範囲に関連付けられた垂直位置を有すると判定したことに応じて、第1のデータセット表示の選択の指示が表示され得る。あるいは、ブロック2704において検出された、ディスプレイ上のユーザ入力の位置が、垂直位置の第2の範囲に関連付けられた垂直位置を有すると判定したことに応じて、第2のデータセット表示の選択の指示が表示され得る。
いくつかの例においては、選択の指示を表示することには、ユーザ入力の位置の水平位置に対応する水平位置において、選択されたデータセット表示上に重なったマーカを表示することを含み得る。例えば、インタフェース2400内の位置2418におけるユーザ入力の検出に応じて、図25のインタフェース2500内のデータセット表示2402上に円形マーカが表示され得る。いくつかの例においては、選択の指示を表示することには、選択されたデータセット表示によって示されるデータセットのデータエントリの数値を表示することを更に含み得る。データエントリは、検出されたユーザ入力の位置の水平位置に対応する独立変数の値に関連付けられ得る。例えば、480kcalの数値は、位置2418においてユーザ入力を受け取ったことに応じて表示され得る。
いくつかの例においては、第1のデータセット又は第2のデータセットは血圧データを含み得る。これら例においては、表示されるデータエントリの数値には、拡張期血圧の高値、拡張期血圧の低値、収縮期血圧の高値及び収縮期血圧の低値を含み得る。いくつかの例においては、第1のデータセット表示又は第2のデータセット表示の従属変数は、血圧値の平均値を含み得る。
他の例においては、第1のデータセット又は第2のデータセットは心拍数データを含み得る。これら例においては、表示されるデータエントリの数値は、心拍数の高値及び心拍数の低値を含み得る。
いくつかの例においては、第1のデータセット表示は、グラフ内の第1の線を含み得る。これら例においては、第1のデータセット表示が選択されたという指示を表示することには、第1の線の下の領域を強調表示することを含み得る。例えば、折れ線グラフを、選択されたデータセットの面グラフに変更するために、選択されたデータセット表示の線の下の領域を、グラフのその他の部分に対して、暗くする、明るくする、異なる色で表示する、又は他の方法で強調表示することができる。いくつかの例においては、現在選択されていないデータセット表示は、ディスプレイから取り除くことも、グレイアウトすることも、又は他の方法でグラフ内であまり見えないようにすることもできる。
いくつかの例においては、グラフ内の垂直位置の第1の範囲は、ユーザ入力の位置の垂直位置が垂直位置の第1の範囲内にある間に、ユーザ入力が検出される時間の長さに基づき拡大することができる。他の例においては、グラフ内の垂直位置の第2の範囲は、ユーザ入力の位置の垂直位置が垂直位置の第2の範囲内にある間に、ユーザ入力が検出される時間の長さに基づき拡大することができる。
ブロック2708において、電子デバイスにおいて詳細ビュー入力が検出され得る。いくつかの例においては、詳細ビュー入力を検出することには、グラフを表示している間の電子デバイスの向きの変化を検出することを含み得る。例えば、詳細ビュー入力を検出することには、ランドスケープビュー(例えば、図24~図26に示される)からポートレートビュー(例えば、図22~図23に示される)への電子デバイスの向きの変化を検出することを含み得る。他の例においては、詳細ビュー入力は、他の種類の入力を含み得る。
ブロック2710において、詳細ビュー入力を検出したことに応じて、第1のデータセット及び第2のデータセットの詳細ビューが表示され得る。例えば、インタフェース2200及び2300に示されるものと類似する又は同一の詳細ビューが表示され得る。詳細ビューは、第1のデータセットに関連付けられた第1のパーティション(例えば、パーティション2202)と、第2のデータセットに関連付けられた第2のパーティション(例えば、パーティション2204)と、を含み得る。
いくつかの例においては、第1のパーティションは、第1のデータセットの第1のグラフ表示(例えば、グラフ2208)を含むことができ、第2のパーティションは第2のデータセットの第2のグラフ表示(例えば、グラフ2210)を含むことができる。いくつかの例においては、グラフビューの第1及び第2のデータセット表示とは異なり、詳細ビューにおいて、第1のグラフ表示は第2のグラフ表示と重ならないものとされ得る。
いくつかの例においては、第1のパーティションは、第1のデータセット表示の色に一致する色で表示することができ、第2のパーティションは、第2のデータセット表示の色に一致する色で表示することができる。例えば、パーティション2202は、データセット表示2402の色に一致する色で表示することができ、パーティション2204はデータセット表示2404の色に一致する色で表示することができる。
いくつかの例においては、プロセス2700は、詳細ビューをスクロールする要求を検出することと、詳細ビューをスクロールする要求を検出したことに応じて、詳細ビューをスクロールすることと、を更に含み得る。例えば、インタフェース2200に示される詳細ビューを上方向にスクロールして、以前は表示されていなかった他のパーティションを含むインタフェース2300を表示することができる。
いくつかの例においては、プロセス2700は、第1のパーティションと第2のパーティションを順序換えする要求を検出することと、第1のパーティションと第2のパーティションを順序換えする要求を検出したことに応じて、詳細ビュー内の第1のパーティション及び第2のパーティションを順序換えすることと、を更に含み得る。いくつかの例においては、順序換えする要求を検出することには、閾値時間長よりも長い間にわたるパーティションの1つの選択を検出することを含み得る。閾値時間長にわたる選択を検出した後、ユーザデバイス610は、パーティションを順序換えできることを示すようにパーティションをアニメーションすることができる。パーティションは、選択されたパーティションが詳細ビュー内の新たな位置にドラッグされたことを検出したことに応じて、順序換えされた状態で表示され得る。
いくつかの例においては、プロセス2700は、電子デバイスにおいてグラフビュー入力を検出することと、グラフビュー入力を検出したことに応じて、第1のデータセットの第1のデータセット表示と、第2のデータセットの第2のデータセット表示と、を含むグラフを表示することと、を更に含み得る。いくつかの例においては、グラフビュー入力を検出することには、電子デバイスの向きの変化を検出することを含み得る。例えば、インタフェース2400は、ポートレートビューからランドスケープビューへの電子デバイスの向きの変化を検出したことに応じて表示され得る。
図27における動作について説明された特定の順序は単なる例示であり、説明された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作の順序換えをする様々な方法を認識するであろう。加えて、本明細書に記載の他のプロセスに関して本明細書で記載されている他のプロセスの詳細(例えば、プロセス900、1600、1800、2100、2700、3800又は4500)は、また、図27に関連して上述されているプロセス2700に類似の手法で適用可能であることに留意されたい。簡潔性のために、これらの詳細は、ここでは繰り返さない。
粒度を持つヒースデータの入力及び出力
図28は、ユーザデバイス610によって表示され得る、ユーザの健康又は非健康データを表示するための1つの例示的なインタフェース2800を示す。インタフェース2800は、健康又は非健康データのカテゴリのリスト2802を含み得る。カテゴリは、健康又は非健康データの1つ以上のサブカテゴリを含み得る。サブカテゴリは、任意の数の更なるサブカテゴリを更に含み得る。例えば、カテゴリ「フィットネス」は、サブカテゴリ「ボディマス指数」、「体脂肪率」、「身長」、「体質量」、「除脂肪量」、「歩数」、「距離」、「燃焼カロリー」、「活動時間」及び「上った階数」を含み得る。カテゴリ「バイタルサイン」は、サブカテゴリ「心拍数」、「収縮期血圧」、「拡張期血圧」、「酸素飽和度」、「呼吸数」及び「体温」を含み得る。カテゴリ「検査結果」は、サブカテゴリ「血糖」及び「血中アルコール濃度」を含み得る。カテゴリ「栄養」は、サブカテゴリ「総脂肪」、「多価不飽和脂肪」、「一価不飽和脂肪」、「飽和脂肪」、「コレステロール」、「ナトリウム」、「カリウム」、「糖質由来の炭水化物」、「食物繊維」、「糖質」、「摂取カロリー」、「脂肪のカロリー」、「タンパク質」、「ビタミンA」、「ビタミンB6」、「ビタミンB12」、「ビタミンC」、「ビタミンD」、「ビタミンE」、「ビタミンK」、「カルシウム」、「鉄」、「チアミン」、「リボフラビン」、「ナイアシン」、「葉酸」、「ビオチン」、「パントテン酸」、「リン」、「ヨウ素」、「マグネシウム」、「亜鉛」、「セレン」、「銅」、「マンガン」、「クロム」、「モリブデン」及び「塩化物」を含み得る。カテゴリ「診断」は、サブカテゴリ「倒れた回数」、「皮膚電気反射」及び「体熱流束(Body Heat Flux)」を含み得る。カテゴリ「投薬」は、サブカテゴリ「吸入器の使用」を含み得る。カテゴリ「睡眠」は、サブカテゴリ「睡眠時間」を含み得る。カテゴリ「自分」は、サブカテゴリ「名前」、「誕生日」、「性別」、「血液型」を含み得る。上記リストは単に例として提供されるものであり、更なる又はより少数のカテゴリをインタフェース2800内に含むことができることは認識すべきである。加えて、インタフェース2800のカテゴリは、更なる又はより少数のサブカテゴリを含み得ることは認識すべきである。
いくつかの例においては、リスト2802内の各項目は、リスト2802内の関連項目の健康又は非健康データの種類に基づき色分けされ得るインジケータ2804を含み得る。例えば、「フィットネス」に関連付けられたインジケータ2804は、「バイタルサイン」に関連付けられたインジケータ2804とは異なる色を有し得る。いくつかの例においては、リスト2802内の項目は、関連カテゴリを拡張するために用いられ得る選択可能なオプション2806を更に含み得る。
例えば、図29は、「フィットネス」に関連付けられたオプション2806の選択に応じて表示され得るインタフェース2900を示す。示されるように、インタフェース2900は、インタフェース2800において選択された「フィットネス」のより広いカテゴリに属するサブカテゴリのリスト2902を含み得る。サブカテゴリのリスト2902を、前に表示されていたリスト2802の代わりに表示することができる。リスト2802と同様に、リスト2902内の項目は、リスト2902内の関連項目の健康又は非健康データの種類に基づきカラーコア(color-cored)され得るインジケータ2904を含み得る。この例では、リスト2902内に表示されるサブカテゴリのすべてが健康又は非健康データの同じカテゴリ又は種類に属することから、各項目に関連付けられたインジケータ2904は同じ色とされ得る。いくつかの例においては、リスト2902内の項目に関連付けられたインジケータ2904の色は、「フィットネス」に関連付けられたインジケータ2804と同じ色とされ得る。他の例においては、リスト2902内の項目に関連付けられたインジケータ2904の色は、「フィットネス」に関連付けられたインジケータ2804の色と異なる濃淡とされ得る。例えば、インジケータ2904は、淡緑色とされ得る一方で、「フィットネス」に関連付けられたインジケータ2804は濃緑色とされ得る。
再度図28を参照すると、インタフェース2800(及びインタフェース2900)は、リスト2802内に列挙されたカテゴリ内のキーワード検索を実施するための検索ボックス2808を更に含み得る。例えば、図30は、ユーザが検索ボックス2808内に検索クエリ「カロリー」を入力したことに応じて表示され得るインタフェース3000を示す。示されるように、インタフェース3000は、検索クエリ「カロリー」に合致するサブカテゴリのリスト3002を含み得る。サブカテゴリは、リスト2802のカテゴリのいずれのサブカテゴリとすることもできる。「燃焼カロリー」においては、「フィットネス」のサブカテゴリとすることができ、「摂取カロリー」は「栄養」のサブカテゴリとすることができ、「脂肪のカロリー」は「栄養」のサブカテゴリとすることができる。インタフェース3000は、リスト3002内の項目に関連付けられたインジケータ3004を更に含み得る。インジケータ2804及び2904と同様に、インジケータ3004は、リスト3002内の関連項目の健康又は非健康データの種類に基づき色分けされ得る。この例では、「摂取カロリー」のインジケータ3004は、「脂肪のカロリー」のインジケータ3004と同じ色とされ得るが、これは、これらが双方とも「栄養」というより広いカテゴリ内に属するからである。いくつかの例においては、「摂取カロリー」及び「脂肪のカロリー」のインジケータ3004の色は、「栄養」のインジケータ2804と同じ色とされ得る。他の例においては、「摂取カロリー」及び「脂肪のカロリー」のインジケータ3004の色は、「栄養」のインジケータ2804の色と異なる濃淡とされ得る。「燃焼カロリー」のインジケータ3004は、「摂取カロリー」及び「脂肪のカロリー」のインジケータ3004とは異なる色とされ得るが、これは、「燃焼カロリー」が異なるカテゴリ(例えば、「フィットネス」)内に属するからである。いくつかの例においては、「燃焼カロリー」のインジケータ3004の色は、「フィットネス」のインジケータ2804と同じ色とされ得る。他の例においては、「燃焼カロリー」のインジケータ3004の色は、「フィットネス」のインジケータ2804の色と異なる濃淡とされ得る。
いくつかの例においては、インタフェース2900及び3000に示されるサブカテゴリのいずれを選択してもサブカテゴリの詳細ビューを表示させることができる。例えば、図31は、インタフェース2900又は3000のいずれかの「燃焼カロリー」の選択に応じて表示され得る例示的なインタフェース3100を示す。示されるように、インタフェース3100は、詳細ビュー内に表示されている健康又は非健康データの種類のテキスト指示を含み得る。例えば、インタフェース3100は、「燃焼カロリー」というテキストを含み、インタフェース3100内に表示された情報が燃焼カロリーに関連する情報を表すことを示す。
いくつかの例においては、インタフェース3100は、現在の1日の値3104である1250kcalと、1日の経時的な燃焼カロリー数を示すグラフ表示3102と、を更に含み得る。インタフェース3100は、「燃焼カロリー」のサブカテゴリ内に属する全データを表示するために用いられ得る「すべてのデータを表示」オプション3106を更に含み得る。例えば、図33は、インタフェース3100内のオプション3106の選択に応じて表示され得る例示的なインタフェース3300を示す。示されるように、インタフェース3300は、(例えば、健康データベース611内に保存された)燃焼カロリーを示すすべてのデータエントリのリスト3302を含み得る。示されるように、リスト3302内のデータエントリは、データエントリの数値と、対応するデータエントリが記録された、対応する日付(及び時間も含み得る)と、を含み得る。例えば、リスト3302内の第1のデータエントリは、2014年3月1日に860カロリーが燃焼されたことを示す、日付2014年3月1日に関連付けられた数860を含み得る。リスト3302内のデータエントリは、インジケータ3304を更に含み得る。インジケータ3304は、データエントリのソースを表すグラフィック、テキスト、又は他の画像を含み得る。例えば、第1のデータエントリを、着用可能な電子デバイス1から得た場合、そのデータエントリに関連付けられたインジケータ3304は、デバイス1を製造した企業のロゴの画像、又はデバイス1に関連付けられた何らかの他の画像を含み得る。同様に、リスト3302内の第2のデータエントリを、ソフトウェアアプリケーションApp1から得た場合、第2のデータエントリに関連付けられたインジケータ3304は、App1を作成した企業のロゴに関連付けられた画像、又はApp1に関連付けられた何らかの他の画像を含み得る。
燃焼カロリーについて示したが、健康又は非健康データの任意の種類のサブカテゴリに関連付けられたデータエントリのリストを類似の手法で表示できることは認識すべきである。
再度図31を参照すると、インタフェース3100は、「燃焼カロリー」のサブカテゴリ内にデータエントリを手で入力するためのインタフェースを表示するために用いられ得る「データポイント追加」オプション3108を更に含み得る。例えば、図34は、インタフェース3100内のオプション3108の選択に応じて表示され得る例示的なインタフェース3400を示す。示されるように、インタフェース3400は、入力されるデータエントリに対し、それぞれ、日付、時間及び燃焼カロリー数を入力するためのフィールド3402、3404及び3406を含み得る。インタフェース3400は、フィールド3402、3404及び3406にデータを入れるための数字入力パッド3408を更に含み得る。インタフェース3400は、インタフェース3400内に収容された情報を、燃焼カロリーサブカテゴリ内のデータエントリとして追加する(例えば、健康データベース611内に保存される)ために選択され得る「追加」ボタン3410を更に含み得る。インタフェース3400は、データエントリのエントリを取消すための「取消し」ボタン3412を更に含み得る。
再度図31を参照すると、インタフェース3100(及びインタフェース3200)は、インタフェース2200及び2300の詳細ビュー内に関連付けられたデータのサブカテゴリ(例えば、燃焼カロリー)を選択的に表示させるためのオプション3120を有する「ダッシュボードに表示」オプション3112を更に含み得る。オプション3120のスイッチがオン位置に入れられると、関連付けられたデータのサブカテゴリをインタフェース2200及び2300の詳細ビュー内に含めることができる。しかしながら、オプション3120のスイッチがオフ位置に入れられると、関連付けられたデータのサブカテゴリはインタフェース2200及び2300の詳細ビュー内に含まれなくてもよい。
図31に示されるように、インタフェース3100はグラフィック3114を更に含む。グラフィック3114は、インタフェース3100内に表示されて示される健康又は非健康データの任意の画像又は他のグラフ表示を含み得る。例えば、グラフィック3114は、ユーザにより摂取されたカロリーと消費されたカロリーの相対値を示す天秤を含み得る。しかしながら、任意の他のグラフィック又は画像が示され得ることは認識すべきである。
いくつかの例においては、サブカテゴリの詳細ビューは、インタフェース3100内に図示されない追加の情報を更に含み得る。これら例においては、ユーザは、タッチ感知ディスプレイ上で上又は下にスワイプすることによって、マウス又は他の入力デバイスを用いてディスプレイ上をクリックし、ドラッグすることによって、スクロールホイールを操作することによって、タッチパッド上でスワイプジェスチャを実行すること等によって、スクロール要求を開始することができる。スクロール要求の検出に応じて、ユーザデバイス610は、インタフェース3100のビューをスクロールし、以前は表示されていなかった(又は部分的に表示されていた)情報を表示することができる。
例えば、図32は、ユーザによる、インタフェース3100のビューを上方向にスクロールするためのスクロール要求の開始に応じて表示され得る例示的なインタフェース3200を示す。インタフェース3200には、グラフィック3114並びにオプション3106、3108、3110及び3112は依然として表示することができるものの、ディスプレイの上部のより近傍に配置され得る。インタフェース3200は、グラフィック3114の下にテキストによる説明3122を更に含み得る。テキストによる説明3122は、インタフェース3200内に示される健康又は非健康データが何を示すかを説明するテキストを含み得る。例えば、テキストによる説明3122は、「燃焼カロリー」がどのように算出されるか、一般的な人の1日の平均値が何であるか、燃焼カロリーの量をどのように増加するか、等のような、「燃焼カロリー」が何を示すかについての説明を提供することができる。
再度図31を参照すると、インタフェース3100は、データ共有をオン又はオフにするためのオプション3116を有する「データの共有」オプション3110を更に含み得る。データ共有は、他のデバイス又はアプリケーションが(例えば、健康データベース611内に保存された)ユーザの健康又は非健康データにアクセスする機能を示し得る。例えば、図35は、インタフェース3100内のオプション3110の選択に応じて表示され得る例示的なインタフェース3500を示す。示されるように、インタフェース3500は、選択可能なオプション3512を有する共有オプション3502を含み得る。オプション3512のスイッチの位置を用いて、データ共有をオン又はオフにすることができる。例えば、図35に示すように、右に移動させると、オプション3512のスイッチは共有用オプション3502をオンにすることができる。しかしながら、左に移動させると、オプション3512のスイッチは共有用オプション3502をオフにすることができる。
インタフェース3500は、健康又は非健康データの既知の想定されるデスティネーションのリスト3504を更に含み得る。このリストは、(例えば、健康データベース611内に保存された)ユーザの健康又は非健康データを受け取る可能性があり得る既知のデバイス又はソフトウェアアプリケーションを含み得る。共有オプション3502のオプション3512がオフ位置に移動されると、列挙されたすべてのデバイス及びアプリケーションのデータ共有をオフにすることができる。したがって、選択可能なオプション3514、3516及び3518は、インタフェース3500から除くことができる、又は他の方法で非アクティブにされることができる。共有オプション3502のオプション3512がオン位置に移動されると、リスト3504内のデスティネーションに関連付けられた選択可能なオプション3514、3516及び3518が表示され得る、又は選択可能にすることができる。オプション3512と同様に、オプション3514、3516及び3518のスイッチの位置を変更して、関連付けられたデスティネーションに対するデータ共有をオン又はオフにすることができる。例えば、デバイス1のためのオプション3514はオフ位置にあり、デバイス1に対してデータ共有がオンにされていないことを示す。オプション3516及び3518は、しかしながら、オン位置にあり、App1及びApp2に対してデータ共有がオンにされていることを示す。データ共有がオンにされているとき、関連付けられたデバイス又はアプリケーションは、(例えば、健康データベース611内に保存された)ユーザの健康又は非健康データにアクセスすることができる。例えば、体重追跡アプリケーションに相当し得るApp1は、ユーザのフィットネス及び栄養データにアクセスし、ユーザのカロリー摂取及び消費を追跡することができる。データ共有がオフにされているとき、関連付けられたデバイス又はアプリケーションは、(例えば、健康データベース611内に保存された)ユーザの健康又は非健康データにアクセスすることを阻止されてもよい。例えば、デバイス1は、健康データベース611内に保存されたデータにアクセスできなくてもよい。
インタフェース3500は、(例えば、健康データベース611内に保存されることになる)健康又は非健康データを提供する可能性があり得る既知のデバイス及びアプリケーションのリストを含むソースリスト3506を更に含み得る。ソースリスト3506内のデバイス及びアプリケーションはそれらの優先度に基づく順序で配置され得る。例えば、示されるように、デバイス1はデバイス2よりも優先度が高く、デバイス2はApp3よりも優先度が高い。これら相対的な優先度を用いて、ソースの2つ以上によって生成された健康又は非健康データを重複排除することができる。例えば、デバイス1がフィットネストラッキング腕時計に相当し、デバイス2が携帯電話に相当する場合、両デバイスがユーザに関連付けられた歩数データを提供できるということが可能である。このため、異なるソースに優先順位をつけることによって、より高いランクのソースからのデータが、より低いランクのソースからのデータの代わりに使用され得る、又は他の方法で、より低いランクのソースからのデータよりも優先され得る。これは、1つのデバイスが別のデバイスに比べてより正確な結果を生成する可能性がより高い場合に有利となり得る。いくつかの例においては、2つ以上のデータエントリが同じ種類のものである(例えば、歩数データ、燃焼カロリー等)ことを示すメタデータを有するとともに、互いに閾値時間長の範囲内である、関連付けられたタイムスタンプを有する2つ以上のデータエントリを特定することによって重複データエントリが検出され得る。
いくつかの例においては、インタフェース3500は、ソースリスト3506のソースの順序を変更するための編集オプション3508を更に含み得る。例えば、オプション3508の選択に応じて、ソースリスト3506内の各項目を(例えば、クリック及びドラッグ等によって)互いに対して移動させることができる。ソースリスト3506内のソースの新たな順序はソース間の新たな優先順位を定義し得る。
いくつかの例においては、ソースリスト3506の「ソース」オプション選択し、ソースの更なる詳細ビューを表示することができる。例えば、図36は、ソースリスト3506の「ソース」オプションの選択に応じて表示され得る例示的なインタフェース3600を示す。示されるように、インタフェース3600は、ソースリスト3506に類似するソースリスト3606を含み得る。しかしながら、ソースリスト3606はソースApp2及びApp1を更に含み得る。ソースApp2及びApp1は、それらをディスプレイ内に収めることができなかったことから、インタフェース3500内には表示されていなかった。インタフェース3600は、関連付けられたソースが提供することができる新たな健康又は非健康データの種類の数を示す、ソース(例えば、デバイス1)に関連付けられた、数字インジケータを更に含み得る。例えば、ユーザがインタフェース3600を見た最後の時点以降、デバイス1は、現在では、2つの新たな種類のデータ(例えば、燃焼カロリー及び上った階数)を提供することができる。インタフェース3600は、ソースリスト3606内のソースに関連付けられた、各ソースが提供することができるデータの種類のより詳細な管理を提供するためのオプション3610を更に含み得る。
例えば、図37は、デバイス1に関連付けられた、インタフェース3600内のオプション3610又はインタフェース3500内のオプション3510の選択に応じて表示され得る例示的なインタフェース3700を示す。示されるように、インタフェース3700は、選択可能なオプション3704を有するアップロードオプション3702を含み得る。オプション3704のスイッチの位置を用いて、デバイス又はアプリケーションからのデータアップロードをオン又はオフにすることができる(例えば、健康データベース611内に保存されることになる)。例えば、図37に示すように、右に移動させると、オプション3704のスイッチはデバイス1によるデータアップロードをオンにすることができる。しかしながら、左に移動させると、オプション3704のスイッチはデバイス1によるデータアップロードをオフにすることができる。
インタフェース3700は、デバイス1により提供され得るデータ種類のリスト3706を更に含み得る。共有オプション3704のオプション3512がオフ位置に移動されると、列挙されたすべての種類のデータのデータアップロードをオフにすることができる。したがって、選択可能なオプション3708、3710、3712及び3714はインタフェース3700から除くことができる、又は他の方法で非アクティブにされることができる。アップロードデータオプション3702のオプション3704がオン位置に移動されると、データ種類のリスト3706に関連付けられた、選択可能なオプション3708、3710、3712及び3714を表示できる又は選択可能にすることができる。オプション3704と同様に、オプション3708、3710、3712及び3714のスイッチの位置は、関連付けられた種類のデータに関するデータアップロードをオン又はオフにするように変更することができる。例えば、血圧のオプション3708はオフ位置にあり、血圧データに関しては、デバイス1からのデータアップロードがオンにされていないことを示す。オプション3710、3712及び3714は、しかしながら、オン位置にあり、カロリー、歩数及び上った階段のデータに関しては、データアップロードがオンにされていることを示す。データアップロードがオンにされているとき、関連付けられた種類のデータがデバイス又はアプリケーションによって提供され、ユーザデバイス610によって(例えば、健康データベース611内に)保存され得る。例えば、デバイス1によって生成されたカロリーデータは、デバイス1から、ユーザデバイス610によって受け取られ、健康データベース611内に保存され得る。データアップロードがオフにされているとき、関連付けられた種類のデータは、デバイス又はアプリケーションにより提供されずユーザデバイス610により(例えば、健康データベース611内に)保存されなくてもよい。例えば、デバイス1によって生成された血圧データは、デバイス1から、ユーザデバイス610によって受け取られなくてもよく、健康データベース611内に保存されなくてもよい。インタフェース3700のオプションは、ユーザが、どの種類のデータを特定のデバイス又はアプリケーションによって提供できるかを特に定義することを有利に可能にする。
図30~図34に示される例は燃焼カロリーに関するものであるが、他の種類の健康又は非健康データに関して、類似のインタフェースも表示することができることは認識すべきである。
図38Aは、種々の例に係る、健康又は非健康データを管理し、表示するための例示的なプロセス3800を示す。プロセス3800は、ディスプレイを備える電子デバイス(例えば、デバイス610)において実施され得る。いくつかの実施例では、ディスプレイは、タッチ感知ディスプレイを含み得る。いくつかの実施例では、ディスプレイは、タッチ感知面とは別個とされ得る。プロセス2800のいくつかのブロックは組み合わせることができ、並びに/又はいくつかのブロックの順序は変更することができる。
以下に記載されるように、プロセス3800は、健康データベース611内に保存されたデータのソース及びデスティネーションを管理するための直感的手法を提供する。このプロセスにより、ユーザが、どのデバイス及びアプリケーションが健康データベース611内のデータにアクセスできるかを指定すること、並びに健康データベース611内に保存されることになるデータのソースとして機能し得るデバイス及びアプリケーションを指定することが可能になる。加えて、ソースに関しては、ユーザは、それらのソースがどの種類のデータを提供することができるか、及びどのソースを他のソースよりも優先するかを指定することができる。これは、1つのデバイスが別のデバイスに比べてより正確な結果を生成する可能性がより高い場合に有利となり得る。
ブロック3802において、健康データの複数の承認済みのソースを識別する情報がユーザデバイス(例えば、ユーザデバイス610)によってユーザから受け取られ得る。いくつかの例においては、複数の承認済みのソースを識別する情報は、複数の承認済みのソースから受け取られ、健康データベース(例えば、健康データベース611)内に保存されることが承認された、1つ以上の種類の健康又は非健康データを識別することができる。例えば、複数の承認済みのソースを識別する情報は、インタフェース3500、3600及び3700に類似する又は同一のインタフェースを介して受け取られ得る。これら例においては、ユーザは、どの種類のデータが複数の承認済みのソースのそれぞれによって提供され、健康データベース内に保存され得るかを指定することができる。
ブロック3804において、健康又は非健康データの複数の承認済みのデスティネーションを識別する情報が、ユーザデバイス(例えば、ユーザデバイス610)によってユーザから受け取られ得る。例えば、複数の承認済みのデスティネーションを識別する情報は、インタフェース3500に類似する又は同一のインタフェースを介して受け取られ得る。これら例においては、ユーザは、どのデスティネーションを承認して健康データベースからのデータにアクセスさせるかを指定することができる。
いくつかの例においては、複数の承認済みのソースは、電子デバイス又はソフトウェアアプリケーションを含み得る。例えば、腕時計、携帯電話等などの承認済みの電子デバイスは、健康又は非健康データをユーザデバイス610に提供し、健康データベース611内に保存することができる。同様に、ユーザデバイス610上の又は他の方法でユーザデバイス610に関連付けられた承認済みのソフトウェアアプリケーションは、健康又は非健康データをユーザデバイス611に提供し、健康データベース611内に保存することができる。いくつかの例においては、承認済みのソフトウェアアプリケーションは、電子デバイスに関連付けられており、電子デバイスと通信することができるソフトウェアアプリケーションとされ得る。
同様に、いくつかの例においては、複数の承認済みのデスティネーションは、電子デバイス又はソフトウェアアプリケーションを含み得る。例えば、腕時計、携帯電話等などの承認済みの電子デバイスは、健康データベース611内に保存された健康又は非健康データにアクセスすることができる。同様に、ユーザデバイス610上の又は他の方法でユーザデバイス610に関連付けられた承認済みのソフトウェアアプリケーションは、健康データベース611内に保存された健康又は非健康データにアクセスすることができる。いくつかの例においては、承認済みのソフトウェアアプリケーションは、電子デバイスに関連付けられており、電子デバイスと通信することができるソフトウェアアプリケーションとされ得る。
いくつかの例においては、複数の承認済みのソースは互いの間でランク付けされ得る。いくつかの例においては、インタフェース3500に類似する又は同一のインタフェースを用いて、承認済みのソースの相対的なランキングを表示し、調整することができる。例えば、インタフェース3500に示すように、デバイス1をデバイス2よりも高くランク付けし、デバイス1からのデータをデバイス2からのデータよりも優先することができ、デバイス2をApp3よりも高くランク付けし、デバイス1及びデバイス2からのデータをApp3からのデータよりも優先することができる。
いくつかの例においては、プロセス3800は、ブロック3806において、互いの重複である第1の健康データエントリ及び第2の健康データエントリを識別することを更に含み得る。いくつかの例においては、これは、複数の承認済みのソースの第1の承認済みのソースから受け取った健康データベース内の第1の健康データエントリを識別することであって、第1の健康データエントリは、第1の健康データ種類及び第1のタイムスタンプを含む、ことと、複数の承認済みのソースの第2の承認済みのソースから受け取った健康データベース内の第2の健康データエントリを識別することであって、第2の健康データエントリが第2の健康データ種類及び第2のタイムスタンプを含み、第1の健康データ種類と第2の健康データ種類とが同じであり、第1のタイムスタンプが第2のタイムスタンプから閾値時間長の範囲内である、ことと、を含み得る。例えば、第1のデータエントリは、「歩数データ」の種類、及び関連付けられたタイムスタンプである、2014年3月1日の2:30p.m.を有し得る。第2のデータエントリは、「歩数データ」の種類、及び関連付けられたタイムスタンプである、2014年3月1日の2:31p.m.を有し得る。ブロック3806において用いられる閾値時間長が5分である場合、第1のデータエントリと第2のデータエントリとが同じデータ種類であり、互いから閾値時間長の範囲内のタイムスタンプを含むと判定され得る。これは、第1のデータエントリと第2のデータエントリとが、ユーザによって実行された同じアクションを示す重複エントリである可能性があることを示し得る。
ブロック3808において、複数のソースのランキングに基づき、第1のデータエントリ及び第2のデータエントリのうちの1つが、優先され得る、又は他の方法で、他方のデータエントリよりも好ましいと識別され得る。例えば、上述したように、複数の承認済みのソースは互いの間でランク付けされ得る(例えば、インタフェース3500に示すように)。いくつかの例においては、第1のデータエントリを提供する第1の承認済みのソースが第2の承認済みのソースよりも好ましいとユーザにより認識された場合、ブロック3808は、第2の健康データエントリを使用する代わりに第1の健康データエントリを使用することを含み得る。例えば、これは、ユーザに対し表示する又は提示する目的として、第2のデータエントリを健康データベース611から削除すること、又は他の方法で第2のデータエントリを無視することを含み得る。他の例においては、第1の承認済みのソースが第2の承認済みのソースよりも好ましいとユーザにより認識されていた場合、ブロック3806は、第2の健康データエントリよりも第1の健康データエントリを優先することを含み得る。別のデータエントリよりも優先されたデータエントリは、他方のデータエントリの代わりに使用され得る(例えば、他方のデータエントリに優先して表示される、計算で使用される等)。
他の例においては、第2の承認済みのソースが第1の承認済みのソースよりも好ましいとユーザにより認識されていた場合、ブロック3806は、第1の健康データエントリよりも第2の健康データエントリを優先することを含み得る。別のデータエントリよりも優先されたデータエントリは、他方のデータエントリの代わりに使用され得る(例えば、他方のデータエントリに優先して表示される、計算で使用される等)。
いくつかの例においては、図38Bに示すように、プロセス3800は、ブロック3810において、電子デバイスによって、ディスプレイ上に、健康データベース内に保存された健康データの複数のカテゴリを表示することを更に含み得る。例えば、インタフェース2800に類似する又は同一のインタフェースが表示され得る。インタフェースは、健康又は非健康データの任意の量又は任意の種類のカテゴリを含み得る。
ブロック3812において、表示された健康データの複数のカテゴリからの健康データのカテゴリの選択が電子デバイスにおいて検出され得る。例えば、指又は他のデバイスによるタッチ感知ディスプレイ上のタッチイベント、マウス又は他のデバイスのクリック、タッチパッド上のタッチイベント等により行われた、インタフェース2800に類似する又は同一のインタフェース内に表示されたカテゴリのうちの1つの選択が検出され得る。いくつかの例においては、表示される複数のカテゴリのそれぞれが、そのカテゴリの健康又は非健康データの種類に基づき色分けされ得るインジケータ(例えば、インジケータ2804)を含み得る。例えば、「フィットネス」に関連付けられたインジケータは、「バイタルサイン」に関連付けられたインジケータとは異なる色を有し得る。
ブロック3814において、健康データのカテゴリの1つ以上のサブカテゴリは、健康データのカテゴリの選択を検出したことに応じて表示され得る。例えば、ブロック3812において選択されたカテゴリ内に属するサブカテゴリのリストを含む、インタフェース2900に類似する又は同一のインタフェースが表示され得る。いくつかの例においては、表示されるインタフェースは、インジケータを含み得る。インジケータは、それが示す健康又は非健康データの種類に基づきカラーコア(color-cored)され得る。
ブロック3816において、表示された1つ以上のサブカテゴリからのサブカテゴリの選択が検出され得る。例えば、指又は他のデバイスによるタッチ感知ディスプレイ上のタッチイベント、マウス又は他のデバイスのクリック、タッチパッド上のタッチイベント等により行われた、インタフェース2900に類似する又は同一のインタフェース内に表示されたサブカテゴリのうちの1つの選択が検出され得る。
ブロック3818において、選択されたサブカテゴリの詳細ビューが、ブロック3816においてサブカテゴリの選択を検出したことに応じて表示され得る。例えば、インタフェース3200に類似する又は同一のインタフェースが表示され得る。サブカテゴリの詳細ビューは、データのサブカテゴリのグラフ表示(例えば、グラフ3102)と、毎日の数値(例えば、毎日の値3104)と、を含み得る。詳細ビューは、すべてのデータを示すためのオプション(例えば、オプション3106)と、データポイントを追加するためのオプション(例えば、オプション3108)と、データを共有するためのオプション(例えば、オプション3110)と、ダッシュボードに表示するためのオプション(例えば、オプション3112)と、を更に含み得る。詳細ビューは、サブカテゴリのグラフィック表示(例えば、グラフィック3114)と、サブカテゴリのテキストによる説明(例えば、説明3122)と、を更に含み得る。
いくつかの例においては、プロセス3800は、データポイント追加オプション(例えば、オプション3108)の選択に応じて、インタフェース3400に類似する又は同一のインタフェースを表示することを含み得る。このインタフェースは、健康データエントリに関連する情報を入力するための、1つ以上の入力フィールド(例えば、フィールド3402、3404及び3406)を含み得る。いくつかの例においては、プロセス3800は、入力フィールドに入力された、健康データベース内に保存されることになる健康データエントリ(例えば、フィールド3402、3404及び3406への入力)を受け取ることを更に含み得る。
いくつかの例においては、プロセス3800は、全データ表示オプション(例えば、オプション3106)の選択に応じて、インタフェース3300に類似する又は同一のインタフェースを表示することを更に含み得る。このインタフェースは、健康データベース内に保存されたサブカテゴリに対応する複数の健康データエントリ(例えば、リスト3302内のエントリ)を含み得る。いくつかの例においては、複数の健康データエントリのそれぞれが、データエントリの数値、タイムスタンプ、及びデータエントリのソースのID(例えば、インジケータ3304)を含み得る。
いくつかの例においては、プロセス3800は、データ共有オプション(例えば、オプション3110)の選択に応じて、インタフェース3500に類似する又は同一のデータ共有インタフェースを表示することを更に含み得る。このインタフェースは、複数の承認済みのソース(例えば、ソースリスト3506)と、複数の承認済みのデスティネーション(例えば、リスト3504)と、を含み得る。いくつかの例においては、表示された複数の承認済みのソースを順序換えする要求が、電子デバイスによって検出され得る。例えば、編集ボタン3508の選択を受け取ることができ、ソースリスト3506内のソースのうちの1つ以上の移動を検出することができる。表示された複数の承認済みのソースを順序換えする要求を検出したことに応じて、検出された、表示された複数の承認済みのソースを順序換えする要求に従い、表示された複数の承認済みのソースを順序換えすることができる。
いくつかの例においては、データ共有インタフェース(例えば、インタフェース3500)は、承認済みのデスティネーションを複数の承認済みのデスティネーションに追加するオプション、及び承認済みのデスティネーションを複数の承認済みのデスティネーションから除去するオプション(例えば、オプション3512、3514、3516及び3518)を更に含み得る。
いくつかの例においては、プロセス3800は、電子デバイスにおいて、検索クエリを受け取ることを更に含み得る。これに応じて、検索クエリに合致する複数のカテゴリの1つ以上のサブカテゴリが表示され得る。検索クエリに合致する、表示された1つ以上のサブカテゴリは、それらの各カテゴリに基づき色分けされ得る。例えば、検索クエリが、インタフェース2800又は2900に類似する又は同一のインタフェース内に表示された検索ボックス(例えば、検索ボックス2808)から受け取られ得る。インタフェース3000に類似する又は同一の検索結果インタフェースが、検索クエリに応じて表示され得る。検索結果インタフェースは、検索クエリに合致する1つ以上のサブカテゴリを含み得る。
いくつかの例においては、プロセス3800は、ディスプレイ上に、既知のソースのリストを含むソースインタフェースを表示することを更に含み得る。例えば、既知のソースのリスト(例えば、リスト3606)を有する、インタフェース3600に類似する又は同一のインタフェースが表示され得る。ソースインタフェースは、既知のソースのうちの1つの既知のソースに関連付けられた、既知のソースによって提供され得る新たな種類の健康データの数を示す数字インジケータを更に含み得る。例えば、デバイス1に対して、数「2」が示され、2つの新たな種類のデータ(例えば、燃焼カロリー及び上った階数)が利用できることを示す。
いくつかの例においては、プロセス3800は、表示されたソースのリストからの、既知のソースの選択を検出することを更に含み得る。既知のソースの選択を検出したことに応じて、既知のソースが提供することができる健康データの種類のリストが表示され得る。例えば、インタフェース3600のソースリスト3606からのソースが、ユーザがソースに関連付けられたオプション3610を選択したことによって受け取られ得る。これに応じて、インタフェース3700に類似する又は同一のインタフェースが表示され得る。表示されたインタフェースは、ソースが提供することができる既知の種類のデータのリスト(例えば、リスト3706)を含み得る。いくつかの例においては、既知のソースが提供することができる健康データの種類のリストは、関連付けられた種類の健康データを承認する又は拒否するための、既知のソースが提供することができる健康データの種類のそれぞれに対する、選択可能なオプション(例えば、オプション3704、3708、3710、3712及び3714)を含み得る。
いくつかの例においては、プロセス3800は、電子デバイスにおいて、既知のソースが提供することができる健康データの種類の選択可能なオプションの選択を検出することを更に含み得る。選択可能なオプションの選択を検出したことに応じて、プロセス3800は、既知のソースが提供することができる健康データの種類を、選択可能なオプションの検出された選択に従い承認すること又は拒否することを更に含み得る。例えば、ユーザデバイス610は、インタフェース3700に示される健康データの種類を、オプション3704、3708、3710、3712及び3714のスイッチの位置に基づき承認する又は拒否することができる。
図38A及び図38Bにおける動作について説明された特定の順序は単なる例示であり、説明された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作の順序換えをする様々な方法を認識するであろう。加えて、本明細書に記載の他のプロセスに関して本明細書で記載されている他のプロセスの詳細(例えば、プロセス800、1500、1700、2000、2700又は4400)は、また、図38A及び図38Bに関連して上述されているプロセス3800に類似の手法で適用可能であることに留意されたい。簡潔性のために、これらの詳細は、ここでは繰り返さない。
メディカルID情報
図39は、ユーザデバイスがロックされた状態にある間、ユーザデバイス610によって表示され得る1つの例示的なロック画面インタフェース3900を示す。いくつかの例においては、ロックされた状態は、ユーザデバイス610が、1つ以上の機能が実行されることを制限する状態を表し得る。例えば、ロックされた状態にある間、ユーザデバイス610は、ユーザが、アプリケーションを実行すること、設定を変更すること等を阻止することができる。他の例においては、ロックされた状態は、ユーザデバイス610が、加えて又は代わりに、デバイス上に保存された、少なくとも、データのサブセットへのアクセスを阻止する状態を示し得る。例えば、ロックされた状態にある間、ユーザデバイス610は、ユーザが、写真又はビデオを見ること、文書にアクセスすること等を阻止することができる。他の例においては、ロックされた状態は、ユーザデバイス610が、加えて又は代わりに、電子デバイスからの通信を制限する状態を示し得る。例えば、ユーザデバイス610は、ユーザが、SMSメッセージ又は電子メールを送信すること、又は非緊急時電話番号を呼び出すことを阻止することができる。
図39に示すように、ロック画面インタフェース3900は、現在の日付及び時間を含み得る。ロック画面インタフェース3900は、更に、ユーザ入力に応じて、ユーザがデバイスをロック解除することを可能にすることができる。例えば、スワイプジェスチャにより、ユーザデバイス610に数字入力パッドを表示させ、ユーザがパスコードを入力してデバイスをロック解除することを可能にすることができる。ロック画面インタフェース3900は、ユーザデバイス610の緊急時機能にアクセスするための緊急時オプション3902を更に含み得る。例えば、図40は、緊急時オプション3902の選択に応じて表示され得る例示的な緊急ダイヤルインタフェース4000を示す。示されるように、緊急ダイヤルインタフェース4000は、デバイスがロックされた状態にある間、一時ユーザが緊急電話番号を入力してダイヤルすることを可能にするための数字入力パッド4004を含み得る。いくつかの例においては、入力された番号が既定の電話番号(例えば、9-1-1)である場合には、ユーザデバイス610は、入力パッド4004を用いて入力された番号を呼び出すことができる。いくつかの例においては、一時ユーザは、デバイスのプライマリユーザが(例えば、プライマリユーザが意識不明であるか負傷していることが理由で)ユーザデバイス610を操作できないときにデバイスのプライマリユーザに遭遇する最初の対応者又は他の人物とされ得る。したがって、緊急ダイヤルインタフェース4000は、一時ユーザがユーザデバイス610をロック解除する必要なしに、一時ユーザが既定の緊急電話番号を呼び出すことを可能にする。
インタフェース4000は、ユーザに関連付けられた医療情報を一時ユーザが見るためのメディカルID又は緊急情報オプション4002を更に含み得る。この例では、ユーザは、ユーザデバイス610にアプリケーションをインストールする及び/又は個人情報を入力することによってデバイスをカスタマイズした、ユーザデバイス610のプライマリユーザ又は所有者とされ得る。したがって、一時ユーザがユーザデバイス610をロック解除する必要なしに、一時ユーザがメディカルID又は緊急情報オプション4002を選択し、プライマリユーザに関連付けられた緊急情報を見ることができる。
例えば、図41は、インタフェース4000内のメディカルID又は緊急情報オプション4002の選択に応じて表示され得る例示的な緊急情報インタフェース4100を示す。示されるように、インタフェース4100は、ユーザの名前及び誕生日を含むユーザ情報4102を含み得る。インタフェース4100は、ユーザが有し得る任意の医学的状態の記載を保存及び表示するために使用され得る自由形式フィールド4104を更に含み得る。インタフェース4100は、ユーザに関する任意の他の関連付けられた医療メモを保存及び表示するために使用され得る自由形式フィールド4106を更に含み得る。インタフェース4100は、薬物又は任意の他の物質に対してユーザが有し得る任意のアレルギ又は反応の記載を保存及び表示するために使用され得る自由形式フィールド4108を更に含み得る。インタフェース4100は、ユーザが行っている可能性のある、又はユーザが必要とする可能性のある任意の投薬の記載を保存及び表示するために使用され得る自由形式フィールド4110を更に含み得る。
インタフェース4100は、緊急連絡先4112を更に含み得る。緊急連絡先4112は、ユーザが自身の緊急連絡先であると指定した1人以上の人のリストを含み得る。緊急連絡先4112は、それぞれの緊急連絡先の名前、及びユーザと緊急連絡先との間の関係を含み得る。例えば、緊急連絡先の1つのエントリは、「母親」というユーザとの関係を有する、名前「Jane Smith」を含み得る。いくつかの例においては、緊急連絡先4112は、電話番号、電子メールアドレス等などの、緊急連絡先の連絡先情報を更に含み得る。他の例においては、緊急連絡先4112は、電話番号、電子メールアドレス等などの緊急連絡先の連絡先情報を除外することができる。これは、緊急連絡先のプライバシーを保護するために行われ得る。いずれの例においても、ユーザデバイス610がロックされた状態のままである間、ユーザデバイス610は、一時ユーザが、(緊急連絡先の電話番号が表示されない場合であっても)表示された緊急連絡先の1つを選択し、その連絡先との通信を開始することを可能にすることができる。例えば、緊急連絡先の1つの選択に応じて、ユーザデバイス610は、デバイスがロックされた状態のままである間、連絡先への電話を開始することができ、連絡先にSMSメッセージを送信することができ、緊急連絡先に電子メールを送信すること等ができる。いくつかの例においては、ユーザデバイス610が緊急連絡先の呼び出しを、その緊急連絡先の選択に応じて開始すると、ユーザデバイス610は、その呼び出しに、緊急電話であるとフラグを付けることができる。いくつかの例においては、緊急電話は、あらゆる動作状態の受信側デバイスによって受け付けられ得る。例えば、緊急電話であるとフラグが付けられた呼び出しは、おやすみ(do-not-disturb)モード、サイレントモード等にある間の受信側デバイスを鳴らすことができる。加えて、この電話が緊急電話であることを受取側に通知するインジケータが受信側デバイス上に表示され得る。
いくつかの例においては、プライマリユーザは、自身のメディカルIDをユーザデバイス610の連絡先リストから作成することができる。例えば、図42は、ユーザの連絡先リストを表示するために表示され得る例示的なインタフェース4200を示す。示されるように、インタフェース4200は、メディカルIDを作成するための「メディカルIDの作成」ボタン4202を含み得る。図43は、ボタン4202の選択に応じて表示され得る例示的なインタフェース4300を示す。示されるように、インタフェース4300は、メディカルIDの目的、メディカルIDに含まれる情報のプライバシー設定等などの、メディカルIDに関する情報を提供することができる、テキストによる説明4302を含む。
図44は、ユーザがインタフェース4300内の説明4302の内容を受諾又は承諾したことに応じて表示され得る例示的なインタフェース4400を示す。示されるように、インタフェース4400は、インタフェース4100内のユーザ情報4102に相当し得るユーザ情報4402を含み得る。いくつかの例においては、この情報は、ユーザに関して以前から知られている情報を基に、ユーザデバイス610によって自動的に入力され得る。他の例においては、ユーザはこの情報を手で入力することができる。インタフェース4400は、インタフェース4100のフィールド4104、4106、4108及び4110に相当し得る自由形式テキストフィールド4404、4406、4408及び4410を更に含み得る。このため、フィールド4404、4406、4408及び4410内に入力された情報は、インタフェース4100のフィールド4104、4106、4108及び4110内に表示され得る。インタフェース4400は連絡先4412を更に含み、ユーザが1つ以上の緊急連絡先を入力することを可能にすることができる。いくつかの例においては、1つ以上の緊急連絡先は、ユーザデバイス610上のユーザの連絡先リストから選択され得る。他の例においては、1つ以上の緊急連絡先は、ユーザによって手で入力され得る。更に他の例においては、緊急連絡先は、ユーザデバイス610上のユーザの連絡先リストから選択することができ、追加の情報(例えば、関係情報)はユーザによって手で追加され得る。インタフェース4400は、選択可能なオプション4416を有する「メディカルIDを表示」オプション4414を更に含み得る。オプション4416のスイッチの位置を用いて、デバイスがロックされた状態にある間の、ユーザの医療情報の表示をオン又はオフにすることができる。例えば、図44に示すように、右に移動させると、オプション4416のスイッチは、ユーザデバイス610に、緊急ダイヤルインタフェース4000内のオプション4002を表示させることができるとともに、オプション4002の選択に応じて、インタフェース4100を表示させることができる。しかしながら、左に移動させると、オプション4416のスイッチは、ユーザデバイス610が緊急ダイヤルインタフェース4000内のオプション4002を表示するのを阻止することができるとともに、オプション4002の選択に応じて、ユーザデバイス610がインタフェース4100を表示するのを阻止することができる。
図45は、ロックされたデバイス上で医療情報を表示するための例示的なプロセス4500を示す。プロセス4500は、ディスプレイを備える電子デバイス(例えば、デバイス610)において実施され得る。いくつかの実施例では、ディスプレイは、タッチ感知ディスプレイを含み得る。いくつかの実施例では、ディスプレイは、タッチ感知面とは別個とされ得る。プロセス4500のいくつかのブロックは組み合わせることができ、並びに/又はいくつかのブロックの順序は変更することができる。
以下に記載されるように、プロセス4500は、デバイスがロックされた状態のままである間、電子デバイスのプライマリユーザ又は所有者に関連付けられた医療情報を一時ユーザが見るための手法を提供する。プロセス4500は、また、デバイスがロックされた状態のままである間に、一時ユーザがプライマリユーザの緊急連絡先との通信を開始することを可能にする。これにより、(例えば、プライマリユーザが電子デバイスを操作できない又は通信できない状態にある)プライマリユーザを発見した一時ユーザが、プライマリユーザが適切な医療を受けるのを補助することを有利に可能にする。
ブロック4502では、電子デバイスがロックされた状態にある間の電子デバイス(例えば、ユーザデバイス610)において、デバイスのユーザに関する緊急情報を表示する要求が検出され得る。例えば、インタフェース4000に類似する又は同一の緊急ダイヤルインタフェースが表示されている間に、緊急情報を表示する要求を受け取ることができ、この要求には、オプション4002に類似する又は同一の緊急情報オプションの選択を含み得る。デバイスのユーザに関する緊急情報は、ユーザの名前、誕生日、医学的状態、アレルギ及び反応、投薬、並びにユーザの1つ以上の緊急連絡先を含み得る。上述したように、ユーザは、ユーザデバイス610にアプリケーションをインストールする及び/又は個人情報を入力することによってデバイスをカスタマイズした、ユーザデバイス610のプライマリユーザ又は所有者とされ得る。医療情報を表示する要求は、デバイスのプライマリユーザが(例えば、プライマリユーザが意識不明であるか負傷していることが理由で)ユーザデバイス610を操作できないときにデバイスのプライマリユーザに遭遇する最初の対応者又は他の人物などの一時ユーザによって行われ得る。
ブロック4504において、要求を検出したことに応じて、デバイスのユーザに関する緊急情報を含む緊急情報インタフェースが、デバイスをロック解除することなしに表示され得る。例えば、インタフェース4100に類似する又は同一のインタフェースが表示され得る。
いくつかの例においては、ユーザに関する緊急情報は、緊急連絡先に関連する情報を含み得る。緊急連絡先に関連する情報は、緊急連絡先の名前、及びユーザと緊急連絡先との間の関係を含み得る。例えば、緊急連絡先に関する情報は、インタフェース4100内の緊急連絡先4112に類似する又は同一の手法で表示され得る。1つの例示的な緊急連絡先は、連絡先の名前「Jane Smith」、及びユーザとこの連絡先との関係「母親」を含み得る。
ブロック4506において、ユーザデバイス610は、電子デバイスがロックされた状態にある間に、緊急連絡先と通信する要求を検出することができる。例えば、インタフェース4100から連絡先4112の選択が検出され得る。
ブロック4508において、ユーザデバイス610は、通信の要求を検出したことに応じて、緊急連絡先との通信を開始することができる。いくつかの例においては、緊急連絡先との通信を開始することは、緊急連絡先にSMSメッセージ又は電子メールを送信することを含む。他の例においては、緊急連絡先との通信を開始することは、緊急連絡先に関連付けられた電話番号を呼び出すことを含み得る。いくつかの例においては、緊急連絡先に関連付けられた電話番号を呼び出すことは、電話番号の呼び出しに緊急電話であるとフラグを付けることを含み得る。いくつかの例においては、緊急連絡先に関連付けられた電話番号は、緊急情報インタフェース(例えば、インタフェース4100)内に表示された緊急連絡先に関連する情報に含まれ得る。他の例においては、緊急連絡先に関連付けられた電話番号は、緊急情報インタフェース(例えば、インタフェース4100)内に表示された緊急連絡先に関連する情報に含まれなくてもよい。しかしながら、依然として、この緊急連絡先の呼び出し又は他の通信は行うことができる。これは、緊急連絡先のプライバシーを保護するために行われ得る。
いくつかの例においては、プロセス4500は、緊急情報インタフェースを表示する前に、緊急ダイヤルインタフェースを表示することを含み得る。緊急ダイヤルインタフェースは、数字入力パッドと、緊急情報オプションと、を含み得る。例えば、緊急情報インタフェース4100を表示する前に、インタフェース4000に類似する又は同一の緊急ダイヤルインタフェースが表示され得る。緊急ダイヤルインタフェース4000は、入力パッド4004に類似する又は同一の数字入力パッドと、オプション4002に類似する又は同一の緊急情報オプションと、を含み得る。いくつかの例においては、緊急情報インタフェース(例えば、インタフェース4100)は、緊急情報オプションの選択(例えば、オプション4002)に応じて表示され得る。
いくつかの例においては、プロセス4500は、電子デバイスがロックされた状態にある間に、数字入力パッドを用いて入力された既定の電話番号を検出することを更に含み得る。既定の電話番号を検出したことに応じて、プロセス4500は、既定の電話番号を呼び出すことを更に含み得る。例えば、ユーザデバイス610は、数字入力パッド(例えば、入力パッド4004)に入力された既定の番号(例えば、9-1-1)を検出することができる。既定の電話番号を検出したことに応じて、ユーザデバイス610は、まだなおロックされた状態にある間に、既定の番号を呼び出すことができる。いくつかの例においては、既定の電話番号を呼び出すことは、既定の電話番号の呼び出しに緊急電話であるとフラグを付けることを含み得る。
いくつかの例においては、緊急電話であるとフラグが付けられた電話は、あらゆる動作状態における受信側電子デバイスによって受け付けられ得る。例えば、緊急電話であるとフラグが付けられた呼び出しは、おやすみモード、サイレントモード等にある間の受信側デバイスを鳴らすことができる。加えて、この電話が緊急電話であることを受取側に通知するインジケータが受信側デバイス上に表示され得る。
いくつかの例においては、プロセス4500は、緊急ダイヤルインタフェースを表示する前に、緊急時オプションを含むロック画面インタフェースを表示することを更に含み得る。例えば、オプション3902と類似する又は同一の緊急時オプションを有する、インタフェース3900に類似する又は同一のインタフェースが表示され得る。ロック画面インタフェースは、デバイスをロック解除するための1つ以上の制御を更に含み得る。例えば、数字入力パッドを表示し、ユーザがパスコードを入力することを可能にすることができる、又はユーザデバイス610は、既定のジェスチャを検出し、デバイスをロック解除するように構成され得る。これら例では、プロセス4500は、緊急時オプションの選択を検出することと、緊急時オプションの選択を検出したことに応じて、緊急ダイヤルインタフェースを表示することと、を更に含み得る。例えば、ユーザデバイス610は、オプション3902の選択を検出し、オプション3902の選択を検出したことに応じて、インタフェース4000を表示することができる。
図45における動作について説明された特定の順序は単なる例示であり、説明された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作の順序換えをする様々な方法を認識するであろう。加えて、本明細書に記載の他のプロセスに関して本明細書で記載されている他のプロセスの詳細(例えば、プロセス900、1600、1800、2100、2700又は3800)は、また、図45に関連して上述されているプロセス4500に類似の手法で適用可能であることに留意されたい。簡潔性のために、これらの詳細は、ここでは繰り返さない。
いくつかの例においては、図22~図23、図28~図36、及び図41~図43に示されるインタフェースは、種々のインタフェース間を移動するためのメニューバー2150を含み得る。例えば、メニュー2150内の「ダッシュボード」の選択に応じて、インタフェース2100又は2200が表示され得る。メニュー2150内の「私の健康」の選択に応じて、インタフェース2700が表示され得る。メニュー2150内の「メディカルID」の選択に応じて、インタフェース4400が表示され得る。メニュー2150内の「設定」の選択に応じて、インタフェース3600が表示され得る。
健康データの集約及び共有に関する機能のうちの1つ以上は、図46に示すシステム4600と類似するか又は同一のシステムによって実行され得る。システム4600は、メモリ4604又は記憶デバイス4602などの非一時的コンピュータ可読記憶媒体内に記憶され、プロセッサ4606によって実行される命令を含み得る。これらの命令はまた、コンピュータベースのシステム、プロセッサを含むシステム、又は、命令実行システム、装置、若しくはデバイスから命令をフェッチし、それらの命令を実行することが可能な他のシステムなどの、命令実行システム、装置、若しくはデバイスによって、又はそれらに関連して使用するための、任意の非一時的コンピュータ可読記憶媒体内に、記憶及び/又は伝送することもできる。本文書のコンテキストでは、「非一時的コンピュータ可読記憶媒体」は、命令実行システム、装置、若しくはデバイスによって、又はそれらに関連して使用するためのプログラムを、含むか又は記憶することが可能な、任意の媒体とすることができる。非一時的コンピュータ可読記憶媒体は、以下に限定されないが、電子、磁気、光、電磁気、赤外線、若しくは半導体システム、装置、又はデバイス、ポータブルコンピュータディスケット(磁気)、ランダムアクセスメモリ(random access memory、RAM)、リードオンリメモリ(read-only memory、ROM)、電気的に消去可能なプログラマブルリードオンリメモリ(erasable programmable read-only memory、EPROM)(磁気)、CD、CD-R、CD-RW、DVD、DVD-R、若しくはDVD-RWなどのポータブル光ディスク、又は、コンパクトフラッシュカード、セキュリティで保護されたデジタルカード、USBメモリデバイス、メモリスティックなどのフラッシュメモリを含んでもよい。
命令はまた、コンピュータベースのシステム、プロセッサを含むシステム、又は、命令実行システム、装置、若しくはデバイスから命令をフェッチし、それらの命令を実行し得る他のシステムなどの、命令実行システム、装置、又はデバイスによって、又はそれらと共に使用するために、任意の伝送媒体内で伝搬されてもよい。本明細書の文脈においては、「伝送媒体」は、命令実行システム、装置、若しくはデバイスによって、又はこれらと共に使用するためのプログラムを伝達、伝搬、又は伝送し得る、任意の媒体であってもよい。伝送媒体は、以下に限定されないが、電子、磁気、光、電磁気、若しくは赤外線有線又は無線伝搬媒体を含んでもよい。
いくつかの実施例では、システム4600はユーザデバイス610又はユーザサーバ614内に含まれ得る。プロセッサ4606は、プロセス800、900、1500、1800、2100、2700、3800又は4500を実行するように構成され得る。このシステムは、図46の構成要素及び構成に限定されるものではなく、様々な実施例に従って、他の構成要素又は追加的構成要素を、複数の構成で含み得ることを理解されたい。
いくつかの例によれば、図47は、説明される様々な例の原理に従って構成された電子デバイス4700の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図47で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図47に示されるように、電子デバイス4700は、ユーザインタフェースを表示するためのディスプレイユニット4704と、任意選択的に、タッチ入力を受け取るように構成されたセンサユニット4702と、を含み得る。電子デバイス4700は、任意のセンサユニット4702及びディスプレイユニット4704に接続された処理ユニット4708を更に含み得る。いくつかの例では、処理ユニット4708は、表示有効化ユニット4710、受信ユニット4712及び生成ユニット4714を含む。
処理ユニット4708は、(例えば、表示有効化ユニット4710によって)複数の種類の健康データの集約ビューの表示を有効にし、集約ビューは複数のパーティションを含み、複数のパーティションの各パーティションは、健康データの複数の種類のうちの1種類に関連付けられており、(例えば、受信ユニット4712によって)複数のパーティションのうちの1つのパーティションの選択を受け取り、(例えば、表示有効化ユニット4710によって)複数のパーティションのうちの選択されたパーティションの拡張ビューの表示を有効にする、ように構成されてもよい。
いくつかの実施形態では、集約ビューにおいて、複数のパーティションの各パーティションは、関連付けられた種類の健康データの識別子と、それと共に表示される、関連付けられた種類の健康データの第1部分と、を含み、拡張ビューは、複数のパーティションのうちの選択されたパーティションのより大きなビューと、それと共に表示される、関連付けられた種類の健康データの第2部分と、を含む。
いくつかの実施形態では、健康データの第1部分は関連付けられた種類の健康データの直近の値を含み、関連付けられた種類の健康データの第2部分は、関連付けられた種類の健康データの経時的な表示を含む。
いくつかの実施形態では、処理ユニットは、選択されなかった複数のパーティションのうちのパーティションを表す、パーティションの折りたたまれたセットの表示を少なくとも有効にすることによって、選択されたパーティションの拡張ビューの表示を(例えば、表示有効化ユニット4710によって)有効にするように構成されている。
いくつかの実施形態では、複数のパーティションは、ディスプレイ内において、関連付けられた種類の健康データの使用頻度、関連付けられた種類の健康データの、直近に追加された値の時間、又は時刻に基づき順序付けされる。
いくつかの実施形態では、選択されたパーティションの拡張ビューは、パーティションに関連付けられた健康データを、電子メール又はテキストメッセージを通じて共有するための選択可能な要素を含む。
いくつかの実施形態では、複数の種類の健康データは、体重データ、血糖データ、血圧データ、活動データ、又は心拍数データを含む。
いくつかの実施形態では、電子デバイスは、処理ユニット4708及びディスプレイユニット4704に接続された複数のセンサユニットを更に含む。処理ユニット4708は、複数のセンサから得られたセンサデータから、(例えば、生成ユニット4714によって)複数の種類の健康データの少なくとも1つを生成するように更に構成されている。
いくつかの実施形態では、拡張ビューは、関連付けられた種類の健康データのグラフを含み、グラフは、異なるセンサから得られた健康データから生成したセグメントを含む。
いくつかの実施形態では、複数のパーティションのうちの1つのパーティションは、ユーザが生成したパーティションである。
いくつかの実施形態では、複数のパーティションは、スタックで表示される複数のカードの外観を有する。
図16を参照して上述された動作は、図1A~図1B又は図47に示される構成要素によって、任意選択的に実施される。例えば、表示する動作1602及び1606、並びに受信する動作1604は、イベントソータ170、イベント認識部180、及びイベントハンドラ190によって実行され得る。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図48は、説明される様々な例の原理に従って構成された電子デバイス4800の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図48で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図48に示されるように、電子デバイス4800は、ユーザインタフェースを表示するためのディスプレイユニット4802と、任意選択的に、ジャイロスコープ及び/又は加速度計ユニット4810と、を含み得る。電子デバイス4800は、ディスプレイユニット4802と、任意選択的に、ジャイロスコープ及び/又は加速度計ユニット4810と、に接続された処理ユニット4804を更に含み得る。いくつかの例では、処理ユニット4804は、表示有効化ユニット4806、選択ユニット4808、検出ユニット4812及び識別ユニット4814を含む。
処理ユニット4804は、(例えば、表示有効化ユニット4806によって)複数のパーティションの表示を有効にし、複数のパーティションの各パーティションは、健康データの複数の種類のうちの1種類の健康データに関連付けられており、デバイスの向きの変化を検出したことに応じて、(例えば、選択ユニット4808によって)複数のパーティションのサブセットを選択し、(例えば、表示有効化ユニット4806によって)複数のパーティションのうちの選択されたサブセットの表示を有効にする、ように構成されてもよい。
いくつかの実施形態では、電子デバイスは、処理ユニット4804に接続されたジャイロスコープ及び/又は加速度計ユニット4810を更に含み、処理ユニット4804は、ジャイロスコープ及び/又は加速度計ユニットからのデータに基づき、(例えば、検出ユニット4812によって)デバイスの向きの変化を検出するように更に構成されている。
いくつかの実施形態では、処理ユニットは、(例えば、検出ユニット4812によって)電子デバイスの向きの閾値量に及ぶ変化を少なくとも検出することによって、デバイスの向きの変化を検出するように更に構成されている。
いくつかの実施形態では、複数のパーティションの表示されたサブセットのそれぞれは、それと共に表示される、関連付けられた種類の健康データの少なくとも一部のグラフ表示を含む。
いくつかの実施形態では、処理ユニットは、少なくとも、(例えば、識別ユニット4814によって)複数の種類の健康データ間の相関関係を識別することと、(例えば、選択ユニット4808によって)相関する種類の健康データに関連付けられたパーティションを、複数のパーティションのサブセットとして選択することと、によって、(例えば、選択ユニット4808によって)複数のパーティションのサブセットを選択するように更に構成されている。
図18を参照して上述された動作は、図1A~図1B又は図48に示される構成要素によって、任意選択的に実施される。例えば、表示する動作1802及び1808、並びに検出動作1804は、イベントソータ170、イベント認識部180及びイベントハンドラ190によって実行されてもよい。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図49は、説明される様々な例の原理に従って構成された電子デバイス4900の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図49で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図49に示されるように、電子デバイス4900は、ユーザインタフェースを表示するためのディスプレイユニット4902を含み得る。電子デバイス4900は、ディスプレイユニット4902に結合された、処理ユニット4904を更に含み得る。いくつかの例では、処理ユニット4904は、表示発生ユニット4906及び受信ユニット4908を含み得る。
処理ユニット4904は、(例えば、表示発生ユニット4806によって)第1のユーザに関連付けられた第1の複数のパーティションの表示を発生させ、第1の複数のパーティションの各パーティションが第1のユーザの健康データの1種類に関連付けられ、第2のユーザに関連付けられた第2の複数のパーティションを見る要求を(例えば、受信ユニット4908によって)受け取ったことに応じて、(例えば、表示発生ユニット4906によって)第2のユーザに関連付けられた第2の複数のパーティションの表示を発生させ、第2の複数のパーティションの各パーティションが第2のユーザの健康データの1種類に関連付けられている、ように構成されてもよい。
いくつかの実施形態では、第2の複数のパーティションを見る要求は、表示された第1の複数のパーティションを横方向にスクロールする要求を含む。
いくつかの実施形態では、第2の複数のパーティションを見る要求は、ユーザのリストからの第2のユーザの選択を含む。
いくつかの実施形態では、第1のユーザは、第2の複数のパーティションを見ることを第2のユーザによって許可されている。
図21を参照して上述された動作は、図1A~図1B又は図49に示される構成要素によって、任意選択的に実施される。例えば、表示する動作2102及び2106、並びに受信する動作2104は、イベントソータ170、イベント認識部180、及びイベントハンドラ190によって実行されてもよい。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図50は、説明される様々な例の原理に従って構成された電子デバイス5000の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図50で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図50に示されるように、電子デバイス5000は、ユーザインタフェースを表示するためのディスプレイユニット5002を含み得る。電子デバイス5000は、ディスプレイユニット5002に結合された、処理ユニット5004を更に含み得る。いくつかの例では、処理ユニット5004は、受信ユニット5006及び伝送ユニット5008を含み得る。
処理ユニット5004は、健康データのセットにアクセスすることが許可されたユーザのIDを(例えば、受信ユニット5006によって)受け取り、健康データのセットの更新を検出したことに応じて、健康データのセットにアクセスすることが許可されたユーザに健康データのセットの更新が検出されたことを知らせる通知を、健康データのセットにアクセスすることが許可されたユーザに(例えば、伝送ユニット5008によって)伝送し、健康データのセットの少なくとも一部を、健康データのセットにアクセスすることが許可されたユーザに(例えば、伝送ユニット5108によって)伝送する、ように構成されてもよい。
いくつかの実施形態では、健康データのセットにアクセスすることが許可されたユーザのIDは、名前、ユーザ名又は連絡先情報を含む。
いくつかの実施形態では、健康データのセットの少なくとも一部は、健康データのセットにアクセスすることが許可されたユーザからの要求を受け取ったことに応じて伝送される。
図8を参照して上述された動作は、図1A~図1B又は図50に示される構成要素によって、任意選択的に実施される。例えば、受信する動作802並びに伝送する動作806及び808は、イベントソータ170、イベント認識部180、及びイベントハンドラ190によって実行されてもよい。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図51は、説明される様々な例の原理に従って構成された電子デバイス5100の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図51で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図51に示されるように、電子デバイス5100は、ユーザインタフェースを表示するためのディスプレイユニット5102を含み得る。電子デバイス5100は、ディスプレイユニット5102に結合された、処理ユニット5104を更に含み得る。いくつかの例では、処理ユニット5104は、受信ユニット5106及び伝送ユニット5108の1つ以上を含み得る。
処理ユニット5104は、(例えば、受信ユニット5106によって)第1のユーザから、第2のユーザに関連付けられた健康データにアクセスする要求を受け取り、第2のユーザに、第2のユーザに関連付けられた健康データに第1のユーザがアクセスすることを許可する要求を(例えば、伝送ユニット5108によって)伝送し、第2のユーザから許可を受け取ったことに応じて、第2のユーザに関連付けられた健康データを第1のユーザに(例えば、伝送ユニット5108によって)伝送する、ように構成されてもよい。
いくつかの実施形態では、第1のユーザは医療提供者であり、第2のユーザは患者であり、第2のユーザに関連付けられた健康データにアクセスする要求は、第1のユーザと第2のユーザとの間の面会予約の前に受け取られる。
いくつかの実施形態では、第2のユーザに関連付けられた健康データに第1のユーザがアクセスすることを許可する要求は、第2のユーザのモバイルデバイス上に表示される。
図9を参照して上述された動作は、図1A~図1B又は図51に示される構成要素によって、任意選択的に実施される。例えば、受信する動作902並びに送出する動作904及び908は、イベントソータ170、イベント認識部180、及びイベントハンドラ190によって実行されてもよい。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図52は、説明される様々な例の原理に従って構成された電子デバイス5200の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図52で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図52に示されるように、電子デバイス5200は、ユーザインタフェースを表示するためのディスプレイユニット5202を含み得る。電子デバイス5200は、ディスプレイユニット5202に結合された、処理ユニット5204を更に含み得る。いくつかの例では、処理ユニット5204は、表示有効化ユニット5206、選択ユニット5208、検出ユニット5208、スクロール有効化ユニット5210及び順序換えユニット5212を含む。
処理ユニット5204は、(例えば、表示有効化ユニット5206によって)ディスプレイ上に、独立変数が変化すると第1の従属変数が変わる第1のデータセットの第1のデータセット表示と、独立変数が変化すると第2の従属変数が変わる第2のデータセットの第2のデータセット表示と、を含むグラフの表示を有効にし、第1のデータセット表示がグラフ内の垂直位置の第1の範囲に関連付けられており、第2のデータセット表示がグラフ内の垂直位置の第2の範囲に関連付けられており、ディスプレイ上の各位置において、(例えば、検出ユニット2108によって)ユーザ入力を検出し、ユーザ入力を検出したことに応じて、各位置が、第1のデータセット表示に関連付けられた垂直位置の第1の範囲内であるという判定に従い、(例えば、表示有効化ユニット5206によって)ディスプレイ上に、第1のデータセット表示が選択されたという指示の表示を有効にし、各位置が、第2のデータセット表示に関連付けられた垂直位置の第2の範囲内であるという判定に従い、(例えば、表示有効化ユニット5206によって)ディスプレイ上に、第2のデータセット表示が選択されたという指示の表示を有効にする、ように構成されてもよい。
いくつかの実施形態では、処理ユニット5204は、(例えば、表示有効化ユニット5206によって)グラフ内に、第2のデータセット表示と重なった第1のデータセット表示の表示を有効にするように更に構成されている。
いくつかの実施形態では、第1のデータセットは健康データの第1のセットを含み、第2のデータセットは健康データの第2のセットを含む。
いくつかの実施形態では、垂直位置の第1の範囲は第1のデータセット表示に固有に関連付けられ、垂直位置の第2の範囲は第2のデータセット表示に固有に関連付けられる。
いくつかの実施形態では、第1のデータセット表示及び第2のデータセット表示は、それらが示すデータの種類に基づき色分けされる。
いくつかの実施形態では、(例えば、表示有効化ユニット5206によって)ディスプレイ上の各位置の水平位置に対応する水平位置において、第1のデータセット表示上に重ねられたマーカの表示を、ディスプレイ上で、少なくとも有効にすることによって、第1のデータセット表示が選択されたという指示の表示を有効にするように、処理ユニット5204が、更に構成されている。
いくつかの実施形態では、(例えば、表示有効化ユニット5206によって)ディスプレイ上の各位置の水平位置に対応する水平位置において、第2のデータセット表示上に重ねられたマーカの表示を、ディスプレイ上で、少なくとも有効にすることによって、第2のデータセット表示が選択されたという指示の表示を有効にするように、処理ユニット5204が、更に構成されている。
いくつかの実施形態では、(例えば、表示有効化ユニット5206によって)ディスプレイ上に、ディスプレイ上の各位置の水平位置に対応する独立変数の値に関連付けられた第1のデータセットの第1のデータエントリの数値の表示を少なくとも有効にすることによって、第1のデータセット表示が選択されたという指示の表示を有効にするように、処理ユニット5204が構成されている。
いくつかの実施形態では、(例えば、表示有効化ユニット5206によって)ディスプレイ上に、ディスプレイ上の各位置の水平位置に対応する独立変数の値に関連付けられた第2のデータセットの第2のデータエントリの数値の表示を少なくとも有効にすることによって、第2のデータセット表示が選択されたという指示の表示を有効にするように、処理ユニット5204が、更に構成されている。
いくつかの実施形態では、第1のデータセット又は第2のデータセットが血圧データを含み、第1のデータエントリ又は第2のデータエントリの数値が、拡張期血圧の高値、拡張期血圧の低値、収縮期血圧の高値及び収縮期血圧の低値を含む。
いくつかの実施形態では、第1のデータセット表示又は第2のデータセット表示は、血圧値の平均値に基づき生成される。
いくつかの実施形態では、第1のデータセット又は第2のデータセットは心拍数データを含み、第1のデータエントリ又は第2のデータエントリの数値は心拍数の高値及び心拍数の低値を含む。
いくつかの実施形態では、第1のデータセット表示はグラフ内の第1の線を含み、第1のデータセット表示が選択されたという表示を表示することは、第1の線の下の領域を強調表示することを含む。
いくつかの実施形態では、第2のデータセット表示はグラフ内の第2の線を含み、第2のデータセット表示が選択されたという表示を表示することは、第2の線の下の領域を強調表示することを含む。
いくつかの実施形態では、ディスプレイ上の各位置の垂直位置が垂直位置の第1の範囲内にある間に、ユーザ入力が検出される時間の長さに基づき、グラフ内の垂直位置の第1の範囲が拡張し、ディスプレイ上の各位置の垂直位置が垂直位置の第2の範囲内にある間に、ユーザ入力が検出される時間の長さに基づき、グラフ内の垂直位置の第2の範囲が拡張する。
いくつかの実施形態では、第1のデータセットの従属変数は、第2のデータセットの従属変数とは異なる単位で測定される。
いくつかの実施形態では、第1のデータセット表示を表示するための縦軸のスケールは、第2のデータセット表示を表示するための縦軸のスケールとは異なる。
いくつかの実施形態では、第1のデータセット表示の縦軸のスケールは、グラフに表示されることになる第1のデータセット表示の第1の従属変数の最大値及び最小値に基づき決定され、第2のデータセット表示の縦軸のスケールは、グラフに表示されることになる第2のデータセット表示の第2の従属変数の最大値及び最小値に基づき決定される。
いくつかの実施形態では、健康データの複数のセットの第1のデータセット表示の縦軸のスケールは、第1の乗率に、グラフに表示されることになる第1のデータセット表示の第1の従属変数の最大値を乗じたものに対応する、グラフ内の最大垂直位置と、第2の乗率に、グラフに表示されることになる第1のデータセット表示の第1の従属変数の最小値を乗じたものに対応する、グラフ内の最小垂直位置と、によって画定される。
いくつかの実施形態では、健康データの複数のセットの第2のデータセット表示の縦軸のスケールは、第3の乗率に、グラフに表示されることになる第2のデータセット表示の第2の従属変数の最大値を乗じたものに対応する、グラフ内の最大垂直位置と、第4の乗率に、グラフに表示されることになる第2のデータセット表示の第2の従属変数の最小値を乗じたものに対応する、グラフ内の最小垂直位置と、によって画定される。
いくつかの実施形態では、処理ユニット5204は、(例えば、検出ユニット5208によって)詳細ビュー入力を検出し、詳細ビュー入力を検出したことに応じて、第1のデータセット及び第2のデータセットの詳細ビューの表示を有効にし、詳細ビューが、第1のデータセットに関連付けられた第1のパーティション及び第2のデータセットに関連付けられた第2のパーティションを含む、ように更に構成されている。
いくつかの実施形態では、処理ユニット5204は、グラフを表示している間の電子デバイスの向きの変化を少なくとも検出することによって、詳細ビュー入力を(例えば、検出ユニット5208によって)検出するように構成されている。
いくつかの実施形態では、処理ユニット5204は、(例えば、検出ユニット5208によって)詳細ビューをスクロールする要求を検出し、詳細ビューをスクロールする要求を検出したことに応じて、(例えば、スクロール有効化ユニット5210によって)詳細ビューのスクロールを有効にする、ように更に構成されている。
いくつかの実施形態では、第1のパーティションは第1のデータセットの第1のグラフ表示を含み、第2のパーティションは第2のデータセットの第2のグラフ表示を含む。
いくつかの実施形態では、第1のグラフ表示が第2のグラフ表示と重なっていない。
いくつかの実施形態では、処理ユニット5204は、(例えば、表示有効化ユニット5206によって)第1のパーティションを、第1のデータセット表示の色に一致する色で表示することを有効にし、第2のパーティションは、第2のデータセット表示の色に一致する色で表示される、ように更に構成されている。
いくつかの実施形態では、処理ユニット5204は、(例えば、表示有効化ユニット5206によって)第1のパーティションを、第1のデータセット表示の色に一致する色で表示することを有効にし、第2のパーティションを、第2のデータセット表示の色に一致する色で表示することを有効にする、ように構成されている。
いくつかの実施形態では、処理ユニット5204は、(例えば、検出ユニット5208によって)第1のパーティションと第2のパーティションを順序換えする要求を検出し、第1のパーティションと第2のパーティションを順序換えする要求を検出したことに応じて、(例えば、順序換えユニット5212によって)詳細ビュー内の第1のパーティション及び第2のパーティションを順序換えする、ように更に構成されている。
いくつかの実施形態では、処理ユニット5204は、グラフビュー入力を検出し、グラフビュー入力を検出したことに応じて、第1のデータセットの第1のデータセット表示と、第2のデータセットの第2のデータセット表示と、を含むグラフを表示する、ように更に構成されている。
図27を参照して上述された動作は、図1A~図1B又は図52に示される構成要素によって、任意選択的に実施される。例えば、表示動作2702、検出動作2704、表示動作2706、及び表示動作2710は、イベントソータ170、イベント認識部180、及びイベントハンドラ190によって、実施され得る。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図53は、説明される様々な例の原理に従って構成された電子デバイス5300の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図53で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図53に示されるように、電子デバイス5300は、ユーザインタフェースを表示するためのディスプレイユニット5302を含み得る。電子デバイス5300は、ディスプレイユニット5302に結合された、処理ユニット5304を更に含み得る。いくつかの例では、処理ユニット5304は、検出ユニット5306、表示有効化ユニット5308、制限ユニット5310、開始ユニット5312、送信ユニット5314、呼び出しユニット5316及びフラッギングユニット5318を含む。
処理ユニット5304は、電子デバイスがロックされた状態にある間に、(例えば、検出ユニット5306によって)デバイスのユーザに関する緊急情報を表示する要求を検出し、要求を検出したことに応じて、デバイスをロック解除することなく、(例えば、表示有効化ユニット5308によって)、ディスプレイ上に、デバイスのユーザに関する緊急情報を含む緊急情報インタフェースの表示を有効にする、ように構成されてもよい。
いくつかの実施形態では、処理ユニット5304は、電子デバイスがロックされた状態にある間、(例えば、制限ユニット5310によって)電子デバイスの1つ以上の機能の使用を制限するように更に構成されている。
いくつかの実施形態では、電子デバイスがロックされた状態にある間、デバイス上に保存された、少なくとも、データのサブセットはアクセス不可である。
いくつかの実施形態では、電子デバイスがロックされた状態にある間、電子デバイスからの通信が制限される。
いくつかの実施形態では、ユーザに関する緊急情報は緊急連絡先に関連する情報を含み、緊急連絡先に関連する情報は、緊急連絡先の名前と、ユーザと緊急連絡先との間の関係と、を含む。
いくつかの実施形態では、処理ユニット5304は、電子デバイスがロックされた状態にある間に、(例えば、検出ユニット5306によって)通信する要求を検出し、通信する要求を検出したことに応じて、(例えば、開始ユニット5312によって)緊急連絡先との通信を開始する、ように更に構成されている。
いくつかの実施形態では、処理ユニット5304は、緊急連絡先にSMSメッセージ又は電子メールを(例えば、送信ユニット5314によって)少なくとも送信することによって、緊急連絡先との通信を開始するように構成されている。
いくつかの実施形態では、処理ユニット5304は、緊急連絡先に関連付けられた電話番号を(例えば、呼び出しユニット5316によって)少なくとも呼び出すことによって、緊急連絡先との通信を開始するように構成されている。
いくつかの実施形態では、処理ユニット5304は、緊急連絡先に関連付けられた電話番号を、この電話番号の呼び出しに緊急電話であると(例えば、フラッギングユニット5318によって)少なくともフラグを付けることによって、呼び出すように構成されている。
いくつかの実施形態では、緊急連絡先に関連する情報が、緊急連絡先に関連付けられた電話番号を更に含む。
いくつかの実施形態では、緊急連絡先に関連する情報は、緊急連絡先に関連付けられた電話番号を除外する。
いくつかの実施形態では、処理ユニット5304は、緊急情報インタフェースを表示する前に、(例えば、表示有効化ユニット5308によって)数字入力パッド及び緊急情報オプションを含む緊急ダイヤルインタフェースの表示を有効にし、緊急ダイヤルインタフェースを表示している間に、(例えば、検出ユニット5306によって)緊急情報オプションの選択を検出し、緊急情報オプションの選択を検出したことに応じて、緊急情報インタフェースの表示を有効にする(例えば、表示有効化ユニット5308によって)ように更に構成されている。
いくつかの実施形態では、処理ユニット5304は、電子デバイスがロックされた状態にある間に、(例えば、検出ユニット5306によって)数字入力パッドを用いて入力された既定の電話番号を検出し、既定の電話番号を検出したことに応じて、既定の電話番号を呼び出すように更に構成されている。
いくつかの実施形態では、処理ユニット5304は、既定の電話番号の呼び出しに緊急電話であると(例えば、フラッギングユニット5318によって)少なくともフラグを付けることによって、既定の電話番号を(例えば、呼び出しユニット5316によって)呼び出すように構成されている。
いくつかの実施形態では、緊急電話であるとフラグが付けられた電話は、あらゆる動作状態における受信側電子デバイスによって受け付けられるようになっている。
いくつかの実施形態では、処理ユニット5304は、緊急ダイヤルインタフェースを表示する前に、(例えば、表示有効化ユニット5308によって)緊急時オプションを含むロック画面インタフェースの表示を有効にし、(例えば、検出ユニット5306によって)緊急時オプションの選択を検出し、緊急時オプションの選択を検出したことに応じて、(例えば、表示有効化ユニット5308によって)緊急ダイヤルインタフェースの表示を有効にするように更に構成されている。
いくつかの実施形態では、ユーザに関する緊急情報は、ユーザの名前、誕生日、医学的状態、アレルギ及び反応、投薬、並びにユーザの1つ以上の緊急連絡先、のうちの1つ以上を含む。
図45を参照して上述された動作は、図1A~図1B又は図53に示される構成要素によって、任意選択的に実施される。例えば、検出動作4502及び表示動作4504は、イベントソータ170、イベント認識部180、及びイベントハンドラ190により実行され得る。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
いくつかの例によれば、図54は、説明される様々な例の原理に従って構成された電子デバイス5400の機能ブロック図を示す。デバイスの機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行され得る。当業者であれば、説明される様々な例の原理を実施するために、図54で説明する機能ブロックを組み合わせることができる又はサブブロックに分離することができることを理解する。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図54に示されるように、電子デバイス5400は、ユーザインタフェースを表示するためのディスプレイユニット5402を含み得る。電子デバイス5400は、ディスプレイユニット5402に結合された、処理ユニット5404を更に含み得る。いくつかの例においては、処理ユニット5404は、受信ユニット5406、識別ユニット5408、使用ユニット5410、優先順位付けユニット5412、表示有効化ユニット5414、検出ユニット5416、順序換えユニット5418、及び承認又は拒否ユニット5420の1つ以上を含み得る。
処理ユニット5404は、(例えば、受信ユニット5406によって)ユーザから、健康データの複数の承認済みのソースを識別する情報を受け取り、複数の承認済みのソースを識別する情報は、複数の承認済みのソースから受け取られて健康データベース内に保存されることが承認された1つ以上の種類の健康データを識別し、(例えば、受信ユニット5406によって)ユーザから、健康データの複数の承認済みのデスティネーションを識別する情報を受け取り、複数の承認済みのデスティネーションを識別する情報は、健康データの複数の承認済みのデスティネーションによって、健康データベースからアクセスされることが承認された1つ以上の種類の健康データを識別する、ように構成されてもよい。
いくつかの実施形態では、複数の承認済みのソースは、電子デバイス又はソフトウェアアプリケーションを含む。
いくつかの実施形態では、複数の承認済みのデスティネーションは、電子デバイス又はソフトウェアアプリケーションを含む。
いくつかの実施形態では、複数の承認済みのソースは、互いの間でランク付けされる。
いくつかの実施形態では、処理ユニット5404は、(例えば、識別ユニット5408によって)複数の承認済みのソースの第1の承認済みのソースから受け取った健康データベース内の第1の健康データエントリを識別し、第1の健康データエントリは、第1の健康データ種類及び第1のタイムスタンプを含み、(例えば、識別ユニット5408によって)複数の承認済みのソースのうちの第2の承認済みのソースから受け取った健康データベース内の第2の健康データエントリを識別し、第2の健康データエントリは第2の健康データ種類及び第2のタイムスタンプを含み、第1の健康データ種類と第2の健康データ種類とが同じであり、第1のタイムスタンプは第2のタイムスタンプから閾値時間長の範囲内である、ように更に構成されている。
いくつかの実施形態では、第1の承認済みのソースが第2の承認済みのソースよりも好ましいとユーザにより認識されており、処理ユニット5404が、(例えば、使用ユニット5410によって)第1の健康データエントリを、第2の健康データエントリを使用する代わりに使用するように更に構成されている。
いくつかの実施形態では、第1の承認済みのソースが第2の承認済みのソースよりも好ましいとユーザにより認識されており、処理ユニット5404が、(例えば、優先順位付けユニット5412によって)第1の健康データエントリを第2の健康データエントリよりも優先するように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、第1の健康データエントリが第2の健康データエントリよりも優先されるという判定に従い、(例えば、使用ユニット5410によって)第1の健康データエントリを、第2の健康データエントリを使用する代わりに使用するように更に構成されている。
いくつかの実施形態では、第2の承認済みのソースが第1の承認済みのソースよりも好ましいとユーザにより認識されており、処理ユニット5404が、(例えば、優先順位付けユニット5412によって)第2の健康データエントリを第1の健康データエントリよりも優先するように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、第2の健康データエントリが第1の健康データエントリよりも優先されるという判定に従い、(例えば、使用ユニット5410によって)第2の健康データエントリを第1の健康データエントリを使用する代わりに使用するように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、健康データベース内に保存された健康データの複数のカテゴリの表示を有効にするように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、(例えば、検出ユニット5416によって)表示された健康データの複数のカテゴリからの健康データのカテゴリの選択を検出し、健康データのカテゴリの選択を検出したことに応じて、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、その健康データのカテゴリの1つ以上のサブカテゴリの表示を有効にするように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、(例えば、検出ユニット5416によって)表示された1つ以上のサブカテゴリからのサブカテゴリの選択を検出し、サブカテゴリの選択を検出したことに応じて、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、サブカテゴリの詳細ビューの表示を有効にするように更に構成されている。
いくつかの実施形態では、サブカテゴリの詳細ビューは、経時的な健康データのサブカテゴリのグラフ表示と、健康データのサブカテゴリの毎日の数値と、を含む。
いくつかの実施形態では、サブカテゴリの詳細ビューが健康データエントリを入力するための入力フィールドを更に含み、処理ユニット5404は、(例えば、受信ユニット5406によって)入力フィールドに入力された、健康データベース内に保存されることになる健康データエントリを受け取るように更に構成されている。
いくつかの実施形態では、サブカテゴリの詳細ビューは、サブカテゴリの、テキストによる説明を更に含む。
いくつかの実施形態では、サブカテゴリの詳細ビューは、サブカテゴリに対応する健康データエントリを表示するためのオプションを更に含み、処理ユニット5404は、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、健康データベース内に保存されたサブカテゴリに対応する複数の健康データエントリの表示を有効にするように更に構成されている。
いくつかの実施形態では、複数の健康データエントリのそれぞれは、データエントリの数値、タイムスタンプ、及びデータエントリのソースのIDを含む。
いくつかの実施形態では、サブカテゴリの詳細ビューは、健康データを共有するためのオプションを更に含み、処理ユニット5404は、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、複数の承認済みのソース及び複数の承認済みのデスティネーションを含むデータ共有インタフェースの表示を有効にするように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、(例えば、検出ユニット5416によって)表示された複数の承認済みのソースを順序換えする要求を検出し、表示された複数の承認済みのソースを順序換えする要求を検出したことに応じて、検出された、表示された複数の承認済みのソースを順序換えする要求に従い、表示された複数の承認済みのソースを(例えば、順序換えユニット5418によって)順序換えするように更に構成されている。
いくつかの実施形態では、データ共有インタフェースは、承認済みのデスティネーションを複数の承認済みのデスティネーションに追加するオプション、及び承認済みのデスティネーションを複数の承認済みのデスティネーションから除去するオプションを更に含む。
いくつかの実施形態では、処理ユニット5404は、(例えば、受信ユニット5406によって)検索クエリを受け取り、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、検索クエリに合致する複数のカテゴリの1つ以上のサブカテゴリの表示を有効にし、検索クエリに合致する、表示された1つ以上のサブカテゴリは、それらの各カテゴリに基づき色分けされる、ように更に構成されている。
いくつかの実施形態では、処理ユニット5404は、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、既知のソースのリストを含むソースインタフェースの表示を有効にするように更に構成されている。
いくつかの実施形態では、ソースインタフェースは、既知のソースによって提供され得る新たな種類の健康データの数を示す、既知のソースのうちの1つの既知のソースに関連付けられた数字インジケータを更に含む。
いくつかの実施形態では、処理ユニット5404は、(例えば、検出ユニット5416によって)表示された既知のソースのリストからの既知のソースの選択を検出し、既知のソースの選択を検出したことに応じて、(例えば、表示有効化ユニット5414によって)ディスプレイ上に、既知のソースが提供することができる健康データの種類のリストの表示を有効にする、ように更に構成されている。
いくつかの実施形態では、既知のソースが提供することができる健康データの種類のリストは、関連付けられた種類の健康データを承認する又は拒否するための、既知のソースが提供することができる健康データの種類のそれぞれに対する選択可能なオプションを含み得る。
いくつかの実施形態では、処理ユニット5404は、既知のソースが提供することができる健康データの種類の選択可能なオプションの選択を検出し、選択可能なオプションの選択を検出したことに応じて、既知のソースが提供することができる健康データの種類を、選択可能なオプションの検出された選択に従い、(例えば、承認又は拒否ユニット5420によって)承認又は拒否する、ように更に構成されている。
図38A及び図38Bを参照して上述された動作は、図1A~図1B又は図54に示される構成要素によって、任意選択的に実施される。例えば、受信する動作3802及び識別する動作3806は、イベントソータ170、イベント認識部180、及びイベントハンドラ190により実行されてもよい。イベントソータ170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136に送る。アプリケーション136のそれぞれのイベント認識部180は、イベント情報をそれぞれのイベント定義186と比較し、タッチ感知面上の第1の位置の第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するかどうかを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連付けられたイベントハンドラ190をアクティブ化させる。イベントハンドラ190は、アプリケーション内部状態192を更新するために、データアップデータ176若しくはオブジェクトアップデータ177を利用又は呼び出してもよい。いくつかの実施形態において、イベントハンドラ190は、アプリケーションにより表示されるものを更新するためのそれぞれのGUIアップデータ178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに示されるコンポーネントに基づいてどのように実施されるかは明らかであろう。
上述の説明は、説明の目的上、特定の実施形態を参照して説明されている。しかし、上述の例示的説明は、網羅的であること、又は本発明を、開示されている寸分違わない形態に限定することを意図されてはいない。上述の教示を考慮すれば、多くの修正及び変形が可能である。実施形態は、本技術の原理及びその実際的な適用を最良に説明するために選択され、記載されたものである。当業者は、これにより、企図される特定の使用に適合する種々の修正を施して、本技術及び種々の実施形態を最良に利用することが可能になる。
添付の図面を参照して本開示及び実施例が十分に説明されたが、様々な変更及び修正が当業者には明らかになるであろうということに留意されたい。このような変更及び修正は、特許請求の範囲によって定義されるとおりの本開示及び実施例の範囲内に含まれるものと理解されるべきである。
上述のように、本技術の一態様は、ユーザが求める内容又はユーザが関心を持つ可能性のある任意の他の内容の、ユーザへの提供を向上するために、種々のソースから入手可能なデータを収集及び使用することである。本開示は、いくつかの例においては、この収集されたデータが、特定の人物を固有に識別する、又は特定の人物と連絡をとる又は特定の人物を特定するために使用され得る個人情報データを含み得ることを企図する。このような個人情報データは、人口統計学的データ、位置ベースデータ、電話番号、電子メールアドレス、自宅の住所、又は任意の他の識別情報を含み得る。
本開示は、こうした個人情報データの使用は、本技術において、ユーザを利するために用いることができることを理解する。例えば、個人情報データを用いて、ユーザにとってより関心の高い、目的とするコンテンツを提供することができる。したがって、そのような個人情報データの使用により、提供されるコンテンツの計算された制御を可能にする。更に、ユーザを利する個人情報データの他の使用もまた、本開示によって企図される。
本開示は、そのような個人情報データの収集、分析、開示、転送、保存又は他の使用を担うエンティティが、十分に確立されたプライバシーポリシー及び/又はプライバシープラクティスを遵守することを更に企図する。特に、そのようなエンティティは、個人情報データを秘密かつ安全に維持するために、業界又は政府の要件を満足する又は超えると一般に認識されているプライバシーポリシー及びプラクティスを実施するとともに、一貫して使用すべきである。例えば、ユーザからの個人情報は、そのエンティティの合法的かつ正当な使用のために収集されるべきであり、それらの合法的使用の範囲外で、共有又は販売されるべきではない。更には、そのような収集は、ユーザに告知して同意を得た後にのみ実施すべきである。更には、そのようなエンティティは、そのような個人情報データへのアクセスを保護して安全化し、その個人情報データへのアクセスを有する他者が、それらのプライバシーポリシー及び手順を遵守することを保証するための、あらゆる必要な措置を講じるべきである。更には、そのようなエンティティは、広く受け入れられているプライバシーのポリシー及び慣行に対する自身の遵守を証明するために、第三者による評価を自らが受けることができる。
前述のことがらにもかかわらず、本開示はまた、ユーザが、個人情報データの使用又は個人情報データへのアクセスを選択的に阻止する例も想到する。すなわち、本開示は、そのような個人情報データへのアクセスを防止又は阻止するために、ハードウェア要素及び/又はソフトウェア要素を提供することができると想到する。例えば、広告配信サービスの場合において、この技術は、ユーザが、サービスの登録中、個人情報データの収集への参加の「オプトイン」又は「オプトアウト」を選択することを可能にするように構成され得る。別の例では、ユーザは、目的のコンテンツデリバリサービスに位置情報を提供しないことを選択することができる。更に別の例では、ユーザは正確な位置情報を提供しないが、位置領域情報の転送を許可することを選択することができる。
それゆえ、本開示は、1つ以上の様々な開示された例を実施するための個人情報データの使用を、広範に網羅するものであるが、本開示は、それらの様々な例がまた、そのような個人情報データにアクセスすることを必要とせずに実施することも可能である点もまた、想到する。すなわち、本技術の様々な例は、そのような個人情報データのすべて又は一部分の欠如により、実施不可能となるものではない。例えば、コンテンツは、ユーザに関連付けられたデバイスによって要求されたコンテンツ、コンテンツデリバリ業者が利用可能な他の非個人情報、又は公的に入手可能な情報などの、非個人情報データ又は必要最小限の量の個人情報に基づき嗜好を類推することによって、選択されユーザに提供され得る。