(57)【要約】      （修正有）【課題】アバターを作成及び編集するための、より速く、より効率的な方法及びインタフェースを電子デバイスに提供する。【解決手段】タッチ感知ディスプレイを有するポータブル多機能デバイスにおいて、ユーザ固有のアバターの生成に使用される画像データをキャプチャしながら、ユーザに案内を提供する方法であって、ユーザインタフェースは、ユーザがユーザのアバターを直感的にカスタマイズすることを可能にする。アバターは、メッセージングアプリケーションのユーザのアバターモデルに基づいてメッセージングセッションのために生成される。アバター編集インタフェースは、ジェスチャに応じて、ジェスチャのタイプ及び編集するために選択されたアバター特徴に基づいて、ユーザのアバターを更新する。【選択図】図１Ａ
2020091866.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイ及び１つ以上のカメラを有する電子デバイスにおいて、
前記ディスプレイにプレースホルダアバターを表示することであって、前記プレースホルダアバターの前記表示は前記電子デバイスの前記１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、
前記プレースホルダアバターを表示しつつ、前記１つ以上のカメラの前記視野に対する第２の位置への前記ユーザの移動を検出することと、
前記１つ以上のカメラの前記視野に対する前記第２の位置への前記ユーザの前記移動を検出したことに応じて、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は第１の組の画像基準を満たしているという判定に従って、前記１つ以上のカメラで前記ユーザの第１の画像データをキャプチャすることと、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は前記第１の組の画像基準を満たしていないという判定に従って、前記プレースホルダアバターの表示を続けながら、前記電子デバイスに対する位置を第１の目標位置に変更するために前記ユーザに第１の案内を提供することと、
を含む、方法。
【請求項２】
前記第１の画像データをキャプチャした後、前記第１の画像データに基づいて判定された前記ユーザの外観に基づいて選択された特徴を含むユーザ固有のアバターを生成すること、
を更に含む、請求項１に記載の方法。
【請求項３】
前記生成されたユーザ固有のアバターを前記ディスプレイに表示すること、
を更に含む、請求項２に記載の方法。
【請求項４】
前記プレースホルダアバターの前記表示と同時にビューファインダグラフィカル要素を表示すること、を更に含み、前記プレースホルダアバターの前記表示に対する前記ビューファインダグラフィカル要素の前記表示は、前記１つ以上のカメラの前記視野に対する前記ユーザの第１の又は第２の位置に基づく、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置が前記第１の組の画像基準を満たしているかどうかを判定すること、
を更に含む、請求項１から３のいずれか一項に記載の方法。
【請求項６】
前記第１の画像データをキャプチャした後、前記電子デバイスに対する位置を第２の目標位置に変更するように第２の案内を前記ユーザに提供することと、
前記第１の画像データの後にキャプチャされた画像データに基づいて前記プレースホルダアバターの前記表示を更新することと、
前記第２の案内を提供した後、前記電子デバイスに対する前記ユーザの第３の位置が第２の組の画像基準を満たしているかどうかを判定することと、
前記第２の検出された位置は前記第２の組の画像基準を満たしているという判定に従って、前記１つ以上のカメラで前記ユーザの第２の画像データをキャプチャすることと、
前記第２の検出された位置は前記第２の組の画像基準を満たしていないという判定に従って、前記第２の目標位置に前記電子デバイスに対する位置を変更するように前記ユーザに前記第２の案内を提供し続けることと、
を更に含む、請求項１から３のいずれか一項に記載の方法。
【請求項７】
前記第１の案内が、前記第１の画像データに基づいて前記プレースホルダアバターの外観を変更することなく前記ユーザに提供される、請求項１から３のいずれか一項に記載の方法。
【請求項８】
前記第１の案内を提供することが、前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置が前記第１の組の画像基準を満たしているときにユーザフィードバックを提供すること、又は、前記ユーザが前記デバイスに対して前記第１の目標位置にあるように前記１つ以上のカメラの前記視野に対してどのように位置付けられるべきかに基づいて命令を提供すること、を含む、請求項１から３のいずれか一項に記載の方法。
【請求項９】
前記第１の画像データをキャプチャした後、
前記第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報を表示することと、
前記第１の画像データに基づいて選択された前記１つ以上の肌の階調の色のうちの対応する推奨される肌の階調の色を確認するユーザ入力を受信することと、
を更に含む、請求項１から３のいずれか一項に記載の方法。
【請求項１０】
前記第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報の表示が、前記推奨される肌の階調の色のいずれかをアバターに適用することなく表示される、請求項９に記載の方法。
【請求項１１】
前記第１の画像データに基づいて前記ユーザ固有のプレースホルダアバターを生成し、前記第１の画像データとは無関係の所定の肌の階調の色を使用することと、
前記対応する推奨される肌の階調の色を確認する前記ユーザ入力を受信する前に前記ユーザ固有のプレースホルダアバターを表示することと、
を更に含む、請求項９に記載の方法。
【請求項１２】
前記第１の画像データをキャプチャしたことに応じて、進度インジケータの表示を更新することを更に含み、前記進度インジケータの前記表示はキャプチャされたアバター画像データの量に基づく、請求項１から３のいずれか一項に記載の方法。
【請求項１３】
前記第１の画像データは、静止データ及びビデオデータの両方を含む、請求項１から３のいずれか一項に記載の方法。
【請求項１４】
前記ユーザの画像データをキャプチャすることと、
前記ユーザの前記画像データは照明基準を満たすことに失敗しているという判定に従って、前記１つ以上のカメラの前記視野の前記照明を変更するために前記ユーザに対する命令を表示することと、
を更に含む、請求項１から３のいずれか一項に記載の方法。
【請求項１５】
前記第１の画像データに基づいて前記ユーザの身体的特徴又はアクセサリの特徴を判定すること、
を更に含み、前記ユーザ固有のアバターを作成することは、前記ユーザ固有のアバターの前記身体的特徴又は前記アクセサリの特徴の表現を追加することを含む、請求項２又は３に記載の方法。
【請求項１６】
前記ユーザ固有のアバターは、前記ユーザが前記第１の画像データにおいて表情を有するかどうかに関わらない独立した表情である、請求項２又は３に記載の方法。
【請求項１７】
前記第１の画像データに基づいて前記ユーザ固有のアバターを生成することは、複数のアバターを生成することを含み、前記複数のアバターは、第１のアバターと、第１のアバターとは異なる第２のアバターとを含み、前記方法は、
前記複数のアバターを表示することと、
前記複数のアバターのうちの１つを選択するユーザ入力を受信することと、
を更に含む、請求項２又は３に記載の方法。
【請求項１８】
前記ユーザ固有のアバターを生成した後、前記アバターをレシピとして記憶すること、
を更に含み、前記レシピは、前記アバターの構造及びアバターパラメータを定義する、請求項２又は３に記載の方法。
【請求項１９】
前記プレースホルダアバターは、前記ユーザの前記画像データとは無関係の所定の人のシルエットである、請求項１から３のいずれか一項に記載の方法。
【請求項２０】
ディスプレイと、
１つ以上のプロセッサと、
１つ以上のカメラと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、前記１つ以上のプログラムは、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムは、
前記ディスプレイにプレースホルダアバターを表示することであって、前記プレースホルダアバターの前記表示は前記電子デバイスの前記１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、
前記プレースホルダアバターを表示しつつ、前記１つ以上のカメラの前記視野に対する第２の位置への前記ユーザの移動を検出することと、
前記１つ以上のカメラの前記視野に対する前記第２の位置への前記ユーザの前記移動を検出したことに応じて、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は第１の組の画像基準を満たしているという判定に従って、前記１つ以上のカメラで前記ユーザの第１の画像データをキャプチャすることと、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は前記第１の組の画像基準を満たしていないという判定に従って、前記プレースホルダアバターの表示を続けながら、前記電子デバイスに対する位置を第１の目標位置に変更するように第１の案内を前記ユーザに提供することと、
を行う命令を含む、電子デバイス。
【請求項２１】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは命令を含み、前記命令は、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
プレースホルダアバターを前記ディスプレイ上に表示することであって、前記プレースホルダアバターの前記表示は前記電子デバイスの前記１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、
前記プレースホルダアバターを表示しつつ、前記１つ以上のカメラの前記視野に対する第２の位置への前記ユーザの移動を検出することと、
前記１つ以上のカメラの前記視野に対する前記第２の位置への前記ユーザの前記移動を検出したことに応じて、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は前記第１の組の画像基準を満たしているという判定に従って、前記１つ以上のカメラで前記ユーザの第１の画像データをキャプチャすることと、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は前記第１の組の画像基準を満たしていないという判定に従って、前記プレースホルダアバターの表示を続けながら、前記電子デバイスに対する位置を第１の目標位置に変更するように第１の案内を前記ユーザに提供することと、
を前記デバイスに行わせる命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項２２】
電子デバイスであって、
ディスプレイと、
１つ以上のカメラと、
前記ディスプレイにプレースホルダアバターを表示する手段であって、前記プレースホルダアバターの前記表示は前記電子デバイスの前記１つ以上のカメラの視野に対するユーザの第１の位置に基づく、手段と、
前記プレースホルダアバターを表示しつつ、前記１つ以上のカメラの前記視野に対する第２の位置への前記ユーザの移動を検出する手段と、
前記１つ以上のカメラの前記視野に対する前記第２の位置への前記ユーザの前記移動を検出したことに応じて、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は前記第１の組の画像基準を満たしているという判定に従って前記１つ以上のカメラで前記ユーザの第１の画像データをキャプチャする手段と、
前記１つ以上のカメラの前記視野に対する前記ユーザの前記第２の位置は前記第１の組の画像基準を満たしていないという判定に従って、前記プレースホルダアバターの表示を続けながら、前記電子デバイスに対する位置を第１の目標位置に変更するように前記ユーザに第１の案内を提供する手段と、
を備えた、電子デバイス。
【請求項２３】
ディスプレイと、
１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合された１つ以上のカメラと、
メモリと、
メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成された、１つ以上のプログラムであり、請求項１から１９に記載の方法のいずれかを実行する命令を含む、前記１つ以上のプログラムと、
を備えた、電子デバイス。
【請求項２４】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムが命令を含み、前記命令は、ディスプレイ及び１つ以上のカメラを有する電子デバイスの１つ以上のプロセッサによって実行されると、請求項１から１９に記載の方法のいずれかを前記デバイスに実行させる、非一時的コンピュータ可読記憶媒体。
【請求項２５】
ディスプレイと、
１つ以上のカメラと、
請求項１から１９に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
【請求項２６】
ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスにおいて、
複数の編集可能な特徴を有するアバターと、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、
現在選択されている前記第１のアバター特徴の第１のオプション及び現在選択されていない前記第１のアバター特徴の第２のオプションを含む選択するための前記第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域と、
を同時に表示することを含む、アバター編集ユーザインタフェースを前記ディスプレイに表示することと、
前記アバター編集ユーザインタフェースを表示しつつ、前記アバター編集ユーザインタフェースにおいて入力を検出することと、
前記入力を検出したことに応じて、
前記入力は前記特徴選択制御領域における前記第２のアバター特徴の選択に対応しているという判定に従って、
前記第２のアバター特徴が現在選択されていることを示すように前記特徴選択制御領域を更新することと、
現在選択されている前記第２のアバター特徴の第１のオプション及び現在選択されていない前記第２のアバター特徴の第２のオプションを含む選択するための前記第２のアバター特徴の複数のオプションの表現を含むように前記特徴オプション制御領域を更新することと、
前記入力は前記特徴オプション制御領域における前記第１のアバター特徴の前記第２のオプションの選択に対応しているという判定に従って、
前記第１のアバター特徴の前記第２のオプションが現在選択されていることを示すように前記特徴オプション制御領域を更新することと、
前記第１のアバター特徴の前記第２のオプションに従って前記第１のアバター特徴の前記外観を変更するように前記アバターを更新することと、
を含む、方法。
【請求項２７】
前記入力の検出に応じて、前記入力は前記特徴オプション制御領域における前記第１のアバター特徴の前記第２のオプションの選択に対応しているという判定に従って、前記アバター特徴制御領域を更新することなく、前記特徴オプション制御領域が更新される、請求項２６に記載の方法。
【請求項２８】
前記入力の検出に応じて、前記入力は前記特徴選択制御領域における前記第２のアバター特徴の選択に対応しているという判定に従って、前記アバターを更新することなく、前記特徴選択制御領域が更新される、請求項２６又は２７に記載の方法。
【請求項２９】
前記アバター編集ユーザインタフェースを表示することが更に、
現在選択されている第１の色及び現在選択されていない第２の色を含む、前記第１のアバター特徴の複数の色オプションの表現を含む、色選択領域
を同時に前記ディスプレイに表示することを含み、前記色選択領域は、前記アバター、前記特徴選択制御領域、及び前記特徴オプション制御領域と同時に表示される、請求項２６又は２７に記載の方法。
【請求項３０】
前記色選択領域を表示しつつ、前記第２の色の選択に対応するユーザ入力の検出に応じて、前記第２の色に基づいて前記アバターにおける前記第１のアバター特徴の前記表示を更新すること、
を更に含む、請求項２９に記載の方法。
【請求項３１】
前記第１のアバター特徴がアバターの衣類であり、前記第２の色に基づいて前記アバターにおいて前記第１のアバター特徴の前記表示を更新することが、前記アバターの衣類の色を前記第２の色に更新することを含む、請求項２９に記載の方法。
【請求項３２】
前記第１のアバター特徴が、アバターのアクセサリである、請求項２６又は２７に記載の方法。
【請求項３３】
前記ディスプレイが、タッチ感知ディスプレイであり、前記方法が、
前記タッチ感知ディスプレイでのジェスチャの受信に応じて、前記ジェスチャに基づいて第１のアバター特徴の特性を修正することと、
前記修正されたパラメータに基づいて前記アバターの前記表示を更新することと、
を更に含む、請求項２６又は２７に記載の方法。
【請求項３４】
予め保存された複数のアバターを含むアバター管理インタフェースを表示することと、
予め保存されたアバターを選択するユーザ入力を受信することと、
前記予め保存されたアバターを選択する前記ユーザ入力に応じて、前記予め保存されたアバターを前記アバター編集ユーザインタフェースに表示することと、
を更に含む、請求項２６又は２７に記載の方法。
【請求項３５】
前記アバターを更新して、前記第１のアバター特徴の前記第２のオプションに従って前記第１のアバター特徴の前記外観を変更した後に、アバターレシピとして前記アバターを記憶することを更に含み、前記アバターレシピは、前記第２のオプションを含むアバター構造及びアバターパラメータを定義する、請求項２６又は２７に記載の方法。
【請求項３６】
前記アバターレシピを連絡先に送信すること、
を更に含む、請求項３５に記載の方法。
【請求項３７】
第１の連絡先のアバターレシピを受信することと、
前記第１の連絡先を含む複数の連絡先についての連絡先情報を表示することとを更に含み、前記第１の連絡先について表示される前記連絡先情報は、前記第１の連絡先についての前記アバターレシピに基づくアバターを含む、請求項２６又は２７に記載の方法。
【請求項３８】
前記第１のアバター特徴が現在選択されているときに、前記アバターの前記表示が前記第１のアバター特徴のインジケータを含む、請求項２６又は２７に記載の方法。
【請求項３９】
前記特徴選択制御領域における前記表現が、それぞれのアバター特徴の形状に基づく形状を有する、請求項２６又は２７に記載の方法。
【請求項４０】
前記特徴オプション制御領域内の前記表現が、それぞれのアバター特徴のオプションの形状に基づく形状を有する、請求項２６又は２７に記載の方法。
【請求項４１】
前記１つ以上の入力デバイスを介して、前記アバター編集ユーザインタフェースに関連付けられた入力が、所定の期間に検出されないことに従って、アバターアニメーションを用いて前記アバターの前記表示を更新すること、
を更に含む、請求項２６又は２７に記載の方法。
【請求項４２】
前記第１のアバター特徴の前記第２のオプションに従って前記アバターを更新して前記第１のアバター特徴の前記外観を変更することは、前記第２のオプションに基づいて前記アバターの表情を修正することを含む、請求項２６又は２７に記載の方法。
【請求項４３】
前記アバターを表示しつつ、前記電子デバイスの１つ以上の入力デバイスを介して入力を検出したことに応じて、前記入力に関連付けられた位置に基づいて前記アバターの目を更新すること、
を更に含む、請求項２６又は２７に記載の方法。
【請求項４４】
アニメーションループが前記アバターの一連の表情を含む、前記アニメーションループに基づいて前記アバターを更新すること、
を更に含む、請求項２６又は２７に記載の方法。
【請求項４５】
前記アニメーションループは、持続時間を有し、前記方法は、
前記持続時間より少ないランダムな時間オフセットを決定すること、を更に含み、前記アニメーションループに基づいて前記アバターを更新することは、前記ランダムな時間オフセットに基づいて前記アニメーションループ内の位置において開始する前記アバターを更新することを含む、請求項４４に記載の方法。
【請求項４６】
所定の期間後に、前記アニメーションループに基づいて前記アバターを更新することを停止すること、
を更に含む、請求項４４に記載の方法。
【請求項４７】
前記第１のアバター特徴の前記第２のオプションに従って前記第１のアバター特徴の前記外観を変更するように前記アバターを更新することが、アニメーションを介して前記第１のオプションに基づく前記第１のアバター特徴を前記第２のオプションに基づく前記第１のアバター特徴に遷移させることを含む、請求項２６又は２７に記載の方法。
【請求項４８】
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた、電子デバイスであって、前記１つ以上のプログラムが、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムは、
複数の編集可能な特徴を有するアバターと、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、
現在選択されている前記第１のアバター特徴の第１のオプション及び現在選択されていない前記第１のアバター特徴の第２のオプションを含む選択するための前記第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域と、
を同時に表示することを含む、アバター編集ユーザインタフェースを前記ディスプレイに表示することと、
前記アバター編集ユーザインタフェースを表示しつつ、前記アバター編集ユーザインタフェースにおける入力を検出することと、
前記入力を検出したことに応じて、
前記入力は前記特徴選択制御領域における前記第２のアバター特徴の選択に対応しているという判定に従って、
前記第２のアバター特徴が現在選択されていることを示すように前記特徴選択制御領域を更新することと、
現在選択されている前記第２のアバター特徴の第１のオプション及び現在選択されていない前記第２のアバター特徴の第２のオプションを含む選択するための前記第２のアバター特徴の複数のオプションの表現を含むように前記特徴オプション制御領域を更新することと、
前記入力は前記特徴オプション制御領域における前記第１のアバター特徴の前記第２のオプションの選択に対応しているという判定に従って、
前記第１のアバター特徴の前記第２のオプションが現在選択されていることを示すように前記特徴オプション制御領域を更新することと、
前記第１のアバター特徴の前記第２のオプションに従って前記第１のアバター特徴の前記外観を変更するように前記アバターを更新することと、
を行う命令を含む、電子デバイス。
【請求項４９】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
複数の編集可能な特徴を有するアバターと、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、
現在選択されている前記第１のアバター特徴の第１のオプション及び現在選択されていない前記第１のアバター特徴の第２のオプションを含む選択するための前記第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域と、
を同時に表示することを含む、アバター編集ユーザインタフェースを前記ディスプレイに表示することと、
前記アバター編集ユーザインタフェースを表示しつつ、前記アバター編集ユーザインタフェースにおける入力を検出することと、
前記入力を検出したことに応じて、
前記入力は前記特徴選択制御領域における前記第２のアバター特徴の選択に対応しているという判定に従って、
前記第２のアバター特徴が現在選択されていることを示すように前記特徴選択制御領域を更新することと、
現在選択されている前記第２のアバター特徴の第１のオプション及び現在選択されていない前記第２のアバター特徴の第２のオプションを含む選択するための前記第２のアバター特徴の複数のオプションの表現を含むように前記特徴オプション制御領域を更新することと、
前記入力は前記特徴オプション制御領域における前記第１のアバター特徴の前記第２のオプションの選択に対応しているという判定に従って、
前記第１のアバター特徴の前記第２のオプションが現在選択されていることを示すように前記特徴オプション制御領域を更新することと、
前記第１のアバター特徴の前記第２のオプションに従って前記第１のアバター特徴の前記外観を変更するように前記アバターを更新することと、
を前記デバイスに行わせる命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項５０】
ディスプレイと、
１つ以上の入力デバイスと、
複数の編集可能な特徴を有するアバター、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域、及び、
現在選択されている前記第１のアバター特徴の第１のオプション及び現在選択されていない前記第１のアバター特徴の第２のオプションを含む選択するための前記第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域、
の同時表示を含む、アバター編集ユーザインタフェースを前記ディスプレイに表示する手段と、
前記アバター編集ユーザインタフェースを表示しつつ、前記アバター編集ユーザインタフェースにおいて入力を検出する手段と、
前記入力を検出したことに応じて、
前記入力は前記特徴選択制御領域における前記第２のアバター特徴の選択に対応しているという判定に従って、
前記第２のアバター特徴が現在選択されていることを示すように前記特徴選択制御領域を更新する、及び
現在選択されている前記第２のアバター特徴の第１のオプション及び現在選択されていない前記第２のアバター特徴の第２のオプションを含む選択するための前記第２のアバター特徴の複数のオプションの表現を含むように前記特徴オプション制御領域を更新する手段と、
前記入力は前記特徴オプション制御領域における前記第１のアバター特徴の前記第２のオプションの選択に対応しているという判定に従って、
前記第１のアバター特徴の前記第２のオプションが現在選択されていることを示すように前記特徴オプション制御領域を更新する、及び
前記第１のアバター特徴の前記第２のオプションに従って前記第１のアバター特徴の前記外観を変更するように前記アバターを更新する手段と、
を備えた、電子デバイス。
【請求項５１】
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、前記１つ以上のプログラムは、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムは、請求項２６から４７に記載の方法のいずれかを実行する命令を含む、電子デバイス。
【請求項５２】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは命令を含み、前記命令は、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、請求項２６から４７に記載の方法のいずれかを前記デバイスに実行させる、非一時的コンピュータ可読記憶媒体。
【請求項５３】
ディスプレイと、
請求項２７から４７に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
【請求項５４】
ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスにおいて、
前記デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、前記第１のユーザは、前記デバイスの前記第１のユーザを他のユーザと区別する前記ユーザのアバターによって前記メッセージングアプリケーションにおいて表される、ことと、
前記メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
前記ステッカユーザインタフェースを表示するという前記第１の要求に応じて、
前記ユーザを表す前記アバターの修正に基づいて生成された第１のアバターステッカ、及び
前記ユーザを表しかつ前記第１のアバターステッカとは異なる前記アバターの修正に基づいて生成された第２のアバターステッカ
を同時に表示することを含む、前記ユーザの前記アバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを前記ディスプレイに表示することと、
前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示しつつ、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを、前記１つ以上の入力デバイスを介して、検出することと、
前記１つ以上の入力のシーケンスの検出に応じて、
前記１つ以上の入力のシーケンスが前記第１のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送ることと、
前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送ることと、
を含む、方法。
【請求項５５】
前記ユーザの前記アバターが、アバターレシピに基づく、請求項５４に記載の方法。
【請求項５６】
前記第１のアバターステッカは、前記ユーザの前記アバターの前記アバターレシピの第１のパラメータを修正することにより生成された、請求項５５に記載の方法。
【請求項５７】
前記第２のアバターステッカは、前記ユーザの前記アバターの前記アバターレシピに第２のパラメータを追加することにより生成された、請求項５５又は５６に記載の方法。
【請求項５８】
前記第１のアバターステッカを前記第２のユーザに送ることは、前記ユーザに前記第１のアバターステッカを表すレシピを送ることを含む、請求項５４から５６のいずれか一項に記載の方法。
【請求項５９】
前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送ることは、
前記第２のユーザに関連付けられているデバイスはアバターレシピをサポートしているという判定に従って、前記第１のアバターステッカを前記第２のユーザに送ることが、前記ユーザに前記第１のアバターステッカを表すレシピを送ることと、
前記第２のユーザに関連付けられている前記デバイスはアバターレシピをサポートしていないという判定に従って、前記ユーザに前記第１のアバターステッカのグラフィカル表現を送ることと、
を含む、請求項５４から５６のいずれか一項に記載の方法。
【請求項６０】
前記ステッカユーザインタフェースが、前記メッセージングインタフェースの少なくとも一部と同時に表示される、請求項５４から５６のいずれか一項に記載の方法。
【請求項６１】
前記第１のアバターステッカが、動画化された、請求項５４から５６のいずれか一項に記載の方法。
【請求項６２】
前記第２のアバターステッカが、プロップを含む、請求項５４から５６のいずれか一項に記載の方法。
【請求項６３】
前記ステッカユーザインタフェースを表示するという前記要求を受信する前に、ユーザメッセージのテキスト部分のユーザ入力を受信することと、
前記１つ以上の入力のシーケンスを検出した後、前記メッセージングアプリケーションを介して前記ユーザメッセージの前記テキスト部分を前記第２のユーザに送ることと、
を更に含む、請求項５４から５６のいずれか一項に記載の方法。
【請求項６４】
前記第１のアバターのステッカ又は前記第２のアバターステッカを送った後、前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示しつつ、前記第１のユーザから前記第２のユーザに前記メッセージングアプリケーションを介して対応するアバターステッカを送るという要求に対応する１つ以上の入力の第２のシーケンスを前記１つ以上の入力デバイスを介して検出することと、
前記１つ以上の入力の第２のシーケンスの検出に応じて、前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送ることと、
を更に含む、請求項５４から５６のいずれか一項に記載の方法。
【請求項６５】
ディスプレイと、
１つ以上のプロセッサと、
１つ以上の入力デバイスと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、前記１つ以上のプログラムが、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムが、
前記デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、前記第１のユーザは、前記デバイスの前記第１のユーザを他のユーザと区別する前記ユーザのアバターによって前記メッセージングアプリケーションにおいて表される、ことと、
前記メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
前記ステッカユーザインタフェースを表示するという前記第１の要求に応じて、
前記ユーザを表す前記アバターの修正に基づいて生成された第１のアバターステッカ、及び
前記ユーザを表しかつ前記第１のアバターステッカとは異なる前記アバターの修正に基づいて生成された第２のアバター
を同時に表示することを含む、前記ユーザの前記アバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを前記ディスプレイに表示することと、
前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示しつつ、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを、前記１つ以上の入力デバイスを介して、検出することと、
前記１つ以上の入力のシーケンスの検出に応じて、
前記１つ以上の入力のシーケンスが前記第１のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送ることと、
前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送ることと、
を行う命令を含む、電子デバイス。
【請求項６６】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
前記デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、前記第１のユーザは、前記デバイスの前記第１のユーザを他のユーザと区別する前記ユーザのアバターによって前記メッセージングアプリケーションにおいて表される、ことと、
前記メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
前記ステッカユーザインタフェースを表示するという前記第１の要求に応じて、前記ディスプレイに、
前記ユーザを表す前記アバターの修正に基づいて生成された第１のアバターステッカ、及び
前記ユーザを表しかつ前記第１のアバターステッカとは異なる前記アバターの修正に基づいて生成された第２のアバター
を同時に表示することを含む、前記ユーザの前記アバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを表示することと、
前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示しつつ、対応するアバターステッカを前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに送るという要求に対応する１つ以上の入力のシーケンスを前記１つ以上の入力デバイスを介して検出することと、
前記１つ以上の入力のシーケンスの検出に応じて、
前記１つ以上の入力のシーケンスが前記第１のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送ることと、
前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送ることと、
をデバイスに行わせる命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項６７】
電子デバイスであって、
ディスプレイと、
１つ以上の入力デバイスと、
前記デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示する手段であって、前記第１のユーザは前記デバイスの前記第１のユーザを他のユーザと区別する前記ユーザのアバターによって前記メッセージングアプリケーションにおいて表される、手段と、
前記メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信する手段と、
前記ステッカユーザインタフェースを表示するという前記第１の要求に応じて、
前記ユーザを表す前記アバターの修正に基づいて生成された第１のアバターステッカ、及び
前記ユーザを表しかつ前記第１のアバターステッカとは異なる前記アバターの修正に基づいて生成された第２のアバター
の同時表示を含む、前記ユーザの前記アバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを前記ディスプレイに表示する手段と、
前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示しつつ、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを、前記１つ以上の入力デバイスを介して、検出する手段と、
前記１つ以上の入力のシーケンスの検出に応じて、
前記１つ以上の入力のシーケンスが前記第１のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送る手段と、
前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送る手段と、
を備えた、電子デバイス。
【請求項６８】
ディスプレイと、
１つ以上のプロセッサと、
１つ以上の入力デバイスと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、前記１つ以上のプログラムが、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムが、請求項５４から６４に記載の方法のいずれかを実行する命令を含む、電子デバイス。
【請求項６９】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは命令を含み、前記命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、請求項５４から６４に記載の方法のいずれかを前記デバイスに実行させる、非一時的コンピュータ可読記憶媒体。
【請求項７０】
ディスプレイと、
１つ以上の入力デバイスと、
請求項５４から６４に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
【請求項７１】
ディスプレイ及びタッチ感知面を有する電子デバイスにおいて、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースを前記デバイスに表示することと、
前記複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、前記タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャを前記タッチ感知面上で検出することと、
前記第１のジェスチャの検出に応じて、
前記第１のジェスチャは第１のタイプのジェスチャであるというかつ前記対応する特徴は第１の特徴であるという判定に従って、前記第１の特徴の第１の特性を修正することにより前記アバターの前記表示を更新することであって、前記第１の特徴の前記第１の特性は前記第１のジェスチャタイプと関連付けられている、ことと、
前記第１のジェスチャは、前記第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ前記対応する特徴は前記第１の特徴であるという判定に従って、前記第１の特徴の前記第１の特性とは異なる前記第１の特徴の第２の特性を修正することにより前記アバターの前記表示を更新することであって、前記第１の特徴の前記第２の特性は前記第２のジェスチャタイプと関連付けられている、ことと、
を含む、方法。
【請求項７２】
前記第１のジェスチャの検出に応じて、前記ジェスチャは第１のタイプのジェスチャであるというかつ前記対応する特徴は第２の特徴であるという判定に従って、前記第２の特徴の第１の特性を修正することにより前記アバターの前記表示を更新することを更に含み、前記第２の特徴の前記第１の特性は前記第１のジェスチャタイプと関連付けられている、請求項７１に記載の方法。
【請求項７３】
前記第２の特徴の前記第１の特性は、前記第１の特徴の前記第１の特性とは異なる、請求項７２に記載の方法。
【請求項７４】
前記第１のジェスチャの検出に応じて、前記第１のジェスチャは前記第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ前記対応する特徴は前記第２の特徴であるという判定に従って、前記第２の特徴の前記第１の特性とは異なる前記第２の特徴の第２の特性を修正することにより前記アバターの前記表示を更新することを更に含み、前記第２の特徴の前記第２の特性は前記第２のジェスチャタイプと関連付けられている、請求項７２又は７３に記載の方法。
【請求項７５】
前記第２の特徴の前記第２の特性は、前記第１の特徴の前記第２の特性とは異なる、請求項７２又は７３に記載の方法。
【請求項７６】
前記アバター編集インタフェースは、編集のために選択可能な前記複数の編集可能な特徴のうちの１つ以上の特徴の特徴アフォーダンスを有する第１の選択インジケータを含む、請求項７１から７３のいずれか一項に記載の方法。
【請求項７７】
前記第１のタイプのジェスチャはピンチジェスチャであり、前記第１の特徴は鼻であり、前記第１の特性は鼻の幅である、請求項７１から７３のいずれか一項に記載の方法。
【請求項７８】
前記第２のタイプのジェスチャが垂直ドラッグであり、前記第２の特性が前記第１の特徴の垂直位置である、請求項７１から７３のいずれか一項に記載の方法。
【請求項７９】
前記第１のジェスチャは前記第１の特性の第１の許容範囲を超えて前記第１の特性を修正するという判定に従って、前記第１の特徴の前記第１の特性の修正を停止すること、
を更に含む、請求項７１から７３のいずれか一項に記載の方法。
【請求項８０】
前記第１のジェスチャの間に、前記第１の特性の許容範囲を超える前記第１の特性の修正に対応する入力を検出することと、
前記第１の特性の前記許容範囲を超えて前記第１の特性を修正した後、前記ジェスチャの端部を検出することと、
前記第１のジェスチャの前記端部の検出に応じて、前記第２の特性の第２の許容範囲内になるように前記第１の特徴の前記第１の特性を修正することにより前記アバターの前記表示を更新することと、
を更に含む、請求項７１から７３のいずれか一項に記載の方法。
【請求項８１】
前記第１のジェスチャが、前記第１の特徴が表示された場所とは別個の前記タッチ感知面上の場所において検出される、請求項７１から７３のいずれか一項に記載の方法。
【請求項８２】
前記対応する特徴の予め設定された特性のセットを選択するユーザ入力を受信することであって、前記予め設定された特性のセットは前記第２の特性の値を有さずに前記第１の特性の値及び第３の特性の値を含む、ことと、
前記ユーザ入力を受信したことに応じて、前記第１の値及び前記第２の値に基づいて、前記アバターの前記表示を更新することと、
を更に含む、請求項７１から７３のいずれか一項に記載の方法。
【請求項８３】
前記第３の特性は、１つ以上の予め設定された特性のセットの選択以外には修正可能ではない、請求項７１から７３のいずれか一項に記載の方法。
【請求項８４】
前記第１の特性の前記値及び前記第３の特性の前記値に基づく前記アバターの前記表示は、前記第２の特性の予めユーザ設定された値に基づく、請求項７１から７３のいずれか一項に記載の方法。
【請求項８５】
前記予め設定された特性のセットを選択する前記ユーザ入力は、提示特性に関連付けられたアフォーダンスの選択であり、前記アフォーダンスは前記予め設定された特性のセット内の１つ以上の値を表す形状を有する、請求項７１から７３のいずれか一項に記載の方法。
【請求項８６】
前記ユーザ入力の受信に応じて、リモートサーバに前記予め設定された特性のセットを要求すること、
を更に含む、請求項７１から７３のいずれか一項に記載の方法。
【請求項８７】
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、前記１つ以上のプログラムが、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムが、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースを前記デバイスに表示することと、
前記複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、前記タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャを前記タッチ感知面上で検出することと、
前記第１のジェスチャの検出に応じて、
前記第１のジェスチャは第１のタイプのジェスチャであるというかつ前記対応する特徴は第１の特徴であるという判定に従って、前記第１の特徴の第１の特性を修正することにより前記アバターの前記表示を更新することであって、前記第１の特徴の前記第１の特性は前記第１のジェスチャタイプと関連付けられている、ことと、
前記第１のジェスチャは、前記第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ前記対応する特徴は前記第１の特徴であるという判定に従って、前記第１の特徴の前記第１の特性とは異なる前記第１の特徴の第の第２の特性を修正することにより前記アバターの前記表示を更新することであって、前記第１の特徴の前記第２の特性は前記第２のジェスチャタイプと関連付けられている、ことと、
を行う命令を含む、電子デバイス。
【請求項８８】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは命令を含み、前記命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースを前記ディスプレイに表示することと、
前記複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、前記タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャを前記タッチ感知面上で検出することと、
前記第１のジェスチャの検出に応じて、
第前記１のジェスチャは第１のタイプのジェスチャであるというかつ前記対応する特徴は第１の特徴であるという判定に従って、前記第１の特徴の第１の特性を修正することによって前記アバターの前記表示を更新することであって、前記第１の特徴の前記第１の特性は前記第１のジェスチャタイプと関連付けられている、ことと、
前記第１のジェスチャは前記第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ前記対応する特徴は前記第１の特徴であるという判定に従って、前記第１の特徴の前記第１の特性とは異なる前記第１の特徴の第２の特性を修正することによって前記アバターの前記表示を更新することであって、前記第１の特徴の前記第２の特性は前記第２のジェスチャタイプと関連付けられている、ことと、
を前記デバイスに行わせる命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項８９】
電子デバイスであって、
ディスプレイと、
１つ以上の入力デバイスと、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースを前記デバイスに表示する手段と、
前記複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、前記タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャを前記タッチ感知面上で検出する手段と、
前記第１のジェスチャの検出に応じて、
前記第１のジェスチャは第１のタイプのジェスチャであるというかつ前記対応する特徴は第１の特徴であるという判定に従って、前記第１の特徴の第１の特性を修正することにより前記アバターの前記表示を更新することであって、前記第１の特徴の前記第１の特性は前記第１のジェスチャタイプと関連付けられている、こと、及び、
前記第１のジェスチャは前記第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ前記対応する特徴は前記第１の特徴であるという判定に従って、前記第１の特徴の前記第１の特性とは異なる前記第１の特徴の第２の特性を修正することにより前記アバターの前記表示を更新することであって、前記第１の特徴の前記第２の特性は前記第２のジェスチャタイプと関連付けられている、ことを行う手段と、
を備えた、電子デバイス。
【請求項９０】
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、前記１つ以上のプログラムが、メモリに記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムが、請求項７１から８６に記載の方法のいずれかを実行する命令を含む、電子デバイス。
【請求項９１】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは命令を含み、前記命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、請求項７１から８６に記載の方法のいずれかを前記デバイスに実行させる、非一時的コンピュータ可読記憶媒体。
【請求項９２】
ディスプレイと、
請求項７１から８６に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２０１６年９月２３日に出願された米国特許仮出願第６２／３９９，２９４号、題名「ＡＶＡＴＡＲ  ＣＲＥＡＴＩＯＮ  ＡＮＤ  ＥＤＩＴＩＮＧ」、に対する優先権を主張するものであり、参照によりその内容全体が本明細書に組み入れられる。
（技術分野）
【０００２】
本開示は、概して、コンピュータユーザインタフェースに関し、より詳細には、アバターの作成及び編集の技術に関する。
【背景技術】
【０００３】
アバターは、電子デバイスのユーザを表すために使用される。アバターは、ユーザの外観を表すことができ、あるいはユーザの理想化された表現又は完全に架空の表現を表すことができる。その場合、他のユーザに対するアバターの外観が、ユーザとの関連付け又はリンクをトリガするように、アバターは、ユーザに関連付けられ得る。
【発明の概要】
【０００４】
しかしながら、電子デバイスを使用してアバターを作成及び編集する一部の技術は、概して煩雑であり、非効率的である。例えば、一部の既存の技術では、複数回のキー押下又は打鍵を含む場合がある、複雑かつ時間のかかるユーザインタフェースが使用されている。既存の技術は、必要以上の時間を要し、ユーザの時間及びデバイスのエネルギを浪費する。後者の問題は、バッテリ動作式デバイスにおいては特に重大である。
【０００５】
したがって、本技術は、アバターを作成及び編集するための、より速く、より効率的な方法及びインタフェースを電子デバイスに提供する。このような方法及びインタフェースは、任意選択的に、アバターを作成及び編集する他の方法を補完する又はそれに置き換わる。そのような方法及びインタフェースは、ユーザにかかる認識的負担を低減させ、より効率的なヒューマンマシンインタフェースを作成する。バッテリ動作式コンピューティングデバイスの場合、そのような方法及びインタフェースは、電力を節約し、電池充電の間隔を長くする。
【０００６】
一実施形態によれば、ディスプレイ及び１つ以上のカメラディスプレイを有する電子デバイスが、ディスプレイにプレースホルダアバターを表示し、プレースホルダアバターの表示は、電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく。電子デバイスは、プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出する。１つ以上のカメラの視野に対する第２の位置へのユーザの移動の検出に応じて、電子デバイスは、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第１の画像データをキャプチャし、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するようにユーザに第１の案内を提供する。
【０００７】
一時的コンピュータ可読記憶媒体の一実施形態は、１つ以上のプログラムを記憶し、この１つ以上のプログラムは、ディスプレイ及び１つ以上のカメラを有する電子デバイスの１つ以上のプロセッサによって実行されると、プレースホルダアバターをディスプレイ上に表示することであって、このプレースホルダアバターの表示は電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出することと、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出したことに応じて：１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第１の画像データをキャプチャすることと、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するために第１の案内をユーザに提供することと、をデバイスに行わせる命令を含む。
【０００８】
一実施形態によれば、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスは、複数の編集可能な特徴を有するアバターと、修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域と、のディスプレイ上の表示を同時に含む、アバター編集ユーザインタフェースを表示し、アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおける入力を検出し、この入力の検出に応じて、この入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って：特徴選択制御領域を更新して、第２のアバター特徴が現在選択されていることを示し、現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を更新し、この入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って：特徴オプション制御領域を更新して、第１のアバター特徴の第２のオプションが現在選択されていることを示し、アバターを更新して、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更する。
【０００９】
一時的コンピュータ可読記憶媒体の一実施形態は１つ以上のプログラムを記憶し、この１つ以上のプログラムは、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、ディスプレイ上に、編集可能な複数の特徴を有するアバター、修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域、現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域を同時に表示することを含む、アバター編集ユーザインタフェースをデバイスに表示させることと、アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおいて入力を検出し、この入力の検出に応じて：この入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って：第２のアバター特徴が現在選択されていることを示すように特徴選択制御領域を更新し、現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を更新することと、この入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って：第１のアバター特徴の第２のオプションが現在選択されていることを示すように特徴オプション制御領域を更新し、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するためにアバターを更新することと、を行う命令を含む。
【００１０】
一実施形態によれば、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスは、デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示し、第１のユーザは、他のユーザからデバイスの第１のユーザを区別するユーザのアバターによってメッセージングアプリケーションにおいて表され、メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信し、ステッカユーザインタフェースを表示するという第１の要求に応じて、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースをディスプレイに表示し、この表示は以下の同時表示を含む：ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び、ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバターステッカ、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、メッセージングアプリケーションを介して第２のユーザに第１のユーザから対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを１つ以上の入力デバイスを介して検出し、１つ以上の入力のシーケンスを検出したことに応じて：この１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、第２のユーザへの第１のアバターステッカをメッセージングアプリケーションを介して第１のユーザから第２のユーザに送り、この１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送る。
【００１１】
一時的コンピュータ可読記憶媒体の一実施形態は、１つ以上のプログラムを記憶し、この１つ以上のプログラムは、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースをデバイスに表示させる命令であって、第１のユーザは、デバイスの第１のユーザを他のユーザと区別するユーザのアバターによってメッセージングアプリケーションにおいて表される、命令と、メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信する命令と、ステッカユーザインタフェースを表示するという第１の要求に応じて、ディスプレイに、ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び、ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバターステッカを同時に表示することを含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを表示する命令と、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、対応するアバターステッカをメッセージングアプリケーションを介して第１のユーザから第２のユーザに送るという要求に対応する１つ以上の入力のシーケンスを１つ以上の入力デバイスを介して検出し、この１つ以上の入力のシーケンスの検出に応じて：この１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、第２のユーザへの第１のアバターステッカを第１のユーザから第２のユーザにメッセージングアプリケーションを介して送り、この１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、第１のユーザから第２のユーザにメッセージングアプリケーションを介して第２のアバターステッカを送る命令とを含む。
【００１２】
一実施形態によれば、ディスプレイ及びタッチ感知面を有する電子デバイスは、複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをディスプレイに表示し、複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で検出し、第１のジェスチャの検出に応じて：第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによってアバターの表示を更新することであって、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、更新することを行い、第１のジェスチャは、第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによってアバターの表示を更新し、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている。
【００１３】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、この１つ以上のプログラムは、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されるとデバイスに、複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをディスプレイに表示し、複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で検出することと、第１のジェスチャの検出に応じて：第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによってアバターの表示を更新することであって、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、ことと、第１のジェスチャは第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによってアバターの表示を更新することであって、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられていることとを行わせる命令を含む。
【００１４】
これらの機能を実行する実行可能な命令は、任意選択的に、１つ以上のプロセッサによって実行されるように構成された非一時的コンピュータ可読記憶媒体又は他のコンピュータプログラム製品内に含まれる。これらの機能を実行する実行可能な命令は、任意選択的に、１つ以上のプロセッサによって実行されるように構成された一時的コンピュータ可読記憶媒体又は他のコンピュータプログラム製品内に含まれる。
【００１５】
このため、アバターを作成及び編集するための、より速く、より効率的な方法及びインタフェースがデバイスに提供され、それによって、このようなデバイスの有効性、効率、及びユーザ満足度が増す。このような方法及びインタフェースは、アバターを作成及び編集する他の方法を補完する、又はこれに置き換わることができる。
【図面の簡単な説明】
【００１６】
説明される様々な実施形態をより良く理解するため、以下の図面と併せて、以下の「発明を実施するための形態」が参照されるべきであり、類似の参照番号は、以下の図のすべてを通じて、対応する部分を指す。
【００１７】
【図１Ａ】いくつかの実施形態によるタッチ感知ディスプレイを有するポータブル多機能デバイスを示すブロック図である。
【００１８】
【図１Ｂ】いくつかの実施形態によるイベント処理のための例示的な構成要素を示すブロック図である。
【００１９】
【図２】いくつかの実施形態によるタッチスクリーンを有するポータブル多機能デバイスを示す。
【００２０】
【図３】いくつかの実施形態によるディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。
【００２１】
【図４Ａ】いくつかの実施形態によるポータブル多機能デバイス上のアプリケーションのメニューの例示的なユーザインタフェースを示す。
【００２２】
【図４Ｂ】いくつかの実施形態によるディスプレイとは別個のタッチ感知面を有する多機能デバイスの例示的なユーザインタフェースを示す。
【００２３】
【図５Ａ】いくつかの実施形態によるパーソナル電子デバイスを示す。
【００２４】
【図５Ｂ】いくつかの実施形態によるパーソナル電子デバイスを示すブロック図である。
【００２５】
【図６Ａ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｂ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｃ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｄ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｅ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｆ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｇ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｈ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｉ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｊ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｋ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｌ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【図６Ｍ】ユーザアバターを作成する例示的なユーザインタフェースを示す。
【００２６】
【図７Ａ】ユーザアバターを作成する方法を示すフロー図である。
【図７Ｂ】ユーザアバターを作成する方法を示すフロー図である。
【００２７】
【図８】電子デバイスの例示的な機能ブロック図を示す。
【００２８】
【図９Ａ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｂ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｃ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｄ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｅ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｆ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｇ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【図９Ｈ】ユーザのアバターをカスタマイズする例示的なユーザインタフェースを示す。
【００２９】
【図１０Ａ】ユーザのアバターをカスタマイズする方法を示すフロー図である。
【図１０Ｂ】ユーザのアバターをカスタマイズする方法を示すフロー図である。
【００３０】
【図１１】電子デバイスの例示的な機能ブロック図を示す。
【００３１】
【図１２Ａ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｂ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｃ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｄ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｅ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｆ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｇ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｈ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｉ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【図１２Ｊ】メッセージにおいてアバターステッカを使用する例示的なユーザインタフェースを示す。
【００３２】
【図１３Ａ】メッセージにおいてアバターステッカを使用する方法を示すフロー図である。
【図１３Ｂ】メッセージにおいてアバターステッカを使用する方法を示すフロー図である。
【００３３】
【図１４】電子デバイスの例示的な機能ブロック図を示す。
【００３４】
【図１５Ａ】ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。
【図１５Ｂ】ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。
【図１５Ｃ】ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。
【図１５Ｄ】ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。
【図１５Ｅ】ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。
【図１５Ｆ】ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。
【００３５】
【図１６Ａ】ジェスチャを使用してアバターを編集する方法を示すフロー図である。
【図１６Ｂ】ジェスチャを使用してアバターを編集する方法を示すフロー図である。
【００３６】
【図１７】電子デバイスの例示的な機能ブロック図を示す。
【発明を実施するための形態】
【００３７】
以下の説明は、例示的な方法、パラメータなどについて記載する。しかしながら、そのような説明は、本開示の範囲に対する限定として意図されるものではなく、代わりに例示的な実施形態の説明として提供されることを認識されたい。
【００３８】
アバターを作成及び編集する効率的な方法及びインタフェースを提供する電子デバイスが必要とされている。例えば、アバターを作成及び編集するプログラムがすでに存在しているが、これらのプログラムは、以下の技術に比べて非効率で使いにくいものであり、以下の技術では、ユーザは必要に応じて現実的又は非現実的なものとしてアバターを作成及び編集することができる。このような技術によって、アバターを作成及び編集するユーザの認識的負担を軽減することができ、それによって生産性を向上させる。更に、このような技法は、普通なら冗長なユーザ入力に浪費されるプロセッサ及び電池の電力を低減させることができる。
【００３９】
以下の図１Ａ〜図１Ｂ、図２、図３、図４Ａ〜図４Ｂ、及び図５Ａ〜図５Ｈでは、アバターを作成及び編集する技術を実行する例示的なデバイスについて説明する。
【００４０】
図６Ａ〜図６Ｍは、ユーザアバターを作成する例示的なユーザインタフェースを示す。図７Ａ〜図７Ｂは、いくつかの実施形態による、ユーザアバターを作成する方法を示すフロー図である。図６Ａ〜図６Ｍのユーザインタフェースは、図７Ａ〜図７Ｂのプロセスを含む後述のプロセスを示すために使用される。
【００４１】
図９Ａ〜図９Ｈは、ユーザアバターをカスタマイズする例示的なユーザインタフェースを示す。図１０Ａ〜図１０Ｂは、いくつかの実施形態による、ユーザアバターをカスタマイズするためのアクセスの方法を示すフロー図である。図８Ａ〜図８Ｄのユーザインタフェースは、図１０Ａ〜図１０Ｂのプロセスを含む後述のプロセスを示すために使用される。
【００４２】
図１２Ａ〜図１２Ｊは、メッセージを有するアバターステッカを作成及び使用する例示的なユーザインタフェースを示す。図１３Ａ〜図１３Ｂは、いくつかの実施形態による、メッセージを有するアバターステッカを作成及び使用するためのアクセスの方法を示すフロー図である。図１２Ａ〜図１２Ｊのユーザインタフェースは、図１３Ａ〜図１３Ｂのプロセスを含む後述のプロセスを示すために使用される。
【００４３】
図１５Ａ〜図１５Ｆは、ジェスチャを使用してアバターを編集する例示的なユーザインタフェースを示す。図１６Ａ〜図１６Ｂは、いくつかの実施形態による、ジェスチャを使用してアバターを編集するためのアクセスの方法を示すフロー図である。図１５Ａ〜図１５Ｆのユーザインタフェースは、図１６Ａ〜図１６Ｂのプロセスを含む後述のプロセスを示すために使用される。
【００４４】
以下の説明では、様々な要素について説明するために、「第１の」、「第２の」などの用語を使用するが、これらの要素は、それらの用語によって限定されるべきではない。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、記載する様々な実施形態の範囲から逸脱することなく、第１のタッチを第２のタッチと呼ぶこともでき、同様に第２のタッチを第１のタッチと呼ぶこともできる。第１のタッチ及び第２のタッチはどちらもタッチであるが、これらは同じタッチではない。
【００４５】
本明細書に記載する様々な実施形態の説明で使用される術語は、特定の実施形態を説明することのみを目的とし、限定的であることは意図されていない。記載する様々な実施形態の説明及び添付の特許請求の範囲では、単数形の「ａ（１つ、一）」、「ａｎ（１つ、一）」、及び「ｔｈｅ（その、この）」は、文脈上別途明白に記載しない限り、複数形も同様に含むことが意図される。また、本明細書で使用されるとき、用語「及び／又は」は、関連する列挙された項目のうちの１つ以上のいずれか及びすべての考えられる組合せを指し、かつこれを含むことを理解されたい。用語「ｉｎｃｌｕｄｅｓ（含む）」、「ｉｎｃｌｕｄｉｎｇ（含む）」、「ｃｏｍｐｒｉｓｅｓ（含む、備える）」、及び／又は「ｃｏｍｐｒｉｓｉｎｇ（含む、備える）」は、本明細書で使用する場合、述べられた特徴、整数、ステップ、動作、要素、及び／又は構成要素の存在を指定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び／又はそれらのグループの存在又は追加を除外しないことが更に理解されるであろう。
【００４６】
「〜場合（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］）」を意味すると解釈される。
【００４７】
電子デバイス、そのようなデバイス用のユーザインタフェース、及びそのようなデバイスを使用する関連するプロセスの実施形態が説明される。いくつかの実施形態では、デバイスは、ＰＤＡ機能及び／又は音楽プレーヤ機能などの他の機能も含む、携帯電話などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態としては、カリフォルニア州クパチーノのＡｐｐｌｅ  Ｉｎｃ．からのｉＰｈｏｎｅ（登録商標）、ｉＰｏｄ  Ｔｏｕｃｈ（登録商標）、及びｉＰａｄ（登録商標）のデバイスが挙げられるが、これらに限定されない。任意選択的に、タッチ感知面を有するラップトップ又はタブレットコンピュータ（例えば、タッチスクリーンディスプレイ及び／又はタッチパッド）などの他のポータブル電子デバイスも使用される。また、いくつかの実施形態では、デバイスはポータブル通信デバイスではなく、タッチ感知面を有するデスクトップコンピュータ（例えば、タッチスクリーンディスプレイ及び／又はタッチパッド）であることも理解されたい。
【００４８】
以下の論考では、ディスプレイ及びタッチ感知面を含む電子デバイスについて説明する。しかしながら、電子デバイスは、任意選択的に、物理キーボード、マウス、及び／又はジョイスティックなどの１つ以上の他の物理ユーザインタフェースデバイスを含むことを理解されたい。
【００４９】
デバイスは、典型的には、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション、及び／又はデジタルビデオプレーヤアプリケーションのうちの１つ以上などの様々なアプリケーションに対応する。
【００５０】
本デバイス上で実行される様々なアプリケーションは、タッチ感知面などの、少なくとも１つの共通の物理ユーザインタフェースデバイスを、任意選択的に使用する。タッチ感知面の１つ以上の機能、並びにデバイス上に表示される対応する情報は、アプリケーションごとに、及び／又はそれぞれのアプリケーション内で、任意選択的に、調節及び／又は変更される。このように、デバイスの共通の物理アーキテクチャ（タッチ感知面など）は、任意選択的に、ユーザにとって直観的かつ透過的なユーザインタフェースを備える様々なアプリケーションをサポートする。
【００５１】
ここで、タッチ感知ディスプレイを備えるポータブルデバイスの実施形態に注意を向ける。図１Ａは、いくつかの実施形態によるタッチ感知ディスプレイシステム１１２を有するポータブル多機能デバイス１００を示すブロック図である。タッチ感知ディスプレイ１１２は、便宜上「タッチスクリーン」と呼ばれることがあり、「タッチ感知ディスプレイシステム」として知られている又は呼ばれることがある。デバイス１００は、メモリ１０２（任意選択的に、１つ以上のコンピュータ可読記憶媒体を含む）、メモリコントローラ１２２、１つ以上の処理ユニット（ＣＰＵ）１２０、周辺機器インタフェース１１８、ＲＦ回路１０８、オーディオ回路１１０、スピーカ１１１、マイクロフォン１１３、入出力（Ｉ／Ｏ）サブシステム１０６、他の入力コントロールデバイス１１６、及び外部ポート１２４を含む。デバイス１００は、任意選択的に、１つ以上の光センサ１６４を含む。デバイス１００は、任意選択的に、デバイス１００上の接触の強度を検出する１つ以上の接触強度センサ１６５（例えば、デバイス１００のタッチ感知ディスプレイシステム１１２などのタッチ感知面）を含む。デバイス１００は、任意選択的に、デバイス１００上で触知出力を生成する（例えばデバイス１００のタッチ感知ディスプレイシステム１１２又はデバイス３００のタッチパッド３５５などのタッチ感知面上で触知出力を生成する）１つ以上の触知出力生成器１６７を含む。これらの構成要素は、任意選択的に、１つ以上の通信バス又は信号ライン１０３を介して通信する。
【００５２】
本明細書及び特許請求の範囲では、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触（例えば、指の接触）の力若しくは圧力（単位面積当たりの力）、又はタッチ感知面上の接触の力若しくは圧力に対する代理（プロキシ）を指す。接触の強度は、少なくとも４つの別個の値を含み、より典型的には、数百の（例えば、少なくとも２５６の）別個の値を含む、値の範囲を有する。接触の強度は、任意選択的に、様々な手法、及び様々なセンサ又はセンサの組合せを使用して、特定（又は測定）される。例えば、タッチ感知面の下又はそれに隣接する１つ以上の力センサは、任意選択的に、タッチ感知面上の様々なポイントにおける力を測定するために使用される。いくつかの実装形態では、複数の力センサからの力測定値は、接触の推定される力を判定するために組み合わされる（例えば、加重平均）。同様に、スタイラスの感圧性先端部は、任意選択的に、タッチ感知面上のスタイラスの圧力を特定するために使用される。あるいは、タッチ感知面上で検出される接触エリアのサイズ及び／若しくはその変化、接触に近接するタッチ感知面の電気容量及び／若しくはその変化、並びに／又は、接触に近接するタッチ感知面の抵抗及び／若しくはその変化は、任意選択的に、タッチ感知面上の接触の力又は圧力の代替物として使用される。いくつかの実装形態では、接触の力又は圧力のための代替測定値は、強度閾値を超えているかどうかを判定するために直接使用される（例えば、強度閾値は、代替測定値に対応する単位で記述される）。いくつかの実装形態では、接触力又は圧力に対する代理測定は、推定される力又は圧力に変換され、推定される力又は圧力は、強度閾値を超過したかどうかを判定するために使用される（例えば、強度閾値は、圧力の単位で測定される圧力閾値である）。接触の強度をユーザ入力の属性として使用することにより、アフォーダンスを（例えば、タッチ感知ディスプレイ上に）表示するための、及び／又は、ユーザ入力を（例えば、タッチ感知ディスプレイ、タッチ感知面、又は、ノブ若しくはボタンなどの物理的／機械的制御部を介して）受信するための面積が制限されている、低減されたサイズのデバイス上で、通常であればユーザによってアクセスすることが不可能であり得る追加のデバイス機能への、ユーザのアクセスが可能となる。
【００５３】
本明細書及び特許請求の範囲で使用されるように、用語「触知出力」は、ユーザの触覚でユーザによって検出されることになる、デバイスの従前の位置に対するそのデバイスの物理的変位、デバイスの構成要素（例えば、タッチ感知面）の、そのデバイスの別の構成要素（例えば、筐体）に対する物理的変位、又は、デバイスの質量中心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面（例えば、ユーザの手の指、手のひら、又は他の部分）に接触している状況では、物理的変位によって生成された触知出力は、そのデバイス又はデバイスの構成要素の物理的特性の認識される変化に相当する触感として、ユーザによって解釈されることになる。例えば、タッチ感知面（例えば、タッチ感知ディスプレイ又はトラックパッド）の移動は、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として、任意選択的に解釈される。いくつかの場合、ユーザの動作により物理的に押された（例えば、変位された）タッチ感知面に関連付けられた物理アクチュエータボタンの移動がない時でさえ、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じる。別の例として、タッチ感知面の移動は、タッチ感知面の平滑度に変化がない場合であっても、ユーザによって、そのタッチ感知面の「粗さ」として、任意選択的に解釈又は感知される。そのようなユーザによるタッチの解釈は、ユーザの個人的な感覚認知に左右されるが、大多数のユーザに共通する、多くのタッチの感覚認知が存在する。したがって、触知出力が、ユーザの特定の感覚認知（例えば、「アップクリック」「ダウンクリック」、「粗さ」）に対応するものと記述される場合、別途記載のない限り、生成された触知出力は、典型的な（又は、平均的な）ユーザの記述された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。
【００５４】
デバイス１００は、ポータブル多機能デバイスの一例に過ぎず、デバイス１００は、任意選択的に、示されているものよりも多くの構成要素又は少ない構成要素を有するものであり、任意選択的に、２つ以上の構成要素を組合せるものであり、又は、任意選択的に、それらの構成要素の異なる構成若しくは配置を有するものであることを理解されたい。図１Ａに示す様々な構成要素は、１つ以上の信号処理回路及び／又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアの両方の組合せで実施される。
【００５５】
メモリ１０２は、任意選択的に、高速ランダムアクセスメモリを含み、また任意選択的に、１つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステートメモリデバイスなどの不揮発性メモリを含む。メモリコントローラ１２２は、任意選択的に、デバイス１００の他の構成要素によるメモリ１０２へのアクセスを制御する。
【００５６】
周辺機器インタフェース１１８は、デバイスの入力及び出力周辺機器をＣＰＵ１２０及びメモリ１０２に結合するために使用することができる。１つ以上のプロセッサ１２０は、メモリ１０２に記憶された様々なソフトウェアプログラム及び／又は命令セットを動作させる、又は実行して、デバイス１００のための様々な機能を実行し、データを処理する。いくつかの実施形態では、周辺機器インタフェース１１８、ＣＰＵ１２０、及びメモリコントローラ１２２は、任意選択的に、チップ１０４などの単一のチップ上で実施される。いくつかの他の実施形態では、それらは別々のチップ上に任意選択的に実装される。
【００５７】
ＲＦ（radio frequency）（無線周波数）回路１０８は、電磁信号とも呼ばれるＲＦ信号を送受信する。ＲＦ回路１０８は、電気信号を電磁信号に、又は電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。ＲＦ回路１０８は、任意選択的に、これらの機能を実行するための周知の回路を含み、それらの回路としては、限定するものではないが、アンテナシステム、ＲＦ送受信機、１つ以上の増幅器、同調器、１つ以上の発振器、デジタル信号プロセッサ、ＣＯＤＥＣチップセット、加入者識別モジュール（subscriber identity module、ＳＩＭ）カード、メモリなどが挙げられる。ＲＦ回路１０８は、任意選択的に、ワールドワイドウェブ（World Wide Web、ＷＷＷ）とも呼ばれるインターネット、イントラネット、並びに／又はセルラー電話ネットワーク、無線ローカルエリアネットワーク（local area network、ＬＡＮ）及び／若しくはメトロポリタンエリアネットワーク（metropolitan area network、ＭＡＮ）などの無線ネットワークなどのネットワークと、また他のデバイスと、無線通信によって通信する。ＲＦ回路１０８は、任意選択的に、短距離通信無線機などによって近距離通信（near field communication、ＮＦＣ）フィールドを検出するよく知られている回路を含む。無線通信は、任意選択的に、それだけに限定されるものではないが、動き通信用のグローバルシステム（Global System for Mobile Communications、ＧＳＭ）、拡張データＧＳＭ環境（Enhanced Data GSM Environment、ＥＤＧＥ）、高速ダウンリンクパケットアクセス（high-speed downlink packet access、ＨＳＤＰＡ）、高速アップリンクパケットアクセス（high-speed uplink packet access、ＨＳＵＰＡ）、エボリューションデータオンリ（Evolution, Data-Only、ＥＶ−ＤＯ）、ＨＳＰＡ、ＨＳＰＡ＋、デュアルセルＨＳＰＡ（Dual-Cell HSPA、ＤＣ−ＨＳＰＤＡ）、ロングタームエボリューション（long term evolution、ＬＴＥ）、近距離通信（ＮＦＣ）、広帯域符号分割多元接続（wideband code division multiple access、Ｗ−ＣＤＭＡ）、符号分割多元接続（code division multiple access、ＣＤＭＡ）、時分割多元接続（time division multiple access、ＴＤＭＡ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｂｌｕｅｔｏｏｔｈローエネルギー（Bluetooth Low Energy、ＢＴＬＥ（登録商標））、ワイヤレスフィデリティ（Wireless Fidelity、Ｗｉ−Ｆｉ（登録商標））（例えば、ＩＥＥＥ  ８０２．１１ａ、ＩＥＥＥ  ８０２．１１ｂ、ＩＥＥＥ  ８０２．１１ｇ、ＩＥＥＥ  ８０２．１１ｎ、及び／若しくはＩＥＥＥ  ８０２．１１ａｃ）、ボイスオーバインターネットプロトコル（voice over Internet Protocol、ＶｏＩＰ）、Ｗｉ−ＭＡＸ（登録商標）、電子メール用プロトコル（例えば、インターネットメッセージアクセスプロトコル（Internet message access protocol、ＩＭＡＰ）及び／若しくはポストオフィスプロトコル（post office protocol、ＰＯＰ））、インスタントメッセージング（例えば、拡張可能なメッセージング及びプレゼンスプロトコル（extensible messaging and presence protocol、ＸＭＰＰ）、インスタントメッセージング及びプレゼンスレベレイジングエクステンションのためのセッション開始プロトコル（Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions、ＳＩＭＰＬＥ）、インスタントメッセージング及びプレゼンスサービ���（Instant Messaging and Presence Service、ＩＭＰＳ））、並びに／若しくはショートメッセージサービス（Short Message Service、ＳＭＳ）、又は本明細書の出願日の時点でまだ開発されていない通信プロトコルを含む任意の他の適した通信プロトコルを含む、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
【００５８】
オーディオ回路１１０、スピーカ１１１、及びマイクロフォン１１３は、ユーザとデバイス１００との間のオーディオインタフェースを提供する。オーディオ回路１１０は、周辺機器インタフェース１１８からオーディオデータを受信し、このオーディオデータを電気信号に変換し、この電気信号をスピーカ１１１に伝送する。スピーカ１１１は、電気信号を人間の可聴音波に変換する。また、オーディオ回路１１０は、マイクロフォン１１３によって音波から変換された電気信号を受信する。オーディオ回路１１０は、電気信号をオーディオデータに変換し、このオーディオデータを処理のために周辺機器インタフェース１１８に伝送する。オーディオデータは、任意選択的に、周辺機器インタフェース１１８によって、メモリ１０２及び／若しくはＲＦ回路１０８から取得され、かつ／又はメモリ１０２及び／若しくはＲＦ回路１０８に伝送される。いくつかの実施形態では、オーディオ回路１１０はまた、ヘッドセットジャック（例えば、図２の２１２）を含む。ヘッドセットジャックは、オーディオ回路１１０と、出力専用ヘッドホン又は出力（例えば片耳又は両耳用のヘッドホン）及び入力（例えばマイクロフォン）の両方を有するヘッドセットなどの着脱可能なオーディオ入出力周辺機器との間のインタフェースを提供する。
【００５９】
Ｉ／Ｏサブシステム１０６は、タッチスクリーン１１２及び他の入力コントロールデバイス１１６などのデバイス１００上の入出力周辺機器を、周辺機器インタフェース１１８に結合する。Ｉ／Ｏサブシステム１０６は、任意選択的に、ディスプレイコントローラ１５６、光センサコントローラ１５８、強度センサコントローラ１５９、触覚フィードバックコントローラ１６１、及び他の入力若しくは制御デバイスのための１つ以上の入力コントローラ１６０を含む。１つ以上の入力コントローラ１６０は、他の入力コントロールデバイス１１６からの電気信号の受信／他の入力コントロールデバイス１１６への電気信号の送信を行う。他の入力コントロールデバイス１１６は、任意選択的に、物理ボタン（例えば、プッシュボタン、ロッカボタンなど）、ダイヤル、スライダスイッチ、ジョイスティック、クリックホイールなどを含む。いくつかの代替実施形態では、入力コントローラ１６０は、任意選択的に、キーボード、赤外線ポート、ＵＳＢポート、及びマウスなどのポインタデバイスのうちのいずれかに結合される（又はいずれにも結合されない）。１つ以上のボタン（例えば、図２の２０８）は、任意選択的に、スピーカ１１１及び／又はマイクロフォン１１３の音量コントロールのための上下ボタンを含む。１つ以上のボタンは、任意選択的に、プッシュボタン（例えば、図２の２０６）を含む。
【００６０】
全体として参照により本明細書に組み込まれている、２００５年１２月２３日出願の米国特許出願第１１／３２２，５４９号、「Ｕｎｌｏｃｋｉｎｇ  ａ  Ｄｅｖｉｃｅ  ｂｙ  Ｐｅｒｆｏｒｍｉｎｇ  Ｇｅｓｔｕｒｅｓ  ｏｎ  ａｎ  Ｕｎｌｏｃｋ  Ｉｍａｇｅ」、米国特許第７，６５７，８４９号に記載されているように、プッシュボタンの素早い押下は、任意選択的に、タッチスクリーン１１２のロックを係合解除し、又は任意選択的に、タッチスクリーン上のジェスチャを使用してデバイスをアンロックするプロセスを開始する。プッシュボタン（例えば、２０６）のより長い押下は、任意選択的に、デバイス１００への電力をオン又はオフにする。ボタンのうちの１つ以上の機能性は、任意選択的に、ユーザによってカスタマイズ可能である。タッチスクリーン１１２は、仮想又はソフトボタン及び１つ以上のソフトキーボードを実施するために使用される。
【００６１】
タッチ感知ディスプレイ１１２は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ１５６は、タッチスクリーン１１２からの電気信号の受信及び／又はタッチスクリーン１１２への電気信号の送信を行う。タッチスクリーン１１２は、ユーザに対して視覚出力を表示する。この視覚出力は、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組合せ（総称して「グラフィック」）を任意選択的に含む。いくつかの実施形態では、視覚出力の一部又はすべては、任意選択的に、ユーザインタフェースオブジェクトに対応する。
【００６２】
タッチスクリーン１１２は、触覚及び／又は触知接触に基づいてユーザからの入力を受信するタッチ感知面、センサ、又は１組のセンサを有する。タッチスクリーン１１２及びディスプレイコントローラ１５６は（あらゆる関連モジュール及び／又はメモリ１０２内の命令セットとともに）、タッチスクリーン１１２上の接触（及び接触のあらゆる動き又は中断）を検出し、検出した接触を、タッチスクリーン１１２上に表示されるユーザインタフェースオブジェクトとの対話（例えば、１つ以上のソフトキー、アイコン、ウェブページ、又は画像）に変換する。例示的な実施形態では、タッチスクリーン１１２とユーザとの間の接触点は、ユーザの指に対応する。
【００６３】
タッチスクリーン１１２は、任意選択的に、ＬＣＤ（液晶ディスプレイ）技術、ＬＰＤ（発光ポリマーディスプレイ）技術、又はＬＥＤ（発光ダイオード）技術を使用するが、他の実施形態では、他のディスプレイ技術も使用される。タッチスクリーン１１２及びディスプレイコントローラ１５６は、任意選択的に、それだけに限定されるものではないが、容量性、抵抗性、赤外線、及び表面音波の技術、並びにタッチスクリーン１１２との１つ以上の接触点を判定する他の近接センサアレイ又は他の要素を含む、現在知られている又は今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触及びそのあらゆる動き又は中断を検出する。例示的な実施形態では、カリフォルニア州クパチーノのＡｐｐｌｅ  Ｉｎｃ．からのｉＰｈｏｎｅ（登録商標）及びｉＰｏｄ  Ｔｏｕｃｈ（登録商標）に見られるものなどの、投影型相互静電容量感知技術が使用される。
【００６４】
タッチスクリーン１１２のいくつかの実施形態におけるタッチ感知ディスプレイは、任意選択的に、それぞれ全体として参照により本明細書に組み込まれている、米国特許第６，３２３，８４６号（Ｗｅｓｔｅｒｍａｎら）、第６，５７０，５５７号（Ｗｅｓｔｅｒｍａｎら）、及び／若しくは第６，６７７，９３２号（Ｗｅｓｔｅｒｍａｎ）、並びに／又は米国特許公報第２００２／００１５０２４Ａ１号という米国特許に記載されているマルチタッチ感知タッチパッドに類似している。しかしながら、タッチスクリーン１１２はデバイス１００からの視覚出力を表示するのに対して、タッチ感知タッチパッドは視覚出力を提供しない。
【００６５】
タッチスクリーン１１２のいくつかの実施形態におけるタッチ感知ディスプレイは、（１）２００６年５月２日出願の米国特許出願第１１／３８１，３１３号、「Ｍｕｌｔｉｐｏｉｎｔ  Ｔｏｕｃｈ  Ｓｕｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒ」、（２）２００４年５月６日出願の米国特許出願第１０／８４０，８６２号、「Ｍｕｌｔｉｐｏｉｎｔ  Ｔｏｕｃｈｓｃｒｅｅｎ」、（３）２００４年７月３０日出願の米国特許出願第１０／９０３，９６４号、「Ｇｅｓｔｕｒｅｓ  Ｆｏｒ  Ｔｏｕｃｈ  Ｓｅｎｓｉｔｉｖｅ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅｓ」、（４）２００５年１月３１日出願の米国特許出願第１１／０４８，２６４号、「Ｇｅｓｔｕｒｅｓ  Ｆｏｒ  Ｔｏｕｃｈ  Ｓｅｎｓｉｔｉｖｅ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅｓ」、（５）２００５年１月１８日出願の米国特許出願第１１／０３８，５９０号、「Ｍｏｄｅ−Ｂａｓｅｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅｓ  Ｆｏｒ  Ｔｏｕｃｈ  Ｓｅｎｓｉｔｉｖｅ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅｓ」、（６）２００５年９月１６日出願の米国特許出願第１１／２２８，７５８号、「Ｖｉｒｔｕａｌ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅ  Ｐｌａｃｅｍｅｎｔ  Ｏｎ  Ａ  Ｔｏｕｃｈ  Ｓｃｒｅｅｎ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ」、（７）２００５年９月１６日出願の米国特許出願第１１／２２８，７００号、「Ｏｐｅｒａｔｉｏｎ  Ｏｆ  Ａ  Ｃｏｍｐｕｔｅｒ  Ｗｉｔｈ  Ａ  Ｔｏｕｃｈ  Ｓｃｒｅｅｎ  Ｉｎｔｅｒｆａｃｅ」、（８）２００５年９月１６日出願の米国特許出願第１１／２２８，７３７号、「Ａｃｔｉｖａｔｉｎｇ  Ｖｉｒｔｕａｌ  Ｋｅｙｓ  Ｏｆ  Ａ  Ｔｏｕｃｈ−Ｓｃｒｅｅｎ  Ｖｉｒｔｕａｌ  Ｋｅｙｂｏａｒｄ」、及び（９）２００６年３月３日出願の米国特許出願第１１／３６７，７４９号、「Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎａｌ  Ｈａｎｄ−Ｈｅｌｄ  Ｄｅｖｉｃｅ」という出願に記載されている。これらの出願はすべて、全体として参照により本明細書に組み込まれている。
【００６６】
タッチスクリーン１１２は、任意選択的に、１００ｄｐｉを超えるビデオ解像度を有する。いくつかの実施形態では、タッチスクリーンは、約１６０ｄｐｉのビデオ解像度を有する。ユーザは、任意選択的に、スタイラス、指などの任意の適した物体又は付属物を使用して、タッチスクリーン１１２に接触する。いくつかの実施形態では、ユーザインタフェースは、指ベースの接触及びジェスチャを主に扱うように設計されるが、これは、タッチスクリーン上の指の接触面積がより大きいため、スタイラスベースの入力ほど精密でない可能性がある。いくつかの実施形態では、デバイスは、指に基づく粗い入力を、ユーザによって所望されているアクションを実行するための、正確なポインタ／カーソルの位置又はコマンドに変換する。
【００６７】
いくつかの実施形態では、タッチスクリーンに加えて、デバイス１００は、任意選択的に、特定の機能をアクティブ化又は非アクティブ化するためのタッチパッド（図示せず）を含む。いくつかの実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知エリアである。タッチパッドは、任意選択的に、タッチスクリーン１１２又はタッチスクリーンによって形成されるタッチ感知面の拡張部とは別個のタッチ感知面である。
【００６８】
デバイス１００は、また、様々なコンポーネントに電力を供給する電力システム１６２を含む。電力システム１６２は、任意選択的に、電力管理システム、１つ以上の電源（例えば、バッテリ、交流（ＡＣ））、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ（例えば、発光ダイオード（ＬＥＤ））、並びにポータブルデバイス内での電力の生成、管理、及び分配に関連付けられた任意の他の構成要素を含む。
【００６９】
また、デバイス１００は、任意選択的に、１つ以上の光センサ１６４を含む。図１Ａは、Ｉ／Ｏサブシステム１０６内の光センサコントローラ１５８に結合された光センサを示す。光センサ１６４は、任意選択的に、電荷結合デバイス（charge-coupled device、ＣＣＤ）又は相補的金属酸化物半導体（complementary metal-oxide semiconductor、ＣＭＯＳ）フォトトランジスタを含む。光センサ１６４は、１つ以上のレンズを通って投影された環境からの光を受信し、その光を、画像を表すデータに変換する。光センサ１６４は、撮像モジュール１４３（カメラモジュールとも呼ばれる）と連動して、任意選択的に、静止画像又はビデオをキャプチャする。いくつかの実施形態では、光センサは、デバイスの前面にあるタッチスクリーンディスプレイ１１２とは反対に、デバイス１００の裏面に位置し、したがってタッチスクリーンディスプレイは、静止画像及び／又はビデオ画像の取得のためのビューファインダとして使用することが有効である。いくつかの実施形態では、光センサは、デバイスの前面には位置し、したがってユーザの画像が、任意選択的に、テレビ会議のために入手され、ユーザは、他のテレビ会議参加者をタッチスクリーンディスプレイ上で見る。いくつかの実施形態では、光センサ１６４の位置は、ユーザによって（例えば、デバイスハウジング内でレンズ及びセンサを回転させることによって）変更することができ、したがって単一の光センサ１６４が、タッチスクリーンディスプレイとともに、テレビ会議にも静止画像及び／又はビデオ画像の取得にも使用される。
【００７０】
また、デバイス１００は、任意選択的に、１つ以上の接触強度センサ１６５を含む。図１Ａは、Ｉ／Ｏサブシステム１０６内の強度センサコントローラ１５９に結合された接触強度センサを示す。接触強度センサ１６５は、任意選択的に、１つ以上のピエゾ抵抗ひずみゲージ、容量性力センサ、電気力センサ、圧電力センサ、光学力センサ、容量性タッチ感知面、又は他の強度センサ（例えば、タッチ感知面上の接触の力（若しくは圧力）を測定するために使用されるセンサ）を含む。接触強度センサ１６５は、接触強度情報（例えば、圧力情報又は圧力情報に対するプロキシ）を環境から受信する。いくつかの実施形態では、少なくとも１つの接触強度センサは、タッチ感知面（例えばタッチ感知ディスプレイシステム１１２）と並置される、又はそれに近接している。いくつかの実施形態では、少なくとも１つの接触強度センサは、デバイス１００の前面に位置するタッチスクリーンディスプレイ１１２とは反対に、デバイス１００の裏面に位置する。
【００７１】
また、デバイス１００は、任意選択的に、１つ以上の近接センサ１６６を含む。図１Ａは、周辺機器インタフェース１１８に結合された近接センサ１６６を示す。代わりに、近接センサ１６６は、任意選択的に、Ｉ／Ｏサブシステム１０６内の入力コントローラ１６０に結合される。近接センサ１６６は、任意選択的に、全体として参照により本明細書に組み込まれている、米国特許出願第１１／２４１，８３９号、「Ｐｒｏｘｉｍｉｔｙ  Ｄｅｔｅｃｔｏｒ  Ｉｎ  Ｈａｎｄｈｅｌｄ  Ｄｅｖｉｃｅ」、第１１／２４０，７８８号、「Ｐｒｏｘｉｍｉｔｙ  Ｄｅｔｅｃｔｏｒ  Ｉｎ  Ｈａｎｄｈｅｌｄ  Ｄｅｖｉｃｅ」第１１／６２０，７０２号、「Ｕｓｉｎｇ  Ａｍｂｉｅｎｔ  Ｌｉｇｈｔ  Ｓｅｎｓｏｒ  Ｔｏ  Ａｕｇｍｅｎｔ  Ｐｒｏｘｉｍｉｔｙ  Ｓｅｎｓｏｒ  Ｏｕｔｐｕｔ」、第１１／５８６，８６２号、「Ａｕｔｏｍａｔｅｄ  Ｒｅｓｐｏｎｓｅ  Ｔｏ  Ａｎｄ  Ｓｅｎｓｉｎｇ  Ｏｆ  Ｕｓｅｒ  Ａｃｔｉｖｉｔｙ  Ｉｎ  Ｐｏｒｔａｂｌｅ  Ｄｅｖｉｃｅｓ」、及び同第１１／６３８，２５１号、「Ｍｅｔｈｏｄｓ  Ａｎｄ  Ｓｙｓｔｅｍｓ  Ｆｏｒ  Ａｕｔｏｍａｔｉｃ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｏｆ  Ｐｅｒｉｐｈｅｒａｌｓ」で説明されるように機能するものであり、これらの出願は、全体が参照により本明細書に組み込まれる。いくつかの実施形態では、近接センサは、多機能デバイスがユーザの耳付近に配置されたとき（例えば、ユーザが電話をかけているとき）、タッチスクリーン１１２をオフにして無効化する。
【００７２】
また、デバイス１００は、任意選択的に、１つ以上の触知出力生成器１６７を含む。図１Ａは、Ｉ／Ｏサブシステム１０６内の触覚フィードバックコントローラ１６１に結合された触知出力生成器を示す。触知出力生成器１６７は、任意選択的に、スピーカ若しくは他のオーディオ構成要素などの１つ以上の電気音響デバイス、及び／又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力生成構成要素（例えば、デバイス上で電気信号を触知出力に変換する構成要素）などのエネルギを直線の動きに変換する電気機械デバイスを含む。接触強度センサ１６５は、触覚フィードバックモジュール１３３から触知フィードバック生成命令を受信し、デバイス１００のユーザが感知することが可能な触知出力をデバイス１００上に生成する。いくつかの実施形態では、少なくとも１つの触知出力生成器は、タッチ感知面（例えば、タッチ感知ディスプレイシステム１１２）に配置されているか、又はそれに近接しており、任意選択的に、タッチ感知面を垂直方向（例えば、デバイス１００の表面の内／外）に、又は水平方向（例えば、デバイス１００の表面と同じ平面内の前後）に動かすことによって、触知出力を生成する。いくつかの実施形態では、少なくとも１つの触知出力生成器センサは、デバイス１００の前面に位置するタッチスクリーンディスプレイ１１２とは反対に、デバイス１００の裏面に位置する。
【００７３】
また、デバイス１００は、任意選択的に、１つ以上の加速度計１６８を含む。図１Ａは、周辺機器インタフェース１１８に結合された加速度計１６８を示す。代わりに、加速度計１６８は、任意選択的に、Ｉ／Ｏサブシステム１０６内の入力コントローラ１６０に結合される。加速度計１６８は、任意選択的に、どちらも全体として参照により本明細書に組み込まれている、米国特許公開第２００５０１９００５９号、「Ａｃｃｅｌｅｒａｔｉｏｎ−ｂａｓｅｄ  Ｔｈｅｆｔ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｐｏｒｔａｂｌｅ  Ｅｌｅｃｔｒｏｎｉｃ  Ｄｅｖｉｃｅｓ」、及び米国特許公開第２００６００１７６９２号、「Ｍｅｔｈｏｄｓ  Ａｎｄ  Ａｐｐａｒａｔｕｓｅｓ  Ｆｏｒ  Ｏｐｅｒａｔｉｎｇ  Ａ  Ｐｏｒｔａｂｌｅ  Ｄｅｖｉｃｅ  Ｂａｓｅｄ  Ｏｎ  Ａｎ  Ａｃｃｅｌｅｒｏｍｅｔｅｒ」に記載されているように機能する。いくつかの実施形態では、情報は、１つ以上の加速度計から受信したデータの分析に基づいて、ポートレートビュー又はランドスケープビューでタッチスクリーンディスプレイ上に表示される。デバイス１００は任意選択で、加速度計（単数又は複数）１６８に加えて、磁気計（図示せず）並びにデバイス１００の位置及び向き（例えば、縦向き又は横向き）に関する情報を取得するためのＧＰＳ（又はＧＬＯＮＡＳＳ又は他のグローバルナビゲーションシステム）受信機（図示せず）を含む。
【００７４】
いくつかの実施形態では、メモリ１０２内に記憶されているソフトウェア構成要素は、オペレーティングシステム１２６、通信モジュール（又は命令セット）１２８、接触／動きモジュール（又は命令セット）１３０、グラフィックモジュール（又は命令セット）１３２、テキスト入力モジュール（又は命令セット）１３４、全地球測位システム（Global Positioning System、ＧＰＳ）モジュール（又は命令セット）１３５、及びアプリケーション（又は命令セット）１３６を含む。更に、いくつかの実施形態では、メモリ１０２（図１Ａ）又は３７０（図３）は、図１Ａ及び図３に示すように、デバイス／グローバル内部状態１５７を記憶する。デバイス／グローバル内部状態１５７は、現在アクティブ状態のアプリケーションがある場合に、どのアプリケーションがアクティブであるかを示す、アクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチスクリーンディスプレイ１１２の様々な領域を占有しているかを示すディスプレイ状態、デバイスの様々なセンサ及び入力コントロールデバイス１１６から入手した情報を含むセンサ状態、並びにデバイスの場所及び／又は姿勢に関する場所情報のうちの１つ以上を含む。
【００７５】
オペレーティングシステム１２６（例えば、Ｄａｒｗｉｎ（登録商標）、ＲＴＸＣ（登録商標）、ＬＩＮＵＸ（登録商標）、ＵＮＩＸ（登録商標）、ＯＳ  Ｘ（登録商標）、ｉＯＳ（登録商標）、ＷＩＮＤＯＷＳ（登録商標）、又はＶｘＷｏｒｋｓ（登録商標）などの組み込み型オペレーティングシステム）は、通常のシステムタスク（例えば、メモリ管理、記憶デバイスの制御、電力管理など）を制御及び管理する様々なソフトウェア構成要素及び／又はドライバを含み、様々なハードウェアとソフトウェア構成要素との間の通信を容易にする。
【００７６】
通信モジュール１２８は、１つ以上の外部ポート１２４を介して他のデバイスとの通信を容易にし、ＲＦ回路１０８及び／又は外部ポート１２４が受信したデータを処理するための様々なソフトウェア構成要素をも含む。外部ポート１２４（例えばユニバーサルシリアルバス（Universal Serial Bus、ＵＳＢ）、ＦＩＲＥＷＩＲＥ（登録商標）など）は、直接的に、又はネットワーク（例えばインターネット、無線ＬＡＮなど）を介して間接的に、他のデバイスに連結するように適合されている。いくつかの実施形態では、外部ポートは、ｉＰｏｄ（登録商標）（Ａｐｐｌｅ  Ｉｎｃ．の商標）デバイス上で使用される３０ピンコネクタと同じ若しくは類似であり、かつ／又はそれに適合しているマルチピン（例えば、３０ピン）コネクタである。
【００７７】
接触／動きモジュール１３０は、任意選択的に、タッチスクリーン１１２（ディスプレイコントローラ１５６と連動して）及び他のタッチ感知デバイス（例えば、タッチパッド又は物理クリックホイール）との接触を検出する。接触／動きモジュール１３０は、接触が生じたかを判定すること（例えば、指を下ろすイベントを検出すること）、接触の強度（例えば、接触の力若しくは圧力、又は接触の力若しくは圧力の代替物）を判定すること、接触の移動が存在するかを判定し、タッチ感知面を横断する移動を追跡すること（例えば、指をドラッグする１つ以上のイベントを検出すること）、及び接触が停止したかを判定すること（例えば、指を上げるイベント又は接触の中断を検出すること）などの、接触の検出に関する様々な動作を実行する、様々なソフトウェア構成要素を含む。接触／動きモジュール１３０は、タッチ感知面から接触データを受信する。一連の接触データによって表される、接触点の移動を判定することは、任意選択的に、接触点の速さ（大きさ）、速度（大きさ及び方向）、及び／又は加速度（大きさ及び／又は方向の変化）を判定することを含む。これらの動作は、任意選択的に、単一の接触（例えば、１本の指の接触）又は複数の同時接触（例えば、「マルチタッチ」／複数の指の接触）に適用される。いくつかの実施形態では、接触／動きモジュール１３０及びディスプレイコントローラ１５６は、タッチパッド上の接触を検出する。
【００７８】
いくつかの実施形態では、接触／動きモジュール１３０は、１つ以上の強度閾値のセットを使用して、ユーザによって操作が実行されたかどうかを判定する（例えば、ユーザがアイコン上で「クリック」したかどうかを判定する）。いくつかの実施形態では、強度閾値の少なくとも１つのサブセットが、ソフトウェアパラメータに従って判定される（例えば、強度閾値は、特定の物理アクチュエータのアクティブ化閾値によって判定されるのではなく、デバイス１００の物理ハードウェアを変化させることなく調整することができる）。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイハードウェアを変化させることなく、広範囲の所定の閾値のうちのいずれかに設定することができる。加えて、いくつかの実装形態では、デバイスのユーザは、１組の強度閾値の１つ以上を調整するソフトウェア設定が提供される（例えば、システムレベルのクリック「強度」パラメータによって、個々の強度閾値を調整すること、及び／又は複数の強度閾値を一度に調整することによる）。
【００７９】
接触／動きモジュール１３０は、任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターンを有する（例えば検出される接触の動き、タイミング、及び／又は強度が異なる）。したがって、ジェスチャは、任意選択的に、特定の接触パターンを検出することによって検出される。例えば、指タップジェスチャを検出することは、指ダウンイベントを検出し、それに続いて指ダウンイベントと同じ位置（又は実質上同じ位置）（例えば、アイコンの位置）で指アップ（リフトオフ）イベントを検出することを含む。別の例として、タッチ感知面上で指スワイプジェスチャを検出することは、指ダウンイベントを検出し、それに続いて１つ以上の指ドラッグイベントを検出し、その後それに続いて指アップ（リフトオフ）イベントを検出することを含む。
【００８０】
グラフィックモジュール１３２は、表示されるグラフィックの視覚的な影響（例えば、輝度、透明度、彩度、コントラスト、又は他の視覚的特性）を変化させる構成要素を含めて、タッチスクリーン１１２又は他のディスプレイ上にグラフィックをレンダリング及び表示する様々な知られているソフトウェア構成要素を含む。本明細書では、「グラフィック」という用語は、それだけに限定されるものではないが、文字、ウェブページ、アイコン（ソフトキーを含むユーザインタフェースオブジェクトなど）、デジタル画像、ビデオ、アニメーションなどを含む、ユーザに表示することができる任意のオブジェクトを含む。
【００８１】
いくつかの実施形態では、グラフィックモジュール１３２は、使用されることになるグラフィックを表すデータを記憶する。各グラフィックには、任意選択的に、対応するコードが割り当てられる。グラフィックモジュール１３２は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィック特性データと共に、表示されることとなるグラフィックを指定する１つ以上のコードを受信し、次にディスプレイコントローラ１５６に出力するスクリーンの画像データを生成する。
【００８２】
触覚フィードバックモジュール１３３は、デバイス１００とのユーザ対話に応じて、デバイス１００上の１つ以上の場所で触知出力を生成するために、触知出力生成器（単数又は複数）１６７によって使用される命令を生成するための、様々なソフトウェア構成要素を含む。
【００８３】
テキスト入力モジュール１３４は、任意選択で、グラフィックモジュール１３２の構成要素であり、様々なアプリケーション（例えば、連絡先１３７、電子メール１４０、ＩＭ１４１、ブラウザ１４７、及びテキスト入力を必要とする任意の他のアプリケーション）でテキストを入力するためのソフトキーボードを提供する。
【００８４】
ＧＰＳモジュール１３５は、デバイスの位置を判定し、この情報を様々なアプリケーションで使用するために（例えば、位置に基づくダイヤル発呼で使用するために電話１３８へ、画像／ビデオのメタデータとしてカメラ１４３へ、並びに、天気ウィジェット、地域のイエローページウィジェット、及び地図／ナビゲーションウィジェットなどの、位置に基づくサービスを提供するアプリケーションへ）提供する。
【００８５】
アプリケーション１３６は、任意選択的に、以下のモジュール（又は命令セット）又はそれらのサブセット若しくはスーパーセットを含む。
●連絡先モジュール１３７（アドレス帳又は連絡先リストと呼ばれることもある）、
●電話モジュール１３８、
●テレビ会議モジュール１３９、
●電子メールクライアントモジュール１４０、
●インスタントメッセージング（Instant messaging、ＩＭ）モジュール１４１、
●トレーニングサポートモジュール１４２、
●静止画像及び／又はビデオ画像用のカメラモジュール１４３、
●画像管理モジュール１４４、
●ビデオプレーヤモジュール、
●音楽プレーヤモジュール、
●ブラウザモジュール１４７、
●カレンダモジュール１４８、
●任意選択的に気象ウィジェット１４９−１、株価ウィジェット１４９−２、計算機ウィジェット１４９−３、アラーム時計ウィジェット１４９−４、辞書ウィジェット１４９−５、及びユーザによって入手された他のウィジェット、並びにユーザ作成ウィジェット１４９−６のうちの１つ以上を含むウィジェットモジュール１４９、
●ユーザ作成ウィジェット１４９−６を作るウィジェットクリエータモジュール１５０、
●検索モジュール１５１、
●ビデオプレーヤモジュール及び音楽プレーヤモジュールを一体化したビデオ及び音楽プレーヤモジュール１５２、
●メモモジュール１５３、
●地図モジュール１５４、並びに／又は、
●オンラインビデオモジュール１５５。
【００８６】
任意選択的にメモリ１０２に記憶される他のアプリケーション１３６の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、ＪＡＶＡ（登録商標）対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。
【００８７】
タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、連絡先モジュール１３７は、任意選択的に、アドレス帳に名前（単数又は複数）を追加すること、アドレス帳から名前（単数又は複数）を削除すること、電話番号（単数又は複数）、電子メールアドレス（単数又は複数）、住所（単数又は複数）、又は他の情報を名前に関連付けること、画像を名前に関連付けること、名前を分類して並べ替えること、電話番号又は電子メールアドレスを提供して、電話１３８、テレビ会議モジュール１３９、電子メール１４０、又はＩＭ１４１による通信を開始及び／又は促進することなどを含めて、アドレス帳又は連絡先リスト（例えば、メモリ１０２又はメモリ３７０内の連絡先モジュール１３７のアプリケーション内部状態１９２内に記憶される）を管理するために使用される。
【００８８】
ＲＦ回路１０８、オーディオ回路１１０、スピーカ１１１、マイクロフォン１１３、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、電話モジュール１３８は、任意選択的に、電話番号に対応する文字シーケンスの入力、連絡先モジュール１３７内の１つ以上の電話番号へのアクセス、入力された電話番号の修正、それぞれの電話番号のダイヤル、会話の実施、会話が終了したときの通話停止又はハングアップのために使用される。前述したように、無線通信は、任意選択的に、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
【００８９】
ＲＦ回路１０８、オーディオ回路１１０、スピーカ１１１、マイクロフォン１１３、タッチスクリーン１１２、ディスプレイコントローラ１５６、光センサ１６４、光センサコントローラ１５８、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、連絡先モジュール１３７、及び電話モジュール１３８と連動して、テレビ会議モジュール１３９は、ユーザ命令に従ってユーザと１人以上の他の参加者との間のテレビ会議を開始、実行、及び終了するための実行可能な命令を含む。
【００９０】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、電子メールクライアントモジュール１４０は、ユーザ命令に応じて電子メールを作成、送信、受信、及び管理するための実行可能な命令を含む。画像管理モジュール１４４と連動して、電子メールクライアントモジュール１４０は、カメラモジュール１４３で撮影された静止画像又はビデオ画像を有する電子メールの作成及び送信を非常に容易にする。
【００９１】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、インスタントメッセージングモジュール１４１は、インスタントメッセージに対応する文字シーケンスの入力、以前に入力された文字の修正、それぞれのインスタントメッセージの送信（例えば、電話通信ベースのインスタントメッセージ向けのショートメッセージサービス（Short Message Service、ＳＭＳ）若しくはマルチメディアメッセージサービス（Multimedia Message Service、ＭＭＳ）プロトコル、又はインターネットベースのインスタントメッセージ向けのＸＭＰＰ、ＳＩＭＰＬＥ、若しくはＩＭＰＳを使用する）、インスタントメッセージの受信、及び受信したインスタントメッセージの閲覧のための実行可能な命令を含む。いくつかの実施形態では、送信及び／又は受信されるインスタントメッセージは、任意選択的に、ＭＭＳ及び／又は拡張メッセージングサービス（Enhanced Messaging Service、ＥＭＳ）でサポートされるグラフィック、写真、オーディオファイル、ビデオファイル、及び／又は他の添付ファイルを含む。本明細書では、「インスタントメッセージング」とは、電話通信ベースのメッセージ（例えば、ＳＭＳ又はＭＭＳを使用して送信されるメッセージ）と、インターネットベースのメッセージ（例えば、ＸＭＰＰ、ＳＩＭＰＬＥ、又はＩＭＰＳを使用して送信されるメッセージ）との両方を指す。
【００９２】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、ＧＰＳモジュール１３５、地図モジュール１５４、及び音楽プレーヤモジュールと連動して、トレーニングサポートモジュール１４２は、トレーニング（例えば、時間、距離、及び／又はカロリー燃焼目標を有する）の作成、トレーニングセンサ（スポーツデバイス）との通信、トレーニングセンサデータの受信、トレーニングをモニタするために使用されるセンサの較正、トレーニングのための音楽の選択及び再生、並びに、トレーニングデータの表示、記憶、及び送信のための実行可能な命令を含む。
【００９３】
タッチスクリーン１１２、ディスプレイコントローラ１５６、光センサ１６４、光センサコントローラ１５８、接触／動きモジュール１３０、グラフィックモジュール１３２、及び画像管理モジュール１４４と連動して、カメラモジュール１４３は、静止画像若しくはビデオ（ビデオストリームを含む）のキャプチャ及びメモリ１０２内への記憶、静止画像若しくはビデオの特性の修正、又はメモリ１０２からの静止画像若しくはビデオの削除のための実行可能な命令を含む。
【００９４】
タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、及びカメラモジュール１４３と連動して、画像管理モジュール１４４は、静止画像及び／又はビデオ画像の配置、修正（例えば、編集）、あるいはその他の操作、ラベル付け、削除、提示（例えば、デジタルスライドショー又はアルバムにおける）、及び記憶のための実行可能な命令を含む。
【００９５】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、ブラウザモジュール１４７は、ウェブページ又はその一部分、並びにウェブページにリンクされた添付ファイル及び他のファイルの検索、リンク、受信、及び表示を含めて、ユーザ命令に従ってインターネットをブラウジングするための実行可能な命令を含む。
【００９６】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、電子メールクライアントモジュール１４０、及びブラウザモジュール１４７と連動して、カレンダモジュール１４８は、ユーザ命令に従ってカレンダ及びカレンダに関連付けられたデータ（例えば、カレンダ入力、やることリストなど）を作成、表示、修正、及び記憶するための実行可能な命令を含む。
【００９７】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、及びブラウザモジュール１４７と連動して、ウィジェットモジュール１４９は、任意選択的にユーザによってダウンロード及び使用されるミニアプリケーション（例えば、気象ウィジェット１４９−１、株価ウィジェット１４９−２、計算機ウィジェット１４９−３、アラーム時計ウィジェット１４９−４、及び辞書ウィジェット１４９−５）、又はユーザによって作成されるミニアプリケーション（例えば、ユーザ作成ウィジェット１４９−６）である。いくつかの実施形態では、ウィジェットは、ＨＴＭＬ（Hypertext Markup Language；ハイパーテキストマークアップ言語）ファイル、ＣＳＳ（Cascading Style Sheets；カスケーディングスタイルシート）ファイル、及びＪａｖａＳｃｒｉｐｔ（登録商標）ファイルを含む。いくつかの実施形態では、ウィジェットは、ＸＭＬ（Extensible Markup Language：拡張可能マークアップ言語）ファイル及びＪａｖａＳｃｒｉｐｔファイル（例えば、Ｙａｈｏｏ！ウィジェット）を含む。
【００９８】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、及びブラウザモジュール１４７と連動して、ウィジェットクリエータモジュール１５０は、任意選択的に、ウィジェットを作成する（例えば、ウェブページのユーザ指定部分をウィジェットにする）ために、ユーザによって使用される。
【００９９】
タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、検索モジュール１５１は、ユーザ命令に従って１つ以上の検索基準（例えば、１つ以上のユーザ指定検索語）に一致するメモリ１０２内の文字、音楽、サウンド、画像、ビデオ、及び／又は他のファイルを検索するための実行可能な命令を含む。
【０１００】
タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、オーディオ回路１１０、スピーカ１１１、ＲＦ回路１０８、及びブラウザモジュール１４７と連動して、ビデオ及び音楽プレーヤモジュール１５２は、ユーザがＭＰ３若しくはＡＡＣファイルなどの１つ以上のファイル形式で記憶されている記録された音楽及び他のサウンドファイルをダウンロード及び再生することを可能にする実行可能な命令、並びにビデオを表示、提示、又は他の方法で（例えば、タッチスクリーン１１２上又は外部ポート１２４を介して接続された外部ディスプレイ上に）再生するための実行可能な命令を含む。いくつかの実施形態では、デバイス１００は、任意選択的に、ｉＰｏｄ（Ａｐｐｌｅ社の商標）などのＭＰ３プレーヤの機能を含む。
【０１０１】
タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、及びテキスト入力モジュール１３４と連動して、メモモジュール１５３は、ユーザ命令に従ってメモ、やることリストなどを作成及び管理するための実行可能な命令を含む。
【０１０２】
ＲＦ回路１０８、タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、テキスト入力モジュール１３４、ＧＰＳモジュール１３５、及びブラウザモジュール１４７と連動して、地図モジュール１５４は、任意選択的に、ユーザ命令に従って、地図及び地図に関連付けられたデータ（例えば、運転方向、特定の場所又はその付近の店舗及び他の対象地点に関するデータ、並びに他の場所ベースのデータ）を受信、表示、修正、及び記憶するために使用される。
【０１０３】
タッチスクリーン１１２、ディスプレイコントローラ１５６、接触／動きモジュール１３０、グラフィックモジュール１３２、オーディオ回路１１０、スピーカ１１１、ＲＦ回路１０８、テキスト入力モジュール１３４、電子メールクライアントモジュール１４０、及びブラウザモジュール１４７と連動して、オンラインビデオモジュール１５５は、ユーザが特定のオンラインビデオへのアクセス、特定のオンラインビデオのブラウジング、受信（例えば、ストリーミング及び／又はダウンロードによる）、再生（例えば、タッチスクリーン上又は外部ポート１２４を介して接続された外部ディスプレイ上）、特定のオンラインビデオへのリンクを有する電子メールの送信、並びにＨ．２６４などの１つ以上のファイル形式のオンラインビデオの他の管理を行うことを可能にする命令を含む。いくつかの実施形態では、特定のオンラインビデオへのリンクを送信するために、電子メールクライアントモジュール１４０ではなく、インスタントメッセージングモジュール１４１が使用される。オンラインビデオアプリケーションについての追加の説明は、その内容が全体として参照により本明細書に組み込まれている、２００７年６月２０日出願の米国仮特許出願第６０／９３６，５６２号、「Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｐｌａｙｉｎｇ  Ｏｎｌｉｎｅ  Ｖｉｄｅｏｓ」、及び２００７年１２月３１日出願の米国特許出願第１１／９６８，０６７号、「Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｐｌａｙｉｎｇ  Ｏｎｌｉｎｅ  Ｖｉｄｅｏｓ」において見ることができる。
【０１０４】
上記で特定したモジュール及びアプリケーションはそれぞれ、前述した１つ以上の機能及び本出願に記載する方法（例えば、本明細書に記載するコンピュータにより実施される方法及び他の情報処理方法）を実行する１組の実行可能な命令に対応する。これらのモジュール（例えば、命令セット）は、別個のソフトウェアプログラム、手順、又はモジュールとして実施する必要はなく、したがって、様々な実施形態において、これらのモジュールの様々なサブセットが、任意選択的に、組み合わされ、又は他の形で再構成される。例えば、ビデオプレーヤモジュールは、任意選択的に、音楽プレーヤモジュールと組み合わされて、単一のモジュール（例えば、図１Ａのビデオ及び音楽プレーヤモジュール１５２）にされる。いくつかの実施形態では、メモリ１０２は、任意選択的に、上記で特定したモジュール及びデータ構造のサブセットを記憶する。更に、メモリ１０２は、上記で説明されていない追加のモジュール及びデータ構造を任意選択的に記憶する。
【０１０５】
いくつかの実施形態では、デバイス１００は、そのデバイスにおける所定の機能のセットの動作がタッチスクリーン及び／又はタッチパッドのみを通じて実行されるデバイスである。デバイス１００が動作するための主要な入力コントロールデバイスとしてタッチスクリーン及び／又はタッチパッドを使用することにより、任意選択的に、デバイス１００上の物理的な入力コントロールデバイス（プッシュボタン、ダイヤルなど）の数が削減される。
【０１０６】
タッチスクリーン及び／又はタッチパッドを通じてのみ実行される所定の機能のセットは、任意選択的に、ユーザインタフェース間のナビゲーションを含む。いくつかの実施形態では、タッチパッドは、ユーザによってタッチされたときに、デバイス１００上に表示される任意のユーザインタフェースから、メインメニュー、ホームメニュー、又はルートメニューにデバイス１００をナビゲートする。このような実施形態では、「メニューボタン」は、タッチパッドを使用して実装される。いくつかの他の実施形態では、メニューボタンは、タッチパッドではなく、物理プッシュボタン又はその他の物理入力コントロールデバイスである。
【０１０７】
図１Ｂは、いくつかの実施形態によるイベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ１０２（図１Ａ）又は３７０（図３）は、イベントソータ１７０（例えば、オペレーティングシステム１２６内）と、それぞれのアプリケーション１３６−１（例えば、前述のアプリケーション１３７〜１５１、１５５、３８０〜３９０のうちのいずれか）とを含む。
【０１０８】
イベントソータ１７０は、イベント情報を受信し、イベント情報が配信されるアプリケーション１３６−１及びアプリケーション１３６−１のアプリケーションビュー１９１を判定する。イベントソータ１７０は、イベントモニタ１７１及びイベントディスパッチャモジュール１７４を含む。いくつかの実施形態では、アプリケーション１３６−１は、アプリケーションがアクティブ又は実行中であるときにタッチ感知ディスプレイ１１２上に表示される現在のアプリケーションビューを示すアプリケーション内部状態１９２を含む。いくつかの実施形態では、デバイス／グローバル内部状態１５７は、どのアプリケーション（単数又は複数）が現在アクティブであるかを判定するためにイベントソータ１７０によって使用され、アプリケーション内部状態１９２は、イベント情報が配信されるアプリケーションビュー１９１を決定するためにイベントソータ１７０によって使用される。
【０１０９】
いくつかの実施形態では、アプリケーション内部状態１９２は、アプリケーション１３６−１が実行を再開するときに使用される再開情報、アプリケーション１３６−１によって表示されている又は表示される準備ができている情報を示すユーザインタフェース状態情報、ユーザがアプリケーション１３６−１の以前の状態又はビューに戻ることを可能にする状態待ち行列、及びユーザが行った以前のアクションのリドゥ／アンドゥ待ち行列のうちの１つ以上などの追加の情報を含む。
【０１１０】
イベントモニタ１７１は、周辺機器インタフェース１１８からイベント情報を受信する。イベント情報は、サブイベント（例えば、マルチタッチジェスチャの一部としてのタッチ感知ディスプレイ１１２上のユーザタッチ）に関する情報を含む。周辺機器インタフェース１１８は、Ｉ／Ｏサブシステム１０６、又は近接センサ１６６、加速度計（単数又は複数）１６８、及び／若しくは（オーディオ回路１１０を介した）マイクロフォン１１３などのセンサから受信する情報を伝送する。周辺機器インタフェース１１８がＩ／Ｏサブシステム１０６から受信する情報は、タッチ感知ディスプレイ１１２又はタッチ感知面からの情報を含む。
【０１１１】
いくつかの実施形態では、イベントモニタ１７１は、所定の間隔で周辺機器インタフェース１１８に要求を送信する。これに応じて、周辺機器インタフェース１１８は、イベント情報を伝送する。他の実施形態では、周辺機器インタフェース１１８は、重要なイベント（例えば、所定のノイズ閾値を上回る及び／又は所定の持続時間を超える入力の受信）があるときのみイベント情報を送信する。
【０１１２】
いくつかの実施形態では、イベントソータ１７０はまた、ヒットビュー判定モジュール１７２及び／又はアクティブイベント認識部判定モジュール１７３を含む。
【０１１３】
ヒットビュー判定モジュール１７２は、タッチ感知ディスプレイ１１２が２つ以上のビューを表示するとき、サブイベントが１つ以上のビュー内のどこで行われたかを判定するソフトウェア手順を提供する。ビューは、ユーザがディスプレイ上で見ることができる制御装置及び他の要素から構成されている。
【０１１４】
アプリケーションに関連付けられたユーザインタフェースの別の態様は、本明細書ではアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれることもあるビューのセットであり、その中で情報が表示され、タッチに基づくジェスチャが生じる。タッチが検出される（それぞれのアプリケーションの）アプリケーションビューは、任意選択的に、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応する。例えば、タッチが検出される最下位レベルビューは、任意選択的に、ヒットビューと呼ばれ、また、適切な入力として認識されるイベントのセットは、任意選択的に、タッチによるジェスチャを開始する初期タッチのヒットビューに少なくとも部分的に基づいて決定される。
【０１１５】
ヒットビュー判定モジュール１７２は、タッチに基づくジェスチャのサブイベントに関連する情報を受信する。アプリケーションが階層状に構成された複数のビューを有するときには、ヒットビュー判定モジュール１７２は、サブイベントを処理すべき階層内の最下位のビューとして、ヒットビューを特定する。ほとんどの状況では、ヒットビューは、開始サブイベント（例えば、イベント又は潜在的イベントを形成するサブイベントシーケンス内の第１のサブイベント）が行われる最も低いレベルのビューである。ヒットビューがヒットビュー判定モジュール１７２によって特定された後、このヒットビューは、典型的には、ヒットビューとして特定されたのと同じタッチ又は入力ソースに関係するすべてのサブイベントを受信する。
【０１１６】
アクティブイベント認識部判定モジュール１７３は、ビュー階層内のどのビュー（単数又は複数）がサブイベントの特定のシーケンスを受信すべきかを判定する。いくつかの実施形態では、アクティブイベント認識部判定モジュール１７３は、ヒットビューのみがサブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール１７３は、サブイベントの物理位置を含むすべてのビューがアクティブに関わりがあるビューであると判定し、したがって、すべてのアクティブに関わりがあるビューが、サブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、タッチサブイベントが１つの特定のビューに関連するエリアに完全に限定された場合でも、階層内の上位のビューは、依然としてアクティブに関わりがあるビューであり続ける。
【０１１７】
イベントディスパッチャモジュール１７４は、イベント情報をイベント認識部（例えばイベント認識部１８０）にディスパッチする。アクティブイベント認識部判定モジュール１７３を含む実施形態において、イベントディスパッチャモジュール１７４は、アクティブイベント認識部判定モジュール１７３により判定されたイベント認識部にイベント情報を配信する。いくつかの実施形態では、イベントディスパッチャモジュール１７４は、それぞれのイベント受信部１８２によって取得されるイベント情報をイベント待ち行列に記憶する。
【０１１８】
いくつかの実施形態では、オペレーティングシステム１２６は、イベントソータ１７０を含む。代替として、アプリケーション１３６−１がイベントソータ１７０を含む。更に他の実施形態では、イベントソータ１７０は、独立型のモジュール、又は接触／動きモジュール１３０などの、メモリ１０２に記憶された別のモジュールの一部である。
【０１１９】
いくつかの実施形態では、アプリケーション１３６−１は、それぞれがアプリケーションのユーザインタフェースのそれぞれのビュー内で発生するタッチイベントを処理する命令を含む、複数のイベントハンドラ１９０及び１つ以上のアプリケーションビュー１９１を含む。アプリケーション１３６−１の各アプリケーションビュー１９１は、１つ以上のイベント認識部１８０を含む。典型的には、それぞれのアプリケーションビュー１９１は、複数のイベント認識部１８０を含む。他の実施形態では、イベント認識部１８０のうちの１つ以上は、ユーザインタフェースキット（図示せず）又はアプリケーション１３６−１が方法及び他の特性を継承する上位レベルのオブジェクトなどの、別個のモジュールの一部である。いくつかの実施形態では、対応するイベントハンドラ１９０は、データアップデータ１７６、オブジェクトアップデータ１７７、ＧＵＩアップデータ１７８及び／又はイベントソータ１７０から受信されたイベントデータ１７９、のうちの１つ以上を含む。イベントハンドラ１９０は、任意選択的に、データアップデータ１７６、オブジェクトアップデータ１７７、又はＧＵＩアップデータ１７８を利用し又は呼び出して、アプリケーション内部状態１９２を更新する。別法として、アプリケーションビュー１９１のうちの１つ以上が、１つ以上のそれぞれのイベントハンドラ１９０を含む。また、いくつかの実施形態では、データアップデータ１７６、オブジェクトアップデータ１７７及びＧＵＩアップデータ１７８のうちの１つ以上は、対応するアプリケーションビュー１９１に含まれる。
【０１２０】
それぞれのイベント認識部１８０は、イベントソータ１７０からイベント情報（例えば、イベントデータ１７９）を受信し、このイベント情報からイベントを特定する。イベント認識部１８０は、イベント受信部１８２及びイベント比較部１８４を含む。いくつかの実施形態では、イベント認識部１８０はまた、メタデータ１８３及びイベント配信命令１８８（任意選択的にサブイベント配信命令を含む）の少なくともサブセットも含む。
【０１２１】
イベント受信部１８２は、イベントソータ１７０からイベント情報を受信する。イベント情報は、サブイベントについての情報、例えば、タッチ又はタッチの移動についての情報を含む。サブイベントに応じて、イベント情報はまた、サブイベントの位置などの追加の情報を含む。サブイベントがタッチの動きに関わるとき、イベント情報はまた任意選択的に、サブイベントの速さ及び方向を含む。いくつかの実施形態では、イベントは、１つの向きから別の向きへの（例えば、縦向きから横向きへ、又はその逆の）デバイスの回転を含み、イベント情報は、デバイスの現在の向き（デバイスの姿勢とも呼ぶ）についての対応する情報を含む。
【０１２２】
イベント比較部１８４は、イベント情報を、定義済みのイベント又はサブイベントの定義と比較し、その比較に基づいて、イベント又はサブイベントを判定するか、あるいはイベント又はサブイベントの状態を判定若しくは更新する。いくつかの実施形態では、イベント比較部１８４は、イベント定義１８６を含む。イベント定義１８６は、例えばイベント１（１８７−１）及びイベント２（１８７−２）などのイベント（例えば所定のサブイベントのシーケンス）の定義を含む。いくつかの実施形態では、イベント（１８７）内のサブイベントは、例えば、タッチの開始、タッチの終了、タッチの動き、タッチの取り消し、及び複数のタッチを含む。一例では、イベント１（１８７−１）についての定義は、表示されたオブジェクト上のダブルタップである。ダブルタップは、例えば、所定の段階に対する表示オブジェクト上の第１のタッチ（タッチ開始）、所定の段階に対する第１のリフトオフ（タッチ終了）、所定の段階に対する表示オブジェクト上の第２のタッチ（タッチ開始）、及び所定の段階に対する第２のリフトオフ（タッチ終了）を含む。別の例では、イベント２（１８７−２）の定義は、表示されたオブジェクト上のドラッグである。ドラッグは、例えば、所定の段階に対する表示オブジェクトのタッチ（又は接触）、タッチ感知ディスプレイ１１２におけるタッチの動き、及びタッチのリフトオフ（タッチ終了）を含む。いくつかの実施形態では、イベントはまた、１つ以上の関連付けられたイベントハンドラ１９０に関する情報を含む。
【０１２３】
いくつかの実施形態では、イベント定義１８７は、それぞれのユーザインタフェースオブジェクトについてのイベントの定義を含む。いくつかの実施形態では、イベント比較部１８４は、どのユーザインタフェースオブジェクトがサブイベントに関連付けられているかを判定するヒットテストを実行する。例えば、タッチ感知ディスプレイ１１２上に、３つのユーザインタフェースオブジェクトが表示されているアプリケーションビューでは、タッチ感知ディスプレイ１１２上でタッチが検出されると、イベント比較部１８４は、３つのユーザインタフェースオブジェクトのうちのいずれが、そのタッチ（サブイベント）と関連付けられているかを判定するために、ヒットテストを実行する。表示された各オブジェクトが、対応するイベントハンドラ１９０に関連付けられている場合、イベント比較部は、ヒットテストの結果を用いて、どのイベントハンドラ１９０をアクティブ化すべきかを判定する。例えば、イベント比較部１８４は、ヒットテストをトリガするサブイベント及びオブジェクトと関連付けられたイベントハンドラを選択する。
【０１２４】
いくつかの実施形態では、それぞれのイベント（１８７）に対する定義はまた、サブイベントシーケンスがイベント認識部のイベントタイプに対応するか否かが判定される後までイベント情報の伝送を遅延する遅延アクションを含む。
【０１２５】
それぞれのイベント認識部１８０が一連のサブイベントがイベント定義１８６のいずれのイベントとも一致しないと判断した場合には、それぞれのイベント認識部１８０は、イベント不可能、イベント失敗、又はイベント終了の状態になり、その後は、タッチによるジェスチャの後続のサブイベントを無視する。この状況では、ヒットビューについてアクティブのままである他のイベント認識部があれば、そのイベント認識部は、進行中のタッチによるジェスチャのサブイベントの追跡及び処理を続行する。
【０１２６】
いくつかの実施形態では、対応するイベント認識部１８０は、イベント配信システムがどのようにサブイベント配信を実行すべきかをアクティブに関与しているイベント認識部に示す構成可能なプロパティ、フラグ、及び／又はリストを有するメタデータ１８３を含む。いくつかの実施形態では、メタデータ１８３は、イベント認識部が互いにどのように対話するか、又はイベント認識部が互いにどのように対話することができるようになっているかを示す構成可能なプロパティ、フラグ、及び／又はリストを含む。いくつかの実施形態では、メタデータ１８３は、サブイベントがビュー階層又はプログラム階層における多様なレベルに配信されるかを示す構成可能なプロパティ、フラグ、及び／又はリストを含む。
【０１２７】
いくつかの実施形態では、それぞれのイベント認識部１８０は、イベントの１つ以上の特定のサブイベントが認識されるときに、イベントと関連付けられたイベントハンドラ１９０をアクティブ化する。いくつかの実施形態では、それぞれのイベント認識部１８０は、イベントと関連付けられたイベント情報をイベントハンドラ１９０に配信する。イベントハンドラ１９０をアクティブ化することは、それぞれのヒットビューにサブイベントを送信する（及び、送信を延期する）こととは別個である。いくつかの実施形態では、イベント認識部１８０は、認識したイベントと関連付けられたフラグを投入し、そのフラグと関連付けられたイベントハンドラ１９０は、そのフラグを捕らえ、既定のプロセスを実行する。
【０１２８】
いくつかの実施形態では、イベント配信命令１８８は、イベントハンドラをアクティブ化することなくサブイベントについてのイベント情報を配信するサブイベント配信命令を含む。代わりに、サブイベント配信命令は、一連のサブイベントと関連付けられたイベントハンドラに、又はアクティブに関与しているビューにイベント情報を配信する。一連のサブイベント又はアクティブに関与しているビューと関連付けられたイベントハンドラは、イベント情報を受信し、所定の処理を実行する。
【０１２９】
いくつかの実施形態では、データアップデータ１７６は、アプリケーション１３６−１で使用されるデータを作成及び更新する。例えば、データアップデータ１７６は、連絡先モジュール１３７で使用される電話番号を更新する、又はビデオプレーヤモジュールで使用されるビデオファイルを記憶する。いくつかの実施形態では、オブジェクトアップデータ１７７は、アプリケーション１３６−１で使用されるオブジェクトを作成及び更新する。例えば、オブジェクトアップデータ１７７は、新たなユーザインタフェースオブジェクトを作成するか、又はユーザインタフェースオブジェクトの位置を更新する。ＧＵＩアップデータ１７８は、ＧＵＩを更新する。例えば、ＧＵＩアップデータ１７８は、表示情報を準備し、タッチ感知ディスプレイ上に表示するために表示情報をグラフィックモジュール１３２に送る。
【０１３０】
いくつかの実施形態では、イベントハンドラ（単数又は複数）１９０は、データアップデータ１７６、オブジェクトアップデータ１７７、及びＧＵＩアップデータ１７８を含むか又はそれらへのアクセスを有する。いくつかの実施形態では、データアップデータ１７６、オブジェクトアップデータ１７７、及びＧＵＩアップデータ１７８は、それぞれのアプリケーション１３６−１又はアプリケーションビュー１９１の単一モジュールに含まれる。他の実施形態では、それらは、２つ以上のソフトウェアモジュールに含まれる。
【０１３１】
タッチ感知ディスプレイ上のユーザタッチのイベント処理に関する上記の論考は、入力デバイスを有する多機能デバイス１００を動作させるためのユーザ入力の他の形態にも当てはまり、それらのユーザ入力は、必ずしもすべてがタッチスクリーン上で開始されるとは限らないことが理解されよう。例えば、キーボードの単一又は複数の押圧若しくは保持と任意選択的に連携される、マウスの移動及びマウスボタンの押圧、タッチパッド上のタップ、ドラッグ、スクロールなどの接触の動き、ペンスタイラス入力、デバイスの移動、口頭による命令、検出された目の動き、バイオメトリック入力、並びに／又はそれらの任意の組合せを、任意選択的に、認識するイベントを定義するサブイベントに対応する入力として利用する。
【０１３２】
図２は、いくつかの実施形態によるタッチスクリーン１１２を有するポータブル多機能デバイス１００を示す。タッチスクリーンは、任意選択的に、ユーザインタフェース（user interface、ＵＩ）２００内に１つ以上のグラフィックを表示する。本実施形態、並びに以下で説明される他の実施形態では、ユーザは、例えば、１本以上の指２０２（図には正確な縮尺では描かれていない）又は１つ以上のスタイラス２０３（図には正確な縮尺では描かれていない）を使用して、グラフィック上でジェスチャを実施することによって、それらのグラフィックのうちの１つ以上を選択することが可能となる。いくつかの実施形態では、１つ以上のグラフィックの選択は、ユーザが、その１つ以上のグラフィックとの接触を中断する場合に実施される。いくつかの実施形態では、ジェスチャは、任意選択的に、１つ以上のタップ、１つ以上のスワイプ（左から右、右から左、上向き、及び／若しくは下向き）、並びに／又はデバイス１００と接触した指のロール（右から左、左から右、上向き、及び／若しくは下向き）を含む。いくつかの実装形態又は状況では、グラフィックとの不測の接触は、そのグラフィックを選択するものではない。例えば、選択に対応するジェスチャがタップである場合、アプリケーションアイコンの上をスイープするスワイプジェスチャは、任意選択的に、対応するアプリケーションを選択するものではない。
【０１３３】
デバイス１００はまた、任意選択的に、「ホーム」ボタン又はメニューボタン２０４などの１つ以上の物理ボタンを含む。前述したように、メニューボタン２０４は、任意選択的に、任意選択的にデバイス１００上で実行される１組のアプリケーション内の任意のアプリケーション１３６へナビゲートするために使用される。別法として、いくつかの実施形態では、メニューボタンは、タッチスクリーン１１２上に表示されるＧＵＩ内のソフトキーとして実施される。
【０１３４】
いくつかの実施形態では、デバイス１００は、タッチスクリーン１１２、メニューボタン２０４、デバイスの電源をオン／オフにしてデバイスをロックするプッシュボタン２０６、音量調整ボタン２０８、加入者識別モジュール（ＳＩＭ）カードスロット２１０、ヘッドセットジャック２１２、及びドッキング／充電用外部ポート１２４を含む。プッシュボタン２０６は、任意選択的に、ボタンを押し下げて、所定の期間にわたってボタンを押し下げた状態に保持することによって、デバイスの電源をオン／オフするため、ボタンを押し下げて、所定の期間が経過する前にボタンを解放することによって、デバイスをロックするため、及び／又はデバイスをロック解除する、若しくはロック解除プロセスを開始するために、使用される。代替的実施形態では、デバイス１００はまた、マイクロフォン１１３を介して、一部の機能をアクティブ化又は非アクティブ化するための口頭入力も受け入れる。デバイス１００はまた、任意選択的に、タッチスクリーン１１２上の接触の強度を検出する１つ以上の接触強度センサ１６５、及び／又はデバイス１００のユーザに対する触知出力を生成する１つ以上の触知出力生成器１６７を含む。
【０１３５】
図３は、いくつかの実施形態によるディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。デバイス３００は、ポータブル型である必要はない。いくつかの実施形態では、デバイス３００は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディア再生デバイス、ナビゲーションデバイス、教育的デバイス（子供の学習玩具など）、ゲームシステム、又は制御デバイス（例えば、家庭用又は業務用コントローラ）である。デバイス３００は、典型的には、１つ以上の処理ユニット（ＣＰＵ）３１０、１つ以上のネットワーク又は他の通信インタフェース３６０、メモリ３７０、及びこれらの構成要素を相互接続する１つ以上の通信バス３２０を含む。通信バス３２０は、任意選択的に、システム構成要素間の通信を相互接続及び制御する回路（チップセットと呼ばれることもある）を含む。デバイス３００は、ディスプレイ３４０を備える入出力（Ｉ／Ｏ）インタフェース３３０を含み、ディスプレイ３４０は、典型的には、タッチスクリーンディスプレイである。Ｉ／Ｏインタフェース３３０はまた、任意選択的に、キーボード及び／又はマウス（若しくは他のポインティングデバイス）３５０と、タッチパッド３５５と、デバイス３００上に触知出力を生成する触知出力生成器３５７（例えば、図１Ａを参照して前述した触知出力生成器１６７に類似している）と、センサ３５９（例えば、図１Ａを参照して前述した接触強度センサ１６５に類似している光、加速度、近接、タッチ感知、及び／又は接触強度センサ）とを含む。メモリ３７０は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ、又は他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含み、任意選択的に、１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステート記憶デバイスなどの不揮発性メモリを含む。メモリ３７０は、ＣＰＵ３１０からリモートに位置する１つ以上の記憶デバイスを任意選択的に含む。いくつかの実施形態では、メモリ３７０は、ポータブル多機能デバイス１００（図１Ａ）のメモリ１０２内に記憶されているプログラム、モジュール、及びデータ構造に類似したプログラム、モジュール、及びデータ構造、又はそのサブセットを記憶する。更に、メモリ３７０は任意選択で、ポータブル多機能デバイス１００のメモリ１０２に存在しない追加のプログラム、モジュール、及びデータ構造を記憶する。例えば、デバイス３００のメモリ３７０は、任意選択的に、描画モジュール３８０、プレゼンテーションモジュール３８２、ワードプロセッシングモジュール３８４、ウェブサイト作成モジュール３８６、ディスクオーサリングモジュール３８８、及び／又はスプレッドシートモジュール３９０を記憶するのに対して、ポータブル多機能デバイス１００（図１Ａ）のメモリ１０２は、任意選択的に、これらのモジュールを記憶しない。
【０１３６】
図３の上記で特定した要素はそれぞれ、任意選択的に、前述したメモリデバイスのうちの１つ以上の中に記憶される。上記で特定したモジュールはそれぞれ、前述した機能を実行する１組の命令に対応する。上記で特定したモジュール又はプログラム（例えば、命令セット）は、別個のソフトウェアプログラム、手順、又はモジュールとして実施する必要はなく、したがって様々な実施形態では、これらのモジュールの様々なサブセットは、任意選択的に、組み合わされ、又は他の形で再構成される。いくつかの実施形態では、メモリ３７０は、任意選択的に、上記で特定したモジュール及びデータ構造のサブセットを記憶する。更に、メモリ３７０は、上記で説明されていない追加のモジュール及びデータ構造を任意選択的に記憶する。
【０１３７】
次に、任意選択的に例えばポータブル多機能デバイス１００上で実施されるユーザインタフェースの実施形態に注意を向ける。
【０１３８】
図４Ａは、いくつかの実施形態によるポータブル多機能デバイス１００上のアプリケーションのメニューの例示的なユーザインタフェースを示す。同様のユーザインタフェースは、デバイス３００上に任意選択的に実装される。いくつかの実施形態では、ユーザインタフェース４００は、以下の要素、又はそれらのサブセット若しくはスーパーセットを含む。
●セルラー信号及びＷｉ−Ｆｉ信号などの無線通信（単数又は複数）のための信号強度インジケータ（単数又は複数）４０２、
●時刻４０４、
●Ｂｌｕｅｔｏｏｔｈインジケータ４０５、
●バッテリ状態インジケータ４０６、
●以下のような、頻繁に使用されるアプリケーションのアイコンを有するトレイ４０８、
○不在着信又はボイスメールメッセージの数のインジケータ４１４を任意選択的に含む、「電話」とラベル付けされた、電話モジュール１３８のアイコン４１６、
○未読電子メールの数のインジケータ４１０を任意選択的に含む、「メール」とラベル付けされた、電子メールクライアントモジュール１４０のアイコン４１８、
○「ブラウザ」とラベル付けされた、ブラウザモジュール１４７のアイコン４２０、及び
○「ｉＰｏｄ」とラベル付けされた、ｉＰｏｄ（Ａｐｐｌｅ  Ｉｎｃ．の商標）モジュール１５２とも称されるビデオ及び音楽プレーヤモジュール１５２のアイコン４２２、及び
●以下のような、他のアプリケーションのアイコン、
○「メッセージ」とラベル付けされた、ＩＭモジュール１４１のアイコン４２４、
○「カレンダ」とラベル付けされた、カレンダモジュール１４８のアイコン４２６、
○「写真」とラベル付けされた、画像管理モジュール１４４のアイコン４２８、
○「カメラ」とラベル付けされた、カメラモジュール１４３のアイコン４３０、
○「オンラインビデオ」とラベル付けされた、オンラインビデオモジュール１５５のアイコン４３２、
○「株価」とラベル付けされた、株式ウィジェット１４９−２のアイコン４３４、
○「地図」のラベル付けされた、地図モジュール１５４のためのアイコン４３６、
○「天気」とラベル付けされた、気象ウィジェット１４９−１のアイコン４３８、
○「時計」とラベル付けされた、アラーム時計ウィジェット１４９−４のアイコン４４０、
○「トレーニングサポート」とラベル付けされた、トレーニングサポートモジュール１４２のアイコン４４２、
○「メモ」とラベル付けされた、メモモジュール１５３のアイコン４４４、及び
○デバイス１００及びその様々なアプリケーション１３６に対する設定へのアクセスを提供する「設定」のラベル付きの設定アプリケーション又はモジュールのためのアイコン４４６。
【０１３９】
図４Ａに示すアイコンラベルは、単なる例示であることに留意されたい。例えば、ビデオ及び音楽プレーヤモジュール１５２のためのアイコン４２２は、「音楽」又は「音楽プレーヤ」と表示される、他のラベルが、様々なアプリケーションアイコンのために、任意選択的に使用される。いくつかの実施形態では、それぞれのアプリケーションアイコンに関するラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。いくつかの実施形態では、特定のアプリケーションアイコンのラベルは、その特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
【０１４０】
図４Ｂは、ディスプレイ４５０（例えば、タッチスクリーンディスプレイ１１２）とは別個のタッチ感知面４５１（例えば、図３のタブレット又はタッチパッド３５５）を有するデバイス（例えば、図３のデバイス３００）上の例示的なユーザインタフェースを示す。デバイス３００はまた、任意選択的に、タッチ感知面４５１上の接触の強度を検出する１つ以上の接触強度センサ（例えば、センサ３５９のうちの１つ以上）、及び／又はデバイス３００のユーザに対する触知出力を生成する１つ以上の触知出力生成器３５７を含む。
【０１４１】
以下の例のうちのいくつかは、タッチスクリーンディスプレイ１１２（タッチ感知面及びディスプレイが組み合わされている）上の入力を参照して与えられるが、いくつかの実施形態では、デバイスは、図４Ｂに示すディスプレイとは別個のタッチ感知面上の入力を検出する。いくつかの実施形態では、タッチ感知面（例えば、図４Ｂの４５１）は、ディスプレイ（例えば、４５０）上の１次軸（例えば、図４Ｂの４５３）に対応する１次軸（例えば、図４Ｂの４５２）を有する。これらの実施形態によれば、デバイスは、ディスプレイ上のそれぞれの場所に対応する場所（例えば、図４Ｂでは、４６０は４６８に対応し、４６２は４７０に対応する）で、タッチ感知面４５１との接触（例えば、図４Ｂの４６０及び４６２）を検出する。このようにして、タッチ感知面（例えば、図４Ｂの４５１）上でデバイスによって検出されるユーザ入力（例えば、接触４６０及び４６２、並びにこれらの動き）は、タッチ感知面がディスプレイとは別個であるとき、多機能デバイスのディスプレイ（例えば、図４Ｂの４５０）上のユーザインタフェースを操作するために、デバイスによって使用される。同様の方法が、本明細書に記載の他のユーザインタフェースに任意選択的に使用されることを理解されたい。
【０１４２】
加えて、以下の例は、主に指入力（例えば、指接触、指タップジェスチャ、指スワイプジェスチャ）を参照して与えられるが、いくつかの実施形態では、指入力のうちの１つ以上は、別の入力デバイスからの入力（例えば、マウスベースの入力又はスタイラス入力）に置き換えられることを理解されたい。例えば、スワイプジェスチャは、（例えば、接触の代わりの）マウスクリックに続けた、（例えば、接触の移動の代わりの）スワイプの経路に沿ったカーソルの移動によって、任意選択的に置き換えられる。別の例として、タップジェスチャは、任意選択的に、カーソルがタップジェスチャの位置の上に位置する間はマウスクリックと置き換えられる（例えば、接触を検出して、それに続いて接触の検出を停止する代わりに）。同様に、複数のユーザ入力が同時に検出されるとき、複数のコンピュータマウスが、任意選択的に、同時に使用され、又はマウス及び指の接触が、任意選択的に、同時に使用されることを理解されたい。
【０１４３】
図５Ａは、例示的なパーソナル電子デバイス５００を示す。デバイス５００は、本体５０２を含む。いくつかの実施形態では、デバイス５００は、デバイス１００及び３００（例えば、図１Ａ〜４Ｂ）に関して説明する特徴のうちのいくつか又はすべてを含むことができる。いくつかの実施形態では、デバイス５００は、タッチ感知ディスプレイスクリーン５０４、以下タッチスクリーン５０４を有する。タッチスクリーン５０４に対する別法又は追加として、デバイス５００は、ディスプレイ及びタッチ感知面を有する。デバイス１００及び３００と同様に、いくつかの実施形態では、タッチスクリーン５０４（又はタッチ感知面）は、任意選択的に、加えられている接触（例えば、タッチ）の強度を検出する１つ以上の強度センサを含む。タッチスクリーン５０４（又はタッチ感知面）の１つ以上の強度センサは、タッチの強度を表す出力データを提供することができる。デバイス５００のユーザインタフェースは、タッチの強度に基づいてタッチに応答することができ、これは、異なる強度のタッチが、デバイス５００上で異なるユーザインタフェース動作を呼び出すことができることを意味する。
【０１４４】
タッチ強度を検出及び処理する例示的な技法は、例えば、それぞれ全体として参照により本明細書に組み込まれている、国際特許第ＷＯ／２０１３／１６９８４９号として公開された、２０１３年５月８日出願の国際特許出願第ＰＣＴ／ＵＳ２０１３／０４００６１号、「Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｄｉｓｐｌａｙｉｎｇ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  Ｏｂｊｅｃｔｓ  Ｃｏｒｒｅｓｐｏｎｄｉｎｇ  ｔｏ  ａｎ  Ａｐｐｌｉｃａｔｉｏｎ」、及び国際特許第ＷＯ／２０１４／１０５２７６号として公開された、２０１３年１１月１１日出願の国際特許出願第ＰＣＴ／ＵＳ２０１３／０６９４８３号、「Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｔｒａｎｓｉｔｉｏｎｉｎｇ  Ｂｅｔｗｅｅｎ  Ｔｏｕｃｈ  Ｉｎｐｕｔ  ｔｏ  Ｄｉｓｐｌａｙ  Ｏｕｔｐｕｔ  Ｒｅｌａｔｉｏｎｓｈｉｐｓ」という関連出願に見られる。
【０１４５】
いくつかの実施形態では、デバイス５００は、１つ以上の入力機構５０６及び５０８を有する。入力機構５０６及び５０８は、含まれる場合、物理的機構とすることができる。物理的入力機構の例としては、プッシュボタン及び回転可能機構が挙げられる。いくつかの実施形態では、デバイス５００は、１つ以上のアタッチメント機構を有する。そのようなアタッチメント機構は、含まれる場合、例えば帽子、アイウェア、イアリング、ネックレス、シャツ、ジャケット、ブレスレット、腕時計のバンド、チェーン、ズボン、ベルト、靴、財布、バックパックなどにデバイス５００を取り付けることを可能にすることができる。これらのアタッチメント機構は、ユーザがデバイス５００を着用することを可能にする。
【０１４６】
図５Ｂは、例示的なパーソナル電子デバイス５００を示す。いくつかの実施形態では、デバイス５００は、図１Ａ、図１Ｂ、及び図３に関して説明した構成要素のうちのいくつか又はすべてを含むことができる。デバイス５００は、Ｉ／Ｏセクション５１４を１つ以上のコンピュータプロセッサ５１６及びメモリ５１８に動作可能に結合するバス５１２を有する。Ｉ／Ｏセクション５１４は、ディスプレイ５０４に接続することができ、ディスプレイ５０４は、タッチ感知構成要素５２２と、任意選択的に強度センサ５２４（例えば、接触強度センサ）とを有することができる。加えて、Ｉ／Ｏセクション５１４は、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ、近距離通信（ＮＦＣ）、セルラー、及び／又は他の無線通信技法を使用してアプリケーション及びオペレーティングシステムデータを受信する通信ユニット５３０に接続することができる。デバイス５００は、入力機構５０６及び／又は５０８を含むことができる。入力機構５０６は、任意選択的に、例えば回転可能入力デバイス又は押下可能及び回転可能入力デバイスである。いくつかの例では、入力機構５０８は、任意選択的にボタンである。
【０１４７】
いくつかの例では、入力機構５０８は、任意選択的にマイクロフォンである。パーソナル電子デバイス５００は、任意選択的に、ＧＰＳセンサ５３２、加速度計５３４、方向センサ５４０（例えば、コンパス）、ジャイロスコープ５３６、動きセンサ５３８、及び／又はこれらの組合せなどの様々なセンサを含み、これらのセンサはすべて、Ｉ／Ｏセクション５１４に動作可能に接続することができる。
【０１４８】
パーソナル電子デバイス５００のメモリ５１８は、コンピュータ実行可能命令を記憶する１つ以上の非一時的コンピュータ可読記憶媒体を含み得、それらの命令は、１つ以上のコンピュータプロセッサ５１６によって実行されると、例えば、プロセス７００（図７Ａ〜７Ｂ）、プロセス１０００（図１０Ａ〜１０Ｂ）、プロセス１３００（図１３Ａ〜１３Ｂ）及びプロセス１６００（図１６Ａ〜１６Ｂ）を含めた、以下に説明する技術をコンピュータプロセッサに実行させることができる。パーソナル電子デバイス５００は、図５Ｂの構成要素及び構成に限定されるものではなく、他の又は追加の構成要素を複数の構成で含むことができる。
【０１４９】
本明細書で使用されるように、用語「アフォーダンス」は、任意選択的に、デバイス１００、３００、及び／又は５００（図１、図３、及び図５）のディスプレイスクリーン上に表示されるユーザ対話式のグラフィカルユーザインタフェースオブジェクトを指す。例えば、画像（例えば、アイコン）、ボタン、及び文字（例えば、ハイパーリンク）はそれぞれ、意選択的に、アフォーダンスを構成する。
【０１５０】
本明細書で使用される「フォーカスセレクタ」という用語は、ユーザが対話しているユーザインタフェースの現在の部分を示す入力要素を指す。カーソル又は他の場所マーカを含むいくつかの実装形態では、カーソルが「フォーカスセレクタ」として作用し、したがってカーソルが特定のユーザインタフェース要素（例えば、ボタン、ウインドウ、スライダ、又は他のユーザインタフェース要素）の上に位置する間に、タッチ感知面（例えば、図３のタッチパッド３５５又は図４Ｂのタッチ感知面４５１）上で入力（例えば、押下入力）が検出されたとき、特定のユーザインタフェース要素が、検出された入力に従って調整される。タッチスクリーンディスプレイ上のユーザインタフェース要素との直接対話を有効化するタッチスクリーンディスプレイ（例えば、図１Ａのタッチ感知ディスプレイシステム１１２又は図４Ａのタッチスクリーン１１２）を含むいくつかの実装形態では、タッチスクリーン上の検出された接触が「フォーカスセレクタ」として作用し、したがってタッチスクリーンディスプレイ上の特定のユーザインタフェース要素（例えば、ボタン、ウインドウ、スライダ、又は他のユーザインタフェース要素）の場所で入力（例えば、接触による押下入力）が検出されたとき、特定のユーザインタフェース要素が、検出された入力に従って調整される。いくつかの実装形態では、タッチスクリーンディスプレイ上の対応するカーソルの動き又は接触の動き（例えば、フォーカスを１つのボタンから別のボタンへ動かすためにタブキー又は矢印キーを使用することによる）なく、フォーカスがユーザインタフェースの１つの領域からユーザインタフェースの別の領域へ動かされ、これらの実装形態では、フォーカスセレクタは、ユーザインタフェースの種々の領域間でのフォーカスの移動に従って移動する。フォーカスセレクタがとる特有の形態に関わらず、フォーカスセレクタは、概して、ユーザインタフェース要素（又はタッチスクリーンディスプレイ上の接触）であり、ユーザの意図する対話をユーザインタフェースによって通信するように、ユーザによって制御される（例えば、ユーザが対話することを意図しているユーザインタフェースの要素をデバイスに示すことによる）。例えば、タッチ感知面（例えば、タッチパッド又はタッチスクリーン）上で押圧入力が検出されている間の、対応のボタンの上のフォーカスセレクタ（例えば、カーソル、接触、又は選択ボックス）の位置は、その対応のボタンを（そのデバイスのディスプレイ上に示される他のユーザインタフェース要素ではなく）アクティブ化することをユーザが意図していることを示すものである。
【０１５１】
本明細書及び特許請求の範囲で使用される、接触の「特性強度」という用語は、接触の１つ以上の強度に基づく、その接触の特性を指す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、既定の数の強度サンプル、すなわち、既定のイベント（例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終了を検出する前、接触の強度の増大を検出する前若しくは後、及び／又は、接触の強度の減少を検出する前若しくは後の）に関連する既定の時間期間（例えば、０．０５、０．１、０．２、０．５、１、２、５、１０秒）の間に収集された強度サンプルのセットに基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均（mean）値、接触の強度の平均（average）値、接触の強度の上位１０パーセンタイル値、接触の強度の最大の２分の１の値、接触の強度の最大の９０パーセントの値などのうちの１つ以上に基づいている。いくつかの実施形態では、特性強度を特定する際に（例えば、特性強度が経時的な接触の強度の平均であるときに）、接触の持続期間が使用される。いくつかの実施形態では、特性強度は、ユーザによって操作が実行されたかどうかを判定するために、１つ以上の強度閾値のセットと比較される。例えば、１組の１つ以上の強度閾値は、任意選択的に、第１の強度閾値及び第２の強度閾値を含む。この例では、第１の閾値を超過しない特性強度を有する接触は、第１の動作をもたらし、第１の強度閾値を超過するが第２の強度閾値を超過しない特性強度を有する接触は、第２の動作をもたらし、第２の閾値を超過する特性強度を有する接触は、第３の動作をもたらす。いくつかの実施形態では、特性強度と１つ以上の閾値との間の比較は、第１の動作を実行するべきか、それとも第２の動作を実行するべきかを判定するために使用されるのではなく、１つ以上の動作を実行するべきか否か（例えば、それぞれの動作を実行するべきか、それともそれぞれの動作を実行するのを取り止めるべきか）を判定するために使用される。
【０１５２】
いくつかの実施形態では、特性強度を特定する目的のために、ジェスチャの一部分が識別される。例えば、タッチ感知面は、任意選択的に、開始場所から遷移して終了場所に到達する連続するスワイプ接触を受信し、その時点で接触の強度が増大する。この例では、終了場所での接触の特性強度は、任意選択的に、スワイプ接触全体ではなく、連続するスワイプ接触の一部分のみ（例えば、スワイプ接触のうち終了場所の部分のみ）に基づいている。いくつかの実施形態では、任意選択的に、接触の特性強度を判定する前に、平滑化アルゴリズムがスワイプ接触の強度に適用される。例えば、平滑化アルゴリズムは、任意選択的に、非加重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び／又は指数平滑化アルゴリズムのうちの１つ以上を含む。いくつかの状況では、これらの平滑化アルゴリズムは、特性強度を特定する目的のために、スワイプ接触の強度の小幅な上昇又は降下を排除する。
【０１５３】
タッチ感知面上の接触の強度は、任意選択的に、接触検出強度閾値、軽い押下の強度閾値、深い押下の強度閾値、及び／又は１つ以上の他の強度閾値などの１つ以上の強度閾値に対して特徴付けられる。いくつかの実施形態では、軽い押圧強度閾値は、通常、物理マウスのボタン又はトラックパッドをクリックすることに関連付けられた動作をデバイスが実行する強度に相当する。いくつかの実施形態では、深い押圧強度閾値は、通常、物理マウスのボタン又はトラックパッドをクリックすることに関連付けられた動作とは異なる動作をデバイスが実行する強度に相当する。いくつかの実施形態では、軽い押下の強度閾値を下回る（例えば、それを下回ると接触が検出されなくなる公称接触検出強度閾値を上回る）特性強度を有する接触が検出されたとき、デバイスは、軽い押下の強度閾値又は深い押下の強度閾値に関連付けられた動作を実行することなく、タッチ感知面上の接触の動きに従ってフォーカスセレクタを動かす。一般に、特に明記しない限り、これらの強度閾値は、ユーザインタフェース図の様々なセットの間で一貫している。
【０１５４】
軽い押下の強度閾値を下回る強度から、軽い押下の強度閾値と深い押下の強度閾値との間の強度への、接触の特性強度の増大は、「軽い押下」の入力と呼ばれることがある。深い押下の強度閾値を下回る強度から、深い押下の強度閾値を上回る強度への、接触の特性強度の増大は、「深い押下」の入力と呼ばれることがある。接触検出強度閾値を下回る強度から、接触検出強度閾値と軽い押下の強度閾値との間の強度への、接触の特性強度の増大は、タッチ面上の接触の検出と呼ばれることがある。接触検出強度閾値を上回る強度から、接触検出強度閾値を下回る強度への、接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と呼ばれることがある。いくつかの実施形態では、接触検出強度閾値はゼロである。いくつかの実施形態では、接触検出強度閾値は、ゼロより大きい。
【０１５５】
本明細書に記載するいくつかの実施形態では、それぞれの押下入力を含むジェスチャを検出したことに応じて、又はそれぞれの接触（若しくは複数の接触）によって実行されたそれぞれの押下入力を検出したことに応じて、１つ以上の動作が実行され、それぞれの押下入力は、押下入力強度閾値を上回る接触（又は複数の接触）の強度の増大を検出したことに少なくとも部分的に基づいて検出される。いくつかの実施形態では、それぞれの動作は、押下入力強度閾値を上回るそれぞれの接触の強度の増大（例えば、それぞれの押下入力の「ダウンストローク」）を検出したことに応じて実行される。いくつかの実施形態では、押下入力は、押下入力強度閾値を上回るそれぞれの接触の強度の増大、及びそれに続く押下入力強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、それに続く押下入力閾値を下回るそれぞれの接触の強度の減少（例えば、それぞれの押下入力の「アップストローク」）を検出したことに応じて実行される。
【０１５６】
いくつかの実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的な入力を回避するために強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との既定の関係を有するヒステリシス強度閾値を定義又は選択する（例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりも低いＸ強度単位であり、又はヒステリシス強度閾値は、押圧入力強度閾値の７５％、９０％、若しくは何らかの妥当な割合である）。したがって、いくつかの実施形態では、押下入力は、押下入力強度閾値を上回るそれぞれの接触の強度の増大、及びそれに続く押下入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少を含み、それぞれの動作は、それに続くヒステリシス強度閾値を下回るそれぞれの接触の強度の減少（例えば、それぞれの押下入力の「アップストローク」）を検出したことに応じて実行される。同様に、いくつかの実施形態では、押圧入力は、デバイスが、ヒステリシス強度閾値以下の強度から押圧入力強度閾値以上の強度への接触の強度の増大、及び任意選択的に、その後のヒステリシス強度以下の強度への接触の強度の減少を検出するときにのみ検出され、それぞれの動作は、押圧入力（例えば、状況に応じて、接触の強度の増大又は接触の強度の減少）を検出したことに応じて実行される。
【０１５７】
説明を容易にするために、押下入力強度閾値に関連付けられた押下入力、又は押下入力を含むジェスチャに応じて実行される動作の説明は、任意選択的に、押下入力強度閾値を上回る接触の強度の増大、ヒステリシス強度閾値を下回る強度から押下入力強度閾値を上回る強度への接触の強度の増大、押下入力強度閾値を下回る接触の強度の減少、及び／又は押下入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少のいずれかを検出したことに応じてトリガされる。更に、押圧入力強度閾値を下回る接触の強度の減少を検出したことに応じて実行されるように動作が記載される例では、動作は、任意選択的に、押圧入力強度閾値に対応し、かつそれよりも低いヒステリシス強度閾値を下回る接触の強度の減少を検出したことに応じて実行される。
【０１５８】
次に、ポータブル多機能デバイス１００、デバイス３００、又はデバイス５００などの電子デバイス上で実施されるユーザインタフェース（「ＵＩ」）及び関連プロセスの実施形態に注意を向ける。
【０１５９】
図６Ａ〜６Ｍは、いくつかの実施形態による、アバター（例えば、絵文字又は非写実的なグラフィック表現などの他のグラフィック表現）を作成する例示的なユーザインタフェースを示す。これらの図におけるユーザインタフェースは、図７Ａ〜図７Ｂにおけるプロセスを含む、後述のプロセスを例示するために使用される。
【０１６０】
図６Ａは、いくつかの例では前述のデバイス１００、デバイス３００、又はデバイス５００の特定のフォームファクタである、デバイス６００を示す。デバイス６００は、いくつかの実施形態ではタッチ感知ディスプレイである、ディスプレイ６０１と、カメラ６０２とを含む。加えて、デバイス６００のいくつかの実施形態では、カメラ６０２と共に、追加のセンサ（例えば、深さセンサ、ＩＲセンサ等）及び／又は他の構成要素（例えば、フラッシュ若しくはＩＲエミッタ）が存在する。
【０１６１】
図６Ａにおいて、ディスプレイ６０１は、ユーザ名テキストフィールド６０６と、パスワードテキストフィールド６０７と、新たなアカウントを作成したりユーザ名を回復したりすることが可能なインタフェースに入るアフォーダンス６０８とを含む、ログインインタフェース６０３を表示している。例えばタッチ６０９を介して、テキストフィールドのうちの１つを選択することで、図６Ｂに示すように、テキスト入力インタフェースをデバイス６００に表示させる。
【０１６２】
図６Ａにおいて、戻るボタン６０４は、例えばユーザが言語を選択する又は他のデバイス設定を指定することを可能にした、前の画面にユーザを戻す。次のボタン６０５は、ユーザ名テキストフィールド６０６及びパスワードテキストフィールド６０７に入力されたユーザ名及びパスワードの認証をデバイス６００に試みさせる。
【０１６３】
図６Ｂは、キーボード６０８を表示したログインインタフェース６０３を示す。キーボード６０８は、ユーザがテキストをテキストフィールド６０６及び６０７に入力することを可能にする。ユーザは、例えば、次のボタン６０５が表示されたディスプレイ６０１のタッチを用いて、次のボタン６０５を選択することによって、入力ユーザ名及びパスワードを認証するようにデバイス６００に要求する。
【０１６４】
入力されたユーザ名及びパスワードの認証成功に続いて（又は応じて）、デバイスは、図６Ｃに示すように、プロファイル画像作成プロセスを開始する。ユーザは、例えばディスプレイ６０１のタッチ６１０を介して、ボタン６０９を選択することにより、このプロセスを開始する。
【０１６５】
図６Ｄは、プロファイル画像作成プロセスにおいて次のステップを表示するデバイス６００を示す。図６Ｄにおいて、ユーザは、（アフォーダンス６１１を介して）アバターを作成する、（アフォーダンス６１２を介して）モノグラムを使用する、又は（アフォーダンス６１３を介して）写真を使用するという選択肢を与えられる。デバイス６００は、例えばタッチ６１４を介して、アバターを作成することをユーザが選択したことに応じて、図６Ｅ〜図６Ｍに関して説明されるアバター作成インタフェースに入る。アフォーダンス６１２を選択すると、例えば、モノグラムに対して１つ、２つ又は３つの文字を入力ことと（例えば、文字の及び／又は背景の）１つ以上の色を選択することとによって、ユーザがモノグラムを作成することを可能にするモノグラム作成インタフェースに入る。
【０１６６】
図６Ｅは、ビューファインダ６１６、プレースホルダアバター６１７、及びアバター作成プロセスを続けるためのアフォーダンス６１８を含む、アバター作成インタフェース６１５を示す。ビューファインダ６１６は、カメラ６０２などのデバイス６００のカメラの視野を表し、すべての実施形態において存在する必要はない。
【０１６７】
プレースホルダアバター６１７は、一部の例におけるユーザの性別を除いて、ユーザの具体的な特性を表さないシルエット又はマネキンである。例えば、プレースホルダアバター６１７は、任意選択的に、一般の人物の輪郭であり、（例えば、キャプチャされた画像データによって検出されるような）ユーザの検出された特性（例えば、肌の階調、顔の形、又は髪型）に依存しない。例えばアフォーダンス６１８のタッチ６１９を介して、アバター作成プロセスを継続することをユーザが選択したことに応じて、デバイス６００は、カメラの視野に対するユーザの相対的な位置を判定する。ユーザが視野と適切に位置合わせされると、デバイス６００は、カメラ６０２及び／又は他のセンサを使用して、ユーザの画像データをキャプチャする。しかしながら、ユーザが適切に位置合わせされていない場合、デバイス６００は、例えば図６Ｆに示すように、アバター作成インタフェース６１５を更新する。
【０１６８】
図６Ｆにおいて、デバイス６００は、デバイス６００のカメラ６０２及び／又は他のセンサによって現在収集されている画像データは１組の画像基準（例えば、位置合わせ基準、サイジング基準、照明基準、位置決め基準）を満たしていないと判定した。具体的には、この場合、ユーザは、視野の中心からオフセットしている。この判定に応じて、デバイス６００は、ユーザがデバイス６００に対する彼らの相対位置をどのように調整すべきか（例えば、彼らの頭／体、デバイス６００、又はその両方を移動することによって）を命令６２０の形でフィードバックするために、アバター作成インタフェース６１５を更新する。アバター作成インタフェース６１５はまた、アバタープレースホルダ６１７はビューファインダ６１６と比較してオフセットされていることを示すことによって、ずれに関するフィードバックを提供する。
【０１６９】
デバイス６００は、画像基準が満たされているかどうかを判定するために、画像データの評価を継続する。基準が満たされていない場合、デバイス６００は、図６Ｇ及び６Ｈにおいて見られるように、追加のユーザフィードバックを提供するために、アバター作成インタフェース６１５を更新する。
【０１７０】
具体的には、図６Ｇでは、デバイス６００は、ユーザがデバイス６００から遠すぎる（例えば、カメラ６０２から遠すぎる）と判定した。これに応じて、デバイス６００は、アバター作成インタフェース６１５を更新して、プレースホルダアバター６１７がビューファインダ６１６と比較して小さいことを示す。また、命令６２１が提供されて、相対位置を変更する方法に関するフィードバックをユーザに与える。
【０１７１】
同様に、図６Ｈでは、デバイス６００はユーザがデバイス６００に近すぎる（例えば、カメラ６０２に近すぎる）と判定した。これに応じて、デバイス６００は、アバター作成インタフェース６１５を更新して、プレースホルダアバター６１７がビューファインダ６１６と比べて大きいことを示す。加えて、命令６２２が提供されて、相対位置の変更方法のフィードバックをユーザに与える。
【０１７２】
図６Ｉにおいて、デバイス６００は、プレースホルダアバター６１７がビューファインダ６１６を埋めていることによって示されるように、画像基準は満たされていると判定した。これに応じて、デバイス６００は、カメラ６０２を使用してユーザの画像データをキャプチャする。この画像データは、いくつかの例では、静止画像データ及び／又はビデオ画像データである。
【０１７３】
図６Ｊにおいて示すように、図６Ｇにおいてデバイス６００が画像データをキャプチャした後、デバイス６００は、アバター作成インタフェース６１５を更新して、位置を変えて更に画像データを取得するようにユーザに指示する。具体的には、アバター作成インタフェース６１５が、命令６２３を介してユーザにフィードバックを提供し、プレースホルダアバター６１７を更新して、回した頭を示して、ユーザの頭の位置決めの方法に関してユーザに案内を提供する。任意選択的に、ユーザが、その頭を僅かに左に回し終えた後、プレースホルダアバター６１７は、更新して、他の方向に回された頭を示す。ユーザが要求された動きを完了する間、デバイス６００は、画像データ（例えば、静止及び／又はビデオ画像データ）を連続的に又は定義済みの条件（例えば、一定レベルの回転が完了するなど、追加画像基準が満たされること）に基づいてキャプチャする。
【０１７４】
デバイス６００が十分な画像データをキャプチャしてユーザのアバターを生成すると、図６Ｋに示すように、アバター作成インタフェース６１５は更新される。いくつかの例では、予めキャプチャされた画像データに基づくアバター６２４が、様々な生成段階で示される。例えば、アバターが生成されるとき、時間とともに追加の特徴や詳細が現れる。一部の実施形態において、アバターの構造的特徴が表示される間、肌の階調などの色調は、生成された肌の階調が正しいことをユーザが確認することができるまで、表示されない。
【０１７５】
図６Ｌは、キャプチャされた画像データに基づいてアバター６２５が生成された後のアバター作成インタフェース６１５を示す。アバター６２５は、キャプチャした画像データに基づく肌の階調を有するように示されているが、一部の実施形態では、表示されるアバターは、キャプチャされた画像データに基づく肌の階調を有さないことになる（例えば、表示されるアバターは、キャプチャ画像データとは無関係な所定の肌の階調を使用する）、又は肌の階調はアバターに全く適用されない。
【０１７６】
図６Ｌにおいて、アバター作成インタフェース６１５は、生成された肌の階調を確認又は調整するオプションをユーザに提示する。具体的には、アフォーダンス６２６〜６３０のそれぞれは、特定の肌の階調を示す。また、インジケータ（例えば、アフォーダンス６２７のボールディング）は、現在選択されている肌の階調を示す。付加的な肌の階調のオプションは、アフォーダンス６２６〜６３０が位置するエリア上のスワイプジェスチャを介して任意選択的にアクセスされる。ユーザが正しい肌の階調を決定した後は、図６Ｍに示すように、カスタマイズの前の最終的なアバター６３３を見るために、次のボタンが選択される。次のボタン６３４を選択することによって、例えば、図９Ａ〜９Ｈに関して以下で説明するように、カスタイマイズインタフェースにユーザは任意選択的にアクセスすることができる。
【０１７７】
図７は、いくつかの実施形態による、電子デバイスを使用したユーザアバター作成の方法を示すフロー図である。方法７００は、ディスプレイを有するデバイス（例えば、１００、３００、５００）で実行される。方法７００のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【０１７８】
以下において説明されるように、方法７００は、ユーザアバターを作成する直感的方法を提供する。この方法は、ユーザアバターを作成する際のユーザの認知負担を軽減し、それによって、より効率的なヒューマンマシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合には、ユーザがアバターをより高速かつより効率的に作成することを可能にすることにより、電力が節約され、バッテリ充電の間隔が長くなる。
【０１７９】
ディスプレイ（例えば、ディスプレイ６０１）及び１つ以上のカメラ（例えば、カメラ６０２）を有する電子デバイス（例えば、図６Ａ〜６Ｍのデバイス６００）は、プレースホルダアバター（例えば、６１７）（例えば、２Ｄ若しくは３Ｄである及び／又はユーザの物理的外見に基づかない、ユーザを表すシルエット又はマネキン（背景を有する又は有さない）などの一般的な輪郭）をディスプレイに表示し（７０２）、プレースホルダアバターの表示は、電子デバイスの１つ以上のカメラ（例えば、カメラ６０２）の視野に対するユーザの第１の位置に基づく（例えば、図６Ｆ〜６Ｈに示すように）（例えば、プレースホルダアバターの相対位置、相対サイズ、又は向きにより、１つ以上のカメラからの画像データ内のユーザを表す）。いくつかの例では、ビューファインダに対するプレースホルダアバターのサイズは、ユーザが１つ以上のカメラからどのくらい離れているかに基づいて、変更される（例えば、図６Ｆ及び６Ｇ）。いくつかの例では、１つ以上のカメラの視野内のユーザの位置に基づいて、ビューファインダに対するプレースホルダアバターの位置が変更される（例えば、図６Ｅ）。いくつかの例では、１つ以上のカメラに対するユーザの向きに基づいて、プレースホルダアバターの向きが変更される。いくつかの例では、プレースホルダアバターは、電子デバイスに対してユーザが正しい位置にある場合にビューファインダ内に適合する背景を含む（図６Ｉ）。一部の実施形態において、プレースホルダアバターは、ユーザの画像データとは無関係の所定の人のシルエットである。
【０１８０】
電子デバイスは、プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出する（７０４）。例えば、任意選択的に、電子デバイスは、カメラ（例えば、６０２）からの画像データを使用して、いつユーザが電子デバイスと異なる相対位置にあるかを判定する。一部の実施形態において、第１の画像データは、静止データ（例えば、単一の画像）及びビデオデータ（例えば、一連の順次の画像）の両方を含む。いくつかの実施形態では、電子デバイスがユーザの動きを検出するのではなくて、電子デバイスが、キャプチャされた画像データを連続的に評価して、画像基準（以下に記載）が満たされているかを判定する。
【０１８１】
１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出したことに応じて（７０６）、電子デバイスは：１つ以上のカメラ（例えば、６０２）の視野に対するユーザの第２の位置は第１の組の画像基準を満たしている（例えば、図６Ｉに示すように）という判定に従って、１つ以上のカメラ（例えば、６０２）でユーザの第１の画像データ（例えば、視覚的、赤外線、及び／又は深度データを含む静止及び／又はビデオ画像データ）をキャプチャし（７０８）（例えば、ユーザ入力なしに及び／又は第１の組の画像基準が満たされることに応じて、自動的にキャプチャし）、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバター（例えば、６１７）の表示を続けつつ、電子デバイスに対する位置を第１の目標位置に変更するために、第１の案内（例えば、図６Ｇ〜６Ｉの６１６及び６１７、６２０〜６２１）をユーザに提供する（７１０）（例えば、画像データ内でユーザを中心に置くために電子デバイスが動かされる又は向きを変えられる必要があることを示すようにプレースホルダアバターを配置する、デバイスをユーザの近くに又はユーザから遠くに移動させる必要があることを示すためにプレースホルダアバターのサイズを変更する、ユーザ又は電子デバイスを動かす方法に関するテキスト命令又は他の視覚インジケータを表示する）。電子デバイスに対するユーザの頭部の正しい位置決めに関するユーザフィードバックを提供することにより、電子デバイスはユーザアバターを生成する更に単純なプロセスを提供し、電子デバイスの使い勝手は向上する。より単純なプロセスにより、ユーザはアバター作成を迅速に完了させることができ、電子デバイスをより効率的にし、電力使用量を減少させ、デバイスのバッテリ寿命を改善する。
【０１８２】
いくつかの実施形態によれば、電子デバイスは、第１の画像データをキャプチャした後、第１の画像データに基づいて判定されたユーザの外観に基づいて選択された特徴を含むユーザ固有のアバター（例えば、６２４、６２５）（例えば、ユーザの特徴を反映した特徴を有する２Ｄ又は３Ｄモデル）を生成する（７１４）（例えば、少なくとも第１の画像データ及び第２の画像データに基づいてユーザを表す３Ｄアバターを生成する）。いくつかの例では、アバターは、ユーザの肌の階調、目の色、髪の色、髪型、及び顔の毛などの特性を反映する。いくつかの例では、ユーザ固有のアバターを生成することは、（例えば、ユーザの１つ以上の付加的位置から）付加的画像データをキャプチャした後に発生し、このユーザ固有のアバターの生成は、この付加的画像データに基づく。いくつかの例において、ユーザ固有のアバターは、頭部のみを含む。いくつかの例において、ユーザ固有のアバターは、頭、首、肩、及び胴の一部を含む。いくつかの例において、ユーザ固有のアバターは、全身のアバターである。
【０１８３】
いくつかの実施形態によれば、電子デバイスは、生成されたユーザ固有のアバター（例えば、６２４、６２５）をディスプレイに表示する（例えば、図６Ｋ〜６Ｍ）（例えば、プレースホルダアバターの表示をユーザ固有のアバターに置き換える、又は、プレースホルダアバターをユーザ固有のアバターにモーフィングすることによってプレースホルダアバターの外観を変更する）。
【０１８４】
一部の実施形態によれば、電子デバイスは、プレースホルダアバターの表示（例えば、６１７）と同時にビューファインダグラフィカル要素（例えば、６１６）（例えば、１つ以上のカメラの視野の中央を表す円）を表示し（７１６）、プレースホルダアバターの表示に対するビューファインダグラフィカル要素の表示は、１つ以上のカメラの視野に対するユーザの第１の又は第２の位置に基づく（例えば、図６Ｆ〜６Ｈ）。いくつかの例では、プレースホルダアバター及びビューファインダグラフィカル要素が合致する場合、１つ以上のカメラとユーザとは適切に位置決めされている（例えば、図６Ｉ）。別法としてかつ任意選択的に、ユーザが１つ以上のカメラから遠すぎる場合、プレースホルダアバターは、ビューファインダグラフィカル要素と比べて小さく見える（例えば、図６Ｇ）。もう１つのオプションとして、ユーザが１つ以上のカメラからオフセットされている場合、プレースホルダアバターがビューファインダグラフィカル要素と合致しないように、プレースホルダアバターは、同様に、ビューファインダグラフィカル要素からオフセットされる（例えば、図６Ｆ）。グラフィカルビューファインダを表示し、グラフィカルビューファインダに対してプレースホルダアバターを表示することにより、ユーザは、より容易に電子デバイスのカメラと彼ら自身を位置合わせすることができ、ユーザ固有のアバターを作成する電子デバイスの使用効率及び精度を向上させる。これにより、電子デバイスの使用電力は減り、デバイスの電池寿命は延びる。
【０１８５】
いくつかの実施形態によれば、電子デバイスは、１つ以上のカメラ（例えば、６０２）の視野に対するユーザの第２の位置（例えば、方向、ユーザの近接、１つ以上のカメラの視野内のユーザの位置、及び／又はユーザの照明）が第１の組の画像基準（例えば、１つ以上のカメラへの近接、ユーザの向き、照明、１つ以上のカメラに対するユーザの相対位置に関する基準）を満たしているかどうかを判定する。第２の画像データが画像基準を満たしているかどうかを判定することにより、電子デバイスは、低品質の又は誤った画像データを使用することを回避する改良されたアバター作成プロセスを提供する。また、画像データに関するユーザへのフィードバックを提供することにより、ユーザの正確なアバターを効率的に生成するのに必要な画像データを電子デバイスがキャプチャする可能性は高まる。誤った又は低画質の画像データの使用をなくすことにより、電子デバイスをより効率的にし、電力使用量を減らし、デバイスのバッテリ寿命を改善する。
【０１８６】
いくつかの実施形態によれば、電子デバイスは、第１の画像データをキャプチャした後に、電子デバイスに対する位置を第２の目標位置に変更するようにユーザに第２の案内（例えば、６２３）を提供し（例えば、ユーザは頭部を回すべきであることを示すために回転を伴うユーザ輪郭、又はユーザの頭を回すようにという他の視覚的命令を表示する）、第１の画像データの後にキャプチャされた画像データに基づいてプレースホルダアバターの表示を更新し（例えば、図６Ｊ）（例えば、回転する又はビューファインダに対して異なって位置決めされたユーザ輪郭を示す）、第２の案内を提供した後、電子デバイスに対するユーザの第３の位置は第２の組の画像基準（例えば、１つ以上のカメラに対するユーザの頭の向き、１つ以上のカメラへのユーザの近接、１つ以上のカメラに対するユーザの位置に関する要件）を満たしているかどうかを判定し、第２の検出された位置が第２の組の画像基準（例えば、電子デバイスに対するユーザの回転の付加的基準を有する第１の組の画像基準と類似の基準）を満たしているという判定に従って、１つ以上のカメラでユーザの（例えば、第１の画像データと類似の）第２の画像データをキャプチャし、検出された第２の位置は第２の組の画像基準を満たしていないという判定に従って、第２の目標位置に電子デバイスに対する位置を変更するようにユーザに第２の案内（例えば、前に提供された案内と同じ又は異なる形をとる案内）を継続して提供する。ユーザに付加的な案内を提供することにより、電子デバイスは、ユーザ固有のアバターを生成するために必要な様々な位置で追加の画像データを効率的に取得することができる。これにより、ユーザは、電子デバイスとより迅速かつ効率的に対話することができ、電子デバイスをより効率的にし、電力使用量を低減し、デバイスの電池寿命を改善する。
【０１８７】
一部の実施形態によれば、第１の案内（例えば、６２０〜６２２）は、第１の画像データに基づいてプレースホルダアバター（例えば、図６Ｆ〜６Ｈの６１７）の外観を変更することなくユーザに提供される（７１２）（例えば、一部の実施形態において、プレースホルダアバターの位置及びサイズは画像データに基づき、プレースホルダアバターの視覚的外観の特徴、形状、シェーディング、及び他の態様は第１の画像データに基づかない）。いくつかの実施形態では、それらは、いずれの画像データにも基づかない。いくつかの例では、プレースホルダアバターは、アバター自体の外観（例えば、物理的特性又は特徴）を変えることなく、ビューファインダ内で移動される（例えば、図６Ｆ〜６Ｉ）。キャプチャされた画像データに基づいてプレースホルダアバターの特性を更新しないことにより、正確でないことがある中間結果を回避して、ユーザがアバター作成プロセスを継続する可能性を高め、それにより、電子デバイスのユーザ固有のアバターを作成する能力を高める。これにより、マンマシンインタフェースを向上させ、ユーザがアバター作成プロセスを停止する可能性を低減する。
【０１８８】
いくつかの実施形態によれば、第１の案内（例えば、６２０〜６２２）を提供することは、１つ以上のカメラの視野に対するユーザの第２の位置が第１の組の画像基準を満たしているときにユーザフィードバック（例えば、蝕知フィードバック、視覚的フィードバック、又は可聴フィードバック）を提供すること、あるいは、デバイスに対して第１の目標位置にあるように１つ以上のカメラの視野に対してユーザがどのように位置付けられるべきかに基づいて命令（例えば、テキストの命令、アニメーションの命令、又は音声命令）（例えば、ユーザに電子デバイスを移動させる又はユーザ自身の位置を変えさせる命令）を提供することを含む。第１の組の画像基準が満たされた場合にユーザフィードバックを提供することにより、作成プロセスについてユーザに知らせ続けることによって、電子デバイスの有用性を向上させる。
【０１８９】
いくつかの実施形態によれば、電子デバイスは、第１の画像データをキャプチャした（７１８）後、第１の画像データに基づいて選択された１つ以上の推奨される肌の階調（例えば、６２６〜６３０）を示す情報を表示し（７２０）（例えば、第１の画像データに基づく計算された肌の会長を表示する、又は第１の画像データに基づく肌の階調の範囲を表示する）（例えば、図６Ｌ）、（例えば、確認アフォーダンスを選択して又は、特定の肌の階調を選択して）第１の画像データに基づいて選択された１つ以上の肌の階調の色のうちの対応する推奨される肌の階調の色を確認するユーザ入力を受信し（７２４）、ユーザ固有のアバターの電子デバイス生成は、推奨される肌の階調の色に更に基づく。いくつかの例において、ユーザ固有のアバターの生成は、（例えば、ユーザの１つ以上の付加的位置からの）付加的画像データのキャプチャの後に発生し、ユーザ固有のアバターの生成は、付加的画像データに更に基づく。ユーザが肌の階調を確認できるようにする又は新たな肌の階調を選択できるようにすることにより、電子デバイスは、画像キャプチャプロセスの間に（肌の階調の判定に影響を与え得る）照明の変化を説明することにより、改良されたアバター作成プロセスを提供する。これにより、ユーザがアバター作成プロセスを繰り返さなければならない可能性を低減し、電子デバイスをより効率的にし、電力使用量を低減し、デバイスの電池寿命を改善する。
【０１９０】
いくつかの実施形態によれば、第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報の表示（７２２）は、アバターに推奨される肌の階調の色を適用せずに表示される。一部の実施形態で、電子デバイスは、第１の画像データに基づいてユーザ固有のプレースホルダアバター（例えば、６２４）を生成し、第１の画像データとは無関係の所定の肌の階調の色を使用し（例えば、肌の階調の着色なしに第１の画像データにおけるユーザに似た形状及び特徴を有する白黒のアバターを生成する）、対応する推奨される肌の階調の色を確認するユーザ入力を受信する前にユーザ固有のプレースホルダアバターを表示する。いくつかの例において、ユーザ固有のアバターを生成することは、（例えば、ユーザの１つ以上の付加的位置から）付加的画像データをキャプチャした後に発生し、ユーザ固有のアバターの生成は更に、付加的画像データに基づく。生成されたアバターを塗る前にユーザが新しい肌の階調を選択できるようにすることにより、電子デバイスは、キャプチャされた画像データに基づいて選択された肌の階調にユーザが落胆するリスクを低減する、よりアクセス可能なアバター作成プロセスを提供する。これにより、ユーザがアバター作成プロセスを繰り返さなければならない可能性を低減し、電子デバイスをより効率的にし、電力使用量を低減し、デバイスの電池寿命を改善する。
【０１９１】
いくつかの実施形態によれば、電子デバイスは、第１の画像データをキャプチャしたことに応じて、進度インジケータ（例えば、ビューファインダグラフィカル要素の周囲のインジケータ又はバーインジケータ）の表示を更新し、この進度インジケータの表示はキャプチャされたアバター画像データの量に基づく。いくつかの例では、進度インジケータは、アバターを生成するための画像データの目標量の達成に向けた進度を示す。
【０１９２】
いくつかの実施形態によれば、電子デバイスは、ユーザの画像データ（例えば、第１の画像データ又は他の画像データ）をキャプチャし、ユーザの画像データが照明基準を満たすことに失敗したと判定すると（図６Ｈ）、ユーザが１つ以上のカメラの視野の照明を変更するための命令（例えば、６２２）を表示する。照明に関する案内を提供することにより、キャプチャされた画像データが適切な照明を有することを確保して肌の階調の判定の精度を高め、（一部の状況では）画像データに基づく肌の階調の判定に影響を与え、それにより、改良されたアバター作成プロセスを実現する。これにより、ユーザがアバター作成プロセスを繰り返さなければならない可能性を低減し、電子デバイスをより効率的にし、電力使用量を低減し、デバイスの電池寿命を改善する。
【０１９３】
一部の実施形態によれば、電子デバイスは、第１の画像データに基づいてユーザの身体的特徴（例えば、髪型、顔の毛、又は目の色）あるいはアクセサリの特徴（例えば、眼鏡、ピアス、又はタトゥー）を判定し、ユーザ固有にアバターの身体的特徴又はアクセサリの特徴の表現を加えて、ユーザ固有のアバターを生成する（例えば、図６Ｋ〜６Ｌ）。いくつかの実施形態では、ユーザ固有のアバターは、ユーザが第１の画像データにおいて表情を有するかどうかに関わらず、独立した表情（例えば、笑みのない又は渋面）である。いくつかの例において、ユーザの第１の画像データは、表情を示すものとして電子デバイスによって識別された画像データを含み、ユーザ固有のアバターは、表情に依存しない又は中立の表情になるように生成される。他の例では、本方法は、表情を示す画像データを識別することを含まない。
【０１９４】
いくつかの実施形態によれば、第１の画像データに基づいてユーザ固有のアバターを生成することは、複数のアバターを生成することを含み、複数のアバターは、第１のアバターと、第１のアバターとは異なる第２のアバターとを含み、電子デバイスは、複数のアバターを表示し、複数のアバターのうちの１つを選択するユーザ入力を受信する。いくつかの例では、複数のアバターのうちのアバターの各々は異なる。いくつかの例において、複数のアバターは、アバターの定義済みの組の特性に対する変更に基づいて異なる。
【０１９５】
一部の実施形態によれば、電子デバイスは、ユーザ固有のアバターを生成した後、レシピ（例えば、アバターの非グラフィカルな表現）としてアバターを記憶し、レシピは、アバターの構造（例えば、目、鼻、口、眼鏡）及びアバターのパラメータ（例えば、目の色、鼻のサイズ、口の形状、眼鏡のタイプ）を定義する。ユーザ固有のアバターをレシピとして記憶することにより、電子デバイスは、ユーザ固有のアバターのレシピ全体に代えて、ユーザ固有のアバターのレシピに対する変更を送るだけでよいなど、より少量のデータを送ることによって、ユーザ固有のアバターをより効率的に記憶及び送信することができる。したがって、この電子デバイスは、より効率的であり、電力使用量を低減し、デバイスの電池寿命を改善する。
【０１９６】
方法７００（例えば、図７）に関して前述したプロセスの詳細はまた、類似の方式で、後述／前述の方法にも適用可能であることに留意されたい。例えば、方法１０００及び方法１６００は、方法７００を参照して前述した、様々な方法の特性のうちの１つ以上を任意選択的に含む。例えば、方法７００は、方法１０００又は方法１６００の特定のステップを含むことができる（例えば、方法１０００及び方法１６００の一部又はすべてが、同じインタフェースの一部として、方法７００の後に実行され得る）。簡潔にするために、これらの詳細は、以下で繰り返さない。
【０１９７】
いくつかの実施形態によれば、図８は、説明される様々な実施形態の原理に従って構成された電子デバイス８００の例示的な機能ブロック図を示す。いくつかの実施形態によれば、電子デバイス８００の機能ブロックは、前述の技術を実行するように構成されている。デバイス８００の機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せによって、任意選択的に実装される。図８で説明する機能ブロックは、説明される様々な例の原理を実施するために、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者に理解されよう。したがって、本明細書の記載は、本明細書に記載されている機能ブロックの任意の可能な組合せ若しくは分離、又は更なる定義を任意選択的にサポートする。
【０１９８】
図８に示されるように、電子デバイス８００は、グラフィックユーザインタフェースを表示するように構成されたディスプレイユニット８０２、カメラユニット８０４、並びに、ディスプレイユニット８０２及びカメラユニット８０４に結合された処理ユニット８０６を含む。一部の実施形態において、処理ユニット８０６は、表示有効化ユニット８１０、検出ユニット８１２、画像キャプチャユニット８１４、及び提供ユニット８１６、そして任意選択的に、生成ユニット８１８、判定ユニット８２０、更新ユニット８２２、受信ユニット８２４、及び記憶ユニット８２６を含む。
【０１９９】
処理ユニット８０６は、（例えば、表示有効化ユニット８１０を使用して）プレースホルダアバターをディスプレイに表示するように構成され、このプレースホルダアバターの表示は、電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく。処理ユニット８０６は、プレースホルダアバターを表示しつつ、１つ以上のカメラに対する第２の位置へのユーザの移動を（例えば、検出ユニット８１２を使用して）検出するように構成されている。１つ以上のカメラの視野に対する第２の位置へのユーザの移動の検出に応じて、処理ユニット８０６は、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第１の画像データを（例えば、画像キャプチャユニット８１４を使用して）キャプチャすることと、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するための第１の案内を（例えば、提供ユニット８１６を使用して）ユーザに提供することとを行うように構成されている。
【０２００】
一部の実施形態では、処理ユニット８０６は、１の画像データをキャプチャした後、第１の画像データに基づいて判定されたユーザの外観に基づいて選択された特徴を含むユーザ固有のアバターを（例えば、生成ユニット８１８を使用して）生成するように更に構成されている。
【０２０１】
一部の実施形態において、処理ユニット８０６は、生成されたユーザ固有のアバターを（例えば、表示有効化ユニット８１０を使用して）表示するように更に構成されている。
【０２０２】
一部の実施形態において、処理ユニット８０６は、プレースホルダアバターの表示を同時に有するビューファインダグラフィカル要素を（例えば、表示有効化ユニット８１０を使用して）表示するように更に構成されており、このプレースホルダアバターの表示に対するビューファインダグラフィカル要素の表示は、１つ以上のカメラの視野に対するユーザの第１の又は第２の位置に基づく。
【０２０３】
一部の実施形態において、処理ユニット８０６は、１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているかどうかを（例えば、判定ユニット８２０を使用して）判定するように更に構成されている。
【０２０４】
いくつかの実施形態では、処理ユニット８０６は、第１の画像データをキャプチャした後、電子デバイスに対する位置を第２の目標位置に変更するようにユーザに第２の案内を（例えば、提供ユニット８１６を使用して）提供し、第１の画像データの後にキャプチャされた画像データに基づいてプレースホルダアバターの表示を（例えば、更新ユニット８２２を使用して）更新し、第２の案内を提供した後、電子デバイスに対するユーザの第３の位置は第２の組の画像基準を満たしているかどうかを（例えば、判定ユニット８２０を使用して）判定し、第２の検出された位置は第２の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第２の画像データを（例えば、画像キャプチャユニット８１４を使用して）キャプチャし、第２の検出された位置は第２の組の画像基準を満たしていないという判定に従って、電子デバイスに対する位置を第２の目標位置に変更するようにユーザに第２の案内を（例えば、提供ユニット８１６を使用して）提供し続けるように更に構成されている。
【０２０５】
一部の実施形態では、第１の案内が、第１の画像データに基づいてプレースホルダアバターの外観を変えることなくユーザに提供される。
【０２０６】
一部の実施形態では、第１の案内を提供することは、１つ以上のカメラの視野に対するユーザの第２の位置が第１の組の画像基準を見たいしているときにユーザにフィードバックを提供すること、又は、ユーザがデバイスに対して第１の目標位置にあるように１つ以上のカメラの視野に対してどのように位置付けられるべきかに基づいて命令を提供することを含む。
【０２０７】
一部の実施形態において、処理ユニット８０６は、第１の画像データをキャプチャした後に、第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報を（例えば、ディスプレイ有効化ユニット８１０を使用して）表示することと、第１の画像データに基づいて選択された１つ以上の肌の階調の色のうちの対応する翠帳される肌の階調の色を確認するユーザ入力を（例えば、受信ユニット８２４を使用して）受信することとを行うように更に構成され、ユーザ固有のアバターの生成は、この推奨される肌の階調の色に更に基づく。
【０２０８】
いくつかの実施形態では、第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報の表示は、推奨される肌の階調の色のいずれもアバターに適用することなく表示される。
【０２０９】
一部の実施形態において、処理ユニット８０６は、第１の画像データに基づいて、第１の画像データとは無関係の所定の肌の階調の色を使用して、ユーザ固有のプレースホルダアバターを（例えば、生成ユニット８１８を使用して）生成し、対応する推奨される肌の階調の色を確認するユーザ入力を受信する前にユーザ固有のプレースホルダアバターを（例えば、表示有効化ユニット８１０を使用して）表示するように更に構成されている。
【０２１０】
一部の実施形態において、処理ユニット８０６は、第１の画像データのキャプチャに応じて、進度インジケータの表示を（例えば、更新ユニット８２２を使用して）更新するように更に構成され、この進度インジケータの表示は、キャプチャされたアバター画像データの量に基づく。
【０２１１】
いくつかの実施形態では、第１の画像データは、静止データ及びビデオデータの両方を含む。
【０２１２】
いくつかの実施形態では、処理ユニット８０６は、ユーザの画像データを（例えば、キャプチャユニット８１４を用いて）キャプチャし、ユーザの画像データは照明基準を満たすことに失敗しているという判定に従って、１つ以上のカメラの視野の証明を変更するようにというユーザへの命令を（例えば、表示有効化ユニット８１０を使用して）表示するように更に構成されている。
【０２１３】
一部の実施形態において、処理ユニット８０６は、第１の画像データに基づいてユーザの身体的特徴又はアクセサリの特徴を（例えば、判定ユニット８２０を使用して）判定するように更に構成され、ユーザ固有のアバターを作成することは、ユーザ固有のアバターに身体的特徴又はアクセサリの特徴の表現を追加することを含む。
【０２１４】
一部の実施形態では、ユーザ固有のアバターは、ユーザが第１の画像データにおいて表情を有するかどうかとは無関係の独立した表情である。
【０２１５】
いくつかの実施形態では、第１の画像データに基づいてユーザ固有のアバターを生成することは、複数のアバターを生成することを含み、複数のアバターは、第１のアバターと、第１のアバターとは異なる第２のアバターとを含み、処理ユニットは、複数のアバターを（例えば、表示有効化ユニット８１０を使用して）表示することと、複数のアバターのうちの１つを選択するユーザ入力を（例えば、受信ユニット８２４を使用して）受信することとを行うように更に構成されている。
【０２１６】
いくつかの実施形態では、処理ユニット８０６は、ユーザ固有のアバターを生成した後、アバターをレシピとして（例えば、記憶ユニット８２６を使用して）記憶するように更に構成され、レシピは、アバター構造及びアバターパラメータを定義する。
【０２１７】
一部の実施形態では、プレースホルダアバターは、ユーザの画像データとは無関係の所定の人のシルエットである。
【０２１８】
図７Ａ及び図７Ｂを参照して前述した動作は、図１Ａ〜図１Ｂ又は図８に示される構成要素によって、任意選択的に実施される。例えば、キャプチャ動作７０８は、カメラモジュール１４３、光センサコントローラ１５８、及び光センサ１６４によって任意選択的に実施される。同様に、当業者には、図１Ａ〜１Ｂで示した構成要素に基づいて他の処理がどのように実行され得るかは明らかであろう。
【０２１９】
図９Ａ〜９Ｈは、いくつかの実施形態による、ユーザアバターをカスタマイズする例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、図１０のプロセスを含む、後述のプロセスを説明するために使用される。
【０２２０】
図９Ａは、一部の例では前述のデバイス１００、デバイス３００、又はデバイス５００の特定のフォームファクタである、（図６Ａに関して前述した）デバイス６００を示す。デバイス６００は、一部の実施形態ではタッチ感知ディスプレイである、ディスプレイ６０１を含む。
【０２２１】
図９Ａにおいて、デバイス６００は、ディスプレイ６０１にアバターカスタマイズインタフェース９００を表示している。いくつかの例では、アバターカスタマイズインタフェース９００は、図６Ａ〜６Ｍ、７Ａ〜７Ｂ、及び８に関して前述したアバター作成インタフェースを介してアクセスされる。他の例では、アバターカスタマイズインタフェース９００、又は類似のインタフェースは、デバイス６００にインストールされたアプリなどの他の方法を介してアクセスされる。アバターカスタマイズインタフェース９００は、アバター表示領域９００Ａ、特徴選択制御領域９００Ｂ、及び特徴オプション制御領域９００Ｃを含む。アバター表示領域９００Ａは、編集するために現在選択されているアバターを表示する。図９Ａの場合、現在選択されているアバターは、アバター９０１である。
【０２２２】
特徴選択制御領域９００Ｂは、特徴表現のリボン９０７〜９１１を含む。各表現は、アバター９０１の特徴（例えば、目、耳、鼻、顔、眼鏡、髪、顎、眉毛）に対応している。付加的な特徴表現が利用可能であるが、空間制約によって表示できない場合、デバイス６００は、特徴選択制御領域９００Ｂでのスワイプなどのユーザ入力に応じて付加的な特徴表現を表示する。また、特徴制御領域９００Ｂは、現在選択されているアバター特徴を示すインジケータを含む。図９Ａの場合、表現９０９上のボールドは、表現９０９に関連付けられた特徴が編集するために選択されていることを示す。他の例では、他のインジケータ（例えば、矢印、強調表示、又は中央に位置付けられること）が使用される。いくつかの例では、１つ以上の特徴表現が、対応する特徴の形になっている。例えば、特徴表現９０８が、アバターの目に対応する場合、特徴表現９０８は、目の形であるか、又は、それが目に対応することをグラフィックで示すように他の方法で作成される。
【０２２３】
特徴オプション制御領域９００Ｃは、選択されたアバター特徴の異なる利用可能なオプションに対応するオプション表現のリボン９０２〜９０６を含む。例えば、図９Ａでは、特徴表現９０９が耳の特徴に対応する場合、オプション表現９０２〜９０６は、一部の例において、耳の異なるタイプ（例えば、形状、サイズ、外観）を表す。特徴表現に類似して、オプションの表現のうちの１つ以上は、対応するオプションの形状になっている。例えば、特徴表現９０９がアバターの耳に対応する場合、特徴表現９０９は、耳の形をしているか、又は、それが耳に対応していることをグラフィックで示すように他の方法で作成される。同様に、１つ以上のオプション表現９０２〜９０６は、表現に対応する耳のタイプを反映する形状をしている。例えば、小さい、広い耳のオプション表現は、いくつかの例において、（他の表現と比較して）小さくて広い耳である。また、オプション制御領域９００Ｃは、現在選択されているオプションを示すインジケータを含む。図９Ａの場合、表現９０６上のボールドは、表現９０６に関連付けられたオプションがアバター９０１について選択されていることを示す。他の例では、他のインジケータ（例えば、矢印、強調表示、又は中央に位置付けられること）が使用される。
【０２２４】
図９Ｂは、例えば、アバターの髪に対応する特徴表現９０８上のタッチ入力９１２（図９Ａ）を介して、新たな特徴が編集のために選択された後の、アバターカスタマイズインタフェース９００を示す。図９Ｂでは、デバイス９００は、アバターカスタマイズインタフェース９００を更新して、表現９０８に対応する特徴（例えば、図９Ｂの髪）が編集のために選択されていることを示し、編集のための選択された特徴に対応するオプション表現９１３〜９１７を示し、オプション表現９１５（例えば、図９Ｂに描かれたアバター９０１の髪型）がアバター９０１の現在選択されている特徴オプションであることを示し、選択特徴オプションの利用可能な色に対応する色の表現９１８〜９２２を含む色選択制御領域９００Ｄを示し、現在選択されている特徴オプションの現在選択されている色（表現９２０に対応する色）を示している。
【０２２５】
図９Ｃは、例えば図９Ｂのタッチ９２３を介して、ユーザが表現９１７に対応する新たな髪型を選択した後のアバターカスタマイズインタフェース９００を示す。アバター９０１は、新たな髪型を反映するように更新されている。また、アバターカスタマイズインタフェース９００は、表現９１７が現在選択されている特徴オプションであることを示すように更新されている。
【０２２６】
図９Ｄは、例えば図９Ｃのタッチ９２４を介して、ユーザが表現９２２に対応する新たな髪の色を選択した後のアバターカスタマイズインタフェース９００を示す。アバター９０１は、新たな髪の色を反映するように更新されている。また、アバターカスタマイズインタフェース９００は、表現９２２が現在選択されている色オプションであることを示すように更新される。
【０２２７】
図９Ｅは、特徴選択制御領域９００Ｂに付加的特徴表現９２６〜９３０が表示された後のアバターカスタマイズインタフェース９００を示す。これらの付加的な特徴表現９２６〜９３０は、例えば、特徴選択制御領域９００Ｂを介してディスプレイ６０１上で受信されたスワイプジェスチャ（例えば、図９Ｄのスワイプジェスチャ９２５）に応じて、表示される。いくつかの実施形態では、付加的オプション及び色表現が、それぞれの領域において類似の入力を受信したことに応じて、特徴オプション制御領域９００Ｃ及び色選択制御領域９００Ｄにおいて表示される。
【０２２８】
図９Ｆは、例えば図９Ｅのタッチ９３１を介して、編集するために表現９２７に対応する特徴（本例では、この特徴は眼鏡）が選択された後のアバターカスタマイズインタフェース９００を示す。オプション表現９３２〜９３６は、アバターの眼鏡の異なるスタイルオプションを表示する。オプション表現９３４は、眼鏡なしのオプションに対応し、図９Ｆのアバター９０１において反映されている。また、眼鏡の特徴に色の表現９３７〜９４１が利用可能であるが、眼鏡なしのオプションが現在選択されているので、色の表現は選択されているものとして現在示されてはいない。
【０２２９】
図９Ｇは、例えば図９Ｆのタッチ９３７を介して、表現９３６に対応する眼鏡のスタイルが選択された後のアバターカスタマイズインタフェース９００を示す。アバター９０１に反映されるように、表現９３６は、アバター９０１が着けているものとして描かれた眼鏡に対応する。また、表現９３９に対応する色が、デフォルトで又はユーザ選択によって、眼鏡について選択されている。
【０２３０】
図９Ｈは、例えば図９Ｇのタッチ９４０を介する次のボタン９３９（図９Ｇ）の選択に応答した、アバターカスタマイズプロセスの完了を示す。戻るボタン９４１の選択に応じて、アバターカスタマイズプロセスに再び入ることができる。継続ボタン９４２の選択に応じて、ユーザは、アバターカスタマイズプロセスと呼ばれるプロセスを継続することができ、又は、いくつかの実施形態では、継続ボタン９４２が、アプリケーションを終了する終了ボタンの代わりにある。
【０２３１】
図１０は、いくつかの実施形態による、電子デバイスを使用してユーザアバターをカスタマイズする方法を示すフロー図である。方法１０００は、ディスプレイを有するデバイス（例えば、１００、３００又は５００）で実行される。方法１０００のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【０２３２】
以下において説明されるように、方法１０００は、ユーザアバターをカスタマイズする直感的方法を提供する。この方法は、アバターをカスタマイズする際のユーザの認知負担を軽減し、それによって、より効率的なヒューマンマシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合、ユーザがユーザアバターをより速くかつより効率的にカスタマイズできるようにすることで、電力が節約され、バッテリ充電の間隔が長くなる。
【０２３３】
ディスプレイ（例えば、ディスプレイ６０１）と、１つ以上の入力デバイス（例えば、タッチ感知ディスプレイである場合、ディスプレイ６０１）と、を備える電子デバイス（例えば、図９Ａのデバイス６００）。この電子デバイスは、ディスプレイ上に以下の表示を同時に含むアバター編集ユーザインタフェース（例えば、９００）を表示する（１００２）：複数の編集可能な特徴（例えば、９０７〜９１１）（例えば、髪型、顔の特徴、服のスタイル、アクセサリ）を有するアバター（例えば、９０１）（例えば、メモリからロードされたアバター、又は、以前の請求に従って生成されたアバター）と、修正のために現在選択されている第１のアバター特徴（例えば、図９Ａの９０９）（例えば、髪型の特徴カテゴリは、髪がない、カーリーヘア、ストレートヘアーなど、複数の髪型のタイプに対応する）及び修正のために現在選択されていない第２のアバター特徴（例えば、９０７、９０８、９１０、又は９１１）を含む、複数のアバター特徴の表現（例えば、９０７〜９１１）（例えば、髪の特徴カテゴリは、かつらのように見えるアフォーダンスを有することになり、鼻の特徴カテゴリは、鼻の形のアフォーダンスを有することになるなど、カテゴリに対応する形のユーザ選択可能なユーザインタフェースオブジェクト）を含む、特徴選択制御領域（例えば、９００Ｂ）と、現在選択されている第１のアバター特徴の第１のオプション（例えば、９０６）及び現在選択されていない第１のアバター特徴の第２のオプション（例えば、９０２〜９０３）を含む、選択のための第１のアバター特徴の複数のオプションの表現（例えば、９０２〜９０６）を含む、特徴オプション制御領域（例えば、９００Ｃ）。一部の実施形態で、特徴選択制御領域内の表現は、対応するアバター特徴の形状に基づく形状を有する。一部の実施形態で、特徴オプション制御領域内の表現は、対応するアバター特徴オプションの形状に基づく形状を有する。一部の実施形態で、アバターの表示は、第１のアバター特徴が現在選択されているとき、第１のアバター特徴のインジケータを含む。特徴選択及び特徴オプションの異なる制御領域を表示することにより、電子デバイスは、ユーザにより迅速に理解される直感的インタフェースで強化されたアバターカスタマイズプロセスを提供する。これにより、ユーザは、より少ない対話でアバターをカスタマイズすることができ、電子デバイスの効率化、電力使用量の削減、デバイスの電池寿命の改善を行うことができる。
【０２３４】
電子デバイスは、アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおける入力（例えば、９１２）を検出する（１００４）。電子デバイスは、入力の検出に応じて（１００６）、入力が特徴選択制御領域内の第２のアバター特徴（例えば、図９Ａの９０８）の選択に対応しているという判定に従って（１００８）、第２のアバター特徴が現在選択されていることを示すように特徴選択制御領域を更新し（１０１０）（例えば、９Ｂ）（例えば、特徴インジケータを動かして第２のアバター特徴を強調表示する）、現在選択されている第２のアバター特徴の第１のオプション（例えば、９１５）及び現在選択されていない第２のアバター特徴の第２のオプション（例えば、９１３、９１４、９１６、又は９１７）を含む選択するための第２のアバター特徴の複数のオプションの表現（例えば、９１３〜９１７）（例えば、いくつかの実施形態では、カーリーヘアの表現がカーリーに見えるなど、特徴オプション表現は、対応する特徴オプションと同じ形になる）を含むように特徴オプション制御領域を更新する（１０１２）。いくつかの例では、第１の特徴の特徴オプションの表示は、第２の特徴の特徴オプションに置き換えられる。例えば、第１の特徴が髪型であり、第２の特徴が鼻のスタイルである場合、異なる髪型のオプションの表現の表示を、異なる鼻のスタイルのオプションのアフォーダンスの表示に置き換える。
【０２３５】
電子デバイスは、入力（例えば、９２３）が特徴オプション制御領域（１０１４）内の第１のアバター特徴の第２のオプション（例えば、９１７）の選択に対応していると判定すると、第１のアバター特徴の第２のオプションが現在選択されていることを示すように特徴オプション制御領域を更新し（１０１６）（図９Ｃ）、第１のアバター特徴の第２のオプションに従って第１のアバターの外観を変更するようにアバターを更新する（１０１８）（例えば、アバター９０１の髪は、図９Ｂから図９Ｃに更新される）（例えば、特徴オプションの特性に基づいてアバターを変更する、又は特徴選択が鼻のスタイルについてである場合、鼻の形状は選択された鼻のスタイルに対応するように変化する）。いくつかの実施形態では、電子デバイスが第１のアバター特徴の第２のオプションに従って第１のアバターの特徴の外観を変更するようにアバターを更新することは、電子デバイスがアニメーションを介して第１のオプションに基づく第１のアバター特徴を第２のオプションに基づく第１のアバター特徴に遷移させることを含む。一部の実施形態では、入力の検出に応じて、この入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、特徴選択制御領域を更新せずに特徴オプション制御領域を更新する（１０２０）（例えば、アバター９０１の髪は図９Ｂから図９Ｃに更新されるが、特徴選択制御領域には変化はない）。一部の実施形態において、入力の検出に応じて、入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、アバターを変更せずに特徴選択制御領域を更新する（１０２０）（例えば、図９Ａから図９Ｂへの遷移により、特徴選択制御領域を更新するが、アバターは変更しない）。いくつかの例において、入力は、タップ、スワイプ、又はその他のタイプのジェスチャなど、ジェスチャ入力を含む。特徴オプションと特徴選択との表示の更新を分離することによって、他のどの特徴及びオプションが利用可能であるかをユーザが見直す能力を維持しつつ、対応する部分が変更されないときに制御領域又はアバターを更新しないことにより、電子デバイスの操作性を向上させ、電子デバイスをより効率的にし、電力使用量を削減し、デバイスのバッテリ寿命を改善する。
【０２３６】
一部の実施形態によれば、アバター編集ユーザインタフェースを表示することは、現在選択されている第１の色（例えば、９２０）及び現在選択されていない第２の色（例えば、９１８、９１９、９２１、又は９２２）を含む、第１のアバター特徴の複数の色のオプションの表現（例えば、９１８〜９２２）を含む色選択領域（例えば、９００Ｄ）を電子デバイスが同時にディスプレイに表示することを含み、色選択領域は、アバター（例えば、９０１）、特徴選択制御領域（例えば、９００Ｂ）、及び特徴オプション制御領域（例えば、９００Ｃ）と同時に表示される。一部の実施形態で、電子デバイスは、色選択領域を表示しつつ、第２の色（例えば、９２２）の選択に対応するユーザ入力（例えば、９２４）の検出に応じて、第２の色に基づいてアバターにおいて第１のアバター特徴の表示を更新する（例えば、図９Ｄ）。
【０２３７】
一部の実施形態によれば、第１のアバター特徴はアバターの衣類（例えば、シャツ、帽子、又はネクタイ）であり、第２の色に基づいてアバターの第１のアバター特徴の表示を更新することは、アバターの衣類の色を第２の色に更新すること（例えば、衣類の色全体、又は、衣類のパターンの一部の色などの衣類のいくらかの部分を変更すること）を含む。いくつかの実施形態では、第１のアバター特徴（例えば、９２４）は、アバターのアクセサリ（例えば、眼鏡、帽子、ピアス、又は宝飾品）である。
【０２３８】
いくつかの実施形態によれば、ディスプレイはタッチ感知ディスプレイであり、タッチ感知ディスプレイ上でジェスチャ（例えば、タッチ及びドラッグジェスチャ、又はピンチジェスチャ）を受信したことに応じて、ジェスチャに基づいて第１のアバター特徴の特性を修正し、修正されたパラメータに基づいてアバターの表示を更新する。いくつかの例では、受信されるジェスチャは、ピンチジェスチャ、タッチ及びドラッグジェスチャ、又は他のタイプのジェスチャである。一部の実施形態では、以下の図１５Ａ〜１５Ｆ及び図１６Ａ〜１６Ｂに関して説明されるプロセスに応じて、修正が生じる。ジェスチャを用いてアバターの特徴を修正することにより、様々な特徴の設定を調整するための更に複雑な制御の使用を回避することによって、アバターカスタマイズプロセスをより効率的にする。これにより、より多くの情報をスクリーンに提示し、電子デバイスがより効率的に動作することを可能にし、性能全体を向上させる、及び／又は電池寿命を延ばす。
【０２３９】
いくつかの実施形態によれば、電子デバイスは、予め保存された複数のアバター（例えば、アバターの３×３リスト）を含むアバター管理インタフェースを表示し、予め保存されたアバターを選択するユーザ入力を受信し、予め保存されたアバターを選択するユーザ入力に応じて、予め保存されたアバターをアバター編集ユーザインタフェースに表示する。生成されたアバターの異なるバリエーションを提供することにより、電子デバイスは、ユーザの表現としてユーザが快適に共用しているアバターのユーザ選択をより迅速にすることによって、アバター編集プロセスを強化して、電子デバイスをより効率的にし、電力使用量を削減し、デバイスの電池寿命を改善する。
【０２４０】
一部の実施形態によれば、電子デバイスは、アバターを更新して第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更した後、アバターレシピ（例えば、アバターの非グラフィカル表現）としてアバターを記憶し、アバターレシピは、第２のオプション（例えば、目、鼻、口、眼鏡）及びアバターパラメータ（例えば、目の色、鼻のサイズ、口の形状、眼鏡のタイプ）を含む、アバター構造を定義する。
【０２４１】
いくつかの実施形態によれば、電子デバイスは、アバターレシピを連絡先に送信する。いくつかの例では、アバターレシピは、アバターレシピを他のユーザに送信するという要求に対応するユーザ入力に応じて、別のユーザに送信される。例えば、図１３Ａ及び１３Ｂのプロセス１３００に関して後述するように、アバターレシピは別のユーザに送られる。
【０２４２】
いくつかの実施形態によれば、電子デバイスは、１つ以上の入力デバイスを介してアバター編集ユーザインタフェースに関連する入力が所定の期間に（例えば、リフトオフから所定の期間後、ユーザがタッチスクリーンとの接触を中断した後）検出されないことに従って、アバターアニメーションでアバターの表示の更新を行う。
【０２４３】
いくつかの実施形態によれば、電子デバイスは、アバターを更新して、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更し（例えば、図９Ｆ〜９Ｇでは、アバターは眼鏡を含むように更新されている）、電子デバイスが第２のオプションに基づいてアバターの表情を修正することを含む。いくつかの例において、第１のアバター特徴は眼鏡についてであり、第１のオプションと第２のオプションとは異なるスタイルの眼鏡であり、第２のオプションを選択すると、ランダムにアバターを微笑ませる、肯定的反応を与えさせる、又は他のフィードバックを提供させる。
【０２４４】
一部の実施形態において、電子デバイスは、アバターを表示しつつ、電子デバイスの１つ以上の入力デバイスを介する入力（例えば、マウスのカーソル又はタッチ）の検出に応じて、この入力に関連する位置（例えば、スクリーン上のカーソルの位置、又はタッチ入力の位置）に基づいてアバターの目を更新する。一部の実施形態において、電子デバイスは、アニメーションループに基づいてアバターを更新し、アニメーションループはアバターの一連の表情を含む。一部の実施形態において、アニメーションループは持続時間を有し、電子デバイスは、この持続時間より少ないランダムな時間オフセットを決定し、アニメーションループに基づいてアバターを更新することは、ランダムな時間オフセットに基づいてアニメーションループ内のある位置で開始するアバターを更新すること（例えば、同じアニメーションループを表示している他のアバターとのアニメーションループの同期を避けるために）を含む。一部の実施形態において、電子デバイスは、所定の期間の後にアニメーションループに基づいてアバターの更新を中止する。ランダムな開始時間を有するアニメーションループに応じてアバターを動画化することにより、一緒に表示される複数のアバター（例えば、異なるユーザのアバター）が一致して動画化されないことを確実にすることによって、電子デバイスは強化されている。これにより、カスタマイズプロセスにおいて又は他の状況においてユーザがアバターとの対話を持続する可能性を高める。
【０２４５】
いくつかの実施形態によれば、図１１は、説明される様々な実施形態の原理に従って構成された電子デバイス１１００の例示的な機能ブロック図を示す。いくつかの実施形態によれば、電子デバイス１１００の機能ブロックは、前述の技術を実行するように構成されている。デバイス１１００の機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せによって、任意選択的に実装される。図１１で説明する機能ブロックは、説明される様々な例の原理を実施するために、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者に理解されよう。したがって、本明細書の記載は、本明細書に記載されている機能ブロックの任意の可能な組合せ若しくは分離、又は更なる定義を任意選択的にサポートする。
【０２４６】
図１１に示すように、電子デバイス１１００は、グラフィックユーザインタフェースを表示するように構成されたディスプレイユニット１１０２、入力ユニット１１０４、並びに、ディスプレイユニット１１０２及び入力ユニット１１０４に接続された処理ユニット１１０６を含む。一部の実施形態では、処理ユニット１１０６は、表示有効化ユニット１１１０と、検出ユニット１１１２と、更新ユニット１１１４と、任意選択的に、修正ユニット１１１６と、受信ユニット１１１８と、記憶ユニット１１２０と、送信ユニット１１２２と、判定ユニット１１２４と、を含む。
【０２４７】
処理ユニット１１０６は、アバター編集ユーザインタフェースを（例えば、表示有効化ユニット１１１０を使用して）表示するように構成され、アバター編集ユーザインタフェースは以下の同時表示を含む：複数の編集可能な特徴を有するアバターと、修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域。処理ユニット１１０６は、アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおいて入力を（例えば、検出ユニット１１１２を使用して）検出するように更に構成されている。処理ユニット１１０６は、入力が検出されたことに応じて、入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、第２のアバター特徴が現在選択されていることを示すように特徴選択制御領域を（例えば、更新ユニット１１１４を使用して）更新し、現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を（例えば、更新ユニット１１１４を使用して）更新する。処理ユニット１１０６は、入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、第１のアバター特徴の第２のオプションが現在選択されていることを示すように特徴オプション制御領域を（例えば、更新ユニット１１１４を使用して）更新し、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを（例えば、更新ユニット１１１４を使用して）更新するように更に構成されている。
【０２４８】
いくつかの実施形態では、入力の検出に応じて、この入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、アバター特徴制御領域を更新することなく、特徴オプション制御領域が更新される。
【０２４９】
一部の実施形態において、入力の検出に応じて、かつ入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、アバターを更新することなく、特徴選択制御領域が更新される。
【０２５０】
一部の実施形態において、アバター編集ユーザインタフェースの表示は更に、現在選択されている第１の色及び現在選択されていない第２の色を含む、第１のアバター特徴の複数の色オプションの表現を含む色選択領域のディスプレイ上の同時表示を含み、色選択領域は、アバター、特徴選択制御領域、及び特徴オプション制御領域と同時に表示される。
【０２５１】
一部の実施形態では、処理ユニット１１０６は、色選択領域を表示しつつ、第２の色の選択に対応するユーザ入力の検出に応じて、第２の色に基づいてアバターにおいて第１のアバター特徴の表示を（例えば、更新ユニット１１１４を使用して）更新するように更に構成されている。
【０２５２】
一部の実施形態において、第１のアバター特徴は、アバターの衣類であり、第２の色に基づいてアバターの第１のアバター特徴の表示を更新することは、アバターの衣類の色を第２の色に更新することを含む。
【０２５３】
一部の実施形態では、第１のアバター特徴はアバターのアクセサリである。
【０２５４】
いくつかの実施形態では、表示ユニットは、タッチ感知ディスプレイユニットであり、処理ユニット１１０６は、タッチ感知ディスプレイでのジェスチャの受信に応じて、ジェスチャに基づいて第１のアバター特徴の特性を（例えば、修正ユニット１１１６を使用して）修正し、修正されたパラメータに基づいてアバターの表示を（例えば、更新ユニット１１１４を使用して）更新するように更に構成されている。
【０２５５】
一部の実施形態において、処理ユニット１１０６は、予め保存された複数のアバターを含むアバター管理インタフェースを（例えば、表示有効化ユニット１１１０を使用して）表示し、予め保存されたアバターを選択するユーザ入力を（例えば、受信ユニット１１１８を使用して）受信し、予め保存されたアバターを選択するユーザ入力に応じて、アバター編集ユーザインタフェースにおいて予め保存されたアバターを（例えば、表示有効化ユニット１１１０を使用して）表示するように更に構成されている。
【０２５６】
一部の実施形態で、処理ユニット１１０６は、アバターを更新して第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更した後、アバターレシピとしてアバターを（例えば、記憶ユニット１１２０を使用して）記憶するように更に構成され、アバターレシピは、第２のオプションを含むアバター構造と、アバターパラメータとを定義する。
【０２５７】
一部の実施形態において、処理ユニット１１０６は、アバターレシピを連絡先に（例えば、送信ユニット１１２２を使用して）送るように更に構成されている。
【０２５８】
一部の実施形態では、処理ユニット１１０６は、第１の連絡先のアバターレシピを（例えば、受信ユニット１１１８を使用して）受信し、第１の連絡先を含む複数の連絡先の連絡先情報を（例えば、表示有効化ユニット１１１０を使用して）表示するように更に構成され、第１の連絡先について表示される連絡先情報は、第１の連絡先のアバターレシピに基づくアバターを含む。
【０２５９】
いくつかの実施形態では、アバターの表示は、第１のアバター特徴が現在選択されている場合に第１のアバター特徴のインジケータを含む。
【０２６０】
一部の実施形態において、特徴選択制御領域内の表現は、対応するアバター特徴の形状に基づく形状を有する。
【０２６１】
一部の実施形態において、特徴オプション制御領域内の表現は、対応するアバター特徴オプションの形状に基づく形状を有する。
【０２６２】
いくつかの実施形態では、処理ユニット１１０６は、所定の期間にアバター編集ユーザインタフェースに関連する入力を１つ以上の入力デバイスを介して検出しなかったことに従って、アバターアニメーションでアバターの表示を（例えば、更新ユニット１１１４を使用して）更新するように更に構成されている。
【０２６３】
いくつかの実施形態では、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを更新することは、第２のオプションに基づいてアバターの表情を修正することを含む。
【０２６４】
いくつかの実施形態では、処理ユニット１１０６は、アバターを表示しつつ、電子デバイスの１つ以上の入力デバイスを介して入力を検出したことに応じて、入力に関連付けられた位置に基づいてアバターの目を（例えば、更新ユニット１１１４を使用して）更新するように更に構成されている。
【０２６５】
一部の実施形態において、処理ユニット１１０６は、アニメーションループに基づいてアバターを（例えば、更新ユニット１１１４を使用して）更新するように更に構成され、アニメーションループはアバターの一連の表情を含む。
【０２６６】
いくつかの実施形態では、アニメーションループは持続時間を有し、処理ユニット１１０６は、この持続時間より少ないランダムな時間オフセットを（例えば、判定ユニット１１２４を使用して）判定するように更に構成され、アニメーションループに基づいてアバターを更新することは、ランダムな時間オフセットに基づくアニメーションループ内の位置で開始するアバターを更新することを含む。
【０２６７】
いくつかの実施形態では、処理ユニット１１０６は、所定の期間後に、アニメーションループに基づいてアバターの更新を停止するように更に構成されている。
【０２６８】
いくつかの実施形態では、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを更新することは、アニメーションを介して第１のオプションに基づく第１のアバター特徴を第２のオプションに基づく第１のアバター特徴に遷移させることを含む。
【０２６９】
図１０Ａ及び図１０Ｂを参照して前述された動作は、図１Ａ〜図１Ｂ又は図１１に示された構成要素によって、任意選択的に実施される。例えば、検出動作１００４は、任意選択的に、イベントソータ１７０、ディスプレイコントローラ１５６、及びタッチ感知ディスプレイシステム１１２によって実施される。同様に、当業者には、図１Ａ〜１Ｂで示した構成要素に基づいて他の処理がどのように実施され得るかは明らかであろう。
【０２７０】
図１２Ａ〜図１２Ｊは、いくつかの実施形態による、メッセージ内のアバターステッカを使用する例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、図１３のプロセスを含む、後述のプロセスを説明するために使用される。
【０２７１】
図１２Ａは、一部の例では前述のデバイス１００、デバイス３００、又はデバイス５００の具体的なフォームファクタである、デバイス６００（図６Ａに関して前述した）を示す。デバイス６００は、一部の実施形態ではタッチ感知ディスプレイである、ディスプレイ６０１を含む。
【０２７２】
図１２Ａにおいて、ディスプレイ１２０１は、別名「ジョー」のメッセージングインタフェース１２０３を表示している。メッセージングインタフェース１２０３は、戻るボタン１２０４、ユーザ名１２０５、ユーザ画像１２０６、及び連絡先情報ボタン１２０７を含む。例えばディスプレイ１２０１上の戻るボタン１２０４に触れることにより、ユーザが戻るボタン１２０４を選択したことに応じて、メッセージングインタフェース１２０３は、最近のメッセージが表示されるメインメッセージングスクリーンに戻る、及び／又は他のユーザが通信するために選択される。ユーザ名１２０５及びユーザ画像１２０６は、メッセージングインタフェース１２０３が通信するように構成された現在の他のユーザを示す。ユーザ画像１２０６は、例えば、他のユーザのアバター（例えば、絵文字又は他のグラフィック表現（例えば、非写実的表現）、他のユーザの画像、又は他のユーザに関連付けられた何らかの他の画像）である。ユーザが連絡先情報ボタン１２０７を選択したことに応じて、オプション、設定、及び連絡先に関連付けられた他の動作がアクセス可能になる。いくつかの例では、連絡先情報ボタン１２０７は、ユーザが他のチャネルの通信を使用して他のユーザとの通信を開始することを可能にする、ユーザが他のユーザについての通信設定を変更することを可能にする、ユーザが他のユーザにある特定のタイプの情報（例えば、現在位置）を送ることを可能にする、及び／又は、ユーザがそのユーザとの以前の通信に関連する情報を見直すことを可能にする、連絡先インタフェースページをデバイス１２００に開かせる。
【０２７３】
メッセージングインタフェース１２０３は、図１２Ａでは空であるメッセージエリア１２０８と、メッセージ入力エリア１２０９とを含む。メッセージ入力エリアは、フォトボタン１２１０、描画ボタン１２１１、ステッカボタン１２１２、テキスト入力フィールド１２１３、及び音声認識ボタン１２１４を含む。フォトボタン１２１０は、ユーザが既存の画像／ビデオを選択すること、又は新しい画像／ビデオをキャプチャして他のユーザへのメッセージに含めることを可能にする。描画ボタン１２１１は、ユーザがスケッチを作成して他のユーザへのメッセージに含めることを可能にする。ステッカボタン１２１２は、ステッカを選択して他のユーザへのメッセージに含めることを可能にする。テキスト入力フィールド１２１３は、ユーザが他のユーザへのメッセージに含まれることになるテキストをユーザが入力することを可能にする。図１２Ａにおいて、テキスト入力フィールド１２１３は、他のユーザに送られることになるテキストメッセージのタイプを示す「ｉＭｅｓｓａｇｅ」という単語を含む。音声認識ボタン１２１４は、ユーザが、テキストを手動で入力する代わりに、デバイス１２００に話しかけることによってテキスト入力フィールド１２１３のテキストを入力できるようにする。
【０２７４】
図１２Ｂに示すように、図１２Ａのタッチ１２１５など、テキスト入力フィールド１２１３を選択するユーザ入力に応じて、キーボード１２１６がディスプレイ１２０１に表示される。また、テキスト入力フィールド１２１３は、ディスプレイで上に移動され、図１２Ａのフォトボタン１２１０、描画ボタン１２１１、及びステッカボタン１２１２を隠すことによって、拡張される。これらのボタンは、ユーザが展開ボタン１２１７を選択すると再表示される。また、いくつかの例では、カーソル（図示せず）が、テキスト入力フィールド１２１３の内部に表示される。
【０２７５】
図１２Ｃに示すように、キーボード１２１６での文字の選択（例えば、文字「Ｈ」及び「Ｉ」のそれぞれの図１２Ｂのタッチ１２１８及び１２１９など、キーボード１２１６のタッチを介する）に応じて、テキスト入力フィールド１２１３は、選択された文字を含むように更新される。また、音声認識ボタン１２１４（図１２Ｂ）を送信ボタン１２２０に置き換え、入力されたテキスト及び画像データなどの他のデータを含む、現在入力されたメッセージを他のユーザに送信する。
【０２７６】
図１２Ｄは、キーボード１２１６の追加のタッチを介する追加のテキスト入力の後の、メッセージングインタフェース１２０３を示す。テキスト入力フィールド１２１３は、追加の入力されたテキストを含む。
【０２７７】
ユーザがテキスト入力フィールド１２１３にテキストを入力すると、ユーザは、例えばディスプレイ１２０１上のタッチ１２２１を介して送信ボタン１２２０を選択することによって、メッセージの送信準備が整ったことを示す。これに応じて、デバイス１２００は、図１２Ｄの例ではテキスト入力フィールド１２１３内のテキストを含むメッセージを用意する。メッセージの送信準備が整うと、デバイス１２００は、他のユーザ（図１２Ａ〜１２Ｊの例の場合には「ジョー」という名の他のユーザ）にメッセージを送信する。
【０２７８】
図１２Ｅに示すように、他のユーザへのメッセージ送った後、テキスト入力フィールド１２１３のテキストを含む、メッセージ内容が、テキストボックス１２２２内に表示されたメッセージエリア１２０８内に表示される。テキストボックス１２２２は、任意選択的に、メッセージの他の非テキストコンテンツ（例えば、画像、アニメーション、ビデオなど）も含む。テキストボックス１２２２の表示に加えて、テキストボックス１２２２に隣接してアバター１２２３も表示される（例えば、メッセージがアバターの口から出る）。一部の実施形態において、アバター１２２３は、デバイス１２００のユーザを表す、予め定義された（例えば、ベースラインの）アバター又はアバターモデル（例えば、ワイヤ、メッシュ、又は構造モデル）に基づいて、生成される。
【０２７９】
図１２Ｆは、メッセージを「ジョー」という名の他のユーザから受信した（例えば、「ジョー」という他のユーザに関連付けられた電子デバイスから受信した）後のメッセージングインタフェース１２０３を示す。メッセージエリア１２０８内のテキストボックス１２２４に、メッセージの内容が表示される。また、関連するアバター１２２５がテキストボックス１２２４に隣接して表示される。アバター１２２３のように、アバター１２２５は、デバイス１２００のユーザではなくて、定義済み（例えば、ベースライン）のアバター又はアバターモデルが「ジョー」を表す場合を除いて、予め定義されたアバター又はアバターモデルに基づく。予め定義されたアバター又はアバターモデルは、任意選択的に、デバイス１２００のユーザによって設定されるか、又は他のユーザ若しくはリモートサーバによって提供される。デバイス１２００は、任意選択的に、予め定義されたアバター又はアバターモデルをローカルに記憶する、あるいは、必要に応じて、予め定義されたアバター又はアバターモデルを検索する。
【０２８０】
図１２Ｇは、例えば図１２Ｆのタッチ１２２６によるステッカボタン１２１２のユーザ選択に応じて、表示されるステッカインタフェース１２２７で更新されたメッセージングインタフェース１２０３を示している。ステッカインタフェース１２２７は、デバイス１２００のユーザを表す、予め定義された（例えば、ベースラインの）アバター又はアバターモデル（例えば、ワイヤ、メッシュ、又は構造モデル）に基づく３つのアバターステッカ１２２８、１２２９、及び１２３０を表示する。例えば、ベースラインアバターを定義するためにレシピが使用される場合、例えばアバターレシピ内の既存の要素に要素を追加する又は既存の要素を修正することによって、レシピに基づいてアバターステッカがステッカインタフェース１２２７内に生成される。一部の実施形態において、アバターレシピは、アバターの非グラフィカル表現である。例えば、いくつかの場合において、アバターレシピは、ＸＭＬなどの構造化文書を使用して、又はＪＳＯＮなどの交換フォーマットを使用して、定義される。レシピは、構造的特徴（例えば、目、耳、口、髪）及び／又は特徴の様々な設定（例えば、サイズ、向き、スタイル、色）に関して、アバターを任意選択的に定義する。
【０２８１】
ステッカインタフェース１２２７内のステッカは、例えば、デバイス６００から（例えば、場所、その場所の天気、カレンダの約束）又はメッセージインタフェース（例えば、既に受信若しくは送信されたメッセージ、及び／又は、入力済みだが送信されていないメッセージテキスト、及び／又は、ステッカの受信者）から得られたコンテキストに基づいて任意選択的に生成される。
【０２８２】
図１２Ｇでは、一例として、ステッカ１２３０は、定義済みのアバターモデルと、会話が料理を作ることに関してであったことを示すメッセージングインタフェース１２０３からの情報とに基づいて、生成された。同様に、ステッカ１２２９は、定義済みのアバターモデルと、会話がデバイス６００のユーザがジョーに何かを持って行くことに関してであったことを示すメッセージングインタフェース１２０３からの情報とに基づいて、生成された。ステッカ１２２８は、定義済みのアバターモデルに基づいて生成され、デバイス６００又はメッセージングインタフェース１２０３からのコンテキストに基づいていない。その代わりに、ステッカ１２２８は、デバイス６００のユーザによって最もよく使用されるステッカである。ステッカ１２２８は、矢印で示されるように、動画化される。ステッカインタフェース１２２７は、３つのステッカを示しているが、もしあれば、追加のステッカが、例えばインタフェース上の水平なスワイプジェスチャを介して、任意選択的にアクセスされる。
【０２８３】
ステッカインタフェース１２２７からテキストボックス１２２４にステッカ１２３０をドラッグする、ドラッグアンドドロップジェスチャ１２３１をデバイス６００が受信したことに応じて、ステッカがテキストボックス１２２３に添付される。具体的には、図１２Ｇのステッカ１２３０と同じステッカ１２３２が、図１２Ｈに示すように、テキストボックス１２２４上に置かれる。また、ジョーのデバイスに表示されたジョーのテキストボックス上の類似の配置の追加情報（例えば、配置情報）とともに、ステッカ１２３２が、ジョーに送られる。いくつかの実施形態では、アバターステッカレシピが、ジョーに送られ、ステッカ１２３２を表す。いくつかの実施形態では、ジョーの電子デバイスがデバイス６００のユーザのベースラインアバターモデルを既に有する又は取得することができる場合には、デバイス６００のユーザのベースラインアバターモデルへの追加又は修正のみが、ジョーの電子デバイスに送られる。
【０２８４】
図１２Ｉは、図１２Ａ〜１２Ｄに関して説明したのと類似の方式でテキスト入力フィールド１２１３においてメッセージのテキストをユーザが入力した後のメッセージングインタフェースを示している。また、ユーザは、ステッカインタフェース１２２７に再び入っている。しかしながら、今回は、異なるセットのステッカが生成された。具体的には、ステッカ１２３３は、例えばユーザの現在の場所で雨が降っていると電子デバイス６００が判定したこと、に応答したユーザのアバターを示す。
【０２８５】
例えばタッチ１２３４を介する、ステッカ１２２９の選択に応じて、ステッカ１２２９、及びメッセージの既に入力されたテキスト部分が、ジョーに送られ、図１２Ｊに示すように、テキストボックス１２３５及びステッカ１２３６としてメッセージングインタフェース１２０３に表示される。
【０２８６】
図１３Ａ及び１３Ｂは、一部の実施形態による電子デバイス上でメッセージにおいてアバターステッカを使用する方法を示すフロー図である。方法１３００は、ディスプレイを有するデバイス（例えば、１００、３００、５００）で実行される。方法１３００のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【０２８７】
後述するように、方法１３００は、メッセージにおいてアバターステッカを使用する直感的な方法を提供する。この方法は、メッセージにおいてアバターステッカを使用する際のユーザの認知負担を軽減し、それによって、より効率的なヒューマンマシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合には、ユーザがメッセージ内のアバターステッカをより速くかつより効率的に使用することを可能にすることにより、電力が節約され、バッテリ充電の間隔が長くなる。
【０２８８】
電子デバイス（例えば、図１２Ａのデバイス６００）は、ディスプレイ（例えば、ディスプレイ６０１）及び１つ以上の入力デバイスを有する。電子デバイスは、デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーション（例えば、ｉＭｅｓｓａｇｅｓ又は他のメッセージングアプリケーション）のメッセージングインタフェース（例えば、１２０３）（例えば、別のユーザが選択された後のメッセージ入力インタフェース）を表示し（１３０２）、第１のユーザは、デバイスの第１のユーザを他のユーザ（例えば、１２０６及び１２２５と関連付けられた）と区別する第１のユーザのアバター（例えば、１２３３）によってメッセージングアプリケーションにおいて表される。電子デバイスは、メッセージングユーザインタフェースを表示しつつ、第１の要求（例えば、ジェスチャ１２２６）を受信して（１３０４）、第２のユーザに送るためのステッカ（例えば、１２２８〜１２３０）を選択するステッカユーザインタフェース（例えば、１２２７）を表示する。
【０２８９】
ステッカユーザインタフェースを表示するという第１の要求に応じて、電子デバイスは、ディスプレイ上に、以下の同時表示を含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカ（例えば１２２８〜１２３０）を含むステッカユーザインタフェースを表示する（１３０６）：
ユーザを表すアバター（例えば、１２２３）の修正（例えば、アバターステッカを生成するために、アバターレシピパラメータが、アバターステッカを生成するためのアバターレシピに追加される、変更される、及び／又はアバターレシピから削除される）に基づいて生成された（例えば、微笑んでいるように、傘を持つように、又は走っているように修正された）第１のアバターステッカ（例えば、１２２８）と、ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバターステッカ（例えば１２２９）。既存のアバターを修正してユーザのアバターステッカを生成することによって、電子デバイスは、最初にベースラインアバターを生成する必要なしにどのステッカを生成及び／又は表示するかを変更することができることにより、より効率的に動作することができ、より大きな柔軟性を有し、これにより、電子デバイスの効率化、電力使用量の削減、及びデバイスの電池寿命の改善を行うことができる。
【０２９０】
電子デバイスは、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、対応するアバターステッカ（１２３０）を第１のユーザから第２のユーザにメッセージングアプリケーションを介して送信するという要求に対応する１つ以上の入力（例えば、ジェスチャ１２３１又は１２３４）のシーケンスを１つ以上の入力デバイス（例えば、ディスプレイ６０１）を介して検出する（１３０８）。いくつかの例では、１つ以上の入力のシーケンスは、ステッカを選択し、メッセージングインタフェース内の特定の場所にステッカをドラッグし、選択されたステッカを放すジェスチャに対応する。いくつかの例では、１つ以上の入力のシーケンスは、別のユーザに送る選択されたステッカのタップジェスチャである。
【０２９１】
１つ以上の入力のシーケンスの検出に応じて（１３１０）：電子デバイスは、この１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、第２のユーザに対する第１のアバターステッカをメッセージングアプリケーションを介して第１のユーザから第２のユーザに送り（１３１２）（例えば、図１２〜１２Ｈ）、この１つ以上の入力のシーケンスが第２のアバターステッカ（例えば、１２２９）の選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送る（１３１４）（例えば、図１２Ｉ〜１２Ｊ）。
【０２９２】
いくつかの実施形態によれば、ユーザのアバターは、アバターレシピ（例えば、アバターの非グラフィック表現）に基づいている（１３１６）。いくつかの例では、アバターレシピは、アバターを生成するために使用されるアバター特徴及びアバターパラメータを定義する、ＸＭＬなどの構造化文書である。いくつかの実施形態では、ユーザのアバターのアバターレシピの第１のパラメータを修正することによって、第１のアバターステッカが生成される（１３１８）。一部の実施形態では、第１のアバターステッカ（例えば、１２２８）は動画化される（例えば、第１のアバターステッカにおいて、アバターが手を振っている、ウインクしている、又は雨に降られている）。一部の実施形態では、第２のアバターステッカ（例えば、１２３０）は、プロップ（例えば、傘、旗、又は、眼鏡などのアバターのそばにある他のオブジェクト若しくはアバターに通常関連付けられているオブジェクト）を含む。いくつかの例では、ユーザのアバターのアバターレシピは、ユーザの表情又は感情を表すパラメータを含む。任意選択的に、アバターレシピへの表情又は感情のパラメータの追加は、第１のアバターステッカにおける複数の特徴がどのように生成されるかに影響を及ぼすことになる。一例では、幸せの感情は、未修正のステッカから生成されたアバターステッカにおけるこれらの特徴の外観と比較して、対応する第１のアバターステッカにおける口、目、顔の輪郭の外観を変化させる。いくつかの実施形態では、ユーザのアバターのアバターレシピに第２のパラメータを加えることによって、第２のアバターステッカが生成される（１３２０）。いくつかの例では、アバターのアクセサリを表すパラメータなど、アバターレシピにパラメータが付加される。一例では、傘の下のアバターレシピから生成されたアバターをアバターステッカが含むように傘パラメータが追加される。一部の実施形態において、第２のユーザへ第１のアバターステッカを送ることは、第１のアバターステッカを表すレシピをユーザに送ることを含む。アバターレシピを使用してアバターステッカを生成及び／又は送信することにより、より少ない量のデータをより速く送信することができ、処理要件はより低くなり、関与する電子デバイスの性能（例えば、電池の寿命及び応答性）を向上させる。
【０２９３】
一部の実施形態によれば、電子デバイスのメッセージングアプリケーションを介する第１のユーザから第２のユーザへの第１のアバターステッカの第２のユーザへの送信の一部として、第２のユーザに関連付けられたデバイスはアバターレシピをサポートしている（例えば、このデバイスは、第１のユーザと同じメッセージングアプリケーション、又は異なる、互換性のあるメッセージングアプリケーションを使用している）という判定に従って、第１のアバターステッカを第２のユーザに送ること（１３２２）は、ユーザに第１のアバターステッカを表すレシピを送ることと、第２のユーザに関連付けられたデバイスはアバターレシピをサポートしていないという判定に従って、ユーザに第１のアバターステッカのグラフィカル表現を送ること（１３２４）とを含む。第１のアバタースティックをレシピとして送ることにより、電子デバイスは、グラフィック表現を送る場合に比べてより少ないデータを送り、より迅速にこのデータを送ることができ、電子デバイスの効率及び性能を向上させる。また、一部の実施形態において、受信者の電子デバイスが既にアクセスを有する電子デバイスのユーザのベースラインアバターへの追加又は修正のみを送ることにより、データを更に減らすことができる。
【０２９４】
一部の実施形態によれば、メッセージングインタフェースの少なくとも一部と同時にステッカユーザインタフェースが表示される（例えば、図１２Ｇ及び１２Ｉ）。一部の例では、ステッカインタフェースは、メッセージングインタフェースの一部と重なって表示される。いくつかの例では、ステッカインタフェースは、メッセージングインタフェースの隣（例えば、左若しくは右又は上若しくは下）に表示される。いくつかの例では、メッセージングインタフェースは、１つの方向にスライドし、インタフェースが重なり合うことなくステッカインタフェース及びメッセージングインタフェースが同時に表示される。メッセージングインタフェースとステッカユーザインタフェースを表示することによって、電子デバイスは、ユーザがアバターステッカを選択してメッセージングアプリケーションにおいてメッセージの一部として送りながら過去のメッセージを見直すことを可能にするより優れたユーザ体験を提供する。これにより、より多くのデータをスクリーンに表示し、デバイスとの持続的な対話をより容易にして、マンマシンインタフェースを改善する。
【０２９５】
いくつかの実施形態によれば、電子デバイスは、ステッカユーザインタフェースの表示要求を受信する前に、ユーザメッセージのテキスト部分（例えば、１２１３）のユーザ入力を受信し、１つ以上の入力のシーケンスを検出した後、メッセージングアプリケーションを介してユーザメッセージのテキスト部分を第２のユーザに送信する（例えば、図１２Ｉ〜１２Ｊ）。アバターステッカの選択前にテキストを入力できるようにすることで、電子デバイスは、ユーザがテキストコンテンツ並びにステッカコンテンツを組み込んだメッセージを送ることができるようにし、所望の情報を送るために必要なユーザ対話の数を減らすこと（例えば、ユーザは複数のメッセージではなく１つのメッセージを送るだけでよい）により、電子デバイスの効率化、電力使用量の削減、及びデバイスの電池寿命の改善を行う。
【０２９６】
いくつかの実施形態によれば、電子デバイスは、第１のアバターステッカ又は第２のアバターステッカを送信した後、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、第１のユーザから第２のユーザにメッセージングアプリケーションを介して対応するアバターステッカを送るという要求に対応する１つ以上の入力の第２のシーケンスを１つ以上の入力デバイスを介して検出する（例えば、図１２Ｊ）。１つ以上の入力の第２のシーケンスの検出に応じて、この１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、電子デバイスは、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送る。
【０２９７】
いくつかの実施形態によれば、図１４は、説明されている様々な実施形態の原理に従って構成された電子デバイス１４００の例示的な機能ブロック図を示す。いくつかの実施形態によれば、電子デバイス１４００の機能ブロックは、前述の技術を実行するように構成されている。デバイス１４００の機能ブロックは、説明されている様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せによって、任意選択的に実装される。図１４で説明する機能ブロックが、説明されている様々な例の原理を実施するために、任意選択的に、組み合わされる、又はサブブロックに分離されることが当業者には理解される。したがって、本明細書の記載は、本明細書に記載されている機能ブロックの任意の可能な組合せ若しくは分離、又は更なる定義を任意選択的にサポートする。
【０２９８】
図１４に示すように、電子デバイス１４００は、グラフィックユーザインタフェースを表示するように構成されたディスプレイユニット１４０２、入力ユニット１１０４、並びに、ディスプレイユニット１４０２及び入力ユニット１１０４に結合された処理ユニット１４０６を含む。いくつかの実施形態では、処理ユニット１４０６は、表示有効化ユニット１４１０、受信ユニット１４１２、検出ユニット１４１４、送信ユニット１４１６、及び、任意選択的に受信ユニット１４１８を含む。
【０２９９】
処理ユニット１４０６は、デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを（例えば、表示有効化ユニット１４１０を用いて）表示するように構成され、第１のユーザは、デバイスの第１のユーザを他のユーザと区別するユーザのアバターによってメッセージングアプリケーションにおいて表される。処理ユニット１４０６は、メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を（例えば、受信ユニット１４１２を使用して）受信するように更に構成されている。ステッカユーザインタフェースを表示するという第１の要求に応じて、処理ユニット１４０６は、ディスプレイユニット上の以下の同時表示を含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを（例えば、表示有効化ユニット１４１０を使用して）表示するように構成されている：ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び、ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバターステッカ。処理ユニット１４０６は、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、メッセージングアプリケーションを介して第１のユーザから第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを１つ以上の入力デバイスを介して（例えば、検出ユニット１４１４を使用して）検出するように構成されている。１つ以上の入力のシーケンスの検出に応じて：処理ユニット１４０６は、この１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを（例えば、送信ユニット１４１６を使用して）送り、この１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを（例えば送信ユニット１４１６を使用して）送るように構成されている。
【０３００】
いくつかの実施形態では、ユーザのアバターは、アバターレシピに基づく。いくつかの実施形態では、第１のアバターステッカは、ユーザのアバターのアバターレシピの第１のパラメータを修正することによって生成された。いくつかの実施形態では、第２のアバターステッカは、第２のパラメータ（例えば、アクセサリを追加する又は表情を指定するパラメータ）をユーザのアバターのアバターレシピに追加することによって生成された。いくつかの実施形態では、第１のアバターステッカを第２のユーザに送ることは、第１のアバターステッカを表すレシピを第２のユーザに送ることを含む。
【０３０１】
一部の実施形態において、処理ユニット１４０６がメッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを送るように構成されることは更に、処理ユニット１４０６が、第２のユーザに関連付けられたデバイスはアバターレシピをサポートするという判定に従って、第１のアバターステッカを表すレシピをユーザに送ることを含む、第２のユーザに第１のアバターステッカを（例えば、送信ユニット１４１６を使用して）送ることと、第２のユーザに関連付けられたデバイスはアバターレシピをサポートしないという判定に従って、ユーザに第１のアバターステッカのグラフィカル表現を（例えば、送信ユニット１４１６を使用して）送ることとを行うように更に構成されることを含む。
【０３０２】
いくつかの実施形態では、ステッカユーザインタフェースは、メッセージングインタフェースの少なくとも一部分と同時に表示される。一部の実施形態では、第１のアバターステッカは動画化される。一部の実施形態において、第２のアバターステッカはプロップを含む。
【０３０３】
いくつかの実施形態では、処理ユニット１４０６は、ステッカユーザインタフェースを表示するという要求を受信する前に、ユーザメッセージのテキスト部分のユーザ入力を（例えば、受信ユニット１４１８を使用して）受信するように、かつ１つ以上の入力のシーケンスを検出した後にメッセージングアプリケーションを介してユーザメッセージのテキスト部分を（例えば、送信ユニット１４１６を使用して）第２のユーザに送るように更に構成されている。
【０３０４】
一部の実施形態では、処理ユニット１４０６は、第１のアバターステッカ又は第２のアバターステッカを送信した後に、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、対応するアバターステッカをメッセージングアプリケーションを介して第１のユーザから第２のユーザに送るという要求に対応する１つ以上の入力の第２のシーケンスを１つ以上の入力デバイスを介して検出するように、そして、１つ以上の入力の第２のシーケンスの検出に応じて、この１つ以上のシーケンスは第２のアバターステッカの選択に対応しているという判定に従って、第２のアバターステッカを第１のユーザから第２のユーザにメッセージングアプリケーションを介して送るように更に構成されている。
【０３０５】
図１３Ａ及び図１３Ｂを参照して前述された動作は、図１Ａ〜１Ｂ又は図１４に示される構成要素によって、任意選択的に実施される。例えば、検出動作１３０８は、任意選択的に、イベントソータ１７０、ディスプレイコントローラ１５６、及びタッチ感知ディスプレイシステム１１２によって実施される。同様に、当業者には、図１Ａ〜１Ｂに示した構成要素に基づいて他の処理がどのように実施され得るかは明らかであろう。
【０３０６】
図１５Ａ〜１５Ｆは、いくつかの実施形態による、通知の例示的ユーザインタフェースを示す。これらの図でのユーザインタフェースは、図１６での処理を含む後述の処理を説明するために使用される。
【０３０７】
図１５Ａは、いくつかの例ではデバイス１００、デバイス３００、又はデバイス５００の具体的なフォームファクタである、デバイス６００（図６Ａに関して前述）を示す。デバイス６００は、いくつかの実施形態ではタッチ感知ディスプレイである、ディスプレイ６０１を含む。
【０３０８】
図１５Ａにおいて、デバイス６００は、ディスプレイ６０１上にアバターカスタマイズインタフェース１５００を表示する。いくつかの実施形態では、アバターカスタマイズインタフェース１５００は、図９Ａ〜９Ｈに関して前述したアバターカスタマイズインタフェース９００と同じである。アバターカスタマイズインタフェース１５００は、アバター１５０１と、特徴表現１５０７〜１５１１を含む特徴選択制御領域と、オプション表現１５０２〜１５０６を含む特徴オプション制御領域との表示を含む。特徴表現１５０７〜１５１１は、アバターカスタマイズインタフェース１５００において編集可能なアバター特徴に対応し、編集のために現在選択されている特徴に対応する表現を識別するインジケータ（周囲をボールドしたインジケータ１５０８）を含む。オプション表現１５０２〜１５１１は、選択された特徴の異なるスタイル（例えば、形状、サイズ、型）にそれぞれが対応する特徴オプションに対応する。一部の実施形態で、特徴選択制御領域及び特徴オプション制御領域は、図９Ａ〜９Ｈに関して前述したのと同じに実装される。
【０３０９】
アバターカスタマイズインタフェース１５００はまた、特徴選択制御領域における編集のためにどのアバター特徴が現在選択されているかの視覚的インジケーションを提供するインジケータ１５１２を含む。一部の実施形態では、強調表示、円、特徴の移動、及び／又は他のスタイルのインジケータなどの他のインジケータが使用される。
【０３１０】
アバターカスタマイズインタフェース１５００は、ディスプレイ６０１がタッチ感知ディスプレイである場合、ディスプレイ６０１上で受信されたジェスチャに応じて、選択されたアバター特徴の編集を可能にする。デバイス６００は、ジェスチャのタイプ（例えば、タップ、ピンチ、ドラッグ、回転）、方向（例えば、垂直、水平、時計回り、反時計回り、拡張、絞り）、現在選択されているアバター特徴、及び／又はジェスチャの場所を含む、いくつかの要因のいずれかに基づいて、アバター１５０１に対する適切な修正を決定する。
【０３１１】
例えば、編集のために耳が現在選択されている（表現１５０８は耳に対応する）ときに、図１５Ａのピンチのジェスチャ１５１３を受信した場合、デバイス６００は、ピンチのジェスチャに従って、耳を拡大／縮小する（例えば、拡張するピンチでは耳を大きくし、絞り込むピンチでは耳を小さくする）。図１５Ａのアバター１５０１上の拡張するピンチ１５１３の結果は、図１５Ｂに示されている。具体的には、図１５Ｂでは、アバター１５０１の耳は、図１５Ａのアバター１５０１の耳に比べて大きくなっている。
【０３１２】
別の例として、耳が編集のために現在選択されている（表現１５０８は耳に対応する）ときに図１５Ｂの垂直ドラッグジェスチャ１５１４を受信した場合、デバイス６００は、このドラッグジェスチャに応じて耳の垂直位置を移動させる（例えば、上向きのドラッグでは耳を上に移動させ、下向きのドラッグでは耳を下に移動させる）。図１５Ｂのアバター１５０１上の垂直ドラッグ１５１４の結果は、図１５Ｃに示されている。具体的には、図１５Ｃにおいて、アバター１５０１の耳は、図１５Ｂのアバター１５０１の耳と比べて上に移動している。
【０３１３】
図１５Ｄは、例えば図１５Ｃのタッチ１５１５を介する、異なる特徴表現（例えば、表現１５０９）の選択を電子デバイス６００が受信したことに応答したアバターカスタマイズインタフェース１５００を示す。図１５Ｄでは、編集のために選択された表現１５０９に対応する特徴は鼻であることを示すために、インジケータ１５１２は移動した。また、特徴オプション制御領域は、ここでは新しい特徴オプション表現１５１６〜１５２０を含む。図９Ａ〜９Ｈに関して前述したように、色表現１５２１〜１５２５を有する色選択制御領域もまた、表現１５２５に対応する色が現在選択されているというインジケーションと表示される。
【０３１４】
鼻が編集のために現在選択されている（表現１５０９は鼻に対応する）ときに図１５Ｄのピンチジェスチャ１５２６を受信した場合、デバイス６００は、このピンチジェスチャに応じて鼻の幅を変更する（例えば、拡張するピンチは鼻を広くし、一方、絞り込むピンチは鼻を狭くする）。図１５Ｄのアバター１５０１上の拡張するピンチ１５２６の結果は、図１５Ｅに示されている。具体的には、図１５Ｅでは、図１５Ｄのアバター１５０１の鼻に比べて、アバター１５０１の鼻は広くなっている。異なるアバター特徴が編集のために選択されていることに基づいて、ピンチジェスチャ１５２６（図１５Ｄ）の効果（幅の変更）は、ピンチジェスチャ１５１３（図Ａ）の効果（大きさの変更）とは異なる。
【０３１５】
鼻が編集のために現在選択されている（表現１５０９は鼻に対応する）ときに図１５Ｅの垂直ドラッグジェスチャ１５２７を受信した場合、デバイス６００は、ドラッグジェスチャに応じて鼻の垂直位置を移動させる（例えば、上向きのドラッグでは鼻を上に移動させ、下向きのドラッグでは鼻を下に移動させる）。アバター１５０１上の図１５Ｅの垂直ドラッグ１５２７の結果は、図１５Ｆに示されている。具体的には、図１５Ｆでは、アバター１５０１の鼻は、図１５Ｅのアバター１５０１の鼻と比べて、上に移動している。この場合、異なるアバター特徴が選ばれていても、垂直ドラッグジェスチャ１５１４（図１５Ｂ）の効果は、垂直ドラッグジェスチャ１５２７（図１５Ｄ）の効果と同じである（両方のジェスチャは鼻の位置の調整をもたらす）。
【０３１６】
図１６は、いくつかの実施形態による電子デバイス上でジェスチャを使用してアバターを編集する方法を説明するフロー図である。方法１６００は、ディスプレイを有するデバイス（例えば、１００、３００、５００）で実行される。方法１６００のいくつかの動作は、任意選択的に組み合わされ、いくつかの動作の順序は、任意選択的に変更され、いくつかの動作は、任意選択的に省略される。
【０３１７】
後述するように、方法１６００は、ジェスチャを使用してアバターを編集する直感的な方法を提供する。この方法は、ジェスチャを使用してアバターを編集することに関してのユーザの認識的負担を軽減し、それによって、より効率的なヒューマンマシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合には、ユーザがジェスチャを使用してアバターをより迅速かつより効率的に編集することを可能にすることにより、電力が節約され、バッテリ充電の間隔を長くする。
【０３１８】
電子デバイスは、ディスプレイ及びタッチ感知面を有する。電子デバイスは、複数の編集可能な特徴を有するアバター（例えば、１５０１）（例えば、前述のプロセスから生成されたアバター又はメモリ若しくはリモートサーバから検索されたアバター）を含むアバター編集インタフェース（例えば、１５００）をディスプレイに表示する（１６０２）。一部の実施形態において、アバター編集インタフェースは、編集のために選択可能な複数の編集可能な特徴のうちの１つ以上の特徴の特徴アフォーダンス（例えば、１５１２）（例えば、髪、鼻、眉毛、目、耳、眼鏡）を有する第１の選択インジケータを含む。
【０３１９】
複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴（例えば、表現１５０８に対応する特徴）である間に、電子デバイスは、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャ（例えば、ジェスチャ１５１３又はジェスチャ１５１４）（例えば、スワイプ、ピンチ、ドラッグ、回転）タッチ感知面上で検出する（１６０４）。
【０３２０】
第１のジェスチャの検出に応じて（１６０６）、第１のジェスチャ（例えば、１５１３又は１５１４）が第１のタイプのジェスチャ（例えば、ピンチ）であるというかつ対応する特徴は第１の特徴（例えば、耳）であるという判定に従って、電子デバイスは、第１の特性（例えば、耳の縮尺）を修正すること（例えば、耳の縮尺を大きく又は小さくすること）によってアバターの表示を更新し（１６０８）（例えば、図１５Ｂ）、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられており（例えば、耳の縮尺はピンチジェスチャと関連付けられている）、第１のジェスチャが第１のタイプのジェスチャとは異なる第２のタイプのジェスチャ（例えば、垂直ドラッグ）であり、対応する特徴が第１の特徴（例えば、耳）であるという判定に従って、電子デバイスは、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性（例えば、垂直位置）を修正する（例えば、垂直ドラッグに応じて、耳の位置を修正する）ことにより、アバターの表示を更新し（１６１０）（例えば図１５Ｃ）、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている（例えば、耳の垂直位置が垂直ドラッグジェスチャと関連付けられている）。いくつかの例で、アバター特徴の異なる特性に対するジェスチャタイプのマッピングは、表１の行のうちの１つ以上に従う。異なるジェスチャを単一の特徴の異なる特性にマッピングすることによって、表１に記載のように、電子デバイスは、余分なユーザインタフェース要素なしに単純で直感的なインタフェースを提供しつつ、アバター特徴の修正に多くの粒度を提供することにより、アバター編集インタフェースを強化する。これによりユーザがより少ない対話を用いて電子デバイスと対話することを可能にする。
【表１】
2020091866.tif 000003
【０３２１】
第１のジェスチャ（例えば、１５２６又は１５２７）を検出したことに応じて、このジェスチャは第１のタイプのジェスチャ（例えば、ピンチジェスチャ）であるというかつ対応する特徴は第２の特徴（例えば、鼻）であるという判定に従って、電子デバイスは、（例えば、鼻の幅を修正するピンチジェスチャに応じて）第２の特徴の第１の特性（例えば、鼻の幅）を修正することによりアバターの表示を更新し（１６１２）（例えば図１５Ｅ）、第２の特徴の第１の特性は第１のジェスチャタイプと関連付けられている（例えば、鼻の幅はピンチジェスチャと関連付けられている）。いくつかの実施形態では、第２の特徴（例えば、鼻）の第１の特性（例えば鼻幅）は、第１の特徴（例えば、耳）の第１の特性（例えば、耳の縮尺）とは異なる。異なる特徴の異なる特性に対して同じジェスチャをマッピングすることにより、電子デバイスは、限られた数の単純なジェスチャでアバターのカスタマイズの高い自由度を維持する単純なインタフェースを提供し、電子デバイスのマンマシンインタフェース全体を改善する。
【０３２２】
一部の実施形態において、電子デバイスは、第１のジェスチャ（例えば、１５２６又は１５２７）を検出したことに応じて、第１のジェスチャは第１のタイプのジェスチャ（例えば、ピンチ）とは異なる第２のタイプのジェスチャ（例えば、垂直ドラッグ）であるというかつ対応する特徴は第２の特徴（例えば、鼻）であるという判定に従って、第２の特徴の第２の特性（例えば、鼻の幅）とは異なる第２の特徴の第２の特性（例えば、鼻の垂直位置）を修正することによりアバターの表示を更新し（１６１４）（例えば、図１５Ｆ）（例えば、垂直ドラッグに応じて、鼻の垂直位置が調節される）、第２の特徴の第２の特性は第２のジェスチャタイプと関連付けられている（例えば、鼻の垂直位置は垂直ドラッグジェスチャと関連付けられている）。一部の実施形態において、第２の特徴の第２の特性（例えば、鼻の幅）は、第１の特徴の第２の特性（例えば、耳の縮尺）とは異なる。
【０３２３】
いくつかの実施形態によれば、第１のタイプのジェスチャはピンチジェスチャであり、第１の特徴は鼻であり、第１の特性は鼻の幅である。いくつかの実施形態では、第２のタイプのジェスチャは、垂直ドラッグであり、第２の特性は、第１の特徴の垂直位置である。表１を参照して他のジェスチャの例が上記で説明された。
【０３２４】
いくつかの実施形態によれば、電子デバイスは、第１のジェスチャは第１の特性の第１の許容範囲を超えて第１の特性を修正すると判定したことに従って、第１の特徴の第１の特性の修正を停止する。いくつかの実施形態で、電子デバイスは、第１のジェスチャの間、第１の特性の許容範囲を超える第１の特性の修正に対応する入力を検出する。電子デバイスは、第１の特性の許容範囲を超えて第１の特性を修正した後、ジェスチャの終了を検出する。第１のジェスチャの終了の検出に応じて、電子デバイスは、第２の特性の第２の許容範囲内になるように第１の特徴の第１の特性を修正することによりアバターの表示を更新する。いくつかの例では、特性の許容範囲を超えるユーザ入力を受信する。このユーザ入力に応じて、特性がこの特性の許容範囲を超えて修正される。ユーザ入力の終了に応じて、特性の表示は、縁部又はこの特性の許容範囲内に戻る。ある特徴を修正できる量を制限することにより、電子デバイスは、電子デバイスのリソース（例えば、処理時間又はバッテリ電力）を浪費する無効なアバターをユーザが作成しないことを確実にして、アバターのカスタマイズを改善する。
【０３２５】
一部の実施形態によれば、第１のジェスチャが、第１の特徴が表示された場所とは別個のタッチ感知面上の場所において検出される（図１５Ｄ）。いくつかの実施形態では、第１のジェスチャがアバター特徴の特性にどのように影響するかは、第１のジェスチャの場所に依存する。
【０３２６】
いくつかの実施形態によれば、電子デバイスは、対応する特徴（例えば、１５０９）（例えば、鼻）の予め設定された特性のセット（例えば、１５１９）を選択するユーザ入力を受信し（１６１６）、この予め設定された特性のセットは第２の特性の任意の値を有さずに第１の特性（例えば、鼻の幅）の値及び第３の特性（例えば、鼻の長さ）の値を含む、そして、ユーザ入力の受信に応じて、第１の値及び第２の値に基づいてアバターの表示を更新する（１６１８）。いくつかの例において、予め設定された特性のセットは、第２の特性の値を含まない、又は、第２の特性の前回のユーザ設定値によってオーバーライドされた第２の特性の値を含む。一部の実施形態において、第３の特性は、１つ以上の予め設定された特性のセットの選択以外に修正可能ではない。いくつかの実施形態では、第１の特性の値及び第３の特性の値に基づくアバターの表示は、第２の特性の予めユーザ設定された値に基づく。一部の実施形態において、予め設定された特性のセットを選択するユーザ入力は、本特性に関連付けられたアフォーダンスの選択であり、このアフォーダンスは、予め設定された特性のセットにおける１つ以上の値の形状表現を有する。いくつかの実施形態では、電子デバイスは、ユーザ入力の受信に応じて、リモートサーバに予め設定された特性のセットを要求する。電子デバイスは、アバター特徴の特性の予めユーザ設定されたパラメータを使用することにより、ユーザが所与の特徴のために新たなプリセットを選択した後のパラメータの再入力及び必要な対話を最小限にしてアバター編集インタフェースを強化する。
【０３２７】
いくつかの実施形態によれば、図１７は、説明される様々な実施形態の原理に従って構成された電子デバイス１７００の例示的な機能ブロック図を示す。いくつかの実施形態によれば、電子デバイス１７００の機能ブロックは、前述の技術を実行するように構成されている。デバイス１７００の機能ブロックは、説明される様々な例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せによって、任意選択的に実装される。図１７で説明する機能ブロックは、説明される様々な例の原理を実施するために、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解される。したがって、本明細書の記載は、本明細書に記載されている機能ブロックの任意の可能な組合せ若しくは分離、又は更なる定義を任意選択的にサポートする。
【０３２８】
図１７に示されるように、電子デバイス１７００は、グラフィックユーザインタフェースを表示するように構成されたディスプレイユニット１７０２と、ディスプレイユニット１４０２に接続された処理ユニット１７０６と、を含む。一部の実施形態において、処理ユニット１７０６は、表示有効化ユニット１７１０、検出ユニット１４１２、画像キャプチャユニット１４１４、及び提供ユニット１４１６、及び任意選択的に、生成ユニット１４１８、判定ユニット１４２０、更新ユニット１４２２、受信ユニット１４２４、及び記憶ユニット１４２６を含む。
【０３２９】
処理ユニット１７０６は、複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをディスプレイに（例えば、表示有効化ユニット１７１０を使用して）表示するように構成されている。複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、処理ユニット１７０６は、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で（例えば、検出ユニット１７１２を使用して）検出するように更に構成されている。第１のジェスチャの検出に応じて、処理ユニット１７０６は、第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによりアバターの表示を（例えば、更新ユニット１７１４を使用して）更新し、第１の特徴の第１の特性は第１のジェスチャタイプに関連付けられており、第１のジェスチャは第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによりアバターの表示を（例えば、更新ユニット１７１４）を使用して）更新するように更に構成され、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている。
【０３３０】
いくつかの実施形態では、処理ユニット１７０６は、第１のジェスチャの検出に応じて、ジェスチャが第１のタイプのジェスチャであるというかつ対応する特徴が第２の特徴であるという判定に従って、第２の特徴の第１の特性を修正することによりアバターの表示を（例えば、更新ユニット１７１４を使用して）更新するように更に構成され、第２の特徴の第１の特性は第１のジェスチャタイプに関連付けられている。一部の実施形態において、第２の特徴の第１の特性は第１の特徴の第１の特性とは異なる。
【０３３１】
一部の実施形態において、処理ユニット１７０６は、第１のジェスチャの検出に応じて、第１のジェスチャは第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第２の特徴であるという判定に従って、第２の特徴の第１の特性とは異なる第２の特徴の第２の特性を修正することによりアバターの表示を（例えば、更新ユニット１７１４を使用して）更新するように更に構成され、第２の特徴の第２の特性は第２のタイプのジェスチャと関連付けられている。
【０３３２】
一部の実施形態において、第２の特徴の第２の特性は第１の特徴の第２の特性とは異なる。いくつかの実施形態では、アバター編集インタフェースは、編集のために選択可能な複数の編集可能な特徴のうちの１つ以上の特徴の特徴アフォーダンスを有する第１の選択インジケータを含む。いくつかの実施形態では、第１のタイプのジェスチャはピンチジェスチャであり、第１の特徴は鼻であり、第１の特性は鼻の幅である。いくつかの実施形態では、第２のタイプのジェスチャは垂直ドラッグであり、第２の特性は第１の特徴の垂直位置である。
【０３３３】
いくつかの実施形態では、処理ユニット１７０６は、第１のジェスチャが第１の特性の第１の許容範囲を超えて第１の特性を修正するという判定に従って、第１の特徴の第１の特性の修正（例えば、更新ユニット１７１４を使用する）を停止するように更に構成されている。
【０３３４】
一部の実施形態において、処理ユニット１７０６は、第１のジェスチャ中に、第１の特性の許容範囲を超える第１の特性の修正に対応する入力を（例えば、検出ユニット１７１２を使用して）検出し、第１の特性の許容範囲を超えて第１の特性を修正した後、ジェスチャの終了を（例えば、検出ユニット１７１２を使用して）検出し、第１のジェスチャの終了の検出に応じて、第２の特性の第２の許容範囲内になるように第１の特徴の第１の特性を修正することによりアバターの表示を（例えば、更新ユニット１７１４を使用して）更新するように更に構成されている。
【０３３５】
一部の実施形態において、第１のジェスチャが、第１の特徴が表示されている場所とは別個のタッチ感知面上の場所で検出される。
【０３３６】
いくつかの実施形態では、処理ユニット１７０６は、対応する特徴の予め設定された特性のセットを選択するユーザ入力を（例えば、受信ユニット１７１６を使用して）受信し、予め設定された特性のセットは第２の特性の値を有さずに第１の特性の値及び第３の特性の値を含み、ユーザ入力の受信に応じて、第１の値及び第２の値に基づいてアバターの表示を（例えば、更新ユニット１７１４を使用して）更新するように更に構成されている。
【０３３７】
一部の実施形態において、第３の特性は、１つ以上の予め設定された特性のセットの選択以外は修正可能ではない。いくつかの実施形態では、第１の特性の値及び第３の特性の値に基づくアバターの表示は、第２の特性の予めユーザ設定された値に基づく。
【０３３８】
一部の実施形態において、予め設定された特性のセットを選択するユーザ入力は、本特性に関連付けられたアフォーダンスの選択であり、アフォーダンスは、予め設定された特性のセット内の１つ以上の値を表す形状を有する。
【０３３９】
一部の実施形態において、処理ユニット１７０６は、ユーザ入力の受信に応じて、予め設定された特性のセットをリモートサーバに（例えば、要求ユニット１７１８を用いて）要求するように更に構成されている。
【０３４０】
図１６Ａ及び図１６Ｂを参照して前述された動作は、図１Ａ〜１Ｂ又は図１７に示される構成要素によって、任意選択的に実施される。例えば、検出動作１６０４は、任意選択的に、イベントソータ１７０、ディスプレイコントローラ１５６、及びタッチ感知ディスプレイシステム１１２によって実施される。同様に、当業者には、図１Ａ〜１Ｂに示した構成要素に基づいて他の処理がどのように実施され得るかは明らかであろう。
【０３４１】
以下の項目は、本明細書で詳細に説明されている本発明の様々な態様を簡潔に説明する。
項目１．
ディスプレイ及び１つ以上のカメラを有する電子デバイスで、
ディスプレイにプレースホルダアバターを表示することであって、プレースホルダアバターの表示は電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、
プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出することと、
１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出したことに応じて、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第１の画像データをキャプチャすることと、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するようにユーザに第１の案内を提供することと、
を含む、方法。
項目２．
第１の画像データをキャプチャした後、第１の画像データに基づいて判定されたユーザの外観に基づいて選択された特徴を含むユーザ固有のアバターを生成すること、
を更に含む、項目１に記載の方法。
項目３．
生成されたユーザ固有のアバターをディスプレイに表示すること、
を更に含む、項目２に記載の方法。
項目４．
プレースホルダアバターの表示と同時にビューファインダグラフィカル要素を表示すること、プレースホルダアバターの表示に対するビューファインダグラフィカル要素の表示は１つ以上のカメラの視野に対するユーザの第１の又は第２の位置に基づく、
を更に含む、項目１から３のいずれか一項に記載の方法。
項目５．
１つ以上のカメラの視野に対するユーザの第２の位置が第１の組の画像基準を満たしているかどうかを判定すること、
を更に含む、項目１から４のいずれか一項に記載の方法。
項目６．
第１の画像データをキャプチャした後、電子デバイスに対する位置を第２の目標位置に変更するように第２の案内をユーザに提供することと、
第１の画像データの後にキャプチャされた画像データに基づいてプレースホルダアバターの表示を更新することと、
第２の案内を提供した後、電子デバイスに対するユーザの第３の位置が第２の組の画像基準を満たしているかどうかを判定することと、
第２の検出された位置は第２の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第２の画像データをキャプチャすることと、
第２の検出された位置は第２の組の画像基準を満たしていないという判定に従って、第２の目標位置に電子デバイスに対する位置を変更するようにユーザに第２の案内を提供し続けることと、
を更に含む、項目１から５のいずれか一項に記載の方法。
項目７．第１の案内が、第１の画像データに基づいてプレースホルダアバターの外観を変更することなくユーザに提供される、項目１から６のいずれか一項に記載の方法。
項目８．第１の案内を提供することが、１つ以上のカメラの視野に対するユーザの第２の位置が第１の組の画像基準を満たしているときにユーザフィードバックを提供すること、又は、ユーザがデバイスに対して第１の目標位置にあるように１つ以上のカメラの視野に対してどのように位置付けられるべきかに基づいて命令を提供すること、を含む、項目１から７のいずれか一項に記載の方法。
項目９．
第１の画像データをキャプチャした後、
第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報を表示すことと、
第１の画像データに基づいて選択された１つ以上の肌の階調の色のうちの対応する推奨される肌の階調の色を確認するユーザ入力を受信することと、
を更に含む、項目１から８のいずれか一項に記載の方法。
項目１０．第１の画像データに基づいて選択された１つ以上の推奨される肌の階調の色を示す情報の表示が、アバターに推奨される肌の階調の色を適用することなく表示される、項目９に記載の方法。
項目１１．
第１の画像データに基づいてユーザ固有のプレースホルダアバターを生成して、第１の画像データとは無関係の所定の肌の階調の色を使用することと、
対応する推奨される肌の階調の色を確認するユーザ入力を受信する前にユーザ固有のプレースホルダアバターを表示することと、
を更に含む、項目９又は１０に記載の方法。
項目１２．
第１の画像データをキャプチャしたことに応じて、進度インジケータの表示を更新することを更に含み、進度インジケータの表示はキャプチャされたアバター画像データの量に基づく、項目１から１１のいずれか一項に記載の方法。
項目１３．第１の画像データが、静止データ及びビデオデータの両方を含む、項目１から１２のいずれか一項に記載の方法。
項目１４．
ユーザの画像データをキャプチャすることと、
ユーザの画像データは照明基準を満たすことに失敗しているという判定に従って、１つ以上のカメラの視野の照明を変更するためにユーザに対する命令を表示することと、
を更に含む、項目１から１３のいずれか一項に記載の方法。
項目１５．
第１の画像データに基づいてユーザの身体的特徴又はアクセサリの特徴を判定することを更に含み、ユーザ固有のアバターを作成することは、ユーザ固有のアバターに身体的特徴又はアクセサリの特徴の表現を追加することを含む、項目２から１４のいずれか一項に記載の方法。
項目１６．ユーザ固有のアバターは、ユーザが第１の画像データにおいて表情を有するかどうかに関わらない独立した表情である、項目２から１５のいずれか一項に記載の方法。
項目１７．第１の画像データに基づいてユーザ固有のアバターを生成することが、
複数のアバターを生成することであって、複数のアバターは第１のアバター及び第１のアバターとは異なる第２のアバターを含む、ことと、
複数のアバターを表示することと、
複数のアバターのうちの１つを選択するユーザ入力を受信することと、
を更に含む、項目２から１６のいずれか一項に記載の方法。
項目１８．
ユーザ固有のアバターを生成した後、アバターをレシピとして記憶することを更に含み、レシピはアバターの構造及びアバターパラメータを定義する、項目２から１７のいずれか一項に記載の方法。
項目１９．プレースホルダアバターは、ユーザの画像データとは無関係の所定の人のシルエットである、項目１から１８のいずれか一項に記載の方法。
項目２０．
ディスプレイと、
１つ以上のプロセッサと、
１つ以上のカメラと、
メモリと、
１つ以上のプログラムと、
を備えた、電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、
ディスプレイにプレースホルダアバターを表示することであって、プレースホルダアバターの表示は電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、
プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出することと、
１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出したことに応じて、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第１の画像データをキャプチャすることと、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するためにユーザに第１の案内を提供することと、
を行う命令を含む、電子デバイス。
項目２１．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムが命令を含み、命令は、ディスプレイ及び１つ以上のカメラを有する電子デバイスの１つ以上のプロセッサによって実行されると、
プレースホルダアバターをディスプレイ上に表示することであって、プレースホルダアバターの表示は電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく、ことと、
プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出することと、
１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出したことに応じて、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って、１つ以上のカメラでユーザの第１の画像データをキャプチャすることと、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するように第１の案内をユーザに提供することと、
をデバイスに行わせる、非一時的コンピュータ可読記憶媒体。
項目２２．電子デバイスであって、
ディスプレイと、
１つ以上のカメラと、
ディスプレイにプレースホルダアバターを表示する手段であって、プレースホルダアバターの表示は電子デバイスの１つ以上のカメラの視野に対するユーザの第１の位置に基づく、手段と、
プレースホルダアバターを表示しつつ、１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出する手段と、
１つ以上のカメラの視野に対する第２の位置へのユーザの移動を検出したことに応じて、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしているという判定に従って１つ以上のカメラでユーザの第１の画像データをキャプチャする手段と、
１つ以上のカメラの視野に対するユーザの第２の位置は第１の組の画像基準を満たしていないという判定に従って、プレースホルダアバターの表示を続けながら、電子デバイスに対する位置を第１の目標位置に変更するためにユーザに第１の案内を提供する手段と、
を備えた、電子デバイス。
項目２３．
ディスプレイと、
１つ以上のプロセッサと、
１つ以上のプロセッサに結合された１つ以上のカメラと、
メモリと、
メモリに記憶され、１つ以上のプロセッサによって実行されるように構成された、１つ以上のプログラムであり、項目１から１９に記載の方法のいずれかを実行する命令を含む、１つ以上のプログラムと、
を備えた、電子デバイス。
項目２４．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムが命令を含み、命令は、ディスプレイ及び１つ以上のカメラを有する電子デバイスの１つ以上のプロセッサによって実行されると、項目１から１９に記載の方法のいずれかをデバイスに実行させる、非一時的コンピュータ可読記憶媒体。
項目２５．
ディスプレイと、
１つ以上のカメラと、
項目１から１９に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
項目２６．
ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスにおいて、
複数の編集可能な特徴を有するアバター、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域、及び、
現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域
を同時に表示することを含む、アバター編集ユーザインタフェースをディスプレイに表示することと、
アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおける入力を検出することと、
入力を検出したことに応じて、
入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、
第２のアバター特徴が現在選択されていることを示すように特徴選択制御領域を更新することと、
現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を更新することと、
入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、
特徴オプション制御領域を更新して、第１のアバター特徴の第２のオプションが現在選択されていることを示すことと、
第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを更新することと、
を含む、方法。
項目２７．
入力の検出に応じて、入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、アバター特徴制御領域を更新することなく、特徴オプション制御領域が更新される、項目２６に記載の方法。
項目２８．
入力の検出に応じて、入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、アバターを更新することなく、特徴選択制御領域が更新される、項目２６又は２７に記載の方法。
項目２９．アバター編集ユーザインタフェースを表示することが更に、
現在選択されている第１の色及び現在選択されていない第２の色を含む、第１のアバター特徴の複数の色オプションの表現を含む、色選択領域
を同時にディスプレイに表示することを含み、色選択領域は、アバター、特徴選択制御領域、及び特徴オプション制御領域と同時に表示される、項目２６から２８のいずれか一項に記載の方法。
項目３０．
色選択領域を表示しつつ、第２の色の選択に対応するユーザ入力の検出に応じて、第２の色に基づいてアバターにおける第１のアバター特徴の表示を更新すること、
を更に含む、項目２９に記載の方法。
項目３１．第１のアバター特徴がアバターの衣類であり、第２の色に基づいてアバターにおいて第１のアバター特徴の表示を更新することが、アバターの衣類の色を第２の色に更新することを含む、項目２９又は３０に記載の方法。
項目３２．第１のアバター特徴が、アバターのアクセサリである、項目２６から３１のいずれか一項に記載の方法。
項目３３．ディスプレイが、タッチ感知ディスプレイであり、方法が、
タッチ感知ディスプレイ上でのジェスチャの受信に応じて、ジェスチャに基づいて第１のアバター特徴の特性を修正することと、
修正されたパラメータに基づいてアバターの表示を更新することと、
を更に含む、項目２６から３２のいずれか一項に記載の方法。
項目３４．
予め保存された複数のアバターを含むアバター管理インタフェースを表示することと、
予め保存されたアバターを選択するユーザ入力を受信することと、
予め保存されたアバターを選択するユーザ入力に応じて、予め保存されたアバターをアバター編集ユーザインタフェースに表示することと、
を更に含む、項目２６から３３のいずれか一項に記載の方法。
項目３５．
アバターを更新して、第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更した後に、アバターレシピとしてアバターを記憶することを更に含み、アバターレシピは、第２のオプションを含むアバター構造及びアバターパラメータを定義する、項目２６から３４のいずれか一項に記載の方法。
項目３６．
アバターレシピを連絡先に送信すること、
を更に含む、項目３５に記載の方法。
項目３７．
第１の連絡先のアバターレシピを受信することと、
第１の連絡先を含む複数の連絡先についての連絡先情報を表示することを更に含み、第１の連絡先について表示される連絡先情報は、第１の連絡先のアバターレシピに基づくアバターを含む、項目２６から３６のいずれか一項に記載の方法。
項目３８．第１のアバター特徴が現在選択されているときに、アバターの表示が第１のアバター特徴のインジケータを含む、項目２６から３７のいずれか一項に記載の方法。
項目３９．特徴選択制御領域内の表現は、それぞれのアバター特徴の形状に基づく形状を有する、項目２６から３８のいずれか一項に記載の方法。
項目４０．特徴オプション制御領域内の表現は、それぞれのアバター特徴のオプションの形状に基づく形状を有する、項目２６から３９のいずれか一項に記載の方法。
項目４１．
１つ以上の入力デバイスを介して、アバター編集ユーザインタフェースに関連付けられた入力が所定の期間に検出されないことに従って、アバターアニメーションを用いてアバターの表示を更新すること、
を更に含む、項目２６から４０のいずれか一項に記載の方法。
項目４２．第１のアバター特徴の第２のオプションに従ってアバターを更新して第１のアバター特徴の外観を変更することは、第２のオプションに基づいてアバターの表情を修正することを含む、項目２６から４１のいずれか一項に記載の方法。
項目４３．
アバターを表示しつつ、電子デバイスの１つ以上の入力デバイスを介して入力を検出したことに応じて、入力に関連付けられた位置に基づいてアバターの目を更新すること、
を更に含む、項目２６から４２のいずれか一項に記載の方法。
項目４４．
アニメーションループがアバターの一連の表情を含む、アニメーションループに基づいてアバターを更新すること、
を更に含む、項目２６から４３のいずれか一項に記載の方法。
項目４５．アニメーションループは持続時間を有し、方法が、
持続時間より少ないランダムな時間オフセットを決定すること、を更に含み、アニメーションループに基づいてアバターを更新することは、ランダムな時間オフセットに基づいてアニメーションループ内の位置において開始するアバターを更新することを含む、項目４４に記載の方法。
項目４６．
所定の期間後にアニメーションループに基づいてアバターを更新することを停止すること、
を更に含む、項目４４又は４５に記載の方法。
項目４７．第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを更新することが、アニメーションを介して第１のオプションに基づく第１のアバター特徴を第２のオプションに基づく第１のアバター特徴に遷移させることを含む、項目２６から４６のいずれか一項に記載の方法。
項目４８．電子デバイスであって、
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、
複数の編集可能な特徴を有するアバターと、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、
現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域と、
を同時に表示することを含む、アバター編集ユーザインタフェースをディスプレイに表示することと、
アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおける入力を検出することと、
入力を検出したことに応じて、
入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、
第２のアバター特徴が現在選択されていることを示すように特徴選択制御領域を更新することと、
現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を更新することと、
入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、
特徴オプション制御領域を更新して、第１のアバター特徴の第２のオプションが現在選択されていることを示すことと、
第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを更新することと、
を行う命令を含む、電子デバイス。
項目４９．１つ以上のプログラムを記憶する非一時的コンピュータ記憶媒体であって、１つ以上のプログラムは、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
複数の編集可能な特徴を有するアバターと、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域と、
現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域と、
を同時に表示することを含む、アバター編集ユーザインタフェースをディスプレイに表示することと、
アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおける入力を検出することと、
入力を検出したことに応じて、
入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、
特徴選択制御領域を更新して、第２のアバター特徴が現在選択されていることを示すことと、
現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を更新することと、
入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、
第１のアバター特徴の第２のオプションが現在選択されていることを示すように特徴オプション制御領域を更新することと、
第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するためにアバターを更新することと、
をデバイスに行わせる命令を含む、非一時的コンピュータ記憶媒体。
項目５０．電子デバイスであって、
ディスプレイと、
１つ以上の入力デバイスと、
複数の編集可能な特徴を有するアバター、
修正のために現在選択されている第１のアバター特徴及び修正のために現在選択されていない第２のアバター特徴を含む、複数のアバター特徴の表現を含む特徴選択制御領域、
現在選択されている第１のアバター特徴の第１のオプション及び現在選択されていない第１のアバター特徴の第２のオプションを含む選択するための第１のアバター特徴の複数のオプションの表現を含む特徴オプション制御領域、
の同時表示を含む、アバター編集ユーザインタフェースをディスプレイに表示する手段と、
アバター編集ユーザインタフェースを表示しつつ、アバター編集ユーザインタフェースにおいて入力を検出する手段と、
入力を検出したことに応じて、
入力は特徴選択制御領域における第２のアバター特徴の選択に対応しているという判定に従って、
第２のアバター特徴が現在選択されていることを示すように特徴選択制御領域を更新すること、及び、
現在選択されている第２のアバター特徴の第１のオプション及び現在選択されていない第２のアバター特徴の第２のオプションを含む選択するための第２のアバター特徴の複数のオプションの表現を含むように特徴オプション制御領域を更新すること、
を行う手段と、
入力は特徴オプション制御領域における第１のアバター特徴の第２のオプションの選択に対応しているという判定に従って、
特徴オプション制御領域を更新して、第１のアバター特徴の第２のオプションが現在選択されていることを示すこと、及び、
第１のアバター特徴の第２のオプションに従って第１のアバター特徴の外観を変更するようにアバターを更新すること、
を行う手段と、
を備えた、電子デバイス。
項目５１．
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、項目２６から４７に記載の方法のいずれかを実行する命令を含む、電子デバイス。
項目５２．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムが命令を含み、命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、デバイスに項目２６から４７に記載の方法のいずれかを実行させる、非一時的コンピュータ可読記憶媒体。
項目５３．
ディスプレイと、
項目２７から４７に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
項目５４．
ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスで、
デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、第１のユーザは、デバイスの第１のユーザを他のユーザと区別するユーザのアバターによってメッセージングアプリケーションにおいて表される、ことと、
メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
ステッカユーザインタフェースを表示するという第１の要求に応じて、
ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び
ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバター、
を同時に表示することを含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースをディスプレイに表示することと、
ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、メッセージングアプリケーションを介して第１のユーザから第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを、１つ以上の入力デバイスを介して、検出することと、
１つ以上の入力のシーケンスを検出したことに応じて、
１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを送ることと、
１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送ることと、
を含む、方法。
項目５５．ユーザのアバターは、アバターレシピに基づく、項目５４に記載の方法。
項目５６．第１のアバターステッカは、ユーザのアバターのアバターレシピの第１のパラメータを修正することにより生成された、項目５５に記載の方法。
項目５７．第２のアバターステッカは、ユーザのアバターのアバターレシピに第２のパラメータを追加することにより生成された、項目５５又は５６に記載の方法。
項目５８．第１のアバターステッカを第２のユーザに送ることは、ユーザに第１のアバターステッカを表すレシピを送ることを含む、項目５４から５７のいずれか一項に記載の方法。
項目５９．メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを送ることは、
第２のユーザに関連付けられたデバイスはアバターレシピをサポートするという判定に従って、第１のアバターステッカを第２のユーザに送ることが、ユーザに第１のアバターステッカを表すレシピを送ることを含むことと、
第２のユーザに関連付けられたデバイスはアバターレシピをサポートしないという判定に従って、ユーザに第１のアバターステッカのグラフィカル表現を送ることと、
を含む、項目５４から５８のいずれか一項に記載の方法。
項目６０．ステッカユーザインタフェースが、メッセージングインタフェースの少なくとも一部と同時に表示される、項目５４から５９のいずれか一項に記載の方法。
項目６１．第１のアバターステッカは、動画化される、項目５４から６０のいずれか一項に記載の方法。
項目６２．第２のアバターステッカが、プロップを含む、項目５４から６１のいずれか一項に記載の方法。
項目６３．
ステッカユーザインタフェースを表示するという要求を受信する前に、ユーザメッセージのテキスト部分のユーザ入力を受信することと、
１つ以上の入力のシーケンスを検出した後、メッセージングアプリケーションを介してユーザメッセージのテキスト部分を第２のユーザに送ることと、
を更に含む、項目５４から６２のいずれか一項に記載の方法。
項目６４．
第１のアバターのステッカ又は第２のアバターステッカを送った後、ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、第１のユーザから第２のユーザにメッセージングアプリケーションを介して対応するアバターステッカを送るという要求に対応する１つ以上の入力の第２のシーケンスを１つ以上の入力デバイスを介して検出することと、
１つ以上の入力の第２のシーケンスの検出に応じて、１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送ることと、
を更に含む、項目５４から６３のいずれか一項に記載の方法。
項目６５．
ディスプレイと、
１つ以上のプロセッサと、
１つ以上の入力デバイスと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、
デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、第１のユーザは、デバイスの第１のユーザを他のユーザと区別するユーザのアバターによってメッセージングアプリケーションにおいて表される、ことと、
メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
ステッカユーザインタフェースを表示するという第１の要求に応じて、
ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び
ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバター、
を同時に表示することを含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースをディスプレイに表示することと、
ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、メッセージングアプリケーションを介して第１のユーザから第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを、１つ以上の入力デバイスを介して、検出することと、
１つ以上の入力のシーケンスの検出に応じて、
１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを送ることと、
１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送ることと、
を行う命令を含む、電子デバイス。
項目６６．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは命令を含み、命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、第１のユーザは、デバイスの第１のユーザを他のユーザと区別するユーザのアバターによってメッセージングアプリケーションにおいて表される、ことと、
メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
ステッカユーザインタフェースを表示するという第１の要求に応じて、
ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び
ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバター、
を同時に表示することを含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースをディスプレイに表示することと、
ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、対応するアバターステッカをメッセージングアプリケーションを介して第１のユーザから第２のユーザに送るという要求に対応する１つ以上の入力のシーケンスを１つ以上の入力デバイスを介して検出することと、
１つ以上の入力のシーケンスの検出に応じて、
１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを送ることと、
１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送ることと、
をデバイスに行わせる命令を含む、非一時的コンピュータ可読記憶媒体。
項目６７．電子デバイスであって、
ディスプレイと、
１つ以上の入力デバイスと、
デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示する手段であって、第１のユーザはデバイスの第１のユーザを他のユーザと区別するユーザのアバターによってメッセージングアプリケーションにおいて表される、手段と、
メッセージングユーザインタフェースを表示しつつ、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信する手段と、
ステッカユーザインタフェースを表示するという第１の要求に応じて、
ユーザを表すアバターの修正に基づいて生成された第１のアバターステッカ、及び
ユーザを表しかつ第１のアバターステッカとは異なるアバターの修正に基づいて生成された第２のアバター
を同時に表示することを含む、ユーザのアバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースをディスプレイに表示する手段と、
ディスプレイにアバター選択インタフェースの複数のアフォーダンスを表示しつつ、メッセージングアプリケーションを介して第１のユーザから第２のユーザに対応するアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを１つ以上の入力デバイスを介して検出する手段と、
１つ以上の入力のシーケンスの検出に応じて、
１つ以上の入力のシーケンスが第１のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のユーザに対する第１のアバターステッカを送る手段と、
１つ以上の入力のシーケンスが第２のアバターステッカの選択に対応しているという判定に従って、メッセージングアプリケーションを介して第１のユーザから第２のユーザに第２のアバターステッカを送る手段と、
を備えた、電子デバイス。
項目６８．
ディスプレイと、
１つ以上のプロセッサと、
１つ以上の入力デバイスと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、項目５４から６４に記載の方法のいずれかを実行する命令を含む、電子デバイス。
項目６９．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは命令を含み、命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、項目５４から６４に記載の方法のいずれかをデバイスに実行させる、非一時的コンピュータ可読記憶媒体。
項目７０．
ディスプレイと、
１つ以上の入力デバイスと、
項目５４から６４に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
項目７１．
ディスプレイ及びタッチ感知面を有する電子デバイスにおいて、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをデバイスに表示することと、
複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で検出することと、
第１のジェスチャの検出に応じて、
第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、ことと、
第１のジェスチャは、第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによりアバターの表示を更新することとを含み、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている、方法。
項目７２．
第１のジェスチャの検出に応じて、ジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第２の特徴であるという判定に従って、第２の特徴の第１の特性を修正することによりアバターの表示を更新することを更に含み、第２の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、項目７１に記載の方法。
項目７３．第２の特徴の第１の特性は、第１の特徴の第１の特性とは異なる、項目７２に記載の方法。
項目７４．
第１のジェスチャの検出に応じて、第１のジェスチャは第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第２の特徴であるという判定に従って、第２の特徴の第１の特性とは異なる第２の特徴の第２の特性を修正することによりアバターの表示を更新することを更に含み、第２の特徴の第２の特性は第２のジェスチャタイプと関連付けられている、項目７２又は７３に記載の方法。
項目７５．第２の特徴の第２の特性は、第１の特徴の第２の特徴とは異なる、項目７２から７４のいずれか一項に記載の方法。
項目７６．アバター編集インタフェースは、編集のために選択可能な複数の編集可能な特徴のうちの１つ以上の特徴の特徴アフォーダンスを有する第１の選択インジケータを含む、項目７１から７５のいずれか一項に記載の方法。
項目７７．第１のタイプのジェスチャはピンチジェスチャであり、第１の特徴は鼻であり、第１の特性は鼻の幅である、項目７１から７６のいずれか一項に記載の方法。
項目７８．第２のタイプのジェスチャが垂直ドラッグであり、第２の特性が第１の特徴の垂直位置である、項目７１から７７のいずれか一項に記載の方法。
項目７９．
第１のジェスチャは第１の特性の第１の許容範囲を超えて第１の特性を修正するという判定に従って、第１の特徴の第１の特性の修正を停止すること、
を更に含む、項目７１から７８のいずれか一項に記載の方法。
項目８０．
第１の特性の許容範囲を超える第１の特性の修正に対応する入力を第１のジェスチャの間に検出することと、
第１の特性の許容範囲を超えて第１の特性を修正した後、ジェスチャの端部を検出することと、
第１のジェスチャの端部の検出に応じて、第２の特性の第２の許容範囲内になるように第１の特徴の第１の特性を修正することによりアバターの表示を更新することと、
を更に含む、項目７１から７９のいずれか一項に記載の方法。
項目８１．第１のジェスチャが、第１の特徴が表示された場所とは別個のタッチ感知面上の場所において検出される、項目７１から８０のいずれか一項に記載の方法。
項目８２．
対応する特徴の予め設定された特性のセットを選択するユーザ入力を受信することであって、予め設定された特性のセットは第２の特性の値を有さずに第１の特性の値及び第３の特性の値を含む、ことと、
ユーザ入力を受信したことに応じて、第１の値及び第２の値に基づいて、アバターの表示を更新することと、
を更に含む、項目７１から８１のいずれか一項に記載の方法。
項目８３．第３の特性は、１つ以上の予め設定された特性のセットの選択以外に修正可能ではない、項目７１から８２のいずれか一項に記載の方法。
項目８４．第１の特性の値及び第３の特性の値に基づくアバターの表示は、第２の特性の予めユーザ設定された値に基づく、項目７１から８３のいずれか一項に記載の方法。
項目８５．予め設定された特性のセットを選択するユーザ入力は、提示特性に関連付けられたアフォーダンスの選択であり、アフォーダンスは予め設定された特性のセットにおいて１つ以上の値を表す形状を有する、項目７１から８４のいずれか一項に記載の方法。
項目８６．
ユーザ入力の受信に応じて、リモートサーバに予め設定された特性のセットを要求すること、
を更に含む、項目７１から８５のいずれか一項に記載の方法。
項目８７．
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをデバイスに表示することと、
複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で検出することと、
第１のジェスチャの検出に応じて、
第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、ことと、
第１のジェスチャは、第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている、ことと、
を行う命令を含む、電子デバイス。
項目８８．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは命令を含み、命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをディスプレイに表示することと、
複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で検出することと、
第１のジェスチャの検出に応じて、
第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、ことと、
第１のジェスチャは、第１のタイプのジェスチャとは異なる、第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている、ことと、
をデバイスに行わせる命令を含む、非一時的コンピュータ可読記憶媒体。
項目８９．電子デバイスであって、
ディスプレイと、
１つ以上の入力デバイスと、
複数の編集可能な特徴を有するアバターを含むアバター編集インタフェースをデバイスに表示する手段と、
複数の編集可能な特徴のうちの対応する特徴が現在選択されている特徴である間に、タッチ感知面との１つ以上の接点の移動を含む第１のジェスチャをタッチ感知面上で検出する手段と、
第１のジェスチャの検出に応じて、
第１のジェスチャは第１のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第１の特性は第１のジェスチャタイプと関連付けられている、こと、及び、
第１のジェスチャは第１のタイプのジェスチャとは異なる第２のタイプのジェスチャであるというかつ対応する特徴は第１の特徴であるという判定に従って、第１の特徴の第１の特性とは異なる第１の特徴の第２の特性を修正することによりアバターの表示を更新することであって、第１の特徴の第２の特性は第２のジェスチャタイプと関連付けられている、ことを行う手段と、
を備えた、電子デバイス。
項目９０．
ディスプレイと、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備えた電子デバイスであって、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行されるように構成され、１つ以上のプログラムは、項目７１から８６に記載の方法のいずれかを実行する命令を含む、電子デバイス。
項目９１．１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは命令を含み、命令が、ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスの１つ以上のプロセッサによって実行されると、項目７１から８６に記載の方法のいずれかをデバイスに実行させる、非一時的コンピュータ可読記憶媒体。
項目９２．
ディスプレイと、
項目７１から８６に記載の方法のいずれかを実行する手段と、
を備えた、電子デバイス。
【０３４２】
上記は、説明を目的として、特定の実施形態を参照して記述されている。しかしながら、上記の例示的な論考は、網羅的であること、又は開示される厳密な形態に本発明を限定することを意図するものではない。上記の教示を考慮して、多くの修正及び変形が可能である。これらの実施形態は、本技術の原理、及びその実際の適用を最もよく説明するために、選択及び記載されている。それにより、他の当業者は、意図された具体的な用途に適するような様々な修正を用いて、本技術及び様々な実施形態を最も良好に利用することが可能となる。
【０３４３】
添付図面を参照して、本開示及び例を十分に説明してきたが、様々な変更及び修正が、当業者には明らかとなるであろうことに留意されたい。そのような変更及び修正は、特許請求の範囲によって定義されるような、本開示及び例の範囲内に含まれるものとして理解されたい。
【図１Ａ】
2020091866.tif 000004
【図１Ｂ】
2020091866.tif 000005
【図２】
2020091866.tif 000006
【図３】
2020091866.tif 000007
【図４Ａ】
2020091866.tif 000008
【図４Ｂ】
2020091866.tif 000009
【図５Ａ】
2020091866.tif 000010
【図５Ｂ】
2020091866.tif 000011
【図６Ａ】
2020091866.tif 000012
【図６Ｂ】
2020091866.tif 000013
【図６Ｃ】
2020091866.tif 000014
【図６Ｄ】
2020091866.tif 000015
【図６Ｅ】
2020091866.tif 000016
【図６Ｆ】
2020091866.tif 000017
【図６Ｇ】
2020091866.tif 000018
【図６Ｈ】
2020091866.tif 000019
【図６Ｉ】
2020091866.tif 000020
【図６Ｊ】
2020091866.tif 000021
【図６Ｋ】
2020091866.tif 000022
【図６Ｌ】
2020091866.tif 000023
【図６Ｍ】
2020091866.tif 000024
【図７Ａ】
2020091866.tif 000025
【図７Ｂ】
2020091866.tif 000026
【図８】
2020091866.tif 000027
【図９Ａ】
2020091866.tif 000028
【図９Ｂ】
2020091866.tif 000029
【図９Ｃ】
2020091866.tif 000030
【図９Ｄ】
2020091866.tif 000031
【図９Ｅ】
2020091866.tif 000032
【図９Ｆ】
2020091866.tif 000033
【図９Ｇ】
2020091866.tif 000034
【図９Ｈ】
2020091866.tif 000035
【図１０Ａ】
2020091866.tif 000036
【図１０Ｂ】
2020091866.tif 000037
【図１１】
2020091866.tif 000038
【図１２Ａ】
2020091866.tif 000039
【図１２Ｂ】
2020091866.tif 000040
【図１２Ｃ】
2020091866.tif 000041
【図１２Ｄ】
2020091866.tif 000042
【図１２Ｅ】
2020091866.tif 000043
【図１２Ｆ】
2020091866.tif 000044
【図１２Ｇ】
2020091866.tif 000045
【図１２Ｈ】
2020091866.tif 000046
【図１２Ｉ】
2020091866.tif 000047
【図１２Ｊ】
2020091866.tif 000048
【図１３Ａ】
2020091866.tif 000049
【図１３Ｂ】
2020091866.tif 000050
【図１４】
2020091866.tif 000051
【図１５Ａ】
2020091866.tif 000052
【図１５Ｂ】
2020091866.tif 000053
【図１５Ｃ】
2020091866.tif 000054
【図１５Ｄ】
2020091866.tif 000055
【図１５Ｅ】
2020091866.tif 000056
【図１５Ｆ】
2020091866.tif 000057
【図１６Ａ】
2020091866.tif 000058
【図１６Ｂ】
2020091866.tif 000059
【図１７】
2020091866.tif 000060
【手続補正書】
【提出日】令和2年1月6日(2020.1.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ディスプレイ及び１つ以上の入力デバイスを有する電子デバイスにおいて、
前記デバイスの第１のユーザと他のユーザとの間でメッセージを送信するメッセージングアプリケーションのメッセージングインタフェースを表示することであって、前記第１のユーザは、前記デバイスの前記第１のユーザを他のユーザと区別する前記ユーザのアバターによって前記メッセージングアプリケーションにおいて表される、ことと、
前記メッセージングユーザインタフェースを表示している間に、第２のユーザに送るためのステッカを選択するステッカユーザインタフェースを表示するという第１の要求を受信することと、
前記ステッカユーザインタフェースを表示するという前記第１の要求に応じて、
前記ユーザを表す前記アバターの修正に基づいて生成された第１のアバターステッカ、及び
前記ユーザを表しかつ前記第１のアバターステッカとは異なる前記アバターの修正に基づいて生成された第２のアバターステッカ
を前記ディスプレイに同時に表示することを含む、前記ユーザの前記アバターに基づいて生成された第１の複数のアバターステッカを含むステッカユーザインタフェースを表示することと、
前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示している間に、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに個別のアバターステッカを送るという要求に対応する１つ以上の入力のシーケンスを、前記１つ以上の入力デバイスを介して、検出することと、
前記１つ以上の入力のシーケンスの検出に応じて、
前記１つ以上の入力のシーケンスが前記第１のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送ることと、
前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送ることと、
を含む、方法。
【請求項２】
前記ユーザの前記アバターが、アバターレシピに基づく、請求項１に記載の方法。
【請求項３】
前記第１のアバターステッカは、前記ユーザの前記アバターの前記アバターレシピの第１のパラメータを修正することにより生成された、請求項２に記載の方法。
【請求項４】
前記第２のアバターステッカは、前記ユーザの前記アバターの前記アバターレシピに第２のパラメータを追加することにより生成された、請求項２又は３に記載の方法。
【請求項５】
前記第１のアバターステッカを前記第２のユーザに送ることは、前記ユーザに前記第１のアバターステッカを表すレシピを送ることを含む、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のユーザに対する前記第１のアバターステッカを送ることは、
前記第２のユーザに関連付けられているデバイスはアバターレシピをサポートしているという判定に従って、前記第１のアバターステッカを前記第２のユーザに送ることが、前記ユーザに前記第１のアバターステッカを表すレシピを送ることと、
前記第２のユーザに関連付けられている前記デバイスはアバターレシピをサポートしていないという判定に従って、前記ユーザに前記第１のアバターステッカのグラフィカル表現を送ることと、
を含む、請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記ステッカユーザインタフェースが、前記メッセージングインタフェースの少なくとも一部と同時に表示される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記第１のアバターステッカが、アニメーション化されている、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記第２のアバターステッカが、プロップを含む、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記ステッカユーザインタフェースを表示するという前記要求を受信する前に、ユーザメッセージのテキスト部分のユーザ入力を受信することと、
前記１つ以上の入力のシーケンスを検出した後に、前記メッセージングアプリケーションを介して前記ユーザメッセージの前記テキスト部分を前記第２のユーザに送ることと、
を更に含む、請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記第１のアバターステッカ又は前記第２のアバターステッカを送った後に、前記ディスプレイに前記アバター選択インタフェースの前記複数のアフォーダンスを表示している間に、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに個別のアバターステッカを送るという要求に対応する１つ以上の入力の第２のシーケンスを、前記１つ以上の入力デバイスを介して、検出することと、
前記１つ以上の入力の第２のシーケンスの検出に応じて、前記１つ以上の入力のシーケンスが前記第２のアバターステッカの選択に対応しているという判定に従って、前記メッセージングアプリケーションを介して前記第１のユーザから前記第２のユーザに前記第２のアバターステッカを送ることと、
を更に含む、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
コンピュータに、請求項１から１１のいずれか一項に記載の方法を実行させるコンピュータプログラム。
【請求項１３】
請求項１２に記載のコンピュータプログラムを格納したメモリと、
前記メモリに格納された前記コンピュータプログラムを実行可能な１つ以上のプロセッサと、
を備える電子デバイス。
【請求項１４】
請求項１から１１のいずれか一項に記載の方法を実行する手段を備える電子デバイス。
【外国語明細書】
2020091866000001.pdf