User interface for peer-to-peer transfers

By simplifying the management interface of peer-to-peer transmission on electronic devices, the problems of complex and inefficient interfaces in the prior art are solved, and more efficient user operation and equipment energy management are achieved.

CN110999228BActive Publication Date: 2025-04-18APPLE INC
View PDF 25 Cites 0 Cited by

Patent Information

Application Number
CN201880048209.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-05-15
Filing Date
2018-05-16
Publication Date
2025-04-18
Estimated Expiration
2038-05-16

AI Technical Summary

Technical Problem

The interface used in the prior art to manage peer-to-peer transmission is complex and inefficient, requiring users to frequently use infrequently used applications, and limited options, resulting in wasting user time and device energy.

Method used

Provides a faster and more efficient method and interface to manage peer-to-peer transmission, simplifies user operations, reduces unnecessary inputs, and improves the efficiency of the human-machine interface by displaying the user interface of the messaging application on an electronic device.

Benefits of technology

It reduces the cognitive burden of users, improves the management efficiency of peer-to-peer transmission, saves the power of the battery-driven device, and extends the time interval between battery charging.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN110999228B_ABST
    Figure CN110999228B_ABST
Patent Text Reader

Abstract

The present disclosure as a whole relates to user interfaces for managing peer-to-peer transmissions. In some examples, a device provides a user interface for initiating and managing transmissions. In some examples, a device provides a user interface corresponding to completed transmissions. In some examples, a device provides a user interface for providing a visually distinguishable message object appearance based on message designation. In some examples, a device provides a user interface for activating an account for receiving and sending transmissions. In some examples, a device provides a user interface for exchanging accounts for use in transmissions. In some examples, a device provides a user interface for splitting transmissions between two or more accounts. In some examples, a device provides a user interface for generating and displaying a transmission history list. In some examples, a device provides a voice-activated user interface for transmission. In some examples, a device provides visual or tactile feedback corresponding to a transmission operation.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] No. 62 / 514,945, filed on June 4, 2017, entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS”; and U.S. Provisional Application Serial No. 62 / 566,225, filed on September 29, 2017, entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS.” The present application claims priority to U.S. Provisional Application Serial No. 62 / 507,161, filed on May 16, 2017, entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS.” The present application claims priority to U.S. Provisional Application Serial No. 62 / 514,945, filed on June 4, 2017, entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS.” The present application claims priority to U.S. Provisional Application Serial No. 62 / 566,225, filed on September 29, 2017, entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS.” The present application claims priority to U.S. Provisional Application Serial No. 62 / 672,003, filed on May 15, 2018, entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS.” The present application claims priority to U.S. Provisional Application Serial No. 62 / 5 No. PA201770505, filed on June 26, 2017, and entitled “USER INTERFACES FOR PEER-TO-PEER TRANSFERS”. The contents of each of these patent applications are hereby incorporated by reference in their entirety. Technical Field

[0003] The present disclosure relates generally to computer user interfaces and, more particularly, to interfaces and techniques for managing peer-to-peer transmissions. Background Art

[0004] Peer-to-peer transmissions, such as transmissions of resources and files, using electronic devices are a convenient and efficient method of exchanging resources and files. Peer-to-peer transmissions enable users to quickly and easily send outgoing transmissions and quickly and easily receive incoming transmissions using electronic devices. Summary of the Invention

[0005] However, some techniques for managing peer-to-peer transmissions using electronic devices are often cumbersome and inefficient. For example, some existing techniques require the use of certain applications that the device's user rarely uses, which may unnecessarily cause the user to open rarely used applications. As another example, some existing techniques have limited options for making and receiving transmissions. As another example, some existing techniques use complex and time-consuming user interfaces that may include multiple button presses or keystrokes. As a result, existing techniques require more time than necessary, wasting the user's time and the device's energy. This latter consideration is particularly important in battery-powered devices.

[0006] Thus, the present technology provides electronic devices with faster, more efficient methods and interfaces for managing peer-to-peer transmissions. Such methods and interfaces optionally supplement or replace other methods for managing peer-to-peer transmissions. Such methods and interfaces reduce the cognitive burden on users and produce more efficient human-computer interfaces. For battery-powered computing devices, such methods and interfaces conserve power and increase the time between battery charges. Such methods and interfaces also reduce the number of unnecessary, external, or repetitive inputs required in computing devices, such as smartphones and smartwatches.

[0007] According to some embodiments, a method is described for performing at an electronic device having a display, one or more input devices, and a wireless communication radio. The method includes: receiving one or more messages via the wireless communication radio; displaying a user interface for a messaging application on the display, the user interface including at least one of the one or more messages in a messaging session between a plurality of conversation participants; while simultaneously displaying at least one of the one or more messages in the messaging session on the display, receiving a corresponding message from one of the participants; in response to receiving the corresponding message, simultaneously displaying on the display a representation of the message and a selectable indication corresponding to an item of a first type that the messaging application is configured to transmit based on a determination made based on analysis of text in the corresponding message that the corresponding message is related to transmission of the first type of item; while the representation of the message and the selectable indication corresponding to the item of the first type are simultaneously displayed on the display, detecting user activation of the selectable indication via the one or more input devices; and in response to detecting the user activation of the selectable indication, displaying on the display a transmission user interface for initiating transmission of the item of the first type between the participants in the messaging session.

[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 an electronic device having a display, one or more input devices, and a wireless communication radio, the one or more programs including instructions for performing the following operations: receiving one or more messages via the wireless communication radio; displaying on the display a user interface for a messaging application, the user interface including at least one of the one or more messages in a messaging session between a plurality of conversation participants; receiving a corresponding message from one of the participants while at least one of the one or more messages in the messaging session is simultaneously displayed on the display; in response to receiving the corresponding message, displaying on the display a representation of the message and a selectable indication corresponding to an item of a first type that the messaging application is configured to transmit based on a determination made based on analysis of text in the corresponding message that the corresponding message is related to transmission of the first type of item; detecting, via the one or more input devices, user activation of the selectable indication corresponding to the item of the first type while the representation of the message and the selectable indication are simultaneously displayed on the display; and in response to detecting the user activation of the selectable indication, displaying on the display a transmission user interface for initiating transmission of the item of the first type between the participants in the messaging session.

[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 an electronic device having a display, one or more input devices, and a wireless communication radio, the one or more programs including instructions for performing the following operations: receiving one or more messages via the wireless communication radio; displaying on the display a user interface for a messaging application, the user interface including at least one of the one or more messages in a messaging session between a plurality of conversation participants; receiving a corresponding message from one of the participants while at least one of the one or more messages in the messaging session is simultaneously displayed on the display; in response to receiving the corresponding message, displaying on the display a representation of the message and a selectable indication corresponding to an item of a first type that the messaging application is configured to transmit based on a determination made based on analysis of text in the corresponding message that the corresponding message is related to transmission of the first type of item; detecting, via the one or more input devices, user activation of the selectable indication corresponding to the item of the first type while the representation of the message and the selectable indication are simultaneously displayed on the display; and in response to detecting the user activation of the selectable indication, displaying on the display a transmission user interface for initiating transmission of the first type of item between the participants in the messaging session.

[0010] According to some embodiments, an electronic device is described. The electronic device includes a display, one or more input devices, a wireless communication radio, 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 following operations: receiving one or more messages via the wireless communication radio; displaying on the display a user interface for a messaging application, the user interface including at least one of the one or more messages in a messaging session between a plurality of session participants; receiving a corresponding message from one of the participants while at least one of the one or more messages in the messaging session is simultaneously displayed on the display; in response to receiving the corresponding message, displaying on the display a representation of the message and a selectable indication corresponding to an item of a first type that the messaging application is configured to transmit based on a determination made based on analysis of text in the corresponding message that the corresponding message is related to transmission of the first type of item; detecting, via the one or more input devices, user activation of the selectable indication corresponding to the item of the first type while the representation of the message and the selectable indication are simultaneously displayed on the display; and in response to detecting the user activation of the selectable indication, displaying on the display a transmission user interface for initiating transmission of the item of the first type between the participants in the messaging session.

[0011] According to some embodiments, an electronic device is described. The electronic device includes a display, one or more input devices, a wireless communication radio, means for receiving one or more messages via the wireless communication radio, means for displaying on the display a user interface for a messaging application, the user interface including at least one of the one or more messages in a messaging session between a plurality of session participants, means for receiving a corresponding message from one of the participants while at least one of the one or more messages is concurrently displayed on the display in the messaging session, means for simultaneously displaying on the display a representation of the message and a selectable indication corresponding to an item of a first type that the messaging application is configured to transmit based on a determination made based on analysis of text in the corresponding message that the corresponding message is relevant to transmission of the first type of item that the messaging application is configured to transmit, means for detecting, via the one or more input devices, user activation of the selectable indication corresponding to the first type of item while the representation of the message and the selectable indication are concurrently displayed on the display, and means for displaying on the display a transmission user interface for initiating transmission of the first type of item between the participants in the messaging session in response to detecting the user activation of the selectable indication.

[0012] According to some embodiments, a method performed at an electronic device having a display and one or more sensor devices is described. The method includes: displaying a graphical representation of a communication on the display; detecting a change in the orientation of the electronic device relative to a reference point via the one or more sensor devices while the graphical representation of the communication is displayed on the display; and in response to detecting a change in the orientation of the electronic device relative to the reference point while the graphical representation of the communication is displayed on the display: based on a determination that the communication has a first state, displaying the graphical representation of the communication and outputting a corresponding type of feedback corresponding to the graphical representation of the communication, wherein the feedback indicates a magnitude of the change in the orientation of the electronic device relative to the reference point; and based on a determination that the communication has a second state different from the first state, displaying the graphical representation of the communication without outputting feedback indicating a magnitude of the change in the orientation of the electronic device relative to the reference point.

[0013] 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 an electronic device having a display and one or more sensor devices, the one or more programs including instructions for performing the following operations: displaying a graphical representation of a communication on the display; detecting a change in the orientation of the electronic device relative to a reference point via the one or more sensor devices while the graphical representation of the communication is displayed on the display; and in response to detecting a change in the orientation of the electronic device relative to the reference point while the graphical representation of the communication is displayed on the display: based on a determination that the communication has a first state, displaying the graphical representation of the communication and outputting a corresponding type of feedback corresponding to the graphical representation of the communication, wherein the feedback indicates a magnitude of the change in the orientation of the electronic device relative to the reference point; and based on a determination that the communication has a second state different from the first state, displaying the graphical representation of the communication without outputting feedback indicating a magnitude of the change in the orientation of the electronic device relative to the reference point.

[0014] 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 an electronic device having a display and one or more sensor devices, the one or more programs including instructions for performing the following operations: displaying a graphical representation of a communication on the display; detecting a change in the orientation of the electronic device relative to a reference point via the one or more sensor devices while the graphical representation of the communication is displayed on the display; and in response to detecting a change in the orientation of the electronic device relative to the reference point while the graphical representation of the communication is displayed on the display: based on a determination that the communication has a first state, displaying the graphical representation of the communication and outputting a corresponding type of feedback corresponding to the graphical representation of the communication, wherein the feedback indicates a magnitude of the change in the orientation of the electronic device relative to the reference point; and based on a determination that the communication has a second state different from the first state, displaying the graphical representation of the communication without outputting feedback indicating a magnitude of the change in the orientation of the electronic device relative to the reference point.

[0015] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more sensor devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying a graphical representation of a communication on the display; detecting a change in the orientation of the electronic device relative to a reference point via the one or more sensor devices when the graphical representation of the communication is displayed on the display; and in response to detecting a change in the orientation of the electronic device relative to the reference point when the graphical representation of the communication is displayed on the display: based on a determination that the communication has a first state, displaying the graphical representation of the communication and outputting a corresponding type of feedback corresponding to the graphical representation of the communication, wherein the feedback indicates a magnitude of the change in the orientation of the electronic device relative to the reference point; and based on a determination that the communication has a second state different from the first state, displaying the graphical representation of the communication without outputting feedback indicating a magnitude of the change in the orientation of the electronic device relative to the reference point.

[0016] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more sensor devices; a device for displaying a graphical representation of a communication on the display; a device for detecting a change in the orientation of the electronic device relative to a reference point via the one or more sensor devices when the graphical representation of the communication is displayed on the display; and a device for performing the following operations in response to detecting a change in the orientation of the electronic device relative to the reference point when the graphical representation of the communication is displayed on the display: based on a determination that the communication has a first state, displaying the graphical representation of the communication and outputting a corresponding type of feedback corresponding to the graphical representation of the communication, wherein the feedback indicates a magnitude of the change in the orientation of the electronic device relative to the reference point; and based on a determination that the communication has a second state different from the first state, displaying the graphical representation of the communication without outputting feedback indicating a magnitude of the change in the orientation of the electronic device relative to the reference point.

[0017] According to some embodiments, a method performed at an electronic device having a display, one or more input devices, and a wireless communication radio component is described. The method includes: displaying a numerical selection user interface on the display; while the numerical selection user interface is displayed, receiving an input corresponding to a selection of a corresponding numerical value from a plurality of numerical values ​​in the numerical selection user interface via the one or more input devices; in response to receiving the input corresponding to the selection of the corresponding numerical value, displaying a representation of the corresponding numerical value in the numerical selection user interface on the display; while the representation of the corresponding numerical value in the numerical selection user interface is displayed, receiving an input corresponding to a request to send a message corresponding to the corresponding numerical value via a messaging application via the one or more input devices; and in response to receiving the input corresponding to the request to send the message corresponding to the corresponding numerical value via the messaging application, sending the message corresponding to the corresponding numerical value to a one or more participants, and: based on a determination that the message is designated as a transmission message for the corresponding numerical value, displaying a first message object in a message transcript of the messaging application on the display, wherein the first message object includes a graphical representation of the corresponding numerical value in a corresponding font, the corresponding font being associated with a request generated using the numerical value selection user interface; and based on a determination that the message is designated as a request message for the corresponding numerical value, displaying a second message object different from the first message object on the display in the message transcript of the messaging application, wherein, in the second message object: the corresponding numerical value is displayed in the message object in a font that is smaller than the corresponding font; and a predetermined request indicator associated with the request generated using the numerical value selection user interface is displayed in the corresponding font.

[0018] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying a numerical selection user interface on the display; while displaying the numerical selection user interface, receiving input corresponding to selecting a corresponding numerical value from a plurality of numerical values ​​in the numerical selection user interface via the one or more input devices; in response to receiving the input corresponding to the selection of the corresponding numerical value, displaying a representation of the corresponding numerical value in the numerical selection user interface on the display; while displaying the representation of the corresponding numerical value in the numerical selection user interface, receiving input corresponding to a request to send a message corresponding to the corresponding numerical value via a messaging application via the one or more input devices; and in response to receiving input corresponding to sending a message corresponding to the corresponding numerical value via the messaging application The input corresponding to the request for the message of the corresponding numerical value sends the message corresponding to the corresponding numerical value to one or more participants, and: based on the determination that the message is designated as a transmission message of the corresponding numerical value, a first message object is displayed in the message transcript of the messaging application on the display, wherein the first message object includes a graphical representation of the corresponding numerical value in a corresponding font, and the corresponding font is associated with the request generated using the numerical value selection user interface; and based on the determination that the message is designated as a request message of the corresponding numerical value, a second message object different from the first message object is displayed in the message transcript of the messaging application on the display, wherein, in the second message object: the corresponding numerical value is displayed in the message object in a font smaller than the corresponding font; and a predetermined request indicator associated with the request generated using the numerical value selection user interface is displayed in the corresponding font.

[0019] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying a numerical selection user interface on the display; receiving, via the one or more input devices, an input corresponding to selecting a corresponding numerical value from a plurality of numerical values ​​in the numerical selection user interface while the numerical selection user interface is displayed; in response to receiving the input corresponding to the selection of the corresponding numerical value, displaying a representation of the corresponding numerical value in the numerical selection user interface on the display; receiving, via the one or more input devices, an input corresponding to a request to send a message corresponding to the corresponding numerical value via a messaging application while the representation of the corresponding numerical value in the numerical selection user interface is displayed; and in response to receiving, via the messaging application, an input corresponding to sending a message corresponding to the corresponding numerical value The input corresponding to the request for the message of the corresponding numerical value sends the message corresponding to the corresponding numerical value to one or more participants, and: based on the determination that the message is designated as a transmission message of the corresponding numerical value, a first message object is displayed in the message transcript of the messaging application on the display, wherein the first message object includes a graphical representation of the corresponding numerical value in a corresponding font, and the corresponding font is associated with the request generated using the numerical value selection user interface; and based on the determination that the message is designated as a request message of the corresponding numerical value, a second message object different from the first message object is displayed in the message transcript of the messaging application on the display, wherein, in the second message object: the corresponding numerical value is displayed in the message object in a font smaller than the corresponding font; and a predetermined request indicator associated with the request generated using the numerical value selection user interface is displayed in the corresponding font.

[0020] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying a numerical selection user interface on the display; while displaying the numerical selection user interface, receiving an input corresponding to selecting a corresponding numerical value from a plurality of numerical values ​​in the numerical selection user interface via the one or more input devices; in response to receiving the input corresponding to the selection of the corresponding numerical value, displaying a representation of the corresponding numerical value in the numerical selection user interface on the display; while displaying the representation of the corresponding numerical value in the numerical selection user interface, receiving an input corresponding to a request to send a message corresponding to the corresponding numerical value via a messaging application via the one or more input devices; and in response to receiving an input corresponding to the sending of a message via the messaging application The input corresponding to the request to send the message corresponding to the corresponding numerical value sends the message corresponding to the corresponding numerical value to one or more participants, and: based on the determination that the message is designated as a transmission message for the corresponding numerical value, a first message object is displayed in the message transcript of the messaging application on the display, wherein the first message object includes a graphical representation of the corresponding numerical value in a corresponding font, and the corresponding font is associated with the request generated using the numerical value selection user interface; and based on the determination that the message is designated as a request message for the corresponding numerical value, a second message object different from the first message object is displayed in the message transcript of the messaging application on the display, wherein, in the second message object: the corresponding numerical value is displayed in the message object in a font smaller than the corresponding font; and a predetermined request indicator associated with the request generated using the numerical value selection user interface is displayed in the corresponding font.

[0021] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; a device for displaying a numerical selection user interface on the display; a device for receiving, via the one or more input devices, an input corresponding to selecting a corresponding numerical value from a plurality of numerical values ​​in the numerical selection user interface when the numerical selection user interface is displayed; a device for displaying a representation of the corresponding numerical value in the numerical selection user interface on the display in response to receiving the input corresponding to the selection of the corresponding numerical value; a device for receiving, via the one or more input devices, an input corresponding to a request to send a message corresponding to the corresponding numerical value via a messaging application when the representation of the corresponding numerical value in the numerical selection user interface is displayed; and a device for sending a message corresponding to the corresponding numerical value to the messaging application in response to receiving the input corresponding to the request to send the message corresponding to the corresponding numerical value via the messaging application. A device for sending the message of the corresponding numerical value to one or more participants, and: based on the determination that the message is designated as a transmission message of the corresponding numerical value, a device for displaying a first message object in a message transcript of the messaging application on the display, wherein the first message object includes a graphical representation of the corresponding numerical value in a corresponding font, and the corresponding font is associated with the request generated using the numerical value selection user interface; and based on the determination that the message is designated as a request message of the corresponding numerical value, a device for displaying a second message object different from the first message object on the display in the message transcript of the messaging application, wherein, in the second message object: the corresponding numerical value is displayed in the message object in a font smaller than the corresponding font; and a predetermined request indicator associated with the request generated using the numerical value selection user interface is displayed in the corresponding font.

[0022] According to some embodiments, a method performed at an electronic device having a display and one or more input devices is described. The method includes: displaying a message object in a message conversation on the display, wherein the message object includes an indication of a first one or more items sent from a participant in the conversation to a user of the electronic device; while displaying at least a portion of the message conversation, detecting an input corresponding to a request to obtain the first one or more items via the one or more input devices; and in response to detecting the input corresponding to the request to obtain the first one or more items: continuing to obtain the first one or more items based on a determination that the electronic device is associated with an activated account authorized to obtain the first one or more items; and displaying a second enable representation on the display for activating an account authorized to obtain the first one or more items based on a determination that the electronic device is not associated with an activated account authorized to obtain the first content.

[0023] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying a message object in a message conversation on the display, wherein the message object includes an indication of a first one or more items sent from a participant in the conversation to a user of the electronic device; while displaying at least a portion of the message conversation, detecting an input corresponding to a request to obtain the first one or more items via the one or more input devices; and in response to detecting the input corresponding to the request to obtain the first one or more items: continuing to obtain the first one or more items based on a determination that the electronic device is associated with an activated account authorized to obtain the first one or more items; and displaying a second enable representation on the display for activating an account authorized to obtain the first one or more items based on a determination that the electronic device is not associated with an activated account authorized to obtain the first content.

[0024] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying a message object in a message conversation on the display, wherein the message object includes an indication of a first one or more items sent from a participant in the conversation to a user of the electronic device; while displaying at least a portion of the message conversation, detecting an input corresponding to a request to obtain the first one or more items via the one or more input devices; and in response to detecting the input corresponding to the request to obtain the first one or more items: continuing to obtain the first one or more items based on a determination that the electronic device is associated with an activated account authorized to obtain the first one or more items; and displaying a second enable representation on the display for activating an account authorized to obtain the first one or more items based on a determination that the electronic device is not associated with an activated account authorized to obtain the first content.

[0025] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying a message object in a message conversation on the display, wherein the message object includes an indication of a first one or more items sent from a participant in the conversation to a user of the electronic device; while displaying at least a portion of the message conversation, detecting an input corresponding to a request to obtain the first one or more items via the one or more input devices; and in response to detecting the input corresponding to the request to obtain the first one or more items: continuing to obtain the first one or more items based on a determination that the electronic device is associated with an activated account authorized to obtain the first one or more items; and displaying a second enabling representation on the display for activating an account authorized to obtain the first one or more items based on a determination that the electronic device is not associated with an activated account authorized to obtain the first content.

[0026] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; a device for displaying a message object in a message conversation on the display, wherein the message object includes an indication of a first one or more items sent from a participant in the conversation to a user of the electronic device; a device for detecting, via the one or more input devices, an input corresponding to a request to obtain the first one or more items while displaying at least a portion of the message conversation; and a device for performing the following operations in response to detecting the input corresponding to the request to obtain the first one or more items: continuing to obtain the first one or more items based on a determination that the electronic device is associated with an activated account authorized to obtain the first one or more items; and displaying on the display a second enable representation for activating an account authorized to obtain the first one or more items based on a determination that the electronic device is not associated with an activated account authorized to obtain the first content.

[0027] According to some embodiments, a method performed at an electronic device having a display, a wireless transmission device, and one or more input devices is described. The method includes: providing a restricted credential associated with a user of the device to an external device via the wireless transmission device; in response to receiving the request to provide the restricted credential, simultaneously on the display: displaying a representation of a first account associated with the first restricted credential at a first position on the display, wherein the first account is selected for use in providing the restricted credential, and displaying at a second position on the display at least a portion of a representation of a second account associated with the second restricted credential, wherein the display of at least the portion of the representation of the second account includes a display of usage metrics for the second account; detecting a user selection of the representation of the second account via the one or more input devices; and in response to detecting the user selection of the representation of the second account: replacing the display of the representation of the first account at the first position on the display with the representation of the second account, and selecting the second account for use in providing the restricted credential.

[0028] 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 an electronic device having a display, a wireless transmission device, and one or more input devices, the one or more programs including instructions for performing the following operations: receiving a request to provide restricted credentials associated with a user of the device to an external device via the wireless transmission device; in response to receiving the request to provide the restricted credentials, simultaneously on the display: displaying a representation of a first account associated with the first restricted credential at a first position on the display, wherein the first account is selected for use in providing the restricted credential, and displaying at a second position on the display at least a portion of a representation of a second account associated with the second restricted credential, wherein the display of at least the portion of the representation of the second account includes a display of usage metrics of the second account; detecting a user selection of the representation of the second account via the one or more input devices; and in response to detecting the user selection of the representation of the second account: replacing the display of the representation of the first account at the first position on the display with the representation of the second account, and selecting the second account for use in providing the restricted credential.

[0029] 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 an electronic device having a display, a wireless transmission device, and one or more input devices, the one or more programs including instructions for performing the following operations: receiving a request to provide restricted credentials associated with a user of the device to an external device via the wireless transmission device; in response to receiving the request to provide the restricted credentials, simultaneously on the display: displaying a representation of a first account associated with the first restricted credential at a first position on the display, wherein the first account is selected for use in providing the restricted credential, and displaying at a second position on the display at least a portion of a representation of a second account associated with a second restricted credential, wherein the display of at least the portion of the representation of the second account includes a display of usage metrics for the second account; detecting a user selection of the representation of the second account via the one or more input devices; and in response to detecting the user selection of the representation of the second account: replacing the display of the representation of the first account at the first position on the display with the representation of the second account, and selecting the second account for use in providing the restricted credential.

[0030] According to some embodiments, an electronic device is described. The electronic device includes: a display; a wireless transmission device; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: providing a request for restricted credentials associated with a user of the device to an external device via the wireless transmission device; in response to receiving the request to provide the restricted credentials, simultaneously on the display: displaying a representation of a first account associated with the first restricted credential at a first position on the display, wherein the first account is selected for use in providing the restricted credential, and displaying at a second position on the display at least a portion of a representation of a second account associated with the second restricted credential, wherein the display of at least the portion of the representation of the second account includes a display of usage metrics for the second account; detecting a user selection of the representation of the second account via the one or more input devices; and in response to detecting the user selection of the representation of the second account: replacing the display of the representation of the first account at the first position on the display with the representation of the second account, and selecting the second account for use in providing the restricted credential.

[0031] According to some embodiments, an electronic device is described. The electronic device includes: a display; a wireless transmission device; one or more input devices; a device for receiving a request to provide a restricted credential associated with a user of the device to an external device via the wireless transmission device; a device for performing the following operations in response to receiving the request to provide the restricted credential: simultaneously on the display: displaying a representation of a first account associated with the first restricted credential at a first position on the display, wherein the first account is selected for use in providing the restricted credential, and displaying at a second position on the display at least a portion of a representation of a second account associated with the second restricted credential, wherein the display of at least the portion of the representation of the second account includes a display of a usage metric for the second account; a device for detecting a user selection of the representation of the second account via the one or more input devices; and in response to detecting the user selection of the representation of the second account, a device for performing the following operations: replacing the display of the representation of the first account at the first position on the display with the representation of the second account, and selecting the second account for use in providing the restricted credential.

[0032] According to some embodiments, a method performed at an electronic device having a display and one or more input devices is described. The method includes: receiving a request to participate in a transfer of a requested amount of resources using a first resource account; in response to receiving the request to participate in the transfer of the requested amount of resources using the first resource account: automatically continuing the transfer of the resources using only the first resource account based on a determination that the requested amount of resources is equal to or less than the amount of resources available via the first resource account, and automatically continuing the transfer of the resources using the first resource account and a second resource account different from the first resource account based on a determination that the requested amount of resources is greater than the amount of resources available via the first resource account.

[0033] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: receiving a request to participate in the transfer of a requested amount of resources using a first resource account; in response to receiving the request to participate in the transfer of the requested amount of resources using the first resource account: based on a determination that the requested amount of resources is equal to or less than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using only the first resource account, and based on a determination that the requested amount of resources is greater than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using the first resource account and a second resource account different from the first resource account.

[0034] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: receiving a request to participate in the transfer of a requested amount of resources using a first resource account; in response to receiving the request to participate in the transfer of the requested amount of resources using the first resource account: based on a determination that the requested amount of resources is equal to or less than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using only the first resource account, and based on a determination that the requested amount of resources is greater than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using the first resource account and a second resource account different from the first resource account.

[0035] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: receiving a request to participate in the transfer of a requested amount of resources using a first resource account; in response to receiving the request to participate in the transfer of the requested amount of resources using the first resource account: based on a determination that the requested amount of resources is equal to or less than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using only the first resource account, and based on a determination that the requested amount of resources is greater than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using the first resource account and a second resource account different from the first resource account.

[0036] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; means for receiving a request to participate in the transfer of a requested amount of resources using a first resource account; and, in response to receiving the request to participate in the transfer of the requested amount of resources using the first resource account, means for performing the following operations: based on a determination that the requested amount of resources is equal to or less than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using only the first resource account, and based on a determination that the requested amount of resources is greater than the amount of resources available via the first resource account, automatically continuing the transfer of the resources using the first resource account and a second resource account different from the first resource account.

[0037] According to some embodiments, a method performed at an electronic device having a display is described. The method includes: receiving one or more messages in a first conversation of electronic messages, the first conversation including messages from a user of the electronic device to a first participant and messages from the first participant to the user of the electronic device, the one or more messages in the first conversation including a first message associated with the transmission of a first additional item; receiving one or more messages in a second conversation of electronic messages, the messages including messages from the user of the electronic device to a second participant and messages from the second participant to the user of the electronic device, the one or more messages in the second conversation including a second message associated with the transmission of a second additional item; and simultaneously displaying on the display: a first item associated with the first participant, wherein the first item includes first information from the first message in the first conversation of electronic messages and a representation of the first additional item; and a second item associated with the second participant, wherein the second item includes second information from the second message in the second conversation of electronic messages and a representation of the second additional item.

[0038] 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 an electronic device having a display, the one or more programs including instructions for performing the following operations: receiving one or more messages in a first conversation of electronic messages, the messages including messages from a user of the electronic device to a first participant and messages from the first participant to the user of the electronic device, the one or more messages in the first conversation including a first message associated with the transmission of the first additional item; receiving one or more messages in a second conversation of electronic messages, the messages including messages from the user of the electronic device to a second participant and messages from the second participant to the user of the electronic device, the one or more messages in the second conversation including a second message associated with the transmission of a second additional item; and simultaneously displaying on the display: a first item associated with the first participant, wherein the first item includes first information from the first message in the first conversation of electronic messages and a representation of the first additional item; and a second item associated with the second participant, wherein the second item includes second information from the second message in the second conversation of electronic messages and a representation of the second additional item.

[0039] 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 an electronic device having a display, the one or more programs including instructions for performing the following operations: receiving one or more messages in a first conversation of electronic messages, the messages including messages from a user of the electronic device to a first participant and messages from the first participant to the user of the electronic device, the one or more messages in the first conversation including a first message associated with the transmission of the first additional item; receiving one or more messages in a second conversation of electronic messages, the messages including messages from the user of the electronic device to a second participant and messages from the second participant to the user of the electronic device, the one or more messages in the second conversation including a second message associated with the transmission of a second additional item; and simultaneously displaying on the display: a first item associated with the first participant, wherein the first item includes first information from the first message in the first conversation of electronic messages and a representation of the first additional item; and a second item associated with the second participant, wherein the second item includes second information from the second message in the second conversation of electronic messages and a representation of the second additional item.

[0040] According to some embodiments, an electronic device is described. The electronic device includes: a display; 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 following operations: receiving one or more messages in a first conversation of electronic messages, the messages including messages from a user of the electronic device to a first participant and messages from the first participant to the user of the electronic device, the one or more messages in the first conversation including a first message associated with the transmission of the first additional item; receiving one or more messages in a second conversation of electronic messages, the messages including messages from the user of the electronic device to a second participant and messages from the second participant to the user of the electronic device, the one or more messages in the second conversation including a second message associated with the transmission of a second additional item; and simultaneously displaying on the display: a first item associated with the first participant, wherein the first item includes first information from the first message in the first conversation of electronic messages and a representation of the first additional item; and a second item associated with the second participant, wherein the second item includes second information from the second message in the second conversation of electronic messages and a representation of the second additional item.

[0041] According to some embodiments, an electronic device is described. The electronic device includes: a display; a device for receiving one or more messages in a first conversation of electronic messages, the first conversation including messages from a user of the electronic device to a first participant and messages from the first participant to the user of the electronic device, the one or more messages in the first conversation including a first message associated with the transmission of a first additional item; a device for receiving one or more messages in a second conversation of electronic messages, the second conversation including messages from the user of the electronic device to a second participant and messages from the second participant to the user of the electronic device, the one or more messages in the second conversation including a second message associated with the transmission of a second additional item; and a device for simultaneously displaying on the display: a first item associated with the first participant, wherein the first item includes first information from the first message in the first conversation of electronic messages and a representation of the first additional item; and a second item associated with the second participant, wherein the second item includes second information from the second message in the second conversation of electronic messages and a representation of the second additional item.

[0042] According to some embodiments, a method is described for performing at an electronic device having one or more output devices including a display and one or more input devices. The method also includes: receiving an utterance from a user via the one or more input devices corresponding to a request to perform an operation; in response to receiving the utterance, preparing to perform the operation; based on a determination that the operation requires authorization, preparing to perform the operation includes presenting via the one or more output devices of the device: a representation of the operation; and instructions for providing authorization to the device to perform the operation via the one or more input devices of the device; after preparing to perform the operation, receiving a confirmation input associated with performing the operation; and in response to receiving the confirmation input: based on a determination that the operation requires authorization and the operation has not been authorized, abandoning the execution of the operation in response to the confirmation input; based on a determination that the operation requires authorization and the operation has been authorized, executing the operation in response to the confirmation input; and based on a determination that the operation does not require authorization, executing the operation in response to the confirmation input.

[0043] 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 an electronic device having one or more output devices including a display and one or more input devices, the one or more programs including instructions for performing the following operations: receiving an utterance corresponding to a request to perform an operation from a user via the one or more input devices; in response to receiving the utterance, preparing to perform the operation; in accordance with a determination that the operation requires authorization, preparing to perform the operation includes presenting, via the one or more output devices of the device: a representation of the operation; and instructions for providing authorization to the device to perform the operation via the one or more input devices of the device; after preparing to perform the operation, receiving a confirmation input associated with performing the operation; and in response to receiving the confirmation input: in accordance with a determination that the operation requires authorization and the operation has not been authorized, abandoning the operation in response to the confirmation input; in accordance with a determination that the operation requires authorization and the operation has been authorized, performing the operation in response to the confirmation input; and in accordance with a determination that the operation does not require authorization, performing the operation in response to the confirmation input.

[0044] 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 an electronic device having one or more output devices including a display and one or more input devices, the one or more programs including instructions for performing the following operations: receiving an utterance from a user corresponding to a request to perform an operation via the one or more input devices; in response to receiving the utterance, preparing to perform the operation; in accordance with a determination that the operation requires authorization, preparing to perform the operation includes presenting, via the one or more output devices of the device: a representation of the operation; and instructions for providing authorization to the device to perform the operation via the one or more input devices of the device; after preparing to perform the operation, receiving a confirmation input associated with performing the operation; and in response to receiving the confirmation input: in accordance with a determination that the operation requires authorization and the operation has not been authorized, abandoning the operation in response to the confirmation input; in accordance with a determination that the operation requires authorization and the operation has been authorized, performing the operation in response to the confirmation input; and in accordance with a determination that the operation does not require authorization, performing the operation in response to the confirmation input.

[0045] According to some embodiments, an electronic device is described. The electronic device includes: one or more output devices including a display; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: receiving an utterance corresponding to a request to perform an operation from a user via the one or more input devices; in response to receiving the utterance, preparing to perform the operation; based on a determination that the operation requires authorization, preparing to perform the operation includes presenting, via the one or more output devices of the device: a representation of the operation; and instructions for providing authorization to the device to perform the operation via the one or more input devices of the device; after preparing to perform the operation, receiving a confirmation input associated with performing the operation; and in response to receiving the confirmation input: based on a determination that the operation requires authorization and the operation has not been authorized, abandoning the operation in response to the confirmation input; based on a determination that the operation requires authorization and the operation has been authorized, performing the operation in response to the confirmation input; and based on a determination that the operation does not require authorization, performing the operation in response to the confirmation input.

[0046] According to some embodiments, an electronic device is described. The electronic device includes: one or more output devices including a display; one or more input devices; a device for receiving, via the one or more input devices, an utterance from a user corresponding to a request to perform an operation; in response to receiving the utterance, preparing to perform the operation, a device for performing the following operations: based on a determination that the operation requires authorization, preparing to perform the operation includes presenting, via the one or more output devices of the device: a representation of the operation; and instructions for providing authorization to the device to perform the operation via the one or more input devices of the device; after preparing to perform the operation, a device for receiving a confirmation input associated with performing the operation; and in response to receiving the confirmation input, a device for performing the following operations: based on a determination that the operation requires authorization and the operation has not been authorized, abstaining from performing the operation in response to the confirmation input; based on a determination that the operation requires authorization and the operation has been authorized, performing the operation in response to the confirmation input; and based on a determination that the operation does not require authorization, performing the operation in response to the confirmation input.

[0047] According to some embodiments, a method performed at an electronic device having a display and one or more sensor devices is described. The method includes: displaying a user interface object on the display when the device is in a first orientation relative to a baseline orientation relative to a reference point; while displaying the user interface object, detecting, via the one or more sensor devices, a change in orientation of the device from the first orientation relative to the reference point to a corresponding orientation relative to the reference point; in response to detecting the change in orientation of the device: changing the appearance of the user interface object by applying a visual effect to the user interface object when the orientation of the device changes relative to the reference point, the visual effect changing a set of one or more parameters of the user interface object; reducing the magnitude of the visual effect based on a determination that the change in orientation of the device includes movement toward the baseline orientation that meets a predetermined criterion; and continuing to apply the visual effect to the user interface object without reducing the magnitude of the visual effect based on a determination that the change in orientation of the device includes movement away from the baseline orientation that meets the predetermined criterion.

[0048] 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 an electronic device having a display and one or more sensor devices, the one or more programs including instructions for performing the following operations: displaying a user interface object on the display when the device is in a first orientation relative to a baseline orientation relative to a reference point; while displaying the user interface object, detecting, via the one or more sensor devices, a change in the orientation of the device from the first orientation relative to the reference point to a corresponding orientation relative to the reference point; in response to detecting the change in the orientation of the device: changing the appearance of the user interface object by applying a visual effect to the user interface object when the orientation of the device changes relative to the reference point, the visual effect changing a set of one or more parameters of the user interface object; reducing the magnitude of the visual effect based on a determination that the change in the orientation of the device includes movement toward the baseline orientation that meets a predetermined criterion; and continuing to apply the visual effect to the user interface object without reducing the magnitude of the visual effect based on a determination that the change in the orientation of the device includes movement away from the baseline orientation that meets the predetermined criterion.

[0049] 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 an electronic device having a display and one or more sensor devices, the one or more programs including instructions for performing the following operations: displaying a user interface object on the display when the device is in a first orientation relative to a baseline orientation relative to a reference point; while displaying the user interface object, detecting, via the one or more sensor devices, a change in the orientation of the device from the first orientation relative to the reference point to a corresponding orientation relative to the reference point; in response to detecting the change in the orientation of the device: changing the appearance of the user interface object by applying a visual effect to the user interface object when the orientation of the device changes relative to the reference point, the visual effect changing a set of one or more parameters of the user interface object; reducing the magnitude of the visual effect based on a determination that the change in the orientation of the device includes movement toward the baseline orientation that meets a predetermined criterion; and continuing to apply the visual effect to the user interface object without reducing the magnitude of the visual effect based on a determination that the change in the orientation of the device includes movement away from the baseline orientation that meets the predetermined criterion.

[0050] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more sensor devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying a user interface object on the display when the device is in a first orientation relative to a baseline orientation relative to a reference point; detecting, via the one or more sensor devices, a change in the orientation of the device from the first orientation relative to the reference point to a corresponding orientation relative to the reference point when the user interface object is displayed; in response to detecting the change in the orientation of the device: changing the appearance of the user interface object by applying a visual effect to the user interface object when the orientation of the device changes relative to the reference point, the visual effect changing a set of one or more parameters of the user interface object; reducing the magnitude of the visual effect based on a determination that the change in the orientation of the device includes movement toward the baseline orientation that meets a predetermined criterion; and continuing to apply the visual effect to the user interface object without reducing the magnitude of the visual effect based on a determination that the change in the orientation of the device includes movement away from the baseline orientation that meets the predetermined criterion.

[0051] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more sensor devices; a device for displaying a user interface object on the display when the device is in a first orientation relative to a baseline orientation relative to a reference point; a device for detecting, via the one or more sensor devices, a change in orientation of the device from the first orientation relative to the reference point to a corresponding orientation relative to the reference point when the user interface object is displayed; a device for performing the following operations in response to detecting a change in orientation of the device: changing the appearance of the user interface object by applying a visual effect to the user interface object when the orientation of the device changes relative to the reference point, the visual effect changing a set of one or more parameters of the user interface object; reducing the magnitude of the visual effect based on a determination that the change in orientation of the device includes movement toward the baseline orientation that meets a predetermined criterion; and continuing to apply the visual effect to the user interface object without reducing the magnitude of the visual effect based on a determination that the change in orientation of the device includes movement away from the baseline orientation that meets the predetermined criterion.

[0052] According to some embodiments, a method performed at an electronic device having a display and one or more input devices is described. The method includes: displaying a message composition user interface on the display, the message composition user interface including a message composition area for composing a message to a recipient; while displaying the message composition user interface, receiving a request to generate a draft message including corresponding content; and in response to receiving the request to generate the draft message, displaying a representation of the draft message in the message composition area, wherein: based on a determination that the draft message is a first type of draft message designated for delivery as a hidden message, at least a portion of the corresponding content of the draft message is displayed simultaneously with a representation of a hidden element; and based on a determination that the draft message is a second type of draft message designated for delivery as a non-hidden message, at least a portion of the corresponding content of the draft message is displayed without displaying a representation of the hidden element.

[0053] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying a message composition user interface on the display, the message composition user interface including a message composition area for composing a message to a recipient; while displaying the message composition user interface, receiving a request to generate a draft message including corresponding content; and in response to receiving the request to generate the draft message, displaying a representation of the draft message in the message composition area, wherein: based on a determination that the draft message is a first type of draft message designated for delivery as a hidden message, displaying at least a portion of the corresponding content of the draft message together with a representation of a hidden element; and based on a determination that the draft message is a second type of draft message designated for delivery as a non-hidden message, displaying at least a portion of the corresponding content of the draft message without displaying a representation of the hidden element.

[0054] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying a message composition user interface on the display, the message composition user interface including a message composition area for composing a message to a recipient; while displaying the message composition user interface, receiving a request to generate a draft message including corresponding content; and in response to receiving the request to generate the draft message, displaying a representation of the draft message in the message composition area, wherein: based on a determination that the draft message is a first type of draft message designated for delivery as a hidden message, at least a portion of the corresponding content of the draft message is displayed simultaneously with a representation of a hidden element; and based on a determination that the draft message is a second type of draft message designated for delivery as a non-hidden message, at least a portion of the corresponding content of the draft message is displayed without displaying a representation of the hidden element.

[0055] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying a message composition user interface on the display, the message composition user interface including a message composition area for composing a message to a recipient; while displaying the message composition user interface, receiving a request to generate a draft message including corresponding content; and in response to receiving the request to generate the draft message, displaying a representation of the draft message in the message composition area, wherein: based on a determination that the draft message is a first type of draft message designated for delivery as a hidden message, displaying at least a portion of the corresponding content of the draft message together with a representation of a hidden element; and based on a determination that the draft message is a second type of draft message designated for delivery as a non-hidden message, displaying at least a portion of the corresponding content of the draft message without displaying a representation of the hidden element.

[0056] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; a device for displaying a message composition user interface on the display, the message composition user interface including a message composition area for composing a message to a recipient; a device for receiving a request to generate a draft message including corresponding content while the message composition user interface is displayed; and a device for displaying a representation of the draft message in the message composition area in response to receiving the request to generate the draft message, wherein: based on a determination that the draft message is a first type of draft message designated for delivery as a hidden message, at least a portion of the corresponding content of the draft message is displayed simultaneously with a representation of a hidden element; and based on a determination that the draft message is a second type of draft message designated for delivery as a non-hidden message, at least a portion of the corresponding content of the draft message is displayed without displaying a representation of the hidden element.

[0057] According to some embodiments, a method performed at an electronic device having a display, one or more input devices, and one or more sensors is described. The method includes: displaying a message user interface on the display, the message user interface including at least a portion of a message conversation between a user of the device and one or more other participants; while displaying the message user interface, receiving a message; in response to receiving the message, displaying a representation of the message in the message conversation includes: based on a determination that the message is a message of a first type and is sent with instructions for initially hiding the corresponding content of the message, displaying a hidden element in the message conversation that hides the corresponding content of the message, wherein the hidden element is displayed with a dynamic visual effect that changes as the angle of the device relative to a reference point changes; based on a determination that the message is a message of the first type and is not sent with instructions for initially hiding the corresponding content of the message, displaying the corresponding content of the message in the message conversation with the dynamic visual effect that changes as the angle of the device relative to the reference point changes; and based on a determination that the message is a message of the second type, displaying the corresponding content of the message in the message conversation without the dynamic visual effect.

[0058] 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 an electronic device having a display, one or more input devices, and one or more sensor devices, the one or more programs including instructions for performing the following operations: displaying a message user interface on the display, the message user interface including at least a portion of a message conversation between a user of the device and one or more other participants; while displaying the message user interface, receiving a message; in response to receiving the message, displaying a representation of the message in the message conversation including: based on a determination that the message is a first type of message and is sent with instructions for initially hiding the corresponding content of the message, displaying a hidden element in the message conversation that hides the corresponding content of the message, wherein the hidden element is displayed with a dynamic visual effect that changes as the angle of the device relative to a reference point changes; based on a determination that the message is the first type of message and is not sent with instructions for initially hiding the corresponding content of the message, displaying the corresponding content of the message in the message conversation with the dynamic visual effect that changes as the angle of the device relative to the reference point changes; and based on a determination that the message is a second type of message, displaying the corresponding content of the message in the message conversation without the dynamic visual effect.

[0059] According to some embodiments, a 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 an electronic device having a display, one or more input devices, and one or more sensor devices, the one or more programs including instructions for performing the following operations: displaying a message user interface on the display, the message user interface including at least a portion of a message conversation between a user of the device and one or more other participants; while displaying the message user interface, receiving a message; in response to receiving the message, displaying a representation of the message in the message conversation including: based on a determination that the message is a first type of message and is sent with instructions for initially hiding the corresponding content of the message, displaying a hidden element in the message conversation that hides the corresponding content of the message, wherein the hidden element is displayed with a dynamic visual effect that changes as the angle of the device relative to a reference point changes; based on a determination that the message is the first type of message and is not sent with instructions for initially hiding the corresponding content of the message, displaying the corresponding content of the message in the message conversation with the dynamic visual effect that changes as the angle of the device relative to the reference point changes; and based on a determination that the message is a second type of message, displaying the corresponding content of the message in the message conversation without the dynamic visual effect.

[0060] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more sensors; 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 following operations: displaying a message user interface on the display, the message user interface including at least a portion of a message conversation between a user of the device and one or more other participants; receiving a message while displaying the message user interface; in response to receiving the message, displaying a representation of the message in the message conversation including: based on a determination that the message is a first type of message and is sent with instructions for initially hiding the corresponding content of the message, displaying a hidden element in the message conversation that hides the corresponding content of the message, wherein the hidden element is displayed with a dynamic visual effect that changes as the angle of the device relative to a reference point changes; based on a determination that the message is the first type of message and is not sent with instructions for initially hiding the corresponding content of the message, displaying the corresponding content of the message in the message conversation with the dynamic visual effect that changes as the angle of the device relative to the reference point changes; and based on a determination that the message is a second type of message, displaying the corresponding content of the message in the message conversation without the dynamic visual effect.

[0061] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more sensors; a device for displaying a message user interface on the display, the message user interface including at least a portion of a message conversation between a user of the device and one or more other participants; a device for receiving a message while displaying the message user interface; and a device for displaying a representation of the message in the message conversation in response to receiving the message, the device including: based on a determination that the message is a message of a first type and is sent with instructions for initially hiding the corresponding content of the message, a device for displaying a hidden element that hides the corresponding content of the message in the message conversation, wherein the hidden element is displayed with a dynamic visual effect that changes as the angle of the device relative to a reference point changes; based on a determination that the message is a message of the first type and is not sent with instructions for initially hiding the corresponding content of the message, a device for displaying the corresponding content of the message in the message conversation with the dynamic visual effect that changes as the angle of the device relative to the reference point changes; and based on a determination that the message is a message of the second type, a device for displaying the corresponding content of the message in the message conversation without the dynamic visual effect.

[0062] According to some embodiments, a method is described for performing at an electronic device having a display, a security element, and one or more wireless communication radios. The method includes: preconfiguring a group account on the electronic device using the security element of the device; transmitting a request for a quantity of a type of item to multiple participants of a messaging session using the one or more wireless communication radios; after preconfiguring the group account on the electronic device using the security element of the device: adding the quantity of the type of item received from a first participant of the multiple participants to the group account, and adding the quantity of the type of item received from a second participant of the multiple participants to the group account; receiving a request to transmit credentials for the group account; and in response to receiving the request to transmit credentials for the group account: receiving authentication information; based on a determination that the authentication information received at the device corresponds to enrollment authentication information, transmitting the credentials for the group account via the one or more wireless communication radios; and based on a determination that the authentication information received at the device does not correspond to enrollment authentication information, forgoing transmitting the credentials for the group account.

[0063] 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 an electronic device having a display, a secure element, and one or more wireless communication radios, the one or more programs including instructions for: pre-configuring a group account on the electronic device using the secure element of the device; transmitting a request for a quantity of a type of item to multiple participants of a messaging session using the one or more wireless communication radios; after pre-configuring the group account on the electronic device using the secure element of the device: adding the quantity of the type of item received from a first participant of the multiple participants to the group account, and adding the quantity of the type of item received from a second participant of the multiple participants to the group account; receiving a request to transmit credentials for the group account; and in response to receiving the request to transmit credentials for the group account: receiving authentication information; based on a determination that the authentication information received at the device corresponds to enrollment authentication information, transmitting the credentials for the group account via the one or more wireless communication radios; and based on a determination that the authentication information received at the device does not correspond to enrollment authentication information, forgoing transmitting the credentials for the group account.

[0064] 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 an electronic device having a display, a secure element, and one or more wireless communication radios, the one or more programs including instructions for: pre-configuring a group account on the electronic device using the secure element of the device; transmitting a request for a quantity of a type of item to multiple participants of a messaging session using the one or more wireless communication radios; after pre-configuring the group account on the electronic device using the secure element of the device: adding the quantity of the type of item received from a first participant of the multiple participants to the group account, and adding the quantity of the type of item received from a second participant of the multiple participants to the group account; receiving a request to transmit credentials for the group account; and in response to receiving the request to transmit credentials for the group account: receiving authentication information; based on a determination that the authentication information received at the device corresponds to enrollment authentication information, transmitting the credentials for the group account via the one or more wireless communication radios; and based on a determination that the authentication information received at the device does not correspond to enrollment authentication information, forgoing transmitting the credentials for the group account.

[0065] According to some embodiments, an electronic device is described. The electronic device includes: a display; a secure element; one or more wireless communication radio components; 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 following operations: using the secure element of the device to preconfigure a group account on the electronic device; transmitting a request for a certain amount of a type of item to multiple participants of a messaging session using the one or more wireless communication radio components; after preconfiguring the group account on the electronic device using the secure element of the device: adding the certain amount of a type of item received from a first participant of the multiple participants to the group account, and adding the certain amount of the type of item received from a second participant of the multiple participants to the group account; receiving a request to transmit credentials for the group account; and in response to receiving the request to transmit credentials for the group account: receiving authentication information; based on a determination that the authentication information received at the device corresponds to enrollment authentication information, transmitting the credentials for the group account via the one or more wireless communication radio components; and based on a determination that the authentication information received at the device does not correspond to enrollment authentication information, forgoing transmitting the credentials for the group account.

[0066] According to some embodiments, an electronic device is described. The electronic device includes: a display; a security element; one or more wireless communication radios; means for preconfiguring a group account on the electronic device using the security element of the device; means for transmitting a request for a certain amount of a type of item to multiple participants of a messaging session using the one or more wireless communication radios; means for performing the following operations after preconfiguring the group account on the electronic device using the security element of the device: adding the certain amount of the type of item received from a first participant of the multiple participants to the group account, and adding the certain amount of the type of item received from a second participant of the multiple participants to the group account; means for receiving a request to transmit credentials for the group account; and means for performing the following operations in response to receiving the request to transmit credentials for the group account: receiving authentication information; transmitting the credentials for the group account via the one or more wireless communication radios based on a determination that the authentication information received at the device corresponds to enrollment authentication information; and forgoing transmitting the credentials for the group account based on a determination that the authentication information received at the device does not correspond to enrollment authentication information.

[0067] According to some embodiments, a method performed at an electronic device having a display and one or more input devices is described. The method includes: displaying at least a portion of a messaging session of a messaging application on the display; while displaying at least the portion of the messaging session of the messaging application, displaying a first enable representation associated with the management of a first type of project on the display; detecting user activation of the first enable representation via the one or more input devices; and in response to detecting the user activation of the first enable representation: based on a determination that the messaging session is a group messaging session including more than two participants, displaying a first user interface on the display, the first user interface being used to set up a shared project management account shared with the participants in the messaging session for managing the first type of project; and based on a determination that the messaging session is a one-to-one messaging session including two participants, displaying a second user interface different from the first user interface on the display, the second user interface being used to send or request the first type of project to another participant in the messaging session instead of setting up the shared project management account for managing the first type of project.

[0068] 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying at least a portion of a message conversation of a messaging application on the display; while displaying at least the portion of the message conversation of the messaging application, displaying a first enable representation associated with the management of a first type of project on the display; detecting user activation of the first enable representation via the one or more input devices; and in response to detecting the user activation of the first enable representation: based on a determination that the messaging conversation is a group messaging conversation including more than two participants, displaying a first user interface on the display, the first user interface being used to set up a shared project management account shared with the participants in the messaging conversation for managing the first type of project; and based on a determination that the messaging conversation is a one-to-one messaging conversation including two participants, displaying a second user interface different from the first user interface on the display, the second user interface being used to send or request the first type of project to another participant in the messaging conversation instead of setting up the shared project management account for managing the first type of project.

[0069] According to some embodiments, a transient 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 an electronic device having a display and one or more input devices, the one or more programs including instructions for performing the following operations: displaying at least a portion of a message conversation of a messaging application on the display; while displaying at least the portion of the message conversation of the messaging application, displaying a first enable representation associated with the management of a first type of project on the display; detecting user activation of the first enable representation via the one or more input devices; and in response to detecting the user activation of the first enable representation: based on a determination that the messaging conversation is a group messaging conversation including more than two participants, displaying a first user interface on the display, the first user interface being used to set a shared project management account shared with the participants in the messaging conversation for managing the first type of project; and based on a determination that the messaging conversation is a one-to-one messaging conversation including two participants, displaying a second user interface different from the first user interface on the display, the second user interface being used to send or request the first type of project to another participant in the messaging conversation instead of setting the shared project management account for managing the first type of project.

[0070] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying at least a portion of a messaging session of a messaging application on the display; while displaying at least the portion of the messaging session of the messaging application, displaying a first enable representation associated with the management of a first type of project on the display; detecting user activation of the first enable representation via the one or more input devices; and in response to detecting the user activation of the first enable representation: based on a determination that the messaging session is a group messaging session including more than two participants, displaying a first user interface on the display, the first user interface being used to set up a shared project management account shared with the participants in the messaging session for managing the first type of project; and based on a determination that the messaging session is a one-to-one messaging session including two participants, displaying a second user interface different from the first user interface on the display, the second user interface being used to send or request the first type of project to another participant in the messaging session instead of setting up the shared project management account for managing the first type of project.

[0071] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; a device for displaying at least a portion of a messaging session of a messaging application on the display; a device for displaying a first enable representation associated with the management of a first type of project on the display when displaying at least the portion of the messaging session of the messaging application; a device for detecting user activation of the first enable representation via the one or more input devices; and a device for performing the following operations in response to detecting the user activation of the first enable representation: based on a determination that the messaging session is a group messaging session including more than two participants, displaying a first user interface on the display, the first user interface being used to set up a shared project management account shared with the participants in the messaging session for managing the first type of project; and based on a determination that the messaging session is a one-to-one messaging session including two participants, displaying a second user interface different from the first user interface on the display, the second user interface being used to send or request the first type of project to another participant in the messaging session instead of setting up the shared project management account for managing the first type of project.

[0072] According to some embodiments, a method performed at an electronic device having a display and a security element is described. The method includes: using the security element of the device to preconfigure a group account on the electronic device, wherein the group account is associated with items of a first type received from multiple participants associated with the group account, and wherein the group account is configured to expire after a predetermined time period; using a first subset of the items of the first type by transferring the items of the first type from the group account before the group account expires; determining that the group account has expired after using at least the first subset of the items of the first type; and in response to the determination that the group account has expired: causing the group account to expire after a predetermined time period associated with the group account based on the determination that the group account is associated with a first amount of items of the first type greater than zero. the transmission of the first type of the item associated with the group account divided among the multiple participants associated with the group account, the multiple participants including a first participant among the multiple participants associated with the group account and a second participant among the multiple participants associated with the group account; and based on a determination that the group account is associated with a second amount of the first type of item that is greater than zero and different from the first amount, resulting in the transmission of the first type of the item associated with the group account divided among the multiple participants associated with the group account, the multiple participants including the first participant among the multiple participants associated with the group account and the second participant among the multiple participants associated with the group account.

[0073] 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 an electronic device having a display and a security element, the one or more programs including instructions for performing the following operations: pre-configuring a group account on the electronic device using the security element of the device, wherein the group account is associated with a first type of items received from a plurality of participants associated with the group account, and wherein the group account is configured to expire after a predetermined time period; using a first subset of the first type of items by transferring the first type of items from the group account before the group account has expired; after using at least the first subset of the first type of items, determining that the group account has expired; and in response to determining that the group account has expired: A determination that the account is associated with a first quantity greater than zero of the item of the first type results in a transfer of the item of the first type associated with the group account divided among the multiple participants associated with the group account, the multiple participants including a first participant of the multiple participants associated with the group account and a second participant of the multiple participants associated with the group account; and based on a determination that the group account is associated with a second quantity greater than zero and different from the first quantity of the item of the first type, a transfer of the item of the first type associated with the group account divided among the multiple participants including the first participant of the multiple participants associated with the group account and the second participant of the multiple participants associated with the group account.

[0074] 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 an electronic device having a display and a security element, the one or more programs including instructions for performing the following operations: pre-configuring a group account on the electronic device using the security element of the device, wherein the group account is associated with a first type of items received from a plurality of participants associated with the group account, and wherein the group account is configured to expire after a predetermined time period; using a first subset of the first type of items by transferring the first type of items from the group account before the group account has expired; after using at least the first subset of the first type of items, determining that the group account has expired; and in response to determining that the group account has expired: A determination that the account is associated with a first quantity greater than zero of the item of the first type results in a transfer of the item of the first type associated with the group account divided among the multiple participants associated with the group account, the multiple participants including a first participant of the multiple participants associated with the group account and a second participant of the multiple participants associated with the group account; and based on a determination that the group account is associated with a second quantity greater than zero and different from the first quantity of the item of the first type, a transfer of the item of the first type associated with the group account divided among the multiple participants including the first participant of the multiple participants associated with the group account and the second participant of the multiple participants associated with the group account.

[0075] According to some embodiments, an electronic device is described. The electronic device includes: a display; a security element; 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 following operations: using the security element of the device to preconfigure a group account on the electronic device, wherein the group account is associated with items of a first type received from multiple participants associated with the group account, and wherein the group account is configured to expire after a predetermined time period; before the group account expires, using a first subset of the items of the first type by transferring the items of the first type from the group account; after using at least the first subset of the items of the first type, determining that the group account has expired; and in response to determining that the group account has expired: Based on a determination that the group account is associated with a first quantity greater than zero of the item of the first type, the transmission of the item of the first type associated with the group account is divided among the multiple participants associated with the group account, the multiple participants including a first participant of the multiple participants associated with the group account and a second participant of the multiple participants associated with the group account; and based on a determination that the group account is associated with a second quantity greater than zero and different from the first quantity of the item of the first type, the transmission of the item of the first type associated with the group account is divided among the multiple participants including the first participant of the multiple participants associated with the group account and the second participant of the multiple participants associated with the group account.

[0076] According to some embodiments, an electronic device is described. The electronic device includes: a display; a security element; a device for preconfiguring a group account on the electronic device using the security element of the device, wherein the group account is associated with a first type of items received from a plurality of participants associated with the group account, and wherein the group account is configured to expire after a predetermined time period; a device for using a first subset of the items of the first type by transferring the items of the first type from the group account before the group account expires; a device for determining that the group account has expired after using at least the first subset of the items of the first type; and a device for performing the following operations in response to the determination that the group account has expired: A determination associated with a first quantity results in a transfer of the first type of item associated with the group account divided among the multiple participants associated with the group account, the multiple participants including a first participant of the multiple participants associated with the group account and a second participant of the multiple participants associated with the group account; and a determination associated with a second quantity of the first type of item that is greater than zero and different from the first quantity results in a transfer of the first type of item associated with the group account divided among the multiple participants associated with the group account, the multiple participants including the first participant of the multiple participants associated with the group account and the second participant of the multiple participants associated with the group account.

[0077] According to some embodiments, a method performed at an electronic device having a display and one or more input devices is described. The method includes: receiving a request via the one or more input devices to perform an operation associated with a first transfer account; and in response to receiving the request to perform the operation associated with the first transfer account: based on a determination that a balance of the first transfer account is below a balance threshold, displaying a representation of the first transfer account on the display together with a low-balance notification; and based on a determination that the balance of the first transfer account is not below the balance threshold, displaying the representation of the first transfer account on the display without displaying the low-balance notification.

[0078] 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 an electronic device having a display and one or more input devices. The one or more programs include instructions for performing the following operations: receiving a request to perform an operation associated with the first transfer account via the one or more input devices; and in response to receiving the request to perform the operation associated with the first transfer account: based on a determination that the balance of the first transfer account is below a balance threshold, displaying a representation of the first transfer account and an insufficient balance notification on the display simultaneously; and based on a determination that the balance of the first transfer account is not below the balance threshold, displaying the representation of the first transfer account on the display without displaying the insufficient balance notification.

[0079] 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 an electronic device having a display and one or more input devices. The one or more programs include instructions for performing the following operations: receiving a request to perform an operation associated with a first transfer account via the one or more input devices; and in response to receiving the request to perform the operation associated with the first transfer account: based on a determination that the balance of the first transfer account is below a balance threshold, displaying a representation of the first transfer account and an insufficient balance notification on the display simultaneously; and based on a determination that the balance of the first transfer account is not below the balance threshold, displaying the representation of the first transfer account on the display without displaying the insufficient balance notification.

[0080] According to some embodiments, an electronic device is described. The electronic device includes: a display, one or more input devices, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors. The one or more programs include instructions for performing the following operations: receiving a request to perform an operation associated with the first transfer account via the one or more input devices; and in response to receiving the request to perform the operation associated with the first transfer account: based on a determination that the balance of the first transfer account is below a balance threshold, displaying a representation of the first transfer account and an insufficient balance notification on the display simultaneously; and based on a determination that the balance of the first transfer account is not below the balance threshold, displaying the representation of the first transfer account on the display without displaying the insufficient balance notification.

[0081] According to some embodiments, an electronic device is described. The electronic device includes: a display; one or more input devices; means for receiving, via the one or more input devices, a request to perform an operation associated with a first transfer account; and means for, in response to receiving the request to perform the operation associated with the first transfer account, performing the following operations: based on a determination that a balance in the first transfer account is below a balance threshold, displaying on the display a representation of the first transfer account and a low-balance notification simultaneously; and based on a determination that the balance in the first transfer account is not below the balance threshold, displaying on the display the representation of the first transfer account without displaying the low-balance notification.

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

[0083] Thus, devices are provided with a faster, more efficient method and interface for managing peer-to-peer transfers, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces may supplement or replace other methods for managing peer-to-peer transfers. BRIEF DESCRIPTION OF THE DRAWINGS

[0084] For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, wherein like reference numerals designate corresponding parts throughout the several views.

[0085] Figure 1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display according to some embodiments.

[0086] Figure 1B is a block diagram illustrating example components for event processing according to some embodiments.

[0087] Figure 1C is a block diagram illustrating example components for generating visual output according to some embodiments.

[0088] Figure 2 A portable multifunction device with a touch screen according to some embodiments is shown.

[0089] Figure 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments.

[0090] Figure 4AAn exemplary user interface for an application menu on a portable multifunction device according to some embodiments is shown.

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

[0092] Figure 4C-4H Exemplary tactile output patterns with specific waveforms according to some embodiments are shown.

[0093] Figure 5A A personal electronic device according to some embodiments is shown.

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

[0095] Figure 5C-5D Example components of a personal electronic device with a touch-sensitive display and an intensity sensor are shown according to some embodiments.

[0096] Figure 5E-5H Exemplary components and user interfaces of a personal electronic device according to some embodiments are shown.

[0097] Figure 6 Illustrated are example devices connected via one or more communication channels according to some embodiments.

[0098] Figures 7A-7E An exemplary user interface for initiating and managing file transfers is shown according to some embodiments.

[0099] Figures 8A-8AH An exemplary user interface for initiating and managing transmissions is shown according to some embodiments.

[0100] Figures 9A-9I is a flow chart illustrating a method of initiating and managing transmissions according to some embodiments.

[0101] Figures 10A-10D An exemplary user interface for providing feedback on a message object corresponding to a completed file transfer is shown according to some embodiments.

[0102] Figures 11A-11V An exemplary user interface for providing feedback on a message object corresponding to a completed transmission is shown according to some embodiments.

[0103] Figures 12A-12C is a flow chart illustrating a method of providing feedback on a message object corresponding to a completed transmission according to some embodiments.

[0104] Figures 13A-13D An exemplary user interface for providing a visually distinguishable message object appearance based on a message designation according to some embodiments is shown.

[0105] Figures 14A-14M An exemplary user interface for providing a visually distinguishable message object appearance based on a message designation according to some embodiments is shown.

[0106] Figures 15A-15K is a flowchart illustrating a method for providing a visually distinguishable message object appearance based on a message designation according to some embodiments.

[0107] Figures 16A-16F An exemplary user interface for activating an account for receiving and sending encrypted message transmissions is shown according to some embodiments.

[0108] Figures 17A-17L An exemplary user interface for activating an account for receiving and sending transmissions is shown in accordance with some embodiments.

[0109] Figures 18A-18F is a flow chart illustrating a method of activating an account for receiving and sending transmissions according to some embodiments.

[0110] Figures 19A-19D An exemplary user interface for exchanging a user identification with a different user identification is shown according to some embodiments.

[0111] Figures 20A-20J An exemplary user interface for exchanging accounts used in a transfer is shown according to some embodiments.

[0112] Figures 21A-21D is a flow chart illustrating a method of exchanging accounts used in a transfer, according to some embodiments.

[0113] Figures 22A-22F An exemplary user interface for splitting a resource transfer between two or more resource accounts is shown in accordance with some embodiments.

[0114] Figures 23A-23O An exemplary user interface for splitting a transfer between two or more accounts is shown, according to some embodiments.

[0115] Figures 24A-24C is a flow chart illustrating a method of splitting a transfer between two or more accounts according to some embodiments.

[0116] Figures 25A-25C An exemplary user interface for generating and displaying an attachment transfer history list according to some embodiments is shown.

[0117] Figures 26A-26T An exemplary user interface for generating and displaying a transmission history list is shown in accordance with some embodiments.

[0118] Figures 27A-27E is a flow chart illustrating a method of generating and displaying a transmission history list according to some embodiments.

[0119] Figures 28A-28F An exemplary user interface for voice activation for file transfer is shown according to some embodiments.

[0120] Figures 29A-29S An exemplary user interface for voice activation of transmission is shown according to some embodiments.

[0121] Figures 30A-30D is a flow chart illustrating a method for voice activation of transmissions according to some embodiments.

[0122] Figures 31A-31M An exemplary user interface for user authentication according to some embodiments is shown.

[0123] Figures 32A-32D An exemplary user interface for automatic account onboarding is shown according to some embodiments.

[0124] Figures 33A-33O An exemplary user interface for providing feedback corresponding to operations associated with a transmission is shown in accordance with some embodiments.

[0125] Figures 34A-34D is a flow chart illustrating a method for providing feedback corresponding to an operation associated with a transmission according to some embodiments.

[0126] Figures 35A-35J An exemplary user interface for sending a gift transmission is shown according to some embodiments.

[0127] Figures 36A-36Z An exemplary user interface for sending a gift transmission is shown according to some embodiments.

[0128] Figures 37A-37C is a flow chart illustrating a method for sending a gift transmission according to some embodiments.

[0129] Figures 38A-38F An exemplary user interface for managing gift transfers according to some embodiments is shown.

[0130] Figures 39A-39L An exemplary user interface for managing gift transfers according to some embodiments is shown.

[0131] Figures 40A-40Bis a flow chart illustrating a method for managing gift transmissions according to some embodiments.

[0132] Figures 41A-44D An exemplary user interface for creating and managing group accounts is shown according to some embodiments.

[0133] Figures 42A-42O An exemplary user interface for creating and managing group accounts is shown according to some embodiments.

[0134] Figures 43A-43C is a flow chart illustrating a method for creating and managing group accounts according to some embodiments.

[0135] Figures 44A-44E An exemplary user interface for creating group and non-group accounts is shown according to some embodiments.

[0136] Figures 45A-45U An exemplary user interface for creating group and non-group accounts is shown according to some embodiments.

[0137] Figures 46A-46C is a flow chart illustrating a method for creating group and non-group accounts, according to some embodiments.

[0138] Figures 47A-47H An exemplary user interface for managing active time periods for group accounts is shown, according to some embodiments.

[0139] Figures 48A-48Y An exemplary user interface for managing active time periods for group accounts is shown, according to some embodiments.

[0140] Figures 49A-49D is a flow chart illustrating a method for managing valid time periods for group accounts according to some embodiments.

[0141] Figures 50A-50AG An exemplary user interface for managing balance notifications is shown according to some embodiments.

[0142] Figures 51A-51B is a flow chart illustrating a method for managing balance notifications according to some embodiments. DETAILED DESCRIPTION

[0143] The following description sets forth exemplary methods, parameters, etc. However, it should be recognized that such description is not intended to limit the scope of the present disclosure, but is provided as a description of exemplary embodiments.

[0144] There is a need for electronic devices that provide efficient methods and interfaces for managing peer-to-peer transmissions. For example, there is a need for electronic devices that provide convenient and efficient methods for sending and receiving transmissions using common messaging applications. In another example, there is a need for electronic devices that provide easier management of peer-to-peer transmissions in a secure manner. In another example, there is a need for electronic devices that provide fast and intuitive techniques for viewing and managing transmission history. In another example, there is a need for electronic devices that can accept transmissions with little or no user input. Such techniques can reduce the cognitive burden on users accessing and utilizing peer-to-peer transmissions, thereby increasing productivity. Furthermore, such techniques can reduce processor and battery power that would otherwise be wasted on redundant user input.

[0145] under Figure 1A-1C 、 Figure 2 、 Figure 3 、 Figures 4A-4H 、 Figures 5A-5H A description of example devices for performing techniques for peer-to-peer transmissions is provided. Figure 6 Illustrated are example devices connected via one or more communication channels according to some embodiments. Figures 7A-7E An exemplary user interface for initiating and managing transfer file transfers is shown according to some embodiments. Figures 8A-8AH An exemplary user interface for initiating and managing transmissions is shown according to some embodiments. Figures 9A-9I is a flow chart illustrating a method of initiating and managing transmissions according to some embodiments. Figures 7A-7E and Figures 8A-8AH The user interface in the diagram is used to illustrate the process described below, including Figures 9A-9I in the process. Figures 10A-10D An exemplary user interface for providing feedback on a message object corresponding to a completed file transfer is shown according to some embodiments. Figures 11A-11V An exemplary user interface for providing feedback on a message object corresponding to a completed transmission is shown according to some embodiments. Figures 12A-12C is a flow chart illustrating a method of providing feedback on a message object corresponding to a completed transmission according to some embodiments. Figures 10A-10D and Figures 11A-11V The user interface in the diagram is used to illustrate the process described below, including Figures 12A-12C in the process. Figures 13A-13D An exemplary user interface for providing a visually distinguishable message object appearance based on a message designation according to some embodiments is shown. Figures 14A-14M An exemplary user interface for providing a visually distinguishable message object appearance based on a message designation according to some embodiments is shown. Figures 15A-15Kis a flowchart illustrating a method for providing a visually distinguishable message object appearance based on a message designation according to some embodiments. Figures 13A-13D and Figures 14A-14M The user interface in the diagram is used to illustrate the process described below, including Figures 15A-15K in the process. Figures 16A-16F An exemplary user interface for activating an account for receiving and sending encrypted message transmissions is shown according to some embodiments. Figures 17A-17L An exemplary user interface for activating an account for receiving and sending transmissions is shown in accordance with some embodiments. Figures 18A-18F is a flow chart illustrating a method of activating an account for receiving and sending transmissions according to some embodiments. Figures 16A-16F and Figures 17A-17L The user interface in the diagram is used to illustrate the process described below, including Figures 18A-18F in the process. Figures 19A-19D An exemplary user interface for exchanging a user identification with a different user identification is shown according to some embodiments. Figures 20A-20J An exemplary user interface for exchanging accounts used in a transfer is shown according to some embodiments. Figures 21A-21D is a flow chart illustrating a method of exchanging accounts used in a transfer, according to some embodiments. Figures 19A-19D and Figures 20A-20J The user interface in the diagram is used to illustrate the process described below, including Figures 21A-21D in the process. Figures 22A-22F An exemplary user interface for splitting a resource transfer between two or more resource accounts is shown in accordance with some embodiments. Figures 23A-23O An exemplary user interface for splitting a transfer between two or more accounts is shown, according to some embodiments. Figures 24A-24C is a flow chart illustrating a method of splitting a transfer between two or more accounts according to some embodiments. Figures 22A-22F and Figures 23A-23O The user interface in the diagram is used to illustrate the process described below, including Figures 24A-24C in the process. Figures 25A-25C An exemplary user interface for generating and displaying an attachment transfer history list according to some embodiments is shown. Figures 26A-26T An exemplary user interface for generating and displaying a transmission history list is shown in accordance with some embodiments. Figures 27A-27E is a flow chart illustrating a method of generating and displaying a transmission history list according to some embodiments. Figures 25A-25C and Figures 26A-26T The user interface in the diagram is used to illustrate the process described below, including Figures 27A-27E in the process. Figures 28A-28F An exemplary user interface for voice activation for file transfer is shown according to some embodiments. Figures 29A-29S An exemplary user interface for voice activation of transmission is shown according to some embodiments. Figures 30A-30D is a flow chart illustrating a method for voice activation of transmissions according to some embodiments. Figures 28A-28F and Figures 29A-29S The user interface in the diagram is used to illustrate the process described below, including Figures 30A-30D in the process. Figures 31A-31M An exemplary user interface for user authentication according to some embodiments is shown. Figures 32A-32D An exemplary user interface for automatic account onboarding is shown according to some embodiments. Figures 33A-33O An exemplary user interface for providing feedback corresponding to operations associated with a transmission is shown in accordance with some embodiments. Figures 34A-34D is a flow chart illustrating a method for providing feedback corresponding to an operation associated with a transmission according to some embodiments. Figures 33A-33O The user interface in the diagram is used to illustrate the process described below, including Figures 34A-34D in the process. Figures 35A-35J An exemplary user interface for sending a gift transmission is shown according to some embodiments. Figures 36A-36Z An exemplary user interface for sending a gift transmission is shown according to some embodiments. Figures 37A-37C is a flow chart illustrating a method for sending a gift transmission according to some embodiments. Figures 35A-35J and Figures 36A-36Z The user interface in the diagram is used to illustrate the process described below, including Figures 37A-37C in the process. Figures 38A-38F An exemplary user interface for managing gift transfers according to some embodiments is shown. Figures 39A-39L An exemplary user interface for managing gift transfers according to some embodiments is shown. Figures 40A-40B is a flow chart illustrating a method for managing gift transmissions according to some embodiments. Figures 38A-38F and Figures 39A-39L The user interface in the diagram is used to illustrate the process described below, including Figures 40A-40B in the process. Figures 41A-44D An exemplary user interface for creating and managing group accounts is shown according to some embodiments. Figures 42A-42O An exemplary user interface for creating and managing group accounts is shown according to some embodiments. Figures 43A-43C is a flow chart illustrating a method for creating and managing group accounts according to some embodiments. Figures 41A-41D and Figures 42A-42O The user interface in the diagram is used to illustrate the process described below, including Figures 43A-43C in the process. Figures 44A-44EAn exemplary user interface for creating group and non-group accounts is shown according to some embodiments. Figures 45A-45U An exemplary user interface for creating group and non-group accounts is shown according to some embodiments. Figures 46A-46C is a flow chart illustrating a method for creating group and non-group accounts, according to some embodiments. Figures 44A-44E and Figures 45A-45U The user interface in the diagram is used to illustrate the process described below, including Figures 46A-46C in the process. Figures 47A-47H An exemplary user interface for managing active time periods for group accounts is shown, according to some embodiments. Figures 48A-48Y An exemplary user interface for managing active time periods for group accounts is shown, according to some embodiments. Figures 49A-49D is a flow chart illustrating a method for managing valid time periods for group accounts according to some embodiments. Figures 47A-47H and Figures 48A-48Y The user interface in the diagram is used to illustrate the process described below, including Figures 49A-49D in the process. Figures 50A-50AG An exemplary user interface for managing balance notifications is shown according to some embodiments. Figures 51A-51B is a flow chart illustrating a method for managing balance notifications according to some embodiments. Figures 50A-50AG The user interface in the diagram is used to illustrate the process described below, including Figures 51A-51B in the process.

[0146] Although the following description uses the terms "first," "second," and the like to describe various elements, these elements should not be limited by these terms. These terms are merely used to distinguish one element from another. For example, a first touch may be named a second touch, and similarly, a second touch may be named a first touch, without departing from the scope of the various embodiments described. Both the first touch and the second touch are touches, but they are not the same touch.

[0147] The terms used in the description of the various embodiments described herein are only for the purpose of describing specific embodiments and are not intended to be limiting. As used in the description of the various embodiments described and in the appended claims, the singular forms "a" and "the" are intended to also include plural forms unless the context clearly indicates otherwise. It will also be understood that the terms "and / or" used herein refer to and encompass any and all possible combinations of one or more items in the associated listed items. It will also be understood that the terms "includes," "including," "comprises," and / or "comprising" when used in this specification specify the presence of stated features, integers, steps, operations, elements, and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts, and / or their groupings.

[0148] The term “if” is optionally interpreted to mean “when,” “upon,” or “in response to determining,” or “in response to detecting,” depending on the context. Similarly, the phrase “if it is determined that…” or “if [stated condition or event] is detected” is optionally interpreted to mean “upon determining…” or “in response to determining…” or “upon detecting [stated condition or event]” or “in response to detecting [stated condition or event],” depending on the context.

[0149] Embodiments of electronic devices, user interfaces for such devices, and processes associated with using such devices are described herein. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as a PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the Apple Watch from Apple Inc. (Cupertino, California). iPod and Device. Other portable electronic devices, such as laptops or tablets with touch-sensitive surfaces (e.g., touch screen displays and / or trackpads), may alternatively be used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer with a touch-sensitive surface (e.g., touch screen displays and / or trackpads).

[0150] 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 can optionally include one or more other physical user interface devices, such as a physical keyboard, mouse, and / or joystick.

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

[0152] Various applications executing on the device 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 corresponding information displayed on the device may optionally be adjusted and / or varied for different applications and / or adjusted and / or varied within the respective applications. In this way, the common physical architecture of the device (such as the touch-sensitive surface) may optionally support various applications with a user interface that is intuitive and clear to the user.

[0153] Attention is now turned to embodiments of portable devices having touch-sensitive displays. Figure 1A 1 is a block diagram illustrating a portable multifunction device 100 with a touch-sensitive display system 112 according to some embodiments. Touch-sensitive display 112 is sometimes referred to as a "touch screen" for convenience, and is sometimes referred to as or referred to as a "touch-sensitive display system." Device 100 includes 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 device interface 118, RF circuitry 108, audio circuitry 110, a speaker 111, a microphone 113, a secure element 115, an input / output (I / O) subsystem 106, other input control devices 116, and external ports 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact force sensors 165 for detecting the intensity of contacts on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile output on device 100 (e.g., generating tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0154] As used in this specification and claims, the term "intensity" of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or to a surrogate (surrogate) for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values ​​that includes at least four different values ​​and more typically includes hundreds of different values ​​(e.g., at least 256). The intensity of a contact is optionally 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 touch-sensitive surface are optionally used to measure the force at different points on the touch-sensitive surface. In some implementations, the force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated contact force. Similarly, the pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and / or its change, the capacitance of the touch-sensitive surface near the contact and / or its change, and / or the resistance of the touch-sensitive surface near the contact and / or its change are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some embodiments, the surrogate 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 surrogate measurement). In some embodiments, the surrogate 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 the user input allows the user to access additional device functionality that would otherwise be inaccessible to the user on a smaller device with limited real estate, which is used to display an indication (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons).

[0155] As used in this specification and claims, the term "tactile output" refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of a device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device that will be detected by a user using the user's sense of touch. For example, when a device or a component of the device is in contact with a surface that is touch-sensitive to a user (e.g., a finger, palm, or other part of the user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation that corresponds to a perceived change in a physical characteristic of the device or component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a "press click" or "release click" on a physical actuation button. In some cases, the user will feel a tactile sensation, such as a "press click" or "release click," even when the physical actuation button associated with the touch-sensitive surface that was physically pressed (e.g., displaced) by the user's movement does not move. For another example, even when the smoothness of the touch-sensitive surface does not change, movement of the touch-sensitive surface may optionally be interpreted or sensed by the user as "roughness" of the touch-sensitive surface. Although such interpretation of touch by the user will be limited by the user's individualized sensory perception, 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 a user (e.g., "press click," "release click," "roughness"), unless otherwise stated, the tactile output generated corresponds to a physical displacement of the device or a component thereof that would generate the sensory perception of a typical (or ordinary) user. Providing tactile feedback to the user using tactile output enhances the operability of the device and makes the user-device interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the device), thereby further reducing power usage and extending the battery life of the device by enabling the user to use the device more quickly and efficiently.

[0156] In some embodiments, the tactile output pattern specifies characteristics of the tactile output, such as the amplitude of the tactile output, the shape of the motion waveform of the tactile output, the frequency of the tactile output, and / or the duration of the tactile output.

[0157] When a device (e.g., one or more tactile output generators that generate tactile output via movement of a movable mass) generates tactile output with different tactile output patterns, the tactile output can produce different tactile sensations in a user holding or touching the device. While a user's senses are based on their perception of the tactile output, most users will be able to discern changes in the waveform, frequency, and amplitude of the tactile output generated by the device. Therefore, the waveform, frequency, and amplitude can be adjusted to indicate to the user that different actions have been performed. Thus, tactile output with tactile output patterns designed, selected, and / or arranged to simulate the characteristics (e.g., size, material, weight, stiffness, smoothness, etc.); behavior (e.g., oscillation, displacement, acceleration, rotation, extension, etc.); and / or interaction (e.g., collision, adhesion, repulsion, attraction, friction, etc.) of objects in a given environment (e.g., a user interface including graphical features and objects, a simulated physical environment with virtual boundaries and virtual objects, a real physical environment with physical boundaries and physical objects, and / or any combination of the foregoing) can, in some cases, provide helpful feedback to the user, reducing input errors and improving the user's efficiency in operating the device. In addition, tactile output is optionally generated to correspond to feedback that is unrelated to the simulated physical properties (such as input threshold or object selection). Such tactile output will provide helpful feedback to the user in some cases, which reduces input errors and improves the efficiency of the user's operation of the device.

[0158] In some embodiments, a tactile output with a suitable tactile output pattern acts as a prompt for an event of interest in the user interface or behind the screen in the device. Examples of events of interest include activation of an affordance (e.g., a real or virtual button or toggle switch) provided on the device or in the user interface, the success or failure of a requested operation, reaching or crossing a boundary in the user interface, entering a new state, switching input focus between objects, activating a new mode, reaching or crossing an input threshold, detecting or recognizing a type of input or gesture, and the like. In some embodiments, a tactile output is provided to serve as a warning or prompt for an upcoming event or result that would occur unless a change in direction or interrupt input is detected in a timely manner. Tactile output is also used in other contexts to enrich the user experience, improve the accessibility of the device for users with visual or motor difficulties or other accessibility needs, and / or improve the efficiency and functionality of the user interface and / or device. Optionally, the tactile output is compared with audio input and / or visual user interface changes, which further enhances the user's experience when the user interacts with the user interface and / or device, and facilitates better transmission of information about the state of the user interface and / or device, and reduces input errors and improves the efficiency of the user's operation of the device.

[0159] Figure 4C-4EA set of sample tactile output patterns are provided that can be used, individually or in combination, as is or through one or more transformations (e.g., modulation, amplification, truncation, etc.) to form suitable tactile feedback in various scenarios for various purposes (such as those described above and those described with respect to the user interfaces and methods discussed herein). This example of a control panel for tactile output shows how a set of three waveforms and eight frequencies can be used to generate an array of tactile output patterns. In addition to the tactile output patterns shown in the figure, each of these tactile output patterns can optionally be adjusted in amplitude by changing the gain value of the tactile output pattern, as shown, for example, for Figure 4F-4H 80Hz, FullTap 200Hz, MiniTap 80Hz, MiniTap 200Hz, MicroTap 80Hz, and MicroTap 200Hz, are shown as variations with gains of 1.0, 0.75, 0.5, and 0.25, respectively. Figure 4F-4H As shown, changing the gain of the tactile output pattern changes the amplitude of the pattern without changing the frequency of the pattern or changing the shape of the waveform. In some embodiments, changing the frequency of the tactile output pattern also results in a lower amplitude because some tactile output generators are limited by how much force can be applied to the movable mass, so the higher frequency movement of the mass is constrained to a lower amplitude to ensure that the acceleration required to form the waveform does not require forces outside the operating force range of the tactile output generator (e.g., the peak amplitude of FullTap at 230 Hz, 270 Hz, and 300 Hz is lower than the amplitude of FullTap at 80 Hz, 100 Hz, 125 Hz, and 200 Hz).

[0160] Figure 4C-4H The waveform of the tactile output pattern represents the tactile output pattern relative to the neutral position (e.g., x zero ) versus time, through which the movable mass passes to generate a tactile output having the tactile output pattern. For example, Figure 4C The first set of tactile output patterns shown (eg, the "FullTap" tactile output pattern) each have a waveform that includes oscillations having two complete cycles (eg, oscillations that begin and end at a neutral position and pass through the neutral position three times). Figure 4D The second set of tactile output patterns shown (eg, the "MiniTap" tactile output pattern) each have a waveform that includes an oscillation having one complete cycle (eg, an oscillation that begins and ends at a neutral position and passes through the neutral position once). Figure 4EThe third set of tactile output patterns shown (e.g., the "MicroTap" tactile output pattern) each has a waveform that includes an oscillation having half a complete cycle (e.g., an oscillation that begins and ends at a neutral position and does not pass through the neutral position). The waveforms of the tactile output patterns also include starting and ending buffers that represent gradual acceleration and deceleration of the movable mass at the beginning and end of the tactile output. Figure 4C-4H The exemplary waveforms shown include x and y representing the maximum and minimum extents of movement of the movable mass. min and x max For larger electronic devices with larger movable masses, the minimum and maximum degrees of movement of the mass may be larger or smaller. Figure 4C-4H The embodiment shown in describes the movement of a mass in 1 dimension, but similar principles will also apply to the movement of a movable mass in two or three dimensions.

[0161] like Figure 4C-4E As shown, each tactile output pattern also has a corresponding characteristic frequency, which affects the "pitch" of the tactile sensation felt by the user from the tactile output having that characteristic frequency. For continuous tactile output, the characteristic frequency represents the number of cycles (e.g., cycles per second) that the movable mass of the tactile output generator completes in a given time period. For discrete tactile output, a discrete output signal is generated (e.g., with 0.5, 1, or 2 cycles), and the characteristic frequency value specifies how fast the movable mass needs to move to generate a tactile output having that characteristic frequency. Figure 4C-4H As shown, for each type of tactile output (e.g., defined by a corresponding waveform, such as FullTap, MiniTap, or MicroTap), higher frequency values ​​correspond to faster movement of the movable mass and, therefore, generally speaking, to a shorter tactile output completion time (e.g., including the time required to complete the number of cycles of the discrete tactile output plus the start and end buffer times). For example, a FullTap with a characteristic frequency of 80 Hz takes longer to complete (e.g., in seconds) than a FullTap with a characteristic frequency of 100 Hz. Figure 4C, 35.4ms vs. 28.3ms). In addition, for a given frequency, a tactile output with more cycles in its waveform at the corresponding frequency takes longer to complete than a tactile output with fewer cycles in its waveform at the same corresponding frequency. For example, a 150Hz FullTap takes longer to complete than a 150Hz MiniTap (e.g., 19.4ms vs. 12.8ms), and a 150Hz MiniTap takes longer to complete than a 150Hz MicroTap (e.g., 12.8ms vs. 9.4ms). However, for tactile output modes with different frequencies, this rule may not apply (e.g., a tactile output with more cycles but a higher frequency may take a shorter amount of time to complete than a tactile output with fewer cycles but a lower frequency, and vice versa). For example, at 300Hz, FullTap takes the same amount of time as MiniTap (e.g., 9.9ms).

[0162] like Figure 4C-4E As shown, the tactile output pattern also has a characteristic amplitude, which affects the amount of energy contained in the tactile signal, or the "intensity" of the tactile sensation that the user can feel through the tactile output having the characteristic amplitude. In some embodiments, the characteristic amplitude of the tactile output pattern refers to the absolute value or normalized value representing the maximum displacement of the movable mass relative to the neutral position when the tactile output is generated. In some embodiments, the characteristic amplitude of the tactile output pattern can be adjusted according to various conditions (e.g., customized based on user interface context and behavior) and / or preconfigured metrics (e.g., input-based metrics, and / or user interface-based metrics), such as by a fixed or dynamically determined gain factor (e.g., a value between 0 and 1). In some embodiments, an input-based metric (e.g., an intensity change metric or an input speed metric) measures a characteristic of the input during the period that triggers the generation of the tactile output (e.g., the rate of change of the characteristic intensity of the contact in a press input or the rate of movement of the contact on the touch-sensitive surface). In some embodiments, a user interface-based metric (e.g., a boundary-crossing velocity metric) measures a characteristic of a user interface element (e.g., the speed at which the element moves across a hidden or visible boundary in the user interface) during a user interface change that triggers generation of a tactile output. In some embodiments, a characteristic amplitude of the tactile output pattern can be "envelope" modulated, and peaks of adjacent cycles can have different amplitudes, where one of the waveforms shown above is further modified by multiplying by an envelope parameter that changes over time (e.g., from 0 to 1) to gradually adjust the amplitude of a portion of the tactile output over time as the tactile output is generated.

[0163] Although Figure 4C-4EWhile specific frequencies, amplitudes, and waveforms are shown in the sample tactile output patterns for illustrative purposes, tactile output patterns with other frequencies, amplitudes, and waveforms may be used for similar purposes. For example, a waveform with between 0.5 and 4 cycles may be used. Other frequencies in the 60 Hz-400 Hz range may also be used.

[0164] It should be understood that device 100 is merely one example of a portable multifunction device and that device 100 may optionally have more or fewer components than shown, may optionally combine two or more components, or may optionally have a different configuration or arrangement of the components. Figure 1A The various components shown in the EMBODIMENTS 100 are implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application specific integrated circuits.

[0165] Memory 102 optionally includes high-speed random access memory and optionally includes 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 optionally controls access to memory 102 by other components of device 100.

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

[0167] RF (radio frequency) circuitry 108 receives and transmits RF signals, also known as electromagnetic signals. RF circuitry 108 converts electrical signals into / from electromagnetic signals and communicates with a communication network and other communication devices via the electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a codec chipset, a subscriber identity module (SIM) card, memory, and the like. RF circuitry 108 optionally communicates with networks and other devices via wireless communications, such as the Internet (also known as the World Wide Web (WWW)), an intranet, and / or a wireless network (such as a cellular telephone network, a wireless local area network (LAN), and / or a metropolitan area network (MAN)). RF circuitry 108 optionally includes well-known circuitry for detecting near-field communication (NFC) fields, such as by a short-range communication radio component. The 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, Data Only (EV-DO), HSPA, HSPA+, Dual Cell HSPA (DC-HSPDA), Long Term Evolution (LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11n). 802.11ac), Voice over Internet Protocol (VoIP), Wi-MAX, email protocols (e.g., Internet Message 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 Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.

[0168] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between the user and the device 100. The audio circuit 110 receives audio data from the peripheral device interface 118, converts the audio data into electrical signals, and transmits the electrical signals to the speaker 111. The speaker 111 converts the electrical signals into sound waves audible to humans. The audio circuit 110 also receives electrical signals converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signals into audio data and transmits the audio data to the peripheral device interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to the memory 102 and / or the RF circuit 108 by the peripheral device interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., Figure 2 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 output (e.g., a single or dual-ear headset) and input (e.g., a microphone).

[0169] A secure element (e.g., 115) is a hardware component (e.g., a secure microcontroller chip) configured to securely store data or algorithms so that the device cannot access the securely stored data without appropriate authentication information from the user of the device. Storing securely stored data in a secure element separate from other storage devices on the device prevents access to the securely stored data, even if other storage locations on the device are compromised (e.g., by malicious code or other attempts to misappropriate information stored on the device). In some examples, the secure element provides (or issues) payment information (e.g., an account number and / or a transaction-specific dynamic security code). In some examples, the secure element provides (or issues) payment information in response to receiving authorization, such as user authentication (e.g., fingerprint authentication; password authentication; detecting a double press of a hardware button while the device is in an unlocked state, and optionally while the device has been continuously on the user's wrist since the device was unlocked by providing authentication credentials to the device, wherein the continued presence of the device on the user's wrist is determined by periodically checking that the device is in contact with the user's skin). For example, the device detects a fingerprint at the device's fingerprint sensor (e.g., a fingerprint sensor integrated into a button). The device determines whether the fingerprint matches the registered fingerprint. Based on the determination that the fingerprint matches the registered fingerprint, the secure element provides (or releases) the payment information. Based on the determination that the fingerprint does not match the registered fingerprint, the secure element forgoes providing (or releasing) the payment information.

[0170] Additional details regarding security elements and related technologies are described in the following patent applications: U.S. patent application serial number 61 / 912,727, entitled “PROVISIONING AND AUTHENTICATING CREDENTIALS ON AN ELECTRONIC DEVICE,” filed on December 6, 2013; U.S. patent application serial number 62 / 004,182, entitled “ONLINE PAYMENTS USING A SECURE ELEMENT OF AN ELECTRONIC DEVICE,” filed on May 28, 2014; U.S. patent application serial number 61 / 899,737, entitled “USING BIOAUTHENTICATION IN NEAR-FIELD-COMMUNICATION TRANSACTIONS,” filed on November 4, 2013; and U.S. patent application serial number 61 / 899,737, entitled “GENERATING TRANSACTION No. 61 / 905,035, filed May 29, 2014, entitled “METHODS FOR MANAGING PAYMENT APPLETS ON A SECURE ELEMENT TO CONDUCT MOBILE PAYMENT TRANSACTIONS”; U.S. patent application serial number 62 / 004,837, filed May 29, 2014, entitled “METHODS FOR USING A RANDOMAUTHORIZATION NUMBER TO PROVIDE ENHANCED SECURITY FOR A SECURE ELEMENT”; and U.S. patent application serial number 62 / 004,832, filed May 29, 2014, entitled “USER DEVICE SECURE PARTICIPATION IN TRANSACTIONS VIA LOCAL SECURE ELEMENT DETECTION OF MECHANICAL INPUT"; these applications are hereby incorporated by reference in their entirety.

[0171] The I / O subsystem 106 couples input / output peripherals on the device 100, such as the touch screen 112 and other input control devices 116, to a peripherals interface 118. The I / O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, an intensity sensor controller 159, a tactile feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive / send electrical signals from / to other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slide switches, joysticks, click wheels, etc. In some alternative embodiments, the input controllers 160 are optionally coupled to any (or none) of the following: a keyboard, an infrared port, a USB port, and a pointing device such as a mouse. One or more buttons (e.g., Figure 2 208) optionally includes an increase / decrease button for volume control of the speaker 111 and / or microphone 113. One or more buttons optionally include a push button (e.g., Figure 2 206 in ).

[0172] A quick press of the push button optionally releases the lock on the touch screen 112 or optionally initiates a process of unlocking the device using gestures on the touch screen, as described in U.S. patent application Ser. No. 11 / 322,549, filed Dec. 23, 2005, entitled "Unlocking a Device by Performing Gestures on an Unlock Image," (i.e., U.S. Patent No. 7,657,849), which is hereby incorporated by reference in its entirety. A long press of the push button (e.g., 206) optionally turns the device 100 on or off. The functions of one or more buttons are optionally user-customizable. The touch screen 112 is used to implement virtual or soft buttons and one or more soft keyboards.

[0173] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives electrical signals from the touch screen 112 and / or sends electrical signals to the touch screen 112. The touch screen 112 displays visual output to the user. The visual output may optionally include graphics, text, icons, videos, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output may optionally correspond to user interface objects.

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

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

[0176] The touch-sensitive display in some embodiments of the touch screen 112 is optionally similar to the multi-touch-sensitive trackpad 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 hereby incorporated by reference in its entirety. However, the touch screen 112 displays visual output from the device 100, while a touch-sensitive trackpad does not provide visual output.

[0177] In some embodiments, the touch-sensitive display of the touch screen 112 is as described in the following patent applications: (1) U.S. patent application No. 11 / 381,313, filed on May 2, 2006, entitled “Multipoint Touch Surface Controller”; (2) U.S. patent application No. 10 / 840,862, filed on May 6, 2004, entitled “Multipoint Touchscreen”; (3) U.S. patent application No. 10 / 903,964, filed on July 30, 2004, entitled “Gestures For Touch Sensitive Input Devices”; (4) U.S. patent application No. 11 / 048,264, filed on January 31, 2005, entitled “Gestures For Touch Sensitive Input Devices”; (5) U.S. patent application No. 11 / 050,264, filed on January 18, 2005, entitled “Mode-Based Graphical User Interfaces For Touch Sensitive and (9) U.S. patent application No. 11 / 367,749, filed on March 3, 2006, entitled “Multi-Functional Hand-Held Device.” All of these applications are hereby incorporated by reference in their entirety.

[0178] The touch screen 112 optionally has a video resolution exceeding 100 dpi. In some embodiments, the touch screen has a video resolution of about 160 dpi. The user optionally uses any suitable object or appendage, such as a stylus, a finger, etc., to contact the touch screen 112. In some embodiments, the user interface is designed to work primarily through finger-based contacts and gestures, which may not be as precise as stylus-based input due to the larger contact area of ​​a finger on the touch screen. In some embodiments, the device converts rough finger-based input into precise pointer / cursor positions or commands for performing the user's desired action.

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

[0180] Device 100 also includes a power system 162 for powering the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, power fault detection circuitry, 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 a portable device.

[0181] Device 100 optionally also includes one or more optical sensors 164 . Figure 1AAn optical sensor is shown coupled to the 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 from the environment projected through one or more lenses and converts the light into data representing an image. In conjunction with the imaging module 143 (also called 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 the touch screen display 112 on the front of the device, enabling the touch screen display to be used as a viewfinder for still and / or video image acquisition. In some embodiments, the optical sensor is located on the front of the device, allowing the user to optionally capture an image of the user for video conferencing while viewing other video conference participants on the touch screen display. In some embodiments, the position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and sensor in the device housing), allowing a single optical sensor 164 to be used with the touch screen display for both video conferencing and still and / or video image acquisition.

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

[0183] Device 100 optionally also includes one or more proximity sensors 166 . Figure 1AA proximity sensor 166 is shown coupled to the peripherals interface 118. Alternatively, the proximity sensor 166 is optionally coupled to the input controller 160 in the I / O subsystem 106. The proximity sensor 166 is optionally implemented as described in the following U.S. patent applications: No. 11 / 241,839, entitled “Proximity Detector In Handheld Device”; No. 11 / 240,788, entitled “Proximity Detector In Handheld Device”; No. 11 / 620,702, entitled “Using Ambient Light Sensor To Augment Proximity Sensor Output”; No. 11 / 586,862, entitled “Automated Response To And Sensing Of User Activity In Portable Devices”; and No. 11 / 638,251, entitled “Methods And Systems For Automatic Configuration Of Peripherals,” which are hereby incorporated by reference in their entireties. In some embodiments, when the multifunction device is placed near the user's ear (e.g., when the user is on a phone call), the proximity sensor turns off and disables the touch screen 112.

[0184] Device 100 optionally also includes one or more tactile output generators 167 . Figure 1AA tactile output generator is shown coupled to a tactile feedback controller 161 in the I / O subsystem 106. The tactile output generator 167 optionally includes one or more electroacoustic devices, such as a speaker or other audio component; and / or an electromechanical device that converts energy into linear motion, such as a motor, solenoid, electroactive polymer, piezoelectric actuator, electrostatic actuator, or other tactile output generating component (e.g., a component that converts an electrical signal into a tactile output on the device). The contact force sensor 165 receives tactile feedback generation instructions from the tactile feedback module 133 and generates tactile output on the device 100 that can be felt by the user of the device 100. In some embodiments, at least one tactile output generator is arranged in parallel or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112) and optionally generates tactile output by moving the touch-sensitive surface vertically (e.g., inward / outward toward the surface of the device 100) or laterally (e.g., back and forth in the same plane as the surface of the device 100). In some embodiments, at least one tactile output generator sensor is located on the back of the device 100, opposite the touch screen display 112 located on the front of the device 100.

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

[0186] 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 (or instruction set) 136. In addition, in some embodiments, memory 102 ( Figure 1A ) or 370( Figure 3 ) storage device / global internal state 157, such as Figure 1A and Figure 3 . The device / global internal state 157 includes one or more of the following: an active application state, which indicates which applications, if any, are currently active; a display state, which indicates what applications, views, or other information occupy various areas of the touch screen display 112; a sensor state, which includes information obtained from the device's various sensors and input control devices 116; and position information regarding the device's position and / or posture.

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

[0188] The communication module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by the RF circuit 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) are suitable for coupling directly to other devices or indirectly through a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external ports are connected to (trademark of Apple Inc.) devices.

[0189] The contact / motion module 130 optionally detects contact with the touch screen 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a trackpad 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 contact has occurred (e.g., detecting a finger down event), determining the strength of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there has been movement of the contact and tracking the movement on the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining whether the contact has ceased (e.g., detecting a finger up event or contact break). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of a 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 sequence of contact data. These operations optionally apply to a single point of contact (e.g., a single-finger contact) or multiple points of contact simultaneously (e.g., "multi-touch" / multiple-finger contact). In some embodiments, the contact / motion module 130 and display controller 156 detect contact on the touchpad.

[0190] In some embodiments, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether a user has "clicked" an icon). In some embodiments, at least a subset of the intensity thresholds are determined based on software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator and can be adjusted without changing the physical hardware of the device 100). For example, a mouse "click" threshold for a touchpad or touchscreen can be set to any one of a large range of predefined thresholds without changing the touchpad or touchscreen display hardware. In addition, in some embodiments, a software setting is provided to the user of the device for adjusting one or more intensity thresholds in a set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by utilizing a system-level click on an "intensity" parameter to adjust multiple intensity thresholds at once).

[0191] The contact / motion module 130 optionally detects gesture input from the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and / or intensities of the detected contacts). Thus, gestures are optionally detected by detecting specific contact patterns. For example, detecting a finger tap gesture includes detecting a finger press event and then detecting a finger lift (lift-off) event at the same location (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 the touch-sensitive surface includes detecting a finger press event, then detecting one or more finger drag events, and then detecting a finger lift (lift-off) event.

[0192] The graphics module 132 includes various known software components for rendering and displaying graphics on the touch screen 112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphics" includes any object that can be displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.

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

[0194] Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator 167 to produce tactile output at one or more locations on device 100 in response to user interaction with device 100 .

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

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

[0197] The application 136 may optionally include the following modules (or instruction sets) or a subset or superset thereof:

[0198] Contacts module 137 (sometimes called address book or contact list);

[0199] Telephone module 138;

[0200] Video conferencing module 139;

[0201] Email client module 140;

[0202] Instant messaging (IM) module 141;

[0203] Fitness support module 142;

[0204] A camera module 143 for still and / or video images;

[0205] Image management module 144;

[0206] Video player module;

[0207] Music player module;

[0208] Browser module 147;

[0209] Calendar module 148;

[0210] Widget module 149, which optionally includes one or more of the following: weather widget 149-1, stock widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, and other widgets acquired by the user, and user-created widgets 149-6;

[0211] A widget creator module 150 for forming user-created widgets 149-6;

[0212] Search module 151;

[0213] Video and music player module 152, which combines the video player module and the music player module;

[0214] Notepad module 153;

[0215] Map module 154; and / or

[0216] Online video module 155.

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

[0218] In combination with the touch screen 112, display controller 156, touch / motion module 130, graphics module 132 and text input module 134, the contacts module 137 is optionally used to manage an address book or contact list (for example, stored in the application internal state 192 of the contacts module 137 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 telephone 138, video conferencing module 139, email 140 or IM 141; and so on.

[0219] In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, phone module 138 is optionally used to enter a character sequence corresponding to a phone number, access one or more phone numbers in contacts module 137, modify an entered phone number, dial the corresponding phone number, conduct a conversation, and disconnect or hang up when the conversation is complete. As described above, wireless communication may optionally use any of a variety of communication standards, protocols, and technologies.

[0220] In combination with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the optical sensor 164, the optical sensor controller 158, the contact / motion module 130, the graphics module 132, the text input module 134, the contact module 137 and the telephone module 138, the video conferencing module 139 includes executable instructions for initiating, conducting and terminating a video conference between a user and one or more other participants in accordance with user instructions.

[0221] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / 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 instructions. In conjunction with image management module 144, email client module 140 makes it very easy to create and send emails with still images or video images captured by camera module 143.

[0222] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134, the instant messaging module 141 includes executable instructions for entering a character sequence corresponding to an instant message, modifying previously entered characters, transmitting the corresponding instant message (e.g., using the Short Message Service (SMS) or Multimedia Messaging Service (MMS) protocol for phone-based instant messaging or using XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported in MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both phone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0223] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154, and the music player module, the fitness support module 142 includes executable instructions for creating a workout (e.g., with time, distance, and / or calorie burn goals); communicating with fitness sensors (sports equipment); receiving fitness sensor data; calibrating sensors for monitoring fitness; selecting and playing music for a workout; and displaying, storing, and transmitting fitness data.

[0224] In combination with the touch screen 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 the following operations: capturing still images or videos (including video streams) and storing them in the memory 102, modifying the characteristics of the still images or videos, or deleting the still images or videos from the memory 102.

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

[0226] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132 and the text input module 134, the browser module 147 includes executable instructions for browsing the Internet in accordance with user instructions, including searching for, linking to, receiving and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.

[0227] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the email client module 140 and the browser module 147, the calendar module 148 includes executable instructions for creating, displaying, modifying and storing a calendar and data associated with the calendar (e.g., calendar entries, to-do items, etc.) in accordance with user instructions.

[0228] In conjunction with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, the desktop widget module 149 is a mini-application that is optionally downloaded and used by the user (e.g., the weather desktop widget 149-1, the stock desktop widget 149-2, the calculator desktop widget 149-3, the alarm desktop widget 149-4, and the dictionary desktop widget 149-5) or a mini-application created by the user (e.g., the user-created desktop widget 149-6). In some embodiments, the desktop widget includes HTML (Hypertext Markup Language) files, CSS (Cascading Style Sheets) files, and JavaScript files. In some embodiments, the desktop widget includes XML (Extensible Markup Language) files and JavaScript files (e.g., the Yahoo! desktop widget).

[0229] In combination with the RF circuit 108, touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134 and browser module 147, the desktop widget creator module 150 is optionally used by a user to create a desktop widget (e.g., converting a user-specified portion of a web page into a desktop widget).

[0230] In combination with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132 and text input module 134, the search module 151 includes executable instructions for 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) in accordance with user instructions.

[0231] In conjunction with touch screen 112, display controller 156, contact / 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 that allow a user 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 touch screen 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 (trademark of Apple Inc.).

[0232] In conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the notepad module 153 includes executable instructions for creating and managing notes, to-do lists, etc. according to user instructions.

[0233] In combination with the RF circuitry 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, and the browser module 147, the map module 154 is optionally used to receive, display, modify, and store maps and data associated with the maps (e.g., driving directions, data relating to stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.

[0234] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, and browser module 147, online video module 155 includes instructions for allowing a user to access, browse, receive (e.g., by streaming and / or downloading), play back (e.g., on the touch screen or on an external display connected via external port 124), send an email with a link to a particular online video, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, instant messaging module 141 is used instead of email client module 140 to send a link to a particular online video. Additional descriptions of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed on 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 on December 31, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” the contents of which are hereby incorporated by reference in their entirety.

[0235] Each of the modules and applications described above corresponds to an executable instruction set for performing one or more of the functions described above and the methods described in this patent application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) do not have to be implemented as separate software programs, processes, or modules, and thus various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. For example, a video player module is optionally combined with a music player module into a single module (e.g., Figure 1A In some embodiments, the memory 102 optionally stores a subset of the above modules and data structures. In addition, the memory 102 optionally stores additional modules and data structures not described above.

[0236] In some embodiments, device 100 is a device where operation of a predefined set of functions on the device is performed exclusively through a touch screen and / or a touchpad. By using a touch screen and / or a touchpad as the primary input control device for operating device 100, the number of physical input control devices (e.g., push buttons, dials, etc.) on device 100 is optionally reduced.

[0237] A predefined set of functions that are uniquely performed through the touch screen and / or trackpad optionally includes navigation between user interfaces. In some embodiments, the trackpad, when touched by the user, navigates the device 100 from any user interface displayed on the device 100 to a main menu, home menu, or root menu. In such embodiments, the trackpad is used to implement a "menu button." In some other embodiments, the menu button is a physical push button or other physical input control device, rather than a trackpad.

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

[0239] Event classifier 170 receives event information and determines the application 136-1 and the application view 191 of application 136-1 to which the event information is to be delivered. Event classifier 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, application 136-1 includes an application internal state 192 that 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 is to be delivered.

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

[0241] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user touch on touch-sensitive display 112 as part of a multi-touch gesture). Peripherals 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 circuit 110). The information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.

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

[0243] In some embodiments, the event classifier 170 also includes a hit view determination module 172 and / or an active event identifier determination module 173.

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

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

[0246] Hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy where 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 that form an event or potential event) occurs. Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.

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

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

[0249] 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 standalone module or part of another module stored in memory 102, such as contact / motion module 130.

[0250] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events that occur 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 multiple event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such as a user interface toolkit (not shown) or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, 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 handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update the application's internal state 192. Alternatively, one or more of the 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.

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

[0252] The event receiver 182 receives event information from the event classifier 170. The event information includes information about sub-events such as touches or touch movements. 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 the movement of a touch, the event information optionally also includes the rate 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 landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device posture).

[0253] The event comparator 184 compares the event information with a predefined event or sub-event definition 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, the event comparator 184 includes an event definition 186. The event definition 186 includes the definition of an event (e.g., a predefined sequence of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, the sub-events in event (187) include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition of event 1 (187-1) is 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 (touch end) of a predetermined duration, a second touch (touch start) of a predetermined duration on the displayed object, and a second lift-off (touch end) of a predetermined duration. In another example, the definition of event 2 (187-2) is a drag on a displayed object. For example, dragging includes a touch (or contact) of a predetermined duration on a displayed object, movement of the touch on the touch-sensitive display 112, and lifting of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.

[0254] In some embodiments, event definition 187 includes definitions of events for corresponding user interface objects. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with a 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 an event handler that is associated with the sub-event and the object that triggered the hit test.

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

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

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

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

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

[0260] In some embodiments, 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 embodiments, 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 location of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on a touch-sensitive display.

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

[0262] Figure 1C is a block diagram illustrating a tactile output module according to some embodiments. In some embodiments, the I / O subsystem 106 (e.g., the tactile feedback controller 161 ( Figure 1A ) and / or other input controller 160 ( Figure 1A ))include Figure 1C At least some of the exemplary components shown. In some embodiments, the peripheral device interface 118 includes Figure 1C At least some of the example components shown.

[0263] In some embodiments, the tactile output module includes a tactile feedback module 133. In some embodiments, the tactile feedback module 133 aggregates and combines tactile outputs from software applications on the electronic device for user interface feedback (e.g., feedback in response to user input corresponding to the displayed user interface and prompts and other notifications indicating the execution of operations or the occurrence of events in the user interface of the electronic device). The tactile feedback module 133 includes one or more of a waveform module 123 (for providing waveforms for generating tactile output), a mixer 125 (for mixing waveforms, such as waveforms in different channels), a compressor 127 (for reducing or compressing the dynamic range of the waveform), a low-pass filter 129 (for filtering out high-frequency signal components in the waveform), and a thermal controller 131 (for adjusting the waveform according to thermal conditions). In some embodiments, the tactile feedback module 133 is included in a tactile feedback controller 161 ( Figure 1AIn some embodiments, a separate unit of the tactile feedback module 133 (or a separate specific implementation of the tactile feedback module 133) is also included in the audio controller (e.g., audio circuit 110, Figure 1A ) and used to generate an audio signal. In some embodiments, a single tactile feedback module 133 is used to generate an audio signal and to generate a waveform for a tactile output.

[0264] In some embodiments, the haptic feedback module 133 also includes a trigger module 121 (e.g., a software application, operating system, or other software module that determines that a tactile output is to be generated and initiates a process for generating the corresponding tactile output). In some embodiments, the trigger module 121 generates a trigger signal for initiating (e.g., by the waveform module 123) the generation of a waveform. For example, the trigger module 121 generates the trigger signal based on a preset timing standard. In some embodiments, the trigger module 121 receives the trigger signal from outside the haptic feedback module 133 (e.g., in some embodiments, the haptic feedback module 133 receives the trigger signal from a hardware input processing module 146 located outside the haptic feedback module 133) and relays the trigger signal to other components within the haptic feedback module 133 (e.g., the waveform module 123) or a software application that triggers an operation (e.g., utilizing the trigger module 121) based on activation of a user interface element (e.g., an application icon or enable representation within an application) or a hardware input device (e.g., a primary button or an intensity-sensitive input interface, such as an intensity-sensitive touch screen). In some embodiments, the trigger module 121 also (e.g., from the haptic feedback module 133, Figure 1A and Figure 3 ) receives the tactile feedback generation instruction. In some embodiments, the trigger module 121 responds to the tactile feedback module 133 (or the trigger module 121 in the tactile feedback module 133) (e.g., from the tactile feedback module 133, Figure 1A and Figure 3 ) receives tactile feedback instructions and generates a trigger signal.

[0265] Waveform module 123 receives as input a trigger signal (e.g., from trigger module 121) and, in response to receiving the trigger signal, provides a waveform for generating one or more tactile outputs (e.g., a waveform selected from a set of predefined waveforms assigned for use by waveform module 123, such as those described below with reference to Figure 4C-4D waveforms described in more detail).

[0266] The mixer 125 receives waveforms as input (e.g., from the waveform module 123) and mixes the waveforms together. For example, when the mixer 125 receives two or more waveforms (e.g., a first waveform in a first channel and a second waveform in a second channel that at least partially overlaps with the first waveform), the mixer 125 outputs a combined waveform corresponding to the sum of the two or more waveforms. In some embodiments, the mixer 125 also modifies one or more of the two or more waveforms to emphasize a particular waveform relative to the rest of the two or more waveforms (e.g., by increasing the scale of the particular waveform and / or reducing the scale of the other waveforms in the waveforms). In some cases, the mixer 125 selects one or more waveforms to remove from the combined waveform (e.g., when waveforms from more than three sources have been requested to be output simultaneously by the tactile output generator 167, the waveform from the oldest source is discarded).

[0267] Mixer 127 receives waveforms (e.g., combined waveforms from mixer 125) as input and modifies these waveforms. In some embodiments, compressor 127 reduces these waveforms (e.g., based on the tactile output generator 167 ( Figure 1A ) or 357( Figure 3 ) physical specifications of the waveforms) such that the tactile output corresponding to those waveforms is reduced. In some embodiments, compressor 127 limits the waveforms, such as by imposing a predefined maximum amplitude on the waveforms. For example, compressor 127 reduces the amplitude of the portions of the waveforms that exceed a predefined amplitude threshold, while maintaining the amplitude of the portions of the waveforms that do not exceed the predefined amplitude threshold. In some embodiments, compressor 127 reduces the dynamic range of the waveforms. In some embodiments, compressor 127 dynamically reduces the dynamic range of the waveforms such that the combined waveform remains within the performance specifications of tactile output generator 167 (e.g., force and / or movable mass displacement limits).

[0268] Low-pass filter 129 receives a waveform (e.g., a compressed waveform from compressor 127) as input and filters (e.g., smoothes) the waveform (e.g., removes or reduces high-frequency signal components in the waveform). For example, in some cases, compressor 127 may include extraneous signals (e.g., high-frequency signal components) in the compressed waveform that interfere with generating tactile output and / or exceed the performance specifications of tactile output generator 167 when generating tactile output based on the compressed waveform. Low-pass filter 129 reduces or removes such extraneous signals in the waveform.

[0269] Thermal controller 131 receives a waveform (e.g., a filtered waveform from low-pass filter 129) as input and adjusts the waveform based on the thermal condition of device 100 (e.g., based on an internal temperature detected within device 100, such as the temperature of haptic feedback controller 161, and / or an external temperature detected by device 100). For example, in some cases, the output of haptic feedback controller 161 varies based on temperature (e.g., in response to receiving the same waveform, haptic feedback controller 161 generates a first tactile output when haptic feedback controller 161 is at a first temperature and generates a second tactile output when haptic feedback controller 161 is at a second temperature different from the first temperature). For example, the magnitude (or amplitude) of the tactile output may vary based on temperature. To reduce the effects of temperature changes, the waveform is modified (e.g., the amplitude of the waveform is increased or decreased based on temperature).

[0270] In some embodiments, the tactile feedback module 133 (e.g., trigger module 121) is coupled to the hardware input processing module 146. In some embodiments, Figure 1A The one or more other input controllers 160 in the embodiment include a hardware input processing module 146. In some embodiments, the hardware input processing module 146 receives input from a hardware input device 145 (e.g. Figure 1A In some embodiments, the hardware input device 145 is any input device described herein, such as a touch-sensitive display system 112 ( Figure 1A )、Keyboard / Mouse 350( Figure 3 )、Touchpad 355( Figure 3 ), other input or control devices 116 ( Figure 1A ), or a strength-sensitive primary button. In some embodiments, the hardware input device 145 consists of a strength-sensitive primary button rather than a touch-sensitive display system 112 ( Figure 1A )、Keyboard / Mouse 350( Figure 3 ) or touchpad 355( Figure 3 ). In some embodiments, in response to input from a hardware input device 145 (e.g., an intensity-sensitive primary button or a touch screen), the hardware input processing module 146 provides one or more trigger signals to the tactile feedback module 133 to indicate that a user input that meets predefined input criteria has been detected, such as an input corresponding to a primary button "click" (e.g., a "press click" or a "release click"). In some embodiments, the tactile feedback module 133 provides a waveform corresponding to a primary button "click" in response to the input corresponding to the primary button "click", thereby simulating the tactile feedback of pressing a physical primary button.

[0271] In some embodiments, the tactile output module includes a tactile feedback controller 161 (e.g. Figure 1A 145 ). In some embodiments, the tactile feedback controller 161 is coupled to a plurality of tactile output generators and selects one or more tactile output generators from the plurality of tactile output generators and sends a waveform to the selected one or more tactile output generators for generating a tactile output. In some embodiments, the tactile feedback controller 161 coordinates a tactile output request corresponding to activation of the hardware input device 145 and a tactile output request corresponding to a software event (e.g., a tactile output request from the tactile feedback module 133), and modifies one or more of the two or more waveforms to emphasize a particular waveform relative to the remaining waveforms of the two or more waveforms (e.g., by increasing the scale of the particular waveform and / or reducing the scale of the remaining waveforms of the waveforms to prioritize the tactile output corresponding to the activation of the hardware input device 145 over the tactile output corresponding to the software event).

[0272] In some embodiments, as Figure 1C As shown, the output of the tactile feedback controller 161 is coupled to the audio circuit of the device 100 (eg, the audio circuit 110, Figure 1A ) and provides the audio signal to the audio circuitry of device 100. In some embodiments, haptic feedback controller 161 provides both a waveform for generating a tactile output and an audio signal for providing an audio output along with generating the tactile output. In some embodiments, haptic feedback controller 161 modifies the audio signal and / or the waveform (for generating the tactile output) so that the audio output and the tactile output are synchronized (e.g., by delaying the audio signal and / or the waveform). In some embodiments, haptic feedback controller 161 includes a digital-to-analog converter for converting the digital waveform into an analog signal, which is received by amplifier 163 and / or tactile output generator 167.

[0273] In some embodiments, the tactile output module includes an amplifier 163. In some embodiments, the amplifier 163 receives a waveform (e.g., from the tactile feedback controller 161), amplifies the waveform, and then sends the amplified waveform to the tactile output generator 167 (e.g., the tactile output generator 167 ( Figure 1A ) or 357( Figure 3)). For example, amplifier 163 amplifies the received waveform to a signal level that meets the physical specifications of tactile output generator 167 (e.g., to a voltage and / or current required by tactile output generator 167 to generate a tactile output such that the signal sent to tactile output generator 167 generates a tactile output corresponding to the waveform received from haptic feedback controller 161) and sends the amplified waveform to tactile output generator 167. In response, tactile output generator 167 generates a tactile output (e.g., by displacing the movable mass back and forth in one or more dimensions relative to the neutral position of the movable mass).

[0274] In some embodiments, the tactile output module includes a sensor 169 coupled to the tactile output generator 167. The sensor 169 detects the state or state change (e.g., mechanical position, physical displacement, and / or movement) of the tactile output generator 167 or one or more components of the tactile output generator 167 (e.g., one or more moving components for generating a tactile output, such as a membrane). In some embodiments, the sensor 169 is a magnetic field sensor (e.g., a Hall effect sensor) or other displacement and / or motion sensor. In some embodiments, the sensor 169 provides information (e.g., the position, displacement, and / or movement of one or more components in the tactile output generator 167) to the tactile feedback controller 161, and based on the information about the state of the tactile output generator 167 provided by the sensor 169, the tactile feedback controller 161 adjusts the waveform output from the tactile feedback controller 161 (e.g., the waveform optionally sent to the tactile output generator 167 via the amplifier 163).

[0275] It should be understood that the above discussion of event handling for user touches on a touch-sensitive display also applies to other forms of user input utilizing input devices to operate the multifunction device 100, and not all user input is initiated on a touch screen. For example, mouse movement and mouse button presses, optionally in conjunction with single or multiple keyboard presses or holddowns; contact movement on a trackpad, such as taps, drags, scrolls, etc.; stylus input; movement of the device; spoken commands; detected eye movement; biometric input; and / or any combination thereof, may optionally be used as input corresponding to a sub-event defining an event to be recognized.

[0276] Figure 2A portable multifunction device 100 with a touch screen 112 is shown according to some embodiments. The touch screen 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 of the graphics by, for example, making gestures on the graphics 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 the one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (from left to right, from right to left, up and / or down), and / or rolling of a finger that has made contact with the device 100 (from right to left, from left to right, up and / or down). In some implementations or in some cases, inadvertent contact with a graphic does not select the graphic. For example, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.

[0277] The device 100 optionally also includes one or more physical buttons, such as a "home" or menu button 204. As previously described, the menu button 204 is optionally used to navigate to any application 136 in a set of applications that are optionally executed on the device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen 112.

[0278] In some embodiments, the device 100 includes a touch screen 112, a menu button 204, a push button 206 for turning the device on / off and for locking the device, one or more volume adjustment buttons 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and a docking / charging external port 124. The push button 206 is optionally used to turn the device on / off by pressing the button and holding it in the depressed state for a predefined time interval; to lock the device by pressing the button and releasing it before the predefined time interval has elapsed; and / or to unlock the device or initiate an unlocking process. In an alternative embodiment, the device 100 also accepts voice input for activating or deactivating certain functions via the microphone 113. The device 100 also optionally includes one or more contact force sensors 165 for detecting the intensity of contact on the touch screen 112, and / or one or more tactile output generators 167 for generating tactile output for the user of the device 100.

[0279] Figure 3is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments. The device 300 does not have to be portable. In some embodiments, the device 300 is a laptop, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a children's learning toy), a gaming system, or a control device (e.g., a home controller or an industrial controller). The device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, a memory 370, and one or more communication buses 320 for interconnecting these components. The communication bus 320 optionally includes circuits (sometimes referred to as a chipset) that interconnect system components and control communications between system components. The device 300 includes an input / output (I / O) interface 330 having a display 340, which is typically a touch screen display. The I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 for generating tactile output on the device 300 (e.g., similar to the above referenced devices). Figure 1A The one or more tactile output generators 167 described above), sensors 359 (e.g., optical sensors, acceleration sensors, proximity sensors, touch sensors, and / or contact intensity sensors (similar to the above referenced Figure 1A The memory 370 may include one or more storage devices located remotely from the CPU 310. In some embodiments, the memory 370 stores data related to the portable multifunction device 100 ( Figure 1A ) or a subset thereof. In addition, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores a drawing module 380, a presentation module 382, ​​a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while portable multifunction device 100( Figure 1A )'s memory 102 optionally does not store these modules.

[0280] Figure 3Each element in the above-mentioned elements in is optionally stored in one or more memory devices of the memory device mentioned previously.Each module in the above-mentioned modules corresponds to the instruction set for performing the above-mentioned functions.Above-mentioned modules or programs (for example, instruction sets) need not be implemented as independent software programs, processes or modules, and therefore the various subsets of these modules are optionally combined or otherwise rearranged in various embodiments.In some embodiments, memory 370 stores the subset of above-mentioned modules and data structures optionally.In addition, memory 370 stores other modules and data structures not described above optionally.

[0281] Attention is now turned to an embodiment of a user interface that may optionally be implemented on, for example, portable multifunction device 100 .

[0282] Figure 4A An exemplary user interface for an applications menu on portable multifunction device 100 is shown according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof:

[0283] One or more signal strength indicators 402 of one or more wireless communications, such as cellular signals and Wi-Fi signals;

[0284] Time 404;

[0285] Bluetooth indicator 405;

[0286] Battery status indicator 406;

[0287] A tray 408 with icons for commonly used applications, such as:

[0288] o an icon 416 of the phone module 138 labeled “Phone,” which optionally includes an indicator 414 of the number of missed calls or voice messages;

[0289] o an icon 418 of the email client module 140 labeled “Mail,” which optionally includes an indicator 410 of the number of unread emails;

[0290] o An icon 420 labeled "Browser" of the browser module 147; and

[0291] o An icon 422 labeled “iPod” for the video and music player module 152 (also referred to as the iPod (trademark of Apple Inc.) module 152); and

[0292] Icons for other apps, such as:

[0293] o Icon 424 of the IM module 141 labeled “Messages”;

[0294] o Icon 426 labeled “Calendar” of calendar module 148;

[0295] o Icon 428 labeled “Photos” of the image management module 144;

[0296] o an icon 430 labeled “Camera” of the camera module 143;

[0297] o Icon 432 labeled “Online Video” of the online video module 155;

[0298] o Icon 434 labeled "Stock Market" of the Stock Market widget 149-2;

[0299] o an icon 436 labeled “Map” of the map module 154;

[0300] o Icon 438 labeled “Weather” of the Weather widget 149-1;

[0301] o Icon 440 labeled “Clock” of the Alarm Clock widget 149-4;

[0302] o an icon 442 labeled “Fitness Support” of the fitness support module 142;

[0303] o An icon 444 labeled "Notepad" of the Notepad module 153; and

[0304] o An icon 446 of a settings application or module labeled “Settings” that provides access to settings for the device 100 and its various applications 136.

[0305] It should be pointed out that Figure 4A The icon labels shown are examples only. For example, icon 422 for 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 for a respective application icon includes the name of the application corresponding to the respective application icon. In some embodiments, the label for a particular application icon is different from the name of the application corresponding to the particular application icon.

[0306] Figure 4B A touch-sensitive surface 451 (eg, touch screen display 112) is shown having a touch-sensitive surface 451 (eg, touch screen display 112) that is separate from a display 450 (eg, touch screen display 112). Figure 3 tablet or touchpad 355) of the device (e.g., Figure 3Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting intensity of contacts on touch-sensitive surface 451 and / or one or more tactile output generators 357 for generating tactile output for a user of device 300.

[0307] Although some of the examples below will be given with reference to input on a touch screen display 112 (where the touch-sensitive surface and display are combined), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, such as Figure 4B In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a main axis (e.g., Figure 4B 453) corresponding to the main axis (for example, Figure 4B According to these embodiments, the device detects a position corresponding to a corresponding position on the display (e.g., Figure 4B , 460 corresponds to 468 and 462 corresponds to 470 ) at contact with touch-sensitive surface 451 (e.g., Figure 4B 460 and 462 in FIG. 4 ). Thus, on a touch-sensitive surface (e.g., Figure 4B 451) and a display of a multi-function device (e.g., Figure 4B When the user input detected by the device on the touch-sensitive surface (e.g., contacts 460 and 462 and their movement) is separated, the device is used to manipulate the user interface on the display. It should be understood that similar methods are optionally used for other user interfaces described herein.

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

[0309] Figure 5AAn exemplary personal electronic device 500 is shown. The device 500 includes a body 502. In some embodiments, the device 500 may include a body 502 relative to the devices 100 and 300 (e.g., Figures 1A to 4B ) some or all of the features described in . In some embodiments, device 500 has a touch-sensitive display screen 504, referred to hereinafter as touch screen 504. As an alternative to or in addition to touch screen 504, device 500 has a display and a touch-sensitive surface. As with devices 100 and 300, in some embodiments, touch screen 504 (or touch-sensitive surface) optionally includes one or more intensity sensors for detecting the intensity of applied contact (e.g., touch). The one or more intensity sensors of touch screen 504 (or touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to touches based on the intensity of the touch, which means that touches of different intensities can invoke different user interface operations on device 500.

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

[0311] In some embodiments, the 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, the device 500 has one or more attachment mechanisms. Such attachment mechanisms (if included) can allow the device 500 to be attached to, for example, hats, glasses, earrings, necklaces, shirts, jackets, bracelets, watchbands, bracelets, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow the user to wear the device 500.

[0312] Figure 5B An exemplary personal electronic device 500 is depicted. In some embodiments, the device 500 may include a reference Figure 1A 、 Figure 1B and Figure 3 Some or all of the components described. The device 500 has a bus 512 that operatively couples an I / O portion 514 to one or more computer processors 516 and a memory 518. The I / O portion 514 can be connected to a display 504, which can have a touch-sensitive component 522 and optionally a strength sensor 524 (e.g., a contact strength sensor). In addition, the I / O portion 514 can be connected to a 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. The device 500 may include input mechanisms 506 and / or 508. For example, the input mechanism 506 can optionally be a rotatable input device or a depressible input device and a rotatable input device. In some examples, the input mechanism 508 can optionally be a button.

[0313] In some examples, input mechanism 508 is optionally a microphone. Personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which are operatively connected to I / O portion 514.

[0314] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by, for example, one or more computer processors 516, may cause the computer processors to perform the techniques described below, including processes 900, 1200, 1500, 1800, 2100, 2400, 2700, and 3000 ( Figures 9A-9I 、 Figures 12A-12C 、 Figures 15A-15K 、 Figures 18A-18F 、 Figures 21A-21D 、 Figures 24A-24C 、 Figures 27A-27E and Figures 30A-30D). Computer-readable storage media can be any medium that can tangibly contain or store computer-executable instructions for use by or in conjunction with instruction execution systems, devices, and apparatuses. 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 may 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 disks based on CD, DVD, or Blu-ray technology, and persistent solid-state memories such as flash memory, solid-state drives, and the like. Personal electronic device 500 is not limited to Figure 5B components and configurations, but may include other components or additional components in a variety of configurations.

[0315] As used herein, the term "indicator" refers to an indication that is optionally provided on device 100, 300, and / or 500 ( Figure 1A 、 Figure 3 and Figures 5A to 5B ) is a user-interactive graphical user interface object displayed on a display screen of a computer. For example, an image (e.g., an icon), a button, and text (e.g., a hyperlink) can each optionally constitute an affordance.

[0316] 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 implementations that include a cursor or other position 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), a focus selector is displayed on a touch-sensitive surface (e.g., Figure 3 Touchpad 355 or Figure 4B In the event that an input (e.g., a press input) is detected on the touch-sensitive surface 451 in FIG, the particular user interface element is adjusted according to the detected input. In the case of a touch screen display (e.g., a touch screen display) that enables direct interaction with user interface elements on the touch screen display Figure 1A touch-sensitive display system 112 or Figure 4AIn some implementations of the touch screen 112 in FIG, 2 , a contact detected on the touch screen acts as a “focus selector” such that when input (e.g., a press input by the contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touch screen display, the particular user interface element is adjusted according to the detected input. In some implementations, the focus moves from one area of ​​the user interface to another area of ​​the user interface without corresponding movement of a cursor or movement of a contact on the touch screen display (e.g., by using a tab key or arrow keys to move the focus from one button to another); in these implementations, the focus selector moves according to the movement of the focus between different areas of the user interface. Regardless of the specific form the focus selector takes, the focus selector is generally a user interface element (or contact on the touch screen display) that is controlled by the user to deliver the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface with which the user desires to interact). For example, when a press input is detected on a touch-sensitive surface (e.g., a trackpad or touch screen), the position of a focus selector (e.g., a cursor, contact, or selection box) over a corresponding button will indicate that the user intends to activate the corresponding button (rather than other user interface elements shown on the device display).

[0317] As used in the specification and claims, the term "characteristic intensity" of a contact refers to a characteristic of the contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples or a set of intensity samples collected during 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 off, before or after contact begins to move, before contact ends, before or after contact is detected to increase in intensity, and / or before or after contact is detected to decrease in intensity). The characteristic intensity of a contact is optionally based on one or more of the following: the maximum value of the intensity of the contact, the mean value of the intensity of the contact, the average value of the intensity of the contact, the value at the top 10% of the intensity of the contact, the half-maximum value of the intensity of the contact, the 90% maximum value of the intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is the average value of the intensity of the contact over time). In some embodiments, the feature strength is compared to a set of one or more strength thresholds to determine whether the user has performed an operation. For example, the set of one or more strength thresholds may optionally include a first strength threshold and a second strength threshold. In this example, a contact whose feature strength does not exceed the first threshold results in a first operation, a contact whose feature strength exceeds the first strength threshold but does not exceed the second strength threshold results in a second operation, and a contact whose feature strength exceeds the second threshold results in a third operation. In some embodiments, a comparison between the feature strength and one or more thresholds is used to determine whether to perform one or more operations (e.g., whether to perform the corresponding operation or to abandon the corresponding operation) rather than to determine whether to perform the first operation or the second operation.

[0318] Figure 5C Detecting multiple contacts 552A-552E on touch-sensitive display 504 using multiple intensity sensors 524A-524D is shown. Figure 5C Also included is an intensity graph that shows the current intensity measurements of intensity sensors 524A-524D relative to intensity units. In this example, the intensity measurements of intensity sensors 524A and 524D are both 9 intensity units, and the intensity measurements of intensity sensors 524B and 524C are both 7 intensity units. In some implementations, the cumulative intensity is the sum of the intensity measurements of multiple intensity sensors 524A-524D, which in this example is 32 intensity units. In some embodiments, each contact is assigned a corresponding intensity, which is a portion of the cumulative intensity. Figure 5D554. The cumulative strength assigned to contacts 552A-552E based on their distance from the center of force 554 is shown. In this example, each of contacts 552A, 552B, and 552E is assigned a strength of the contact of 8 strength units of the cumulative strength, and each of contacts 552C and 552D is assigned a strength of the contact of 4 strength units of the cumulative strength. More generally, in some embodiments, each contact j is assigned a corresponding strength Ij that is a portion of the cumulative strength A according to a predefined mathematical function Ij=A·(Dj / ΣDi), where Dj is the distance of the corresponding contact j from the center of force, and ΣDi is the sum of the distances of all corresponding contacts (e.g., i=1 to the last) from the center of force. The reference may be performed using an electronic device similar to or identical to device 100, 300, or 500. Figure 5C-5D In some embodiments, the characteristic intensity of the contact is based on one or more intensities of the contact. In some embodiments, the intensity sensor is used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). It should be noted that the intensity map is not part of the displayed user interface, but is included in the Figure 5C-5D To assist readers.

[0319] In some embodiments, a portion of a gesture is identified for determining the characteristic strength. For example, the touch-sensitive surface optionally receives a continuous swipe contact that transitions from a starting position and reaches an end position where the contact strength increases. In this example, the characteristic strength of the contact at the end position is optionally based only on a portion of the continuous swipe contact, rather than the entire swipe contact (e.g., only the portion of the swipe contact at the end position). In some embodiments, a smoothing algorithm is optionally applied to the intensity of the swipe contact before determining the characteristic strength of the contact. For example, the smoothing algorithm optionally includes one or more of the following: an unweighted sliding average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some cases, these smoothing algorithms eliminate narrow peaks or dips in the intensity of the swipe contact to achieve the purpose of determining the characteristic strength.

[0320] The intensity of a contact on the touch-sensitive surface is optionally characterized relative to one or more intensity thresholds, such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device will perform an operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device will perform an operation different from the operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, when a contact is detected with a characteristic intensity below the light press intensity threshold (e.g., and above a nominal contact detection intensity threshold, contacts below the nominal contact detection intensity threshold are no longer detected), the device will move the focus selector in accordance with the movement of the contact on the touch-sensitive surface, without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally speaking, unless otherwise stated, these intensity thresholds are consistent between different groups of user interface illustrations.

[0321] An increase in contact feature intensity from an intensity below a light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold is sometimes referred to as a "light press" input. An increase in contact feature intensity from an intensity below a deep press intensity threshold to an intensity above the deep press intensity threshold is sometimes referred to as a "deep press" input. An increase in contact feature intensity from an intensity below a contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light press intensity threshold is sometimes referred to as detecting a contact on the touch surface. A decrease in contact feature intensity from an intensity above the contact detection intensity threshold to an intensity below the contact detection intensity threshold is sometimes referred to as detecting a contact lifted from the touch surface. In some embodiments, the contact detection intensity threshold is zero. In some embodiments, the contact detection intensity threshold is greater than zero.

[0322] In some embodiments described herein, one or more operations are performed in response to detecting a gesture that includes a corresponding press input or in response to detecting a corresponding press input performed using a corresponding contact (or multiple contacts), wherein the corresponding press input is detected at least in part based on detecting an increase in the intensity of the contact (or multiple contacts) to above a press input intensity threshold. In some embodiments, the corresponding operation is performed in response to detecting an increase in the intensity of the corresponding contact to above the press input intensity threshold (e.g., a "down stroke" of the corresponding press input). In some embodiments, the press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below the press input intensity threshold, and the corresponding operation is performed in response to detecting a subsequent decrease in the intensity of the corresponding contact to below the press input threshold (e.g., an "up stroke" of the corresponding press input).

[0323] Figure 5E-5HDetection of a gesture is shown, the gesture comprising contact 562 with an intensity from below Figure 5E Light press intensity threshold in L ”) increases to a value higher than Figure 5H The deep press intensity threshold in D ”). On the displayed user interface 570 including application icons 572A-572D displayed in the predefined area 574, when the cursor 576 is displayed over the application icon 572B corresponding to application 2, a gesture performed using the contact 562 is detected on the touch-sensitive surface 560. In some embodiments, the gesture is detected on the touch-sensitive display 504. The intensity sensor detects the intensity of the contact on the touch-sensitive surface 560. The device determines whether the intensity of the contact 562 is within the deep press intensity threshold (e.g., “IT D ”) reaches a peak above. Contact 562 is maintained on touch-sensitive surface 560. In response to detecting the gesture, and according to the intensity rising to the deep press intensity threshold (e.g., “IT D ”) above contact 562, displays scaled representations 578A-578C (e.g., thumbnails) of documents recently opened for Application 2, as shown in FIG. Figure 5F-5H In some embodiments, the intensity is a characteristic intensity of the contact compared to one or more intensity thresholds. It should be noted that the intensity map for contact 562 is not part of the displayed user interface, but is included in the Figure 5E-5H To assist readers.

[0324] In some embodiments, the display of representations 578A-578C includes animation. For example, representation 578A is initially displayed near application icon 572B, as shown in FIG. Figure 5F As the animation progresses, representation 578A moves upward and representation 578B is displayed near application icon 572B, as shown. Figure 5G Then, representation 578A moves upward, 578B moves upward toward representation 578A, and representation 578C is displayed near application icon 572B, as shown in FIG. Figure 5H . Indicators 578A-578C form an array above icon 572B. In some embodiments, the animation progresses according to the intensity of contact 562, such as Figure 5F-5G , where representations 578A-578C appear and decrease as the intensity of contact 562 moves toward a deep press intensity threshold (e.g., “IT D In some embodiments, the intensity according to which the animation progresses is the characteristic intensity of the contact. The reference may be performed using an electronic device similar to or identical to device 100, 300, or 500. Figure 5E-5H The operation described.

[0325] In some embodiments, the device employs intensity hysteresis to avoid accidental input, sometimes referred to as "jitter," where the device defines or selects a hysteresis intensity threshold that has a predefined relationship to a press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable proportion of the press input intensity threshold). Thus, in some embodiments, a press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below a hysteresis intensity threshold corresponding to the press input intensity threshold, and a corresponding operation is performed in response to detecting that the intensity of the corresponding contact subsequently decreases to below the hysteresis intensity threshold (e.g., an "upstroke" of the corresponding press input). Similarly, in some embodiments, a press input is detected only when the device detects that the contact intensity increases from an intensity equal to or below the hysteresis intensity threshold to an intensity equal to or above the press input intensity threshold and, optionally, that the contact intensity subsequently decreases to an intensity equal to or below the hysteresis intensity, and a corresponding operation is performed in response to detecting the press input (e.g., an increase in contact intensity or a decrease in contact intensity, depending on the circumstances).

[0326] For ease of explanation, a description of an operation performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is optionally triggered in response to detecting any of the following: contact intensity increasing above the press input intensity threshold, contact intensity increasing from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold, contact intensity decreasing below the press input intensity threshold, and / or contact intensity decreasing below a hysteresis intensity threshold corresponding to the press input intensity threshold. Additionally, in examples where an operation is described as being performed in response to detecting that the intensity of the contact decreases below the press input intensity threshold, the operation is optionally performed in response to detecting that the intensity of the contact decreases below a hysteresis intensity threshold that corresponds to and is less than the press input intensity threshold.

[0327] Figure 6 Example devices connected via one or more communication channels to participate in a transaction according to some embodiments are shown. One or more example electronic devices (e.g., devices 100, 300, and 500) are configured to optionally detect input (e.g., specific user input, NFC field) and optionally transmit payment information (e.g., using NFC). The one or more electronic devices optionally include NFC hardware and are configured to support NFC.

[0328] An electronic device (e.g., devices 100, 300, and 500) is optionally configured to store payment account information associated with each of one or more payment accounts. The payment account information includes, for example, one or more of the following: a person's name or company name, a billing address, a login name, a password, an account number, an expiration date, a security code, a phone number, a bank associated with the payment account (e.g., an issuing bank), and a card network identifier. In some examples, the payment account information includes an image, such as a photo of a payment card (e.g., a photo taken by the device and / or received by the device). In some examples, the electronic device receives user input including at least some payment account information (e.g., receiving a user-entered credit card number, debit card number, account number, or shopping card number and expiration date). In some examples, the electronic device detects at least some payment account information from an image (e.g., of a payment card captured by a camera sensor of the device). In some examples, the electronic device receives at least some payment account information from another device (e.g., another user device or a server). In some examples, the electronic device receives payment account information from a server associated with another service (e.g., an application for renting or selling audio files and / or video files) for which the user or user device's account has previously made purchases or for which payment account data is identified.

[0329] In some embodiments, a payment account is added to an electronic device (e.g., devices 100, 300, and 500) so that the payment account information is securely stored on the electronic device. In some examples, after a user initiates such a process, the electronic device transmits the payment account information to a transaction coordination server, which then communicates with a server operated by the account's payment network (e.g., a payment server) to ensure the validity of the information. The electronic device is optionally configured to receive a script from the server that allows the electronic device to program the account's payment information onto a secure element.

[0330] In some embodiments, communication between devices 100, 300, and 500 facilitates transactions (e.g., general transactions or specific transactions). For example, a first electronic device (e.g., 100) may be used as a configuration device or a management device and may send new or updated payment account data (e.g., information about a new account, updated information about an existing account, and / or warnings about an existing account) to a second electronic device (e.g., 500). As another example, a first electronic device (e.g., 100) may send data to a second electronic device, wherein the data reflects information about a payment transaction facilitated at the first electronic device. The information may optionally include one or more of the following: the payment amount, the account used, the time of purchase, and whether to change the default account. The second device (e.g., 500) may optionally use such information to update the default payment account (e.g., based on a learning algorithm or explicit user input).

[0331] The electronic devices (e.g., 100, 300, 500) are configured to communicate with each other via any of a variety of networks. For example, the devices communicate using a Bluetooth connection 608 (e.g., including a traditional Bluetooth connection or a Bluetooth low energy connection) or using a WiFi network 606. Communications between user devices are optionally regulated to reduce the likelihood of inappropriate sharing of information between devices. For example, communication regarding payment information requires that the communicating devices be paired (e.g., associated with each other via explicit user interaction) or associated with the same user account.

[0332] In some embodiments, an electronic device (e.g., 100, 300, 500) is used to communicate with a point-of-sale (POS) payment terminal 600, which optionally supports NFC. The communication is optionally carried out using various communication channels and / or technologies. In some examples, the electronic device (e.g., 100, 300, 500) uses an NFC channel 610 to communicate with the payment terminal 600. In some embodiments, the payment terminal 600 uses a peer-to-peer NFC mode to communicate with the electronic device (e.g., 100, 300, 500). The electronic device (e.g., 100, 300, 500) is optionally configured to transmit a signal to the payment terminal 600 that includes payment information of a payment account (e.g., a default account or an account selected for a specific transaction).

[0333] In some embodiments, continuing with the transaction includes transmitting a signal including payment information of an account (such as a payment account). In some embodiments, continuing with the transaction includes reconfiguring the electronic device (e.g., 100, 300, 500) to respond as a contactless payment card (such as an NFC-enabled contactless payment card) and then transmitting the account credentials via NFC to, for example, a payment terminal 600. In some embodiments, after transmitting the account credentials via NFC, the electronic device is reconfigured not to respond as a contactless payment card (e.g., requiring authorization before being reconfigured to respond as a contactless payment card via NFC again).

[0334] In some embodiments, the generation and / or transmission of the signal is controlled by a security element in an electronic device (e.g., 100, 300, 500). Before issuing payment information, the security element optionally requires specific user input. For example, the security element optionally requires: detecting the electronic device being worn, detecting button presses, detecting password input, detecting touch, detecting one or more option selections (e.g., option selections received when interacting with an application), detecting fingerprint signatures, detecting voice or voice commands, and / or detecting gestures or movements (e.g., rotation or acceleration). In some examples, if a communication channel (e.g., an NFC communication channel) is established with another device (e.g., a payment terminal 600) within a defined time period from the detection of the input, the security element releases the payment information so that it is transmitted to the other device (e.g., payment terminal 600). In some examples, the security element is a hardware component that controls the release of security information. In some examples, the security element is a software component that controls the release of security information.

[0335] In some embodiments, the protocols associated with transaction participation depend on, for example, the device type. For example, the conditions for generating and / or transmitting payment information can be different for a wearable device (e.g., device 500) and a phone (e.g., device 100). For example, the generation conditions and / or transmission conditions for a wearable device include detecting that a button has been pressed (e.g., after security verification), while the corresponding conditions for a phone do not require a button press, but rather require detection of a specific interaction with an application. In some embodiments, the conditions for transmitting and / or publishing payment information include receiving specific input on each of a plurality of devices. For example, the release of payment information optionally requires detection of a fingerprint and / or passcode at a device (e.g., device 100) and detection of a mechanical input (e.g., a button press) on another device (e.g., device 500).

[0336] Payment terminal 600 optionally uses the payment information to generate a signal for transmission to payment server 604 to determine whether the payment is authorized. Payment server 604 optionally includes any device or system configured to receive payment information associated with a payment account and determine whether the proposed purchase is authorized. In some examples, payment server 604 includes a server of an issuing bank. Payment terminal 600 communicates with payment server 604 directly or indirectly via one or more other devices or systems (e.g., a server of an acquiring bank and / or a server of a card network).

[0337] The payment server 604 optionally uses at least some of the payment information to identify the user account from a database of user accounts (e.g., 602). For example, each user account includes payment information. The account is optionally located by locating an account with specific payment information that matches the information from the POS communication. In some examples, payment is rejected when the provided payment information is inconsistent (e.g., the expiration date does not correspond to the credit card number, the debit card number, or the shopping card number does not correspond) or when no account includes payment information that matches the information from the POS communication.

[0338] In some embodiments, the user account data further identifies one or more constraints (e.g., a credit limit); current or previous balances; previous transaction dates, locations, and / or amounts; account status (e.g., active or frozen); and / or authorization instructions. In some examples, the payment server (e.g., 604) uses such data to determine whether to authorize the payment. For example, the payment server may deny payment when the purchase amount added to the current balance would cause the account limit to be exceeded, when the account is frozen, when the previous transaction amount exceeds a threshold, or when the number or frequency of previous transactions exceeds a threshold.

[0339] In some embodiments, the payment server 604 responds to the POS (point of sale) payment terminal 600 with an indication of whether the proposed purchase is authorized or denied. In some examples, the POS payment terminal 600 transmits a signal to the electronic device (e.g., 100, 300, 500) to identify the result. For example, when the purchase is authorized (e.g., via a transaction coordination server that manages a transaction application on the user device), the POS payment terminal 600 sends a receipt to the electronic device (e.g., 100, 300, 500). In some cases, the POS payment terminal 600 presents an output (e.g., a visual output or an audio output) indicating the result. The payment may be transmitted to the merchant as part of the authorization process, or may be transmitted later.

[0340] In some embodiments, the electronic device (e.g., 100, 300, 500) participates in a transaction that is completed without involving the POS payment terminal 600. For example, upon detecting that mechanical input has been received, a secure element in the electronic device (e.g., 100, 300, 500) releases payment information to allow an application on the electronic device to access the information (e.g., and transmit the information to a server associated with the application).

[0341] In some embodiments, the electronic device (e.g., 100, 300, 500) is in a locked state or an unlocked state. In the locked state, the electronic device is powered on and is operable, but it is blocked from performing a predefined set of operations in response to user input. The predefined set of operations may include navigating between user interfaces, activating or deactivating a predefined set of functions, and activating or deactivating certain applications. The locked state can be used to prevent unintentional or unauthorized use of some functions of the electronic device, or to activate or deactivate some functions on the electronic device. In the unlocked state, the electronic device 100 is powered on and is operable, and is not blocked from performing at least a portion of a predefined set of operations that cannot be performed when in the locked state.

[0342] When the device is in the locked state, the device is said to be locked.In some embodiments, the device in the locked state can respond to a restricted set of user inputs, including input corresponding to an attempt to transition the device to the unlocked state or input corresponding to turning the device off.

[0343] In some examples, a secure element (e.g., 115) is a hardware component (e.g., a secure microcontroller chip) configured to securely store data or algorithms so that the device cannot access the securely stored data without appropriate authentication information from a user of the device. Storing securely stored data in a secure element separate from other storage devices on the device prevents access to the securely stored data even if other storage locations on the device are compromised (e.g., by malicious code or other attempts to misappropriate information stored on the device). In some examples, the secure element provides (or issues) payment information (e.g., an account number and / or a transaction-specific dynamic security code). In some examples, the secure element provides (or issues) payment information in response to receiving authorization, such as user authentication (e.g., fingerprint authentication; password authentication; detecting a double press of a hardware button when the device is in an unlocked state, and optionally when the device has been continuously on the user's wrist since the device was unlocked by providing authentication credentials to the device, wherein the continued presence of the device on the user's wrist is determined by periodically checking that the device is in contact with the user's skin). For example, the device detects a fingerprint at the device's fingerprint sensor (e.g., a fingerprint sensor integrated into a button). The device determines whether the fingerprint matches the registered fingerprint. Based on the determination that the fingerprint matches the registered fingerprint, the secure element provides (or releases) the payment information. Based on the determination that the fingerprint does not match the registered fingerprint, the secure element forgoes providing (or releasing) the payment information.

[0344] Attention is now turned to an embodiment of a user interface ("UI") and associated processes implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.

[0345] Figures 7A-7E An exemplary user interface for managing peer-to-peer transmissions according to some embodiments is shown. As described in more detail below, Figures 7A-7E The non-limiting exemplary embodiment of the user interface shown is similar to Figures 8A-8AH The non-limiting exemplary embodiment of the user interface shown is related to Figures 8A-8AH The non-limiting exemplary embodiment of the user interface shown is further used to illustrate the process described below, including Figures 9A-9I in the process.

[0346] Figure 7A An electronic device 700 (e.g., portable multifunction device 100, device 300, or device 500) is shown. Figures 7A-7EIn the non-limiting exemplary embodiment shown, electronic device 700 is a smartphone. In other embodiments, electronic device 700 can be a different type of electronic device, such as a wearable device (e.g., a smartwatch). Electronic device 700 has a display 702, one or more input devices (e.g., a touch screen for display 702, mechanical buttons 704, a microphone), and a wireless communication radio component.

[0347] exist Figure 7A , electronic device 700 displays on display 702 a message conversation 708 of a messaging application 706 between a user of the device (e.g., "Kate Appleseed") and a message participant 710 (e.g., "John Appleseed"). In some embodiments, message participant 710 is a contact stored on the device. In some embodiments, message participant 710 is a contact in a contact list associated with a user account logged on the device. In some embodiments, message participant 710 is a contact included in a trusted contacts list associated with a user account logged on the device.

[0348] In some embodiments, the electronic device 700 also displays a virtual keyboard 712 (e.g., an alphanumeric keyboard for typing messages) on the display 702 and a compose bar 714 that displays the text of the message when the virtual keyboard 712 is used to type the message. In some embodiments, a mechanical keyboard can be used to type the message in addition to or as an alternative to the virtual keyboard 712. In some embodiments, the compose bar 714 can be expanded (e.g., expanded upward) to accommodate longer messages or message objects (e.g., images, emoticons, special types of message objects such as payment objects). In some embodiments, the compose bar 714 includes a microphone button 716 that, when activated, enables the user to record a message using voice input.

[0349] like Figure 7A As shown, message conversation 708 includes two visual message objects 718 and 720. Message object 718 corresponds to a message sent by the user of the device to message participant 710. In message object 718, the user states to message participant 710: "That restaurant is great!" Message object 720 corresponds to a message sent by message participant 710 to the user (in response to the message corresponding to message object 718). In message object 720, message participant 710 responds to the user: "Yeah! Can you send me pictures of last night?"

[0350] In some embodiments, the electronic device 700 performs analysis on the content (e.g., text) of the message corresponding to the message object 720 (stating, "Yeah! Can you send me pictures of last night?" in response to the message corresponding to the message object 718 stating, "That restaurant is great!"). In some embodiments, the analysis of the content (e.g., text) of the message is performed by the electronic device 700 using a language processing component or a language analysis component of the device. In some embodiments, the analysis is performed at an external device (e.g., a server), and the electronic device 700 receives the results of the analysis from the external device.

[0351] Based on an analysis of the content (e.g., text) of message object 720 (and optionally, one or more other previous or subsequent message objects of message conversation 708, such as message objects 718 and 720), in accordance with a determination (e.g., made at electronic device 700 or received from an external device such as a server) that the content (e.g., text) of the message corresponding to message object 720 is related to the transfer of electronic files (e.g., photos, videos, documents, audio files) that messaging application 706 is configured to transfer, electronic device 700 displays a selectable indication corresponding to the transfer of one or more files (e.g., photos, video files, audio files, documents) or to an intent to continue the transfer of one or more files (e.g., photos, video files, audio files, documents), as discussed below. For example, in Figure 7A , a determination is made based on the text of message object 720 (stating "Yeah! Can you send me the pictures from last night?") that message participant 710 is requesting the transfer of pictures taken during a specific time period (eg, last night).

[0352] In some embodiments, as Figure 7A As shown, the electronic device 700 provides a mark 722 (e.g., underlining, bolding, highlighting) to a phrase within the message object 720 (e.g., "last night's photos"), which is determined by the device or by an external device (e.g., a server) in communication with the device as corresponding to a request for transfer of one or more files (e.g., last night's photos). In addition, in response to a determination that the phrase within the message corresponds to a request for transfer of one or more files, the electronic device 700 displays (e.g., above a portion of the virtual keyboard 712, between the virtual keyboard 712 and the write bar 714) a suggestion bar 724 that includes a transfer button 726 for continuing the transfer of the requested one or more files corresponding to the message of the message object 720. For example, in Figure 7AIn the example, transfer button 726 shows "Photo" to indicate that the button is related to the transfer of the requested photo and that the transfer can be performed using a transfer application controlled by the operating system (Party A) (rather than by a third-party application). In some embodiments, suggestion bar 724 also includes suggested responses (e.g., "Sure", "OK") for responding to the message of message object 720 (rather than continuing the file transfer).

[0353] exist Figure 7B , while displaying message conversation 708, electronic device 700 detects (e.g., via a touch screen) user activation of a marker 722 for a phrase corresponding to a request for transfer of one or more files (e.g., photos from last night) included in message object 720. For example, Figure 7B As shown, the user activation is a tap gesture 701 of a marker 722 of a phrase (e.g., underlined "last night's photos") included in a message object 720. Alternatively, in some embodiments, the user activation can be a user selection (e.g., a tap gesture) of a transfer button 726 (e.g., showing "photos") within a suggestion bar 724.

[0354] exist Figure 7C In FIG, in response to detecting a tap gesture 701 on a marker 722 corresponding to a request by a message participant 710 for “last night’s photos,” the electronic device 700 displays a photo gallery user interface 728 on the display 702. In some embodiments, such as Figure 7C As shown, the photo gallery user interface 728 replaces the display of the messaging application 706 and the virtual keyboard 712. In some embodiments, the photo gallery user interface 728 slides from the edge of the display (e.g., slides up from the bottom edge of the display) into the display to replace the display of the virtual keyboard 712 (and optionally, the messaging application 706).

[0355] In some embodiments, as Figure 7C As shown, the photo library user interface 728 includes a plurality of selectable preview images corresponding to photos stored on the electronic device 700 (or accessible by the device via a remote server). Figure 7CAs shown, the plurality of selectable preview images are organized based on time (e.g., the date the photo was taken) and / or based on location (e.g., the location where the photo was taken). For example, the plurality of selectable preview images 730A-730F shown below header 730 correspond to photos taken on April 30 in Cupertino, CA, the plurality of selectable preview images 732A-732C shown below header 732 correspond to photos taken yesterday in San Francisco, CA, and the plurality of selectable preview images 734A-734B shown below header 734 correspond to photos taken today.

[0356] Furthermore, because photo gallery user interface 728 was initiated via user activation of tag 722 corresponding to a detected request from message participant 710 for transmission of “last night’s photos,” selectable preview images consistent with the detected request were pre-selected (for transmission) when photo gallery user interface 728 was displayed. In photo gallery user interface 728, multiple selectable preview images 732A-732C correspond to photos taken last night (e.g., as indicated by header 732). Thus, as Figure 7C As shown, each of the selectable preview images 732A- 732C is pre-selected (eg, as indicated by a graphical check mark on the preview image) for transmission to the message participant 710 via the messaging application 706 .

[0357] In some embodiments, also as Figure 7C As shown, photo library user interface 728 includes a compose field 736 (eg, corresponding to compose field 714) for including notes to accompany the transmission (eg, of the selected photos), and a send button 738 for initiating the transmission (eg, of the selected photos).

[0358] exist Figure 7D , while displaying gallery user interface 728 in which selectable preview images 732A-732C (corresponding to photos from last night) are pre-selected for transmission (to message participant 710), electronic device 700 detects user activation of send button 738 for initiating transmission of photos corresponding to selectable preview images 732A-732C. For example, Figure 7D As shown, the user activation is a tap gesture 703 on the send button 738.

[0359] exist Figure 7EIn response to detecting the tap gesture 703, the electronic device transmits the photo corresponding to the selected selectable preview image 732A-732C to the message participant 710 using the messaging application 706 and via the wireless communication radio component, and again displays (e.g., replaces the display of the photo library user interface 728 with) the message conversation 708 of the messaging application 706 on the display 702. Figure 7E As shown, message conversation 708 shows that photo message objects 733A-733C (corresponding to photos corresponding to selectable preview images 732A-732C) have been sent by messaging application 706 to message participant 710. In some embodiments, message conversation 708 further displays an indication 740 (e.g., stating "delivered") notifying the user that the photos have been sent to the intended recipient (e.g., message participant 710).

[0360] As mentioned above, the above Figures 7A-7E The non-limiting exemplary embodiment of the user interface shown is similar to the one described below. Figures 8A-8AH Therefore, it should be understood that the above description with respect to the user interface shown in FIG. Figures 7A-7E The exemplary user interface shown in the figure and the process described below with respect to Figures 8A-8AH The process described by the exemplary user interfaces shown is a largely similar process that similarly involves using an electronic device (eg, 100, 300, 500, 700, or 800) to initiate and manage transmissions.

[0361] Figures 8A-8AH Figures 1 and 2 illustrate exemplary user interfaces for managing peer-to-peer transmissions according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including Figures 9A-9I in the process.

[0362] Figure 8A An electronic device 800 (e.g., portable multifunction device 100, device 300, or device 500) is shown. Figures 8A-8AH In the non-limiting exemplary embodiment shown, the electronic device 800 is a smartphone. In other embodiments, the electronic device 800 can be a different type of electronic device, such as a wearable device (e.g., a smartwatch). The electronic device 800 has a display 802, one or more input devices (e.g., a touch screen for the display 802, mechanical buttons 804, a microphone), and a wireless communication radio component.

[0363] exist Figure 8A, electronic device 800 displays on display 802 a message conversation 808 of a messaging application 806 between a user of the device (e.g., "Kate Appleseed") and a message participant 810 (e.g., "John Appleseed"). In some embodiments, message participant 810 is a contact stored on the device. In some embodiments, message participant 810 is a contact in a contact list associated with a user account logged on the device. In some embodiments, message participant 810 is a contact included in a trusted contacts list associated with a user account logged on the device.

[0364] In some embodiments, the electronic device 800 also displays a virtual keyboard 812 (e.g., an alphanumeric keyboard for typing messages) on the display 802 and a compose bar 814 that displays the text of the message when the virtual keyboard 812 is used to type the message. In some embodiments, a mechanical keyboard can be used to type the message in addition to or as an alternative to the virtual keyboard 812. In some embodiments, the compose bar 814 can be expanded (e.g., expanded upward) to accommodate longer messages or message objects (e.g., images, emoticons, special types of message objects such as payment objects). In some embodiments, the compose bar 814 includes a microphone button 814A that, when activated, enables the user to record a message using voice input.

[0365] like Figure 8A As shown, message conversation 808 includes two visual message objects 816 and 818. Message object 816 corresponds to a message sent by message participant 810 to the user, and message object 818 corresponds to a message sent by the user to message participant 810. In message object 816, message participant 810 states to the user: "I had a lot of fun last night. Pay me back when you can." In message object 818, the user asks message participant 810: "How much do I owe you?"

[0366] Figure 8BA message object 818 is shown in the message conversation 808 of the messaging application 806, corresponding to a newly received message from a message participant 810 to the user, the newly received message responding to the user's question, "How much do I owe you?" Specifically, in the message object 818, the message participant 810 ...

Claims

1. A method for an electronic device, the method comprising: At the electronic device having a display, a security element and one or more wireless communication radio components: pre-configuring a group account on the electronic device using the secure element of the device; communicating a request for a quantity of one type of item to a plurality of participants in a messaging session using the one or more wireless communication radios; After pre-configuring the group account on the electronic device using the secure element of the device: adding a quantity of a type of item received from a first participant of the plurality of participants to the group account, and adding to the group account an amount of the item of the type received from a second participant of the plurality of participants; receiving a request to transmit credentials for the group account; as well as In response to receiving the request to transmit credentials for the group account: Receive authentication information; transmitting, via the one or more wireless communication radio components, credentials for the group account based on a determination that the authentication information received at the device corresponds to enrollment authentication information; as well as Based on a determination that the authentication information received at the device does not correspond to enrollment authentication information, transmitting the credentials for the group account is foregone.

2. The method according to claim 1, further comprising: prior to preconfiguring the group account on the electronic device, displaying a message conversation of a messaging application on the display, wherein the message conversation includes the plurality of participants; and Preconfiguring the group account on the electronic device includes associating the multiple participants of the message conversation as members of the group account.

3. The method according to any one of claims 1 to 2, further comprising: In response to adding the amount of the item of the type received from the first of the plurality of participants to the group account, the first participant is associated as a member of the group account.

4. The method according to any one of claims 1 to 2, wherein: the amount of items of the type received from the first participant is equal to the requested amount of items of the type; and The amount of items of the type received from the second participant is equal to the requested amount of items of the type.

5. The method of any one of claims 1-2, wherein the amount of items of the type received from the first participant is different from the amount of items of the type received from the second participant.

6. The method according to any one of claims 1 to 2, further comprising: displaying the message conversation on the display before preconfiguring the group account; while displaying the message conversation, detecting a user selection of a group account affordance; as well as In response to detecting the user selection of the group account affordance, displaying on the display a group account creation user interface for configuring a plurality of parameters specified for the group account. 7 . The method of claim 6 , wherein a first parameter of the plurality of parameters of the group account is a representative image selected by a user of the group account. The method of claim 6 , wherein a second parameter of the plurality of parameters of the group account is a participant of the group account.

9. The method of claim 8, wherein the participants of the group account are automatically selected based on the plurality of participants of the messaging conversation. 10 . The method according to claim 6 , wherein a third parameter among the plurality of parameters of the group account is a template of the group account including a plurality of templates.

11. The method according to claim 10, further comprising: detecting a user selection of a template from the plurality of templates; as well as In response to detecting the user selection of the template: based on a determination that the selected template is a first template, enabling the first participant to use a certain amount of items of the type and prohibiting the second participant from using a certain amount of items of the type; as well as Based on a determination that the selected template is the second template, a certain amount of items of the type are made available to the first participant and the second participant.

12. The method of any of claims 1-2, wherein transmitting the request for the quantity of the item of the type to the plurality of participants comprises: An invitation message object is caused to be displayed in a corresponding messaging session of the second device, the invitation message object having an acceptance affordance for responding to the request and becoming a member of the group account.

13. The method according to claim 7, further comprising: A group account user interface is displayed on the display, wherein the group account user interface includes a first graphical representation of the group account and a second graphical representation of a second group account that is preconfigured on the electronic device and is different from the group account.

14. The method of claim 13, wherein the first graphical representation of the group account comprises: the representative image of the group account, an indication of said participant of said group account, an indication of the validity period of the group account, and An indication of the amount of available items in the group account.

15. The method according to any one of claims 1 to 2, further comprising: A details user interface associated with the group account is displayed on the display, wherein the details user interface includes an indication of an addition of the amount of the item of the type received from the first participant and an indication of a usage of an amount of the item of the type.

16. The method of claim 15, wherein transmitting the request for the quantity of the type of item to the plurality of participants comprises: transmitting the request for a quantity of items of the type to a third participant of the plurality of participants, the method further comprising: Based on a determination that the amount of the item of the type requested from the third participant has not been received from the third participant, an indication that items have not been received from the third participant is displayed in the details user interface.

17. The method according to any one of claims 1-2, wherein the electronic device comprises one or more input devices, the method further comprising: displaying on the display a user interface of an electronic wallet application, the user interface comprising a plurality of graphical representations of preconfigured accounts, wherein the plurality of representations of preconfigured accounts comprises a first graphical representation of the group account; detecting, via the one or more input devices, a user selection of the first graphical representation of the group account; as well as In response to detecting the user selection of the first graphical representation of the group account, a group account user interface is displayed on the display, wherein the group account user interface includes a second graphical representation of the group account.

18. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device having a display, a security element, and one or more wireless communication radio components, the one or more programs comprising instructions for performing the method according to any one of claims 1-17.

19. An electronic device, comprising: monitor; Safety elements; one or more wireless communication radio components; one or more processors; as well as A memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising instructions for executing the method according to any one of claims 1-17.

20. An electronic device, comprising: monitor; Safety elements; one or more wireless communication radio components; as well as Apparatus for performing the method according to any one of claims 1-17.

21. A computer program product comprising program code portions for implementing the method according to any one of claims 1 to 17 when the computer program product is run on one or more computing devices.

Citation Information

Patent Citations

  • System and method for inferring user intent from speech inputs

    US10176167B2

  • Method and apparatus for integrating manual input

    US20020015024A1

  • Acceleration-based theft detection system for portable electronic devices

    US20050190059A1

  • Methods and apparatuses for operating a portable device based on an accelerometer

    US20060017692A1

  • Gestures for touch sensitive input devices

    US20060026521A1