User interface for communication using electronic devices

By dynamically adjusting the user interface in the display generation components and input devices of electronic devices, the problem of complex and inefficient communication interfaces in the prior art is solved, realizing a faster and more efficient communication method and improving device efficiency and user experience.

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

Patent Information

Application Number
CN202511962290.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-12-18
Filing Date
2024-03-21
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

Existing technologies for communication in electronic devices have complex and inefficient user interfaces, resulting in wasted user time and device energy, especially in battery-powered devices.

Method used

By dynamically adjusting the user interface to adapt to different communication contexts in a computer system that displays generation components and input devices, and by detecting and responding to user input, a fast and efficient method and interface for editing and managing real-time communications is provided.

Benefits of technology

It reduces the cognitive burden on users, improves device efficiency and battery life, enhances user satisfaction, and reduces processor and battery power waste caused by redundant input.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121657908A_ABST
    Figure CN121657908A_ABST
Patent Text Reader

Abstract

The present disclosure generally relates to techniques and user interfaces for communicating using an electronic device. The method includes: at a computer system in communication with a display generation component: receiving an incoming real-time communication from an entity; and in response to receiving the incoming real-time communication and before the incoming real-time communication is accepted, displaying, via the display generation component, a respective representation of the entity, including: in accordance with a determination that the first set of criteria is satisfied, displaying, via the display generation component, a first representation of the entity; and displaying a second representation of the entity via the display generation component in accordance with a determination that the second set of criteria is satisfied.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the invention patent application filed on March 21, 2024, with application number 202480031325.8 and title "User Interface for Communication Using Electronic Devices". Cross-references to related applications

[0002] This application claims priority to U.S. Patent Application No. 18 / 544,401, filed December 18, 2023, entitled “USER INTERFACES FOR COMMUNICATION USING ELECTRONIC DEVICES,” and U.S. Provisional Patent Application No. 63 / 465,203, filed May 9, 2023, entitled “USER INTERFACES FOR COMMUNICATION USING ELECTRONIC DEVICES,” the entire contents of each of these patent applications are incorporated herein by reference. Technical Field

[0003] This disclosure relates generally to computer user interfaces, and more specifically to techniques for using electronic devices to communicate (including audio and video communications). Background Technology

[0004] Electronic devices provide user interfaces for various types of communication, including telephone calls, video calls, and text messages. Summary of the Invention

[0005] However, some technologies used to provide user interfaces for communicating with electronic devices are often cumbersome and inefficient. For example, some existing technologies use complex and time-consuming user interfaces that may include multiple buttons or keystrokes. These existing technologies require more time than necessary, resulting in wasted user time and device power. This latter consideration is particularly important in battery-powered devices.

[0006] Therefore, this technology provides electronic devices with faster and more efficient methods and interfaces for communication. Such methods and interfaces can optionally supplement or replace other methods of communication using electronic devices. These methods and interfaces reduce the cognitive burden on users and result in more efficient human-machine interfaces. For battery-powered computing devices, such methods and interfaces save power and increase the time interval between battery charging.

[0007] According to some embodiments, a method is described. The method includes: at a computer system communicating with a display generation component and one or more input devices: displaying a representation selection user interface via the display generation component; while displaying the representation selection user interface, detecting via the one or more input devices a request to edit a corresponding user representation displayed at a remote computer system in a corresponding communication context; and in response to detecting the request to edit the corresponding user representation: based on determining that the corresponding communication context is a first communication context, displaying a first representation editing user interface via the display generation component, the first representation editing user interface being used to edit a first user representation displayed by the remote computer system in the first communication context; and based on determining that the corresponding communication context is a second communication context different from the first communication context, displaying a second representation editing user interface via the display generation component, the second representation editing user interface being used to edit a second user representation displayed by the remote computer system in the second communication context.

[0008] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: displaying a representation selection user interface via the display generation component; detecting, while displaying the representation selection user interface, a request via the one or more input devices to edit a corresponding user representation displayed at a remote computer system in a corresponding communication context; in response to detecting the request to edit the corresponding user representation: based on determining that the corresponding communication context is a first communication context, displaying a first representation editing user interface via the display generation component for editing the first user representation displayed by the remote computer system in the first communication context; and based on determining that the corresponding communication context is a second communication context different from the first communication context, displaying a second representation editing user interface via the display generation component for editing a second user representation displayed by the remote computer system in the second communication context.

[0009] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: displaying a representation selection user interface via the display generation component; detecting, while displaying the representation selection user interface, a request via the one or more input devices to edit a corresponding user representation displayed at a remote computer system in a corresponding communication context; in response to detecting the request to edit the corresponding user representation: based on determining that the corresponding communication context is a first communication context, displaying a first representation editing user interface via the display generation component for editing the first user representation displayed by the remote computer system in the first communication context; and based on determining that the corresponding communication context is a second communication context different from the first communication context, displaying a second representation editing user interface via the display generation component for editing a second user representation displayed by the remote computer system in the second communication context.

[0010] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: 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 representation selection user interface via the display generation component; detecting, while displaying the representation selection user interface, a request to edit a corresponding user representation displayed at a remote computer system in a corresponding communication context via the one or more input devices; and in response to detecting the request to edit the corresponding user representation: based on determining that the corresponding communication context is a first communication context, displaying a first representation editing user interface via the display generation component, the first representation editing user interface being used to edit the first user representation displayed by the remote computer system in the first communication context; and based on determining that the corresponding communication context is a second communication context different from the first communication context, displaying a second representation editing user interface via the display generation component, the second representation editing user interface being used to edit the second user representation displayed by the remote computer system in the second communication context.

[0011] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: components for displaying a representation selection user interface via the display generation component; components for detecting, while displaying the representation selection user interface, a request via the one or more input devices to edit a corresponding user representation displayed at a remote computer system in a corresponding communication context; and components for performing the following operations in response to detecting the request to edit the corresponding user representation: displaying a first representation editing user interface via the display generation component, the first representation editing user interface being used to edit a first user representation displayed by the remote computer system in the first communication context, based on determining that the corresponding communication context is a first communication context; and displaying a second representation editing user interface via the display generation component, the second representation editing user interface being used to edit a second user representation displayed by the remote computer system in the second communication context, based on determining that the corresponding communication context is a second communication context different from the first communication context.

[0012] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to execute by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: displaying a representation selection user interface via the display generation component; detecting, while displaying the representation selection user interface, a request via the one or more input devices to edit a corresponding user representation displayed at a remote computer system in a corresponding communication context; and in response to detecting the request to edit the corresponding user representation: based on determining that the corresponding communication context is a first communication context, displaying a first representation editing user interface via the display generation component for editing the first user representation displayed by the remote computer system in the first communication context; and based on determining that the corresponding communication context is a second communication context different from the first communication context, displaying a second representation editing user interface via the display generation component for editing a second user representation displayed by the remote computer system in the second communication context.

[0013] According to some embodiments, a method is described. The method includes: at a computer system communicating with a display generation component: receiving an incoming real-time communication from an entity; and in response to receiving the incoming real-time communication, and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component, including: displaying the first representation of the entity via the display generation component based on determining a first set of criteria satisfied, wherein the first set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity; and displaying the second representation of the entity via the display generation component based on determining a second set of criteria satisfied, wherein the second set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity.

[0014] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component. The one or more programs include instructions for: receiving incoming real-time communication from an entity; and, in response to receiving the incoming real-time communication and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component, according to: determining a first set of criteria that satisfy a first set of standards, wherein the first set of standards includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity; and determining a second set of criteria that satisfy a second set of standards, wherein the second set of standards includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity; and displaying the second representation of the entity via the display generation component.

[0015] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component. The one or more programs include instructions for: receiving incoming real-time communication from an entity; and, in response to receiving the incoming real-time communication and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component, according to: determining a first set of criteria that satisfy a first set of standards, wherein the first set of standards includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity; and determining a second set of criteria that satisfy a second set of standards, wherein the second set of standards includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity; and displaying the second representation of the entity via the display generation component, according to a second set of criteria that satisfy a second set of standards that satisfy a second representation of the entity that is different from the first representation of the entity.

[0016] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: 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 incoming real-time communication from an entity; and, in response to receiving the incoming real-time communication and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component, including: displaying the first representation of the entity via the display generation component based on determining a first set of criteria satisfied, wherein the first set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity; and displaying the second representation of the entity via the display generation component based on determining a second set of criteria satisfied, wherein the second set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity.

[0017] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: components for receiving incoming real-time communication from an entity; and components for: in response to receiving the incoming real-time communication, and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component, including: displaying the first representation of the entity via the display generation component based on determining a first set of criteria satisfied, wherein the first set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity; and displaying the second representation of the entity via the display generation component based on determining a second set of criteria satisfied, wherein the second set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity.

[0018] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to execute by one or more processors of a computer system communicating with a display generation component. The one or more programs include instructions for: receiving incoming real-time communication from an entity; and, in response to receiving the incoming real-time communication and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component, including: displaying the first representation of the entity via the display generation component based on determining a first set of criteria satisfied, wherein the first set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity; and displaying the second representation of the entity via the display generation component based on determining a second set of criteria satisfied, wherein the second set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity.

[0019] According to some embodiments, a method is described. The method includes: at a computer system communicating with a display generation component and one or more input devices: while a first real-time communication is in progress, simultaneously displaying via the display generation component: a real-time communication user interface having information about the first real-time communication; and an alert that a second real-time communication is in progress; detecting via the one or more input devices a set of one or more inputs, the set of one or more inputs including a request to connect to the incoming second real-time communication; and in response to detecting the set of one or more inputs: connecting to the second real-time communication, and placing the first real-time communication in a hold state; and simultaneously displaying via the display generation component: the real-time communication user interface having information about the second real-time communication; and an alert that the first real-time communication is in a hold state.

[0020] According to some embodiments, a non-transitory computer-readable storage medium is described. This non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: simultaneously displaying, via the display generation component, a real-time communication user interface having information about the first real-time communication while a first real-time communication is in progress; and an alert indicating that a second real-time communication is in progress; detecting, via the one or more input devices, a set of one or more inputs including a request to connect to the incoming second real-time communication; and, in response to detecting the set of one or more inputs, connecting to the second real-time communication and placing the first real-time communication in a hold state; and simultaneously displaying, via the display generation component, the real-time communication user interface having information about the second real-time communication; and an alert indicating that the first real-time communication is in a hold state.

[0021] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: simultaneously displaying, via the display generation component, a real-time communication user interface having information about the first real-time communication while a first real-time communication is in progress; and an alert indicating that a second real-time communication is in progress; detecting, via the one or more input devices, a set of one or more inputs including a request to connect to the incoming second real-time communication; and, in response to detecting the set of one or more inputs: connecting to the second real-time communication and placing the first real-time communication in a hold state; and simultaneously displaying, via the display generation component, the real-time communication user interface having information about the second real-time communication; and an alert indicating that the first real-time communication is in a hold state.

[0022] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: 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: simultaneously displaying via the display generation component, while a first real-time communication is in progress: a real-time communication user interface having information about the first real-time communication; and an alert that a second real-time communication is in progress; detecting via the one or more input devices a set of one or more inputs, the set of one or more inputs including a request to connect to the incoming second real-time communication; and, in response to detecting the set of one or more inputs: connecting to the second real-time communication, and placing the first real-time communication in a hold state; and simultaneously display via the display generation component: the real-time communication user interface having information about the second real-time communication; and an alert that the first real-time communication is in a hold state.

[0023] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: components for simultaneously displaying, via the display generation component, the following while a first real-time communication is in progress: a real-time communication user interface having information about the first real-time communication; and an alert that a second real-time communication is incoming; components for detecting a set of one or more inputs via the one or more input devices, the set of one or more inputs including a request to connect to the incoming second real-time communication; and components for performing the following operations in response to detecting the set of one or more inputs: connecting to the second real-time communication and placing the first real-time communication in a hold state; and simultaneously displaying via the display generation component: the real-time communication user interface having information about the second real-time communication; and an alert that the first real-time communication is in a hold state.

[0024] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: simultaneously displaying, via the display generation component, a real-time communication user interface having information about the first real-time communication while a first real-time communication is in progress; and an alert that a second real-time communication is in progress; detecting, via the one or more input devices, a set of one or more inputs including a request to connect to the incoming second real-time communication; and, in response to detecting the set of one or more inputs: connecting to the second real-time communication, and placing the first real-time communication in a hold state; and simultaneously displaying, via the display generation component, the real-time communication user interface having information about the second real-time communication; and an alert that the first real-time communication is in a hold state.

[0025] According to some implementations, a method is described. The method includes: at a computer system communicating with a display generation component: receiving an incoming real-time communication from an entity without responding to the incoming real-time communication at the computer system; and after receiving the incoming real-time communication without responding to the incoming real-time communication at the computer system, and while the voice message is being recorded by the entity, displaying via the display generation component a transcribed text of the voice message being recorded by the entity.

[0026] According to some embodiments, a non-transitory computer-readable storage medium is described. This non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component. The one or more programs include instructions for: receiving incoming real-time communication from an entity without responding to the incoming real-time communication at the computer system; and, after receiving the incoming real-time communication without responding to it at the computer system, displaying, via the display generation component, a transcribed text of the voice message being recorded by the entity.

[0027] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component. The one or more programs include instructions for: receiving incoming real-time communication from an entity without responding to the incoming real-time communication at the computer system; and, after receiving the incoming real-time communication without responding to it at the computer system, displaying, via the display generation component, a transcribed text of the voice message being recorded by the entity.

[0028] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: 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 incoming real-time communication from an entity without responding to the incoming real-time communication at the computer system; and, after receiving the incoming real-time communication without responding to it at the computer system, displaying, via the display generation component, a transcribed text of the voice message being recorded by the entity.

[0029] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: components for receiving incoming real-time communication from an entity without responding to the incoming real-time communication at the computer system level; and components for, after receiving the incoming real-time communication without responding to it at the computer system level, and while the voice message is being recorded by the entity, displaying a transcribed text of the voice message being recorded by the entity via the display generation component.

[0030] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component. The one or more programs include instructions for: receiving incoming real-time communication from an entity without responding to the incoming real-time communication at the computer system; and, after receiving the incoming real-time communication without responding to it at the computer system, displaying, via the display generation component, a transcribed text of the voice message being recorded by the entity.

[0031] According to some implementations, a method is described. The method includes: at a computer system communicating with a display generation component and one or more input devices: attempting to initiate outgoing real-time communication with an entity; in response to determining that the attempt to initiate real-time communication with the entity is unsuccessful, displaying a video message user interface element via the display generation component; detecting a selection of the video message user interface element via the one or more input devices; and in response to detecting a selection of the video message user interface element, initiating a process including recording video and transmitting the video to the entity.

[0032] According to some embodiments, a non-transitory computer-readable storage medium is described. This non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: attempting to initiate outgoing real-time communication with an entity; displaying a video message user interface element via the display generation component in response to determining that the attempt to initiate real-time communication with the entity has failed; detecting a selection of the video message user interface element via the one or more input devices; and in response to detecting a selection of the video message user interface element, initiating a process including recording video and transmitting the video to the entity.

[0033] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: attempting to initiate outgoing real-time communication with an entity; displaying a video message user interface element via the display generation component in response to determining that the attempt to initiate real-time communication with the entity has failed; detecting a selection of the video message user interface element via the one or more input devices; and in response to detecting a selection of the video message user interface element, initiating a process including recording video and transmitting the video to the entity.

[0034] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: 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: attempting to initiate outgoing real-time communication with an entity; displaying a video message user interface element via the display generation component in response to determining that the attempt to initiate real-time communication with the entity has failed; detecting a selection of the video message user interface element via the one or more input devices; and in response to detecting a selection of the video message user interface element, initiating a process including recording video and transmitting the video to the entity.

[0035] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: components for attempting to initiate outgoing real-time communication with an entity; components for displaying a video message user interface element via the display generation component in response to determining that the attempt to initiate real-time communication with the entity has failed; components for detecting selection of the video message user interface element via the one or more input devices; and components for initiating a process including recording video and transmitting the video to the entity in response to detecting selection of the video message user interface element.

[0036] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions for: attempting to initiate outgoing real-time communication with an entity; displaying a video message user interface element via the display generation component in response to determining that the attempt to initiate real-time communication with the entity has failed; detecting a selection of the video message user interface element via the one or more input devices; and in response to detecting a selection of the video message user interface element, initiating a process including recording video and transmitting the video to the entity.

[0037] Executable instructions for performing these functions may optionally be included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.

[0038] Therefore, providing devices with faster and more efficient methods and interfaces for communication improves the effectiveness, efficiency, and user satisfaction of such devices. These methods and interfaces can complement or replace other methods of communication using electronic devices. Attached Figure Description

[0039] To better understand the various described embodiments, reference should be made to the following detailed description in conjunction with the accompanying drawings, wherein similar reference numerals in all the drawings indicate corresponding parts.

[0040] Figure 1A This is a block diagram illustrating a portable multi-functional device with a touch-sensitive display according to some implementation schemes.

[0041] Figure 1B This is a block diagram illustrating exemplary components for event handling according to some implementation schemes.

[0042] Figure 2 Examples of portable multi-functional devices with touchscreens according to some implementation schemes are shown.

[0043] Figure 3 This is a block diagram of an exemplary multifunctional device having a display and a touch-sensitive surface according to some implementation schemes.

[0044] Figure 4A An exemplary user interface for a menu on an application on a portable multifunction device, according to some implementations, is shown.

[0045] Figure 4B An exemplary user interface for a multifunctional device having a touch-sensitive surface separate from the display is illustrated according to some embodiments.

[0046] Figure 5A Examples of personal electronic devices according to some implementation schemes are shown.

[0047] Figure 5B This is a block diagram illustrating a personal electronic device according to some implementation schemes.

[0048] Figure 5C An exemplary diagram illustrating a communication session between electronic devices according to some implementation schemes is shown.

[0049] Figures 6A to 6AG An example of a user interface for editing a user representation used for communication context is shown according to some implementation schemes.

[0050] Figure 7 This is a flowchart illustrating a method for editing a user representation for a communication context, according to some implementation schemes.

[0051] Figures 8A to 8AEAn example of a user interface for displaying representations of entities in real-time communication, according to some implementation schemes, is shown.

[0052] Figure 9 This is a flowchart illustrating a method for displaying representations of entities used in real-time communication, according to some implementation schemes.

[0053] Figures 10A to 10G Examples of user interfaces for managing real-time communications are shown according to some implementation schemes.

[0054] Figure 11 This is a flowchart illustrating a method for managing real-time communications according to some implementation schemes.

[0055] Figures 12A to 12I An example of a user interface for providing transcribed text of voice messages, according to some implementation schemes, is shown.

[0056] Figure 13 This is a flowchart illustrating a method for providing transcribed text of voice messages according to some implementation schemes.

[0057] Figures 14A to 14K The user interface for video messaging is illustrated according to some implementation schemes.

[0058] Figure 15 This is a flowchart illustrating a method for video messaging according to some implementation schemes. Detailed Implementation

[0059] The following description illustrates exemplary methods, parameters, etc. However, it should be understood that such description is not intended to limit the scope of this disclosure, but is provided as a description of exemplary embodiments.

[0060] There is a need for electronic devices that provide efficient methods and interfaces for communicating using control electronic devices. In some embodiments, a user interface is displayed for editing a user representation of the communication context based on a selected representation. In some embodiments, a representation of the entity initiating the real-time communication is displayed, at least in part, based on a representation selected by the entity. In some embodiments, in response to a request to connect to an incoming second real-time communication during an ongoing first real-time communication, a computer system connects to the second real-time communication and provides an alert that the first real-time communication is in a hold state. In some embodiments, a transcribed text of the voice message is provided while the voice message is being recorded. In some embodiments, in response to an unsuccessful attempt to initiate real-time communication with an entity, user interface elements are provided for initiating a process of recording a video message and transmitting it to the entity. Such techniques can reduce the cognitive burden on users communicating using electronic devices, thereby increasing productivity. Furthermore, such techniques can reduce processor power and battery power otherwise wasted on redundant user input.

[0061] under, Figures 1A to 1B , Figure 2 , Figure 3 , Figures 4A to 4B and Figures 5A to 5C A description of an exemplary device is provided, which utilizes technologies for communication with electronic devices.

[0062] Figures 6A to 6AG An exemplary user interface for editing a user representation used in a communication context is shown. Figure 7 This is a flowchart illustrating a method for editing a user representation for a communication context, according to some implementation schemes. Figures 6A to 6AG The user interface in the document is used to illustrate the processes described below, including Figure 7 The process in.

[0063] Figures 8A to 8AE An exemplary user interface is shown for displaying representations of entities in real-time communication. Figure 9 This is a flowchart illustrating a method for displaying representations of entities used in real-time communication, according to some implementation schemes. Figures 8A to 8AE The user interface in the document is used to illustrate the processes described below, including Figure 9 The process in.

[0064] Figures 10A to 10G An exemplary user interface for managing real-time communications is shown. Figure 11 This is a flowchart illustrating a method for managing real-time communications according to some implementation schemes. Figures 10A to 10G The user interface in the document is used to illustrate the processes described below, including Figure 11 The process in.

[0065] Figures 12A to 12I An exemplary user interface for providing transcribed text of voice messages is shown. Figure 13 This is a flowchart illustrating a method for providing transcribed text of voice messages according to some implementation schemes. Figures 12A to 12I The user interface in the document is used to illustrate the processes described below, including Figure 13 The process in.

[0066] Figures 14A to 14K An exemplary user interface for video messaging is shown. Figure 15 This is a flowchart illustrating a method for video messaging according to some implementation schemes. Figures 14A to 14K The user interface in the document is used to illustrate the processes described below, including Figure 15 The process in.

[0067] The processes described below enhance device operability and make user-device interfaces more efficient through various technologies (e.g., by helping users provide appropriate input and reducing user errors when operating / interacting with the device), including providing improved visual feedback to users, reducing the amount of input required to perform operations, providing additional control options without cluttering the user interface with additional displayed controls, performing operations when a set of conditions are met without requiring further user input, and / or additional technologies. These technologies also reduce power consumption and extend device battery life by enabling users to use the device more quickly and efficiently.

[0068] Furthermore, in a method described herein where one or more steps depend on the satisfaction of one or more conditions, it should be understood that the described method can be repeated in multiple repetitions such that, during the repetitions, all conditions determining the steps in the method are satisfied in different repetitions of the method. For example, if the method requires performing a first step (if the conditions are satisfied) and a second step (if the conditions are not satisfied), those skilled in the art will know that the stated steps are repeated until both conditions are satisfied and not satisfied (in no particular order). Thus, a method described as having one or more steps depending on the satisfaction of one or more conditions can be rewritten as a method that repeats until each condition described in the method is satisfied. However, this does not require the system or computer-readable medium to declare that the system or computer-readable medium contains instructions for performing discretionary operations based on the satisfaction of the corresponding one or more conditions, and thus to determine whether possible conditions have been satisfied without explicitly repeating the steps of the method until all conditions determining the steps in the method are satisfied. Those skilled in the art will also understand that, similar to a method having discretionary steps, a system or computer-readable storage medium can repeat the steps of the method multiple times as needed to ensure that all discretionary steps have been performed.

[0069] Although the following description uses the terms "first," "second," etc., to describe various elements, these elements should not be limited by the terms. In some embodiments, these terms are used to distinguish one element from another. For example, a first touch may be referred to as a second touch, and similarly, a second touch may be referred to as a first touch, without departing from the scope of the various described embodiments. In some embodiments, a first touch and a second touch are two separate references to the same touch. In some embodiments, both a first touch and a second touch are touches, but they are not the same touch.

[0070] The terminology used in the description of the various described embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various described embodiments and the appended claims, the singular forms “a” and “the” are intended to include the plural forms as well, unless the context expressly indicates otherwise. It will also be understood that the term “and / or” as used herein refers to and covers any and all possible combinations of one or more of the associated listed items. It will also be understood that the terms “comprising” and / or “including” as used in this specification specify the presence of the 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.

[0071] Depending on the context, the term "if" may optionally be interpreted as meaning "when," "in," or "in response to determination" or "in response to detection." Similarly, depending on the context, the phrases "if it is determined..." or "if [the stated condition or event] is detected" may optionally be interpreted as meaning "in response to determination..." or "in response to detection of [the stated condition or event]."

[0072] Implementations of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some implementations, the device is a portable communication device, such as a mobile phone, that also includes other functionalities such as PDA and / or music player functionality. Exemplary implementations of portable multi-functional devices include, but are not limited to, the iPhone from Apple Inc., Cupertino, California. ® Devices, iPod Touch ® Devices and iPads ®Device. Alternatively, other portable electronic devices may be used, such as laptop computers or tablet computers with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads). It should also be understood that in some embodiments, the device is not a portable communication device, but a desktop computer with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads). In some embodiments, the electronic device is a computer system that communicates with a display generating component (e.g., via wireless or wired communication). The display generating component is configured to provide visual output, such as display via a CRT display, via an LED display, or via image projection. In some embodiments, the display generating component is integrated with the computer system. In some embodiments, the display generating component is separate from the computer system. As used herein, “display” content includes displaying content (e.g., video data rendered or decoded by display controller 156) by sending data (e.g., image data or video data) to an integrated or external display generating component via a wired or wireless connection to visually generate content.

[0073] In the following discussion, an electronic device including a display and a touch-sensitive surface is described. However, it should be understood that the electronic device may optionally include one or more other physical user interface devices, such as a physical keyboard, mouse, and / or joystick.

[0074] The device typically supports a variety of applications, such as one or more of the following: drawing applications, presentation applications, word processing applications, website creation applications, disk editing applications, spreadsheet applications, game applications, phone applications, video conferencing applications, email applications, instant messaging applications, fitness support applications, photo management applications, digital camera applications, digital video camera applications, web browsing applications, digital music player applications, and / or digital video player applications.

[0075] Various applications running on the device may optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface and the corresponding information displayed on the device may optionally be adjusted and / or varied for different applications, and / or within the respective applications. In this way, the device's common physical architecture (such as the touch-sensitive surface) may optionally utilize a user interface that is intuitive and clear to the user to support various applications.

[0076] Now let’s turn our attention to implementation schemes for portable devices with touch-sensitive displays. Figure 1AThis is a block diagram illustrating a portable multi-functional device 100 with a touch-sensitive display system 112 according to some embodiments. The touch-sensitive display 112 is sometimes referred to as a “touchscreen” for convenience, and is sometimes referred to as or called a “touch-sensitive display system.” Device 100 includes a memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral interface 118, RF circuitry 108, audio circuitry 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and an external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact strength sensors 165 for detecting the intensity of contact on device 100 (e.g., a touch-sensitive surface, such as the touch-sensitive display system 112 of device 100). Device 100 may optionally include one or more haptic output generators 167 for generating haptic output on device 100 (e.g., generating haptic output on a touch-sensitive surface such as the touch-sensitive display system 112 of device 100 or the touchpad 355 of device 300). These components may optionally communicate via one or more communication buses or signal lines 103.

[0077] As used in this specification and claims, the term "intensity" of contact on a tactile surface refers to the force or pressure (force per unit area) of a contact (e.g., finger contact) on a tactile surface, or to a substitute (alternative) for the force or pressure of a contact on a tactile surface. The intensity of contact has a range of values ​​that includes at least four different values ​​and more typically hundreds of different values ​​(e.g., at least 256). The intensity of contact may optionally be determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the tactile surface may optionally be used to measure the force at different points on the tactile surface. In some embodiments, force measurements from multiple force sensors are combined (e.g., weighted average) to determine the estimated contact force. Similarly, the pressure-sensitive tip of a stylus may optionally be used to determine the pressure of the stylus on the tactile surface. Alternatively, the size and / or change of the contact area detected on the touch-sensitive surface, the capacitance and / or change of the touch-sensitive surface adjacent to the contact, and / or the resistance and / or change of the touch-sensitive surface adjacent to the contact may be used as substitutes for the force or pressure of the contact on the touch-sensitive surface. In some embodiments, the substitute measurement of the contact force or pressure is used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurement result). In some embodiments, the substitute measurement of the contact force or pressure is converted into an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of the contact as an attribute of user input allows users to access additional device functionality that would otherwise be inaccessible to the user on a smaller device with limited physical space, which is used (e.g., on a touch-sensitive display) to display an indication and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls, such as knobs or buttons).

[0078] As used in this specification and claims, the term "haptic output" refers to a physical displacement of the device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., the housing), or a displacement of a component relative to the center of mass of the device, which is detected by the user using the user's tactile sense. For example, when the device or a component of the device comes into contact with a touch-sensitive surface (e.g., a finger, palm, or other part of the user's hand), the haptic output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in the physical characteristics of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or touchpad) may optionally be interpreted by the user as a "press-click" or "release-click" on a physically actuated button. In some cases, the user will feel a tactile sensation, such as a "press-click" or "release-click," even when a physically actuated button associated with the touch-sensitive surface, which has been physically pressed (e.g., displaced) by the user's movement, does not move. As another example, even when the smoothness of the tactile surface remains unchanged, the movement of the tactile surface can optionally be interpreted or sensed by the user as the "roughness" of the tactile surface. While such interpretations of touch by users will be limited by the individualized sensory perceptions of the user, many sensory perceptions of touch are common to most users. Therefore, when a tactile output is described as corresponding to a specific sensory perception of the user (e.g., "release click", "press click", "roughness"), unless otherwise stated, the generated tactile output corresponds to a physical displacement of the device or its components that will generate the sensory perception described by a typical (or common) user.

[0079] It should be understood that device 100 is merely an example of a portable multifunctional device, and device 100 may optionally have more or fewer components than those shown, may optionally combine two or more components, or may optionally have different configurations or arrangements of these components. Figure 1A The various components shown are implemented in hardware, software, or a combination of both, including one or more signal processing and / or application-specific integrated circuits.

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

[0081] Peripheral interface 118 can be used to couple the device's input and output peripherals to CPU 120 and memory 102. The one or more processors 120 run or execute various software programs (such as computer programs (e.g., including instructions)) and / or instruction sets stored in memory 102 to perform various functions of device 100 and process data. 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.

[0082] RF (Radio Frequency) circuit 108 receives and transmits RF signals, also known as electromagnetic signals. RF circuit 108 converts electrical signals into electromagnetic signals / converts electromagnetic signals into electrical signals, and communicates with communication networks and other communication devices via electromagnetic signals. RF circuit 108 optionally includes well-known circuitry for performing these functions, including but not limited to antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, codec chipsets, subscriber identity module (SIM) cards, memory, etc. RF circuit 108 optionally communicates wirelessly with networks (such as the Internet (also known as the World Wide Web (WWW)), intranets, and / or wireless networks (such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs))) and other devices. RF circuit 108 optionally includes well-known circuitry for detecting near-field communication (NFC) fields, such as via short-range communication radio components. Wireless communication may optionally use any of a variety of communication standards, protocols, and technologies, including but 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, Pure Data (EV-DO), HSPA, HSPA+, Dual-Unit HSPA (DC-HSPDA), Long Term Evolution (LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), and 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, email protocols (e.g., Internet Messaging Access Protocol (IMAP) and / or Post Office Protocol (POP)), instant messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence with Extended Utility (SIMPLE), Instant Messaging and Presence Service (IMPS)) and / or Short Message Service (SMS), or any other suitable communication protocol that has not been developed as of the date of this document submission.

[0083] Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between the user and device 100. Audio circuitry 110 receives audio data from peripheral interface 118, converts the audio data into electrical signals, and sends the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves that are audible to humans. Audio circuitry 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuitry 110 converts the electrical signals into audio data and sends the audio data to peripheral interface 118 for processing. Audio data may optionally be retrieved by peripheral interface 118 from and / or sent to memory 102 and / or RF circuitry 108. In some embodiments, audio circuitry 110 also includes a headset jack (e.g., ...). Figure 2 (212 in the text). The headset jack provides an interface between the audio circuitry 110 and a removable audio input / output peripheral device, such as an output-only headset or a headset with both outputs (e.g., a single-ear or dual-ear headset) and inputs (e.g., a microphone).

[0084] I / O subsystem 106 couples input / output peripherals (such as touchscreen 112 and other input control devices 116) on device 100 to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, optical 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. The one or more input controllers 160 receive electrical signals from / transmit electrical signals to the other input control device 116. Other input control devices 116 optionally include physical buttons (e.g., push-buttons, rocker buttons, etc.), dial pads, slide switches, joysticks, click dials, etc. In some embodiments, input controller 160 may be optionally coupled to (or not coupled to) any of the following: keyboard, infrared port, USB port, and pointing device such as mouse. One or more buttons (e.g., ... Figure 2 Optionally, 208 may include increase / decrease buttons for volume control of speaker 111 and / or microphone 113. These one or more buttons may optionally include a push-button (e.g., Figure 2(Ref. 206 in the original text). In some embodiments, the electronic device is a computer system that communicates with one or more input devices (e.g., via wireless communication, via wired communication). In some embodiments, the one or more input devices include a touch-sensitive surface (e.g., a touchpad, as part of a touch-sensitive display). In some embodiments, the one or more input devices include one or more camera sensors (e.g., one or more optical sensors 164 and / or one or more depth camera sensors 175), such as for tracking user gestures (e.g., hand gestures and / or air gestures) as input. In some embodiments, the one or more input devices are integrated with the computer system. In some embodiments, the one or more input devices are separate from the computer system. In some implementations, air gestures are gestures detected without the user touching an input element that is part of the device (or independently of an input element that is part of the device) and based on the detected movement of a part of the user's body through the air (including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of one of the user's hands relative to the user's other hand, and / or movement of the user's fingers relative to another of the user's fingers or a part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tapping gesture that includes the hand moving a predetermined amount and / or speed in a predetermined pose, or a shaking gesture that includes a predetermined speed or amount of rotation of a part of the user's body)).

[0085] A quick press of the push button optionally disengages the touchscreen 112 from its lock or optionally initiates a process of unlocking the device using gestures on the touchscreen, as described in U.S. Patent Application 11 / 322,549 (i.e., U.S. Patent No. 7,657,849), filed December 23, 2005, entitled "Unlocking a Device by Performing Gestures on an Unlock Image," the entire contents of which are incorporated herein by reference. A long press of the push button (e.g., 206) optionally powers the device 100 on or off. The functionality of one or more of these buttons may optionally be user-customizable. The touchscreen 112 is used to implement virtual buttons or soft buttons and one or more soft keyboards.

[0086] The touch-sensitive display 112 provides input and output interfaces between the device and the user. The display controller 156 receives electrical signals from and / or transmits electrical signals to the touchscreen 112. The touchscreen 112 displays visual output to the user. Visual output may optionally include graphics, text, icons, video, and any combination thereof (collectively, "graphics"). In some embodiments, some or all of the visual output may optionally correspond to user interface objects.

[0087] Touchscreen 112 has a touch-sensitive surface, sensor, or sensor array that accepts input from a user based on tactile and / or haptic contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction set in memory 102) detect contact on touchscreen 112 (and any movement or interruption of that contact) and translate the detected contact into interaction with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the contact point between touchscreen 112 and the user corresponds to the user's finger.

[0088] Touchscreen 112 may optionally employ LCD (Liquid Crystal Display) technology, LPD (Light Emitting Polymer Display) technology, or LED (Light Emitting Diode) technology, but other display technologies may be used in other embodiments. Touchscreen 112 and display controller 156 may optionally use any of a variety of touch sensing technologies now known or to be developed hereafter, along with other proximity sensor arrays or other elements for determining one or more points of contact with touchscreen 112, to detect contact and any movement or interruption thereto. These various touch sensing technologies include, but are not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies. In an exemplary embodiment, projected mutual capacitance sensing technology, such as that used in the iPhone from Apple Inc. (Cupertino, California), is used. ® and iPod Touch ® The technology used.

[0089] In some embodiments of the touchscreen 112, the touch-sensitive display may optionally resemble a multi-touch-sensitive touchpad described in the following U.S. patents: 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman et al.) and / or U.S. Patent Publication 2002 / 0015024A1, each of which is incorporated herein by reference in its entirety. However, the touchscreen 112 displays visual output from the device 100, while the touch-sensitive touchpad does not provide visual output.

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

[0091] The touchscreen 112 optionally has a video resolution exceeding 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. Users may optionally use any suitable object or accessory, such as a stylus, finger, etc., to interact with the touchscreen 112. In some embodiments, the user interface is designed to operate primarily through finger-based touch and gestures, which may be less precise than stylus-based input due to the larger contact area of ​​a finger on the touchscreen. In some embodiments, the device translates coarse finger-based input into precise pointer / cursor positioning or commands for performing the user-desired actions.

[0092] In some embodiments, in addition to the touchscreen, device 100 may optionally include a touchpad for activating or deactivating specific 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 may optionally be a touch-sensitive surface separate from the touchscreen 112, or an extension of the touch-sensitive surface formed by the touchscreen.

[0093] The device 100 also includes a power system 162 for supplying power to various components. The power system 162 may optionally include a power management system, one or more power sources (e.g., a battery, alternating current (AC)), a recharging system, a power fault detection circuit, a power converter or inverter, a power status indicator (e.g., a light-emitting diode (LED)), and any other components associated with the generation, management, and distribution of power in the portable device.

[0094] The device 100 may optionally also include one or more optical sensors 164. Figure 1AAn optical sensor 164 is shown coupled to an optical sensor controller 158 in the I / O subsystem 106. The optical sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The optical sensor 164 receives light projected through one or more lenses from the environment and converts the light into data representing an image. In conjunction with an imaging module 143 (also referred to as a camera module), the optical sensor 164 optionally captures still images or video. In some embodiments, the optical sensor is located on the rear of the device 100, facing away from a touchscreen display 112 on the front of the device, allowing the touchscreen display to be used as a viewfinder for still image and / or video image acquisition. In some embodiments, the optical sensor is located on the front of the device, allowing images of the user to be optionally acquired for video conferencing while the user views other video conferencing participants on the touchscreen display. In some embodiments, the positioning of the optical sensor 164 can be changed by the user (e.g., by rotating the lenses and sensors within the device housing), allowing a single optical sensor 164 to be used in conjunction with the touchscreen display for both video conferencing and still image and / or video image acquisition.

[0095] The device 100 may optionally also include one or more depth camera sensors 175. Figure 1A A depth camera sensor is shown coupled to a depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment to create a 3D model of an object (e.g., a face) within the 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 may optionally be used to determine depth maps of different portions of an image captured by imaging module 143. In some embodiments, the depth camera sensor is located at the front of device 100, such that user images with depth information can be optionally acquired for video conferencing while a user views other video conferencing participants on a touchscreen display, and selfies with depth map data can be captured. In some embodiments, depth camera sensor 175 is located at the rear of the device, or both the rear and front of device 100. In some embodiments, the positioning of depth camera sensor 175 can be changed by the user (e.g., by rotating a lens and sensor within the device housing), such that depth camera sensor 175 is used in conjunction with a touchscreen display for both video conferencing and still image and / or video image acquisition.

[0096] In some implementations, the depth map (e.g., a depth map image) contains information (e.g., values) relating to the distance of objects in the scene from the viewpoint (e.g., a camera, optical sensor, depth camera sensor). In one implementation of the depth map, each depth pixel defines the location of its corresponding two-dimensional pixel on the Z-axis of the viewpoint. In some implementations, the depth map is composed of pixels, where each pixel is defined by a value (e.g., 0 to 255). For example, a "0" value represents the pixel furthest from the viewpoint (e.g., a camera, optical sensor, depth camera sensor) in the "3D" scene, and a "255" value represents the pixel closest to the viewpoint in the "3D" scene. In other implementations, the depth map represents the distance between objects in the scene and the plane of the viewpoint. In some implementations, the depth map includes information about the relative depth of various features of the object of interest within the field of view of the depth camera (e.g., the relative depth of the eyes, nose, mouth, and ears of a user's face). In some implementations, the depth map includes information that enables the device to determine the contour of the object of interest along the z-direction.

[0097] The device 100 may optionally also include one or more contact strength sensors 165. Figure 1A A contact strength sensor is shown coupled to a strength sensor controller 159 in I / O subsystem 106. The contact strength sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electro-force sensors, piezoelectric sensors, optical force sensors, capacitive touch-sensitive surfaces, or other strength sensors (e.g., sensors for measuring the force (or pressure) of contact on a touch-sensitive surface). The contact strength sensor 165 receives contact strength information (e.g., pressure information or a substitute for pressure information) from the environment. In some embodiments, at least one contact strength sensor is arranged juxtaposed with or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact strength sensor is located on the rear of device 100, opposite to the touchscreen display 112 located on the front of device 100.

[0098] The device 100 may optionally also include one or more proximity sensors 166. Figure 1AA proximity sensor 166 coupled to a peripheral device interface 118 is shown. Alternatively, the proximity sensor 166 may be coupled to an input controller 160 in an I / O subsystem 106. The proximity sensor 166 may be configured as described in the following U.S. patent applications: 11 / 241,839, entitled "Proximity Detector In Handheld Device"; 11 / 240,788, entitled "Proximity Detector In Handheld Device"; 11 / 620,702, entitled "Using Ambient Light Sensor To Augment Proximity Sensor Output"; 11 / 586,862, entitled "Automated Response To And Sensing Of User Activity In Portable Devices"; and 11 / 638,251, entitled "Methods And Systems For Automatic Configuration Of Peripherals", the entire contents of which are incorporated herein by reference. In some implementations, when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call), the proximity sensor is turned off and the touchscreen 112 is disabled.

[0099] The device 100 may optionally also include one or more tactile output generators 167. Figure 1A A haptic output generator coupled to a haptic feedback controller 161 in I / O subsystem 106 is shown. The haptic output generator 167 optionally includes one or more electroacoustic devices such as speakers or other audio components; and / or electromechanical devices for converting energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other haptic output generating components (e.g., components for converting electrical signals into haptic outputs on the device). A contact intensity sensor 165 receives haptic feedback generation instructions from a haptic feedback module 133 and generates a haptic output on device 100 that can be felt by a user of device 100. In some embodiments, at least one haptic output generator is juxtaposed or adjacent to a haptic surface (e.g., haptic display system 112) and optionally generates the haptic output by moving the haptic surface vertically (e.g., in / outward from the surface of device 100) or laterally (e.g., backward and forward in the same plane as the surface of device 100). In some embodiments, at least one haptic output generator sensor is located on the rear of the device 100, opposite to the touch screen display 112 located on the front of the device 100.

[0100] The device 100 may optionally also include one or more accelerometers 168. Figure 1A An accelerometer 168 coupled to a peripheral device interface 118 is shown. Alternatively, the accelerometer 168 may be coupled to an input controller 160 in an I / O subsystem 106. The accelerometer 168 may be configured as described in the following U.S. Patent Publications: 20050190059, entitled "Acceleration-based Theft Detection System for Portable Electronic Devices" and 20060017692, entitled "Methods And Apparatuses For Operating A Portable DeviceBased On An Accelerometer," both of which are incorporated herein by reference in their entirety. In some embodiments, information is displayed on a touchscreen display in portrait or landscape view based on analysis of data received from one or more accelerometers. Device 100 may optionally include, in addition to the accelerometer 168, a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for acquiring information about the location and orientation (e.g., portrait or landscape) of device 100.

[0101] In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a contact / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and an application program (or instruction set) 136. Furthermore, in some embodiments, memory 102 ( Figure 1A ) or 370 ( Figure 3 Storage device / global internal state 157, such as Figure 1A and Figure 3 As shown in the figure. Device / global internal state 157 includes one or more of the following: active application state, which indicates which applications (if any) are currently active; display state, indicating what applications, views or other information occupy various areas of the touch screen display 112; sensor state, including information obtained from various sensors and input control devices 116 of the device; and position information relating to the device's position and / or orientation.

[0102] The operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or embedded operating systems such as VxWorks) includes various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware and software components.

[0103] The communication module 128 facilitates communication with other devices via one or more external ports 124 and includes various software components for processing data received by the RF circuitry 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) are adapted to be directly coupled to other devices or indirectly coupled via a network (e.g., the Internet, Wireless LAN, etc.). In some embodiments, the external port is for use with an iPod. ® (Trademark of Apple Inc.) The same or similar and / or compatible multi-pin (e.g., 30-pin) connectors used in Apple Inc. devices.

[0104] The contact / motion module 130 optionally detects contact with the touchscreen 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). The contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether a contact has occurred (e.g., detecting a finger press event), determining the contact intensity (e.g., the force or pressure of the contact, or an alternative to force or pressure), determining whether there is movement of the contact and tracking movement on 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 lift event or a contact break). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point optionally includes determining the rate (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point, the movement of which is represented by a series of contact data. These operations can optionally be applied to single-point contact (e.g., single-finger contact) or simultaneous multi-point contact (e.g., "multi-touch" / multiple-finger contact). In some implementations, the contact / motion module 130 and the display controller 156 detect contact on the touchpad.

[0105] In some implementations, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an operation has been performed by the user (e.g., determining whether the user has “clicked” an icon). In some implementations, at least a subset of the intensity thresholds is determined based on software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a specific physical actuator and can be adjusted without changing the physical hardware of device 100). For example, the mouse “click” threshold of a touchpad or touchscreen can be set to any threshold in a wide range of predefined thresholds without changing the touchpad or touchscreen display hardware. Additionally, in some specific implementations, the user of the device is provided with software settings for adjusting one or more intensity thresholds in a set of intensity thresholds (e.g., by adjusting the individual intensity thresholds and / or by adjusting multiple intensity thresholds at once using system-level clicks on the “intensity” parameter).

[0106] The touch / motion module 130 optionally detects gesture input performed by the user. Different gestures on a touch-sensitive surface have different contact patterns (e.g., different movements, timings, and / or intensities of the detected contact). Therefore, gestures can be detected optionally by detecting specific contact patterns. For example, detecting a finger tap gesture includes: detecting a finger press event, and then detecting a finger lift-off (lift-away) event at the same (or substantially the same) location as the finger press event (e.g., at the location of an icon). As another example, detecting a finger swipe gesture on a touch-sensitive surface includes: detecting a finger press event, then detecting one or more finger drag events, and subsequently detecting a finger lift-off (lift-away) event.

[0107] The graphics module 132 includes various known software components for rendering and displaying graphics on the touchscreen 112 or other displays, including components for altering the visual impact of the displayed graphics (e.g., brightness, transparency, saturation, contrast, or other visual properties). 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, videos, animations, etc.

[0108] In some implementations, the graphics module 132 stores data representing the graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module 132 receives one or more codes from applications, etc., specifying the graphics to be displayed, and also receives coordinate data and other graphic attribute data if necessary, and then generates screen image data for output to the display controller 156.

[0109] The haptic feedback module 133 includes various software components for generating instructions which are used by the haptic output generator 167 to generate haptic output at one or more locations on the device 100 in response to user interaction with the device 100.

[0110] Optionally, the text input module 134, a component of the graphics module 132, provides a soft keyboard for entering text in various applications, such as the contact module 137, email client module 140, IM module 141, browser module 147, and any other application that requires text input.

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

[0112] Application 136 may optionally include the following modules (or instruction sets) or subsets or supersets thereof: • Contacts module 137 (sometimes called address book or contact list); • Telephone module 138; • Video conferencing module 139; • Email client module 140; • Instant Messaging (IM) module 141; • Fitness support module 142; • Camera module 143 for still images and / or video images; • Image management module 144; • Video player module; • Music player module; • Browser module 147; • Calendar module 148; • Widget module 149, which may optionally include one or more of the following: weather widget 149-1, stock market widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5 and other widgets acquired by the user, as well as user-created widget 149-6; • Widget creator module 150 for creating user-created widgets 149-6; • Search module 151; • Video and music player module 152, which combines a video player module and a music player module; • Memo module 153; • Map module 154; and / or • Online video module 155.

[0113] Examples of other applications 136 that may be optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, rendering applications, Java-enabled applications, encryption, digital rights management, speech recognition, and speech duplication.

[0114] In conjunction with the touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, the contact module 137 is optionally used to manage an address book or contact list (e.g., in the application internal state 192 of the contact module 137 stored in memory 102 or memory 370), including: adding one or more names to the address book; deleting names from the address book; associating phone numbers, email addresses, physical addresses, or other information with names; associating images with names; categorizing and classifying names; providing phone numbers or email addresses to initiate and / or facilitate communications via the telephone module 138, video conferencing module 139, email client module 140, or IM module 141; and so on.

[0115] Combining 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, telephone module 138 is optionally used to input character sequences corresponding to telephone numbers, access one or more telephone numbers in contact module 137, modify input telephone numbers, dial corresponding telephone numbers, initiate conversations, and disconnect or hang up when a conversation is completed. As described above, wireless communication may optionally use any of a variety of communication standards, protocols, and technologies.

[0116] Combining RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132, text input module 134, contact module 137, and telephone module 138, video conferencing module 139 includes executable instructions to initiate, conduct, and terminate video conferences between the user and one or more other participants based on user instructions.

[0117] Incorporating RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user commands. Combined with image management module 144, email client module 140 makes it very easy to create and send emails containing still images or video images captured by camera module 143.

[0118] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for performing the following operations: entering a character sequence corresponding to an instant message, modifying previously entered characters, sending a corresponding instant message (e.g., using Short Message Service (SMS) or Multimedia Messaging Service (MMS) protocols for telephone-based instant messaging or using XMPP, SIMPLE, or IMPS for internet-based instant messaging), receiving an instant message, and viewing received instant messages. In some embodiments, the sent and / or received instant messages may optionally include graphics, photographs, audio files, video files, and / or other attachments supported in MMS and / or Enhanced Messaging Services (EMS). As used herein, “instant messaging” refers to both telephone-based messages (e.g., messages sent using SMS or MMS) and internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0119] Incorporating RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module, fitness support module 142 includes executable instructions for performing the following operations: creating fitness activities (e.g., with time, distance, and / or calorie burning goals); communicating with fitness sensors (exercise equipment); receiving fitness sensor data; calibrating sensors used to monitor fitness; selecting and playing music for fitness activities; and displaying, storing, and transmitting fitness data.

[0120] In conjunction with the touchscreen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, the camera module 143 includes executable instructions for performing the following operations: capturing still images or videos (including video streams) and storing them in memory 102, modifying the characteristics of still images or videos, or deleting still images or videos from memory 102.

[0121] Incorporating the touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and camera module 143, the image management module 144 includes executable instructions for performing operations such as arranging, modifying (e.g., editing) or otherwise manipulating, marking, deleting, presenting (e.g., in a digital slideshow or album), and storing still images and / or video images.

[0122] Incorporating RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, browser module 147 includes executable instructions for performing the following operations: browsing the Internet according to user instructions, including searching, linking to, receiving, and displaying web pages or portions thereof, as well as links to attachments and other files on web pages.

[0123] Combining RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, calendar module 148 includes executable instructions to create, display, modify, and store calendars and associated data (e.g., calendar entries, to-dos, etc.) according to user instructions.

[0124] 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, widget module 149 is optionally a microapplication downloaded and used by a user (e.g., weather widget 149-1, stock market widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) or a user-created microapplication (e.g., user-created widget 149-6). In some embodiments, the widget includes HTML (Hypertext Markup Language) files, CSS (Cascading Style Sheets) files, and JavaScript files. In some embodiments, the widget includes XML (Extensible Markup Language) files and JavaScript files (e.g., Yahoo! widgets).

[0125] Incorporating RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, widget creator module 150 can optionally be used by the user to create widgets (e.g., turning a user-specified section of a webpage into a widget).

[0126] In conjunction with the touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, the search module 151 includes executable instructions for performing the following operations: searching the memory 102 for text, music, sound, images, videos, and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) according to user instructions.

[0127] Incorporating touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions allowing users to download and play back 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 back video (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.).

[0128] Combining the touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, the memo module 153 includes executable instructions for creating and managing memos, to-do items, etc., according to user instructions.

[0129] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 may optionally be used to receive, display, modify, and store maps and map-related data (e.g., driving directions, data related to shops and other points of interest at or near a specific location, and other location-based data) according to user instructions.

[0130] Incorporating touchscreen 112, display controller 156, touch / 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, the online video module 155 includes instructions for performing the following operations: allowing users to access, browse, receive (e.g., via streaming and / or downloading), play back (e.g., on the touchscreen or on an external display connected via external port 124), send emails with links to specific online videos, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, an instant messaging module 141 is used instead of the email client module 140 to send links to specific online videos. Additional descriptions of the online video application can be found in 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.

[0131] Each of the modules and applications described above corresponds to an executable set of instructions for performing one or more functions described above and the methods described in this patent application (e.g., computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) need not be implemented as separate software programs (such as computer programs (e.g., including instructions)), processes, or modules; therefore, various subsets of these modules may optionally be combined or otherwise rearranged in various embodiments. For example, a video player module may optionally be combined with a music player module into a single module (e.g., Figure 1A (e.g., video and music player module 152). In some embodiments, memory 102 may optionally store a subset of the aforementioned modules and data structures. Additionally, memory 102 may optionally store additional modules and data structures not described above.

[0132] In some implementations, device 100 is a device on which the operation of a predefined set of functions is performed solely via a touchscreen and / or touchpad. By using a touchscreen and / or touchpad as the primary input control device for operating device 100, the number of physical input control devices (such as push-buttons and dial pads) on device 100 can be optionally reduced.

[0133] A predefined set of functions, uniquely performed via a touchscreen and / or touchpad, may optionally include navigation between user interfaces. In some implementations, the touchpad, when touched by a user, navigates device 100 from any user interface displayed on device 100 to the main menu, main desktop, or root menu. In such implementations, a "menu button" is implemented using the touchpad. In some other implementations, the menu button is a physical push-button or other physical input control device, rather than a touchpad.

[0134] Figure 1B This is a block diagram illustrating exemplary components for event handling according to some embodiments. In some embodiments, memory 102 ( Figure 1A ) or memory 370 ( Figure 3 This includes an event classifier 170 (e.g., in operating system 126) and a corresponding application 136-1 (e.g., any of the aforementioned applications 137 to 151, 155, 380 to 390).

[0135] Event classifier 170 receives event information and determines the application 136-1 and application view 191 of application 136-1 to which the event information should be delivered. Event classifier 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192, which indicates one or more current application views displayed on touch-sensitive display 112 when the application is active or executing. In some embodiments, device / global internal state 157 is used by event classifier 170 to determine which application(s) is currently active, and application internal state 192 is used by event classifier 170 to determine the application view 191 to which the event information should be delivered.

[0136] In some implementations, the application internal state 192 includes additional information such as one or more of the following: recovery information to be used when the application 136-1 resumes execution, user interface state information indicating that information is being displayed or ready to be displayed by the application 136-1, a state queue for enabling the user to return to the previous state or view of the application 136-1, and a repeat / undo queue for the user's previous actions.

[0137] Event monitor 171 receives event information from peripheral device interface 118. The event information includes information about sub-events, such as user touches on touch-sensitive display 112 as part of a multi-touch gesture. Peripheral device interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, one or more accelerometers 168, and / or microphone 113 (via audio circuitry 110). The information received by peripheral device interface 118 from I / O subsystem 106 includes information from touch-sensitive display 112 or touch-sensitive surfaces.

[0138] In some implementations, the event monitor 171 sends requests to the peripheral device interface 118 at predetermined intervals. In response, the peripheral device interface 118 sends event information. In other implementations, the peripheral device interface 118 sends event information only when a significant event occurs (e.g., receiving input above a predetermined noise threshold and / or receiving input for a predetermined duration).

[0139] In some implementations, the event classifier 170 also includes a hit view determination module 172 and / or an activity event recognizer determination module 173.

[0140] When the touch-sensitive display 112 displays more than one view, the hit view determination module 172 provides a software process for determining where a sub-event has occurred within one or more views. A view consists of controls and other elements that the user can see on the display.

[0141] Another aspect of the user interface associated with an application is a 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 corresponding application) in which a touch is detected optionally corresponds to a procedural level within the application's procedural or view hierarchy. For example, the lowest-level view in which a touch is detected may optionally be called the hit view, and the set of events identified as correct input is optionally determined, at least in part, based on the hit view of the initial touch that initiates the touch-based gesture.

[0142] The hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views organized in a hierarchical structure, the hit view determination module 172 identifies the hit view as the lowest-level view in the hierarchical structure from which the sub-events should be processed. In most cases, the hit view is the lowest-level view in which the initiating sub-event (e.g., the first sub-event in a sequence of sub-events forming an event or potential event) occurs. Once the hit view is identified by the hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source to which it was identified as the hit view.

[0143] The activity event recognizer determination module 173 determines which views(s) within the view hierarchy should receive a specific sub-event sequence. In some embodiments, the activity event recognizer determination module 173 determines that only the hit view should receive the specific sub-event sequence. In other embodiments, the activity event recognizer determination module 173 determines that all views including the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive the specific sub-event sequence. In other embodiments, even if the touch sub-event is entirely confined to the area associated with a particular view, higher views in the hierarchy will still remain actively participating views.

[0144] Event assigner module 174 assigns event information to event identifiers (e.g., event identifier 180). In embodiments that include active event identifier determination module 173, event assigner module 174 delivers event information to the event identifier determined by active event identifier determination module 173. In some embodiments, event assigner module 174 stores event information in an event queue, which is retrieved by the corresponding event receiver 182.

[0145] In some embodiments, operating system 126 includes event classifier 170. Alternatively, application 136-1 includes event classifier 170. In yet another embodiment, event classifier 170 is a separate module or part of another module (such as contact / motion module 130) stored in memory 102.

[0146] In some implementations, application 136-1 includes a plurality of event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events occurring within a corresponding view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, a corresponding application view 191 includes a plurality of event recognizers 180. In other implementations, one or more of the event recognizers 180 are part of a separate module, such as a user interface toolkit or a higher-level object from which application 136-1 inherits methods and other properties. In some implementations, a corresponding event handler 190 includes one or more of the following: a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from an event classifier 170. Event handlers 190 may optionally utilize or invoke the data updater 176, the object updater 177, or the GUI updater 178 to update the application's internal state 192. Alternatively, one or more application views in application view 191 include one or more corresponding event handlers 190. Additionally, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in the corresponding application view 191.

[0147] The corresponding event identifier 180 receives event information (e.g., event data 179) from the event classifier 170 and identifies the event based on the event information. The event identifier 180 includes an event receiver 182 and an event comparator 184. In some embodiments, the event identifier 180 also includes at least one subset of metadata 183 and event delivery instructions 188 (which may optionally include sub-event delivery instructions).

[0148] Event receiver 182 receives event information from event classifier 170. The event information includes information about sub-events, such as touch or touch movement. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event involves touch movement, the event information may optionally also include the speed and direction of the sub-event. In some embodiments, the event includes the device rotating from one orientation to another (e.g., from a portrait orientation to a lateral orientation, or vice versa), and the event information includes corresponding information about the device's current orientation (also referred to as device orientation).

[0149] Event comparator 184 compares event information with predefined event or sub-event definitions and determines the event or sub-event based on the comparison, or determines or updates the state of the event or sub-event. In some embodiments, event comparator 184 includes event definition 186. Event definition 186 contains definitions of events (e.g., predefined sequences of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in events (e.g., 187-1 and / or 187-2) include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, event 1 (187-1) is defined as a double-click on a displayed object. For example, a double-click includes a first touch (touch start) of a predetermined duration on the displayed object, a first lift-off of a predetermined duration (touch end), a second touch (touch start) of a predetermined duration on the displayed object, and a second lift-off of a predetermined duration (touch end). In another example, event 2 (187-2) is defined as a drag on a displayed object. For example, dragging includes a touch (or contact) of a predetermined duration on the displayed object, movement of the touch on the touch-sensitive display 112, and lifting the touch (end of touch). In some embodiments, the event also includes information for one or more associated event handlers 190.

[0150] In some implementations, event definition 186 includes definitions of events for corresponding user interface objects. In some implementations, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view displaying three user interface objects on touch-sensitive display 112, when a touch is detected 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 corresponding event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects the event handler associated with the sub-event and the object that triggered the hit test.

[0151] In some implementations, the definition of the corresponding event (187) also includes a delay action that delays the delivery of event information until it has been determined whether the sub-event sequence actually corresponds to or does not correspond to the event type of the event recognizer.

[0152] When the corresponding event recognizer 180 determines that the sub-event sequence does not match any event in event definition 186, the corresponding event recognizer 180 enters an event impossible, event failed, or event ended state, after which subsequent sub-events based on touch gestures are ignored. In this case, other event recognizers (if any) that remain active in the hit view continue to track and process ongoing sub-events based on touch gestures.

[0153] In some embodiments, the corresponding event recognizer 180 includes metadata 183 having configurable attributes, flags, and / or lists instructing how the event delivery system should perform sub-event delivery to actively participating event recognizers. In some embodiments, the metadata 183 includes configurable attributes, flags, and / or lists instructing how or how event recognizers can interact with each other. In some embodiments, the metadata 183 includes configurable attributes, flags, and / or lists instructing whether sub-events are delivered to different levels in a view or programmatic hierarchy.

[0154] In some implementations, when one or more specific sub-events of an event are identified, the corresponding event recognizer 180 activates the event handler 190 associated with the event. In some implementations, the corresponding event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is different from delivering (and deferred delivering) the sub-events to the corresponding hit view. In some implementations, the event recognizer 180 throws a flag associated with the identified event, and the event handler 190 associated with the flag acquires the flag and performs a predefined process.

[0155] In some implementations, event delivery instruction 188 includes a sub-event delivery instruction that delivers event information about a sub-event without activating an event handler. Instead, the sub-event delivery instruction delivers the event information to an event handler associated with the sub-event sequence or to an actively participating view. The event handler associated with the sub-event sequence or the actively participating view receives the event information and performs a predetermined process.

[0156] In some implementations, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates phone numbers used in contact module 137 or stores video files used in video player module. In some implementations, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates new user interface objects or updates the positioning of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and transmits that display information to graphics module 132 for display on a touch-sensitive display.

[0157] In some implementations, event handler 190 includes, or has access to, a data updater 176, an object updater 177, and a GUI updater 178. In some implementations, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the corresponding application 136-1 or application view 191. In other implementations, they are included in two or more software modules.

[0158] It should be understood that the above discussion regarding event handling for user touch on a touch-sensitive display also applies to other forms of user input that utilize input devices to operate the multifunction device 100, and not all user input is initiated on the touchscreen. For example, mouse movement and mouse button presses optionally in conjunction with single or multiple keyboard presses or holds; touch movements on the touchpad, such as taps, drags, scrolls, etc.; stylus input; device movement; verbal commands; detected eye movements; biometric input; and / or any combination thereof may optionally be used as input corresponding to sub-events that define the event to be identified.

[0159] Figure 2A portable multifunction device 100 with a touchscreen 112 is illustrated according to some embodiments. The touchscreen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment and other embodiments described below, a user can select one or more graphics by gesturing over the graphics, for example, using one or more fingers 202 (not drawn to scale in the figure) or one or more styluses 203 (not drawn to scale in the figure). In some embodiments, selection of one or more graphics occurs when the user breaks contact with one or more graphics. In some embodiments, gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, up and / or down), and / or scrolling (from right to left, from left to right, up and / or down) of a finger already in contact with the device 100. In some specific embodiments or in some cases, unintentional contact with a graphic does not select the graphic. For example, a swipe gesture over an application icon may optionally not select the corresponding application when the gesture corresponding to selection is a tap.

[0160] Device 100 may optionally also include one or more physical buttons, such as a "main desktop" or menu button 204. As previously described, menu button 204 may optionally be used to navigate to any application 136 of a set of applications optionally executed on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on touchscreen 112.

[0161] In some embodiments, device 100 includes a touchscreen 112, a menu button 204, a push-button 206 for powering on / off and locking the device, one or more volume control buttons 208, a SIM card slot 210, a headphone jack 212, and a docking / charging external port 124. The push-button 206 is optionally used to: power on / off the device by pressing the button and holding it in the pressed state for a predefined time interval; lock the device by pressing the button and releasing it before the predefined time interval has elapsed; and / or unlock the device or initiate an unlocking process. In another embodiment, device 100 also accepts voice input via microphone 113 for activating or deactivating certain functions. Device 100 may also optionally include one or more contact strength sensors 165 for detecting the intensity of contact on the touchscreen 112, and / or one or more haptic output generators 167 for generating haptic outputs for a user of device 100.

[0162] Figure 3This is a block diagram of an exemplary multifunctional device with 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, desktop computer, tablet computer, multimedia player device, navigation device, educational device (such as a children's learning toy), gaming system, or control device (e.g., a home controller or industrial 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 for interconnecting these components. The communication bus 320 may optionally include circuitry (sometimes referred to as a chipset) that interconnects system components and controls communication between system components. Device 300 includes an input / output (I / O) interface 330 with a display 340, which is typically a touchscreen display. The I / O interface 330 may also optionally include a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, and a haptic output generator 357 for generating haptic output on device 300 (e.g., similar to the reference above). Figure 1A The described tactile output generator 167), sensor 359 (e.g., optical sensor, accelerometer, proximity sensor, touch sensor and / or contact intensity sensor (similar to the one described above)) Figure 1A The described contact strength sensor 165). 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 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 310. In some embodiments, memory 370 stores information related to portable multifunction device 100. Figure 1A The memory 370 stores programs, modules, and data structures similar to those in the memory 102 of the portable multifunction device 100, or subsets thereof. Additionally, the memory 370 may optionally store additional programs, modules, and data structures not present in the memory 102 of the portable multifunction device 100. For example, the memory 370 of the device 300 may optionally store a drawing module 380, a rendering module 382, ​​a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while the portable multifunction device 100 ( Figure 1A The memory 102 may optionally not store these modules.

[0163] Figure 3Each of the elements described above may optionally be stored in one or more memory devices of the previously mentioned memory devices. Each of the modules described above corresponds to a set of instructions for performing the functions described above. The modules or computer programs described above (e.g., instruction sets or including instructions) need not be implemented as separate software programs (such as computer programs (e.g., including instructions)), processes, or modules, and therefore various subsets of these modules may optionally be combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 may optionally store a subset of the modules and data structures described above. In addition, memory 370 may optionally store additional modules and data structures not described above.

[0164] Now let’s turn our attention to the implementation of the user interface, which may be optionally implemented on, for example, a portable multifunction device 100.

[0165] Figure 4A An exemplary user interface for an application menu on a portable multifunction device 100 according to some embodiments is illustrated. A similar user interface may optionally be implemented on device 300. In some embodiments, user interface 400 includes the following elements or a subset or superset thereof: • Signal strength indicator 402 for wireless communications such as cellular signals and Wi-Fi signals; • Time 404; • Bluetooth indicator 405; • Battery status indicator 406; • Tray 408 with icons for commonly used applications, such as: The telephone module 138 has an icon 416 labeled "telephone", which optionally includes an indicator 414 indicating the number of missed calls or voicemail messages. The email client module 140 has an icon 418 labeled "Mail", which optionally includes an indicator 410 for the number of unread emails; The browser module 147 has an icon 420 labeled "Browser"; and o The video and music player module 152 (also known as the iPod (Apple Inc. trademark) module 152) is marked with an icon 422 labeled "iPod"; and • Icons of other applications, such as: The icon 424 of oIM module 141 marked as "message"; The calendar module 148 has an icon 426 labeled "Calendar"; The image management module 144 has an icon 428 labeled "Photo". The icon 430 of the camera module 143 is labeled "camera"; o The icon 432 of the online video module 155, which is labeled "Online Video"; The icon 434 labeled "Stock Market" in the stock market widget 149-2; The icon 436 labeled "map" in the map module 154; The weather widget 149-1 has icon 438 labeled "weather"; The alarm clock widget 149-4 has an icon 440 labeled "clock"; The icon 442 of the fitness support module 142 is labeled "fitness support"; The icon 444 labeled "Memo" in the memo module 153; and o A settings icon 446 labeled "Settings" is used to set up applications or modules, which provides access to settings for device 100 and its various applications 136.

[0166] It should be pointed out that, Figure 4A The illustrated icon labels are merely exemplary. For example, icon 422 of video and music player module 152 is labeled "Music" or "Music Player". Other labels may be used for various application icons. In some embodiments, the label of a particular application icon includes the name of the application corresponding to that particular application icon. In some embodiments, the label of a particular application icon is different from the name of the application corresponding to that particular application icon.

[0167] Figure 4B An example is illustrated having a touch-sensitive surface 451 (e.g., separate from the display 450 (e.g., touchscreen display 112)). Figure 3 A tablet device or touchpad 355) device (e.g., Figure 3 An exemplary user interface on the device 300. The device 300 may also optionally include one or more contact intensity sensors (e.g., one or more sensors in sensor 359) for detecting the intensity of contact on the tactile surface 451 and / or one or more tactile output generators 357 for generating tactile output for the user of the device 300.

[0168] While some examples of input on a touchscreen display 112 (which combines a touch-sensitive surface and a display) are given below, in some implementations the device detects input on a touch-sensitive surface separate from the display, such as... Figure 4B As shown in the diagram. In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a spindle (e.g., on the display (e.g., 450) corresponding to the main axis on the display (e.g., Figure 4B The main shaft of 453 in the middle (e.g., Figure 4B (452 in the example). According to these embodiments, the device detects the position corresponding to a specific location on the display (e.g., in...). Figure 4B In the middle, contact 460 corresponds to 468 and contact 462 corresponds to 470) is in contact with the touch-sensitive surface 451 (e.g., Figure 4B Contacts 460 and 462 in the middle). Thus, when the touch-sensitive surface (e.g., Figure 4B 451 in the middle) and the display of a multi-functional device (e.g., Figure 4B When 450 is separated from the touch-sensitive surface, user input detected by the device on that touch-sensitive surface (e.g., touches 460 and 462 and their movement) is used by the device to manipulate the user interface on the display. It should be understood that similar methods can be optionally used for other user interfaces described herein.

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

[0170] Figure 5A An exemplary personal electronic device 500 is illustrated. Device 500 includes a body 502. In some embodiments, device 500 may include components relative to devices 100 and 300 (e.g., Figures 1A to 4BThe device 500 may include some or all of the features described herein. In some embodiments, the device 500 has a touch-sensitive display 504, referred to below as a touchscreen 504. Alternatively, or in addition to the touchscreen 504, the device 500 may also have a display and a touch-sensitive surface. Similar to the cases of devices 100 and 300, in some embodiments, the touchscreen 504 (or touch-sensitive surface) may optionally include one or more intensity sensors for detecting the intensity of an applied contact (e.g., a touch). The one or more intensity sensors of the touchscreen 504 (or touch-sensitive surface) may provide output data representing the intensity of the touch. The user interface of the device 500 may respond to touches based on the intensity of the touch, meaning that touches of different intensities may invoke different user interface operations on the device 500.

[0171] Exemplary techniques for detecting and processing touch intensity are found, for example, in the following related applications: International Patent Application Serial No. PCT / US2013 / 040061, filed May 8, 2013, entitled “Device, Method, and Graphical User Interface for Displaying UserInterface Objects Corresponding to an Application,” published as WIPO Publication No. WO / 2013 / 169849; and International Patent Application Serial No. PCT / US2013 / 069483, filed November 11, 2013, entitled “Device, Method, and Graphical User Interface for Transitioning Between TouchInput to Display Output Relationships,” published as WIPO Publication No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.

[0172] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, can 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, allow device 500 to be attached to, for example, hats, glasses, earrings, necklaces, shirts, jackets, bracelets, watch straps, bangles, trousers, belts, shoes, purses, backpacks, etc. These attachment mechanisms allow a user to wear device 500.

[0173] Figure 5BAn exemplary personal electronic device 500 is depicted. In some embodiments, device 500 may include, relative to... Figure 1A , Figure 1B and Figure 3 Some or all of the components described. Device 500 has a bus 512 that operatively couples I / O portion 514 to one or more computer processors 516 and memory 518. I / O portion 514 may be connected to display screen 504, which may have touch-sensitive component 522 and optionally have intensity sensor 524 (e.g., contact intensity sensor). Furthermore, I / O portion 514 may be connected to communication unit 530 for receiving application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular and / or other wireless communication technologies. Device 500 may include input mechanisms 506 and / or 508. For example, input mechanism 506 may optionally be a rotatable input device or a pressable input device and a rotatable input device. In some examples, input mechanism 508 may optionally be a button.

[0174] In some examples, the input mechanism 508 may optionally be a microphone. The personal electronic device 500 may optionally include 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 are operatively connected to the I / O section 514.

[0175] 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, which, when executed by one or more computer processors 516, may cause the computer processors to perform techniques including methods 700, 900, 1100, 1300, and 1500, for example. Figure 7 , Figure 9 , Figure 11 , Figure 13 and Figure 15 A computer-readable storage medium can be any medium that can tangibly contain or store computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. In some examples, the storage medium is a transient computer-readable storage medium. In some examples, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media can include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical discs based on CD, DVD, or Blu-ray technology, and persistent solid-state storage such as flash memory, solid-state drives, etc. Personal electronic devices are not limited to... Figure 5B It can be the components and configurations, or it can include other components or additional components in a variety of configurations.

[0176] As used herein, the term "power indication" refers to the ability to indicate power in devices 100, 300, and / or 500 (…). Figure 1A , Figure 3 and Figures 5A to 5B A user-interactive graphical user interface object displayed on a screen. For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) may each constitute a functional representation.

[0177] As used herein, the term "focus selector" refers to an input element used to indicate the current portion of a user interface with which a user is interacting. In some specific implementations that include a cursor or other positional marker, the cursor acts as a "focus selector," such that when the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), the cursor is positioned on a touch-sensitive surface (e.g., a...). Figure 3 The touchpad 355 or Figure 4B When an input (e.g., a press input) is detected on the touch-sensitive surface 451 of the display, the specific user interface element is adjusted according to the detected input. This applies to touchscreen displays (e.g., those capable of direct interaction with user interface elements on a touchscreen display) that enable direct interaction with user interface elements on the touchscreen display. Figure 1A The touch-sensitive display system 112 or Figure 4A In some embodiments of the touchscreen 112, a touch detected on the touchscreen acts as a "focus selector," such that when input (e.g., a press input by touch) 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, that particular user interface element is adjusted according to the detected input. In some embodiments, focus moves from one area of ​​the user interface to another without corresponding movement of the cursor or movement of a touch on the touchscreen display (e.g., moving focus from one button to another using tab keys or arrow keys); in these embodiments, the focus selector moves according to the movement of focus between different areas of the user interface. Regardless of the specific form the focus selector takes, the focus selector is typically a user-controlled user interface element (or a touch on the touchscreen display) that delivers the user-expected interaction with the user interface (e.g., by indicating to the device the element of the user interface that the user expects to interact with). For example, when a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of the focus selector (e.g., a cursor, touch, or selection box) above the corresponding button will indicate to the user that they expect to activate the corresponding button (rather than other user interface elements shown on the device's display).

[0178] As used in the specification and claims, the term "characteristic strength" of a contact refers to a characteristic of the contact based on one or more strengths of the contact. In some embodiments, the characteristic strength is based on multiple strength samples. The characteristic strength may optionally be based on a predefined number of strength samples or a set of strength samples collected over a predetermined time period (e.g., 0.05 seconds, 0.1 seconds, 0.2 seconds, 0.5 seconds, 1 second, 2 seconds, 5 seconds, 10 seconds) relative to a predefined event (e.g., after contact is detected, before contact is detected to be lifted, before or after contact begins to move, before contact ends, before or after contact strength is detected to increase, and / or before or after contact strength is detected to decrease). The characteristic strength of the contact may optionally be based on one or more of the following: the maximum value of the contact strength, the mean value of the contact strength, the average value of the contact strength, the value at the top 10% of the contact strength, the half maximum value of the contact strength, or the 90% maximum value of the contact strength, etc. In some embodiments, the duration of the contact is used when determining the characteristic strength (e.g., when the characteristic strength is the average value of the contact strength over time). In some implementations, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether a user has performed an action. For example, the set of one or more intensity thresholds may optionally include a first intensity threshold and a second intensity threshold. In this example, contact with a characteristic intensity not exceeding the first threshold results in a first action, contact with a characteristic intensity exceeding the first intensity threshold but not exceeding the second intensity threshold results in a second action, and contact with a characteristic intensity exceeding the second threshold results in a third action. In some implementations, a comparison between the characteristic intensity and one or more thresholds is used to determine whether one or more actions should be performed (e.g., whether to perform the corresponding action or abandon performing the corresponding action) rather than to determine whether to perform the first action or the second action.

[0179] Figure 5C An exemplary diagram depicts a communication session between electronic devices 500A, 500B, and 500C. Devices 500A, 500B, and 500C are similar to electronic device 500, and each device shares one or more data connections 510 (such as an internet connection, Wi-Fi connection, cellular connection, short-range communication connection, and / or any other such data connection or network) to facilitate real-time communication of audio and / or video data between the respective devices for a sustained period of time. In some embodiments, the exemplary communication session may include a shared data session, whereby data is transmitted from one or more electronic devices to other electronic devices to enable simultaneous output of corresponding content at the electronic devices. In some embodiments, the exemplary communication session may include a video conferencing session, whereby audio and / or video data are transmitted between devices 500A, 500B, and 500C, enabling users of the respective devices to communicate in real time using the electronic devices.

[0180] exist Figure 5C In this design, device 500A represents an electronic device associated with user A. Device 500A (via data connection 510) communicates with devices 500B and 500C, which are associated with users B and C, respectively. Device 500A includes a camera 501A for capturing video data of the communication session, and a display 504A (e.g., a touchscreen) for displaying content associated with the communication session. Device 500A also includes other components such as a microphone (e.g., 113) for recording audio of the communication session and a speaker (e.g., 111) for outputting the audio of the communication session.

[0181] Device 500A displays a communication UI 520A via a display 504A. This communication UI is a user interface used to facilitate communication sessions (e.g., video conferencing sessions) between device 500B and device 500C. The communication UI 520A includes video feeds 525-1A and 525-2A. Video feed 525-1A is a representation of video data captured at device 500B (e.g., using camera 501B) and transmitted from device 500B to devices 500A and 500C during a communication session. Video feed 525-2A is a representation of video data captured at device 500C (e.g., using camera 501C) and transmitted from device 500C to devices 500A and 500B during a communication session.

[0182] The communication UI 520A includes a camera preview 550A, which is a representation of video data captured by camera 501A at device 500A. Camera preview 550A indicates to user A the expected video feed to be displayed at corresponding devices 500B and 500C.

[0183] The communication UI 520A includes one or more controls 555A for controlling one or more aspects of a communication session. For example, controls 555A may include controls for turning off audio in the communication session, changing the camera view of the communication session (e.g., changing the camera used to capture video of the communication session, adjusting the zoom value), terminating the communication session, applying visual effects to the camera view of the communication session, and activating one or more modes associated with the communication session. In some embodiments, one or more controls 555A may optionally be displayed in the communication UI 520A. In some embodiments, one or more controls 555A are displayed separately from the camera preview 550A. In some embodiments, one or more controls 555A are displayed to cover at least a portion of the camera preview 550A.

[0184] exist Figure 5CIn this context, device 500B represents an electronic device associated with user B, who communicates with devices 500A and 500C (via data connection 510). Device 500B includes a camera 501B for capturing video data of the communication session, and a display 504B (e.g., a touchscreen) for displaying content associated with the communication session. Device 500B also includes other components such as a microphone (e.g., 113) for recording audio of the communication session and a speaker (e.g., 111) for outputting the audio of the communication session.

[0185] Device 500B displays a communication UI 520B similar to the communication UI 520A of device 500A via touchscreen 504B. Communication UI 520B includes video feeds 525-1B and 525-2B. Video feed 525-1B is a representation of video data captured at device 500A (e.g., using camera 501A) and transmitted from device 500A to devices 500B and 500C during a communication session. Video feed 525-2B is a representation of video data captured at device 500C (e.g., using camera 501C) and transmitted from device 500C to devices 500A and 500B during a communication session. Communication UI 520B also includes: a camera preview 550B, which is a representation of video data captured at device 500B via camera 501B; and one or more controls 555B similar to controls 555A, which are used to control one or more aspects of the communication session. Camera preview 550B indicates to user B the expected video feed that user B will see displayed at the corresponding devices 500A and 500C.

[0186] exist Figure 5C In this context, device 500C represents an electronic device associated with user C, who communicates with devices 500A and 500B (via data connection 510). Device 500C includes a camera 501C for capturing video data of the communication session, and a display 504C (e.g., a touchscreen) for displaying content associated with the communication session. Device 500C also includes other components such as a microphone (e.g., 113) for recording audio of the communication session and a speaker (e.g., 111) for outputting the audio of the communication session.

[0187] Device 500C displays a communication UI 520C, similar to the communication UI 520A of device 500A and the communication UI 520B of device 500B, via a touchscreen 504C. The communication UI 520C includes video feeds 525-1C and 525-2C. Video feed 525-1C is a representation of video data captured at device 500B (e.g., using camera 501B) and transmitted from device 500B to devices 500A and 500C during a communication session. Video feed 525-2C is a representation of video data captured at device 500A (e.g., using camera 501A) and transmitted from device 500A to devices 500B and 500C during a communication session. The communication UI 520C also includes: a camera preview 550C, which is a representation of video data captured at device 500C via camera 501C; and one or more controls 555C similar to controls 555A and 555B, which are used to control one or more aspects of the communication session. The camera preview 550C indicates to user C the expected video feed to be displayed at the corresponding devices 500A and 500B.

[0188] Although Figure 5C The diagram depicts a communication session between three electronic devices, but such a session can be established between two or more electronic devices, and the number of devices participating in the session can change as electronic devices join or leave the session. For example, if one of the electronic devices leaves the session, audio and video data from the device that has stopped participating is no longer represented on the participating devices. For instance, if device 500B stops participating in the session, there is no data connection 510 between devices 500A and 500C, and no data connection 510 between devices 500C and 500B. Additionally, device 500A does not include video feed 525-1A, and device 500C does not include video feed 525-1C. Similarly, if a device joins the session, a connection is established between the joining device and the existing devices, and video and audio data are shared among all devices, enabling each device to output data transmitted from other devices.

[0189] Figure 5C The implementation scheme depicted herein represents a diagram illustrating a communication session between multiple electronic devices, including Figures 8B to 8O and Figure 8U to Figure 8AE The example communication session described in the document and Figures 14A to 14B The communication sessions attempted in [the context]. In some implementations, Figures 8B to 8O and Figure 8U to Figure 8AE The communication sessions described in the document and Figures 14A to 14BThe communication session attempted in the figure involves two or more electronic devices, even if the other electronic devices involved in the communication session are not depicted in the figure.

[0190] As used herein, "installed application" refers to a software application that has been downloaded to an electronic device (e.g., device 100, 300, and / or 500) and is ready to be launched on the device (e.g., become open). In some implementations, the downloaded application becomes an installed application by utilizing an installer that extracts program portions from the downloaded software package and integrates the extracted portions with the computer system's operating system.

[0191] As used herein, the terms "open application" or "running application" refer to a software application that maintains state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or running application can optionally be any of the following types of applications: • The active application, which is currently displayed on the screen of the device that is using the application; • Background applications (or background processes) that are not currently displayed but whose one or more processes are being handled by one or more processors; and • A suspended or hibernating application that is not running but has state information stored in memory (both volatile and non-volatile) that can be used to resume the execution of the application.

[0192] As used herein, the term "closed application" refers to a software application that does not retain state information (e.g., the state information of a closed application is not stored in the device's memory). Therefore, closing an application includes: stopping and / or removing the application's process and removing the application's state information from the device's memory. Generally, opening a second application while the first application is running does not close the first application. When the second application is displayed and the first application stops displaying, the first application becomes a background application.

[0193] In some implementations, the computer system is in a locked or unlocked state. In the locked state, the computer system is powered on and operable, but it is prevented from performing a predefined set of operations in response to user input. This predefined set of operations may optionally include navigation between user interfaces, activation or deactivation of a predefined set of functions, and activation or deactivation of certain applications. The locked state can be used to prevent unintentional or unauthorized use of a function of the computer system, or to activate or deactivate some functions on the computer system. In some implementations, in the unlocked state, the computer system is powered on and operable, and is not prevented from performing at least some of the predefined set of operations that cannot be performed when in the locked state. When the computer system is in a locked state, it is said that the computer system is locked. When the computer system is in an unlocked state, it is said that the computer is unlocked. In some implementations, a locked computer system may optionally respond to a limited set of user input, which includes input corresponding to an attempt to unlock the computer system or input corresponding to shutting down the computer system.

[0194] Now let’s turn our attention to the implementation of user interfaces (“UIs”) on electronic devices, such as portable multifunction devices 100, 300 or 500, and the associated processes.

[0195] Figures 6A to 6AG Exemplary user interfaces for editing user representations for communication contexts, according to some embodiments, are illustrated. The user interfaces in these figures are used to illustrate the processes described below, including... Figure 7 The process in.

[0196] Figure 6A An example is a computer system 600a including a display 602a (e.g., Kim's telephone). Figure 6A In this configuration, computer system 600a displays user interface 604 (e.g., a home screen or application launcher), which includes optional user interface elements for launching the corresponding application. In response to a selection 625a on the telephone application user interface element 604a, computer system 600a displays user interface 606 for creating, editing, and / or customizing a user representation of the communication context (e.g., user interface, call poster, contact profile, contact photo, profile photo, and / or contact card). In some embodiments, after a software update that adds the ability to create and / or customize user representations is installed on computer system 600a, the computer system 600a displays user interface 606 the first time a user attempts to launch the telephone application corresponding to telephone application user interface element 604a, as will be described in reference to [reference needed]. Figures 6B to 6AG The subject of discussion.

[0197] Figures 6B to 6AG This illustrates techniques for guiding users by creating and / or customizing user representations for different communication contexts. Figure 6B In this embodiment, user interface 606 includes a representation 608a of the user interface for a first communication context. In some embodiments, the first communication context is a call and / or a user interface for a call (e.g., a telephone call user interface or a video call user interface). The user interface for a call is also referred to as a call user interface, a poster, or a call profile. In some embodiments, the call profile is displayed by a computer system that is receiving a call from a user of computer system 600a (e.g., a call from computer system 600a or another computer system associated with a user of computer system 600a).

[0198] User interface 606 includes a prompt 610 that informs the user that they can set up a profile to share their name and photo with other users for different communication contexts, such as messaging, phone calls, video calls, and file sharing. The user can optionally continue with user interface element 612 to continue the process of creating a user representation for different contexts. The user can optionally set up user interface element 614 later to exit the process of creating the user interface (e.g., stop displaying user interface 606).

[0199] In some implementations, computer system 600a displays a set of representations corresponding to different communication contexts in user interface 606. For example, as Figure 6C As shown, after displaying representation 608a, computer system 600a displays (e.g., automatically, without user input) representation 608b corresponding to a second communication context, such as a profile for messaging, file sharing, or other contexts. In some embodiments, displaying representation 608b includes stopping the display of representation 608a and / or animing the display of representation 608b to replace representation 608a in user interface 606.

[0200] like Figure 6D As shown, after displaying representation 608b, computer system 600a displays (e.g., automatically, without user input) representation 608c corresponding to a third communication context, such as a contact user interface (e.g., a contact card), which includes representations (e.g., photos, avatars, or alphabetical patterns) and contact information of the user of computer system 600a, such as name, company, phone number, and email address. In some embodiments, displaying representation 608c includes stopping the display of representation 608b and / or an animation of displaying representation 608c replacing representation 608b in user interface 606. In some embodiments, computer system 600a continues to automatically cycle through representations 608a-608c while displaying user interface 606.

[0201] exist Figure 6D In the process, computer system 600a detects the selection 625b of the continue user interface element 612 and, in response, displays a user interface 616 for creating and / or customizing the call user interface (such as...). Figure 6E (As shown). The user interface 616 includes a representation 616a of the call user interface (e.g., a default representation) and optional options for selecting a graphical representation of the call user interface. A camera icon 616c can be selected to capture a new photo for the call user interface, a photo icon 616b can be selected to select an existing photo for the call user interface, an avatar icon 616d can be selected to select an avatar (e.g., an emoji or Memoji) for the call user interface, and a letter pattern icon 616e can be selected to select a letter pattern for the call user interface.

[0202] exist Figure 6E In the process, computer system 600a detects a selection 625c of photo icon 616b. In response to the detection of the selection 625c of photo icon 616b, computer system 600a displays a user interface 618 for selecting an existing photo, such as... Figure 6F As shown. Computer system 600a detects selection 625ak of photo 618a. After (e.g., in response to) detecting selection 625ak of photo 618a, the computer system displays an editing user interface 620 for creating a user interface for a first communication context, as shown. Figure 6G As shown. The editing user interface 620 includes a name 620a, a graphical representation 620b, style options 620c, menu options 620d, and a continue option 622. The graphical representation 620b corresponds to... Figure 6F The selected photo is 618a.

[0203] exist Figure 6G In the process, computer system 600a detects a selection 625d of name 620a. In response to the detection of the selection of name 620a, computer system 600a displays a menu 624 for editing various properties of name 620a (such as font style, size, and color), such as... Figure 6H As shown. The font size can be adjusted by interacting with user interface element 624d (e.g., a slider). The color of the name 620a can be selected by choosing a color option from a set of color options 624c. The currently selected font style corresponds to font style option 624a, as indicated by the outline around font style option 624a. Figure 6H In the process, computer system 600a detects a selection 625e of font style option 624b. Based on the selection 625e of font style option 624b, the computer system updates the name 620a with the font style corresponding to the selected font style option, such as... Figure 6I As shown.

[0204] exist Figure 6I In the process, computer system 600a detects a selection 625f of menu option 620d. In response to detecting the selection 625f of menu option 620d, computer system 600a displays menu 626, which includes a first layout option 626a and a second layout option 626b, such as... Figure 6J As shown. The first layout option 626a and the second layout option 626b correspond to the respective layouts of the call user interface. In some embodiments, the layout of the call user interface determines the placement and / or orientation of the name 620a and / or the language of the call user interface.

[0205] exist Figure 6J Currently, the first layout option 626a is selected, as indicated by the check mark on the first layout option 626a. In response to detecting a selection 625g of the second layout option 626b, the computer system 600a displays a user interface 620 with a different layout, such as... Figure 6K As shown. In Figure 6K In the middle, the name 620a is placed on the right side of the user interface 620 and is vertically oriented. The layout corresponding to the second layout option 626b displays the name 620a in Japanese (for example, instead of English).

[0206] exist Figure 6K In the process, computer system 600a detects the selection 625h of the first layout option 626a and the selection 625i of the depth effect option 626c. For example... Figure 6L As shown, in response to detecting a selection 625h of the first layout option 626a, the computer system 600a changes the layout of the user interface 620 back to the layout option corresponding to the first layout option 626a; in response to detecting a selection 625i of the depth effect option 626c, the computer system 600a displays a menu 628. The menu 628 includes a background option 628a and a depth effect option 628b. In response to detecting a selection 625j of the background effect option 628a, the computer system 600a displays as shown... Figure 6M The background options menu 630 is shown. The background options menu 630 includes a background color option 630a and a color adjuster 630b. Figure 6M In the process, the computer system detects a selection 625k for background color option 630a1. Based on the selection 625k for background color option 630a1, the computer system 600a updates the background of the user interface 620 with the background color corresponding to the background color option 630a1, such as... Figure 6N As shown.

[0207] exist Figure 6NIn this process, the user completes editing of the user representation used for the first communication context. In some implementations, the user selects from the computer system 600a. Figure 6N The user representation shown in user interface 620 serves as the user representation for the first communication context (e.g., by selecting the continue option 622). In response to detecting a selection 625l of the continue option 622, computer system 600a displays user interface 632 for editing the user interface and / or user representation for the second communication context (e.g., profile picture, avatar, or alphabetical pattern), such as... Figure 6O As shown. In some embodiments, the second communication context includes messaging (e.g., text messaging and / or instant messaging), email, content sharing, social media, or other communication contexts (e.g., other than telephone calls). User interface 632 includes a graphical representation 632a (e.g., a photo, avatar, or monogram pattern), instructions for editing the graphical representation 632a (e.g., “move and zoom your avatar”), photo change options 632b, and continue option 622. The user can change the positioning and / or scale of the representation 632a via input 625aq. For example, in response to a pinch gesture, computer system 600a reduces (e.g., shrinks) the scale of representation 632a; in response to an expand gesture, computer system 600a increases (e.g., zooms in) the scale of representation 632a; and in response to swipe or tap and drag gestures, computer system 600a pans representation 632a (e.g., displays different parts of the representation).

[0208] exist Figure 6O In the process, computer system 600a detects a selection 625m of the photo change option 632b. In response to detecting the selection 625m of the photo change option 632b, computer system 600a displays a user interface 634 for selecting options of the graphic representation 632a. The user interface 634 includes a representation 634a (e.g., a preview of the graphic representation 632a), a letter combination pattern option 634b, an avatar option 634c, a photo selector option 634d, and an editing option 634e.

[0209] In some embodiments, in response to detecting a selection 625o of the photo selector option 634d, the computer system 600a displays a user interface (e.g., 618) for selecting a photo for the graphical representation 632a. In some embodiments, in response to detecting a selection 625p of the editing option 634e, the computer system 600a displays a user interface (e.g., reference) for editing user information (e.g., user information displayed in the user interface of a second communication context). Figure 6ACThe user interface 650 is described. In some embodiments, in response to detecting a selection 625q of avatar option 634c, computer system 600a selects avatar option 634c for graphical representation 632a. Figure 6P In the illustrated implementation, computer system 600a detects a selection 625n of letter combination pattern option 634b, and then detects a selection 625r of completion option 634f. In response to detecting a selection 625r of completion option 634b, computer system 600a displays user interface 632, which has a graphical representation 632a updated with letter combination patterns corresponding to the selected letter combination pattern option 634b, such as... Figure 6Q As shown.

[0210] exist Figure 6Q In this process, the user completes editing of the user representation used in the second communication context. In some implementations, the user selects from the computer system 600a. Figure 6Q The graphical representation 632a shown in the user interface 632 serves as a user representation for the second communication context (e.g., by selecting the continue option 622). In response to detecting a selection 625s of the continue option 622, the computer system 600a displays a user interface 636 for editing the user interface (e.g., a contact card) and / or user representation (e.g., a photo, avatar, or alphabetical pattern) for the third communication context, such as... Figure 6R As shown. In some implementations, the third communication context includes the user's contact information (or a user interface displaying the user's contact information), such as name, phone number, and email address. In some implementations, the information (or the user interface displaying the information) can be shared with other users.

[0211] User interface 636 includes a representation 636a of a user interface (e.g., a contact card) for a third communication context and an option 636b to edit contact information. The computer system detects a selection 625t of the edit contact information option 636b. In response to the detection of the selection 625t of the edit contact information option 636b, the computer system 600a displays a user interface 650 for editing contact information of the user of the computer system 600a, such as... Figure 6R1As shown. In response to detecting a selection 625aj of edit option 650a, computer system 600a displays a user interface (e.g., user interface 632 or user interface 634) for selecting and / or editing a profile representation. In response to detecting a selection 625ai of name field 650b, computer system 600a enables the user to edit the name for a third communication context (e.g., a name included in a contact card). For example, in response to detecting a selection 625ai of name field 650b, computer system 600a displays a cursor in name field 650b and displays a keyboard (e.g., a software keyboard) to edit the name. In some embodiments, other information in user interface 650 (such as telephone number and email address) can be edited in a similar manner to the name by selecting the corresponding field.

[0212] exist Figure 6R In the computer system 600a, the user selects the representation 636a shown in the user interface 636 as a user representation for a third communication context (e.g., by selecting the continue option 622). In response to detecting a selection 625u of the continue option 622, the computer system 600a displays... Figure 6S The preview user interface 638 is shown. User interface 638 includes interfaces for... Figures 6E to 6R1 Previews of various contexts of the user interface created in the system. Preview 638a is a representation of the user interface for a first communication context, and preview 638b is a representation of the user interface for a second communication context. In some embodiments, in response to the detection of input 625w (e.g., a swipe gesture and / or tap and drag gesture on display 602a), computer system 600a scrolls previews 638a and 638b such that preview 638b is centered on user interface 638 (e.g., as shown in the image). Figure 6W (As shown) or preview 638c is located in the center of the user interface 638 (e.g., as shown) Figure 6X (As shown). Preview 638c is a representation of the user interface for a third communication context. In some embodiments, computer system 600a automatically scrolls the preview, allowing the user to preview the user interface for various communication contexts without user input. In some embodiments, in response to detecting a selection of the preview, computer system 600a returns to the user interface for editing the corresponding communication context. For example, in response to detecting a tap on preview 638a, computer system 600a displays... Figure 6E The user interface 616 shown is shown.

[0213] exist Figure 6S In the process, computer system 600a detects selection 625v of continue option 622. In response to detecting selection 625v of continue option 622, computer system 600a displays... Figure 6T The outline user interface 640 is shown. The outline user interface 640 includes a preview 638a (e.g., a preview of the user interface for a first communication context), a preview 638b (e.g., a preview of the user interface for a second communication context), the name of the user of computer system 600a, an option to automatically share updates to the user interface of the communication context with users of computer system 600a who can contact computer system 600a (e.g., "Contacts Only"), and an option to provide a prompt for confirmation of shared updates by computer system 600a (e.g., "Always Ask"). Figure 6T In the middle, the continue option 622 is updated to include the label "Complete" to indicate that the user interface 640 is a set of user interfaces used to set up a representation for the communication context (e.g., Figures 6B to 6T The last interface in the user interface shown. In response to detecting the selection 625x of the continue option 622, the computer system 600a completes the process of guiding the user through the user interface to create and / or customize the user interface for various communication contexts.

[0214] Go to Figure 6U After creating and / or customizing the user interface for the communication context, computer system 600a detects a request to open the telephone application (e.g., selection 625a of telephone application user interface element 604a). In response to detecting the request to open the telephone application, computer system 600a displays... Figure 6U The telephone application user interface 642 is shown. User interface 642 includes options 642a for editing name and photo. In response to detecting a selection 625y of the edit name and photo option 642, computer system 600a displays user interface 644 for selecting and editing communication context, such as... Figure 6V As shown. User interface 644 includes previews 638a and 638b. Preview 638a corresponds to a representation of a first communication context. Preview 638b corresponds to a representation of a second communication context. Figure 6V In this context, a representation of the first communication context is specified for selection, as indicated by the preview 638a located at the center of the user interface 644.

[0215] Figure 6V Examples include input 625z (e.g., a swipe gesture or a tap and drag gesture) and input 625aa (e.g., a tap gesture on edit option 644d). In response to detecting input 625z, computer system 600a specifies a representation of a second communication context for selection by displaying preview 638b at the center of user interface 644, such as... Figure 6W As shown (for example, in response to detecting input 625z, computer system 600a changes the representation of the communication context designated for selection). In Figure 6W In the image, preview 638a is partially displayed on the left side of user interface 644, and preview 638c is partially displayed on the right side of user interface 644.

[0216] Figure 6W Examples include input 625ab (e.g., a swipe gesture or a tap and drag gesture) and input 625ac (e.g., a tap gesture on edit option 644d). In response to detecting input 625ab, computer system 600a specifies a representation of a third communication context for selection by displaying preview 638c at the center of user interface 644, such as... Figure 6X As shown (for example, in response to detecting input 625ab, computer system 600a changes the representation of the communication context designated for selection). In Figure 6X In the middle, preview 638a is removed from user interface 644, and preview 638b is partially displayed on the left side of user interface 644.

[0217] Go to Figure 6Y In response to detection Figure 6V In the editing option 644d, input 625aa, computer system 600a displays a user interface 646 for creating and / or customizing one or more user interfaces for the first communication context (e.g., Figure 6Y (As shown). User interface 646 includes a representation 646a of a first user interface for a first communication context, a representation 646b of a second user interface for the first communication context, and a representation 646c of a third user interface for the first communication context. A user can select the desired user interface for the first communication context by selecting (e.g., by tapping) the corresponding representation in user interface 646. In response to detecting a selection 625ae of customization option 646d, computer system 600a displays a display for editing. Figure 6Y The user interface 620 specified in the document corresponds to the user interface representing 646b. User interface 620 is referenced above. Figures 6G to 6N The description is provided. In some implementations, the user can create (e.g., add) a new user interface for the first communication context by selecting option 646e. In response to detecting an access to... Figure 6Y In the selection of option 625af in the addition option 646e, the computer system 600a displays a user interface 616 for creating a new user interface for the first communication context, such as Figure 6AA As shown. Reference Figure 6E Describe the user interface 616.

[0218] Go to Figure 6AB In response to detection Figure 6WUpon inputting 625ac on the editing option 644d, the computer system 600a displays a user interface 648 for creating and / or customizing one or more user interfaces for the second communication context. The user interface 648 includes a representation 648a of a first user interface for the second communication context, a representation 648b of a second user interface for the second communication context, and a representation 648c of a third user interface for the second communication context. The user can select the desired user interface for the second communication context by selecting (e.g., by tapping) the corresponding representation in the user interface 648. In response to detecting a selection 625ag of the customization option 648d, the computer system 600a displays an interface for editing... Figure 6AB The user interface 632 specified in the document corresponds to the user interface represented by 648b. User interface 632 is referenced above. Figure 6O The description is provided. In some implementations, the user can create (e.g., add) a new user interface for a second communication context by selecting option 648e. In response to detecting an access to... Figure 6AB In the selection of option 625ah in the addition option 648e, the computer system 600a displays a user interface 634 for creating a new user interface for the second communication context, such as Figure 6AD As shown. Reference Figure 6P User interface description 634.

[0219] Go to Figure 6AE In response to detection Figure 6X Upon inputting 625ad on the editing option 644d, the computer system 600a displays a user interface 652 for creating and / or customizing one or more user interfaces for a third communication context. The user interface 652 includes a representation 652a of a first user interface for the third communication context, a representation 652b of a second user interface for the third communication context, and a representation 652c of a third user interface for the third communication context. The user can select the desired user interface for the third communication context by selecting (e.g., by tapping) the corresponding representation in the user interface 652. In response to detecting a selection 625ao of the customization option 652d, the computer system 600a displays an interface for editing... Figure 6AE The user interface 650 specified in the text corresponds to the user interface representing 652b (e.g., Figure 6AF (As shown). User interface 650 is referenced above. Figure 6R1 The description is provided. In some implementations, the user can create (e.g., add) a new user interface for a third communication context by selecting option 652e. In response to detecting an access to... Figure 6AE In the selection of option 625ap in the addition option 652e, the computer system 600a displays a user interface 634 for creating a new user interface for a third communication context, such as... Figure 6AG As shown. Reference Figure 6P User interface description 634.

[0220] Reference Figures 6A to 6AG In the described user interface, the user of computer system 600a edits a representation of the communication context associated with the user of computer system 600a (e.g., his or her own representation). In some embodiments, references Figures 6A to 6AG The described user interface is used to edit one or more representations of the communication context associated with entities other than the user of computer system 600a. In some implementations, references are made to... Figures 6V to 6AG The described technologies and user interface can be used to edit the representation of a communication context for a contactable entity in computer system 600a. For example, computer system 600b (e.g., John's phone), described below, can display user interface 644 to select, create, and / or edit (e.g., customize) a representation of a user (e.g., Kim) of computer system 600a, which will be displayed on computer system 600b in various communication contexts (e.g., John can edit Kim's representation, which is displayed on his phone when he receives a call, text message, or other communication from Kim). Reference Figures 8A to 8AE The representation of the user of computer system 600a displayed on computer system 600b is described in more detail. In some embodiments, computer system 600b displays the representation selected by the user of computer system 600a (e.g., by the user of computer system 600a via...). Figures 6A to 6AG The user interface selection described herein is represented. In some embodiments, computer system 600b displays a representation of the selection made by the user of computer system 600b (e.g., selection made by the user of computer system 600b via a user interface selection similar to...). Figures 6V to 6AG The user interface selection described in the text is a representation of the user interface.

[0221] Figure 7This is a flowchart illustrating a method for editing a user representation for a communication context using a computer system, according to some embodiments. Method 700 is performed at a computer system (e.g., 100, 300, 500, 600a, 600b, 600c and / or 600d) (e.g., smartphone, smartwatch, tablet, laptop, desktop computer, wearable device and / or head-mounted device), the computer system being coupled with display generation components (e.g., 112, 156, 602a, 602b, 602c and / or 602d) (e.g., monitor, touchscreen display, monitor, holographic display system and / or head-mounted display system) and one or more input devices (e.g., 112, 113, 116, 204, 206, 2...). 08, 602a, 602b, 602c and / or 602d) (e.g., touch-sensitive surfaces (e.g., touch-sensitive displays); mice; keyboards; remote controls; visual input devices (e.g., one or more cameras, such as infrared cameras, depth cameras, visible light cameras and / or gaze-tracking cameras); audio input devices; biometric sensors (e.g., fingerprint sensors, facial recognition sensors, gaze-tracking sensors and / or iris recognition sensors); and / or one or more mechanical input devices (e.g., pressable input mechanisms; buttons; rotatable input mechanisms; crowns; and / or dials)) communication (e.g., including and / or connected to these components). Some operations in method 700 may be optionally combined, some operations may be optionally changed in order, and some operations may be optionally omitted.

[0222] As described below, Method 700 provides an intuitive way to edit user representations used for communication context. This method reduces the cognitive burden on users editing user representations used for communication context, thereby creating a more efficient human-computer interface. For battery-powered computing devices, it enables users to edit user representations used for communication context more quickly and efficiently, saving power and increasing the time interval between battery charges.

[0223] The computer system displays (702) a selection user interface (e.g., 638, 640, and / or 644) via a display generation component (e.g., a user interface for selecting a user representation and / or specifying a user representation associated with a communication context). While displaying the selection user interface, the computer system (e.g., 600a) detects (704) a request (e.g., 625aa, 625z, 625ac, 625ab, and / or 625ad) via one or more input devices to edit the corresponding user representation (e.g., the user representation represented by 638a, 638b, or 638c) displayed at a remote computer system (e.g., 600b) in the corresponding communication context. In some embodiments, the request to edit the corresponding user representation includes a set of one or more inputs (e.g., one or more manual inputs, button presses, touch inputs, contact on a touch-sensitive surface, body gestures, and / or voice input). In some implementations, the corresponding communication context corresponds to a communication mode (e.g., a telephone call, video call, or text message) and / or a user interface associated with one or more communication modes (e.g., a contact card with information for communicating with an entity, such as a phone number and / or email address). In some implementations, the corresponding user representation is displayed at a remote computer system communicating with a computer system (e.g., real-time communication and / or asynchronous communication).

[0224] In response to (706) detecting a request to edit a corresponding user representation: based on determining that the corresponding communication context is a first communication context (e.g., the corresponding user representation is a first user representation displayed at a remote computer system in the first communication context) (e.g., 638a centered in user interface 644), the computer system displays (708) a first representation editing user interface (e.g., 646) via a display generation component, the first representation editing user interface being used to edit (and / or in some embodiments, create) the first user representation displayed by the remote computer system in the first communication context (e.g., a user representation represented by 646a, 646b, or 646c). The computer system displays (710) a second representation editing user interface (e.g., 648 or 652) via a display generation component, based on the determination that the corresponding communication context is a second communication context different from the first communication context (e.g., the corresponding user representation is a second user representation displayed by the remote computer system in the second communication context) (e.g., 638b is centered in the user interface 644). This second representation editing user interface is used to edit (and / or, in some embodiments, create) the second user representation displayed by the remote computer system in the second communication context (e.g., the user representation represented by 648a, 648b, or 648c). In some embodiments, the first user representation is different from the second user representation (e.g., the user can create different user representations for different communication contexts). Having a first user representation different from the second user representation enables the computer system to provide the user with the ability to quickly and easily create different representations for different communication contexts, thereby providing the user with improved visual feedback and reducing the amount of input required to perform operations. The context-based display of the editable user interface enables computer systems to provide users with the desired representation for editing, and to provide users with the ability to quickly and easily select and edit representations associated with different communication contexts with less user input. This allows operations to be performed when a set of conditions have been met without further user input, providing users with improved visual feedback and reducing the amount of input required to perform operations.

[0225] In some implementations, the corresponding communication context includes (e.g., is) real-time communication (e.g., real-time communication, telephone calls, audio calls, video calls, and / or audio / video calls) (e.g., Figures 8B to 8F(e.g., telephone calls). In some embodiments, the corresponding user representation is displayed by the remote computer system in the user interface of a real-time communication application. Displaying a user interface for editing the representation displayed in real-time communication enables the computer system to provide the user with the ability to customize the representation used for communication (such as, for example, telephone calls and video calls), thereby providing control options without cluttering the user interface with additional displayed controls. In some embodiments, the corresponding communication context includes (e.g., is) displaying a representation (e.g., 832a and / or profile) of a contactable entity (e.g., a user and / or corresponding user representation associated with the computer system; for example, an individual, enterprise, service, and / or group of entities to whom the computer system can initiate communication) (e.g., in user interface 832). In some embodiments, the corresponding user representation is displayed by the remote computer system in the user interface of a real-time communication application, messaging application, email application, or content sharing application. In some embodiments, the corresponding user representation is displayed by the remote computer system in a notification associated with communication from a user associated with the corresponding user representation. Displaying a user interface for editing the representation shown for a contactable entity enables a computer system to provide a user with the ability to customize the representation for communication technologies such as text messaging and email, thereby providing control options without cluttering the user interface with additional displayed controls. In some embodiments, the corresponding communication context includes (e.g., is) displaying contact information (e.g., 830a and / or contact cards) of a user associated with the corresponding user representation (e.g., a user associated with the computer system; for example, an individual, enterprise, service, and / or group of entities to whom the computer system can initiate communication) (e.g., in user interface 830). Displaying a user interface for editing the representation shown along with the user's contact information enables a computer system to provide a user with the ability to customize the contact information interface (e.g., contact cards), thereby providing control options without cluttering the user interface with additional displayed controls.

[0226] In some implementations, a first user representation is displayed in a user interface associated with a first communication context (e.g., 814), and a second user representation is displayed in a user interface associated with a second communication context (e.g., 830 and / or 832), which is different from the user interface associated with the first communication context (e.g., the respective user representation is included in a context-based user interface). Displaying the first user representation in the user interface associated with the first communication context and the second user representation in a user interface associated with the second communication context, which is different from the user interface associated with the first communication context, enables the computer system to provide a context-specific representation, and thus a more relevant representation to the user. This makes the computer system more efficient to use and reduces errors, thereby providing the user with improved visual feedback and reducing the amount of input required for execution and operation.

[0227] In some implementations, when displaying a selection user interface, the computer system: specifies (e.g., for selection) a first representation of the communication context (e.g., 638a) (e.g., a representation of a first communication context); detects a swipe gesture (e.g., on a touch-sensitive surface communicating with the computer system) (e.g., 625z and / or 625ab); and, in response to the detected swipe gesture, specifies (e.g., for selection) a second representation of the communication context (e.g., 638b or 638c) (e.g., a representation of a different communication context and / or a representation of a second communication context). In some implementations, a request to edit a corresponding user representation displayed at a remote computer system in a given communication context includes a swipe gesture that scrolls through a set of representations of the given communication context. Specifying a second representation of the communication context in response to the detected swipe gesture allows the user to quickly and efficiently select the representation to edit, thereby reducing the amount of input required to perform the operation.

[0228] In some implementations, the computer system: (e.g., in response to detecting a set of one or more inputs via a first representation editing user interface) creates a first user representation (e.g., a user representation represented by 646a, 648a, or 652a) displayed by the remote computer system in a first communication context; and (e.g., in response to detecting a set of one or more inputs via a first representation editing user interface) creates a third user representation (e.g., different from the first user representation) displayed by the remote computer system in the first communication context (e.g., a user representation represented by 646b, 646c, 648b, 648c, 652b, or 652c) (e.g., a user can create multiple different user representations for the same communication context). Creating a third user representation displayed by the remote computer system in the first communication context allows the user to quickly and easily create multiple representations for the same communication context, thereby reducing the amount of input required to perform operations.

[0229] In some embodiments, the computer system: displays a first user representation (or, in some embodiments, a representation of the first user representation) via a display generation component (e.g., 638a); and after displaying a representation of the first communication context, displays a second user representation (or, in some embodiments, a representation of the second user representation) via the display generation component (e.g., 638b and / or 638c), including displaying an animation comprising the first and second user representations (e.g., the first user representation moving away from the center of the display, the second user representation moving towards the center of the display, and stopping the display of the animations of the first and / or second user representations). Displaying the animations comprising the first and second user representations informs the user that there is more than one user representation and enables the computer system to display more than one user representation without requiring user input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform an operation.

[0230] In some implementations, when the remote computer system operates within a corresponding communication context, the remote computer system displays a corresponding user representation (e.g., computer system 600b displays a user representation represented by 638a, 638b, 638c, 646a, 646b, 646c, 652a, 652b, or 652c based on the communication context of the remote computer system). In some implementations, based on (or in some implementations, in response to) determining that the remote computer system is operating within a corresponding communication context (e.g., a first communication context or a second communication context), the computer system displays a corresponding user representation (e.g., a first user representation or a second user representation, respectively). Displaying a corresponding user representation at the remote computer system when the remote computer system is operating within a corresponding communication context provides the user with content relevant to the current context, thereby providing the user with improved visual feedback.

[0231] In some implementations, the corresponding user representation includes a photograph (e.g., 618, 620b, and / or 632a). Including a photograph in the corresponding user representation allows the user to create a more detailed representation and efficiently customize the representation with less input, thereby reducing the amount of input required to perform an operation. In some implementations, the corresponding user representation includes an avatar (e.g., a character, a representation having an appearance based on one or more entity-based physical characteristics, and / or a representation having an appearance not based on entity-based physical characteristics) (e.g., Figure 6B 608a in Figure 6C 608b in Figure 6P 634c or Figure 8C(as in 810b). Including an avatar in the corresponding user representation enables the user to create a more detailed representation and efficiently customize the representation with less input, thereby reducing the amount of input required to perform an operation. In some implementations, the computer system displays an animation including the avatar moving over time (e.g., as in...) via a display generation component. Figures 8C to 8D (As described in [the original text]). The display includes animations of the avatar moving over time, enabling users to create more dynamic representations and efficiently customize them with less input, thereby reducing the amount of input required to perform actions. In some implementations, the corresponding user representation includes alphabetical patterns (e.g., one or more initials of an entity's name) (e.g., [the original text]). Figure 6P 634b in Figure 6Q 632a and / or Figure 8B (referring to 810a in the original text). In some embodiments, the letter combination pattern includes a pattern of two or more letters interwoven or otherwise combined (e.g., the initials of entities). Including letter combination patterns in the corresponding user representation allows the user to efficiently customize the representation with less input, thereby reducing the amount of input required to perform the operation.

[0232] It should be noted that the above is relative to method 700 (e.g., Figure 7 The details of the process described herein also apply in a similar manner to the methods described below. For example, methods 900, 1100, 1300, and / or 1500 may optionally include one or more features of the various methods described above with reference to method 700. For example, the user representation edited as described in method 700 is displayed as a corresponding representation of an entity in method 900, a real-time communication user interface in method 1100, transcribed text of a voice message in method 1300, and / or a video message user interface element in method 1500. For the sake of brevity, these details will not be repeated below.

[0233] Figures 8A to 8AE Exemplary user interfaces for displaying representations of entities in real-time communication, according to some embodiments, are illustrated. The user interfaces in these figures are used to illustrate the processes described below, including... Figure 9 The process in.

[0234] Figures 8A to 8AE Techniques for displaying representations of entities in a real-time communication interface (e.g., a caller's representation in a telephone user interface) are illustrated. Figure 8A An example is computer system 600b (e.g., John's telephone). In Figure 8A In this state, computer system 600b is in sleep mode, inactive mode, and / or power-reduced mode. Figures 8B to 8E In the middle, computer system 600b is named Kim (for example, Figures 6A to 6AGThe caller (e.g., a user who can be contacted) of the computer system 600a receives an incoming telephone call. In some embodiments, the caller representation displayed by the computer system 600b in response to receiving an incoming call is based on a caller representation that has been created, customized, and / or selected by the caller or the user of the computer system 600a (e.g., via a reference). Figures 6A to 6AG (The technology described).

[0235] Based on (e.g., via the caller's choice of representation or via the user's choice of representation in the computer system 600b) determining that the first representation is associated with the caller in the context of the telephone call communication, the computer system 600b displays... Figure 8B The call user interface 804 is shown. The call user interface 804 includes a name 806a, a graphic representation 810a (e.g., a letter combination pattern), and answer options 808. In some embodiments, references... Figures 6A to 6AG The first communication context described includes the telephone call communication context.

[0236] Based on the determination that the second representation is associated with the caller in the context of the telephone call communication, computer system 600b displays... Figure 8C The call user interface 812 is shown. The call user interface 812 includes a name 806a, a graphical representation 810b (e.g., including an avatar and / or representation of features based on the anatomical features of the user of computer system 600a), and answer options 808. In some embodiments, the graphical representation 810b moves based on predetermined animation or detected caller movement. For example, in... Figure 8D In the process, the caller’s head movement is captured by the camera of the caller’s computer system, and the graphic representation 810a moves (e.g., tilts) according to the caller’s head movement.

[0237] Based on the determination that the third representation is associated with the caller in the context of the telephone call communication, computer system 600b displays... Figure 8E The call user interface 814 is shown. The call user interface 804 includes a name 806a, a graphical representation 810c (e.g., a photo), and answer options 808.

[0238] exist Figure 8E In the process, computer system 600b detects a selection 825a of the answer option 808 (e.g., a swipe gesture or a tap and drag gesture). In response to detecting a selection 825a of the answer option 808, computer system 600b answers the incoming call and displays, as shown in the image. Figure 8F The call user interface 814 is shown. In some embodiments, when a call is answered, the computer system 600b zooms in or out on the graphical representation 810c, such as... Figure 8FAs shown. When a call is answered, computer system 600b displays optional call controls 814a for performing functions associated with the call (e.g., options to end the call, display a keypad, mute or unmute the microphone, add a person to the call, initiate a video call with the caller, and / or enable or disable the speaker for the call's audio).

[0239] In some implementations, when an incoming call is received from a caller, if it is determined that the caller does not have a representation associated with the telephone call communication context (e.g., neither the caller nor the user of computer system 600b has created or selected a representation for the caller in a telephone call communication context), but has a representation for another communication context (e.g., a personal avatar for a text message or other communication protocol), computer system 600b displays a representation 806b of the other communication context (e.g., a personal avatar, a monogram pattern, an avatar, or other image from a contact card), such as... Figure 8G The call user interface 816 shown is shown.

[0240] In some implementations, upon receiving an incoming call, based on the determination that the call originates from an unknown caller, computer system 600b displays the call user interface in a predetermined background color (e.g., Figure 8H The call user interface 818 shown allows a user to easily identify that the call is from an unknown caller. In some embodiments, a predetermined background color (e.g., a background color unique to an unknown caller) is not used and cannot be selected in any other call user interface on the computer system 600b. The call user interface 818 includes the number 806c of the incoming call and a position 820 associated with the number of the incoming call.

[0241] In some implementations, upon receiving an incoming call, based on the determination that the call originates from an authorized enterprise, computer system 600b displays the call user interface with a predetermined background color (e.g., Figure 8I The call user interface 822 shown allows the user to easily identify that the call originates from an authorized business. In some embodiments, a predetermined background color (e.g., unique to the authorized business) is not used and cannot be selected in any other call user interface on the computer system 600b. The call user interface 822 includes a representation 806d, which includes the business's name and number.

[0242] In some implementations, upon receiving an incoming call, if the representation associated with the caller is determined to include potentially sensitive content (e.g., a potentially sensitive photograph), the computer system 600b displays a call user interface (e.g., without potentially sensitive content) that does not contain such content. Figure 8JThe call user interface 824 is shown. The call user interface 824 includes the caller's name 806a, an indication 824a that includes potentially sensitive photos, and a view photo option 824b that can be selected to cause the computer system 600b to display the photos. In some embodiments, in response to the selection of the view photo option 824b, the computer system 600b automatically displays the photos for future calls from the caller. In some embodiments, after the selection of the view photo option 824b, for future calls from the caller, the computer system 600b displays the view photo option 824b without displaying potentially sensitive photos.

[0243] In some implementations, upon receiving an incoming call, based on the determination that the call is associated with a pre-defined region (e.g., a geographic region), computer system 600b displays a call user interface (e.g., in a format associated with that region) Figure 8K The caller interface 825 is shown as 826. For example, when the caller is located in Japan, the interface 825 includes Japanese characters and vertically oriented the caller's name 806e. In some embodiments, this region is based on the region associated with the caller, the regional settings of the caller's computer system, the regional settings of computer system 600b, the caller's location (e.g., the location of computer system 600a), and / or the location of computer system 600b. In some embodiments, the user can select a region-associated format for the caller's representation independently of the caller or computer system 600b, which are otherwise associated with a region.

[0244] In some implementations, upon receiving an incoming call, the computer system 600b displays a prompt to accept or reject the name update, based on the determination that the caller has already updated the name associated with the caller. For example, in Figure 8L In the call user interface 814, computer system 600b displays prompt 814a. (Reference) Figure 8E The call user interface 814 is described. Prompt 814a includes an accept option 814b and a reject option 814c. In response to detecting a selection 825b of the accept option 814b, the computer system 600b displays an updated name 806f in the call user interface 814, such as... Figure 8M As shown.

[0245] In some implementations, if the representation of the caller in the context of telephone communication has been updated since the most recent communication with the caller, the computer system 600b automatically displays the updated representation when answering an incoming call. For example, in response to detecting a call... Figure 8E In the answer option 808, if the caller's representation has been updated since the most recent communication with the caller, the computer system 600b displays... Figure 8N The call user interface 828 is shown. The call user interface 828 includes an updated representation of the caller 806g, call control options 828b, and an update indicator 828a. In some embodiments, the update indicator 828a includes a graphical representation of the caller (e.g., a photo, avatar, or alphabetic pattern). Figure 8O In this system, computer system 600b replaces update indicator 828a with information option 828c. Changing update indicator 828a to information option 828c indicates to the user that the caller's representation has been updated, and information option 828c can be selected to change the caller's representation back to the previous representation and / or edit the caller's representation (e.g., the caller's representation in the contacts application on computer system 600b).

[0246] exist Figure 8O In the process, computer system 600b detects a selection 825c of information option 828c. In response to detecting a selection 825c of information option 828c, computer system 600b displays a user interface 830 including information associated with the caller (e.g., a contact card). User interface 830 includes a caller representation 830a and user interface elements 830b, which include notifications of the caller's latest photo updates and a restore option 830c. In response to detecting a selection 825d of restore option 830c, computer system 600b changes the caller representation back to the previous version and updates user interface 830 accordingly. Figure 8Q As shown.

[0247] return Figure 8R Computer system 600b displays a user interface 832 of a messaging application. User interface 832 displays a messaging conversation between a remote participant Kim (e.g., a user of computer system 600a) and a user of computer system 600b. User interface 832 includes a representation 832a of the remote participant, notifications 834, and a message area 836. Message area 836 includes messages between the user of computer system 600b and the remote participant (e.g., messages 936a from the remote participant to the user of computer system 600b and messages 836b from the user of computer system 600b to the remote participant). Notifications 834 include an indication 834a that a new contact photo can be used by the remote participant in the messaging conversation, a preview of the new contact photo, and an update option 834b. In response to detecting a selection 825g of the update option 834b, computer system 600b changes representation 832a from the remote participant's existing (or previous) representation to the updated representation of the remote participant. In some implementations, computer system 600b displays the remote participant's representation changing from representation 832a to intermediate representation 832b. Figure 8SAs shown), and then changed to the updated representation 832c ( Figure 8T The animation simulates a coin flipping or rotating around a vertical axis from one side of the coin to the other (e.g., representation 832a on one side of the coin, and the updated representation 832c on the other side). In some embodiments, the computer system 600b automatically displays the updated representation 832c when the user interface 832 is first displayed, after a remote participant has updated the representation (e.g., without user input).

[0248] Go to Figure 8U In some implementations, when an incoming call is received from a caller, the computer system 600b displays a default representation 806g (e.g., name only) as shown in the call user interface 838, based on the determination that the caller does not have a representation associated with the telephone call communication context (e.g., neither the caller nor the user of the computer system 600b has created or selected a caller representation for the telephone call communication context).

[0249] Go to Figure 8V In some implementations, the representation selected by the user for the communication context can be displayed on different types of computer systems. For example, Figure 8V Examples of the display 810c shown are on the display 602b of the tablet computer 600b, the display 602c of the desktop computer 600c, and the display 602d of the watch computer 600d.

[0250] Go to Figures 8W to 8Z An example is illustrated where a call is received when the computer system 600b is in a reduced power state (e.g., sleep state and / or inactive state). Figure 8W An example is a computer system 600b displaying a user interface 840 in a reduced power state (e.g., a locked screen or a woke-up screen), wherein the display 602a is in a dimmed or reduced brightness state. Figure 8X In this process, computer system 600b receives an incoming call. In response to receiving an incoming call, computer system 600b displays a user interface 842 with a name 806a and answer options 808, while remaining in a low-power state (e.g., display 602a remains dimmed and / or has reduced brightness) and does not display a statement 810c.

[0251] In display Figure 8XWhen the user interface 842 is displayed, the computer system 600b detects a request to exit the power reduction state. In some embodiments, the request to exit the power reduction state includes input on the display 602a, button presses, and / or movements of the computer system 600b that are determined to indicate that the computer system 600b is being lifted and / or looked at by the user. In response to detecting the request to exit the power reduction state, the computer system 600b exits the power reduction state and displays a representation 810c (e.g., the computer system 600b displays a call user interface 804, 812, 814, or 846).

[0252] In some implementations, in response to receiving Figure 8W Upon receiving an incoming call, computer system 600b displays a user interface 844 with a name 806a and an identifier 844, while maintaining a low-power state (e.g., display 602a remains dimmed and / or has reduced brightness) and does not display answer options 808, such as... Figure 8Y As shown. In response to the detection of a request to exit the power reduction state, computer system 600b exits the power reduction state and displays response option 808, as shown. Figure 8Z The call user interface 846 is shown in the figure.

[0253] Figures 8AA to 8AD Examples of technologies and user interfaces for providing calls with three or more participants, according to some implementation schemes, are illustrated. Figure 8AA In this context, computer system 600d receives a request to join a call (e.g., an audio call) with a group of four people (e.g., three remote individuals and the user of computer system 600d). In response to receiving the request to join the call, computer system 600d displays an incoming call user interface 854. The call user interface 854 includes participant representations 854a1 to 854a3 for the participants active in the group call (e.g., corresponding individual participants). In some embodiments, computer system 600d displays a single representation (e.g., a group representation) that represents the group of participants as a whole. A status indicator 854b (e.g., "3 people active") indicates the number of people actively participating in the group call. A group indicator 854c (e.g., "Janelle and 3 others") describes the group. Call control options 854d1 to 854d3 can be selected to perform corresponding functions associated with the group call. In response to detecting a selection 825f of the answer option 854d2, computer system 600d answers the group call, such that the user of computer system 600d is an active participant. In response to the computer system 600d joining the call, the computer system 600d updates the status indicator 854b to indicate that the four people are active, such as Figure 8AB As shown.

[0254] In some implementations, the computer system 600d zooms in on the representation of the participant who is actively speaking and removes the display of representations from other (e.g., all other) participants. For example, in Figure 8AB In the diagram, the remote participant corresponding to participant representation 854a3 is actively speaking. Therefore, computer system 600d magnifies the display of participant representation 854a3 and does not display representations of other participants (e.g., participant representations 854a1 and 854a3).

[0255] In some implementations, the computer system 600d displays the representations of participants who are actively speaking (or have recently spoken) at a larger size than the representations of participants who have not spoken (or have not spoken recently). For example, in Figure 8AC In the diagram, the participant corresponding to participant representation 854a1 is actively speaking (or is the most recently speaking participant). Therefore, computer system 600d displays participant representation 854a1 at a larger size than participant representations 854a2, 854a3, and 854a4. It is worth noting that, compared to... Figure 8AA Compared to the call user interface 854, since the computer system 600d is an active participant in the call, the computer system 600d displays a participant representation 854a4 corresponding to the user of the computer system 600d.

[0256] exist Figure 8AD In the case of a remote participant, John, leaving a group call, computer system 600d updates status indicator 854b and provides a notification in response to the remote participant leaving the call. In some embodiments, providing the notification includes displaying a notification 856a (e.g., "John hung up the phone"), outputting a haptic notification 856b, and / or outputting an audio notification 856c. In some embodiments, if computer system 600d is in a de-powered state (e.g., a sleep state and / or an inactive state) when the remote participant leaves the call, computer system 600d remains in the de-powered state and provides audio and / or haptic output without displaying a notification (e.g., not displaying notification 856a). Figure 8AE As shown. In some implementations, refer to Figures 8AA to 8AE The described technologies and user interfaces are implemented on computer system 600a, computer system 600b, computer system 600c and / or computer system 600e.

[0257] Figure 9This is a flowchart illustrating a method for displaying a representation of an entity communicating in real time using a computer system, according to some embodiments. Method 900 is performed at a computer system (e.g., 100, 300, 500, 600a, 600b, 600c, and / or 600d) (e.g., a smartphone, smartwatch, tablet, laptop, desktop computer, wearable device, and / or head-mounted device) that communicates (e.g., includes and / or connects to) a display generation component (e.g., 112, 156, 602a, 602b, 602c, and / or 602d) (e.g., a monitor, touchscreen display, monitor, holographic display system, and / or head-mounted display system). In some implementations, the computer system communicates with (e.g., includes and / or is connected to) one or more input devices (e.g., 112, 113, 116, 204, 206, 208, 602a, 602b, 602c and / or 602d) (e.g., touch-sensitive surfaces (e.g., touch-sensitive displays); mice; keyboards; remote controls; visual input devices (e.g., one or more cameras, such as infrared cameras, depth cameras, visible light cameras and / or gaze-tracking cameras); audio input devices; biometric sensors (e.g., fingerprint sensors, facial recognition sensors, gaze-tracking sensors and / or iris recognition sensors); and / or one or more mechanical input devices (e.g., pressable input mechanisms; buttons; rotatable input mechanisms; crowns; and / or dials)).

[0258] As described below, method 900 provides an intuitive way to display representations of entities in real-time communication. This method reduces the cognitive burden on users displaying representations of entities in real-time communication, thereby creating a more efficient human-computer interface. For battery-powered computing devices, it enables users to display representations of entities in real-time communication more quickly and efficiently, saving power and increasing the time interval between battery charges. Some operations in method 900 may be optionally combined, the order of some operations may be optionally changed, and some operations may be optionally omitted.

[0259] The computer system receives (902) incoming real-time communications from an entity (e.g., the entity initiating the incoming real-time communication, the caller, a person, a user, an enterprise, and / or a group) (or, in some embodiments, receives indications of incoming real-time communications, such as data, information, and / or signals) (e.g., 600b receives). Figure 8B , Figure 8C , Figure 8D , Figure 8E , Figure 8G , Figure 8H , Figure 8I , Figure 8J , Figure 8K , Figure 8L , Figure 8M , Figure 8U , Figure 8V , Figure 8X , Figure 8Y and Figure 8Z (Incoming real-time communication). In some embodiments, real-time communication is a telephone call. In some embodiments, real-time communication is an audio call. In some embodiments, real-time communication is a video call. In some embodiments, real-time communication includes real-time audio and / or video communication (e.g., audio and / or video conferencing). In some embodiments, real-time communication includes communication between two or more participants. In response to receiving an incoming real-time communication (or, in some embodiments, in response to receiving an indication of an incoming real-time communication, such as data, information, and / or signals), and before the incoming real-time communication is accepted (e.g., before responding to the incoming real-time communication), the computer system displays (904) a corresponding representation of the entity (e.g., 804, 806a, 806b, 806c, 806d, 806e, 806f, 806g, 810a, 812, 810b, 810c, 814, 816, 818, 822, 826, 838, 842, 844, and / or 846) via a display generation component, including: determining a first set of criteria that satisfy the criteria, wherein the first set of criteria includes the entity that initiated the incoming real-time communication (e.g., Figures 8B to 8E The criteria that "Kim" in the text satisfies when the first representation of the entity is selected (e.g., according to...) Figures 6A to 6AG(Any of the techniques described herein), the computer system displays (906) a first representation of an entity via a display generation component (e.g., the corresponding representation of the entity includes (e.g., is) the first representation of the entity) (e.g., if the entity has selected a first representation for the real-time communication context, the computer system displays the first representation); and according to determining a second set of criteria (e.g., a set of criteria different from the first set of criteria), wherein the second set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity different from the first representation of the entity, the computer system displays (908) a second representation of the entity via the display generation component (e.g., the corresponding representation of the entity includes (e.g., is) the second representation of the entity) (e.g., if the entity has selected a second representation for the real-time communication context, the computer system displays the second representation). In response to receiving an incoming real-time communication and displaying the corresponding representation of the entity before the incoming real-time communication is accepted, the user is notified that the entity is attempting to communicate with the user, thereby providing improved visual feedback. Displaying entity representations based on entity selection enables computer systems to quickly and efficiently notify users of entities that initiate incoming real-time communications. It also allows for customization of representations when receiving real-time communications without navigating the user interface, enabling actions to be performed when a set of conditions are met without further user input, providing improved visual feedback to users, and reducing the amount of input required to perform actions.

[0260] In some implementations, the corresponding representation of the entity includes (e.g., is) a visual representation already selected by the entity (e.g., 804, 806a, 806b, 806c, 806d, 806e, 806f, 806g, 810a, 812, 810b, 810c, 814, 816, 818, 822, 826, 838, 842, 844 and / or 846). Displaying a visual representation already selected by the entity enables the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication without navigating the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an action. In some implementations, the visual representation of the entity includes (e.g., is) a photograph (e.g., 810c) of the entity. Displaying a photograph already selected by the entity enables the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication without navigating the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an action. In some implementations, the visual representation of an entity includes (e.g., is) an avatar (e.g., 810b, a character, a representation having an appearance based on one or more physical characteristics of the entity, and / or a representation having an appearance not based on physical characteristics of the entity). Displaying an avatar already selected by the entity enables the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication without navigating the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an action. In some implementations, before the incoming real-time communication is accepted (e.g., while the incoming real-time communication is awaiting a response), the computer system displays an animation (e.g., a reference) via a display generation component, including the movement of the avatar over time. Figures 8C to 8D The animation shown and described in 810b (e.g., predetermined animation and / or animation based on the physical movement of the entity). Displaying animations that include the avatar's movement over time enables the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication, and adds dynamic elements to the user interface without navigating the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an action. In some embodiments, the visual representation of the entity includes a letter combination pattern (e.g., 810a) (e.g., one or more initials of the entity's name). In some embodiments, the letter combination pattern includes a pattern of two or more letters interwoven or otherwise combined (e.g., the initials of the entity). Displaying a letter combination pattern already selected by the entity enables the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication without navigating the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an action.

[0261] In some implementations, displaying a corresponding representation of an entity before the incoming real-time communication is received includes using a first magnification (e.g., Figure 8E The corresponding representation of the entity is displayed at a magnification greater than the first magnification (e.g., the magnification of 810c shown); the computer system (e.g., via 825a) receives real-time communication (e.g., incoming real-time communication); and in response to receiving real-time communication (e.g., incoming real-time communication), the computer system, via a display generation component, displays a second magnification greater than the first magnification (e.g., the magnification of 810c shown); Figure 8F The magnification of the entity (e.g., the computer system magnifies the corresponding representation of the entity in response to receiving real-time communication) at a second magnification greater than the first magnification improves the visibility of the entity's representation without requiring the user to provide additional input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0262] In some implementations, the corresponding representation of the displayed entity (e.g., Figure 8F Following 810c), the computer system receives an incoming second real-time communication from the entity; and in response to receiving the incoming second real-time communication, and before the incoming real-time communication is accepted, the computer system displays (e.g., automatically displays without user input) via a display generation component an updated corresponding representation different from the entity's selected representation (e.g., 806g) (e.g., if the entity selects a new representation after the first real-time communication, the computer system displays the new representation in response to receiving the incoming second real-time communication). Displaying an updated corresponding representation different from the entity's selected representation in response to receiving the incoming second real-time communication, before the incoming real-time communication is accepted, allows the computer system to automatically adapt to updates to the selected representation and more accurately notify the user of the entity initiating the real-time communication without requiring additional input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform operations.

[0263] In some implementations, the corresponding representation of the displayed entity (e.g., Figure 8F Following step 810c), the computer system receives an incoming third real-time communication from the entity; the computer system detects a request to accept (e.g., respond and / or connect) the incoming third real-time communication from the entity (e.g., 825a) (e.g., selection of a user interface element); and in response to detecting the request to accept the incoming third real-time communication, the computer system accepts (e.g., responds) the incoming third real-time communication and displays, via a display generation component, an updated corresponding representation different from the corresponding representation selected by the entity (e.g., 806g) (e.g., as shown in the image). Figure 8N(As shown) (For example, if an entity selects a new representation after a first real-time communication, the computer system displays the new representation in response to receiving an incoming third real-time communication). Displaying the updated, appropriate representation selected by the entity in response to detecting a request for an incoming third real-time communication allows the computer system to automatically adapt to updates to the selected representation and more accurately notify the user of the entity initiating the real-time communication without requiring additional input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform operations.

[0264] In some embodiments, after displaying the corresponding representation of an entity, in response to determining that the current corresponding representation selected by the entity is different from the corresponding representation of the entity displayed in response to receiving incoming real-time communication (e.g., determining that the user has updated the corresponding representation), the computer system displays, via a display generation component, an indication (e.g., 828a, 828b, 830a, 830b, 830c, 832a, 832b, and / or 832c) that the current corresponding representation is an updated corresponding representation (e.g., the corresponding representation selected by the entity has been updated since the last access to the communication context associated with the entity). In some embodiments, the indication that the current corresponding representation is an updated corresponding representation includes displaying a representation of the updated corresponding representation. In some embodiments, the indication that the current corresponding representation is an updated corresponding representation includes displaying a first indication and then replacing the display of the first indication with a second indication different from the first indication (e.g., changing the indication from the first indication to the second indication). In some embodiments, replacing the display of the first indication with the second indication includes stopping the display of the first indication. In some implementations, replacing the display of the first indicator with the second indicator includes an animation showing the first indicator changing to the second indicator over time (e.g., an animation of a coin flipping and / or an animation including one or more intermediate states). In response to determining that the current corresponding representation selected by the entity is different from the corresponding representation displayed in response to receiving incoming real-time communication, an indicator that the current corresponding representation is the updated corresponding representation automatically notifies the user of the change in the selected representation, thereby providing improved visual feedback to the user and performing an action when a set of conditions has been met without requiring further user input.

[0265] In some implementations, the computer system detects the selection of an indication that the current corresponding representation is an updated corresponding representation (e.g., 825c and / or 825d); in response to the detection of the selection of an indication that the current corresponding representation is an updated corresponding representation, the computer system displays a recovery user interface element (e.g., 830c) via a display generation component (e.g., in the user interface of a real-time communication or in another user interface); the computer system detects the selection of a recovery user interface element (e.g., 825d); and after (e.g., in response to) the detection of the selection of a recovery user interface element, the computer system displays, via the display generation component, the corresponding representation of the entity displayed in response to the receipt of an incoming real-time communication (e.g., 830a) (e.g., displaying the previous representation of the entity). Displaying the recovery user interface element in response to the detection of the selection of an indication that the current corresponding representation is an updated corresponding representation notifies the user of the option to restore the corresponding representation to the previous representation, and enables the user to quickly and efficiently restore the corresponding representation to the previous representation, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation. In some implementations, displaying the recovery user interface element includes displaying the recovery user interface element in the user interface of a messaging application (e.g., 832). Displaying a restore user interface element in the messaging application's user interface informs the user of the option to restore the corresponding representation from the messaging communication context to the previous representation, and enables the user to quickly and efficiently restore the corresponding representation to the previous representation, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0266] In some implementations, the computer system is in a reduced power state (e.g., compared to a normal operating state) (e.g., Figure 8X and / or Figure 8Y When the computer system is in a power-reduction state, the display of the computer system has reduced brightness (e.g., compared to normal operating conditions) and / or reduced functionality (e.g., compared to normal operating conditions). Executing the corresponding representation of the display entity when the computer system is in a power-reduction state allows the computer system to notify the entity initiating real-time communication while reducing power consumption, thereby providing improved visual feedback and extending battery life. In some embodiments, the corresponding representation of the display entity when the computer system is in a power-reduction state includes the corresponding representation of the display entity (e.g., ...). Figure 8Y810c) without displaying (e.g., any) user-interactive graphical user interface elements (e.g., 808) (e.g., not displaying any graphical buttons for controlling the computer system); when displaying a corresponding representation of an entity while the computer system is in a de-powered state, the computer system detects a predefined movement of the computer system (or, in some embodiments, a part of the computer system) (e.g., a movement indicating to turn on the computer system, looking at the computer system, and / or a wrist-raising gesture); and in response to detecting the predefined movement of the computer system, the computer system displays (e.g., maintains the display) a corresponding representation of an entity (e.g., ...). Figure 8Y In some embodiments, the computer system displays a corresponding representation of an entity in response to the detection of a predefined movement of the computer system, without displaying (e.g., any) user-interactive graphical user interface elements (e.g., 808) (e.g., without displaying any graphical buttons for controlling the computer system). Displaying a corresponding representation of an entity in response to the detection of a predefined movement of the computer system, without displaying user-interactive graphical user interface elements, allows the computer system to notify the user of the entity initiating the real-time communication while reducing power consumption, thereby providing improved visual feedback and extending battery life. In some embodiments, the computer system communicates with (e.g., includes and / or connects to) a touch-sensitive surface (e.g., 602b) (e.g., a touch-sensitive display); after displaying a corresponding representation of an entity in response to the detection of a predefined movement of the computer system, without displaying (e.g., any) user-interactive graphical user interface elements, the computer system detects contact on the touch-sensitive surface (e.g., 825e, taps and / or other touch gestures); and in response to the detection of contact on the touch-sensitive surface, the computer system displays one or more user interface elements (e.g., 810c) via a display generation component to perform a corresponding function associated with the incoming real-time communication. Figure 8Z The 808 shown (e.g., user-interactive user interface elements, optional user interface elements, optional options, buttons, optional icons, and / or indications of functionality (e.g., graphical elements that, when selected, cause the computer system to accept incoming real-time communications; graphical elements that, when selected, cause the computer system to reject incoming real-time communications; graphical elements that, when selected, cause the computer system to forward incoming real-time communications to a voicemail service; graphical elements that, when selected, cause the computer system to initiate a message (e.g., a text message or email) to an entity; and / or graphical elements that, when selected, cause the computer system to initiate a process for setting a notification to a calling entity). Displaying one or more user interface elements in response to the detection of contact on a touch-sensitive surface to perform corresponding functions associated with incoming real-time communications enables the computer system to provide controls when they are relevant to the user without additional input and simultaneously reduces power consumption, thereby providing improved visual feedback, providing additional control options without cluttering the user interface with additional displayed controls, and extending battery life.

[0267] In some implementations, the corresponding representation of the displayed entity includes displaying the corresponding representation of the entity against a black background (e.g., no background displayed). Displaying the corresponding representation of the displayed entity against a black background notifies the user of the entity initiating the incoming real-time communication, while simultaneously reducing power consumption, thereby providing improved visual feedback and extending battery life.

[0268] In some implementations, the corresponding representation of an entity includes a name selected by the entity (e.g., 806a, 806b, 806c, 806d, 806e, 806f, and / or 806g). Including the entity-selected name in the corresponding representation enables the computer system to quickly and efficiently notify the user of the entity initiating the incoming real-time communication, and customizes the representation without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an action. In some implementations, displaying the corresponding representation of an entity includes: determining that the name selected by the entity differs from that selected by the computer system (e.g., Figure 8L 806a) The name associated with the entity (e.g., a previous name) (e.g., in an account and / or application associated with the computer system) and the name selected by the entity (e.g., via option 825b of 814b) has been approved by a user associated with the computer system, and the computer system displays a corresponding representation of the entity along with the name selected by the entity (e.g., 806f); and based on the determination that the name selected by the entity is different from the name associated with the entity through the computer system, and the name selected by the entity has not yet been approved by a user associated with the computer system (e.g., in an account and / or application associated with the computer system). Figure 8L (Select 814c) The computer system displays the corresponding representation of the entity along with the name associated with the entity through the computer system. Displaying an updated representation of the entity along with the name selected by the entity, based on whether the name has been approved by the user of the computer system, allows the computer system to avoid confusion that might cause user errors and require additional input, thereby providing improved visual feedback to the user and reducing the amount of input required to perform operations.

[0269] In some implementations, the corresponding representation of the entity includes the entity (e.g., via...) Figure 6H The font selected by the entity (625c) displays the entity's name. Displaying the entity's name in the font selected by the entity allows the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication, and customizes the corresponding representation without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform the operation. In some embodiments, displaying the corresponding representation of the entity includes (e.g., via...) Figure 6J 625g and / or Figure 6K(625h) Displays the entity's name and an image in a format selected by the entity. Displaying the entity's name and an image in a format selected by the entity enables the computer system to quickly and efficiently notify the user of the entity initiating an incoming real-time communication, and to customize the corresponding representation without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform operations. In some embodiments, displaying the corresponding representation of the entity includes (e.g., via selection) Figure 6H The color option in 624c displays a visual representation of an entity using a color chosen by the entity. Displaying a visual representation of an entity using a color chosen by the entity allows computer systems to quickly and efficiently notify the user of the entity initiating an incoming real-time communication, and to customize the corresponding representation without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform operations.

[0270] In some implementations, the corresponding representation of the entity includes: based on the determination that a user associated with the computer system (e.g., a recipient of real-time communication) has (e.g., via...) Figures 6V to 6AG The third representation of the entity (e.g., the representation selected by the entity itself, which differs from the representation selected by the entity itself, in one or more of the technologies shown and described) is displayed via a display generation component. In some embodiments, if the user associated with the computer system has already selected a third representation of the entity that differs from the representation selected by the entity itself, then a first set of criteria and a second set of criteria are not satisfied. Displaying the third representation of the entity based on the determination that the user associated with the computer system has already selected a third representation of the entity that differs from the representation selected by the entity itself enables the computer system to display a representation of the entity familiar to the user upon receiving an incoming real-time communication without additional user input, and better informs the user of the entity initiating the real-time communication, thereby performing an operation without further user input when a set of conditions has already been met, thus providing improved visual feedback and reducing the amount of input required to perform the operation. In some embodiments, displaying the third representation of the entity (e.g., the representation selected by the user associated with the computer system) includes using a first layout (e.g., Figure 6J , Figure 8B , Figure 8C or Figure 8E The layout shown displays a third representation of the entity (e.g., configuration of name, photo, and / or call status identifier), and displays a first representation of the entity (or, in some embodiments, a second representation) (e.g., a representation selected by the caller) including a second layout different from the first layout (e.g., Figure 6K or Figure 8KThe layout shown displays a first representation (or, in some embodiments, a second representation) (e.g., a representation with a different layout than the one selected by the caller when the recipient has overwritten the representation selected by the caller). Displaying a third representation of an entity in the first layout, and displaying the first representation in a second layout different from the first layout, allows the computer system to customize the representation of an entity without additional user input and to better inform the user of the entity, thereby providing improved visual feedback and reducing the amount of input required to perform an operation.

[0271] In some implementations, the first set of standards includes standards that are satisfied when the computer system is a first type of computer system (e.g., 600a or 600b) (e.g., a telephone, tablet, desktop computer, laptop computer, or watch) or a second type of computer system different from the first type (e.g., 600c, 600d, or 600e) (e.g., the corresponding representation of an entity is used on different platforms). In some implementations, the second set of standards includes standards that are satisfied when the computer system is either the first type of computer system or the second type of computer system. Including standards that are satisfied when the computer system is either the first type of computer system or a second type of computer system different from the first type of computer system enables the corresponding representation to be displayed on different types of computer systems and enables the computer system to provide consistency to users across platforms to avoid user confusion and input errors, thereby providing improved visual feedback and reducing the amount of input required to perform operations.

[0272] In some implementations, displaying the corresponding representation of an entity includes: based on determining that the incoming real-time communication originates from an unknown entity (e.g., an unknown caller, an unknown source, and / or a number or entity not saved as a contact by the computer system), using a first predefined color (e.g., as referenced). Figure 8HThe corresponding representation of an entity is displayed using colors shown and described (e.g., colors that identify incoming real-time communication as originating from an unknown caller or source; and / or colors that are unique to an unknown caller). In some embodiments, based on the determination that the incoming real-time communication originates from an unknown entity, the computer system displays the corresponding representation of the entity with text and / or background in a first predefined color. Displaying the corresponding representation of the entity in a first predefined color based on the determination that the incoming real-time communication originates from an unknown entity enables the computer system to quickly and efficiently notify the user that the incoming real-time communication originates from an unknown entity to avoid unnecessary input (e.g., responding to an unexpected real-time communication), thereby performing an action without further user input when a set of conditions has been met, thus providing improved visual feedback and reducing the amount of input required to perform the action. In some embodiments, the first predefined color cannot be used (e.g., by a user such as a caller or receiver) to select a color as a voice response representation (e.g., the first predefined color cannot be used to select from a set of color options 624c). Preventing a first predefined color from being used as the corresponding color enables the computer system to quickly and efficiently notify the user that incoming real-time communication is from an unknown entity to avoid unnecessary input (e.g., responding to unexpected real-time communication), thereby providing improved visual feedback and reducing the amount of input required to perform an operation.

[0273] In some implementations, displaying the corresponding representation of an entity includes: based on determining that the incoming real-time communication originates from an enterprise (e.g., an official enterprise), displaying the corresponding representation of the entity in a second predefined color (e.g., a color that identifies the incoming real-time communication as belonging to a known or official enterprise; and / or a color that is unique to official enterprises) (e.g., as referenced). Figure 8I (As shown and described). In some embodiments, based on the determination that the incoming real-time communication originates from the enterprise, the computer system displays a corresponding representation of the entity with text and / or background in a second predefined color. Displaying the corresponding representation of the entity in a second predefined color based on the determination that the incoming real-time communication originates from the enterprise enables the computer system to quickly and efficiently notify the user that the incoming real-time communication originates from the enterprise, and prevents errors by avoiding confusion with other types of entities, thereby performing an action without further user input when a set of conditions has been met, thus providing improved visual feedback and reducing the amount of input required to perform the action. In some embodiments, the second predefined color cannot be used (e.g., by a user such as a caller or receiver) as the color for the voice response representation (e.g., the second predefined color cannot be used for selection in a set of color options 624c). Making the second predefined color unusable as the color for the response representation enables the computer system to notify the user of the entity and avoid confusion with other types of entities, thereby providing improved visual feedback and reducing the amount of input required to perform the action.

[0274] In some implementations, displaying the corresponding representation of an entity includes: based on the determination that a visual representation has not yet been selected for the entity (e.g., by the caller or receiver, where neither the caller nor the receiver has set a custom appearance for the caller's representation), displaying the corresponding representation of the entity in a predefined (e.g., generic) visual representation (e.g., for entities where a visual representation is not unique). Figure 8U (As shown). By determining that a visual representation has not yet been selected for an entity, the corresponding representation of the entity can be displayed in a predefined visual representation, enabling the computer system to customize the corresponding representation based on the entity without requiring the user to navigate the user interface. This allows the system to perform operations when a set of conditions has been met without requiring further user input, thereby providing improved visual feedback and reducing the amount of input required to perform the operation.

[0275] In some implementations, based on whether a real-time communication (e.g., an incoming or outgoing real-time communication) is determined to be an emergency communication (e.g., an SOS call, a call to or from emergency services, and / or a call to or from 911), the computer system displays the real-time communication user interface (e.g., the call user interface) against a dark (e.g., black) background. Displaying the real-time communication interface against a dark background provides privacy for the user and avoids drawing attention to the computer system in the event of a potential emergency.

[0276] In some implementations, displaying a corresponding representation of an entity includes: determining that a corresponding geographic region associated with the incoming real-time communication is a first geographic region (e.g., determining that the entity is located in or otherwise associated with a first geographic region, determining that the computer system receiving the incoming real-time communication is physically located in the first geographic region, and / or setting parameters of the computer system receiving the incoming real-time communication to the first geographic region), in a first format (e.g., a first layout, a first font, a first size, a first color, and / or a first configuration) (e.g., ...). Figure 8B The layout shown displays the corresponding representation of the entity; and based on determining that the corresponding geographic region associated with the incoming real-time communication is a second geographic region different from the first geographic region (e.g., determining that the entity is located in the second geographic region or otherwise associated with the second geographic region, determining that the computer system receiving the incoming real-time communication is physically located in the second geographic region, and / or setting the parameters of the computer system receiving the incoming real-time communication to the second geographic region), in a second format different from the first format (e.g., second layout, second font, second size, second color, and / or second configuration), (e.g., second layout, second font, second size, second color, and / or second configuration). Figure 6K or Figure 8KThe layout shown displays the corresponding representation of the entity. Displaying the corresponding representation of the entity in a geographic region-based format allows the computer system to customize the corresponding representation for different regions and provide a representation suitable for a specific region without requiring additional user input. This enables the system to perform operations when a set of conditions has been met without further user input, providing improved visual feedback and reducing the amount of input required to perform operations.

[0277] In some implementations, the corresponding geographic region is a geographic region associated with an entity (e.g., the format is based on the caller's geographic region). Displaying the corresponding representation based on the geographic region associated with the entity allows the computer system to customize the representation based on the entity-related region without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an operation. In some implementations, the corresponding geographic region is a geographic region associated with the recipient of the incoming real-time communication (e.g., a geographic region associated with the computer system and / or a user associated with the computer system). Displaying the corresponding representation based on the geographic region associated with the recipient of the incoming real-time communication allows the computer system to customize the representation based on the region associated with the recipient of the incoming real-time communication without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an operation. In some implementations, the corresponding geographic region is a geographic region associated with the settings of the computer system (e.g., the geographic region settings of the computer system). Displaying the corresponding representation based on the geographic region associated with the settings of the computer system allows the computer system to customize the representation in a manner relevant to the computer system receiving incoming real-time communication without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an operation. In some implementations, a corresponding geographic region is associated with the language settings of the computer system (e.g., the computer system displays the corresponding representation in different formats for different language settings; for example, when the language setting is set to English, the computer system displays the corresponding representation in a different format than when the language setting is set to Japanese, Korean, or Chinese). Displaying the corresponding representation based on the computer system's language settings allows the computer system to customize the representation in a manner relevant to the real-time communications received by the computer system, without requiring the user to navigate the user interface, thereby providing improved visual feedback and reducing the amount of input required to perform an operation. In some implementations, when the computer system is not physically located in a geographic region, the corresponding representation is displayed in a format associated with the corresponding geographic region (e.g., a first format or a second format) (e.g., the user can select a format associated with the corresponding geographic region for use outside the corresponding geographic region). Displaying the corresponding representation in a format associated with the corresponding geographic region when the computer system is not physically located in a geographic region allows the computer system to provide a format that the user might expect for the region, even if the user, entity, or computer system is not otherwise associated with the geographic region, thereby providing improved visual feedback and reducing the amount of input required to perform an operation.

[0278] In some implementations, real-time communication includes three or more participants (e.g., active participants and / or invited participants; e.g., entities, users associated with the computer system, and one or more other participants) (e.g., as referenced). Figures 8AA to 8AE(As described). In some implementations, in response to (e.g., after receiving an incoming real-time communication and / or while the real-time communication is in progress) determining that the number of active participants in the real-time communication has changed (e.g., a participant has joined or hung up the real-time communication), the computer system outputs haptic output (e.g., 856b) (e.g., no notification is displayed). Outputting haptic output in response to determining that the number of active participants in the real-time communication has changed enables the computer system to quickly and efficiently notify the user of changes in the state of the real-time communication without navigating the user interface or having to activate the display, thereby performing an action when a set of conditions has been met without further user input, thus providing improved visual feedback and reducing the amount of input required to perform the action. In some implementations, after outputting haptic output, the computer system detects a predefined movement of the computer system (or, in some implementations, a part of the computer system) (e.g., a movement indicating that the computer system is turned on, looking at the computer system, and / or a wrist-raising gesture); and in response to the detection of the predefined movement of the computer system, the computer system displays a notification (e.g., 856a) including information about a change in the number of active participants in the real-time communication (e.g., the name of the participant who joined or hung up the real-time communication, the time when the participant joined or hung up the real-time communication, and / or whether the participant joined or hung up the real-time communication). Displaying a notification including information about a change in the number of active participants in the real-time communication in response to the detection of a predefined movement of the computer system allows the computer system to avoid unnecessarily displaying notifications (e.g., when the user is not looking at the computer system) to reduce power consumption, and to display notifications when there is an indication that the user expects a notification, thereby performing an operation when a set of conditions has been met without requiring further user input, thus providing improved visual feedback and extending battery life.

[0279] It should be noted that the above is relative to method 900 (e.g., Figure 9 The details of the process described herein also apply in a similar manner to the methods described above and below. For example, methods 700, 1100, 1300, and / or 1500 may optionally include one or more features of the various methods described above with reference to method 900. For example, the corresponding representation of an entity in method 900, as described in method 700, is selected and / or displayed in the real-time communication user interface of method 1100 along with the transcribed text of the voice message in method 1300 and / or the video message user interface elements in method 1500, according to the techniques described in method 900. For the sake of brevity, these details will not be repeated below.

[0280] Figures 10A to 10GExemplary user interfaces for managing real-time communications, and specifically for switching between real-time communications (e.g., telephone calls), are illustrated according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including... Figure 11 The process in.

[0281] exist Figure 10A In this context, computer system 600b is engaged in an ongoing first real-time communication (e.g., a telephone call with Kim). Computer system 600b displays a user interface for the first real-time communication, namely call user interface 1000. Call interface 1000 includes information about the first real-time communication and call control options 1004. The information about the first real-time communication includes, for example, the duration of the first real-time communication, the name of the caller in the first real-time communication, and a graphical representation of the caller in the first real-time communication.

[0282] exist Figure 10B In the process of receiving the first real-time communication, computer system 600b receives an incoming second real-time communication (e.g., a telephone call from Brandon Sall). In response to receiving the incoming second real-time communication, computer system 600b displays alert 1002. Figure 10B In the example shown, alert 1002 is displayed simultaneously with the call user interface 1000 (e.g., overlaid on the call user interface). Alert 1002 includes information 1002a about the second real-time communication, such as the caller's name, a photo or other graphic representation of the caller, and an indication of the device the caller is calling (e.g., "mobile phone").

[0283] exist Figure 10B In this context, computer system 600b maintains a connection to the first real-time communication with Kim. When a second real-time communication is incoming, computer system 600b can respond to a request and perform operations associated with the ongoing first real-time communication session. For example, in... Figure 10B In response to detecting a selection 1025a for speaker option 1004a, computer system 600b activates the speaker to output audio of the ongoing first real-time communication session while maintaining the display of alert 1002. As another example, in response to detecting a selection 1025b for end-of-call option 1004b, computer system 600b terminates the ongoing first real-time communication with Kim and displays a call user interface 1012 for responding to an incoming second real-time communication with Brandon, as shown below. Figure 10G As shown. In Figure 10GIn this process, computer system 600b stops displaying call user interface 1000 and alert 1002, and displays call user interface 1012. Call user interface 1012 includes information about the incoming second real-time communication, including name 1012a, representation 1012b, and response option 1014. In response to the selection of response option 1014, computer system 600b responds to the second real-time communication.

[0284] return Figure 10B The incoming alert 1002 of the second real-time communication includes a rejection option 1002b and a response option 1002c. In some embodiments, in response to detecting a selection 1025e of the response option 1002c, the computer system 600b connects to the second real-time communication and puts the first real-time communication into a hold state, such as... Figure 10C As shown. In Figure 10C In the computer system 600b, the duration of the second real-time communication 1006a, the name of the remote participant (e.g., the caller) of the second real-time communication 1006b, the representation (e.g., photo) of the remote participant (e.g., the caller) of the second real-time communication, the calling options 1004, and an alert 1008 indicating that the first real-time communication with Kim is in a hold state.

[0285] Alert 1008 includes a representation 1008a (e.g., the name and / or graphical representation of the remote participant in the first real-time communication), a status indicator 1008b, and user interface elements 1008c (e.g., call transfer options or call switching options). The status indicator 1008b indicates the status of the first real-time communication (e.g., hold status). Figure 10C In the example shown, computer system 600b has removed the display of alert 1002 from the top of the call user interface 1000 and displays alert 1008 at the bottom of the call user interface 1000.

[0286] exist Figure 10C In this process, computer system 600b detects selection 1025f of user interface element 1008c. In response to detecting selection 1025f of user interface element 1008c, computer system 600b places the second real-time communication with Brandon in a hold state and connects to the first real-time communication with Kim (e.g., computer system 600b makes the first real-time communication an active call), as... Figure 10D As shown. In Figure 10D In the process, computer system 600b displays (e.g., redisplays) information about the first real-time communication in the call user interface 1000, and displays (e.g., updates) an alert 1008 using information about the second real-time communication. In some embodiments, in response to... Figure 10DIn the selection of user interface element 1008c, computer system 600b places the first real-time communication in a hold state, connects to the second real-time communication, and returns to, as shown in the image. Figure 10C The user interface is shown. In this way, the user can switch between the first real-time communication and the second real-time communication (e.g., in...). Figure 10C and Figure 10D Switch back and forth between (between).

[0287] In some implementations, the computer system 600b responds to the selection of a user interface element 1008c without immediately establishing a real-time communication connection to maintain state. For example, in some implementations, in response to detecting a selection of a user interface element 1008c... Figure 10C In the selection of user interface element 1008c 1025f, computer system 600b maintains a connection with the second real-time communication with Brandon and displays a user interface 1010 for the first real-time communication connection with Kim, such as Figure 10E As shown. In Figure 10E In this process, the first real-time communication with Kim is in a hold state, and the second real-time communication is in progress (e.g., until the user confirms the request to switch calls). The user interface 1010 includes a cancel option 1010a, an end option 1010b, an answer option 1010c, and a menu option 1010d. In response to... Figure 10E In the "Cancel option 1010a" selection, computer system 600b returns to the previous state. Figure 10C The user interface 1000 shown here is in a state where the second real-time communication is active and the first real-time communication is in a hold state. In response to... Figure 10E When the end option 1010b is selected, the computer system 600b terminates (e.g., disconnects) the first real-time communication with Kim, and displays as shown below. Figure 10C The user interface 1000 shown is different except for the absence of warning 1008 (e.g., because the first real-time communication is no longer in a hold state). In response to... Figure 10E When the answer option 1010c is selected, computer system 600b connects to the first real-time communication, puts the second real-time communication in a hold state, and displays (e.g., a return) as shown. Figure 10D The user interface shown is 1000.

[0288] In some implementations, computer system 600b responds to the selection of answer option 1002c without immediately establishing a connection with the incoming real-time communication. For example, in some implementations, in response to detecting an answer option 1002c... Figure 10B In the selection of user interface element 1002c 1025e, computer system 600b maintains a connection to the first real-time communication with Kim and displays a user interface 1010 for the second real-time communication connection with Brandon, such as... Figure 10F As shown. In Figure 10F In the middle, the first real-time communication with Kim is active, and the second real-time communication with Brandon is still incoming. In response to... Figure 10F In the 1010a, select the 1025g option to cancel; in the 600b computer system, return to the previous state. Figure 10B The user interface 1000 shown here is active for the first real-time communication and incoming for the second real-time communication. In response to... Figure 10F When the end option 1010b is selected, computer system 600b refuses to communicate with Brandon's second real-time communication and displays as shown. Figure 10A The user interface 1000 shown is in response to... Figure 10F When option 1010c is selected in the response, computer system 600b connects to the second real-time communication, puts the first real-time communication in a hold state, and displays as shown. Figure 10C The user interface shown is 1000.

[0289] Figure 11 This is a flowchart illustrating a method for managing real-time communications using a computer system according to some embodiments. Method 1100 is performed at a computer system (e.g., 100, 300, 500, 600a, 600b, 600c and / or 600d) (e.g., a smartphone, smartwatch, tablet, laptop, desktop computer, wearable device and / or head-mounted device), the computer system being coupled with display generation components (e.g., 112, 156, 602a, 602b, 602c and / or 602d) (e.g., a monitor, touchscreen display, monitor, holographic display system and / or head-mounted display system) and one or more input devices (e.g., 112, 113, 116, 204, 206, etc.). 208, 602a, 602b, 602c and / or 602d) (e.g., touch-sensitive surfaces (e.g., touch-sensitive displays); mice; keyboards; remote controls; visual input devices (e.g., one or more cameras, such as infrared cameras, depth cameras, visible light cameras and / or gaze-tracking cameras); audio input devices; biometric sensors (e.g., fingerprint sensors, facial recognition sensors, gaze-tracking sensors and / or iris recognition sensors); and / or one or more mechanical input devices (e.g., pressable input mechanisms; buttons; rotatable input mechanisms; crowns; and / or dials)) communication (e.g., including and / or connected to these components). Some operations in method 1100 may be optionally combined, some operations may be optionally changed in order, and some operations may be optionally omitted.

[0290] As described below, method 1100 provides an intuitive way to manage real-time communications. This method reduces the cognitive burden on users managing real-time communications, thereby creating a more efficient human-machine interface. For battery-powered computing devices, it enables users to manage real-time communications more quickly and efficiently, saving power and increasing the time interval between battery charging.

[0291] When the first real-time communication is in progress (e.g., active and / or ongoing) (e.g., Figure 10B When ), the computer system simultaneously displays (1102) via the display generation component: information about the first real-time communication (e.g., Figure 10B The real-time communication user interface (e.g., 814, 828, and / or 1000) of information (e.g., 804, 806a, 806b, 806c, 806d, 806e, 806f, 806g, 810a, 812, 810b, 810c, 814, 816, 818, 822, 826, 838, 842, 844, 846, 1000a, 1000b, 1006b, 1006c, 1012a and / or 1012b) of the call with Kim (e.g., the user interface of a real-time communication application, such as a telephone application or a video communication application); and a second real-time communication is coming in (e.g., from...). Figure 10BThe alert (e.g., 1002, 1002a, 1002b, and / or 1002c) is displayed in Brandon's name (e.g., a first alert, an incoming real-time communication alert, an incoming call alert, a visual notification, an icon, and / or a user-interactive interface object). In some embodiments, an alert indicating that a second real-time communication is in progress is overlaid on the real-time communication user interface. In some embodiments, the real-time communication is a telephone call. In some embodiments, the real-time communication is an audio call. In some embodiments, the real-time communication is a video call. In some embodiments, the real-time communication includes real-time audio and / or video communication (e.g., audio and / or video conferencing). In some embodiments, the real-time communication includes communication between two or more participants. In some embodiments, the computer system displays an incoming call alert in response to receiving a second real-time communication (or in some embodiments, in response to receiving an indication that a second real-time communication is in progress, such as data, information, and / or signals). In some embodiments, information regarding the first real-time communication includes, for example, a representation of the remote participant in the first real-time communication, the remote participant's telephone number, the duration of the first real-time communication, the status of the first real-time communication, the duration of the real-time communication, and / or the connection status of the first real-time communication (e.g., calling, connected, active, no signal, or not connected). In some embodiments, an alert indicating that a second real-time communication is in progress includes information about the second real-time communication. In some embodiments, information regarding the second real-time communication includes, for example, a representation of the entity attempting to initiate the second real-time communication (e.g., a photograph, avatar, and / or alphabetical pattern) and / or the telephone number of the entity attempting to initiate the second real-time communication.

[0292] The computer system (e.g., when displaying an alert for the second real-time communication and / or the real-time communication user interface) detects (1104) a set of one or more inputs (e.g., one or more manual inputs, button presses, touch inputs, contact on a touch-sensitive surface, body gestures, and / or voice inputs) including a request for connection to (or activation, response, or switch to) the incoming second real-time communication (e.g., 1025e). In some embodiments, the set of one or more inputs includes selection of an alert for the second real-time communication and / or selection of optional options (e.g., buttons, icons, power indicators, and / or graphical elements) included in the alert for the second real-time communication. In response to (1106) detecting the set of one or more inputs: the computer system connects to the second real-time communication (1108) (or activates, responds to, or switches to the second real-time communication) and places the first real-time communication in a hold state (e.g., as...). Figure 10C(as shown) (e.g., switching from a first real-time communication to a second real-time communication); and the computer system simultaneously displays (1110) via a display generation component: a real-time communication user interface (e.g., with information about the second real-time communication (e.g., 1006a, 1006b and / or 1006c)). Figure 10C The 1000 in (e.g., the computer system replaces information about the first real-time communication with information about the second real-time communication); and the first real-time communication (e.g., with Figure 10C The first real-time communication (Kim) is in a held state alert (e.g., 1008, 1008a, 1008b, and / or 1008c) (e.g., a second alert, a held-state real-time communication alert, a held-state call alert, a visual notification, an icon, and / or a user-interactive interface object). In some embodiments, the first real-time communication held-state alert includes an indication that the first real-time communication is held (e.g., text, color, animation, and / or graphics). In some embodiments, the first real-time communication held-state alert includes information about the first real-time communication, such as, for example, that it is held-state and / or a representation of an entity associated with the first real-time communication and / or a telephone number. In some embodiments, the first real-time communication held-state alert is overlaid on the real-time communication user interface. In some embodiments, the computer system replaces the alert for an incoming second real-time communication with the first real-time communication held-state alert. In response to the detection of a set of one or more inputs, the system connects to the second real-time communication, puts the first real-time communication into a hold state, and simultaneously displays information about the second real-time communication and an alert that the first real-time communication is in a hold state. This allows the user to switch between the first and second real-time communications with less user input and clearly indicates to the user that the first real-time communication is in a hold state, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0293] In some implementations, before detecting the set of one or more inputs including a request for an incoming second real-time communication connection: based on determining that the computer system has not received (or in some implementations, has not yet received) a request for a second real-time communication connection, the computer system maintains a real-time communication user interface displaying information about the first real-time communication (e.g., Figure 10B (e.g., maintaining the display of information about the first real-time communication in the real-time communication user interface). Maintaining the display of the real-time communication user interface with information about the first real-time communication based on the determination that the computer system has not received a request for a connection to the second real-time communication avoids interruption of the first real-time communication due to the incoming second real-time communication and the need to navigate the user interface, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0294] In some implementations, an alert indicating that a second real-time communication is in progress (e.g., 1002) is included in a first part of the real-time communication user interface (e.g., the top part and / or a first area) (e.g., Figure 10B The alert indicating that a second real-time communication is in progress is displayed at position 1002. In some embodiments, the first part of the real-time communication user interface is the portion of the real-time communication user interface that is closer to the top edge of the real-time communication user interface than the center of the real-time communication user interface. In some embodiments, the alert indicating that the first real-time communication is in a pending state (e.g., 1008) is included in a second part of the real-time communication user interface that is different from (e.g., does not overlap with) the first part of the real-time communication user interface (e.g., ...). Figure 10C The alert indicating that the first real-time communication is in a held state is displayed in a location (e.g., the bottom portion and / or a second area). In some embodiments, the second portion of the real-time communication user interface is a portion of the real-time communication user interface closer to the bottom edge of the real-time communication user interface than the center of the real-time communication user interface. Displaying alerts indicating that a second real-time communication is coming in and alerts indicating that the first real-time communication is in a held state in different portions of the real-time communication user interface informs the user of the status of currently inactive real-time communication (e.g., whether it is coming in or held), allowing the computer system to customize the placement of alerts based on the context of the alerts (e.g., alerts for incoming real-time communication may be displayed in a more prominent location). This makes the user interface easier to navigate with less input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform actions.

[0295] In some implementations, displaying an alert that a second real-time communication is in progress (e.g., 1002) includes displaying (e.g., in the alert that a second real-time communication is in progress) a first user interface element (e.g., 1002c) (e.g., a call transfer user interface element, a user interactive user interface element, an optional user interface element, optional options, buttons, optional icons, and / or a power indicator), which, when selected (e.g., via 1025e), connects the computer system to the second real-time communication (e.g., answers the second real-time communication and / or makes the second real-time communication active) and places the first real-time communication in a hold state (e.g., as shown in the image). Figure 10C(As shown). In some embodiments, the set of one or more inputs includes the selection of a first user interface element. In some embodiments, the computer system detects the selection of the first user interface element and, in response to detecting the selection of the first user interface element, connects to a second real-time communication and places the first real-time communication in a hold state. Displaying the first user interface element for connecting to the second real-time communication and placing the first real-time communication in a hold state allows the user to quickly and efficiently place the first real-time communication in a hold state with less input and fewer errors, thereby reducing the amount of input required to perform the operation.

[0296] In some embodiments, displaying an alert indicating an incoming second real-time communication (e.g., 1002) includes (e.g., in the alert indicating an incoming second real-time communication) displaying a second user interface element (e.g., 1002c in some embodiments, or 1004b in some embodiments) (e.g., an end-accept user interface element, a user-interactive user interface element, an optional user interface element, an optional option, a button, an optional icon, and / or a power indicator), which, when selected, connects the computer system to the second real-time communication (e.g., answers the second real-time communication and / or makes the second real-time communication active) and disconnects (e.g., ends and / or hangs up) the first real-time communication. In some embodiments, the set of one or more inputs includes the selection of a second user interface element. In some embodiments, the computer system detects the selection of a second user interface element and, in response to the detection of the selection of a second user interface element, connects to the second real-time communication and disconnects the first real-time communication. Displaying a second user interface element for connecting to the second real-time communication and disconnecting the first real-time communication allows the user to quickly and efficiently end the first real-time communication and connect to the incoming real-time communication with less input and errors, thereby reducing the amount of input required to perform the operation. In some implementations, in response to detecting a set of one or more inputs including a request for an incoming second real-time communication connection (e.g., 1025e), the computer system stops displaying second user interface elements (e.g., 1002, 1002a, 1002b, and / or 1002c). (For example, the computer system displays the second user interface elements until the second real-time communication is established and the first real-time communication is disconnected or placed in a hold state.) Stopping the display of second user interface elements in response to detecting a set of one or more inputs including a request for an incoming second real-time communication connection makes the user interface easier to navigate and less cluttered. This avoids unnecessary input and reduces errors, thereby reducing the amount of input required to perform operations, and provides additional control options without cluttering the user interface due to additional displayed controls.

[0297] In some implementations, an alert indicating that a first real-time communication is in a held state (e.g., 1008) includes (e.g., in the alert indicating that a first real-time communication is in a held state) displaying a third user interface element (e.g., 1008c) (e.g., call transfer options, user interactive user interface elements, optional user interface elements, optional options, buttons, optional icons, and / or power indicators), which, when selected (e.g., via 1025f), causes the computer system to initiate a process for connecting to the first real-time communication (e.g., responding to the first real-time communication and / or making the first real-time communication active) and placing the second real-time communication in a held state (e.g., displaying...). Figure 10D or Figure 10E (1000 in the example). A third user interface element displayed for initiating a process of connecting to the first real-time communication and placing the second real-time communication in a hold state enables the user to quickly and efficiently reconnect to the first real-time communication and place the second real-time communication with less input and errors, thereby reducing the amount of input required to perform the operation. In some embodiments, the computer system detects a selection of a third user interface element (e.g., 1008c) (e.g., 1025f) via one or more input devices (e.g., tap input, air gesture, voice command, and / or other selection input corresponding to the third user interface element); and in response to detecting a selection of the third user interface element, the computer system connects to the first real-time communication (e.g., activates and / or deactivates the hold state of the first real-time communication) and places the second real-time communication in a hold state (e.g., as shown in the example). Figure 10D (As shown) (e.g., the computer system automatically activates the first real-time communication and places the second real-time communication in a hold state in response to the selection of a third user interface element, without further input). Connecting to the first real-time communication and placing the second real-time communication in a hold state in response to detecting the selection of a third user interface element allows the user to quickly and efficiently reconnect to the first real-time communication and place the second real-time communication with less input and errors, thereby reducing the amount of input required to perform the operation. In some embodiments, the computer system detects the selection of a third user interface element (e.g., 1008c) (e.g., 1025f) (e.g., tap input, air gesture, voice command, and / or other selection input corresponding to the third user interface element) via one or more input devices; and in response to detecting the selection of the third user interface element, the computer system displays an image associated with the first real-time communication (e.g., ...). Figure 10EThe system uses an image (e.g., a picture or photograph) and a fourth user interface element (e.g., 1010c) (e.g., call transfer options, user interactive user interface elements, optional user interface elements, optional options, buttons, optional icons, and / or power indicators) that, when selected, connect the computer system to a first real-time communication (e.g., respond to the first real-time communication and / or make the first real-time communication active) and place a second real-time communication in a hold state (e.g., the computer system automatically activates the first real-time communication and places the second real-time communication in a hold state in response to the selection of the fourth user interface element, without further input). Displaying the image associated with the first real-time communication and the fourth user interface element for connecting to the first real-time communication and placing the second real-time communication in a hold state provides the user with the option to confirm the request to switch real-time communications and avoids unintentional switching of real-time communications that would require additional input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0298] In some implementations, when an alert indicating that a second real-time communication is in progress (e.g., 1002) is displayed, the computer system detects a swipe gesture (e.g., a vertical swipe, an upward swipe, a downward swipe, and / or a horizontal swipe) corresponding to (e.g., on) the alert indicating that a second real-time communication is in progress via one or more input devices. Figure 10B The computer system stops displaying (e.g., deactivates) the alert indicating that a second real-time communication is in progress (and in some embodiments, maintains the activity of the first real-time communication and maintains the ingress status of the second real-time communication) in response to detecting a swipe gesture. Stopping the display of the alert indicating that a second real-time communication is in progress in response to detecting a swipe gesture allows the user to quickly and efficiently remove the alert and eliminate clutter in the user interface, thereby providing the user with improved visual feedback and reducing the amount of input required to perform an action.

[0299] In some implementations, before detecting a set of one or more inputs including a request for an incoming second real-time communication connection: based on determining that a threshold amount of time has elapsed (e.g., the alert for the incoming second real-time communication has been displayed for a predetermined amount of time), the computer system stops displaying (e.g., deactivates) the alert for the incoming second real-time communication (e.g., 1002) (and in some implementations, the active state of the first real-time communication is maintained and the incoming state of the second real-time communication is maintained). Stopping the display of the alert for the incoming second real-time communication based on determining that a threshold amount of time has elapsed allows the computer system to remove the alert and eliminate clutter in the user interface without requiring user input, thereby performing an operation when a set of conditions has been met without further user input, thus providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0300] In some implementations, while the first real-time communication is in progress and before displaying an alert that a second real-time communication is approaching (e.g., 1002), the computer system displays a real-time communication user interface (e.g., [missing information]) via a display generation component. Figure 10A (e.g., 1000); and when displaying an alert that a second real-time communication is coming (e.g., 1002), the computer system maintains the display of a real-time communication user interface with information about the first real-time communication (e.g., 1000); Figure 10B(1000 in the middle). While displaying an alert that a second real-time communication is coming in, the system keeps the display of information about the first real-time communication informing the user of the status of the computer system without interrupting the user interface and distracting the user. This avoids errors and unnecessary input, thereby providing the user with improved visual feedback and reducing the amount of input required to perform an operation. In some implementations, when an alert indicating that a second real-time communication is in progress is displayed (e.g., 1002) (and in some implementations, when a real-time communication user interface with information about a first real-time communication is displayed): the computer system displays a set of one or more user interface elements (e.g., 1004) corresponding to the respective functions associated with the real-time communication user interface (e.g., functions such as enabling or disabling mute, showing or hiding the keypad, enabling or disabling the speaker function, adding a call to the real-time communication, initiating a video call, displaying the contacts user interface, and / or disconnecting the first real-time communication) (e.g., call function button, call function option, user interactive user interface element, optional user interface element, optional option, button, optional icon, and / or power indicator); the computer system detects a selection (e.g., 1004a) of a first user interface element in the set of one or more user interface elements (e.g., 1025a) (e.g., tap input, air gesture, voice command, and / or other selection input corresponding to the first user interface element); and in response to detecting a selection of a first user interface element in the set of one or more user interface elements, the computer system executes a function corresponding to the first user interface element in the set of one or more user interface elements (e.g., activating the speaker). Providing user interface elements for performing functions associated with the real-time communication user interface when displaying an alert that a second real-time communication is coming in allows the computer system to continue performing operations associated with the first real-time communication while the second real-time communication is coming in, without requiring the user to navigate the user interface. This provides additional control options without cluttering the user interface with additional displayed controls, thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0301] In some implementations, the computer system detects a selection (e.g., 1025e) of an incoming alert for a second real-time communication (e.g., 1002) via one or more input devices (e.g., tap input, air gesture, voice command, and / or other selection input corresponding to the alert); and in response to detecting the selection of an incoming alert for the second real-time communication, the computer system displays (e.g., simultaneously displays) a representation of an entity associated with the second real-time communication via a display generation component (e.g., Figure 10FThe 1010 in the first real-time communication includes representations of Brandon (e.g., images, pictures, photos, extended representations, and / or full-screen representations) and user interface elements (e.g., 1010c) (e.g., user-interactive user interface elements, optional user interface elements, optional options, buttons, optional icons, and / or power indicators), which, when selected, connect the computer system to the second real-time communication (e.g., activate, respond to, and / or switch to the second real-time communication) (and in some embodiments, disconnect the first real-time communication or place the first real-time communication in a hold state). Displaying representations of entities associated with the second real-time communication and user interface elements for connecting to the second real-time communication in response to a selection that detects an incoming alert for the second real-time communication provides the user with an efficient way to obtain additional information about the incoming real-time communication with less user input, thereby providing improved visual feedback and reducing the amount of input required to perform an action.

[0302] In some implementations, when a second real-time communication is incoming (e.g., in...), Figure 10B In the first real-time communication, the computer system detects a request to disconnect (e.g., terminate and / or hang up) the first real-time communication via one or more input devices (e.g., 1025b on 1004b); and in response to detecting the request to disconnect the first real-time communication, the computer system disconnects (e.g., terminates and / or hangs up) the first real-time communication and displays a representation of an entity associated with the second real-time communication (e.g., 804, 806a, 806b, 806c, 806d, 806e, 806f, 806g, 810a, 812, 810b, 810c, 814, 816, 818, 822, 826, 838, 842, 844, 846, 1012, 1012a and / or 1012b) (e.g., image, picture, photograph, extended representation and / or full-screen representation) without connecting to the second real-time communication (e.g., not responding) (e.g., as referenced). Figure 10G (As shown and described). In some embodiments, in response to a detected request to disconnect the first real-time communication, the computer system displays a user-interactive user interface element that, when selected, is connected to the second real-time communication (e.g., responding to the second real-time communication). Disconnecting the first real-time communication in response to a detected request to disconnect and displaying a representation of the entity associated with the second real-time communication without connecting to the second real-time communication provides the user with an efficient way to end the first real-time communication, informs the user that the second real-time communication is available, and allows the user to prepare for the second real-time communication (e.g., responding to or rejecting the second real-time communication), thereby providing the user with improved visual feedback and reducing the amount of input required to perform the operation.

[0303] In some implementations, the computer system displays an alert indicating that a second real-time communication is in progress at a first size (e.g., extended size and / or full-screen size) via a display generation component. Figure 10F In the case of 1010); and when displaying an alert that a second real-time communication is coming in at a first size, th...

Claims

1. A method, the method comprising: At the computer system communicating with the display generation component: Receive incoming real-time communication from the entity; as well as In response to receiving the incoming real-time communication, and before the incoming real-time communication is accepted, displaying a corresponding representation of the entity via the display generation component includes: Based on a first set of criteria that are satisfied, wherein the first set of criteria includes criteria satisfied when the entity initiating the incoming real-time communication has selected a first representation of the entity, the first representation of the entity is displayed via the display generation component; as well as The second representation of the entity is displayed via the display generation component according to a second set of criteria that are satisfied when the entity initiating the incoming real-time communication has selected a second representation of the entity that is different from the first representation of the entity.

2. The method of claim 1, wherein the corresponding representation of the entity includes a visual representation that has been selected by the entity.

3. The method of claim 2, wherein the visual representation of the entity comprises a photograph.

4. The method according to any one of claims 2 to 3, wherein the visual representation of the entity includes an avatar.

5. The method according to claim 4, further comprising: Before the incoming real-time communication is accepted, an animation including the avatar's movement over time is displayed via the display generation component.

6. The method according to any one of claims 2 to 3, wherein the visual representation of the entity comprises a combination of letter patterns.

7. The method according to any one of claims 2 to 3, wherein displaying the corresponding representation of the entity before the incoming real-time communication is accepted comprises displaying the corresponding representation of the entity at a first magnification, the method further comprising: Accept the real-time communication; as well as In response to receiving the real-time communication, the corresponding representation of the entity is displayed via the display generation component at a second magnification greater than the first magnification.

8. The method according to any one of claims 1 to 3, further comprising: After displaying the corresponding representation of the entity, a second real-time communication is received from the entity; as well as In response to receiving the incoming second real-time communication, and before the incoming real-time communication is accepted, an updated corresponding representation, different from the corresponding representation selected by the entity, is displayed via the display generation component.

9. The method according to any one of claims 1 to 3, further comprising: After displaying the corresponding representation of the entity, a third real-time communication is received from the entity; The system detects and accepts the incoming request for third real-time communication from the entity. as well as In response to detecting the request to accept the incoming third real-time communication, the incoming third real-time communication is accepted, and an updated corresponding representation selected by the entity, different from the corresponding representation of the entity, is displayed via the display generation component.

10. The method according to any one of claims 1 to 3, further comprising: After displaying the corresponding representation of the entity, in response to determining that the current corresponding representation selected by the entity is different from the corresponding representation of the entity displayed in response to receiving the incoming real-time communication, an indication that the current corresponding representation is an updated corresponding representation is displayed via the display generation component.

11. The method according to claim 10, further comprising: The selection of the indication that the current corresponding representation is an updated corresponding representation is detected; In response to the selection of the indication that the current corresponding representation is an updated corresponding representation, the restored user interface elements are displayed via the display generation component; Detect the selection of the restored user interface element; as well as After detecting the selection of the recovery user interface element, the corresponding representation of the entity, displayed in response to the received real-time communication, is displayed via the display generation component.

12. The method of claim 11, wherein displaying the recovery user interface element includes displaying the recovery user interface element in the user interface of the messaging application.

13. The method according to any one of claims 1 to 3, wherein the corresponding representation of the entity is displayed when the computer system is in a reduced power state.

14. The method of claim 13, wherein displaying the corresponding representation of the entity when the computer system is in a low-power state comprises displaying the corresponding representation of the entity without displaying user-interactive graphical user interface elements, the method further comprising: When the computer system is in the reduced power state and the corresponding representation of the entity is displayed, a predefined movement of the computer system is detected; as well as In response to the detection of the predefined movement of the computer system, the corresponding representation of the entity is displayed without displaying user-interactive graphical user interface elements.

15. The method of claim 14, wherein the computer system communicates with the touch-sensitive surface, the method further comprising: After displaying the corresponding representation of the entity without displaying user-interactive graphical user interface elements in response to the detection of the predefined movement of the computer system, contact on the touch-sensitive surface is detected; as well as In response to the detection of the contact on the touch-sensitive surface, one or more user interface elements are displayed via the display generation component to perform corresponding functions associated with the incoming real-time communication.

16. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises displaying the corresponding representation of the entity against a black background.

17. The method according to any one of claims 1 to 3, wherein the corresponding representation of the entity includes a name selected by the entity.

18. The method of claim 17, wherein displaying the corresponding representation of the entity comprises: Based on the determination that the name selected by the entity is different from the name associated with the entity through the computer system and that the name selected by the entity has been approved by the user associated with the computer system, the corresponding representation of the entity is displayed together with the name selected by the entity; as well as Based on the determination that the name selected by the entity is different from the name associated with the entity through the computer system and that the name selected by the entity has not been approved by the user associated with the computer system, the corresponding representation of the entity is displayed together with the name associated with the entity through the computer system.

19. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity includes displaying the entity's name in a font selected by the entity.

20. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity includes displaying the entity's name and an image in a format selected by the entity.

21. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises displaying a visual representation of the entity in a color selected by the entity.

22. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises: The third representation of the entity is displayed via the display generation component based on the determination that a user associated with the computer system has selected a third representation of the entity that is different from the representation selected by the entity.

23. The method of claim 22, wherein displaying the third representation of the entity includes displaying the third representation of the entity in a first layout, and displaying the first representation of the entity includes displaying the first representation in a second layout different from the first layout.

24. The method according to any one of claims 1 to 3, wherein the first set of standards includes standards satisfied when the computer system is a first type of computer system or a second type of computer system different from the first type of computer system.

25. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises: Based on the determination that the incoming real-time communication originates from an unknown entity, the corresponding representation of the entity is displayed in a first predefined color.

26. The method of claim 25, wherein the first predefined color cannot be used to select a color for the corresponding representation.

27. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises: Based on the determination that the incoming real-time communication originates from the enterprise, the corresponding representation of the entity is displayed in a second predefined color.

28. The method of claim 27, wherein the second predefined color cannot be used to select as the color for the corresponding representation.

29. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises: If it is determined that no visual representation has been selected for the entity, the corresponding representation of the entity is displayed using a predefined visual representation.

30. The method according to any one of claims 1 to 3, wherein displaying the corresponding representation of the entity comprises: Based on the determination that the corresponding geographical region associated with the incoming real-time communication is a first geographical region, the corresponding representation of the entity is displayed in a first format; as well as Based on the determination that the corresponding geographic region associated with the incoming real-time communication is a second geographic region different from the first geographic region, the corresponding representation of the entity is displayed in a second format different from the first format.

31. The method of claim 30, wherein the corresponding geographic region is a geographic region associated with the entity.

32. The method of claim 8, wherein the corresponding geographic region is a geographic region associated with the recipient of the incoming real-time communication.

33. The method of claim 8, wherein the corresponding geographic region is a geographic region associated with the settings of the computer system.

34. The method of claim 8, wherein the corresponding geographical region is associated with the language settings of the computer system.

35. The method of claim 8, wherein when the computer system is not physically located in the geographic region, the corresponding representation is displayed in a format associated with the corresponding geographic region.

36. The method according to any one of claims 1 to 3, wherein the real-time communication comprises three or more participants.

37. The method according to claim 36, further comprising: In response to the determination that the number of active participants in the real-time communication has changed, a tactile output is generated.

38. The method according to claim 37, further comprising: After outputting the tactile output, the computer system detects a predefined movement; as well as In response to the detection of the predefined movement of the computer system, a notification is displayed that includes information about the change in the number of active participants in the real-time communication.

39. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs including instructions for performing the method according to any one of claims 1 to 38.

40. A computer system configured to communicate with a display generation component, the computer system comprising: 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 performing the method according to any one of claims 1 to 38.

41. A computer system configured to communicate with a display generation component, the computer system comprising: Components for performing the method according to any one of claims 1 to 38.

42. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs comprising instructions for performing the method according to any one of claims 1 to 38.

Citation Information

Patent Citations

  • Method and apparatus for integrating manual input

    US20020015024A1

  • Gestures for touch sensitive input devices

    US20060026521A1

  • Gestures for touch sensitive input devices

    US20060026536A1

  • Virtual input device placement on a touch screen user interface

    US20060033724A1

  • Multipoint touchscreen

    US20060097991A1