Avatar integration with multiple applications

JP2026009953A5Pending Publication Date: 2026-03-17APPLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-09-26
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

Existing techniques for displaying avatars in application user interfaces are cumbersome and inefficient, often requiring multiple key presses and consuming excessive time and energy, particularly in battery-operated devices.

Method used

Faster and more efficient methods for displaying avatars in application user interfaces, including dynamic updating of sticker sets based on user-created avatars and interactive editing of avatar features, such as pose and color, to reduce cognitive burden and conserve power.

Benefits of technology

Enhances user interaction efficiency and conserves battery power by reducing the number of user inputs required, thus extending battery life in portable devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To provide a method for integrating an avatar with a plurality of applications.SOLUTION: After receiving the first message, receiving a request to display the first message; and for the first contactable user, in accordance with a determination that a set of prompt criteria is met, the set of prompt criteria including a first prompt criterion that is met when updated contact information corresponding to the first contactable user is received: A method comprising: concurrently displaying, on a display device, a first message and a visual indication that updated contact information is available for a first contactable user; and in accordance with a determination that the set of prompt criteria is not met for the first contactable user, displaying, on the display device, the first message without displaying the visual indication that updated contact information is available for the first contactable user.SELECTED DRAWING: Figure 18
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] (CROSS-REFERENCE TO RELATED APPLICATIONS) This application is related to U.S. Patent Application No. 62 / 843,967, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed May 6, 2019; U.S. Patent Application No. 62 / 855,891, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed May 31, 2019; Danish Patent Application No. PA2019 / 70530, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed August 27, 2019; Danish Patent Application No. PA2019 / 70531, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed August 27, 2019; and Danish Patent Application No. PA2019 / 70531, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed September 25, 2019. No. 16 / 582,500, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed September 25, 2019; and U.S. patent application Ser. No. 16 / 582,570, entitled "AVATAR INTEGRATION WITH MULTIPLE APPLICATIONS," filed September 26, 2019, the entire contents of which are incorporated herein by reference.

[0002] The present disclosure relates generally to computer user interfaces, and more particularly to techniques for displaying avatars in various application user interfaces. [Background technology]

[0003] Multimedia content such as emojis, stickers, and virtual avatars may be used in various application user interfaces. The emojis, stickers, and virtual avatars represent various people, objects, actions, and / or other things. Personalized contact information such as names and photo representations are used in messaging applications. Summary of the Invention

[0004] However, some techniques for displaying and using avatars in various application user interfaces using electronic devices are generally cumbersome and inefficient. For example, some existing techniques use complex and time-consuming user interfaces that may involve multiple key presses or keystrokes. Existing techniques take more time than necessary, wasting the user's time and the device's energy. The latter problem is particularly acute in battery-operated devices.

[0005] The present technology thus provides electronic devices with faster, more efficient methods and interfaces for displaying avatars in various application user interfaces. Such methods and interfaces optionally complement or replace other methods for displaying avatars in various application user interfaces. Such methods and interfaces reduce the cognitive burden on users and create more efficient human-machine interfaces. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.

[0006] An exemplary method is described herein, in an electronic device having a display device and an input device, including: receiving, via one or more input devices, a request to display a sticker user interface; and, in response to receiving the request to display the sticker user interface, displaying, via the display device, a sticker user interface including representations of a plurality of sets of stickers based on user-created avatars, wherein the displaying includes: displaying, in accordance with a determination that a user has created a first set of two or more user-created avatars including a first avatar and a second avatar, a representation of the first plurality of sets of stickers including a representation of the set of stickers based on a first avatar and a representation of the set of stickers based on the second avatar; and, in accordance with a determination that the user has created a second set of two or more user-created avatars including a third avatar not included in the representation of the first plurality of sets of stickers, a representation of a second plurality of sets of stickers different from the representations of the first plurality of sets of stickers including a representation of the set of stickers based on a third avatar not included in the representation of the first plurality of sets of stickers.

[0007] An exemplary non-transitory computer-readable storage medium is described herein. The exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display device and an input device, the one or more programs including instructions for receiving, via the one or more input devices, a request to display a sticker user interface; and, in response to receiving the request to display the sticker user interface, displaying, via the display device, a sticker user interface including representations of a plurality of sets of stickers based on user-created avatars, the displaying including: displaying, in accordance with a determination that a user has created a first set of two or more user-created avatars including a first avatar and a second avatar, a representation of a first plurality of sets of stickers including a representation of a set of stickers based on a first avatar and a representation of a set of stickers based on a second avatar; and, in accordance with a determination that the user has created a second set of two or more user-created avatars including a third avatar not included in the representation of the first plurality of sets of stickers, a representation of a second plurality of sets of stickers different from the representations of the first plurality of sets of stickers including a representation of a set of stickers based on a third avatar not included in the representation of the first plurality of sets of stickers.

[0008] An exemplary temporary computer-readable storage medium is described herein. The exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display device and an input device, the one or more programs including instructions for receiving, via the one or more input devices, a request to display a sticker user interface; and, in response to receiving the request to display the sticker user interface, displaying, via the display device, a sticker user interface including representations of a plurality of sets of stickers based on user-created avatars, the displaying including: displaying, in accordance with a determination that a user has created a first set of two or more user-created avatars including a first avatar and a second avatar, a representation of the first plurality of sets of stickers including a representation of the set of stickers based on a first avatar and a representation of the set of stickers based on the second avatar; and, in accordance with a determination that the user has created a second set of two or more user-created avatars including a third avatar not included in the representation of the first plurality of sets of stickers, a representation of a second plurality of sets of stickers different from the representations of the first plurality of sets of stickers including a representation of the set of stickers based on a third avatar not included in the representation of the first plurality of sets of stickers.

[0009] An exemplary electronic device is described herein. The exemplary electronic device includes a display device, an input device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for receiving, via the one or more input devices, a request to display a sticker user interface, and, in response to receiving the request to display the sticker user interface, displaying, via the display device, a sticker user interface including representations of a plurality of sets of stickers based on user-created avatars, wherein the displaying includes: displaying, in accordance with a determination that a user has created a first set of two or more user-created avatars including a first avatar and a second avatar, a representation of a first plurality of sets of stickers including a representation of the set of stickers based on a first avatar and a representation of the set of stickers based on the second avatar; and, in accordance with a determination that the user has created a second set of two or more user-created avatars including a third avatar not included in the representation of the first plurality of sets of stickers, a representation of a second plurality of sets of stickers different from the representations of the first plurality of sets of stickers including a representation of a set of stickers based on a third avatar not included in the representation of the first plurality of sets of stickers.

[0010] An exemplary electronic device is described herein, the exemplary electronic device including: a display device; an input device; means for receiving, via the one or more input devices, a request to display a sticker user interface; and means for displaying, via the display device, the sticker user interface including representations of multiple sets of stickers based on user-created avatars in response to receiving the request to display the sticker user interface, the displaying including: displaying, in accordance with a determination that a user has created a first set of two or more user-created avatars including a first avatar and a second avatar, a representation of the first multiple sets of stickers including a representation of the set of stickers based on a first avatar and a representation of the set of stickers based on the second avatar; and displaying, in accordance with a determination that the user has created a second set of two or more user-created avatars including a third avatar not included in the representation of the first multiple sets of stickers, a representation of the set of stickers based on a third avatar not included in the representation of the first multiple sets of stickers.

[0011] An exemplary method is described herein in an electronic device having a display device and one or more input devices. The exemplary method includes: displaying, via the display device, a contactable user editing user interface, the contactable user editing user interface including one or more representation options for the contactable user including an avatar representation option; detecting, via the one or more input devices, a selection of the avatar representation option; in response to detecting the selection of the avatar representation option, initiating a process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; receiving, as part of the process for selecting the avatar to use as a representation of the contactable user in the contactable user interface, a sequence of one or more inputs via the one or more input devices corresponding to a selection of a simulated three-dimensional avatar; and, in response to the selection of the simulated three-dimensional avatar, displaying, via the display device, a posing user interface including one or more controls for selecting a pose of the simulated three-dimensional avatar from a plurality of different poses.

[0012] An exemplary non-transitory computer-readable storage medium is described herein. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and one or more input devices, the one or more programs including instructions for: displaying, via the display device, a contactable user editing user interface, the contactable user editing user interface including one or more representation options for the contactable user including an avatar representation option; detecting, via the one or more input devices, a selection of an avatar representation option; in response to detecting the selection of the avatar representation option, initiating a process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; receiving, via the one or more input devices, a sequence of one or more inputs corresponding to a selection of a simulated three-dimensional avatar as part of the process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; and, in response to the selection of the simulated three-dimensional avatar, displaying, via the display device, a posing user interface including one or more controls for selecting a pose of the simulated three-dimensional avatar from a plurality of different poses.

[0013] An exemplary temporary computer-readable storage medium is described herein. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and one or more input devices, the one or more programs including instructions for: displaying, via the display device, a contactable user editing user interface, the contactable user editing user interface including one or more representation options for the contactable user including an avatar representation option; detecting, via the one or more input devices, a selection of an avatar representation option; in response to detecting the selection of the avatar representation option, initiating a process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; receiving, via the one or more input devices, a sequence of one or more inputs corresponding to a selection of a simulated three-dimensional avatar as part of the process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; and, in response to the selection of the simulated three-dimensional avatar, displaying, via the display device, a posing user interface including one or more controls for selecting a pose of the simulated three-dimensional avatar from a plurality of different poses.

[0014] An exemplary electronic device is described herein comprising: a display device, one or more input devices, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via the display device, a contactable user editing user interface, the contactable user editing user interface including one or more representation options for the contactable user including an avatar representation option; detecting, via the one or more input devices, a selection of an avatar representation option; in response to detecting the selection of the avatar representation option, initiating a process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; receiving, via the one or more input devices, a sequence of one or more inputs corresponding to a selection of a simulated three-dimensional avatar as part of the process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; and, in response to the selection of the simulated three-dimensional avatar, displaying, via the display device, a posing user interface including one or more controls for selecting a pose of the simulated three-dimensional avatar from a plurality of different poses.

[0015] An exemplary electronic device is described herein, the exemplary electronic device including: a display device; one or more input devices; and means for displaying, via the display device, a contactable user editing user interface, the contactable user editing user interface including one or more representation options for the contactable user including an avatar representation option; means for detecting, via the one or more input devices, a selection of an avatar representation option; means for initiating, in response to detecting the selection of the avatar representation option, a process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; means for receiving, via the one or more input devices, a sequence of one or more inputs corresponding to a selection of a simulated three-dimensional avatar as part of the process for selecting an avatar to use as a representation of the contactable user in the contactable user interface; and means for displaying, in response to the selection of the simulated three-dimensional avatar, via the display device a posing user interface including one or more controls for selecting a pose of the simulated three-dimensional avatar from a plurality of different poses.

[0016] An exemplary method is described herein in an electronic device having a display device and an input device, the exemplary method including: displaying, via the display device, an avatar editing user interface including an avatar including a first feature, the first feature having a first color pattern created with a first set of colors including a first color within a first region of the first color pattern, a set of color options for the first feature, and a plurality of color pattern options for the first feature including a second color pattern option different from the first color pattern; detecting, via the input device, a selection of a color option within the set of color options corresponding to the second color while the first feature is displayed in the first color pattern created with the first set of colors including the first color within the first region of the first color pattern; In response, modifying an appearance of one or more color pattern options in the plurality of color pattern options having a first portion corresponding to the set of color options, where modifying the appearance includes changing a portion of a second color pattern option from a respective color to a second color; maintaining a display of an avatar including a first feature, the first feature having a first color pattern; detecting a selection of a respective color pattern option of the color pattern options having the modified appearance; and in response to detecting the selection of the respective color pattern option, and while the second color is selected for the set of color options, modifying the appearance of the first feature of the avatar to have an appearance created based on the respective color pattern option having the second color applied to a portion of the respective color pattern option.

[0017] An exemplary non-transitory computer-readable storage medium is described herein. The exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and an input device, the one or more programs displaying, via the display device, an avatar editing user interface including: an avatar including a first feature, the first feature having a first color pattern created with a first set of colors including a first color within a first region of the first color pattern; a set of color options for the first feature; and a plurality of color pattern options for the first feature including a second color pattern option different from the first color pattern; and, via the input device, while the first feature is displayed in the first color pattern created with the first set of colors including the first color within the first region of the first color pattern, detecting a selection of a color option within the set of color options corresponding to the set of color options, and in response to detecting the selection, modifying an appearance of one or more color pattern options in the plurality of color pattern options having a first portion corresponding to the set of color options, wherein modifying the appearance includes modifying a portion of a second color pattern option from a respective color to a second color, the first feature having a first color pattern, maintaining a display of an avatar including the first feature; detecting a selection of a respective color pattern option of the color pattern options having the modified appearance, and in response to detecting the selection of the respective color pattern option and while the second color is selected for the set of color options, modifying the appearance of the first feature of the avatar to have an appearance created based on the respective color pattern option having the second color applied to the portion of the respective color pattern option.

[0018] An exemplary temporary computer-readable storage medium is described herein. The exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and an input device, the one or more programs displaying, via the display device, an avatar editing user interface including: an avatar including a first feature, the first feature having a first color pattern created with a first set of colors including a first color within a first region of the first color pattern; a set of color options for the first feature; and a plurality of color pattern options for the first feature including a second color pattern option different from the first color pattern; and, while the first feature is displayed in the first color pattern created with the first set of colors including the first color within the first region of the first color pattern, a user inputs, via the input device, a color corresponding to the second color. The method includes instructions for detecting a selection of a color option within the set of options, and in response to detecting the selection, altering an appearance of one or more color pattern options in the plurality of color pattern options having a first portion corresponding to the set of color options, where altering the appearance includes changing a portion of a second color pattern option from a respective color to a second color, maintaining a display of an avatar including a first characteristic, the first characteristic having a first color pattern, detecting a selection of a respective color pattern option of the color pattern options having the altered appearance, and in response to detecting the selection of the respective color pattern option and while the second color is selected for the set of color options, altering the appearance of the first characteristic of the avatar to have an appearance created based on the respective color pattern option having the second color applied to a portion of the respective color pattern option.

[0019] An exemplary electronic device is described herein, the exemplary electronic device comprising: a display device; an input device; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs displaying, via the display device, an avatar editing user interface including: an avatar including a first feature, the first feature having a first color pattern created with a first set of colors including a first color within a first region of the first color pattern; a set of color options for the first feature; and a plurality of color pattern options for the first feature including a second color pattern option different from the first color pattern; and a plurality of color pattern options for the first feature including a second color pattern option different from the first color pattern, while the first feature is displayed in the first color pattern created with the first set of colors including the first color within the first region of the first color pattern. detecting a selection of a color option within the set of color options corresponding to the set of color options; and in response to detecting the selection, modifying an appearance of one or more color pattern options in the plurality of color pattern options having a first portion corresponding to the set of color options, wherein modifying the appearance includes changing a portion of a second color pattern option from a respective color to a second color; maintaining a display of the avatar including the first feature, the first feature having a first color pattern; detecting a selection of a respective color pattern option of the color pattern options having the modified appearance; and in response to detecting the selection of the respective color pattern option and while the second color is selected for the set of color options, modifying the appearance of the first feature of the avatar to have an appearance created based on the respective color pattern option having the second color applied to the portion of the respective color pattern option.

[0020] An exemplary electronic device is described herein. The exemplary electronic device includes a display device, an input device, and means for displaying, via the display device, an avatar editing user interface, the avatar editing user interface including: an avatar including a first feature, the first feature having a first color pattern created with a first set of colors including a first color within a first region of the first color pattern; a set of color options for the first feature; and a plurality of color pattern options for the first feature including a second color pattern option different from the first color pattern; means for detecting, via the input device, a selection of a color option within the set of color options corresponding to the second color while the first feature is displayed in the first color pattern created with the first set of colors including the first color within the first region of the first color pattern; and means for detecting, in response to detecting the selection, a selection of a color option within the set of color options corresponding to the second color. The system includes: a means for changing an appearance of one or more color pattern options in a plurality of color pattern options having a first portion corresponding to the set of options, wherein changing the appearance includes changing a portion of a second color pattern option from a respective color to a second color; a means for maintaining a display of an avatar including a first characteristic, the first characteristic having a first color pattern; a means for detecting selection of a respective color pattern option of the color pattern options having the changed appearance; and a means for changing the appearance of the first characteristic of the avatar to have an appearance created based on the respective color pattern option having the second color applied to a portion of the respective color pattern option in response to detecting selection of the respective color pattern option and while the second color is selected for the set of color options.

[0021] An exemplary method is described herein in an electronic device having a display device and an input device. The exemplary method includes: displaying, via the display device, an avatar editing user interface including an avatar, each avatar feature having a first pose, and an avatar option selection area having an appearance based on the avatar, the avatar editing user interface including a plurality of avatar feature options corresponding to sets of candidate values ​​for characteristics of the avatar features; detecting, via the input device, a request to display options for editing each avatar feature; and, in response to detecting the request, updating the avatar option selection area to display avatar feature options corresponding to the set of candidate values ​​for the characteristics of the each avatar feature, the avatar feature including simultaneously displaying a representation of the first option for each avatar feature, each avatar feature having a second pose, and a representation of the second option for each avatar feature, each avatar feature having a third pose different from the second pose.

[0022] An exemplary non-transitory computer-readable storage medium is described herein. The exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and an input device, the one or more programs including instructions for displaying, via the display device, an avatar editing user interface including an avatar, each avatar feature having a first pose, and an avatar option selection area having an appearance based on the avatar, the avatar editing user interface including a plurality of avatar feature options corresponding to sets of candidate values ​​for characteristics of the avatar features; detecting, via the input device, a request to display options for editing each avatar feature; and, in response to detecting the request, updating the avatar option selection area to display avatar feature options corresponding to the set of candidate values ​​for the characteristics of the each avatar feature, the updating including simultaneously displaying a representation of the first option for each avatar feature, each avatar feature having a second pose, and a representation of the second option for each avatar feature, each avatar feature having a third pose different from the second pose.

[0023] An exemplary temporary computer-readable storage medium is described herein. The exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and an input device, the one or more programs including instructions for displaying, via the display device, an avatar editing user interface including an avatar, each avatar feature having a first pose, and an avatar option selection area having an appearance based on the avatar, the avatar editing user interface including a plurality of avatar feature options corresponding to sets of candidate values ​​for characteristics of the avatar features; detecting, via the input device, a request to display options for editing each avatar feature; and, in response to detecting the request, updating the avatar option selection area to display avatar feature options corresponding to the set of candidate values ​​for the characteristics of the each avatar feature, the updating including simultaneously displaying a representation of the first option for each avatar feature, each avatar feature having a second pose, and a representation of the second option for each avatar feature, each avatar feature having a third pose different from the second pose.

[0024] An exemplary electronic device is described herein comprising: a display device; an input device; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via the display device, an avatar editing user interface including an avatar, each avatar feature having a first pose, and an avatar option selection area having an appearance based on the avatar, the avatar editing user interface including a plurality of avatar feature options corresponding to sets of candidate values ​​for characteristics of the avatar features; detecting, via the input device, a request to display options for editing each avatar feature; and, in response to detecting the request, updating the avatar option selection area to display avatar feature options corresponding to the set of candidate values ​​for the characteristics of the each avatar feature, the updating including simultaneously displaying a representation of the first option for each avatar feature, each avatar feature having a second pose, and a representation of the second option for each avatar feature, each avatar feature having a third pose different from the second pose.

[0025] An exemplary electronic device is described herein including a display device, an input device, and means for displaying, via the display device, an avatar editing user interface including an avatar, each avatar feature having a first pose, and an avatar option selection area including a plurality of avatar feature options corresponding to sets of candidate values ​​for characteristics of the avatar features and having an appearance based on the avatar, means for detecting, via the input device, a request to display options for editing each avatar feature, and means for updating, in response to detecting the request, the avatar option selection area to display avatar feature options corresponding to the set of candidate values ​​for the characteristics of each avatar feature, the avatar option selection area including simultaneously displaying a representation of the first option for each avatar feature, each avatar feature having a second pose, and a representation of the second option for each avatar feature, each avatar feature having a third pose different from the second pose.

[0026] An exemplary method is described herein in an electronic device having a display device and one or more cameras, comprising: displaying, via the display device, a virtual avatar having one or more avatar features that change appearance in response to detected changes in facial pose within the field of view of the one or more cameras, including a first avatar feature having a first appearance that is changed in response to detected changes in facial pose within the field of view of the one or more cameras; detecting movement of one or more facial features of the face while the face including the one or more detected facial features is detected within the field of view of the one or more cameras; and, in response to detecting the movement of the one or more facial features, displaying a virtual avatar having one or more avatar features that change appearance in response to detected changes in facial pose within the field of view of the one or more cameras, according to a determination that the detected movement of the one or more facial features satisfies a first pose criterion. modifying the virtual avatar to display first avatar features having a second appearance consisting of: a first appearance; modifying the virtual avatar to display first avatar features having a third appearance, different from the first appearance and the second appearance, that is changed in response to the detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the first avatar features to satisfy a second pose criterion, different from the first pose criterion; and modifying the virtual avatar to display first avatar features by changing the first appearance of the first avatar features in response to the detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features satisfies a criterion for maintaining the display of the first avatar features having the first appearance.

[0027] An exemplary non-transitory computer-readable storage medium is described herein. The exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display device and one or more cameras, the one or more programs displaying, via the display device, a virtual avatar having one or more avatar features that change appearance in response to detected changes in facial pose within the field of view of the one or more cameras, including a first avatar feature having a first appearance that is modified in response to detected changes in facial pose within the field of view of the one or more cameras, detecting movement of the one or more facial features of the face while the face including the one or more detected facial features is detected within the field of view of the one or more cameras, and in response to detecting the movement of the one or more facial features, adjusting the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the first pose criterion to be satisfied. modifying the virtual avatar to display first avatar features having a second appearance different from the first appearance, the second appearance being changed in response to a detected change in facial pose within the field of view of the one or more cameras; modifying the virtual avatar to display first avatar features having a third appearance different from the first and second appearances, the third appearance being changed in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the first avatar features to satisfy a second pose criterion different from the first pose criterion; and modifying the virtual avatar to display first avatar features by changing a first appearance of the first avatar feature in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features satisfies a criterion for maintaining the display of the first avatar features having the first appearance.

[0028] An exemplary temporary computer-readable storage medium is described herein. The exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display device and one or more cameras, the one or more programs displaying, via the display device, a virtual avatar having one or more avatar features that change appearance in response to detected changes in facial pose within the field of view of the one or more cameras, including a first avatar feature having a first appearance that is modified in response to detected changes in facial pose within the field of view of the one or more cameras, detecting movement of one or more facial features of the face while the face including the one or more detected facial features is detected within the field of view of the one or more cameras, and in response to detecting the movement of the one or more facial features, determining that the detected movement of the one or more facial features causes a first pose criterion to be satisfied within the field of view of the one or more cameras. modifying the virtual avatar to display first avatar features having a second appearance different from the first appearance, that is changed in response to a detected change in facial pose of the one or more cameras; modifying the virtual avatar to display first avatar features having a third appearance different from the first and second appearances, that is changed in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the first avatar features to satisfy a second pose criterion different from the first pose criterion; and modifying the virtual avatar to display first avatar features by changing a first appearance of the first avatar feature in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features satisfies a criterion for maintaining the display of the first avatar features having the first appearance.

[0029] An exemplary electronic device is described herein, the exemplary electronic device comprising: a display device, one or more cameras, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs displaying, via the display device, a virtual avatar having one or more avatar features that change appearance in response to detected changes in facial pose within the field of view of the one or more cameras, including a first avatar feature having a first appearance that is modified in response to detected changes in facial pose within the field of view of the one or more cameras, detecting movement of one or more facial features of the face while the face including the one or more detected facial features is detected within the field of view of the one or more cameras, and in response to detecting the movement of the one or more facial features, adjusting the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the one or more facial features to satisfy a first pose criterion. modifying the virtual avatar to display first avatar features having a second appearance different from the first appearance, the second appearance being changed in response to a detected change in facial pose within the field of view of the one or more cameras; modifying the virtual avatar to display first avatar features having a third appearance different from the first and second appearances, the third appearance being changed in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the first avatar features to satisfy a second pose criterion different from the first pose criterion; and modifying the virtual avatar to display first avatar features by changing a first appearance of the first avatar feature in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features satisfies a criterion for maintaining the display of the first avatar features having the first appearance.

[0030] An exemplary electronic device is described herein, the exemplary electronic device including a display device, one or more cameras, and means for displaying, via the display device, a virtual avatar having one or more avatar features that change appearance in response to detected changes in facial pose within the field of view of the one or more cameras, including a first avatar feature having a first appearance that is modified in response to detected changes in facial pose within the field of view of the one or more cameras, means for detecting movement of one or more facial features of a face while the face including the one or more detected facial features is detected within the field of view of the one or more cameras, and means for displaying, in response to detecting movement of the one or more facial features, a second avatar having a different appearance from the first appearance that is modified in response to detected changes in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes a first pose criterion to be satisfied. means for modifying the virtual avatar to display first avatar features having a third appearance different from the first appearance and the second appearance, the third appearance being changed in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features causes the first avatar features to satisfy a second pose criterion different from the first pose criterion; and means for modifying the virtual avatar to display the first avatar features by changing a first appearance of the first avatar features in response to a detected change in facial pose within the field of view of the one or more cameras in accordance with a determination that the detected movement of the one or more facial features satisfies a criterion for maintaining the display of the first avatar features having the first appearance.

[0031] An exemplary method is described herein, in an electronic device having a display device and one or more input devices, including: displaying a content creation user interface via the display device; and while displaying the content creation user interface, receiving, via the one or more input devices, a request to display a first display region, the first display region including a plurality of graphic objects corresponding to pre-defined content for insertion into the content creation user interface, wherein displaying the first display region includes, in response to receiving the request, displaying, via the display device, the first display region including a first subset of graphic objects having an appearance based on a set of avatars available on the electronic device, wherein, in accordance with a determination that the set of avatars includes an avatar of a first type, displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type; and, in accordance with a determination that the set of avatars does not include an avatar of the first type, not displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type, and displaying the graphic objects in the first subset having an appearance based on an avatar of a second type different from the first type.

[0032] Exemplary non-transitory computer-readable storage media are described herein. An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and one or more input devices, the one or more programs including instructions for displaying a content creation user interface via the display device and receiving, while displaying the content creation user interface, a request to display a first display area via the one or more input devices, the first display area including a plurality of graphic objects corresponding to pre-defined content for insertion into the content creation user interface, wherein displaying the first display area includes, in response to receiving the request, displaying, via the display device, the first display area including a first subset of graphic objects having an appearance based on a set of avatars available on the electronic device; in accordance with a determination that the set of avatars includes an avatar of the first type, displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type; and in accordance with a determination that the set of avatars does not include an avatar of the first type, not displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type and displaying the graphic objects in the first subset having an appearance based on an avatar of a second type different from the first type.

[0033] Exemplary transitory computer-readable storage media are described herein. An exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display device and one or more input devices, the one or more programs including instructions for displaying a content creation user interface via the display device and receiving, while displaying the content creation user interface, a request to display a first display area via the one or more input devices, the first display area including a plurality of graphic objects corresponding to pre-defined content for insertion into the content creation user interface, wherein displaying the first display area includes, in response to receiving the request, displaying, via the display device, the first display area including a first subset of graphic objects having an appearance based on a set of avatars available on the electronic device; in accordance with a determination that the set of avatars includes an avatar of the first type, displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type; and in accordance with a determination that the set of avatars does not include an avatar of the first type, not displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type and displaying the graphic objects in the first subset having an appearance based on an avatar of a second type different from the first type.

[0034] Exemplary electronic devices are described herein. An exemplary electronic device comprises a display device, one or more input devices, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for displaying a content creation user interface via the display device and receiving, while displaying the content creation user interface, a request to display a first display area via the one or more input devices, the first display area including a plurality of graphic objects corresponding to pre-defined content for insertion into the content creation user interface. Displaying the first display area includes, in response to receiving the request, displaying, via the display device, the first display area including a first subset of graphic objects having an appearance based on a set of avatars available on the electronic device; and, in accordance with a determination that the set of avatars includes an avatar of the first type, displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type; and, in accordance with a determination that the set of avatars does not include an avatar of the first type, not displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type and displaying the graphic objects in the first subset having an appearance based on an avatar of a second type different from the first type.

[0035] An exemplary electronic device is described herein, the exemplary electronic device including: a display device; one or more input devices; means for displaying a content creation user interface via the display device; and means for receiving, while displaying the content creation user interface, a request to display a first display region via the one or more input devices, the first display region including a plurality of graphic objects corresponding to pre-defined content for insertion into the content creation user interface, wherein displaying the first display region includes, in response to receiving the request, displaying, via the display device, the first display region including a first subset of graphic objects having an appearance based on a set of avatars available on the electronic device, wherein, in accordance with a determination that the set of avatars includes an avatar of a first type, means for displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type, and, in accordance with a determination that the set of avatars does not include an avatar of the first type, means for not displaying one of the graphic objects in the first subset having an appearance based on the avatar of the first type, and for displaying the graphic objects in the first subset having an appearance based on an avatar of a second type different from the first type.

[0036] An exemplary method is disclosed herein, including: receiving, at an electronic device comprising one or more communication devices, a user associated with the electronic device, a request to send a first message to a set of contactable users, the set of contactable users including a first contactable user; in response to receiving the request to send the first message, sending the first message and contact information of a user associated with the electronic device to the first contactable user via the one or more communication devices in accordance with a determination that a set of sharing criteria is satisfied for the first contactable user, the set of sharing criteria including a first sharing criterion that is satisfied when the first contactable user corresponds to an authorized recipient; and in accordance with a determination that the set of sharing criteria is not satisfied for the first contactable user, sending the first message via the one or more communication devices to the first contactable user without sending the contact information of the user associated with the electronic device.

[0037] An exemplary non-transitory computer-readable storage medium is described herein. The exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including one or more communication devices, a user associated with the electronic device, the one or more programs including instructions for receiving a request to send a first message to a set of contactable users, the set of contactable users including a first contactable user; in response to receiving the request to send the first message, in accordance with a determination that the set of sharing criteria is met for the first contactable user, the set of sharing criteria including first sharing criteria that are met when the first contactable user corresponds to an authorized recipient, sending the first message and contact information of a user associated with the electronic device to the first contactable user via the one or more communication devices; and in accordance with a determination that the set of sharing criteria is not met for the first contactable user, sending the first message via the one or more communication devices to the first contactable user without sending the contact information of the user associated with the electronic device.

[0038] An exemplary temporary computer-readable storage medium is described herein. The exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having one or more communication devices, a user associated with the electronic device, the one or more programs including instructions for receiving a request to send a first message to a set of contactable users, the set of contactable users including a first contactable user, and in response to receiving the request to send the first message, sending the first message and contact information of a user associated with the electronic device to the first contactable user via the one or more communication devices in accordance with a determination that the set of sharing criteria is met for the first contactable user, the set of sharing criteria including first sharing criteria that is met when the first contactable user corresponds to an authorized recipient, and sending the first message via the one or more communication devices to the first contactable user without sending contact information of the user associated with the electronic device in accordance with a determination that the set of sharing criteria is not met for the first contactable user.

[0039] An exemplary electronic device is described herein. The exemplary electronic device includes one or more communication devices, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, wherein a user is associated with the electronic device, and the one or more programs include instructions to receive a request to send a first message to a set of contactable users, the set of contactable users including a first contactable user, and in response to receiving the request to send the first message, send the first message and contact information of a user associated with the electronic device to the first contactable user via the one or more communication devices in accordance with a determination that the set of sharing criteria is met for the first contactable user, the set including first sharing criteria that is met when the first contactable user corresponds to an authorized recipient, and send the first message via the one or more communication devices to the first contactable user without sending the contact information of the user associated with the electronic device in accordance with a determination that the set of sharing criteria is not met for the first contactable user.

[0040] An exemplary electronic device is described herein, the exemplary electronic device including: one or more communication devices, where a user is associated with the electronic device; means for receiving a request to send a first message to a set of contactable users, the set of contactable users including a first contactable user; means for transmitting, in response to receiving the request to send the first message, the first message and contact information of a user associated with the electronic device to the first contactable user via the one or more communication devices in accordance with a determination that a set of sharing criteria is met for the first contactable user, the set of sharing criteria including a first sharing criterion that is met when the first contactable user corresponds to an authorized recipient; and means for transmitting, in accordance with a determination that the set of sharing criteria is not met for the first contactable user, the first message to the first contactable user via the one or more communication devices without transmitting contact information of the user associated with the electronic device.

[0041] An exemplary method is disclosed herein in an electronic device including a display device and one or more communication devices, the exemplary method including: receiving a first message via the one or more communication devices after receiving the first message; receiving a request to display the first message; in response to receiving the request to display the first message, simultaneously displaying on the display device the first message and a visual indication that updated contact information is available to the first contactable user in accordance with a determination that a set of prompt criteria is met for the first contactable user, the set including a first prompt criterion that is met when updated contact information corresponding to the first contactable user is received; and displaying on the display device the first message without displaying the visual indication that updated contact information is available to the first contactable user in accordance with a determination that the set of prompt criteria is not met for the first contactable user.

[0042] An exemplary non-transitory computer-readable storage medium is described herein. The exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display device and one or more communication devices, the one or more programs including instructions for receiving, via the one or more communication devices, a first message; receiving, after receiving the first message, a request to display the first message; and, in response to receiving the request to display the first message, simultaneously displaying, on the display device, the first message and a visual indication that updated contact information is available for the first contactable user in accordance with a determination that a set of prompt criteria is met for the first contactable user, the set including first prompt criteria that is met when updated contact information corresponding to the first contactable user is received; and, in accordance with a determination that the set of prompt criteria is not met for the first contactable user, displaying, on the display device, the first message without displaying the visual indication that updated contact information is available for the first contactable user.

[0043] An exemplary temporary computer-readable storage medium is described herein. The exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display device and one or more communication devices, the one or more programs including instructions for receiving, via the one or more communication devices, a first message; receiving, after receiving the first message, a request to display the first message; and, in response to receiving the request to display the first message, simultaneously displaying, on the display device, the first message and a visual indication that updated contact information is available for the first contactable user in accordance with a determination that a set of prompt criteria is met for the first contactable user, the set including first prompt criteria that is met when updated contact information corresponding to the first contactable user is received; and, in accordance with a determination that the set of prompt criteria is not met for the first contactable user, displaying, on the display device, the first message without displaying the visual indication that updated contact information is available for the first contactable user.

[0044] An exemplary electronic device is described herein. The exemplary device includes a display device, one or more communication devices, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for receiving, via the one or more communication devices, a request to display the first message after receiving the first message, and, in response to receiving the request to display the first message, simultaneously displaying, on the display device, the first message and a visual indication that updated contact information is available for the first contactable user in accordance with a determination that a set of prompt criteria is met for the first contactable user, the set including first prompt criteria that is met when updated contact information corresponding to the first contactable user is received, and displaying, on the display device, the first message without displaying the visual indication that updated contact information is available for the first contactable user in accordance with a determination that the set of prompt criteria is not met for the first contactable user.

[0045] An exemplary electronic device is described herein. The exemplary device includes a display device, one or more communication devices, means for receiving a first message via the one or more communication devices, means for receiving a request to display the first message after receiving the first message, and means for, in response to receiving the request to display the first message, simultaneously displaying on the display device the first message and a visual indication that updated contact information is available to the first contactable user in accordance with a determination that a set of prompt criteria is met for the first contactable user, the set including first prompt criteria that is met when updated contact information corresponding to the first contactable user is received, and displaying on the display device the first message without displaying the visual indication that updated contact information is available to the first contactable user in accordance with a determination that the set of prompt criteria is not met for the first contactable user.

[0046] Executable instructions to perform these functions are optionally contained in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions to perform these functions are optionally contained in a transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.

[0047] Thus, providing devices with faster and more efficient methods and interfaces for displaying avatars in various application user interfaces increases the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces can complement or replace other methods for displaying avatars in various application user interfaces. [Brief explanation of the drawings]

[0048] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout:

[0049] [Figure 1A] 1 is a block diagram illustrating a portable multifunction device having a touch-sensitive display in accordance with some embodiments.

[0050] [Figure 1B] FIG. 2 is a block diagram illustrating exemplary components for event processing according to some embodiments.

[0051] [Figure 2] FIG. 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments.

[0052] [Figure 3] FIG. 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments.

[0053] [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments.

[0054] [Figure 4B] 1A-1C illustrate exemplary user interfaces for a multifunction device having a touch-sensitive surface separate from a display in accordance with some embodiments.

[0055] [Figure 5A] FIG. 1 illustrates a personal electronic device according to some embodiments.

[0056] [Figure 5B] FIG. 1 is a block diagram illustrating a personal electronic device according to some embodiments.

[0057] [Figure 6A] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6B] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6C] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6D] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6E] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6F] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6G] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6H]1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6I] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6J] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6K] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6L] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6M] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6N] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6O] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6P]1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6Q] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6R] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6S] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6T] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6U] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments. [Figure 6V] 1 illustrates an exemplary user interface for displaying avatars in a sticker application user interface and an avatar keyboard application user interface according to some embodiments.

[0058] [Figure 7] FIG. 1 is a flow diagram illustrating a method for displaying an avatar in a sticker application user interface according to some embodiments.

[0059] [Figure 8] FIG. 1 is a flow diagram illustrating a method for displaying an avatar in an avatar keyboard application user interface according to some embodiments.

[0060] [Figure 9A] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9B] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9C] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9D] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9E] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9F] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9G] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9H] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9I] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9J]1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9K] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9L] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9M] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9N] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9O] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9P] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9Q] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9R] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9S] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9T] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9U]1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9V] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9W] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9X] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9Y] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9Z] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AA] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AB] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AC] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AD] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AE] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AF]1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments. [Figure 9AG] 1 illustrates an exemplary user interface for displaying an avatar in a contacts application user interface according to some embodiments.

[0061] [Figure 10] FIG. 1 is a flow diagram illustrating a method for displaying an avatar in a contacts application user interface according to some embodiments.

[0062] [Figure 11A] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11B] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11C] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11D] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11E] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11F] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11G] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11H] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11I] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11J] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11K] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11L] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11M] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11N] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11O] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11P] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11Q] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11R]1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11S] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11T] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11U] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11V] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11W] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11X] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11Y] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11Z] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11AA] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11AB]1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11AC] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments. [Figure 11AD] 1 illustrates an exemplary user interface for displaying an avatar in an avatar editing application user interface according to some embodiments.

[0063] [Figure 12] FIG. 1 is a flow diagram illustrating a method for displaying an avatar in an avatar editing application user interface according to some embodiments.

[0064] [Figure 13] FIG. 1 is a flow diagram illustrating a method for displaying an avatar in an avatar editing application user interface according to some embodiments.

[0065] [Figure 14A] 1 illustrates an exemplary user interface for displaying a virtual avatar, according to some embodiments. [Figure 14B] 1 illustrates an exemplary user interface for displaying a virtual avatar, according to some embodiments. [Figure 14C] 1 illustrates an exemplary user interface for displaying a virtual avatar, according to some embodiments. [Figure 14D] 1 illustrates an exemplary user interface for displaying a virtual avatar, according to some embodiments. [Figure 14E] 1 illustrates an exemplary user interface for displaying a virtual avatar, according to some embodiments.

[0066] [Figure 15]FIG. 1 is a flow diagram illustrating a method for displaying a virtual avatar, according to some embodiments.

[0067] [Figure 16A] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16B] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16C] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16D] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16E] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16F] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16G] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16H] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16I] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16J] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16K] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16L] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16M] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16N] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16O] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16P] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16Q] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16R] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16S] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16T] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16U] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16V] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16W] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments. [Figure 16X] 1 illustrates an exemplary device and user interface for sharing contact information according to some embodiments.

[0068] [Figure 17]FIG. 1 is a flow diagram illustrating a method for providing contact information using an electronic device according to some embodiments.

[0069] [Figure 18] FIG. 1 is a flow diagram illustrating a method for receiving contact information using an electronic device according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0070] The following description sets forth example methods, parameters, etc. However, it should be recognized that such description is not intended as a limitation on the scope of the present disclosure, but rather is provided as a description of example embodiments.

[0071] There is a need for electronic devices that provide an efficient method and interface for displaying avatars in various application user interfaces. For example, while existing applications display avatars, the process for displaying the avatars is often cumbersome and inefficient. Furthermore, such processes do not provide seamless integration of the avatar with other user interfaces. Disclosed herein are techniques for displaying avatars in various application user interfaces. Such techniques can reduce the cognitive burden on users who use avatars in various application user interfaces, thereby increasing productivity. Furthermore, such techniques can reduce processor and battery power that would otherwise be wasted on redundant user input.

[0072] The following Figures 1A-1B, 2, 3, 4A-4B, and 5A-5B provide descriptions of exemplary devices for displaying avatars in various application user interfaces. Figures 6A-6V illustrate exemplary user interfaces for displaying avatars in a sticker application user interface and an avatar keyboard application user interface, according to some embodiments. Figure 7 is a flow diagram illustrating a method for displaying an avatar in a sticker application user interface, according to some embodiments. Figure 8 is a flow diagram illustrating a method for displaying an avatar in an avatar keyboard application user interface, according to some embodiments. The user interfaces in Figures 6A-6V are used to illustrate processes described below, including the processes in Figures 7-8. Figures 9A-9AG illustrate exemplary user interfaces for displaying avatars in a contacts application user interface, according to some embodiments. Figure 10 is a flow diagram illustrating a method for displaying an avatar in a contacts application user interface, according to some embodiments. The user interfaces in Figures 9A-9AG are used to illustrate processes described below, including the process in Figure 10. 11A-11AD show exemplary user interfaces for displaying an avatar in an avatar editing application user interface, according to some embodiments. FIG. 12 is a flow diagram illustrating a method for displaying an avatar in an avatar editing application user interface, according to some embodiments. FIG. 13 is a flow diagram illustrating a method for displaying an avatar in an avatar editing application user interface, according to some embodiments. The user interfaces of FIGS. 11A-11AD are used to illustrate the following processes, including those of FIGS. 12 and 13. FIGS. 14A-14E show exemplary user interfaces for displaying a virtual avatar, according to some embodiments. FIG. 15 is a flow diagram illustrating a method for displaying a virtual avatar, according to some embodiments.The user interfaces of Figures 14A-14E are used to illustrate the following processes, including the process of Figure 15. Figures 16A-16X illustrate exemplary devices and user interfaces for sharing contact information, according to some embodiments. Figure 17 is a flow diagram illustrating a method for providing contact information using an electronic device, according to some embodiments. Figure 18 is a flow diagram illustrating a method for receiving contact information using an electronic device, according to some embodiments. The exemplary devices and user interfaces of Figures 16A-16X are used to illustrate the following processes, including the processes of Figures 17 and 18.

[0073] In the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first touch can be referred to as a second touch, and similarly, a second touch can be referred to as a first touch, without departing from the scope of the various embodiments described. Although a first touch and a second touch are both touches, they are not the same touch.

[0074] The terminology used in the description of the various embodiments set forth herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments set forth and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. Also, as used herein, the term "and / or" should be understood to refer to and include any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0075] The term "if" is interpreted, optionally, depending on the context, to mean "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are interpreted, optionally, depending on the context, to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]."

[0076] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Optionally, other portable electronic devices, such as laptops or tablet computers having a touch-sensitive surface (e.g., a touchscreen display and / or touchpad), are also used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer having a touch-sensitive surface (e.g., a touchscreen display and / or touchpad).

[0077] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface, however, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.

[0078] The device typically supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital movie player application.

[0079] Various applications running on the device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within each application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications with user interfaces that are intuitive and transparent to the user.

[0080] Attention now turns to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating portable multifunction device 100 having touch-sensitive display system 112, according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a "touch screen" and may also be known or referred to as a "touch-sensitive display system." Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 that generate tactile output on device 100 (e.g., generate tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0081] As used herein and in the claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values ​​that includes at least four distinct values ​​and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure of the force or pressure of the contact is used directly to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measure). In some implementations, the surrogate measure of the contact force or pressure is converted to an estimate of the force or pressure, and the estimate of the force or pressure is used to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure).Using contact intensity as an attribute of user input allows users to access additional device functionality (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons) that may not otherwise be accessible to users on devices of reduced size that have limited footprint for displaying affordances.

[0082] As used herein and in the claims, the term “tactile output” refers to a physical displacement of a device relative to its previous position, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive surface of a user (e.g., the fingers, palm, or other part of the user's hand), the tactile output produced by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a “downclick” or “upclick” of a physical actuator button. In some cases, a user feels a tactile sensation such as a “downclick” or “upclick” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's action. As another example, movement of a touch-sensitive surface is optionally interpreted or perceived by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. Such user interpretation of touch depends on the user's personal sensory perception, but there are many sensory perceptions of touch that are common to a majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "upclick," "downclick," "roughness"), unless otherwise specified, the generated tactile output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.

[0083] It should be understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of its components. The various components shown in FIG. 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.

[0084] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.

[0085] Peripheral interface 118 may be used to couple input and output peripherals of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs and / or instruction sets stored in memory 102 to perform various functions and process data for device 100. In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.

[0086] RF (radio frequency) circuitry 108 transmits and receives RF signals, also called electromagnetic signals. RF circuitry 108 converts electrical signals to electromagnetic signals or electromagnetic signals to electrical signals and communicates with communication networks and other communication devices via electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. RF circuitry 108 optionally communicates via wireless communication with networks, such as the Internet, also known as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices. RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by short-range radios. Wireless communication is optionally supported by, but is not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), Long Term Evolution (LTE), and other standards.evolution (LTE), near field communications (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX, protocols for email (e.g., Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol), The present invention may use any of a number of communication standards, protocols, and technologies, including the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (XMPP), the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.

[0087] Audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuit 110 receives audio data from peripherals interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves audible to humans. Audio circuit 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuit 110 converts the electrical signals into audio data and transmits the audio data to peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to memory 102 and / or RF circuit 108 by peripherals interface 118. In some embodiments, audio circuit 110 also includes a headset jack (e.g., 212 in FIG. 2 ). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral, such as an output-only headphone or a headset with both an output (e.g., mono or binaural headphones) and an input (e.g., a microphone).

[0088] I / O subsystem 106 couples input / output peripherals on device 100, such as touchscreen 112 and other input control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, light sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive / send electrical signals from / to other input control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2) optionally include up / down buttons for volume control of speaker 111 and / or microphone 113. The one or more buttons optionally include a push button (e.g., 206 in FIG. 2).

[0089] As described in U.S. Patent Application No. 11 / 322,549, filed December 23, 2005, "Unlocking a Device by Performing Gestures on an Unlock Image," U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety, a quick press of the push button optionally unlocks the touchscreen 112 or, optionally, initiates the process of unlocking the device using gestures on the touchscreen. A longer press of the push button (e.g., 206) optionally turns power on or off to the device 100. The functionality of one or more of the buttons is optionally customizable by the user. The touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.

[0090] Touch-sensitive display 112 provides an input and output interface between the device and a user. Display controller 156 receives and / or sends electrical signals to touchscreen 112. Touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, animation, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.

[0091] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on tactile and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detects contacts (and any movement or cessation of contact) on touchscreen 112 and translates the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.

[0092] Touchscreen 112 optionally uses LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touchscreen 112 and display controller 156 optionally use any of a number of now known or later developed touch sensing technologies to detect contact and any movement or disruption thereof, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with touchscreen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.

[0093] The touch-sensitive display in some embodiments of touchscreen 112 is optionally similar to the multi-touch-sensing touchpad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Publication No. 2002 / 0015024 (A1), each of which is incorporated by reference herein in its entirety. However, touchscreen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.

[0094] Touch-sensitive displays in some embodiments of touchscreen 112 are described in the following applications: (1) U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller"; (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen"; (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices"; (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices"; (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input"; No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which are incorporated herein by reference in their entireties.

[0095] Touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user optionally contacts touchscreen 112 using any suitable object or accessory, such as a stylus, a finger, or the like. In some embodiments, the user interface is designed to operate primarily using finger-based contact and gestures, which may not be as precise as stylus-based input due to the larger contact area of ​​a finger on the touchscreen. In some embodiments, the device translates the coarse finger input into precise pointer / cursor positions or commands to perform the action desired by the user.

[0096] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of ​​the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.

[0097] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with generating, managing, and distributing electrical power within a portable device.

[0098] Device 100 also optionally includes one or more light sensors 164. FIG. 1A shows a light sensor coupled to light sensor controller 158 in I / O subsystem 106. Light sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. Light sensor 164 optionally works in conjunction with imaging module 143 (also called a camera module) to capture still images or video. In some embodiments, the light sensor is located on the back side of device 100 opposite touchscreen display 112 on the front of the device, so that the touchscreen display can be used as a viewfinder for capturing still images and / or video. In some embodiments, the light sensor is located on the front of the device so that an image of a user is optionally acquired for a videoconference while the user views other videoconference participants on the touchscreen display. In some embodiments, the position of the light sensor 164 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that a single light sensor 164 is used for both video conferencing and capturing still images and / or video, along with a touchscreen display.

[0099] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment and creates a three-dimensional model of an object (e.g., a face) in a scene from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also referred to as a camera module), depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by imaging module 143. In some embodiments, a depth camera sensor is located on the front of device 100 to obtain images of the user with depth information for videoconferences and to capture selfie images with depth map data while the user views other videoconference participants on a touchscreen display. In some embodiments, depth camera sensor 175 is located on the back of the device or on both the back and front of device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that the depth camera sensor 175 is used for both video conferencing and capturing still images and / or video, along with a touchscreen display.

[0100] In some embodiments, a depth map (e.g., a depth map image) contains information (e.g., values) about the distance of objects in a scene from a viewpoint (e.g., a camera, light sensor, depth camera sensor). In one embodiment of a depth map, each depth pixel defines a location on the Z axis of the viewpoint where its corresponding two-dimensional pixel is located. In some embodiments, a depth map is made up of pixels, each defined by a value (e.g., 0-255). For example, a value of "0" represents a pixel located furthest in a "3D" scene, and a value of "255" represents a pixel located closest to the viewpoint (e.g., a camera, light sensor, depth camera sensor) in the "3D" scene. In other embodiments, a depth map represents the distance between objects in a scene and the plane of the viewpoint. In some embodiments, a depth map contains information about the relative depth of various features of an object of interest as seen by a depth camera (e.g., the relative depth of the eyes, nose, mouth, and ears on a user's face). In some embodiments, the depth map contains information that allows the device to determine the contours of the target object in the z direction.

[0101] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor 165 receives contact intensity information (e.g., pressure information, or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to the touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touchscreen display 112 located on the front of device 100.

[0102] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 optionally functions as described in U.S. patent application Ser. Nos. 11 / 241,839, "Proximity Detector In Handheld Device," 11 / 240,788, "Proximity Detector In Handheld Device," 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output," 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices," and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are incorporated herein by reference in their entireties. In some embodiments, the proximity sensor turns off and disables touchscreen 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).

[0103] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows tactile output generators coupled to tactile feedback controller 161 in I / O subsystem 106. Tactile output generator 167 optionally includes one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). Contact intensity sensor 165 receives tactile feedback generation instructions from tactile feedback module 133 and generates a tactile output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one tactile output generator is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and generates a tactile output, optionally by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.

[0104] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 in I / O subsystem 106. Accelerometer 168 optionally functions as described in U.S. Patent Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated by reference herein in their entireties. In some embodiments, information is displayed on the touchscreen display in portrait or landscape orientation based on an analysis of data received from the one or more accelerometers. In addition to accelerometer(s) 168, device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information about the location and orientation (e.g., vertical or horizontal) of device 100.

[0105] In some embodiments, software components stored in memory 102 include operating system 126, communications module (or instruction set) 128, touch / motion module (or instruction set) 130, graphics module (or instruction set) 132, text input module (or instruction set) 134, Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction set) 136. Additionally, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores device / global internal state 157, as shown in FIGS. 1A and 3. Device / global internal state 157 includes one or more of: active application state indicating which applications, if any, are currently active; display state indicating which applications, views, or other information occupy various regions of touchscreen display 112; sensor state including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's position and / or orientation.

[0106] Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, storage control, power management, etc.) and facilitate communication between various hardware and software components.

[0107] Communications module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE®, etc.) is adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.

[0108] Contact / motion module 130, optionally in cooperation with display controller 156, detects contact with touchscreen 112 and other touch-sensing devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to detecting contact, such as determining whether contact occurs (e.g., detecting a finger-down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether the contact has stopped (e.g., detecting a finger-up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point, as represented by the series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These actions are optionally applied to a single contact (e.g., one finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on the touchpad.

[0109] In some embodiments, contact / motion module 130 uses one or more sets of intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator, but can be adjusted without modifying the physical hardware of device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of pre-defined thresholds without modifying the trackpad or touchscreen display hardware. Additionally, in some implementations, a user of the device is provided with a software setting to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds at once via a system-level click “intensity” parameter).

[0110] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting particular contact patterns. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same location (or substantially the same location) as the finger down event (e.g., the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by detecting a finger up (lift off) event.

[0111] Graphics module 132 includes various known software components that render and display graphics on touchscreen 112 or other display, including components that vary the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphics" includes any object that can be displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects including soft keys), digital images, video, animation, etc.

[0112] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including coordinate data and other graphic characteristic data, as needed, from an application or the like, and then generates screen image data to output to display controller 156.

[0113] The tactile feedback module 133 includes various software components for generating instructions used by the tactile output generator 167, which generates tactile outputs at one or more locations on the device 100 in response to a user's interaction with the device 100.

[0114] Text input module 134 is optionally a component of graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).

[0115] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for use in location-based dialing, to the camera 143 as photo / video metadata, and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map / navigation widgets).

[0116] Application 136 optionally includes the following modules (or instruction sets), or a subset or superset thereof: ● a contacts module 137 (sometimes called an address book or contact list); ● Telephone module 138, ● Videoconferencing module 139; ● an email client module 140; ● Instant messaging (IM) module 141; ● Training support module 142, ● a camera module 143 for still images and / or video; ● Image management module 144; ● Video player module, ● Music player module, ● Browser module 147, ● Calendar module 148, • a widget module 149 optionally including one or more of a weather widget 149-1, a stocks widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, as well as a user-created widget 149-6; ● a widget creator module 150 for creating user-created widgets 149-6; ● Search module 151, a video and music player module 152 that integrates a video player module and a music player module; ● Memo module 153, Map module 154, and / or ● Online video module 155.

[0117] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA® enabled applications, encryption, digital rights management, voice recognition, and voice duplication.

[0118] Contacts module 137, in conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to manage an address book or contact list (e.g., stored in memory 102 or in the application internal state 192 of contacts module 137 in memory 370). Contacts module 137 may manage: These include adding a name to an address book, removing a name(s) from an address book, associating phone number(s), email address(es), physical address(es), or other information with a name, associating an image with a name, categorizing and sorting names, providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, video conferencing module 139, email 140, or IM 141, and the like.

[0119] Telephone module 138, in conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to enter character sequences corresponding to telephone numbers, access one or more telephone numbers in contacts module 137, modify entered telephone numbers, dial respective telephone numbers, place calls, and disconnect and hang up when the call is completed. As previously mentioned, wireless communication optionally uses any of a number of communication standards, protocols, and technologies.

[0120] Videoconferencing module 139 includes executable instructions to cooperate with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, light sensor 164, light sensor controller 158, contact / motion module 130, graphics module 132, text input module 134, contact module 137, and telephone module 138 to initiate, conduct, and end a videoconference between a user and one or more other participants as directed by the user.

[0121] Email client module 140, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, includes executable instructions for composing, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.

[0122] Instant messaging module 141, in cooperation with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, includes executable instructions for entering character sequences corresponding to instant messages, modifying previously entered characters, sending respective instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephony-based instant messaging, or XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments, such as those supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0123] The training support module 142 includes executable instructions to cooperate with the RF circuitry 108, the touchscreen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154, and the music player module to create workouts (e.g., with time, distance, and / or calorie burn goals), communicate with training sensors (sports devices), receive training sensor data, calibrate sensors used to monitor workouts, select and play music for workouts, and display, store, and transmit workout data.

[0124] Camera module 143, in conjunction with touchscreen 112, display controller 156, light sensor 164, light sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, contains executable instructions for capturing and storing still images or video (including video streams) in memory 102, modifying the characteristics of the still images or video, or deleting the still images or video from memory 102.

[0125] Image management module 144, in conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143, includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing still and / or video images.

[0126] Browser module 147, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for browsing the Internet according to user direction, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.

[0127] The calendar module 148 includes executable instructions to cooperate with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the email client module 140, and the browser module 147 to create, display, modify, and store calendars and data associated with the calendars (e.g., calendar entries, to-do lists, etc.) according to user instructions.

[0128] Widget module 149, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, optionally provides mini-applications (e.g., weather widget 149-1, stocks widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) downloaded and used by a user, or mini-applications created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).

[0129] The widget creator module 150, in conjunction with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, is optionally used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).

[0130] The search module 151 includes executable instructions for working in conjunction with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to search for text, music, sound, images, video, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.

[0131] Video and music player module 152 includes executable instructions that, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, enable a user to download and play pre-recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing videos (e.g., on touchscreen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).

[0132] The notes module 153 includes executable instructions for cooperating with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to create and manage notes, to-do lists, and the like as directed by a user.

[0133] Map module 154, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, is used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other points of interest at or near a particular location, and other location-based data), optionally in accordance with user instructions.

[0134] Online video module 155, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, contains instructions that enable a user to access, browse for, receive (e.g., by streaming and / or downloading), and play (e.g., on the touchscreen or on an external display connected via external port 124) particular online videos, send emails with links to particular online videos, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140. For additional description of online video applications, see U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the contents of which are incorporated herein by reference in their entirety.

[0135] The above-identified modules and applications each correspond to sets of executable instructions that perform one or more of the functions previously described and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. For example, a video player module is optionally combined with a music player module into a single module (e.g., video and music player module 152 of FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.

[0136] In some embodiments, device 100 is a device in which operation of a predetermined set of functions on the device is performed solely via a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.

[0137] The set of predefined functions performed solely through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, home menu, or root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.

[0138] 1B is a block diagram illustrating exemplary components for event processing, according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes event sorter 170 (e.g., within operating system 126) and a respective application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).

[0139] Event sorter 170 receives the event information and determines which application 136-1 to deliver the event information to and application view 191 for application 136-1. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view that is displayed on touch-sensitive display 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) is currently active, and application internal state 192 is used by event sorter 170 to determine which application(s) is / are currently active, and application internal state 192 is used by event sorter 170 to determine which application view 191 to deliver the event information to.

[0140] In some embodiments, application internal state 192 includes additional information such as one or more of resume information to be used when application 136-1 resumes execution, user interface state information indicating or ready to display information being displayed by application 136-1, state cues that allow the user to return to a previous state or view of application 136-1, and redo / undo cues for previous actions taken by the user.

[0141] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about a sub-event (e.g., a user touch as part of a multi-touch gesture on touch-sensitive display 112). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). The information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or the touch-sensitive surface.

[0142] In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receipt of an input above a predetermined noise threshold and / or for more than a predetermined duration).

[0143] In some embodiments, event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .

[0144] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 is displaying more than one view. A view consists of the controls and other elements that a user can see on the display.

[0145] Another aspect of a user interface associated with an application is the set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of the respective application) in which the touch is detected optionally corresponds to a programmatic level within the application's programmatic or view hierarchy. For example, the lowest-level view in which the touch is detected is optionally referred to as the hit view, and the set of events that are recognized as appropriate inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.

[0146] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized hierarchically, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest-level view in which an initiating sub-event occurs (e.g., the first sub-event in a sequence of sub-events that form an event or potential event). Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the touch or input source identified as the hit view.

[0147] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive the particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive the particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive the particular sequence of sub-events. In other embodiments, even if the touch sub-event is completely confined to the area associated with one particular view, views higher in the hierarchy still remain actively participating views.

[0148] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by each event receiver 182 in an event queue.

[0149] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In still other embodiments, event sorter 170 is a stand-alone module or is part of another module stored in memory 102, such as contact / motion module 130.

[0150] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each containing instructions for processing touch events that occur within a respective view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, each application view 191 includes multiple event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such as a user interface kit or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, each event handler 190 includes one or more of data updaters 176, object updaters 177, GUI updaters 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or invokes data updaters 176, object updaters 177, or GUI updaters 178 to update application internal state 192. Alternatively, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in each application view 191.

[0151] Each event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes an event receiver 182 and an event comparator 184. In some embodiments, event recognizer 180 also includes at least a subset of metadata 183 and event delivery instructions 188 (optionally including sub-event delivery instructions).

[0152] Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, e.g., a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as the position of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also called the device's attitude).

[0153] The event comparator 184 compares the event information to predefined event or sub-event definitions and determines an event or sub-event, or determines or updates the state of the event or sub-event, based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a sequence of predefined sub-events), such as Event 1 (187-1) and Event 2 (187-2). In some embodiments, sub-events within an event (187) include, for example, touch start, touch end, touch movement, touch cancellation, and multiple touches. In one example, the definition for Event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch on a displayed object relative to a predetermined phase (touch start), a first lift-off (touch end) relative to the predetermined phase, a second touch on a displayed object relative to the predetermined phase (touch start), and a second lift-off (touch end) relative to the predetermined phase. In another example, a definition of event 2 (187-2) is a drag on a displayed object. Drag includes, for example, a touch (or contact) on the displayed object to a predetermined stage, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information about one or more associated event handlers 190.

[0154] In some embodiments, event definition 187 includes a definition of the event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, if a touch is detected on touch-sensitive display 112 in an application view in which three user interface objects are displayed on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.

[0155] In some embodiments, each event 187 definition also includes a delay action that delays transmission of the event information until it is determined whether the sequence of sub-events corresponds to the event type of the event recognizer.

[0156] If the respective event recognizer 180 determines that the sequence of sub-events does not match any of the events in the event definition 186, the respective event recognizer 180 enters an event-disabled, event-failed, or event-ended state and thereafter ignores the next sub-event of the touch-based gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.

[0157] In some embodiments, each event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or how event recognizers are enabled to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in a view or programmatic hierarchy.

[0158] In some embodiments, each event recognizer 180 activates an event handler 190 associated with an event when one or more specific sub-events of the event are recognized. In some embodiments, each event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and postponing sending) sub-events to the respective hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with the flag captures the flag and performs a predetermined process.

[0159] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs predetermined processing.

[0160] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by a video player module. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.

[0161] In some embodiments, event handler(s) 190 include or have access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.

[0162] It should be understood that the foregoing description of event processing of a user's touch on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 using input devices, although not all of them are initiated on the touchscreen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple keyboard presses or holds, pen stylus input, device movement, verbal commands, detected eye movement, biometric input, and / or any combination thereof, are optionally utilized as inputs corresponding to sub-events that define the recognized event.

[0163] FIG. 2 illustrates portable multifunction device 100 having touchscreen 112, according to some embodiments. The touchscreen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as other embodiments described below, a user may select one or more of the graphics by performing a gesture on the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upward and / or downward), and / or rolling (right to left, left to right, upward and / or downward) of a finger in contact with device 100. In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon optionally does not select the corresponding application.

[0164] Device 100 also optionally includes one or more physical buttons, such as a "home" button or menu button 204. As previously mentioned, menu button 204 is optionally used to navigate to any application 136 within a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on touchscreen 112.

[0165] In some embodiments, device 100 includes touchscreen 112, menu button 204, pushbuttons 206 for powering the device on / off and locking the device, volume control buttons 208, subscriber identity module (SIM) card slot 210, headset jack 212, and external docking / charging port 124. Pushbutton 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined time has elapsed, and / or to unlock the device or initiate the unlocking process. In alternative embodiments, device 100 also accepts verbal input via microphone 113 for activating or deactivating certain functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on touchscreen 112 and / or one or more tactile output generators 167 for generating a tactile output for a user of device 100.

[0166] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes an input / output (I / O) interface 330, including a display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 that generates tactile output on device 300 (e.g., similar to tactile output generator 167 described above with reference to FIG. 1A ), and sensors 359 (e.g., light, acceleration, proximity, touch-sensing, and / or contact intensity sensors similar to contact intensity sensor 165 described above with reference to FIG. 1A ). Memory 370 includes high-speed random-access memory such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A). Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, ​​word processing module 384, website creation module 386, disc authoring module 388, and / or spreadsheet module 390, whereas memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store these modules.

[0167] Each of the above-identified elements of FIG. 3 is optionally stored in one or more of the memory devices mentioned above. Each of the above-identified modules corresponds to an instruction set that performs the function described above. The above-identified modules or programs (e.g., instruction sets) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. In some embodiments, memory 370 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 370 optionally stores additional modules and data structures not described above.

[0168] Attention is now optionally directed to user interface embodiments, for example, as implemented on portable multifunction device 100.

[0169] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100, according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: ● signal strength indicator(s) 402 for wireless communication(s), such as cellular and Wi-Fi signals; ● Time 404, ● Bluetooth indicator 405, ● Battery status indicator 406; - A tray 408 with icons of frequently used applications, such as: o An icon 416 for the phone module 138, labeled "Phone," which optionally includes an indicator 414 of the number of missed calls or voicemail messages; an icon 418 for the email client module 140, labeled "Mail," which optionally includes an indicator 410 of the number of unread emails; ○ Icon 420 of the Browser module 147, labeled "Browser"; and o An icon 422 for the video and music player module 152, also referred to as the iPod (trademark of Apple Inc.) module 152, labeled "iPod"; and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages" ○ Icon 426 of the calendar module 148, labeled "Calendar" ○ Icon 428 in the image management module 144, labeled "Photos" ○ An icon 430 of the camera module 143, labeled "camera"; ○ Icon 432 of the online video module 155, labeled "Online Video"; Icon 434 of Stocks widget 149-2, labeled "Stock Prices" ○ Icon 436 of map module 154, labeled "Map" ○ Icon 438 of weather widget 149-1, labeled "Weather" ○ Icon 440 of alarm clock widget 149-4, labeled "Clock" ○ Icon 442 of Training Support module 142, labeled "Training Support"; ○ Icon 444 in the Notes module 153, labeled "Notes"; and o A settings application or module icon 446 labeled "Settings" that provides access to settings for the device 100 and its various applications 136.

[0170] 4A are merely exemplary. For example, icon 422 of video and music player module 152 is labeled "music" or "music player," although other labels are optionally used for various application icons. In some embodiments, the label for each application icon includes the name of the application corresponding to the respective application icon. In some embodiments, the label for a particular application icon is different from the name of the application corresponding to that particular application icon.

[0171] 4B shows an exemplary user interface on a device (e.g., device 300 of FIG. 3) that has a touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3) that is separate from display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) that detect the intensity of a contact on touch-sensitive surface 451, and / or one or more tactile output generators 357 that generate a tactile output to a user of device 300.

[0172] Although some of the following examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, as shown in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B ) has a primary axis (e.g., 452 in FIG. 4B ) that corresponds to a primary axis (e.g., 453 in FIG. 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B ) at locations that correspond to respective locations on the display (e.g., in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). In this way, user input (e.g., contacts 460 and 462, and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are optionally used for the other user interfaces described herein.

[0173] Additionally, while the following examples are given primarily with reference to finger input (e.g., finger contact, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a contact) followed by movement of a cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced by a mouse click (e.g., instead of detecting a contact and then ceasing contact detection) while the cursor is located over the location of the tap gesture. Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or a mouse and finger contacts are optionally used simultaneously.

[0174] FIG. 5A shows an exemplary personal electronic device 500. Device 500 includes a main body 502. In some embodiments, device 500 can include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B ). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter touchscreen 504. Alternatively, or in addition to touchscreen 504, device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touchscreen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of contact (e.g., touch) being applied. The one or more intensity sensors of touchscreen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to touches based on their intensity, meaning that touches of different intensities can invoke different user interface actions on device 500.

[0175] For exemplary techniques for detecting and processing touch intensity, see, for example, related applications International Patent Application No. PCT / US2013 / 040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application," published as International Publication No. WO / 2013 / 169849, and International Patent Application No. PCT / US2013 / 069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships," published as International Publication No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.

[0176] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, may be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, may allow device 500 to be attached to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow device 500 to be worn by a user.

[0177] FIG. 5B illustrates an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 that operably couples an I / O section 514 to one or more computer processors 516 and a memory 518. I / O section 514 can be connected to a display 504, which can have touch-sensing components 522 and, optionally, an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, I / O section 514 can be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near-field communication (NFC), cellular, and / or other wireless communication technologies. Device 500 can include input mechanisms 506 and / or 508. Input mechanism 506 is optionally a rotatable input device or a depressible and rotatable input device, for example. In some examples, input mechanism 508 is optionally a button.

[0178] In some embodiments, the input mechanism 508 is optionally a microphone. The personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which may be operably connected to the I / O section 514.

[0179] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, may cause the computer processors to perform, for example, the techniques described below, including processes 700, 800, 1000, 1200, 1300, 1500, 1700, and 1800 (FIGS. 7, 8, 10, 12, 13, 15, 17, and 18). A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions used by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage medium is a transient computer-readable storage medium. In some embodiments, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic, optical, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, CDs, DVDs, or optical disks based on Blu-ray® technology, as well as resident solid-state memory such as flash, solid-state drives, etc. Personal electronic device 500 is not limited to the components and configuration of FIG. 5B and may include other or additional components in multiple configurations.

[0180] As used herein, the term "affordance" optionally refers to a user-interactive graphical user interface object displayed on a display screen of device 100, 300, and / or 500 (FIGS. 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each, optionally, constitute an affordance.

[0181] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations involving a cursor or other position marker, the cursor acts as the “focus selector,” such that when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 of FIG. 3 or touch-sensitive surface 451 of FIG. 4B) while the cursor is positioned over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations involving a touchscreen display (e.g., touch-sensitive display system 112 of FIG. 1A or touchscreen 112 of FIG. 4A) that allows direct interaction with user interface elements on the touchscreen display, a detected contact on the touchscreen acts as the “focus selector,” such that when input (e.g., a press input by contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface without a corresponding cursor movement or contact movement on the touchscreen display (e.g., by using the tab key or arrow keys to move focus from one button to another), and in these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the specific form the focus selector takes, the focus selector is generally a user interface element (or contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface through which the user intends to interact).For example, while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of a focus selector (e.g., a cursor, touch, or selection box) over a corresponding button indicates that the user intends to activate that corresponding button (rather than other user interface elements shown on the device's display).

[0182] As used herein and in the claims, the term "characteristic intensity" of a contact refers to a characteristic of that contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predetermined number of intensity samples, i.e., a set of intensity samples collected during a predetermined time (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detecting the contact, before detecting lift-off of the contact, before or after detecting the start of contact movement, before detecting the end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of the maximum intensity of the contact, the mean intensity of the contact, the average intensity of the contact, the top 10 percentile intensity of the contact, half the maximum intensity of the contact, 90 percent of the maximum intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action is performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact having a characteristic intensity that does not exceed the first threshold results in a first action, a contact having a characteristic intensity above the first intensity threshold but not above the second intensity threshold results in a second action, and a contact having a characteristic intensity above the second threshold results in a third action. In some embodiments, the comparison between the characteristic intensity and the one or more thresholds is not used to determine whether the first action or the second action should be performed, but rather is used to determine whether one or more actions should be performed (e.g., whether to perform the respective action or to forgo performing the respective action).

[0183] In some embodiments, a portion of the gesture is identified for purposes of determining the characteristic intensity. For example, the touch-sensitive surface optionally receives successive swipe contacts that transition from a start position to an end position, where the intensity of the contact increases. In this example, the characteristic intensity of the contact at the end position is optionally based on only a portion of the successive swipe contacts (e.g., only the portion of the swipe contact at the end position), rather than the entire swipe contact. In some embodiments, a smoothing algorithm is optionally applied to the intensity of the swipe contact before determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some situations, these smoothing algorithms eliminate narrow spikes or dips in the intensity of the swipe contact for purposes of determining the characteristic intensity.

[0184] The intensity of the contact on the touch-sensitive surface is optionally characterized relative to one or more intensity thresholds, such as a contact-detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device performs an action normally associated with clicking a physical mouse button or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device performs an action different from an action normally associated with clicking a physical mouse button or trackpad. In some embodiments, when a contact is detected having a characteristic intensity below the light press intensity threshold (e.g., and above a nominal contact-detection intensity threshold below which the contact is not detected), the device follows the movement of the contact on the touch-sensitive surface and moves the focus selector without performing an action associated with the light press intensity threshold or the deep press intensity threshold. In general, unless otherwise specified, these intensity thresholds are consistent across various sets of values ​​for a user interface.

[0185] An increase in the characteristic intensity of a contact from an intensity below the light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold may be referred to as inputting a "light press." An increase in the characteristic intensity of a contact from an intensity below the deep press intensity threshold to an intensity above the deep press intensity threshold may be referred to as inputting a "deep press." An increase in the characteristic intensity of a contact from an intensity below the contact-detection intensity threshold to an intensity between the contact-detection intensity threshold and the light press intensity threshold may be referred to as detecting a contact on the touch surface. A decrease in the characteristic intensity of a contact from an intensity above the contact-detection intensity threshold to an intensity below the contact-detection intensity threshold may be referred to as detecting a lift-off of the contact from the touch surface. In some embodiments, the contact-detection intensity threshold is zero. In some embodiments, the contact-detection intensity threshold is greater than zero.

[0186] In some embodiments described herein, one or more actions are performed in response to detecting a gesture including a respective press input or in response to detecting a respective press input performed by a respective contact (or multiple contacts), where the respective press inputs are detected based at least in part on detecting an increase in intensity of the contact (or multiple contacts) above a press input intensity threshold. In some embodiments, the respective actions are performed in response to detecting an increase in intensity of the respective contact above the press input intensity threshold (e.g., a “downstroke” of the respective press input). In some embodiments, the press input includes an increase in intensity of the respective contact above the press input intensity threshold followed by a decrease in intensity of the contact below the press input intensity threshold, and the respective actions are performed in response to detecting a subsequent decrease in intensity of the respective contact below the press input threshold (e.g., an “upstroke” of the respective press input).

[0187] In some embodiments, the device employs intensity hysteresis to avoid accidental input, sometimes referred to as “jitter,” and the device defines or selects a hysteresis intensity threshold that has a predetermined relationship to the press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units below the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable percentage of the press input intensity threshold). Thus, in some embodiments, the press input includes an increase in the intensity of each contact above the press input intensity threshold followed by a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold, and a respective action is performed in response to detecting a subsequent decrease in the intensity of each contact below the hysteresis intensity threshold (e.g., an “upstroke” of each press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and a respective action is performed in response to detecting the press input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, as the case may be).

[0188] For ease of explanation, descriptions of operations performed in response to a press input associated with a press input intensity threshold, or a gesture including a press input, are optionally triggered in response to detecting any of: an increase in the intensity of the contact above the press input intensity threshold; an increase in the intensity of the contact from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold; a decrease in the intensity of the contact below the press input intensity threshold; and / or a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold. Further, in examples where an operation is described as being performed in response to detecting a decrease in the intensity of the contact below a press input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold.

[0189] Attention is now directed to embodiments of user interfaces (“UIs”) and related processes implemented on an electronic device such as portable multifunction device 100, device 300, or device 500.

[0190] 6A-6V illustrate exemplary user interfaces for displaying avatars in a sticker application user interface and an avatar keyboard application user interface, according to some embodiments. The user interfaces in these figures are used to explain processes described below, including the processes in FIGS. 7 and 8.

[0191] 6A-6V illustrate exemplary user inputs and corresponding changes to one or more user interfaces that may be displayed on an electronic device, such as electronic device 600 shown in FIG. 6A . Device 600 includes display 601, which may be a touch-sensitive display, and camera 602, which, in some embodiments, includes an image sensor that can capture data representing a portion of the light spectrum (e.g., visible light, infrared light, or ultraviolet light). In some embodiments, camera 602 includes multiple image sensors and / or other types of sensors. In some embodiments, in addition to capturing data representing the sensed light, camera 602 can capture other types of data, such as depth data. For example, in some embodiments, camera 602 also uses speckle, time-of-flight, parallax, or focus-based techniques to capture depth data. Image data captured by device 600 using camera 602 includes data corresponding to a portion of the light spectrum for a scene within the camera's field of view. In some embodiments, the captured image data also includes depth data related to the light data. In some other embodiments, the captured image data includes sufficient data to determine or generate depth data for a portion of the light spectrum. In some embodiments, device 600 includes one or more features of devices 100, 300, or 500.

[0192] In some examples, the electronic device 600 includes a depth camera, such as an infrared camera, a thermographic camera, or a combination thereof. In some examples, the device further includes a light emitting device (e.g., a light projector), such as an IR flood light, a structured light projector, or a combination thereof. The light emitting device is optionally used to illuminate the subject during image capture by the visible light camera and the depth camera (e.g., the IR camera), and information from the depth camera and the visible light camera is used to determine a depth map of different portions of the subject captured by the visible light camera. In some embodiments, the lighting effects described herein are displayed using discrepancy information from two cameras (e.g., two visible light cameras) for rear-facing images and depth information from the depth camera combined with image data from the visible light camera for front-facing images (e.g., selfie images). In some embodiments, the same user interface is used when determining depth information using two visible light cameras and when determining depth information using the depth camera, providing a consistent experience to the user even when using dramatically different techniques to determine the information used in generating lighting effects. In some embodiments, while displaying a camera user interface with one of the lighting effects applied, the device detects selection of a camera switch affordance and switches from a front-facing camera (e.g., a depth camera and a visible light camera) to a rear-facing camera (e.g., two visible light cameras spaced apart from each other) (or vice versa), replacing the display from the front-facing camera's field of view to the rear-facing camera's field of view (or vice versa) while maintaining the display of the user interface controls for applying the lighting effects.

[0193] In Figure 6A, device 600 displays a messaging user interface 603, which is a user interface for a messaging application. Messaging user interface 603 includes a message area 603-1 for displaying messages communicated between parties in a message conversation, a message composition area 603-2 for displaying content configured for communication within the message conversation, and a keyboard area 603-3 for displaying various keyboard interfaces. In the embodiment shown in Figures 6A-6H, the message corresponds to a message conversation with a first recipient 607-1.

[0194] In FIG. 6A, device 600 detects input 604 (eg, a tap gesture) on affordance 606 and, in response, displays avatar keyboard 605 in keyboard area 603-3, as shown in FIG. 6B.

[0195] Avatar keyboard 605 includes various graphic objects that can be selected to communicate in message user interface 603. Avatar keyboard 605 includes emoji area 608 that displays a set of emojis 609 that can be selected to communicate in message user interface 603, sticker area 610 that displays stickers 612, and sticker application affordance 614 that, when selected, displays sticker user interface 615 (shown in FIG. 6C ).

[0196] 6B, sticker area 610 includes stickers 612 that can be selected for communication in message user interface 603. Each of the stickers displayed in sticker area 610 has an appearance based on a different avatar available on device 600. The stickers also include the pose or facial expression of the avatar on which the sticker's appearance is based. For example, monkey sticker 612-1 is displayed with the appearance of a monkey avatar with a surprised facial expression, poop sticker 612-2 is displayed with the appearance of a poop avatar with heart eyes, and robot sticker 612-3 is displayed with the appearance of a robot avatar in a neutral pose.

[0197] In some embodiments, device 600 selectively displays different stickers 612 in sticker area 610 based on several factors. For example, in some embodiments, device 600 selectively displays individual stickers based on usage history, such as recently created stickers (e.g., recommended / suggested stickers for a recently created avatar) and stickers frequently or recently used by the user. In some embodiments, device 600 selectively displays different stickers 612 so that various sticker poses are represented in sticker area 610.

[0198] Device 600 also selectively displays various stickers 612 in sticker area 610 based on the types of avatars available on device 600. For example, the various types of avatars may include avatars based on non-human characters, human characters, user-created (e.g., created and / or customizable by a user), or default (e.g., not created by a user or not customizable) avatars. In the embodiment shown in FIG. 6B , monkey sticker 612-1, poop sticker 612-2, and robot sticker 612-3 each have an appearance based on a default avatar that is a non-human character.

[0199] Device 600 displays stickers 612 for avatars available on device 600. Thus, if a particular avatar is not available on device 600, sticker area 610 does not include a sticker for that avatar. For example, in FIG. 6B , the device does not include user-created avatars or avatars based on human characters and therefore does not display stickers for such avatars. As described in more detail below, if such avatars are available on device 600, sticker area 610 displays one or more stickers for the avatar.

[0200] Sticker area 610 also includes sticker application affordance 614. Sticker application affordance 614 has an appearance that includes representations of various stickers. For example, in FIG. 6B , sticker application affordance 614 includes representation 614-1 of a different sticker. Device 600 selectively displays various sticker representations in sticker application affordance 614 based on several factors. For example, in some embodiments, if a certain type of avatar is not available on device 600, the device displays representations of stickers based on examples of the type of avatar that is not available on device 600. For example, in FIG. 6B , user-created or human-based avatars are not available on device 600, and device 600 displays representations 614-1 of stickers for different user-created and human-based avatars. In some embodiments, when a new avatar is created, device 600 updates sticker application affordance 614 to include representations of stickers based on the newly created avatar. In some embodiments, device 600 displays representations of stickers for different types of avatars. In some embodiments, device 600 selectively displays different sticker representations such that various sticker poses are represented in sticker application affordance 614. In some embodiments, the sticker representations are displayed in an animated sequence, with different representations cycling individually across sticker application affordance 614.

[0201] In FIG. 6B, device 600 detects input 616 on sticker application affordance 614 and, in response, replaces the display of avatar keyboard 605 and configures composition area 603-2 with sticker user interface 615, as shown in FIG. 6C.

[0202] As shown in FIG. 6C , device 600 displays a sticker user interface 615 having an area 618 with representations 622 of a set of stickers and a sticker area 620 with a sticker corresponding to a selection of the sticker representations in area 618. Representation 622 corresponds to a set of stickers available on device 600. A user can view a different set of stickers by selecting a different representation 622 (e.g., by touching the corresponding representation 622 in area 618 or by swiping horizontally on sticker area 620). When a different representation 622 is selected, device 600 updates area 618 to show the selected representation 622 and updates sticker area 620 to display the sticker corresponding to the selected representation. In FIG. 6C , monkey representation 622-1 is selected in first area 618, displaying monkey sticker 624 in sticker area 620. In some embodiments, sticker 624 is shown with a slight animation, such as a smile, wink, or wave. Monkey stickers 624 include various poses, such as the surprised pose shown in surprised monkey sticker 624-1.

[0203] In some embodiments, device 600 displays region 618 the first time sticker user interface 615 is displayed, and then hides region 618 (e.g., does not initially display region 618 for subsequent instances of interface 615). A user can cause device 600 to undisplay region 618 by dragging over sticker region 620, as shown in FIG. 6L.

[0204] 6C-6E, region 618 further includes a creation affordance 626 that can be selected to create a new avatar. As shown, region 618 does not include a representation of a user-created or human-based avatar because such avatars are not currently available on device 600. Accordingly, device 600 displays paddle 628 having an animation of avatar representation 628-1 extending from creation affordance 626 and cycling across the paddle, as shown by the different representations shown in FIGS. 6C-6E. This animation provides the user with an indication that user-created or human-based avatars are not available on device 600 and prompts the user to select paddle 628 to create an avatar.

[0205] In Figure 6E, device 600 detects input 630 on create affordance 626 and, in response, displays avatar creation user interface 632 as shown in Figure 6F. Device 600 detects input, generally represented by input 634, in avatar creation user interface 632 as shown in Figure 6G to select various avatar features and thereby construct / create a new avatar, beanie avatar 636. In response to input 638 on exit affordance 640, device 600 exits avatar creation user interface 632 and returns to messaging user interface 603 of Figure 6H, showing sticker user interface 615 updated to include representation 622-2 of beanie avatar 636 selected in region 618 and beanie stickers 642 having the appearance of beanie avatar 636 but with different poses for each of the respective beanie stickers 642. Beanie stickers 642 include many of the same sticker poses as the monkey stickers shown in Figure 6C. In some embodiments, after creating beanie avatar 636, the new avatar is available for use on device 600, including other applications such as, for example, a contacts application, a camera application, a media viewing application, and other applications on device 600. Additionally, beanie avatar 636 can be updated, and updates are made to beanie avatar 636 included in other applications.

[0206] 6H, device 600 detects input 644 on thumbs-up beanie sticker 642-1, which is a sticker having the appearance of beanie avatar 636 and a "thumbs-up" pose. In some embodiments, selection of thumbs-up beanie sticker 642-1 causes device 600 to add the sticker to the message conversation (e.g., for sending to first recipient 607-1). In some embodiments, selection of thumbs-up on beanie sticker 642-1 causes device 600 to display thumbs-up beanie sticker 642-1 within avatar keyboard 605, as shown in FIG. 6I.

[0207] 6I-6V illustrate messaging user interface 603 in an embodiment in which a message corresponds to a message conversation with second recipient 607-2. In FIG. 6I, device 600 displays avatar keyboard 605 with thumbs-up beanie sticker 642-1 instead of monkey sticker 612-1. Additionally, device 600 updates the display of sticker application affordance 614 to include a representation 614-2 of beanie avatar 636. In some embodiments, representation 614-2 has the appearance of recently used thumbs-up beanie sticker 642-1. In some embodiments, representation 614-2 has the appearance of other stickers available for recently created beanie avatar 636.

[0208] 6I, device 600 detects input 646 on the thumbnail of thumbs-up beanie sticker 642-1 and, in response, displays a sticker preview interface showing beanie sticker preview 650. In some embodiments, a user can perform a tap-and-hold gesture on beanie sticker preview 650 to create a spectacular view of beanie sticker preview 650, which can then be dragged into message area 603-1 to add the beanie sticker to the message conversation. In some embodiments, a user can select send affordance 652 (e.g., via input 654) to add beanie sticker 642-1 to the message conversation, as shown in FIG. 6K.

[0209] 6K, device 600 detects input 656 on sticker application affordance 614 and, in response, displays sticker user interface 615. In some embodiments, device 600 ceases displaying emoji 609 and displays a sticker in emoji region 608 (e.g., beanie sticker 642 corresponding to beanie avatar 636).

[0210] In FIG. 6L, device 600 displays sticker user interface 615 with beanie sticker 642. In the embodiment shown in FIG. 6L, device 600 does not initially display region 618 because it has a previously displayed sticker user interface (e.g., in FIG. 6C). Additionally, device 600 has created a second user-created avatar (e.g., as a result of receiving a series of inputs to access and interact with the avatar creation user interface in a manner similar to that described above in connection with FIGS. 6E-6G), as will become readily apparent. In response to drag input 658, the device scrolls through beanie sticker 642, and in FIG. 6M displays region 618 with representation 622 including beanie representation 622-2 having a selected state and female representation 622-3 corresponding to a set of female stickers based on a user-created female avatar.

[0211] In Figure 6M, device 600 detects input 660 on create affordance 626 to begin the process for creating a boy avatar. The process for creating a boy avatar is similar to the process described above for creating an avatar and will not be repeated here for brevity. After device 600 creates the boy avatar, it displays sticker user interface 615, as shown in Figure 6N. Figure 6N shows region 618 updated to include boy representation 622-4 with a selected state and sticker region 620 updated to include boy sticker 662 including a set of poses based on the new boy avatar.

[0212] In FIG. 6N, device 600 detects scroll input 664 and, in response, scrolls sticker area 620 to display additional boy sticker 662 and edit affordance 665, as shown in FIG. 6O.

[0213] In FIG. 6O, device 600 detects input 668 on edit affordance 665 and, in response, displays an avatar editing user interface 670 (similar to avatar creation user interface 632) showing a boy avatar 672 and a set of selectable hairstyle options 674 that can be selected to change the appearance of boy avatar 672 as shown in FIG. 6P.

[0214] In Figure 6P, device 600 detects input 676 on afro hairstyle option 674-1 and, in response, modifies boy avatar 672 to have an afro hairstyle, as shown in Figure 6Q. Device 600 detects input 678 on exit affordance 680 in Figure 6Q and, in response, exits avatar editing user interface 670 and displays messaging user interface 603 with updated sticker user interface 615, as shown in Figure 6R.

[0215] In Figure 6R, device 600 displays sticker user interface 615 showing updated boy sticker 662 with an afro hairstyle. Device 600 detects drag input 682 on handle 684 and expands sticker user interface 615 accordingly, as shown in Figure 6S.

[0216] 6S shows an updated additional boy sticker 662 with an afro hairstyle. Device 600 detects a drag input 686 (e.g., a downward drag) and, in response, scrolls the stickers 662 to display additional boy stickers 662, including thumbs-up boy sticker 662-1 and heart-eyes boy sticker 662-2, as shown in FIG. 6T.

[0217] In Figure 6T, sticker user interface 615 shows region 618 including boy representation 622-4, which is updated to include an afro hairstyle. Device 600 detects input 688 on robot representation 622-5 and, in response, selects robot representation 622-5 and replaces boy sticker 662 with robot sticker 690, as shown in Figure 6U. In some embodiments, robot representation 622-5 can be selected and, in response to one or more horizontal swipe gestures on sticker region 620, the corresponding robot sticker 690 is displayed.

[0218] In FIG. 6U , device 600 displays robot sticker 690 having an appearance based on a robot avatar, which, as described above, is a default avatar based on a non-human character. In some embodiments, stickers based on such avatars (e.g., default avatars or avatars based on non-human characters) include some stickers with poses that match poses of stickers based on user-created avatars or avatars based on human characters. For example, robot sticker 690 includes a variety of poses, and some robot stickers have the same pose as some boy stickers 662. For example, heart-eyes robot sticker 690-1 has the same pose as heart-eyes boy sticker 662-2 (e.g., both stickers include a smiling expression with hearts over the eyes). Note that both robot sticker 690-1 and boy sticker 662-2 have the same pose even though they have different appearances (e.g., robot sticker 690-1 has a robotic appearance, while boy sticker 662-2 has a boy's appearance). Additionally, in some embodiments, stickers based on default avatars or avatars based on non-human characters optionally exclude certain poses that are included in stickers based on user-created avatars or avatars based on human characters. For example, robot sticker 690 does not include a thumbs-up pose. In some embodiments, excluded sticker poses are those that include human features other than the head (e.g., hands).

[0219] In some embodiments, a set of stickers based on a default avatar or an avatar based on a non-human character all have stickers with the same or similar poses. For example, all such avatars include a heart-eyes sticker and exclude a thumbs-up sticker. In some embodiments, certain stickers have the same pose for different sets of stickers, but the sticker's appearance is customized to the particular avatar on which it is based. For example, robot sticker 690 includes a surprised robot sticker 690-2 that is similar to a corresponding pose in another sticker set (e.g., FIG. 6E shows a surprised monkey sticker 624-1 for a monkey, and FIG. 6T shows a surprised sticker for a boy avatar), but the sticker has a custom appearance that corresponds to the characteristics of the avatar on which the sticker's appearance is based. For example, surprised robot sticker 690-2 includes an appearance showing mechanical parts 692, such as gears, bolts, and springs, exploding from the robot's head. In some embodiments, other avatars of a similar type (e.g., based on non-human characters, default) may include a similar pose, but have a different custom appearance based specifically on the characteristics of the avatar (e.g., a surprised unicorn sticker with glitter powder).

[0220] In some embodiments, stickers based on user-created avatars or avatars based on non-human characters all have stickers with the same pose, for example, the sticker pose shown in beanie sticker 642 is the same as the sticker pose shown in boy sticker 662 (e.g., the same pose, but a different appearance based on a different avatar).

[0221] In FIG. 6U , device 600 detects input 694 on beanie representation 622-2 and, in response, displays beanie representation 622-2 selected in region 618 and beanie sticker 642 replacing robot sticker 690 in sticker region 620, as shown in FIG. 6V . Beanie sticker 642 includes the same pose as boy sticker 662, including thumbs-up beanie sticker 642-1 corresponding to thumbs-up boy sticker 662-1, and heart-eyes beanie sticker 642-2 corresponding to heart-eyes boy sticker 662-2.

[0222] 7 is a flow diagram illustrating a method for displaying an avatar in a sticker application user interface using an electronic device, according to some embodiments. Method 700 is performed on a device (e.g., 100, 300, 500, 600) that includes a display and an input device. Some operations of method 700 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0223] As described below, method 700 provides an intuitive way to display an avatar within a sticker application interface. This method reduces the cognitive burden on a user when displaying an avatar within a sticker application, thereby creating a more efficient human-machine user interface. For battery-operated computing devices, allowing users to display avatars within a sticker application user interface more quickly and efficiently conserves power and extends the time between battery charges.

[0224] An electronic device (e.g., 600) receives (702) via one or more input devices (e.g., 601) a request (e.g., 616, 656) to display a sticker user interface (e.g., 615) (e.g., a single user interface displaying stickers that can be selected for use in an application such as a messaging application) (e.g., selection of a user interface object (e.g., affordance) associated with displaying the sticker user interface) (e.g., selection of a representation of a set of stickers) (e.g., gesture on a set of stickers to display a representation of the set of stickers).

[0225] In response to receiving a request to display a sticker user interface, an electronic device (e.g., 600) displays (704) via a display device (e.g., 601) a sticker user interface (e.g., 615) including a representation (e.g., 622) of a plurality of sets of stickers based on user-created avatars (e.g., avatars that can be created and, optionally, customized by a user). In some embodiments, the user-created avatars include customizable (e.g., selectable or configurable) avatar features. In some embodiments, the user-created avatars include avatars modeled to represent human characters, where the customizable avatar features generally correspond to human physical characteristics. For example, such avatars may include representations of individuals with various physical human features or characteristics (e.g., an elderly woman with dark skin color and long, straight brown hair). Such avatars also include representations of individuals with various non-human characteristics typically associated with a human appearance (e.g., decorative extensions, hats, glasses, etc.). User-created avatars do not include avatars created without input from a user to select the avatar's features.

[0226] In some embodiments, representations of multiple sets of stickers based on user-created avatars are displayed within a first region (e.g., 618) of the user interface (e.g., a sticker carousel). In some embodiments, the first region further includes one or more representations (e.g., 622-1) of sets of stickers based on avatars that are not user-created avatars (e.g., avatars that cannot be created or customized by the user). In some embodiments, the sticker carousel may be capable of scrolling (e.g., horizontally) (e.g., in response to a gesture such as a swipe gesture) to display additional representations of the sets of stickers and other options displayed within the sticker carousel. In some embodiments, avatars that cannot be created or customized by the user include avatars modeled to represent non-human characters. In some embodiments, avatars modeled to represent non-human characters include non-human characters that are, for example, anthropomorphic constructs (e.g., stylized animals, stylized robots, or stylized representations of typically inanimate or non-human objects). In some embodiments, such avatars include avatars with customizable (e.g., selectable or configurable) avatar features that generally correspond to non-human traits and characteristics. In some embodiments, such avatars do not include representations of various physical, human features or characteristics (e.g., a young child with a round face and short wavy hair), even if some of the customizable features of a human avatar include non-human traits (e.g., cosmetic enhancements, hats, glasses, or other non-human objects typically associated with human appearance). Displaying a first region with one or more representations of a set of stickers based on an avatar that is not a user-created avatar reduces the number of inputs for performing the technical task of positioning and selecting stickers for display within an application.Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0227] In some embodiments, the first region further includes a creation user interface object (e.g., 626) (e.g., a create affordance) that, when selected, displays a user interface (e.g., 632) for creating a user-created avatar (e.g., a new user-created avatar). Displaying such a creation user interface object reduces the number of inputs required to access a user interface to perform the technical task of creating an avatar. Reducing the number of inputs required to perform the task enhances usability of the device and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.

[0228] In some embodiments, after detecting the creation of a new user-created avatar, the electronic device displays in the first region a representation (e.g., 622-4) of a set of stickers based on the new user-created avatar.

[0229] In some embodiments, displaying the sticker user interface (e.g., 615) further includes displaying the sticker user interface with the first region (e.g., 618) in accordance with a determination that the request to display the sticker user interface is a first received request (e.g., 616) to display the sticker user interface (e.g., when the electronic device initially receives the request to display the sticker user interface). In some embodiments, displaying the sticker user interface further includes displaying the sticker user interface without the first region in accordance with a determination that the request to display the sticker user interface is a subsequent received request (e.g., 656) to display the sticker user interface (e.g., when the electronic device initially receives the request to display the sticker user interface) (e.g., see sticker user interface 615 of FIG. 6L).

[0230] In some embodiments, while displaying the sticker user interface without the first region (e.g., see sticker user interface 615 of FIG. 6L) (e.g., the sticker user interface is displayed showing a sticker, but not a representation of the sticker), the electronic device receives a first input (e.g., 658). In some embodiments, in response to detecting the first input, and in accordance with a determination that the first input satisfies a first set of criteria (e.g., the input includes a downward movement and is from a displayed sticker), the electronic device displays the first region (e.g., updates the sticker user interface to include the first region) (e.g., see FIG. 6M).

[0231] In some embodiments, a set of stickers based on a first avatar (e.g., beanie avatar 636) has a first set of sticker poses (e.g., the pose shown in sticker 642), and a set of stickers based on a second avatar has a first set of sticker poses (e.g., the pose shown in sticker 662) (e.g., all of the sets of stickers based on user-created avatars have the same pose and facial expression, but have different appearances based on the particular user-created avatar on which each set of stickers is based). In some embodiments, a particular one of the sets of stickers based on a user-created avatar is displayed in response to detecting a selection of a particular one of a representation of multiple sets of stickers based on a user-created avatar. Displaying a set of stickers in response to detecting a selection of a representation of a set of stickers based on a user-created avatar reduces the number of inputs for performing the technical task of creating stickers. Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0232] In some embodiments, displaying the sticker user interface (e.g., 615) further includes displaying a representation (e.g., 662-5) of the set of stickers based on a first default avatar (e.g., a robotic avatar) (e.g., a default or pre-existing avatar, an avatar not created by the user, an avatar that cannot be created by the user). In some embodiments, the avatar that cannot be created or customized by the user includes an avatar modeled to represent a non-human character. In some embodiments, the avatar modeled to represent a non-human character includes, for example, a non-human character that is an anthropomorphic configuration (e.g., a stylized animal, a stylized robot, or a stylization of a typically inanimate or non-human object). In some embodiments, such avatars include avatars with customizable (e.g., selectable or configurable) avatar features that generally correspond to non-human traits and characteristics. In some embodiments, such avatars do not include representations of various physical, human features or characteristics (e.g., a young child with a round face and short, wavy hair), even if some of the customizable features of a human avatar include non-human characteristics (e.g., cosmetic enhancements, hats, glasses, or other non-human objects typically associated with human appearance). In some embodiments, a set of stickers (e.g., 690) based on a first, pre-defined avatar has a second set of sticker poses (e.g., see stickers 690 in FIG. 6U) that differ from the first set of sticker poses (e.g., each of the pre-defined avatar's set of stickers has a set of poses and facial expressions) (e.g., see stickers 662 in FIG. 6T) (e.g., the set of poses and facial expressions for the pre-defined avatar's set of stickers differs from the set of poses and facial expressions for the user-created avatar's set of stickers).In some embodiments, the subset of poses and facial expressions for the set of stickers for the default avatar is the same as the subset of poses and facial expressions for the set of stickers for the user-created avatar (e.g., some of the sticker poses and facial expressions are common to the set of stickers for the default avatar and the set of stickers for the user-created avatar). In some embodiments, the subset of poses and facial expressions for each set of stickers for the default avatar is the same as the subset of poses and facial expressions for other sets of stickers for the default avatar (e.g., some of the sticker poses and facial expressions are common to different sets of stickers for the default avatar). In some embodiments, a set of stickers based on the first non-user-created avatar is displayed in response to detecting a selection of an expression of the set of stickers based on the first non-user-created avatar.

[0233] In some embodiments, a set of stickers (e.g., 690) based on a first pre-defined avatar (e.g., an avatar representing an animated character not created by a user, such as a unicorn avatar) includes a sticker having a first sticker pose (e.g., surprised robot sticker 690-2) (e.g., a sticker showing an exploding head pose / expression). In some embodiments, displaying the sticker user interface further includes displaying a representation of a set of stickers based on a second pre-defined avatar (e.g., see sticker 624 in FIG. 6C ) (e.g., an avatar representing an animated character not created by a user, such as a robot avatar; an avatar that cannot be created or customized by a user). In some embodiments, an avatar that cannot be created or customized by a user includes an avatar modeled to represent a non-human character. In some embodiments, an avatar modeled to represent a non-human character includes a non-human character that is, for example, an anthropomorphic configuration (e.g., a stylized animal, a stylized robot, or a stylized representation of a typically inanimate or non-human object). In some embodiments, such avatars include avatars with customizable (e.g., selectable or configurable) avatar features that generally correspond to non-human traits and characteristics. In some embodiments, such avatars do not include representations of various physical, human features or characteristics (e.g., a young child with a round face and short wavy hair), even if some of the customizable features of a human avatar include non-human traits (e.g., cosmetic enhancements, hats, glasses, or other non-human objects typically associated with a human appearance). In some embodiments, the set of stickers based on the second default avatar includes a sticker having a first sticker pose (e.g., see surprised monkey sticker 624-1 in FIG. 6C ).In some embodiments, a sticker having a first sticker pose for a first default avatar includes a graphic element (e.g., mechanical part 692) corresponding to the first default avatar that is not included in a sticker having a first sticker pose for a second default avatar (e.g., glitter powder or gears). In some embodiments, a set of stickers for a default avatar includes stickers that are unique to the set of stickers and incorporate a set of characteristics unique to the default avatar. For example, in the case of a "Surprise" unicorn sticker, the sticker has the appearance of a unicorn head with the top removed and displays a unicorn brain exploding state with glitter powder emanating from the unicorn brain. The appearance of the glitter powder in the "Surprise" sticker is unique to unicorn stickers and corresponds to a mystical characteristic of a unicorn avatar. As another example, in the case of a "Surprise" robot sticker, the sticker has the appearance of a robot head with the top removed and displays a robot brain exploding state with gears emanating from the robot brain. The appearance of the gears in the "surprise" sticker is unique to robot stickers and corresponds to the mechanical properties of the robot avatar.

[0234] In some embodiments, the first set of sticker poses includes at least one sticker pose (e.g., thumbs-up sticker 662-1) that is not included in the second set of sticker poses (e.g., a sticker pose that includes hands). In some embodiments, the excluded sticker poses include poses that display body parts other than the head. Stickers having such poses can include, for example, a "thumbs-up" sticker, a "fist bump" sticker, a "hug" sticker, etc.

[0235] In some embodiments, displaying the sticker user interface further includes displaying a keyboard display area (e.g., 605), the keyboard display area including a plurality of emojis (e.g., 609) and a representation of a plurality of sets of stickers based on a user-created avatar (e.g., sticker area 610). In some embodiments, the electronic device detects a selection (e.g., 656) of one of the representations of the plurality of sets of stickers based on a user-created avatar (e.g., 614-2 of FIG. 6K). In some embodiments, in response to detecting the selection of one of the representations of the plurality of sets of stickers based on a user-created avatar, the electronic device displays a plurality of stickers in the set of stickers based on the user-created avatar (e.g., 642) in the keyboard display area. In some embodiments, displaying the plurality of stickers in the keyboard display area includes ceasing to display the emojis. In some embodiments, when a plurality of stickers is displayed, the representations of the set of stickers are displayed in different locations in the keyboard display area. In response to detecting a selection of one of the representations of the plurality of sets of stickers based on the user-created avatar, displaying a plurality of stickers in the set of stickers based on the user-created avatar in the keyboard display area reduces the number of inputs to perform the technical task of creating stickers for communication in a messaging application (e.g., by reducing the number of menu options required to locate and select a desired sticker). Reducing the number of inputs required to perform the task enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in making appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.

[0236] Displaying (704) the sticker user interface (e.g., 615) includes displaying (706) (e.g., simultaneously displaying) representations (e.g., 622) of the first plurality of sets of stickers (e.g., static representations of avatars, such as representations of the user-created avatars, on which the corresponding sets of stickers are based), in accordance with a determination that the user has created a first set of two or more user-created avatars including a first avatar (e.g., beanie avatar 636) (e.g., an avatar created by the user to model a male) and a second avatar (e.g., an avatar created by the user to model a female). The representation of the first plurality of sets of stickers includes a representation of a set of stickers based on a first avatar (e.g., 622-2) (e.g., a static representation of a first avatar having a static pose and an appearance based on the first avatar including features used to create the first avatar (e.g., hat, sunglasses, hairstyle / color, skin tone, etc.)) and a representation of a set of stickers based on a second avatar (e.g., 622-3) (e.g., a static representation of a second avatar having a static pose and an appearance based on the second avatar including features used to create the second avatar (e.g., hat, sunglasses, hairstyle / color, skin tone, etc.)). Displaying representations of the set of stickers when a set of avatars is created reduces the number of inputs to perform the technical task of creating and selecting stickers for communication in a messaging application (e.g., by reducing the number of menu options required to locate and select desired stickers). Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0237] Displaying (704) a sticker user interface (e.g., 615) includes (e.g., simultaneously) displaying (708) a representation of a second plurality of set of stickers that differs from the representation of the first plurality of set of stickers pursuant to a determination that the user has created a second set of two or more user-created avatars that includes a third avatar (e.g., boy avatar 672) that is not included in the first set of two or more user-created avatars (e.g., avatars created by the user to model a child). In some embodiments, the representation of the second plurality of set of stickers includes a representation of a set of stickers (e.g., 622-4) based on the third avatar that was not included in the representation of the first plurality of set of stickers (e.g., a static representation of the third avatar having a static pose and an appearance based on the third avatar, including features (e.g., hat, sunglasses, hairstyle / color, skin tone, etc.) used to create the third avatar). In some embodiments, the set of stickers based on each avatar and corresponding representations of the set of stickers are created in response to detecting the creation of a respective avatar (e.g., a first, second, and third avatar) (e.g., automatically (e.g., without subsequent user input after the avatar is created)). In some embodiments, the representations of the first and / or second plurality of sets of stickers include representations of avatars that the user did not create. Displaying different representations of the set of stickers when a new avatar is created reduces the number of inputs to perform the technical task of creating and selecting stickers for communication in a messaging application (e.g., by reducing the number of menu options required to locate and select desired stickers). Reducing the number of inputs required to perform a task enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in making appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing users to use the device more quickly and efficiently.

[0238] In some embodiments, the electronic device detects a selection (e.g., 694) of a representation of the set of stickers based on a first avatar (e.g., beanie hat representation 622-2 in FIG. 6U) (e.g., selection of one of the representations of the set of stickers based on the first, second, or third avatar). In some embodiments, the representation is selected by default (e.g., upon display of the sticker user interface). In some embodiments, the representation is selected in response to user input. In some embodiments, in response to detecting a selection of the representation of the set of stickers based on the first avatar, the electronic device simultaneously displays the selected representation (e.g., 622-2) and multiple stickers (e.g., 642) in the set of stickers based on the first avatar (e.g., a graphic object having an appearance based on an avatar (user-created avatar) and having different poses and facial expressions), where the multiple stickers have an appearance based on the first avatar. In some embodiments, a sticker corresponds to the selected one of the representations (e.g., the sticker has an appearance based on the avatar associated with the selected representation). When a different representation is selected, the stickers associated with the previously selected representation are replaced with the set of stickers associated with the newly selected representation. In some embodiments, stickers include additional features that are displayed to modify the appearance of the avatar to convey a particular expression, emotion, mood, etc. For example, a sticker may include hearts over the avatar's eyes to convey love or tears under the avatar's eyes to convey sadness. In some embodiments, stickers include subtle modifications to the avatar's appearance, such as altering a portion of the avatar while still retaining the avatar's overall recognizable expression. One example of such a modification is a "surprised" sticker, which is a representation of the avatar with the top of the avatar's head removed, displaying the avatar's brain exploding.

[0239] In some embodiments, the plurality of stickers in the set of stickers based on the first avatar include a first sticker (e.g., 642-1) having a first pose (e.g., a thumbs-up pose) and an appearance based on the first avatar, and a second sticker (e.g., 642-2) having a second pose (e.g., heart eyes) different from the first pose and an appearance based on the first avatar (e.g., beanie avatar 636) (e.g., the stickers in the set of stickers have different sets of poses and appearances based on the first avatar). In some embodiments, while displaying the plurality of stickers in the set of stickers based on the first avatar, the electronic device detects a selection of a representation of the set of stickers based on the second avatar (e.g., 622-4). In some embodiments, in response to detecting a selection of the representation of the set of stickers based on the second avatar, the electronic device ceases displaying the plurality of stickers in the set of stickers based on the first avatar. In some embodiments, in response to detecting a selection of a representation of the set of stickers based on the second avatar, the electronic device displays multiple stickers (e.g., 662) in the set of stickers based on the second avatar. In some embodiments, the set of stickers based on the second avatar includes a third sticker (e.g., 662-1) having a first pose (e.g., a thumbs-up pose) and an appearance based on the second avatar (e.g., boy avatar 672), and a fourth sticker (e.g., 662-2) having a second pose (e.g., heart eyes) and an appearance based on the second avatar (e.g., a first set of stickers having the appearance and set of poses of the first avatar is replaced with a second set of stickers having the same set of poses but instead having an appearance based on the second avatar). By displaying stickers with the same set of poses but with different appearances based on each avatar (e.g., a user-created avatar), a user can quickly and easily create messages to express known emotions based on the pose, while still respecting the user's personal and artistic preferences with stickers of avatars with different appearances.This provides an improved control scheme for creating custom messages, which can require fewer inputs to create the custom messages than would be required if a different control scheme were used (e.g., a control scheme requiring the creation of individual custom poses). Furthermore, this type of control can occur in real time during a conversation, such as a text or video conversation, whereas manual control to construct stickers must occur before the conversation begins or after it ends. Reducing the number of inputs required to perform a task enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in making appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.

[0240] In some embodiments, one or more of the stickers are animated (eg, the stickers are shown winking, waving, making a facial expression, etc.).

[0241] In some embodiments, after displaying the sticker user interface, the electronic device receives a request (e.g., 638) to redisplay the sticker user interface. In some embodiments, in response to receiving the request to redisplay the sticker user interface, the electronic device redisplays the sticker user interface via the display device (e.g., sticker user interface 615 is redisplayed in FIG. 6H ). In some embodiments, redisplaying the sticker user interface displays (e.g., simultaneously) representations of a third plurality of sets of stickers (e.g., representation 622 shown in FIG. 6H ) pursuant to a determination that the user has created a fourth avatar (e.g., 636) that is not included in the first or second sets of two or more user-created avatars (e.g., the user has created a new avatar). In some embodiments, the representation of the third plurality of sets of stickers includes a representation of a set of stickers (e.g., 622-2) based on a fourth avatar that was not included in the representation of the first or second plurality of sets of stickers (e.g., as another example, sticker user interface 615 is redisplayed in FIG. 6N after receiving a series of inputs to create boy avatar 672, including newly displayed boy representation 622-4 and boy sticker 662). In some embodiments, displaying the representation of the set of stickers includes simultaneously displaying at least a portion of the set of stickers based on (e.g., having the appearance of) the fourth avatar. For example, when the sticker UI is redisplayed, the representation of the set of stickers based on the fourth avatar is selected, and at least some of the stickers in the set are displayed with a different appearance based on the appearance of the fourth avatar. Redisplaying the sticker user interface to display stickers after a user has created an avatar reduces the number of inputs to perform the technical task of creating stickers (e.g., for sending in a message conversation).Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0242] In some embodiments, the representation of the first avatar-based set of stickers (e.g., 622-2) has the appearance of one of the stickers in the first avatar-based set of stickers. In some embodiments, the representation of the second avatar-based set of stickers (e.g., 622-4) has the appearance of one of the stickers in the second avatar-based set of stickers. In some embodiments, the representation of the third avatar-based set of stickers has the appearance of one of the stickers in the third avatar-based set of stickers.

[0243] In some embodiments, displaying the sticker user interface further includes displaying an edit user interface object (e.g., 665) (e.g., an edit affordance) that, when selected, displays an edit interface (e.g., 670) for editing the respective user-created avatar.

[0244] In some embodiments, displaying the sticker user interface further includes displaying a plurality of stickers (e.g., 662) in a set of stickers based on a respective user-created avatar (e.g., 672), the plurality of stickers having an appearance based on a first appearance of the respective user-created avatar (e.g., boy sticker 662 of FIG. 6O). In some embodiments, displaying the sticker user interface further includes detecting a series of inputs (e.g., 668, 676, 678) corresponding to a request to edit the respective user-created avatar from a first appearance to a second appearance (e.g., from a first hairstyle to a second hairstyle) (e.g., a series of inputs including a selection of an edit affordance and an interaction with an edit interface to edit the respective user-created avatar). In some embodiments, displaying the sticker user interface further includes detecting a request (e.g., 678) to display a plurality of stickers in the set of stickers based on the respective user-created avatar (e.g., exit the edit interface) (e.g., detecting a selection of a representation of the set of stickers based on the respective user-created avatar). In some embodiments, displaying the sticker user interface further includes, in response to detecting a request to display a plurality of stickers in the set of stickers based on the respective user-created avatar, displaying a plurality of stickers (e.g., sticker 662 of FIG. 6R ) in the set of stickers based on the respective user-created avatar. In some embodiments, a sticker in the set of stickers has an updated appearance based on a second appearance of the respective user-created avatar (e.g., sticker 662 of FIG. 6R with a second hairstyle) (e.g., when the respective user-created avatar is changed / updated, the sticker in the set of stickers based on the respective user-created avatar is changed / updated). In some embodiments, the appearance of a representation of the set of stickers based on the respective user-created avatar is updated when the respective user-created avatar is changed / updated.Automatically updating the appearance of the sticker's representation after the user creates / updates their avatar reduces the number of inputs required to perform the technical task of creating a sticker. Reducing the number of inputs required to perform the task enhances usability of the device, makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces device power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0245] In some embodiments, editing the respective user-created avatars using the editing interface (e.g., 670) changes the appearance of the respective user-created avatars in sticker user interfaces and user interfaces other than the sticker user interfaces (e.g., the editing interface changes the appearance of the respective user-created avatars across the operating system, including instances where the respective user-created avatars are displayed in different applications, such as, for example, a camera application, a video communication application, a messaging application, a media viewing application, etc.). For example, in a camera application and a video communication application, a representation of the respective user-created avatar may be displayed within the field of view of the camera. When the appearance of the respective user-created avatars is changed in the sticker user interface, the changes to the appearance of the respective user-created avatars are also applied to the respective user-created avatars' representations in the camera application and the video communication application. In a messaging application, participants in a message conversation may be represented using respective user-created avatars. When the appearance of the respective user-created avatars is changed in the sticker user interface, the changes to the appearance of the respective user-created avatars are also applied to the respective user-created avatars in the message conversation of the messaging application. A media viewing application, such as a photo viewing application or a video viewing application, may include a representation of the respective user-created avatar within a media item. When the appearance of each user-created avatar is changed in the sticker user interface, the change to the appearance of each user-created avatar is also applied to the representation of each user-created avatar in media items viewed in the media display application. Updating the appearance of the avatar throughout the various user interfaces in response to detecting changes made to the avatar in the sticker user interface reduces the number of inputs to perform the technical task of creating or updating avatars for use in different applications.Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0246] It should be noted that the process details described above in connection with method 700 (e.g., FIG. 7) are also applicable in an analogous manner to the methods described below. For example, methods 800, 1000, 1200, 1300, 1500, 1700, and 1800 optionally include one or more of the features of the various methods described above with reference to method 700. For example, stickers can be displayed and used in a user interface in a manner similar to that described above. For the sake of brevity, these details will not be repeated below.

[0247] 8 is a flow diagram illustrating a method for displaying an avatar in an avatar keyboard application user interface using an electronic device, according to some embodiments. Method 800 is performed on a device (e.g., 100, 300, 500, 600) that includes a display and one or more input devices. Some operations of method 800 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0248] As described below, method 800 provides an intuitive way to display an avatar within an avatar keyboard application user interface. This method reduces the cognitive burden on a user when displaying an avatar within an avatar keyboard application user interface, thereby creating a more efficient human-machine interface. For battery-operated computing devices, allowing users to display avatars within an avatar keyboard application user interface more quickly and efficiently conserves power and extends the time between battery charges.

[0249] An electronic device (e.g., 600) displays (802) a content creation user interface (e.g., 603) (e.g., a document creation user interface or a message composition user interface) (e.g., a single interface screen) via a display device (e.g., 601).

[0250] While displaying a content creation user interface (e.g., 603), the electronic device (e.g., 600) receives a request (e.g., 604) via one or more input devices to display a first display area (e.g., 605) (e.g., a keyboard display area), (e.g., an emoji keyboard display area), or (e.g., a sticker keyboard display area) (804). In some embodiments, the first display area includes a plurality of graphic objects (e.g., 612, 609) (e.g., stickers) (e.g., emojis) corresponding to pre-defined content for insertion into the content creation user interface.

[0251] In response to receiving the request, displaying (804) a first display area (e.g., 605) via a display device (e.g., 601) includes a first display area (806) containing a first subset (e.g., a subset of the plurality of graphic objects in the first display area) of graphic objects (e.g., 612) (e.g., stickers) having an appearance based on a set of avatars (e.g., avatars modeled to represent human characters, avatars modeled to represent non-human characters, avatars that can be created and / or customized by a user, avatars that cannot be created or customized by a user, etc.) available on the electronic device (e.g., 600) (e.g., stickers having an appearance based on the respective avatars and having different poses and facial expressions). In some embodiments, the stickers include additional features that are displayed to modify the respective avatars to convey particular expressions, emotions, moods, etc. For example, a sticker can include hearts over the avatar's eyes to convey love or tears under the avatar's eyes to convey sadness. In some embodiments, stickers include subtle modifications to the appearance of an avatar, such as altering a portion of the avatar while still retaining the avatar's overall recognizable appearance. One example of such a modification is a "surprise" sticker, which is a representation of an avatar with the top of the avatar's head removed, displaying the avatar's brain exploding. In some embodiments, avatars modeled to represent humans include customizable (e.g., selectable or configurable) avatar features that generally correspond to human physical characteristics. For example, such avatars may include representations of individuals with various physical human features or characteristics (e.g., an elderly woman with dark skin color and long, straight brown hair). Such avatars also include representations of individuals with various non-human characteristics typically associated with human appearance (e.g., decorative extensions, hats, glasses, etc.). In some embodiments, such avatars do not include anthropomorphic configurations, such as stylized animals, stylized robots, or stylized representations of typically inanimate or non-human objects.In some embodiments, avatars modeled to represent non-human characters include, for example, non-human characters that are anthropomorphic (e.g., stylized animals, stylized robots, or stylized versions of typically inanimate or non-human objects). In some embodiments, such avatars include avatars with customizable (e.g., selectable or configurable) avatar features that generally correspond to non-human traits and characteristics. In some embodiments, such avatars do not include representations of various physical, human features or characteristics (e.g., a young child with a round face and short, wavy hair), even if some of the customizable features of a human avatar include non-human characteristics (e.g., cosmetic enhancements, hats, glasses, or other non-human objects typically associated with a human appearance).

[0252] Displaying (806) a first display region (e.g., 605) including a first subset (e.g., 610) of graphic objects (e.g., 612) having an appearance based on a set of avatars available on the electronic device, pursuant to determining that the set of avatars includes a first type of avatar (e.g., avatars that can be created and / or customized by a user of the electronic device) (e.g., avatars modeled to represent human characters), displays (808) one (e.g., one or more) of the graphic objects (e.g., 642-1 in FIG. 6I) in the first subset having an appearance based on a first type of avatar (e.g., beanie avatar 636). In some embodiments, if the set of avatars includes ones that are customizable, creatable, and / or modeled to represent human characters, the displayed stickers include one or more stickers derived from the avatar (e.g., having an appearance based on the avatar). In some embodiments, these are referred to as a first type of sticker. In some embodiments, the first type of stickers include stickers suggested by the electronic device based on a usage history of the first type of stickers (e.g., suggesting stickers that have been used recently and / or frequently).

[0253] Displaying (806) a first display region (e.g., 605) including a first subset of graphic objects (e.g., 612) having appearances based on a set of avatars available on the electronic device includes, pursuant to a determination that the set of avatars does not include an avatar of the first type, displaying (810) graphic objects (e.g., 612-1, 612-2, 612-3) in the first subset having appearances based on a second type of avatar (e.g., avatars that cannot be created and / or customized by a user of the electronic device) different from the first type (e.g., avatars modeled to represent non-human characters) without displaying one (e.g., one or more) of the graphic objects in the first subset that have appearances based on avatars of the first type. In some embodiments, if the set of avatars does not include any that are customizable, creatable, and / or modeled to represent humans, the displayed stickers are derived from (e.g., have an appearance based on) avatars that are non-human characters and / or avatars not created or customizable by the user. In some embodiments, these are referred to as second type stickers. Displaying only the second type of avatar when the first type of avatar is unavailable provides feedback to the user that the first type of avatar is not currently available on the device and prompts the user to create an avatar of the first type. Providing improved feedback improves usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs and reducing user errors when operating / interacting with the device), which in turn reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and efficiently.

[0254] In some embodiments, the first type of avatar is a user-created avatar (e.g., beanie avatar 636, boy avatar 672) (e.g., an avatar that can be created and optionally customized by a user), and the second type of avatar is a pre-defined avatar (e.g., a robot, a monkey, a poop) (e.g., an avatar of a type other than a user-created avatar) (e.g., an avatar that cannot be created and / or customized by a user of an electronic device). In some embodiments, the user-created avatar includes customizable (e.g., selectable or configurable) avatar characteristics.

[0255] In some embodiments, a first type of avatar is based on a human character (e.g., beanie avatar 636, boy avatar 672) (e.g., an avatar modeled to represent a human), and a second type of avatar is based on a non-human character (e.g., a monkey, a poop, a robot) (e.g., an avatar modeled to represent animals such as pigs, cats, dogs, sharks, mystical characters such as unicorns, dragons, and aliens, anthropomorphized objects such as robots and poop, and / or stylized representations such as emojis). In some embodiments, avatars modeled to represent non-human characters include, for example, non-human characters that are anthropomorphic constructs (e.g., stylized animals, stylized robots, or stylized representations of typically inanimate or non-human objects). In some embodiments, such avatars include avatars with customizable (e.g., selectable or configurable) avatar characteristics that generally correspond to non-human traits and characteristics. In some embodiments, such avatars do not include representations of various physical, human features or characteristics (e.g., a young child with a round face and short wavy hair), even if some of the customizable features of a human avatar include non-human characteristics (e.g., cosmetic enhancements, hats, glasses, or other non-human objects typically associated with human appearance).

[0256] In some embodiments, displaying the first display area further includes displaying a sticker user interface object (e.g., 614) (e.g., a sticker affordance). In some embodiments, the electronic device receives input (e.g., 616, 656) directed to the sticker user interface object. In some embodiments, in response to receiving the input directed to the sticker user interface object, the electronic device ceases displaying the first display area (e.g., 605). In some embodiments, in response to receiving the input directed to the sticker user interface object, the electronic device displays a sticker user interface (e.g., 615) (e.g., a user interface displaying stickers that may be selected for use within the content creation user interface). In some embodiments, the sticker user interface includes a second plurality of graphic objects (e.g., stickers 624, stickers 642) corresponding to pre-defined content for insertion into the content creation user interface. In some embodiments, the sticker user interface is displayed simultaneously with a portion of the content creation user interface (e.g., a message display area). In some embodiments, the sticker user interface replaces the sticker keyboard display area. By displaying a set of graphic objects corresponding to pre-defined content for insertion into a content creation user interface, a user can quickly and easily compose a message to express a sentiment based on the pre-defined content. This provides an improved control scheme for creating messages, which can reduce the input required to create a message than would be required if a different control scheme (e.g., a control scheme requiring the creation of individual custom content) were used. Furthermore, this type of control can occur in real time during a conversation, such as a text or video conversation, whereas manual control of constructing the graphic objects must occur before the conversation begins or after it ends.

[0257] In some embodiments, displaying the sticker user interface object includes displaying a sticker user interface object having a first appearance (e.g., 614 in FIG. 6B ) that includes multiple representations (e.g., 614-1, 614-2) of a first type of avatar (e.g., the sticker affordance includes a representation of a sticker based on the appearance of the first type of avatar). In some embodiments, the affordance also includes one or more representations of a second type of avatar. Displaying the sticker user interface object with multiple representations of the first type of avatar provides feedback to the user that selection of the sticker user interface object will allow the user to access stickers of the first type of avatar. Providing improved feedback improves device usability and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs and reducing user errors when operating / interacting with the device), which in turn reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and efficiently.

[0258] In some embodiments, after displaying a sticker user interface object (e.g., 614) having a first appearance (e.g., 614 of FIG. 6B ), the electronic device receives a series of inputs corresponding to a request to create a third avatar (e.g., 636) of the first type. In some embodiments, the electronic device receives a request (e.g., 644) to redisplay the first display area. In some embodiments, in response to receiving the request to redisplay the first display area, the electronic device displays a sticker user interface object (e.g., 614) having a second appearance (e.g., 614 of FIG. 6I ) that includes a representation of a third avatar (e.g., 614-2) of the first type (e.g., the keyboard display area is redisplayed to include a sticker user interface object, the sticker user interface object including a representation of a sticker having an appearance based on the created avatar of the first type). In some embodiments, the sticker user interface object also includes one or more representations of an avatar of the first type. In some embodiments, the sticker user interface object also includes one or more representations of an avatar of the second type. Redisplaying the sticker user interface object with a different appearance updated to reflect the newly created avatar provides feedback to the user that creating an additional avatar causes the sticker user interface object to be updated to display the additional avatar. Providing improved feedback improves usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs and reducing user errors when operating / interacting with the device), which in turn reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and efficiently.

[0259] In some embodiments, displaying a sticker user interface object (e.g., 614) having a first appearance includes displaying an animated sequence of a representation of a first type of avatar and a representation of a second type of avatar. In some embodiments, the animation includes showing a representation of a first sticker on the sticker user interface object with an animation (e.g., smiling, moving, etc.), then replacing the first sticker representation with a representation of a second sticker with the animation, etc. In some embodiments, the sticker representation in the animation includes a representation of a first type of sticker and a representation of a second type of sticker. Displaying a sticker user interface object with an animation in which avatar representations are cycled provides feedback to the user that such avatar is not available on the device and informs the user that the user can create such an avatar by selecting the sticker user interface object. Providing improved feedback improves device usability and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs and reducing user errors when operating / interacting with the device), which further reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and efficiently.

[0260] In some embodiments, displaying the sticker user interface (e.g., 615) further includes, in accordance with a determination that the set of avatars does not include an avatar of the first type, displaying a creation user interface object (e.g., 626) (e.g., a create affordance) that, when selected, displays a creation user interface (e.g., 632) for creating an avatar of the first type. In some embodiments, if the set of avatars does not include an avatar of the first type, multiple representations (e.g., 622 of FIG. 6C ) (e.g., 622-1, 622-5) of a set of stickers for an avatar of a second type are displayed within the sticker user interface. In some embodiments, one of the representations of the set of stickers for the avatar of the second type is displayed with a selected state, and a set of stickers of the second type (e.g., 624, 690) corresponding to the selected representation is displayed.

[0261] In some embodiments, displaying the first display area further includes displaying a plurality of emojis (e.g., 609) (e.g., default emojis in a default category or default emojis selected based on previous user activity (e.g., recently / frequently used)).

[0262] In some embodiments, after displaying the graphical objects in the first subset having an appearance based on an avatar of a second type different from the first type, without displaying one of the graphical objects in the first subset having an appearance based on an avatar of the first type, the electronic device receives a series of inputs (e.g., 630, 634, 638) corresponding to a request to create a first avatar of the first type (e.g., detects the creation of an avatar of the first type (e.g., a user-created avatar)). In some embodiments, in response to receiving the series of inputs, the electronic device creates a first avatar of the first type (e.g., 636) and adds the first avatar to the set of avatars. In some embodiments, after creating the first avatar of the first type, the electronic device receives a request (e.g., 644) to re-display the first display region (e.g., 605). In some embodiments, in response to receiving the request to re-display the first display region, the electronic device displays the first display region with the first subset of graphical objects (e.g., 612). In some embodiments, the first subset of graphic objects includes a first graphic object (e.g., 642-1 in FIG. 6I) having an appearance based on a first avatar of a first type (e.g., the keyboard is redisplayed and the subset of graphic objects includes stickers having an appearance based on the newly created avatar). In some embodiments, stickers based on the first type of avatar (e.g., the newly created avatar) are assigned a higher priority than stickers of a second type. In some embodiments, the keyboard display area includes stickers suggested by the electronic device based on the sticker priorities. Displaying the first display area updated with stickers for the newly created avatar provides feedback to the user that the stickers are available for selection to communicate in messages. Furthermore, this reduces the number of inputs required to perform the technical task of creating stickers for the newly created avatar.The device is easier to use by providing improved feedback and reducing the number of inputs required to perform a task, making the user-device interface more efficient (e.g., by assisting the user in making appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces power usage and improves battery life of the device by allowing the user to use the device more quickly and efficiently.

[0263] In some embodiments, after displaying (e.g., 612) the graphical objects in the first subset having an appearance based on an avatar of a second type different from the first type, without displaying one of the graphical objects in the first subset having an appearance based on an avatar of the first type, the electronic device receives a series of inputs (e.g., 644) corresponding to use (e.g., sending a sticker, creating a sticker, etc.) (e.g., in a content creation user interface such as a document creation user interface or a message composition user interface) of a graphical object (e.g., 642-1) corresponding to a second avatar of the first type (e.g., a sticker having an appearance based on an avatar of the first type). In some embodiments, after receiving the series of inputs corresponding to use of the graphical object corresponding to the second avatar of the first type, the electronic device receives a request to redisplay the first display area. In some embodiments, in response to receiving a request to redisplay the first display region, the electronic device displays the first display region with a first subset of graphic objects, the first subset of graphic objects including graphic objects (e.g., 642-1) corresponding to a second avatar of the first type (e.g., the keyboard is redisplayed and the subset of graphic objects includes used stickers). In some embodiments, the keyboard display region includes stickers suggested by the electronic device based on a usage history of stickers of the first type (or the second type) (e.g., suggesting recently and / or frequently used stickers). Displaying the first display region updated with previously used stickers reduces the number of inputs required to locate and send stickers in subsequent communications.Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0264] In some embodiments, while displaying a first instance of a particular one of the graphic objects (e.g., 642-1 in FIG. 6I) having an appearance based on a set of avatars available on the electronic device, the electronic device receives a first type of input (e.g., 646) (e.g., a tap gesture) directed at the first instance of the particular one of the graphic objects. In some embodiments, in response to receiving the first type of input, the electronic device displays a second instance of the particular one of the graphic objects (e.g., 650) (e.g., a preview of the particular one of the graphic objects is displayed without transmitting a sticker corresponding to the particular one of the graphic objects). In some embodiments, other graphic objects (e.g., emoji) in the keyboard display area respond to the first type of input (e.g., tap gesture). For example, emoji can be selected using a tap gesture. Displaying the second instance of the particular one of the graphic objects in response to receiving the first type of input maintains consistency for interacting with the graphic objects and emoji displayed on the keyboard. This provides an intuitive interface for interacting with the different graphical objects presented in the keyboard display area, which improves usability of the device by increasing familiarity, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and additionally reduces power usage and improves battery life of the device by allowing the user to use the device more quickly and efficiently.

[0265] In some embodiments, while displaying a second instance of a particular one of the graphical objects (e.g., 650), the electronic device receives a second input directed at the second instance of the particular one of the graphical objects, the second input including a first portion that is stationary followed by a second portion that includes movement of the second input. In some embodiments, in response to receiving the second input, and in accordance with a determination that the second input satisfies a first criterion (e.g., the first portion of the second input is stationary at the location of the second instance of the particular one of the graphical objects for a threshold amount of time and the second portion of the second input includes movement to a location corresponding to a messaging area of ​​the content creation user interface), the electronic device sends a sticker corresponding to the particular one of the graphical objects to the recipient user. 6J and 6K, device 600 sends beanie hat sticker 642-1 to second recipient 607-2 in the messaging conversation when the user touches and holds preview 650 (triggering device 600 to select the sticker to send) and then drags a contact to message area 603-1. In some embodiments, in response to receiving a second input, the electronic device refrains from sending the sticker corresponding to a particular one of the graphic objects to the receiving user in accordance with a determination that the second input does not meet the first criterion. For example, referring to the previous example, if the user does not maintain the contact on preview 650 long enough to trigger device 600 to select the sticker, device 600 does not send sticker 642-1 to second recipient 607-2 in the messaging conversation, even if the user drags the contact to message area 603-1.Refusing to send a sticker when the second input does not meet the first criterion reduces the likelihood of accidental sending of a sticker, thereby enhancing usability of the device and making the user-device interface more efficient (e.g., by assisting the user in making appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving battery life of the device by allowing the user to use the device more quickly and efficiently.

[0266] In some embodiments, displaying the second instance (e.g., 650) of the particular one of the graphic objects further includes displaying a sending user interface object (e.g., 652) (e.g., a send affordance). In some embodiments, the electronic device receives input (e.g., 654) directed to the sending user interface object. In some embodiments, in response to receiving the input directed to the sending user interface object, the electronic device sends a sticker corresponding to the particular one of the graphic objects to the receiving user.

[0267] It should be noted that the details of the process described above with respect to method 800 (FIG. 8) are also applicable in an analogous manner to the methods described above and below. For example, methods 700, 1000, 1200, 1300, 1500, 1700, and 1800 optionally include one or more of the features of the various methods described above with reference to method 800. For example, stickers can be displayed and used in a user interface in a manner similar to that described above. For the sake of brevity, these details will not be repeated below.

[0268] 9A-9AG show exemplary user interfaces for displaying avatars in a contacts application user interface, according to some embodiments. The user interfaces in these figures are used to illustrate processes described below, including the process of FIG.

[0269] 9A shows electronic device 600 displaying (e.g., on display 601) contacts user interface 902 showing a list of contacts available in a contacts application on the electronic device. The contacts application is an application for managing contactable users.

[0270] In FIG. 9A, the device detects an input 904 (eg, a tap gesture) and, in response, displays a new contact user interface 906 in FIG. 9B for creating a new contact for the contacts application.

[0271] 9B, new contact user interface 906 includes a data field 908 and an area 910 that, optionally, displays a representation of the new contact. The representation can be displayed to represent the contact in various user interfaces, such as, for example, a messaging application, a list of contacts, an email, or other instances in which a contact may be represented.

[0272] 9C shows information about a new contact entered into the name field of the new contact user interface. As shown in FIG. 9C, "Jane Appleseed" is entered as the first and last name for each of the new contacts. After receiving the name information, device 600 updates region 910 to display a monogram representation with the initials "JA" corresponding to the new contact name "Jane Appleseed."

[0273] In FIG. 9C, device 600 detects input 912 (e.g., a tap gesture) on the phone number option and displays a keyboard for entering the phone number of the new contact, Jane Appleseed, as shown in FIG. 9D.

[0274] In some embodiments, the new contact representation can be edited by selecting area 910 from new contact user interface 906. For example, FIG. 9D shows device 600 detecting input 914 on area 910.

[0275] In response to detecting input 914 on region 910, device 600 displays a representation editing user interface 915 for modifying the appearance of the representation of the new contact (e.g., Jane Appleseed), as seen in Figure 9E. It should be understood that in some embodiments, user interface 915 can be used to edit the appearance of the representation of an existing contact (e.g., not a new contact).

[0276] User interface 915 includes current representation 916. Current representation 916 represents the current appearance of the contact's representation. Thus, upon exiting user interface 915 (e.g., in response to selecting exit affordance 917), the contact's representation as shown throughout various user interfaces of device 600 (e.g., as appearing in area 910 of new contact user interface 906) has the appearance shown in current representation 916. As discussed in detail below, current representation 916 is updated in response to a series of user inputs in user interface 915. However, such updates can be discarded, and the contact's representation reverts to its previous appearance (e.g., as shown in area 910 before displaying user interface 915) in response to detecting selection of cancel affordance 918.

[0277] In Figure 9E, the current representation 916 has the appearance of the monogram option previously displayed in the new contact user interface 906. Figures 9F-9AF show a series of inputs for changing the current representation 916, according to various embodiments of the present disclosure.

[0278] The user interface 915 further includes a set of selectable options for changing the current representation 916. The first set of options 921 includes options that, when selected, initiate a process for selecting an avatar to set as the current representation 916. The second set of options 922 generally includes options that, when selected, initiate a process for selecting a non-avatar representation as the current representation 916. Examples of non-avatar representations include photos and monograms. In some embodiments, the second set of options 922 may include a subset of options determined based on usage history. For example, a subset including previously (e.g., recently) used options and / or options frequently used by the user. In such embodiments, the subset of options may include avatar options (e.g., recently used avatar options). In some embodiments, the second set of options 922 may include options recommended to the user based on information available for the new contact. For example, the options may include a photo of the contact, a photo / sticker / avatar sent to or received from the contact, an avatar associated with the contact, or other representation previously used for the contact. In some embodiments, options are recommended based on information available at device 600, such as, for example, content from messaging metadata from communications with contacts.

[0279] In FIG. 9E , device 600 detects input 924 (e.g., a tap gesture) on monkey avatar option 921-1 and, in response, displays an interface for selecting a pose option for the selected avatar option. In some embodiments, device 600 can display different types of pose interfaces. For example, if camera 602 of device 600 is configured to capture depth data (e.g., data for capturing changes in a user's facial pose), device 600 displays a live pose interface that allows the user to control the displayed avatar to achieve a desired pose. In embodiments in which camera 602 is not configured to capture depth data, device 600 displays a canned pose interface that includes multiple pre-defined poses for the selected avatar option.

[0280] In FIG. 9F , device 600 displays live pose interface 926, including avatar 928 having an appearance corresponding to the selected avatar option, capture affordance 930, and cancel affordance 932. In FIG. 9F , avatar 928 corresponds to monkey avatar option 921-1 selected via input 924. As discussed in more detail below, avatar 928 tracks the user's facial movements (e.g., captured via camera 602) and is updated based on changes in the user's facial pose. In FIG. 9F , avatar 928 has a smile pose that is controlled by the user's face (e.g., the user's face has a similar smile pose).

[0281] In FIG. 9F, device 600 detects input 934 on cancel affordance 932 and, in response, returns to expression editing user interface 915 without updating current representation 916, as shown in FIG. 9G.

[0282] In FIG. 9G, device 600 detects input 936 on female avatar option 921-2 and, in response, displays live pose user interface 926 of FIG. 9H with avatar 928 having an appearance corresponding to the female avatar option 921-2 selected in FIG. 9G. In FIG. 9H, avatar 928 has a pose in which the avatar's tongue is sticking out. In this embodiment, avatar 928 is controlled by the user's face through changes in facial pose (e.g., changes in facial expression and movements of facial features) detected via camera 602. Thus, the user can control the display of various pose options for avatar 928 by moving facial features within the field of view of camera 602, causing device 600 to display corresponding changes in the pose of avatar 928.

[0283] 9I, device 600 detects the user's face (e.g., via camera 602) with a pose that includes a smile and a head tilt, and changes avatar 928 to assume the same pose. Device 600 detects input 938 on capture affordance 930, which causes device 600 to select the current pose of avatar 928 (e.g., the pose of avatar 928 when capture affordance 930 was selected).

[0284] FIG. 9J illustrates an alternative embodiment for selecting a pose for the selected female avatar option 921-2 using a standard pose interface 940. For example, if the camera 602 is not configured to capture depth data (e.g., data used to track the user's face), the standard pose interface 940 is displayed instead of the live pose interface 926 (e.g., in response to input 936 on the female avatar option 921-2). In the standard pose interface 940, the device 600 displays various predefined avatar poses 942-1 through 942-6. In FIG. 9J, the device 600 detects an input 944 selecting the predefined avatar pose 642-3 corresponding to a smiling head tilt pose.

[0285] After capturing the avatar pose in FIG. 9I or 9J, device 600 displays a scaling user interface 946 for modifying the position and scale of the selected avatar pose 948, as shown in FIG. 9K. In some embodiments, avatar pose 948 is moved (e.g., moved within a circular frame) in response to a swipe detected while displaying scaling interface 946. In some embodiments, avatar pose 948 is scaled (e.g., zoomed in or out) in response to a pinch-out or pinch-in gesture detected while displaying scaling interface 946. After detecting an input 950 confirming the position and scale of the selected avatar pose 948, device 600 displays background options 952-1 through 952-6 of FIG. 9L, detects selection of a background option for the avatar representation (e.g., via input 954 for background option 952-3), and returns to representation editing user interface 915 of FIG. 9M.

[0286] As shown in FIG. 9M, the expression editing user interface 915 is updated based on the selection and customization of the female avatar option 921-2. For example, the appearance of the current representation 916 is updated based on the various selections and / or inputs made in FIGS. 9G-9L. Specifically, the current representation 916 is changed from the monogram appearance shown in FIG. 9G to the appearance of FIG. 9M, which shows the female avatar option with a smiling and head-tilt pose, positioned, scaled, and with the selected background option 952-3. Additionally, the second set of options 922 is updated to include a monogram option 922-1, which represents the previous appearance of the current representation 916. That is, the monogram option 922-1 is a selectable non-avatar option that, when selected, updates the current representation 916 to have the appearance of the previously displayed monogram option (e.g., shown in FIG. 9G). The remaining non-avatar options in the second set of options 922 are shifted to correspond to the display of the monogram option 922-1 in the set of options, and any previously displayed non-avatar options are removed from the set (e.g., to avoid pushing the first set of options 921 off the display 601).

[0287] In some embodiments, a user can create an avatar for selection as the current representation 916. For example, in FIG. 9M , device 600 detects input 956 selecting create avatar option 921-3 and displays create avatar user interface 958 of FIG. 9N (similar to create avatar user interface 632 shown in FIG. 6F ). Device 600 detects input, generally represented by input 959 in create avatar user interface 958 of FIG. 9N , to construct / create new avatar 960 shown in FIG. 9O . In response to input 962 on exit affordance 963, device 600 exits create avatar user interface 958 and returns to edit representation user interface 915 of FIG. 9P , showing current representation 916 updated to have the appearance of new avatar 960. In some embodiments, after creating new avatar 960, the new avatar is available for use in electronic device 600, including other applications, such as, for example, messaging applications, camera applications, media viewing applications, and other applications on device 600. Additionally, new avatars 960 can be updated, and updates are made to new avatars 960 contained in other applications.

[0288] Additionally, first set of options 921 is updated in FIG. 9P to include new avatar option 921-4, which is a representation of new avatar 960, and second set of options 922 is updated to include female avatar option 922-2, which corresponds to the previous appearance of current representation 916. As previously described, some of the selectable options in second set of options 922 are shifted to accommodate the addition of female avatar option 922-2. In some embodiments, a previously used representation option is added to second set of options 922 at the top row 922a (e.g., adjacent camera option 922-3 or adjacent monogram option 922-1).

[0289] In Figure 9P, device 600 detects input 964 on monogram option 922-1 and displays background option 965 of Figure 9Q. After detecting the selection of the background option (e.g., via input 967), device 600 displays different font options 966 for the characters displayed in the monogram representation in Figure 9R. After detecting the selection of a font style (e.g., via input 969), device 600 again displays representation editing user interface 915 of Figure 9S, showing the current representation 916 updated with the selected monogram option and a new avatar option 922-4 added to the second set of options 922.

[0290] In FIG. 9S, device 600 detects input 968 on photo option 922-5. In some embodiments, photo option 922-5 represents a thumbnail view of photos available on device 600. In some embodiments, the photo is identified (e.g., via automatic image recognition) as a photo of a contact (e.g., a photo of Jane Appleseed). In some embodiments, photo option 922-5 is a recently used contact representation for the contact.

[0291] In response to detecting input 968, device 600 displays filter user interface 970 in FIG. 9T having different filter options 972 that can be selected and applied to the selected photo option. The device detects input 974 selecting one of the filter options 972 and applies the selected filter option to the photo, as shown in FIG. 9U. Current representation 915 is displayed in FIG. 9U with selected photo option 922-5 but modified with the selected filter option 972. A second set of options 922 is updated with a recent monogram option 922-6 representing the previous appearance of current representation 916.

[0292] In FIG. 9U, device 600 detects input 975 on exit affordance 917 to exit expression editing user interface 915.

[0293] In FIG. 9V, device 600 displays a contact card 976 for a contact (e.g., Jane Appleseed) with a contact representation 978 that has the appearance of current representation 916 in FIG. 9U.

[0294] In FIG. 9V, device 600 detects input 980 on edit affordance 982 and, in response, displays expression editing user interface 915 of FIG. 9W.

[0295] In Figure 9W, device 600 detects input 984 on camera option 922-3 and, in response, displays camera user interface 986 showing a representation of image data captured within the field of view of a camera (e.g., camera 602) of device 600. Device 600 detects input 987 on capture affordance 988 and uses scaling user interface 990 to capture image 989, displayed in Figure 9Y.

[0296] In Figure 9Y, device 600 detects input 991 selecting a scaled (and moved) portion of image 989, which is displayed with various filter options 992 of Figure 9Z. Device 600 detects the selection of no filter option 992-1 and, in response, displays representation editing user interface 915 of Figure 9AA with the no filter image captured and selected in Figures 9Y-9Z and set as current representation 916. Second set of options 922 is updated to include filtered photo option 922-7, which represents the previous appearance of current representation 916.

[0297] In Figure 9AA, device 600 detects input 993 on all affordances 994, which are affordances for accessing a photo library available on device 600. In response, device 600 displays photo album user interface 995 of Figure 9AB. In Figures 9AB and 9AC, device 600 detects selection of a photo from an album available on device 600 and displays a representation 996 of the selected photo in scaled user interface 990 of Figure 9AD.

[0298] Device 600 detects scaling and movement (eg, cropping) of representation 996 and detects selection of the scaled and moved image in response to input 997 in FIG. 9AD.

[0299] In Figure 9AE, device 600 displays the filter options, detects a selection of one of the filter options, and displays current representation 916 with the image created in the steps above and shown in Figures 9AA-9AE. A second set of options 922 is updated with previous photo option 922-8.

[0300] The device 600 detects input 998 on the exit affordance 917 and, in FIG. 9AG, displays a contact card 976 with a contact representation 978 updated with the appearance of the contact representation created by the selections made in FIGS. 9AA-9AE.

[0301] 10 is a flow diagram illustrating a method for displaying an avatar in a contacts application user interface using an electronic device, according to some embodiments. Method 1000 is performed on a device (e.g., 100, 300, 500, 600) with a display and one or more input devices (e.g., 601, 602). Some operations of method 1000 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0302] As described below, method 1000 provides an intuitive way to display avatars within a contacts application user interface. This method reduces the cognitive burden on a user when displaying avatars within a contacts application user interface, thereby creating a more efficient human-machine interface. For battery-operated computing devices, allowing users to display avatars within a contacts application user interface more quickly and efficiently conserves power and extends the time between battery charges.

[0303] An electronic device (e.g., 600) displays (1002) via a display device (e.g., 601) a contactable user editing user interface (e.g., 915) (e.g., an interface for editing information at the electronic device about a contactable user (e.g., for contacting via phone, email, messaging, etc.), a single interface screen). In some embodiments, the contactable user editing user interface includes (e.g., simultaneously includes) one or more representation options (e.g., 921) (e.g., user interface objects (affordances)) for the contactable user, including an avatar representation option (e.g., 921-2) (e.g., an avatar representation option is a user interface object (e.g., affordance) that, when selected, initiates a process for selecting an avatar to use as a representation of the contactable user). In some embodiments, the avatar representation option has the appearance of an avatar (e.g., an avatar modeled to represent a human character, an avatar modeled to represent a non-human character, an avatar that can be created and / or customizable by the user, and an avatar that cannot be created or customizable by the user). In some embodiments, avatars modeled to represent humans include customizable (e.g., selectable or configurable) avatar features that generally correspond to human physical characteristics. For example, such avatars may include representations of individuals with various physical human features or characteristics (e.g., an elderly woman with dark skin color and long, straight brown hair). Such avatars also include representations of individuals with various non-human characteristics typically associated with human appearance (e.g., decorative extensions, hats, glasses, etc.). In some embodiments, such avatars do not include anthropomorphic configurations, such as stylized animals, stylized robots, or stylized representations of typically inanimate or non-human objects.In some embodiments, avatars modeled to represent non-human characters include, for example, non-human characters that are anthropomorphic (e.g., stylized animals, stylized robots, or stylized versions of typically inanimate or non-human objects). In some embodiments, such avatars include avatars with customizable (e.g., selectable or configurable) avatar features that generally correspond to non-human traits and characteristics. In some embodiments, such avatars do not include representations of various physical, human features or characteristics (e.g., a young child with a round face and short, wavy hair), even if some of the customizable features of a human avatar include non-human characteristics (e.g., cosmetic enhancements, hats, glasses, or other non-human objects typically associated with a human appearance).

[0304] In some embodiments, the contactable user editing user interface (e.g., 915) further includes a first representation (e.g., an image, monogram, or other symbol that provides a visual association to the contactable user) of the contactable user (e.g., 916). In some embodiments, the representation of the contactable user is displayed (typically in a small area on the screen) in other user interfaces (e.g., phone application UI, messaging application UI, etc.) to represent the contactable user. In some embodiments, the first representation of the contactable user is replaced with an avatar (e.g., 921-2) selected for use as the contactable user's representation in the contactable user interface.

[0305] In some embodiments, the one or more representation options include non-avatar options (e.g., 922-1, 922-3, 922-5, 922-6, 922-7, 922-8) (contactable user representation options that do not correspond to an avatar) (e.g., the non-avatar options are associated with non-avatar photos, monograms, or other options for selection for use as a representation of the contactable user in the contactable user interface). In some embodiments, the electronic device (e.g., 600) detects selection of a non-avatar option (e.g., 964, 968, 984, 993) via one or more input devices (e.g., 601). In some embodiments, in response to detecting selection of the non-avatar option, the electronic device initiates a process for selecting a representation option other than an avatar (e.g., a photo, monogram, etc.) to use as a representation of the contactable user in the contactable user interface.

[0306] In some embodiments, the one or more representation options include a plurality of options (eg, 922) selected based on information about the contactable user.

[0307] In some embodiments, the plurality of options selected based on information about the contactable user include recently used representations (e.g., 922-1, 922-2, 922-4, 922-6, 922-7, 922-8) of the contactable user (e.g., representations of the contactable user previously used within a predetermined time or a predetermined number of instances of selecting a representation of the contactable user). In some embodiments, after a representation is selected for the contactable user, the representation is added to a set of recently used representations of the contactable user. Adding the recently selected representation of the contactable user to the set of recently used representations for the contactable user reduces the number of inputs required for subsequent uses of the recently selected representations (e.g., reducing the inputs required to create or access the representation). Reducing the number of inputs enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.

[0308] In some embodiments, the plurality of options selected based on information about the contactable user include media items (e.g., 922-5) available on the electronic device identified as associated with the contactable user (e.g., photos of the contactable user). In some embodiments, the plurality of options selected based on information about the contactable user include media items identified as associated with the contactable user and that meet certain quality criteria (e.g., the photos primarily feature the contactable user, the photos are in focus, etc.). In some embodiments, the media items correspond to the contactable user. For example, the media items include photos of the user. As another example, the media items were previously (e.g., recently) sent to or received from the contactable user. Displaying recently communicated media items for potential use as representations of the contactable user reduces the number of inputs required for subsequent use of the media items (e.g., reducing the inputs required to create or access the representation). Reducing the number of inputs enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.

[0309] In some embodiments, the information about the contactable user includes information from a messaging communication session with the contactable user. In some embodiments, the item includes a sticker, a photo, or other content that includes messaging metadata from a communication with the contactable user.

[0310] In some embodiments, one or more representation options include a monogram representation option (e.g., 922-1, 922-6) (e.g., a representation of the contactable user that is a monogram with initials corresponding to the name (e.g., first name, last name, middle name) associated with the contactable user).

[0311] In some embodiments, the one or more representation options include a media item option (e.g., 922-5, 922-7, 922-8) (e.g., selecting a photo associated with a contactable user (e.g., a photo of a contactable user) from photos associated with contactable users (e.g., a collection of photos of contactable users)).

[0312] In some embodiments, after detecting selection of a media item option, the electronic device (e.g., 600) displays, via the display device (e.g., 601), multiple filter options for applying a filter effect to the media item associated with the selected media item option. In some embodiments, the filter effect is applied to the media item by overlaying the filter effect on the media item. In some embodiments, the filter effect applies a change to both the background within the media item as well as any applied visual effects (e.g., avatars, stickers, etc.) that may be included in the media item. In some embodiments, the filter changes the appearance of the media item (e.g., applies a comic book filter, a sketch drawing filter, a black and white filter, a grayscale filter, etc.). In some embodiments, the filter is a filter that reduces the realism of the media item (e.g., a sketch filter or a comic book filter). In some embodiments, the filter is a filter that reduces the 3D effect (e.g., flattening) of the media item. Displaying filter options for modifying the media item option after it has been selected reduces the number of inputs required to customize the selected media item if a different control scheme were used (e.g., navigating to a customization user interface and selecting different controls for viewing and modifying the selected media item). Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.

[0313] The electronic device detects (1004) a selection (e.g., 936) of an avatar representation option (e.g., 921-2) via one or more input devices (e.g., 601).

[0314] In response to detecting a selection of an avatar representation option (e.g., 921-2), the electronic device (e.g., 600) initiates a process for selecting an avatar to use as a representation of the contactable user in the contactable user interface (1006).

[0315] As part of the process for selecting an avatar as a representation of a contactable user within the contactable user interface, the electronic device receives (1008) via one or more input devices (e.g., 601, 602) a sequence of one or more inputs (e.g., 936, 938, 944, 950, 954, 956, 959, 962, image data controlling avatar 928 in Figure 9H) corresponding to the selection of a simulated three-dimensional avatar (e.g., 928, 916 in Figure 9M, 960, 916 in Figure 9P).

[0316] In some embodiments, in response to selecting a simulated three-dimensional avatar, the electronic device (e.g., 600) displays (1010) via a display device (e.g., 601) a posing user interface (e.g., 926, 940) including one or more controls (e.g., 942-1 through 942-6) (e.g., 930) for selecting a pose for the simulated three-dimensional avatar from a plurality of different poses (e.g., a plurality of user interface objects (e.g., affordances) corresponding to different predefined poses) (e.g., a capture affordance for capturing the pose using the electronic device's camera). Displaying the posing interface for selecting a pose for the avatar from a plurality of different poses after selecting the avatar reduces the number of inputs required to customize the selected avatar if a different control scheme were used (e.g., navigating to a customization user interface and selecting a different control for viewing and modifying the selected avatar). Reducing the number of inputs required to perform a task enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), ...

Claims

1. It is a method, In an electronic device comprising a display device and one or more communication devices, Receiving a first message via one or more of the aforementioned communication devices, After receiving the first message, receiving a request to display the first message, In response to receiving the request to display the first message, In accordance with the determination that a set of prompt criteria, including a first prompt criterion that is satisfied when updated contact information corresponding to the first contactable user is received, is satisfied, the display device displays the following: The first message mentioned above, The first contactable user is to simultaneously display a visual indication that updated contact information is available, In accordance with the determination that the set of prompt criteria is not met for the first contactable user, the display device displays: Displaying the first message without displaying the visual indication that the first contactable user has updated contact information available, Detecting the activation of the visual indication that the first contactable user has updated contact information available, In response to detecting the activation of the visual indication that the first contactable user has updated contact information available, A method comprising: determining that the first contactable user does not correspond to an existing entry in the set of contactable users associated with the user of the electronic device, using the contact information to display an option for the first contactable user to create a new entry in the set of contactable users associated with the user of the electronic device.

2. The method according to claim 1, wherein the set of prompt criteria includes a second prompt criterion that is satisfied when the first message is part of a messaging conversation in which the first contactable user is a participant.

3. Detecting the activation of the visual indication that the first contactable user has updated contact information available, In response to detecting the activation of the visual indication that the first contactable user has updated contact information available, The first contactable user corresponds to an existing entry in the set of contactable users associated with the user of the electronic device, and the received updated contact information includes a modified graphic representation of the first contactable user and a modified name of the first contactable user, and the multiple selectable options are: A selectable option for updating the existing entries in the set of contactable users associated with the user of the electronic device with the modified graphic representation of the first contactable user and the modified name of the first contactable user, A selectable option for updating the existing entries in the set of contactable users associated with the user of the electronic device with the modified graphic representation of the first contactable user, without updating them with the modified name of the first contactable user; The method according to claim 1 or 2, further comprising two or more of the following: an optional option for updating the existing entries in the set of contactable users associated with the user of the electronic device with the changed name of the first contactable user without updating them with the changed graphic representation of the first contactable user.

4. Detecting the activation of the visual indication that the first contactable user has updated contact information available, In response to detecting the activation of the visual indication that the first contactable user has updated contact information available, The method according to any one of claims 1 to 3, further comprising updating the existing entry with the modified graphic representation of the first contactable user in the set of contactable users associated with the user of the electronic device, in response to a determination that the received updated contact information includes a modified graphic representation of the first contactable user but does not include a modified name of the first contactable user.

5. Detecting the activation of the visual indication that the first contactable user has updated contact information available, In response to detecting the activation of the visual indication that the first contactable user has updated contact information available, The method according to any one of claims 1 to 4, further comprising updating the existing entry with the changed name of the first contactable user in the set of contactable users associated with the user of the electronic device, in response to a determination that the received updated contact information includes the changed name of the first contactable user but does not include a changed graphic representation of the first contactable user.

6. The received updated contact information includes a modified graphic representation of the first contactable user, the first contactable user corresponds to an existing entry in the set of contactable users associated with the user of the electronic device, and the method Receiving user input to update the existing entry using the modified graphic representation of the first contactable user, In response to receiving user input to update the existing entry using the modified graphic representation of the first contactable user, Updating the existing entry in the set of contactable users associated with the user of the electronic device using the modified graphic representation of the first contactable user, The method according to any one of claims 1 to 5, further comprising displaying selectable affordances that, when selected, enable the electronic device to automatically update the graphic representation of the first contactable user in the future.

7. The updated contact information includes the changed name or the changed graphic representation of the first contactable user, and the method is The method further includes updating the set of contactable users associated with the user of the electronic device with the modified name of the first contactable user or the modified graphic representation of the first contactable user. The method according to any one of claims 1 to 6, wherein the contact information in the set of contactable users associated with the user of the electronic device, including the modified name or the modified graphic representation, is available in multiple applications of the electronic device.

8. The electronic device is associated with the user, and the method is In response to receiving the request to display the first message, With respect to the first contactable user, in accordance with the determination that the set of sharing criteria, including the first sharing criteria that are met when the first contactable user is dealing with an authorized recipient, The method according to any one of claims 1 to 7, further comprising simultaneously displaying, along with the first message, an indication that the updated contact information of the user of the electronic device is available for transmission to the first contactable user.

9. The first message is received within a conversation involving the first contactable user and the second contactable user, and the electronic device receives updated contact information for the first contactable user and updated contact information for the second contactable user, and the method is Detecting the activation of the visual indication that the first contactable user has updated contact information available, In response to detecting the activation of the visual indication that the first contactable user has updated contact information available, A second visual indication that the first contactable user has updated contact information available, the second visual indication including a visual representation of at least a portion of the received updated contact information for the first contactable user, A third visual indication that the updated contact information is available to the second contactable user, the third visual indication including a visual representation of at least a portion of the received updated contact information for the second contactable user, The method according to any one of claims 1 to 8, further comprising displaying and

10. The method according to any one of claims 1 to 9, wherein the updated contact information of the first contactable user includes information corresponding to an avatar.

11. The method according to any one of claims 1 to 10, wherein the visual indication that the first contactable user has updated contact information is displayed simultaneously with a visual representation of at least a portion of a messaging conversation comprising a plurality of messages, the plurality of messages comprising a second message sent to the first contactable user and a third message received from the first contactable user.

12. A computer program that causes a computer to perform the method described in any one of claims 1 to 11.

13. It is an electronic device, A memory for storing the computer program described in claim 12, An electronic device comprising one or more processors capable of executing the computer program stored in the memory, wherein the electronic device is configured to communicate with a display device and one or more communication devices.

14. An electronic device configured to communicate with a display device and one or more communication devices, An electronic device comprising means for performing the method according to any one of claims 1 to 11.