Device, method and graphical user interface for managing authentication credentials for user accounts

By automatically generating and filling passwords on electronic devices, identifying verification codes, and sharing identity verification credentials between devices, the user account management process is solved and the problem of cumbersome and power consumption is achieved, and more efficient and safer user account management is achieved.

CN120337201APending Publication Date: 2025-07-18APPLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510521327.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2018-06-03
Filing Date
2019-04-23
Publication Date
2025-07-18

AI Technical Summary

Technical Problem

In the prior art, the process of managing the identity verification credentials of a user's account is cumbersome and inefficient, especially on battery-driven devices, and it is difficult for users to remember multiple passwords and easily forget strong passwords or verification codes.

Method used

By automatically generating strong passwords on electronic devices and automatically filling them, identifying verification codes, and sharing authentication credentials between devices, reducing user input, and using touch-sensitive surfaces and display devices to provide fast and intuitive interface operations.

Benefits of technology

It improves the efficiency and security of user account management, reduces user cognitive burden, saves battery power of battery-driven devices, and simplifies password management process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120337201A_ABST
    Figure CN120337201A_ABST
Patent Text Reader

Abstract

The present disclosure relates to devices, methods, and graphical user interfaces for managing authentication credentials for a user account. In an embodiment, when a new password domain is detected, the domain is automatically populated with a strong password generated by the device without additional user input. An affordance for accepting or rejecting the use of the password is displayed. In an embodiment, when a one-time use code is received via text or email and a corresponding domain is displayed, the code is presented as a suggested word for insertion via an insertion affordance. In an embodiment, a first device (e.g., a telephone) receives an indication that a second device (e.g., a media player) needs an authentication credential. In response, the first device initiates a process for sharing the authentication credential. In an embodiment, password information is displayed by an electronic device in response to a speech request. For example, "displaying my bank password" causes related authentication credentials to be displayed.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the patent application with the application number 201980034292.1, the filing date of April 23, 2019, and the invention title of "Device, Method and Graphical User Interface for Managing Authentication Credentials of User Accounts". Technical Field

[0002] The present disclosure generally relates to electronic devices having a touch-sensitive surface, including but not limited to electronic devices having a touch-sensitive surface for managing authentication credentials of user accounts. Background Art

[0003] The use of touch-sensitive surfaces as input devices for computers and other electronic computing devices has grown significantly in recent years. Exemplary touch-sensitive surfaces include touchpads and touchscreen displays. Such surfaces are widely used to manipulate user interface objects on a display.

[0004] Exemplary manipulations include adjusting the position and / or size of one or more user interface objects, or activating a button or opening a file / application represented by a user interface object, as well as associating metadata with one or more user interface objects or otherwise manipulating the user interface. Exemplary user interface objects include digital images, videos, text, icons, control elements (such as buttons), and other graphics. In some cases, a user will need to perform such manipulations on user interface objects in the following: a file management program (e.g., Finder from Apple Inc. (Cupertino, California)); an image management application (e.g., Aperture, iPhoto, Photos from Apple Inc. (Cupertino, California)); a digital content (e.g., video and music) management application (e.g., iTunes from Apple Inc. (Cupertino, California)); a drawing application; a presentation application (e.g., Keynote from Apple Inc. (Cupertino, California)); a word processing application (e.g., Pages from Apple Inc. (Cupertino, California)); a website creation application (e.g., iWeb from Apple Inc. (Cupertino, California)); a disc editing application (e.g., iDVD from Apple Inc. (Cupertino, California)); or a spreadsheet application (e.g., Numbers from Apple Inc. (Cupertino, California)).

[0005] However, the methods for performing these manipulations are cumbersome and inefficient. For example, using a sequence of mouse-based inputs to select one or more user interface objects and perform one or more actions on the selected user interface objects is tedious and imposes a significant cognitive burden on the user. Additionally, these methods take longer than necessary, thus wasting energy. This latter consideration is particularly important in battery-powered devices. SUMMARY OF THE INVENTION

[0006] Accordingly, an electronic device is in need of faster and more efficient methods and interfaces for managing authentication credentials of user accounts. Such methods and interfaces optionally supplement or replace conventional methods for managing authentication credentials of user accounts. Such methods and interfaces reduce the cognitive burden imposed on the user and result in a more efficient human-machine interface. For battery-powered devices, such methods and interfaces can save power and increase the time between battery charges.

[0007] The above-described deficiencies and other problems associated with the user interface of an electronic device having a touch-sensitive surface can be reduced or eliminated by the disclosed device. In some embodiments, the device is a desktop computer. In some embodiments, the device is portable (e.g., a laptop computer, a tablet computer, or a handheld device). In some embodiments, the device has a touchpad. In some embodiments, the device has a touch-sensitive display (also referred to as a "touch screen" or "touch screen display"). In some embodiments, the device has a graphical user interface (GUI), one or more processors, memory, and one or more modules, a program or set of instructions stored in the memory for performing multiple functions. In some embodiments, the user interacts with the GUI primarily via a stylus and / or finger contacts and gestures on the touch-sensitive surface. In some embodiments, these functions optionally include image editing, drawing, rendering, word processing, web creation, disk editing, spreadsheet creation, playing games, making phone calls, video conferencing, sending and receiving emails, instant messaging, fitness support, digital photography, digital video recording, web browsing, digital music playing, and / or digital video playing. The executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.

[0008] According to some embodiments, a method is performed at an electronic device having a display device and one or more input devices. The method includes displaying, via the display device, a user interface including a new password field. The method includes detecting, via the one or more input devices, a user input corresponding to a selection of the new password field. In response to detecting the user input corresponding to the selection of the new password field, the method includes displaying, on the display device, a representation of a new automatically generated password in the new password field, and displaying, on the display device, an enabling representation to accept the new automatically generated password and an enabling representation to reject using the new automatically generated password.

[0009] According to some embodiments, a method is performed at an electronic device having a display device and one or more input devices. The method includes receiving, via the one or more input devices, a request to access a resource protected by a verification code. After receiving the request to access the resource, the method includes receiving an electronic message at the electronic device. After receiving the electronic message and when displaying, via the display device, a user interface for entering the verification code, the method includes: in accordance with determining that the electronic message includes content that meets corresponding criteria, where the corresponding criteria includes a format requirement that the electronic message includes content that matches a predetermined format, displaying an insertion enabling representation that, when selected, automatically inserts the content that matches the predetermined format as the verification code into the user interface.

[0010] According to some embodiments, a method is performed at a first electronic device having a display device and one or more input devices. The method includes receiving, at the first electronic device, an indication that a second electronic device requires authentication credentials for a service. In response to receiving the indication that the second electronic device requires authentication credentials for the service, in accordance with determining that the first electronic device meets corresponding criteria, where the corresponding criteria includes a requirement that the first electronic device is within a predetermined proximity to the second electronic device, the method includes, to meet the corresponding criteria, displaying, via the display device, a verification prompt that requests entering verification information from the second electronic device on the first electronic device to continue. When displaying the verification prompt, the method includes receiving, via the one or more input devices, the verification information from the second electronic device on the first electronic device. In response to receiving the verification information, the method includes initiating a process for sharing the authentication credentials for the service from the first electronic device to the second electronic device.

[0011] According to some embodiments, a method is performed at an electronic device having a display device and one or more input devices. The method includes detecting a verbal request for display password information via the one or more input devices. In response to receiving the verbal request for display password information, the method includes displaying the password of a first user account accessible to the device and displaying the password of a second user account accessible to the device based on determining that the request is for the password of the first user account and the user has been authenticated and based on determining that the request is for the password of the second user account and the user has been authenticated.

[0012] According to some embodiments, an electronic device includes a display device configured to display a user interface, one or more input devices configured to receive user input, and a processing device coupled to the display device and the one or more input devices. The processing device is configured to display, via the display device, a user interface including a new password field. The processing is configured to detect, via the one or more input devices, user input corresponding to a selection of the new password field. In response to detecting the user input corresponding to the selection of the new password field, the processing device is configured to display, on the display device, a representation of a new automatically generated password in the new password field and display, on the display device, an enabling representation to accept the new automatically generated password and an enabling representation to reject the use of the new automatically generated password.

[0013] According to some embodiments, an electronic device includes a display device configured to display a user interface, one or more input devices configured to receive user input, and a processing device coupled to the display device and the one or more input devices. The processing device is configured to receive, via the one or more input devices, a request to access a resource protected by a verification code. After receiving the request to access the resource, the processing device is configured to receive an electronic message at the electronic device. After receiving the electronic message and while displaying, via the display device, a user interface for entering the verification code, the processing device is configured to display, based on determining that the electronic message includes content that meets corresponding criteria, where the corresponding criteria includes a format requirement that the electronic message includes content matching a predetermined format, an insertion enabling representation that, when selected, automatically inserts the content matching the predetermined format as the verification code into the user interface.

[0014] According to some embodiments, a first electronic device includes a display device configured to display a user interface, one or more input devices configured to receive user input, and a processing device coupled to the display device and the one or more input devices. The processing device is configured to receive an indication at the first electronic device that authentication credentials for a service are needed by a second electronic device. In response to receiving the indication that authentication credentials for a service are needed by the second electronic device, and based on determining that the first electronic device meets corresponding criteria, where the corresponding criteria includes a requirement that the first electronic device is within a predetermined proximity of the second electronic device, the processing device is configured to, in order to meet the corresponding criteria, display, via the display device, a verification prompt that requests entry on the first electronic device of verification information from the second electronic device to proceed. When displaying the verification prompt, the processing device is configured to receive, via the one or more input devices, on the first electronic device, verification information from the second electronic device. In response to receiving the verification information, the processing device is configured to initiate a process for sharing the authentication credentials for the service from the first electronic device to the second electronic device.

[0015] According to some embodiments, a first electronic device includes a display device configured to display a user interface, one or more input devices configured to receive user input, and a processing device coupled to the display device and the one or more input devices. The processing device is configured to detect, via the one or more input devices, a verbal request to display password information. In response to receiving the verbal request to display password information, the processing device is configured to display the password of a first user account accessible to the device and based on determining that the request is for the password of the first user account accessible to the device and the user has been authenticated, and to display the password of a second user account accessible to the device and based on determining that the request is for the password of the second user account accessible to the device and the user has been authenticated.

[0016] According to some embodiments, an electronic device includes a display device, one or more input devices, one or more processors, non-transitory memory, and one or more programs; the one or more programs are stored in the non-transitory memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing or causing to perform the operations of any of the methods described herein. According to some embodiments, a non-transitory computer-readable storage medium has instructions stored therein that, when executed by one or more processors of an electronic device having a display device and one or more input devices, cause the electronic device to perform or cause to perform the operations of any of the methods described herein. According to some embodiments, a graphical user interface on an electronic device includes one or more of the elements displayed in any of the methods described above, wherein the electronic device has a display device, one or more input devices, memory, and one or more processors for executing one or more programs stored in the non-transitory memory, and the one or more elements are updated in response to input as described in any of the methods described herein. According to some embodiments, an electronic device includes: a display device, one or more input devices, and means for performing or causing to perform the operations of any of the methods described herein. According to some embodiments, an information processing apparatus used in an electronic device having a display device and one or more input devices includes means for performing or causing to perform the operations of any of the methods described herein.

[0017] Accordingly, an electronic device having a display device and one or more input devices is provided with faster and more efficient methods and interfaces for managing authentication credentials of user accounts, thereby enhancing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces may supplement or replace conventional methods for managing authentication credentials of user accounts. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] To better understand the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, in which like reference numerals indicate corresponding parts in all the drawings.

[0019] Figure 1A is a block diagram showing a portable multifunctional device having a touch-sensitive display in accordance with some embodiments.

[0020] Figure 1B is a block diagram showing exemplary components for event handling in accordance with some embodiments.

[0021] Figure 2 shows a portable multifunctional device having a touch screen in accordance with some embodiments.

[0022] Figure 3Block diagram of an exemplary multifunctional device having a display and a touch-sensitive surface, in accordance with some embodiments.

[0023] Figure 4A Exemplary user interface of an application menu on a portable multifunctional device, in accordance with some embodiments.

[0024] Figure 4B Exemplary user interface for a multifunctional device having a touch-sensitive surface separate from the display, in accordance with some embodiments.

[0025] Figures 5A to 5AD Exemplary user interface for generating a new password for a user account and inserting a verification code into the user interface, in accordance with some embodiments.

[0026] Figures 6A to 6H Exemplary user interface for sharing authentication credentials, in accordance with some embodiments.

[0027] Figures 7A to 7Y Exemplary user interface for displaying password information, in accordance with some embodiments.

[0028] Figures 8A to 8C Flowchart showing a method for generating a new password for a user account, in accordance with some embodiments.

[0029] Figures 9A to 9D Flowchart showing a method for inserting a verification code into a user interface, in accordance with some embodiments.

[0030] Figures 10A to 10C Flowchart showing a method for sharing authentication credentials, in accordance with some embodiments.

[0031] Figures 11A to 11C Flowchart showing a method for displaying password information, in accordance with some embodiments. DETAILED DESCRIPTION

[0032] As the number of service providers offering services (e.g., web services and mobile applications) increases, the number of user accounts associated with users also increases. Many user accounts are associated with authentication credentials (such as usernames and passwords) that are provided to access resources offered as part of the service. Many users have difficulty remembering a large number of username / password combinations. As a result, many users choose simple, weak, and / or insecure passwords or use the same password for many different user accounts, which also leads to a lack of security. When a user provides a password to log in to a user account on a new device, the user may easily forget a strong password or be required to enter additional authentication credentials in the form of a verification code.

[0033] Thus, in various embodiments, when an option to generate a new password for a user account is provided, the device automatically generates a strong new password. Additionally, the device stores the new password for easy retrieval via a verbal request. In various embodiments, the device shares the password (and / or other authentication credentials) with other devices and automatically recognizes the received verification codes.

[0034] Below, Figures 1A to 1B 、 Figure 2 and Figure 3 a description of an exemplary device is provided. Figures 4A to 4B 、 Figures 5A to 5AD 、 Figures 6A to 6H and Figures 7A to 7Y illustrate exemplary user interfaces for managing authentication credentials of a user account. Figure 8A In Figure 8C a flowchart of a method for generating a new password for a user account is shown. Figures 9A to 9D A flowchart of a method for inserting a verification code into a user interface is shown. Figures 10A to 10C A flowchart of a method for sharing authentication credentials according to some embodiments is shown. Figures 11A to 11C A flowchart of a method for displaying password information is shown. Figures 5A to 5AD 、 Figures 6A to 6H and Figures 7A to 7Y The user interfaces in Figures 8A to 8C 、 Figures 9A to 9D 、 Figures 10A to 10C and Figures 11A to 11C are used to illustrate the processes in

[0035] Exemplary Device

[0036] Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. Many specific details are set forth in the following detailed description in order to provide a thorough understanding of the various described embodiments. However, it will be apparent to one of ordinary skill in the art that the various described embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.

[0037] It will also be understood that, although in some instances the terms "first", "second", etc. are used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first contact could be termed a second contact, and similarly, a second contact could be termed a first contact, without departing from the scope of the various described embodiments. The first contact and the second contact are both contacts, but they are not the same contact unless the context otherwise clearly indicates.

[0038] The terms used in the description of the various embodiments herein are for the purpose of describing particular embodiments only and are not intended to be limiting. As used in the description of the various embodiments and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will also be understood that the terms "comprises", "comprises of", "including", and / or "comprising", when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0039] As used herein, depending on the context, the term "if" is optionally interpreted to mean "when" or "in response to determining" or "in response to detecting". Similarly, depending on the context, the phrase "if it is determined" or "if [the stated condition or event] is detected" is optionally interpreted to mean "when it is determined" or "in response to determining" or "when [the stated condition or event] is detected" or "in response to detecting [the stated condition or event]".

[0040] Embodiments of electronic devices, user interfaces for such devices, and related processes of 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 PDA and / or music player functions. Exemplary embodiments of the portable multifunctional device include, but are not limited to, devices from Apple Inc. (Cupertino, California) devices, iPod devices, devices, Apple devices and devices. Other portable electronic devices, such as a laptop computer or a tablet computer having a touch-sensitive surface (e.g., a touch screen display and / or a touchpad), are optionally used. It should also be understood that in some embodiments, the device is not a portable communication device, but a desktop computer having a touch-sensitive surface (e.g., a touch screen display and / or a touchpad).

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

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

[0043] The various applications executed 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 the corresponding information displayed on the device are optionally adjusted and / or varied for different applications, and / or within the respective applications. Thus, a common physical architecture of the device (such as a touch-sensitive surface) optionally supports a variety of applications with a user interface that is intuitive and clear to the user.

[0044] Attention is now turned to an embodiment of a portable device having a touch-sensitive display. Figure 1A FIG. is a block diagram of a portable multifunctional device 100 having a touch-sensitive display system 112 according to some embodiments. The touch-sensitive display system 112 is sometimes called a "touch screen" for convenience and is sometimes abbreviated as a touch-sensitive display. The device 100 includes a memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral device interface 118, an RF circuit 108, an audio circuit 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input or control devices 116, and an external port 124. The device 100 optionally includes one or more optical sensors 164. The device 100 optionally includes one or more intensity sensors 165 for detecting the intensity of contact on the device 100 (e.g., a touch-sensitive surface, such as the touch-sensitive display system 112 of the device 100). The device 100 optionally includes one or more tactile output generators 163 for generating tactile output on the device 100 (e.g., generating tactile output on a touch-sensitive surface such as the touch-sensitive display system 112 of the device 100 or the touchpad 355 of the device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0045] As used in this specification and the claims, the term "haptic output" refers to a physical displacement of a device relative to a previous position of the device detected by a user using the user's sense of touch, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device. For example, in the case of contact between the device or a component of the device and a surface of the user that is sensitive to touch (e.g., a finger, palm, or other part of the user's hand), the haptic output generated by the physical displacement will be interpreted by the user as a tactile sensation that corresponds to a perceived change in the physical characteristics of the device or the component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or a touchpad) may optionally be interpreted by the user as a "press click" or "release click" of 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 is physically depressed (e.g., displaced) by the user's movement does not move. As another example, movement of a touch-sensitive surface may optionally be interpreted or sensed by the user as "roughness" of the touch-sensitive surface even when there is no change in the smoothness of the touch-sensitive surface. Although such interpretations of touch by the user will be limited by the user's individual sensory perception, many sensory perceptions of touch are common to most users. Thus, when a haptic output is described as corresponding to a particular sensory perception of the user (e.g., "press click," "release click," "roughness"), unless otherwise stated, the generated haptic output corresponds to a physical displacement of the device or a component thereof that would generate the stated sensory perception of a typical (or average) user.

[0046] It should be understood that device 100 is only one example of a portable multifunctional device, and device 100 optionally has more or fewer components than shown, optionally combines two or more components, or optionally has a different configuration or arrangement of these components. Figure 1A The various components shown are implemented in hardware, software, firmware, or any combination thereof (including one or more signal processing circuits and / or application specific integrated circuits).

[0047] Memory 102 optionally includes high-speed random access memory and also optionally includes non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid state memory devices. Access to memory 102 by other components of device 100, such as CPU 120 and peripheral device interface 118, is optionally controlled by memory controller 122.

[0048] The peripheral device interface 118 can be used to couple the input and output peripheral devices of the device to the CPU 120 and the memory 102. 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.

[0049] 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 chip 104. In some other embodiments, they are optionally implemented on separate chips.

[0050] The RF (Radio Frequency) circuit 108 receives and transmits RF signals, which are also referred to as electromagnetic signals. The RF circuit 108 converts electrical signals into electromagnetic signals / converts electromagnetic signals into electrical signals, and communicates with a communication network and other communication devices via electromagnetic signals. The RF circuit 108 optionally includes well-known circuits 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, a memory, and so on. The RF circuit 108 optionally communicates with the network and other devices via wireless communication, and these networks are 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)). This wireless communication optionally uses any one 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, Wi-Fi (e.g., IEEE802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g, and / or IEEE802.11n), Voice over Internet Protocol (VoIP), WiMAX, 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 those not yet developed as of the date of submission of this document.

[0051] 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 interface 118, converts the audio data into an electrical signal, and transmits the electrical signal to the speaker 111. The speaker 111 converts the electrical signal into sound waves audible to humans. The audio circuit 110 also receives the electrical signal converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signal into audio data and transmits the audio data to the peripheral 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 interface 118. In some embodiments, the audio circuit 110 also includes an earphone jack (e.g., Figure 2 212 in

[0052] ). The earphone jack provides an interface between the audio circuit 110 and a removable audio input / output peripheral device, such as an output-only headset or an earphone with both an output (e.g., a mono or stereo earphone) and an input (e.g., a microphone). The I / O subsystem 106 couples input / output peripheral devices on the device 100, such as the touch-sensitive display system 112 and other input or control devices 116, to the peripheral interface 118. The I / O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, an intensity sensor controller 159, a haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive electrical signals from / transmit electrical signals to the other input or 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, one or more input controllers 160 are optionally coupled to (or not coupled to) any of the following: a keyboard, an infrared port, a USB port, a stylus, and / or a pointing device such as a mouse. One or more buttons (e.g., Figure 2 208 in Figure 2 ) optionally include up / down buttons for volume control of the speaker 111 and / or the microphone 113. One or more buttons optionally include push buttons (e.g., 206 in

[0053] ).The touch-sensitive display system 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives electrical signals from and / or transmits electrical signals to the touch-sensitive display system 112. The touch-sensitive display system 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output corresponds to user interface objects.

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

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

[0056] The touch-sensitive display system 112 optionally has a video resolution of more than 100 dpi. In some embodiments, the touchscreen video resolution exceeds 400 dpi (e.g., 500 dpi, 800 dpi or greater). The user optionally uses any suitable object or attachment such as a stylus, finger, etc. to contact the touch-sensitive display system 112. In some embodiments, the user interface is designed to work with finger-based contacts and gestures, which may not be as precise as stylus-based input due to the larger contact area of the finger on the touchscreen. In some embodiments, the device converts the finger-based rough input into an accurate pointer / cursor position or command for performing the action desired by the user.

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

[0058] The device 100 also includes a power system 162 for powering various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharge system, a power failure detection circuit, a power converter or inverter, a power status indicator (e.g., a light-emitting diode (LED)), and any other components associated with the generation, management, and distribution of power in a portable device.

[0059] The device 100 optionally also includes one or more optical sensors 164. Figure 1A An optical sensor coupled to the optical sensor controller 158 in the I / O subsystem 106 is shown. One or more optical sensors 164 optionally include a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. One or more optical sensors 164 receive light projected through one or more lenses from the environment and convert the light into data representing an image. In conjunction with the imaging module 143 (also called the camera module), one or more optical sensors 164 optionally capture still images and / or videos. In some embodiments, the optical sensor is located on the rear of the device 100 opposite to the touch-sensitive display system 112 on the front of the device, such that the touchscreen can be used as a viewfinder for still image and / or video image acquisition. In some embodiments, another optical sensor is located on the front of the device to acquire an image of the user (e.g., for selfies, for video conferencing when the user is viewing other video conferencing participants on the touchscreen, etc.).

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

[0061] Device 100 optionally further includes one or more proximity sensors 166. Figure 1A Shown is a proximity sensor 166 coupled to the peripheral device interface 118. Alternatively, the proximity sensor 166 is coupled to an input controller 160 in the I / O subsystem 106. In some embodiments, when the multifunctional device is placed near the user's ear (e.g., when the user is on a call), the proximity sensor turns off and disables the touch-sensitive display system 112.

[0062] Device 100 optionally further includes one or more haptic output generators 163. Figure 1A Shown is a haptic output generator coupled to a haptic feedback controller 161 in the I / O subsystem 106. The haptic output generator 163 optionally includes one or more electroacoustic devices such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other haptic output generating components (e.g., components that convert an electrical signal into a haptic output on the device). One or more haptic output generators 163 receive haptic feedback generation instructions from the haptic feedback module 133 and generate a haptic output on device 100 that can be felt by a user of device 100. In some embodiments, at least one haptic output generator is juxtaposed or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112), and optionally generates a haptic output by moving the touch-sensitive surface vertically (e.g., into / out of the surface of device 100) or laterally (e.g., backward and forward in the same plane as the surface of device 100). In some embodiments, at least one haptic output generator sensor is located on the rear of device 100 opposite the touch-sensitive display system 112 located on the front of device 100.

[0063] Device 100 optionally further includes one or more accelerometers 167, gyroscopes 168, and / or magnetometers 169 (e.g., as part of an Inertial Measurement Unit (IMU)) for obtaining information about the position (e.g., orientation) of the device. Figure 1A Sensors 167, 168, and 169 are shown coupled to the peripheral device interface 118. Alternatively, sensors 167, 168, and 169 are optionally coupled to the input controller 160 in the I / O subsystem 106. In some embodiments, information is displayed in a portrait or landscape view on the touchscreen display based on an analysis of data received from the one or more accelerometers. Device 100 optionally includes a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information about the position of device 100.

[0064] In some embodiments, the software components stored in the 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 haptic feedback module (or instruction set) 133, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and application programs (or instruction sets) 136. Additionally, in some embodiments, the memory 102 stores a device / global internal state 157, as shown in Figure 1A and Figure 3 shown. 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 the various regions of the touch-sensitive display system 112; a sensor state, including information obtained from the various sensors of the device and other input or control devices 116; and position and / or orientation information regarding the position and / or orientation of the device.

[0065] The operating system 126 (e.g., iOS, Darwin, RTXC, LINUX, UNIX, OS X, 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 facilitates communication between various hardware and software components.

[0066] 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 circuitry 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) are adapted to be directly coupled to other devices or indirectly coupled via a network (e.g., the Internet, a wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used in some iPod and devices of Apple Inc. (Cupertino, California). In some embodiments, the external port is a Lightning connector that is the same as, similar to, and / or compatible with the Lightning connector used in some iPod and devices of Apple Inc. (Cupertino, California).

[0067] The contact / motion module 130 optionally detects contacts with the touch-sensitive display system 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a touchpad or a physical click wheel). The contact / motion module 130 includes software components for performing various operations related to contact detection (e.g., with a finger or a stylus), such as determining whether a contact has occurred (e.g., detecting a finger press event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement on the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining whether the contact has stopped (e.g., detecting a finger lift event or contact break). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point optionally includes determining the rate (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point, the movement of which is represented by a series of contact data. These operations are optionally applied to single-point contacts (e.g., single-finger contact or stylus contact) or multi-point simultaneous contacts (e.g., "multi-touch" / multi-finger contact and / or stylus contact). In some embodiments, the contact / motion module 130 and the display controller 156 detect contacts on the touchpad.

[0068] The contact / motion module 130 optionally detects a user's gesture input. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and / or intensities of the detected contact). Thus, gestures are optionally detected by detecting a specific contact pattern. For example, detecting a single-finger tap gesture includes detecting a finger-down event and then detecting a finger-lift (lift-off) event at the same position (or substantially the same position) as the finger-down event (e.g., at the icon position). As another example, detecting a finger-swipe gesture on the touch-sensitive surface includes detecting a finger-down event, then detecting one or more finger-drag events, and subsequently detecting a finger-lift (lift-off) event. Similarly, taps, swipes, drags, and other gestures of a stylus are optionally detected by detecting a specific contact pattern of the stylus.

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

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

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

[0072] 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 (e.g., contacts 137, email 140, IM 141, browser 147, and any other application that requires text input).

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

[0074] The application 136 optionally includes the following modules (or instruction sets), or subsets or supersets thereof:

[0075] · Contact 4EBA module 137 (sometimes referred to as an address book or contact list);

[0076] · Phone module 138;

[0077] · Video conferencing module 139;

[0078] · Email client module 140;

[0079] · Instant messaging (IM) module 141;

[0080] · Fitness support module 142;

[0081] · Camera module 143 for still images and / or video images;

[0082] · Image management module 144;

[0083] · Browser module 147;

[0084] · Calendar module 148;

[0085] · Desktop applet module 149, which optionally includes one or more of the following: weather desktop applet 149-1, stock market desktop applet 149-2, calculator desktop applet 149-3, alarm clock desktop applet 149-4, dictionary desktop applet 149-5, and other desktop applets obtained by the user, as well as user-created desktop applet 149-6;

[0086] · Desktop applet creator module 150 for forming user-created desktop applet 149-6;

[0087] · Search module 151;

[0088] · Video and music player module 152 optionally composed of a video player module and a music player module;

[0089] · Notepad module 153;

[0090] · Map module 154; and / or

[0091] · Online video module 155.

[0092] Examples of other applications 136 that are optionally stored in the memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-supported applications, encryption, digital rights management, speech recognition, and speech replication.

[0093] In combination with the touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, the contacts module 137 includes executable instructions for managing an address book or contact list (e.g., the internal state 192 of the contacts module 137 application stored in the memory 102 or memory 370), including: adding a name to the address book; deleting a name from the address book; associating a phone number, email address, physical address, or other information with the name; associating an image with the name; categorizing and classifying the name; providing a phone number and / or email address to initiate and / or facilitate communication via the phone 138, video conference 139, email 140, or instant message 141; and so on.

[0094] In combination with the RF circuit 108, audio circuit 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, the phone module 138 includes executable instructions for: entering a character sequence corresponding to a phone number, accessing one or more phone numbers in the address book 137, modifying an entered phone number, dialing the corresponding phone number, conducting a session, and disconnecting or hanging up when the session is complete. As described above, wireless communication optionally uses any of a variety of communication standards, protocols, and technologies.

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

[0096] In combination with the RF circuit 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, the email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In combination with the image management module 144, the email client module 140 makes it very easy to create and send emails with static or video images captured by the camera module 143.

[0097] In combination with the RF circuitry 108, the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, and the text input module 134, the instant messaging module 141 includes executable instructions for performing the following operations: inputting a character sequence corresponding to an instant message, modifying a previously input character, sending 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, Apple Push Notification Service (APNs), or IMPS for Internet-based instant messaging), receiving instant messages, and viewing the 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 message" 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, APNs, or IMPS).

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

[0099] In combination with the touch-sensitive display system 112, the display controller 156, one or more optical sensors 164, the optical sensor controller 158, the contact module 130, the graphics module 132, and the image management module 144, the camera module 143 includes executable instructions for performing the following operations: capturing a still image or video (including a video stream) and storing them in the memory 102, modifying the characteristics of the still image or video, and / or deleting the still image or video from the memory 102.

[0100] In combination with the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, the text input module 134, and the camera module 143, the image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, tagging, deleting, presenting (e.g., in a digital slide show or album), and storing still images and / or video images.

[0101] In combination with the RF circuit 108, the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, and the text input module 134, the browser module 147 includes executable instructions for browsing the Internet according to user instructions (including searching, linking to, receiving, and displaying web pages or portions thereof, and linking to attachments and other files of web pages).

[0102] In combination with the RF circuit 108, the touch-sensitive display system 112, the display system controller 156, the contact 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 calendars and data associated with the calendars (e.g., calendar entries, to-do items, etc.) according to user instructions.

[0103] In combination with the RF circuit 108, the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the text input module 134, and the browser module 147, the widget module 149 is a miniature application (e.g., the weather widget 149-1, the stock market widget 149-2, the calculator widget 149-3, the alarm clock widget 149-4, and the dictionary widget 149-5) optionally downloaded and used by the user, or a miniature application created by the user (e.g., the user-created widget 149-6). In some embodiments, the widget includes an HTML (HyperText Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, the widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! widget).

[0104] In combination with the RF circuit 108, the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the text input module 134, and the browser module 147, the widget creator module 150 includes executable instructions for creating widgets (e.g., converting a user-specified portion of a web page into a widget).

[0105] In combination with the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, and the text input module 134, the search module 151 includes executable instructions for searching for text, music, sound, images, videos, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) according to user instructions.

[0106] In combination with the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the audio circuit 110, the speaker 111, the RF circuit 108, and the browser module 147, the 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, and executable instructions for displaying, presenting, or otherwise playing back video (e.g., on the touch-sensitive display system 112 or on an external display wirelessly connected via the external port 124). In some embodiments, the device 100 optionally includes the functionality of an MP3 player such as an iPod (a trademark of Apple Inc.).

[0107] In combination with the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, and the text input module 134, the notepad module 153 includes executable instructions for creating and managing notepads, to-do lists, etc. according to user instructions.

[0108] In combination with the RF circuit 108, the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the text input module 134, the GPS module 135, and the browser module 147, the map module 154 includes executable instructions for receiving, displaying, modifying, and storing maps and data associated with the maps (e.g., driving routes; data of stores and other points of interest at or near a specific location; and other location-based data) according to user instructions.

[0109] In combination with the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the audio circuit 110, the speaker 111, the RF circuit 108, the text input module 134, the email client module 140, and the browser module 147, the online video module 155 includes executable instructions that allow a user to access, browse, receive (e.g., by streaming and / or downloading), play back (e.g., on the touch screen 112 or on an external display wirelessly connected or connected via the external port 124), send an email with a link to a specific online video, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, the instant messaging module 141 is used instead of the email client module 140 to send a link to a specific online video.

[0110] Each of the above-identified modules and applications corresponds to a set of executable instructions for performing one or more of the above functions and the methods described in this application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (i.e., instruction sets) need not be implemented as separate software programs, procedures, or modules, so various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 optionally stores a subset of the above modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.

[0111] In some embodiments, device 100 is a device in which the operation of a predefined set of functions on the device is performed uniquely by a touch screen and / or a touchpad. By using the touch screen and / or the 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.

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

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

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

[0115] In some embodiments, the application internal state 192 includes additional information such as one or more of the following: recovery information to be used when the application 136-1 resumes execution, user interface state information indicating that information is being displayed or is ready for display 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 repeat / undo queue of previous actions taken by the user.

[0116] The event monitor 171 receives event information from the peripheral device interface 118. The event information includes information about sub-events (e.g., a user touch on the touch-sensitive display system 112 as part of a multi-touch gesture). The peripheral device interface 118 transmits the information it receives from the I / O subsystem 106 or sensors such as a proximity sensor 166, one or more accelerometers 167, one or more gyroscopes 168, one or more magnetometers 169, and / or a microphone 113 (via the audio circuit 110). The information received by the peripheral device interface 118 from the I / O subsystem 106 includes information from the touch-sensitive display system 112 or a touch-sensitive surface.

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

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

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

[0120] 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 view (of the corresponding application) in which a touch is detected optionally corresponds to a programmatic level within the programmatic or view hierarchy of the application. For example, the lowest-level view in which a touch is detected is optionally referred to as the hit view, and the set of events recognized as correct inputs is optionally determined at least in part based on the hit view of the initial touch that begins the touch-based gesture.

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

[0122] The 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, the active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, the active event recognizer determination module 173 determines that all views that include the physical location of the sub-event are actively participating views and thus 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 a particular view, higher views in the hierarchy will still remain as actively participating views.

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

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

[0125] In some embodiments, the application 136-1 includes a plurality of event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events occurring within a corresponding view of the application's user interface. Each application view 191 of the application 136-1 includes one or more event recognizers 180. Typically, a corresponding application view 191 includes a plurality of event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a stand-alone module that is a higher-level object such as a user interface toolkit or from which the application 136-1 inherits methods and other properties. In some embodiments, the corresponding event handlers 190 include 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 the event classifier 170. The event handlers 190 optionally utilize or call the data updater 176, the object updater 177, or the GUI updater 178 to update the application internal state 192. Alternatively, one or more of the application views 191 include one or more corresponding event handlers 190. Additionally, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in the corresponding application view 191.

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

[0127] The event receiver 182 receives event information from the event classifier 170. The event information includes information about sub-events such as a touch or a touch movement. Depending on the sub-event, the event information also includes additional information such as the location of the sub-event. When the sub-event involves 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).

[0128] The event comparator 184 compares the event information with predefined event or sub-event definitions and determines an event or sub-event based on the comparison, or determines or updates the state of an event or sub-event. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 contains definitions of events (e.g., predefined sequences of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, the sub-events in corresponding events such as event 1 (187-1) or event 2 (187-2) include, for example, touch start, touch end, touch movement, touch cancellation, and multi-touch. In one example, the definition of event 1 (187-1) is a double-tap on a displayed object. For example, a double-tap includes a first touch (touch start) of a predetermined duration on the displayed object, a first lift (touch end) of a predetermined duration, a second touch (touch start) of a predetermined duration on the displayed object, and a second lift (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, a drag includes a touch (or contact) of a predetermined duration on the displayed object, a movement of the touch on the touch-sensitive display system 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.

[0129] In some embodiments, the definition of a corresponding event, such as Event 1 (187-1) or Event 2 (187-2), includes the definition of the event of the corresponding user interface object. In some embodiments, the event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view that displays three user interface objects on the touch-sensitive display system 112, when a touch is detected on the touch-sensitive display system 112, the event comparator 184 performs a hit test to determine which one of the three user interface objects is associated with the touch (sub-event). If each of the displayed objects 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, the event comparator 184 selects the event handler associated with the sub-event and the object that triggered the hit test.

[0130] In some embodiments, the definition of a corresponding event, such as Event 1 (187-1) or Event 2 (187-2), further includes a delayed action that delays the delivery of event information until it has been determined that the sub-event sequence does in fact correspond to, or does not correspond to, the event type of the event recognizer.

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

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

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

[0134] In some embodiments, the event delivery instruction 188 includes a sub-event delivery instruction that delivers event information about the sub-event without activating the event handler. Instead, the sub-event delivery instruction delivers the event information to the event handler associated with the sub-event sequence or to the actively participating views. The event handler associated with the sub-event sequence or with the actively participating views receives the event information and executes a predetermined process.

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

[0136] In some embodiments, the event handler 190 includes the data updater 176, the object updater 177, and the GUI updater 178 or has access to them. In some embodiments, the data updater 176, the object updater 177, and the 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.

[0137] It should be understood that the above discussion regarding event handling of user touches on a touch-sensitive display also applies to other forms of user input for operating the multifunctional device 100 using an input device, and not all user input is initiated on the touch screen. For example, mouse movement and mouse button presses optionally in cooperation with single or multiple keyboard presses or holds; contact movement on a touchpad, such as tapping, dragging, scrolling, etc.; stylus input; movement of the device; verbal instructions; detected eye movement; biometric input; and / or any combination thereof are optionally used as input corresponding to sub-events that define the events to be recognized.

[0138] Figure 2 A portable multifunctional device 100 having a touch screen (e.g., Figure 1A a touch-sensitive display system 112) is shown in accordance with some embodiments. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In this and other embodiments described below, a user can select one or more of these graphics by making gestures on the graphics using, for example, one or more fingers 202 (not drawn to scale in the figures) or one or more styli 203 (not drawn to scale in the figures). In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, up, and / or down), and / or 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, inadvertently contacting a graphic does not select the graphic. For example, when the gesture corresponding to selection is a tap, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application.

[0139] 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 of a set of applications optionally executed on the device 100. As an alternative, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen display.

[0140] In some embodiments, device 100 includes a touch screen display, menu buttons 204, a depress button 206 for powering 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 depress button 206 is optionally used to power the device on / off by depressing the button and holding the button in the depressed state for a predefined time interval; lock the device by depressing the button and releasing the button before the predefined time interval has elapsed; and / or unlock the device or initiate an unlocking process. In some embodiments, device 100 also accepts voice input for activating or deactivating certain functions via microphone 113. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of contacts on the touch-sensitive display system 112, and / or one or more tactile output generators 163 for generating tactile output for a user of device 100.

[0141] Figure 3 is a block diagram of an exemplary multifunctional device having a display and a touch-sensitive surface according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a children's learning toy), a gaming system, or a control device (e.g., a home controller or an industrial controller). Device 300 generally 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. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects system components and controls communication between system components. Device 300 includes an input / output (I / O) interface 330 having a display 340, which is typically a touch screen display. I / O interface 330 also optionally includes a keyboard and / or a mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 for generating tactile output on device 300 (e.g., similar to one or more of the tactile output generators 163 described above with reference to Figure 1A as described above), sensors 359 (e.g., similar to one or more of the sensors described above with reference to Figure 1AThe touch-sensitive sensors, optical sensors, contact intensity sensors, proximity sensors, acceleration sensors, attitude and / or magnetic sensors of the sensors 112, 164, 165, 166, 167, 168, and 169). The memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDRRAM, or other random access solid-state memory devices; and optionally includes non-volatile memory, such as one or more disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. The memory 370 optionally includes one or more storage devices located remote from the CPU 310. In some embodiments, the memory 370 stores programs, modules, and data structures similar to those stored in the memory 102 of the portable multifunctional device 100( Figure 1A ), or subsets thereof. Additionally, the memory 370 optionally stores additional programs, modules, and data structures not present in the memory 102 of the portable multifunctional device 100. For example, the memory 370 of the 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 the memory 102 of the portable multifunctional device 100( Figure 1A ) optionally does not store these modules.

[0142] Figure 3 Each of the elements identified above is optionally stored in one or more of the memory devices mentioned previously. Each of the modules identified above corresponds to an instruction set for performing the functions described above. The modules or programs (i.e., instruction sets) identified above need not be implemented as separate software programs, processes, or modules, so various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, the memory 370 optionally stores subsets of the above modules and data structures. Additionally, the memory 370 optionally stores additional modules and data structures not described above.

[0143] Attention is now turned to embodiments of a user interface ("UI") optionally implemented on the portable multifunctional device 100.

[0144] Figure 4A An exemplary user interface of an application menu on the portable multifunctional device 100 according to some embodiments is shown. A similar user interface is optionally implemented on the device 300. In some embodiments, the user interface 400 includes the following elements or subsets or supersets thereof:

[0145] · A signal strength indicator 402 for wireless communications such as cellular signals and Wi-Fi signals;

[0146] · Time 404;

[0147] · Bluetooth indicator 405;

[0148] · Battery status indicator 406;

[0149] · Tray 408 with icons for common applications, such as:

[0150] o Icon 416 marked "Phone" for phone module 138, which optionally includes an indicator 414 of the number of missed calls or voicemails;

[0151] o Icon 418 marked "Mail" for email client module 140, which optionally includes an indicator 410 of the number of unread emails;

[0152] o Icon 420 marked "Browser" for browser module 147; and

[0153] o Icon 422 marked "iPod" for video and music player module 152 (also known as the iPod (trademark of Apple Inc.)

[0154] Module 152); and

[0155] · Icons for other applications, such as:

[0156] o Icon 424 marked "Text" for IM module 141;

[0157] o Icon 426 marked "Calendar" for calendar module 148;

[0158] o Icon 428 marked "Photos" for image management module 144;

[0159] o Icon 430 marked "Camera" for camera module 143;

[0160] o Icon 432 marked "Online Video" for online video module 155;

[0161] o Icon 434 marked "Stock Market" for stock market desktop widget 149-2;

[0162] o Icon 436 marked "Maps" for maps module 154;

[0163] o Icon 438 marked "Weather" for weather desktop widget 149-1;

[0164] o Icon 440 marked "Clock" for alarm desktop widget 169-6;

[0165] o An icon 442 marked as "Fitness Support" of the fitness support module 142;

[0166] o An icon 444 marked as "Notepad" of the notepad module 153; and

[0167] o An icon 446 for setting the application or module, which provides access to the settings of the device 100 and its various applications 136.

[0168] It should be noted that Figure 4A The icon labels shown are merely exemplary. For example, in some embodiments, the icon 422 of the video and music player module 152 is marked as "Music" or "Music Player". Other labels are optionally used for various application icons. In some embodiments, the label of the corresponding application icon includes the name of the application corresponding to the corresponding application icon. In some embodiments, the label of a specific application icon is different from the name of the application corresponding to the specific application icon.

[0169] Figure 4B An exemplary user interface on a device (e.g., device 300 in

[0170] ) having a touch-sensitive surface 451 separate from the display 450 (e.g., a tablet or touchpad 355 in Figure 3 ) is shown. The device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of the sensors 359) for detecting the intensity of contact on the touch-sensitive surface 451 and / or one or more tactile output generators 359 for generating a tactile output for the user of the device 300. Figure 3 Figure 3

[0170] Figure 4B Figure 3 Figure 3 An exemplary user interface on a device (e.g., device 300 in Figure 3 ) having a touch-sensitive surface 451 separate from the display 450 (e.g., a tablet or touchpad 355 in Figure 3 ) is shown. Although many subsequent examples will be given with reference to input on a touch screen display 112 (where the touch-sensitive surface and the display are combined), in some embodiments, the device detects input on a touch-sensitive surface separate from the display, as shown in Figure 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in Figure 4B ) has a major axis corresponding to the major axis (e.g., 453 in Figure 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with the touch-sensitive surface 451 at a position corresponding to a corresponding position on the display (e.g., Figure 4B ). Figure 3 Figure 3 Figure 4B Figure 4B Figure 4B Figure 4B Figure 4B ​​​​​​460 and 462 in) (e.g., in Figure 4B , 460 corresponds to 468 and 462 corresponds to 470). Thus, when the touch-sensitive surface (e.g., Figure 4B 451 in) is separate from the display of the multifunctional device (e.g., Figure 4B 450 in), user input detected by the device on the touch-sensitive surface (e.g., contacts 460 and 462 and their movement) is used by the device to manipulate the user interface on the display. It should be understood that a similar approach is optionally used for other user interfaces described herein.

[0171] Additionally, although the following examples are mainly given with reference to finger input (e.g., finger contact, single-finger tap gesture, finger swipe gesture, etc.), 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 a contact), followed by movement of the cursor along the swipe path (e.g., instead of movement of a contact). As another example, a tap gesture is optionally replaced by a mouse click when the cursor is above the location of the tap gesture (e.g., instead of detecting a 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 a mouse and a finger contact are optionally used simultaneously.

[0172] As used herein, the term "focus selector" refers to an input element that is used to indicate the current portion of the user interface with which the user is interacting. In some embodiments that include a cursor or other position marker, the cursor serves as the "focus selector" such that when an input (e.g., a press input) is detected on the touch-sensitive surface (e.g., Figure 3 the touchpad 355 in or Figure 4B the touch-sensitive surface 451 in) above a particular user interface element (e.g., a button, window, slider, or other user interface element), that particular user interface element is adjusted in accordance with the detected input. In embodiments that include a touchscreen display that enables direct interaction with user interface elements on the touchscreen display (e.g., Figure 1A the touch-sensitive display system 112 in or Figure 4AIn some embodiments of a touch screen (e.g., a touch screen in a touch screen display), a contact detected on the touch screen acts as a "focus selector" such that when an input (e.g., a press input by a 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 embodiments, the focus moves from one area of the user interface to another area of the user interface without a 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 embodiments, the focus selector moves according to the movement of the focus between different areas of the user interface. Regardless of the specific form taken by the focus selector, the focus selector is typically a user interface element (or contact on the touch screen display) that is controlled by the user to convey the user's desired 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 desires to activate the corresponding button (rather than other user interface elements shown on the device display).

[0173] User Interface and Associated Processes

[0174] Attention now turns to embodiments of a user interface (“UI”) and associated processes that may be implemented on an electronic device such as portable multifunction device (PMD) 100 or device 300 having a display, a touch-sensitive surface, and one or more sensors for detecting intensity of contact with the touch-sensitive surface.

[0175] Figures 5A to 5K An exemplary user interface for generating a new password for a user account is shown in accordance with some embodiments. Figures 5L to 5AD An exemplary user interface for inserting a verification code into a user interface is shown in accordance with some embodiments. Figures 6A to 6H An exemplary user interface for sharing authentication credentials in accordance with some embodiments is shown. Figures 7A to 7Y 2 shows an exemplary user interface for displaying password information according to some embodiments. The user interface in these figures is used to illustrate the process described below, including Figures 8A to 8C , Figures 9A to 9D , Figures 10A to 10C and Figures 11A to 11C Although some of the examples that follow will be given with reference to input on a touch screen display (where the touch-sensitive surface and display are combined), in some embodiments, the device detects input on a touch-sensitive surface 451 that is separate from the display 450, such as Figure 4B as shown in .

[0176] Figure 5A Shows a browser user interface 502 that is part of a user interface 500 displayed by a portable multifunctional device 100 (hereinafter referred to as "device 100"). In addition to the web browser user interface 502, the user interface 500 also includes a device bar 501 located at the top of the display, which includes an identifier of the device 100 (e.g., "iPhone"), a wireless connection indicator, the current time, and a battery indicator indicating the charging level of the device 100.

[0177] Below the device bar 501 and spanning the remainder of the display, the user interface 500 includes a web browser user interface 502. The web browser user interface 502 includes an address bar 521 and a content area 522. The address bar 521 includes the address (e.g., URL) of the web page with the content displayed in the content area 522. The address bar 521 also includes a reload enabling representation that, when selected, reloads the content of the web page in the content area 522. In Figure 5A it, the address bar 521 displays the address of the home page of the service.

[0178] In Figure 5A it, the content displayed in the content area 522 includes an image (of Apple), a registration enabling representation 531A, and a sign-in enabling representation 531B. The registration enabling representation 531A, when selected, allows a user to register for the service, e.g., create a user account for the service in order to access resources (e.g., content) protected by the authentication credentials of the user account. The sign-in enabling representation 531B, when selected, allows a user to provide authentication credentials to access the resources of the service.

[0179] Figure 5A Shows a contact 550A detected at the location of the registration enabling representation 531A.

[0180] Figure 5B Shows the user interface 500 in response to detecting the contact 550A at the location of the registration enabling representation 531A Figure 5A of. In Figure 5B it, the address bar 521 includes the address of the registration page of the web service. In Figure 5B it, the content area 522 includes an image (of Apple), a plurality of fields 532A - 532D for receiving text input, text respectively associated with the plurality of fields 532A - 532D and describing the plurality of fields, and a complete registration enabling representation 531C, which, when selected, creates a user account using the authentication credentials input into the plurality of fields 532A - 532D.

[0181] The multiple fields 532A - 532D include a new username field 532A for receiving a text input indicating a username to be associated with a user account. The multiple fields 532A - 532D include a phone number field 532B for receiving a text input indicating a phone number (e.g., the phone number of device 100 and / or the user) to be associated with the user account. The multiple fields 532A - 532D include a new password field 532C for receiving a text input indicating a password to be associated with the user account. The multiple fields 532A - 532D include a password confirmation field 532D for receiving a text input that matches the password entered into the new password field 532C.

[0182] Figure 5B A contact 550B detected at the location of the new username field 532A is shown.

[0183] Figure 5C The user interface 500 in response to detecting the contact 550B at the location of the new username field 532A is shown. Figure 5B In response to detecting a selection of the new username field 532A, the content area 522 includes a cursor 533 displayed in the new username field 532A. Additionally, the user interface 500 includes a soft keyboard 503A having a plurality of character insertion enabling representations that, when selected, insert the corresponding character into the selected field. The soft keyboard 503A includes a navigation area 541. The navigation area 541 includes a previous enabling representation (indicated by an upward arrow) that, when selected, selects the cursor 533 and moves the cursor to the previous field; a next enabling representation (indicated by a downward arrow) that, when selected, selects the cursor 533 and moves the cursor to the next field; and a done enabling representation (indicated by text displayed as "Done") that, when selected, deselects the selected field and stops displaying the cursor 533 and the soft keyboard 503A.

[0184] The soft keyboard 503A includes a text suggestion area 542 that includes text suggestion enabling representations indicating suggested text, and the text suggestion enabling representations, when selected, insert the suggested text into the selected field.

[0185] Figure 5C A contact 550C at the location of one of the plurality of character insertion enabling representations of the soft keyboard 503A is shown.

[0186] Figure 5DShows a user interface 500 in response to detecting a contact 550C at the position of one of the character insertion enable representations among the multiple character insertion enable representations (and additional contacts at other character insertion enable representations in the character insertion enable representations) to complete the insertion of the username "jappleseed" in the new username field 532A). Figure 5C of the user interface 500.

[0187] Figure 5D Shows a contact 550D detected at the position of the phone number field 532B.

[0188] Figure 5E Shows a user interface 500 in response to detecting a contact 550D at the position of the phone number field 532B. Figure 5D of the user interface 500. In response to detecting a selection of the phone number field 532B, a cursor 533 is displayed in the phone number field 532B. Additionally, the soft keyboard 503A is replaced by a numeric soft keyboard 503B having a plurality of character insertion enable representations that, when selected, insert corresponding numeric characters into the selected field. Similar to the soft keyboard 503A, the numeric soft keyboard 503B includes a navigation area 541 and a text suggestion area 542.

[0189] Figure 5E Shows a contact 550E detected at the position of one of the character insertion enable representations among the multiple character insertion enable representations.

[0190] Figure 5F Shows a user interface 500 in response to detecting a contact 550E at the position of one of the character insertion enable representations among the multiple character insertion enable representations (and additional contacts at other character insertion enable representations in the character insertion enable representations) to complete the insertion of the phone number "(408) 555 - 1234" in the phone number field 532B). Figure 5E of the user interface 500.

[0191] Figure 5F Shows a contact 550F detected at the position of the new password field 532C.

[0192] Figure 5G1 Shows a user interface 500 in response to detecting a contact 550F at the position of the new password field 532C. Figure 5FA first embodiment of the user interface 500. In response to detecting a selection of the new password field 532C, the display of the cursor 533 is stopped. Thus, the cursor 533 is not displayed in the new password field 532C. Instead, a representation of the automatically generated password is displayed in the new password field 532C (and the password confirmation field 532D). Additionally, the numeric soft keyboard 503B is replaced by a new password user interface 503C (also referred to as a "password keyboard" or "password soft keyboard"). In various embodiments, the new password user interface 503C is displayed at the bottom of the display (e.g., at the same location as the soft keyboard 503A and / or the numeric soft keyboard 503B).

[0193] In various embodiments, the automatically generated password is generated by the device 100 based on one or more password constraints of the user interface (e.g., including at least a threshold number of characters, at least one uppercase letter, at least one digit, and / or at least one special character). In various embodiments, the device 100 determines one or more password constraints based on the text in the content area 522 of the user interface 500 and / or other information provided by the service.

[0194] The new password user interface 503C includes text 544, which includes a description of the new automatically generated password and instructions for retrieving the new automatically generated password. For example, the text 544 indicates that the new automatically generated password has been automatically generated and meets the password strength requirements. The text 544 indicates that the new automatically generated password will be saved by the device 100 and can be accessed by the user, for example, via a verbal request as further described below.

[0195] The new password user interface 503C includes an acceptance enabling representation 543A for accepting the new automatically generated password, and a rejection enabling representation 543B for rejecting the use of the new automatically generated password. A secondary rejection enabling representation 543BB for rejecting the use of the new automatically generated password is displayed separately from the new password user interface 503C, specifically, next to the representation of the new automatically generated password in the new password field 532C.

[0196] In response to a selection of a specific field, the device 100 determines whether to display the soft keyboard 503A (as Figure 5C shown), the numeric soft keyboard 503B (as Figure 5Eas shown) or a new password user interface 503C. In various embodiments, the device 100 uses domain detection and classification algorithms to determine the type of the domain. In various embodiments, the device 100 classifies the domain based on one or more of the following: (1) text associated with the content in the content area 522 of the user interface 500, or (2) the number of domains in the content area 522 of the user interface 500. For example, in response to detecting a domain located next to text including the word "password" and in response to detecting "register" or "sign up" in the text in the content area 522, the device classifies the domain as a new password domain (and displays the new password user interface 503C). In contrast, in response to detecting a domain located next to text including the word "password" and in response to detecting "login" or "log in" in the text in the content area 522, the device classifies the domain as a password domain (and displays the soft keyboard 503A for receiving user input of the password or automatically inserting a known password into the password domain). As another example, in response to detecting two domains in the content area 522, where one domain is located next to text including the word "password", the device 100 classifies the domain as a password domain for logging into a user account. In contrast, in response to detecting more than two domains in the content area 522, where one domain is located next to text including the word "password", the device classifies the domain as a new password domain for creating a user account. Similarly, in response to detecting at least two domains in the content area 522, where two domains are located next to text including the word "password", the device 100 classifies the first domain as a new password domain and the second domain as a password confirmation domain.

[0197] In Figure 5G1 it, the representation of the newly auto-generated password displayed in the new password domain 532C is the newly auto-generated password itself. Figure 5G2 illustrates a second embodiment of the user interface 500 in response to detecting a contact 550F at the location of the new password domain 532C, which Figure 5F differs from Figure 5G1 in that the representation of the newly auto-generated password displayed in the new password domain 532C (and the password confirmation domain 532D) is a generic password indicator, e.g., a series of asterisks or bullets. Figure 5G3 illustrates a third embodiment of the user interface 500 in response to detecting a contact 550F at the location of the new password domain 532C, which Figure 5F differs from Figure 5G1The difference is that the representation of the newly auto-generated password shown in the new password field 532C (and the password confirmation field 532D) is part of the newly auto-generated password, and indicates that a part of the newly auto-generated password is not shown. For example, the visibility of the newly auto-generated password decreases along its length by fading. In some embodiments, the newly auto-generated password is shown in a concealed manner (e.g., "Y2v’GS…").

[0198] Figure 5G3 Contact 550G detected at the position of the reject enable indication 543B is shown.

[0199] Figure 5H The user interface 500 in response to detecting contact 550G at the position of the reject enable indication 543B (or in various embodiments, contact at the position of the auxiliary reject enable indication 543BB) is shown. Figure 5G3 Upon detecting a selection of the reject enable indication 543B, the new password user interface 503C (including the accept enable indication 543A and the reject enable indication 543B) is replaced by the soft keyboard 503A including a plurality of character insertion enable indications. Further, the cursor 533 is shown in the new password field 532C.

[0200] In various embodiments (as Figure 5H shown), upon detecting a selection of the reject enable indication 543B, the representation of the newly auto-generated password ceases to be shown. Thus, by using the soft keyboard 503A, the user can input a password created and / or selected by the user. In various embodiments, the representation of the newly auto-generated password remains shown. Thus, by using the soft keyboard 503A, the user can edit the newly auto-generated password according to the user's preference or to meet the requirements for the new password, e.g., the requirement of not using specific characters (e.g., question mark or asterisk).

[0201] Figure 5I The user interface 500 in which contact 550H is detected at the position of the accept enable indication 543A (instead of contact 550G at the position of the reject enable indication 543B) is shown. Figure 5G3 The user interface 500 is shown.

[0202] Figure 5J The user interface 500 in response to detecting contact 550H at the position of the accept enable indication 543A is shown. Figure 5I Upon detecting a selection of the accept enable indication 543A, the new password user interface 503C (including the accept enable indication 543A and the reject enable indication 543B) ceases to be shown.

[0203] Figure 5JShows contact 550I detected at the location of the completion registration affordance representation 531C.

[0204] Figure 5K Shows the user interface 500 in response to detecting contact 550I at the location of the completion registration affordance representation 531C. Figure 5J In Figure 5K the address bar 521 includes the address of the completion registration page of the service. In Figure 5K the content area 522 includes an image (of an apple), text indicating the completion of the registration process, and a home affordance representation 531D, which when selected returns the web browser user interface 502 to the home page of the web service.

[0205] Figure 5K Shows contact 550J detected at the location of the home affordance representation 531D.

[0206] Figure 5L Shows the user interface 500 in response to detecting contact 550J at the location of the home affordance representation 531D. Figure 5K In Figure 5K the address bar 521 includes the address of the home page, and the content displayed in the content area 222 includes an image (of an apple), a registration affordance representation 531A, and a sign-in affordance representation 531B.

[0207] Figure 5L Shows contact 550K detected at the location of the sign-in affordance representation 531B.

[0208] Figure 5M Shows the user interface 500 in response to detecting contact 550K at the location of the sign-in affordance representation 531B. Figure 5L In Figure 5M the address bar 521 includes the address of the sign-in page of the service. In Figure 5M the content area 522 includes an image (of an apple), a plurality of fields 532E - 532F for receiving text input, text respectively associated with and describing the plurality of fields 532E - 532F, and a continue sign-in affordance representation 531E, which when selected requests access to the resources of the service based on the authentication credentials input into the plurality of fields 532E - 532F.

[0209] The plurality of fields 532E - 532F includes a username field 532E for receiving text input indicating a username associated with an existing user account. The plurality of fields 532E - 532F includes a password field 532F for receiving text input indicating a password associated with the user account. In Figure 5MIn [the above situation], the user name field 532E and the password field 532F have been automatically filled based on the detection and classification of fields 532E - 532F and the authentication credentials stored by device 100.

[0210] Figure 5M A contact 550L is shown at the position where the continue login affordance 531E is continued.

[0211] Figure 5N Shown is the Figure 5M user interface 500 in response to detecting the contact 550L at the position where the continue login affordance 531E is continued. In Figure 5N [the above situation], the address bar 521 includes the address of the authentication page of the service. In Figure 5N [the above situation], the content area 522 includes an image (of an apple), a verification code field 532G for receiving text input, text respectively associated with and describing the verification code field 532G, and another continue login affordance 531F, which, when selected, requests access to the resources of the service based on the authentication credentials, specifically the verification code, input into the verification code field 532G. The content area 522 also includes a request code affordance 531G, which, when selected, requests that an electronic message including the verification code be sent to the user, for example, as a text message sent to Figure 5E the phone number provided in

[0212] Figure 5O Shown is the Figure 5N user interface 500 after the device 100 has received the electronic message. In response to receiving the electronic message, a message notification 561A is displayed. The message notification 561A includes text indicating the source of the electronic message (e.g., phone number "987 - 66") and preview text previewing the content of the electronic message.

[0213] Figure 5O A contact 550M is shown at the position of the message notification 561A.

[0214] Figure 5P Shown is the Figure 5OThe user interface 500. The user interface 500 includes a navigation bar 505 below the device bar 501. The navigation bar includes a back enable representation 506 that, when selected, returns to the web browser user interface 502. Below the navigation bar 505 and spanning the remainder of the display, the user interface 500 includes a text messenger user interface 504. The text messenger user interface 504 includes a contacts bar 562 and a content area 563. The contacts bar 562 includes text indicating the source of the content displayed in the content area 563. The contacts bar 562 also includes a back enable representation (indicated by "<") that, when selected, displays a list of contact enable representations for accessing content (e.g., SMS text messages) provided by the corresponding contacts. The contacts bar 562 also includes an info enable representation (circled "i") that, when selected, provides information about the source of the content displayed in the content area 563.

[0215] The content area 563 includes a message window 564 that includes the content of an electronic message received from the source. In the message window 564, the content of the text message that meets the corresponding criteria is displayed in a different manner than the rest of the content (e.g., emphasized). Specifically, in Figure 5P the content of the text message that meets the corresponding criteria is displayed with an underline, while the rest of the content is not underlined. In various embodiments, the content of the text message that meets the corresponding criteria is displayed in a different color (e.g., blue) than the rest of the content (e.g., black). In various embodiments, the corresponding criteria include email format requirements where the content matches the email format (e.g., includes characters before the at symbol ("@") and characters after the at symbol). In various embodiments, the corresponding criteria include phone number format requirements where the content matches the phone number format (e.g., includes at least a threshold number of numeric characters). In various embodiments, the corresponding criteria include verification code format requirements where the content matches the verification code format (e.g., a numeric or alphanumeric value such as 123456 or ab3d5f is very close to a keyword or short word group indicating the presence of a security code, such as "password", "verification code", "2FA", "is your <service name> code", or "to confirm your account").

[0216] Figure 5P A contact 550N is shown detected at the location of the content in the message window 564 that meets the phone number format requirements.

[0217] Figure 5Q The user interface 500 is shown in response to detecting the contact 550N at the location of the content in the message window 564 that meets the phone number format requirements. In Figure 5P theFigure 5Q In [description], the user interface 500 includes a phone call window 565A, which includes: text indicating a phone number; a call enabling representation 566A that, when selected, causes the device 100 to make a phone call to the phone number; and a cancellation enabling representation 566B that, when selected, ignores the phone call window 565A.

[0218] Figure 5Q A contact 550O detected at the position of the cancellation enabling representation 566B is shown.

[0219] Figure 5R The user interface 500 in response to detecting the contact 550O at the position of the cancellation enabling representation 566B is shown. In Figure 5Q [description], the display of the phone call window 565A is stopped. Figure 5R In [description], the display of the phone call window 565A is stopped.

[0220] Figure 5R A contact 550P at the position of the content in the message window 564 that meets the verification code format requirements is shown.

[0221] Figure 5S The user interface 500 in response to detecting the contact 550P at the position of the content in the message window 564 that meets the verification code format requirements is shown. In Figure 5R [description], the user interface 500 includes a verification code window 565B, which includes: text indicating the verification code; a copy enabling representation 566C that, when selected, causes the device 100 to store the verification code in the cache (e.g., copy the verification code to the clipboard); and a cancellation enabling representation 566D that, when selected, ignores the verification code window 565B. Figure 5S In [description], the user interface 500 includes a verification code window 565B, which includes: text indicating the verification code; a copy enabling representation 566C that, when selected, causes the device 100 to store the verification code in the cache (e.g., copy the verification code to the clipboard); and a cancellation enabling representation 566D that, when selected, ignores the verification code window 565B.

[0222] Figure 5S A contact 550P detected at the position of the copy enabling representation 566C is shown.

[0223] Figure 5T The user interface 500 in response to detecting the contact 550P at the position of the copy enabling representation 566C is shown. In Figure 5T [description], the display of the verification code window 565B is stopped.

[0224] Figure 5T A contact 550Q detected at the position of the return enabling representation 506 is shown.

[0225] Figure 5U1 The user interface 500 in response to detecting the contact 550Q at the position of the return enabling representation 506 is shown. In Figure 5U1In [context], the text messaging user interface 504 is replaced by Figure 5N the web browser user interface 502 of Figure 5U1 This is different from Figure 5N in that (not shown) the device 100 has received an electronic message and has stored the verification code in the cache (e.g., copied the verification code to the clipboard).

[0226] This is different from Figure 5O in that Figure 5U2 shows another embodiment of the user interface 500 after an electronic message has been received by the device 100. Figure 5N In response to receiving the electronic message, a message notification 561B is displayed. The message notification 561B includes text indicating the source of the electronic message (e.g., the phone number "987-66") and preview text previewing the content of the electronic message. In response to detecting that the content of the electronic message meets the corresponding criteria including the verification code format requirements, the message notification 561B further includes: a copy enable representation 561C, which when selected, causes the device 100 to store the verification code in the cache (e.g., copy the verification code to the clipboard); and a read enable representation 561D, which when selected, ignores the message notification 561B.

[0227] Figure 5U2 shows a contact 550R detected at the position of the copy enable representation 561C.

[0228] Figure 5U3 shows the user interface 500 in response to detecting the contact 550R at the position of the copy enable representation 561C. Figure 5U2 of Figure 5U3 The user interface 500 of Figure 5U1 is the same as the user interface 500 of

[0229] Figure 5U3 shows a contact 550S detected at the position of the verification code field 532G.

[0230] Figure 5V shows the user interface 500 in response to detecting the contact 550S at the position of the verification code field 532G. Figure 5U3 (or similarly, Figure 5U1 ) of. In response to detecting the selection of the verification code field 532G, a cursor 533 is displayed in the verification code field 532G. In addition, the user interface 500 includes a numeric soft keyboard 503B.

[0231] In response to including text stored in the cache (e.g., copied to the clipboard), the user interface 500 includes a paste enable representation 534, which when selected, inserts the text stored in the cache into the selected field.

[0232] Figure 5V Shows contact 550T detected at the location where the paste affordance 534 is represented.

[0233] Figure 5W Shows the Figure 5V user interface 500 in response to detecting contact 550 at the location where the paste affordance 534 is represented. In Figure 5W the verification code from the cache has been inserted into the verification code field 532G.

[0234] Figure 5W Shows contact 550U detected at the location where the continue login affordance 531F is represented.

[0235] Figure 5X Shows the Figure 5W user interface 500 in response to detecting contact 550U at the location where the continue login affordance 531F is represented. In Figure 5X the address bar 521 includes the address of the content page of the service. In Figure 5X the content area 522 includes resources protected by authentication credentials (potentially including the verification code) provided by the service.

[0236] Compared with Figure 5O Figure 5Y shows another embodiment of the user interface 500 after the device 100 receives an electronic message. In response to receiving the electronic message, a message notification 561A is displayed. The message notification 561A includes text indicating the source of the electronic message (e.g., phone number "987 - 66") and preview text previewing the content of the electronic message. Figure 5N

[0237] Although Figure 5O shows contact 550M at the location of the message notification 561A, while Figure 5Y shows contact 550V at the location of the verification code field 532G.

[0238] Figure 5Z shows the Figure 5Y user interface in response to detecting contact 550V at the location of the verification code field 532G. In response to detecting the selection of the verification code field 532G, a cursor 533 is displayed in the verification code field 532G. In addition, the user interface 500 includes a numeric soft keyboard 503B. The numeric soft keyboard 503B includes a navigation area 541 and a text suggestion area 542. According to the corresponding criteria being met, the text suggestion area 542 includes an insert affordance 545 that, when selected, automatically inserts the verification code into the verification code field 532G. Although Figure 5ZThe digital soft keyboard 503B is shown, but in various embodiments, the insertion enable indication 545 is displayed in the text suggestion area 542 above the soft keyboard 503A, the handwriting recognition user interface, or other user input areas.

[0239] In various embodiments, the corresponding criteria include the requirement that the electronic message includes content that meets the verification code format requirements. In various embodiments, the corresponding criteria include the timing requirement of displaying the user interface within a predetermined time period from when the electronic message is received. Thus, in various embodiments, the insertion enable indication is displayed only for a limited time (e.g., three minutes) from when the electronic message is received. In various embodiments, the corresponding criteria include the feature requirement that the user interface includes a text input field having predetermined features. In various embodiments, the corresponding criteria include the selection requirement for selecting the text input field. For example, when the selected field is classified as a verification code field (e.g., based on an analysis or metadata of the fields provided by the service), the insertion enable indication 545 is displayed. Also, the insertion enable indication 545 is displayed only when the selected field is not otherwise classified as, for example, a username, password, email address, phone number, credit card number, address, multi-line input field, etc.

[0240] In various embodiments, the insertion enable indication 545 includes an indication of the application through which the electronic message is received. For example, in Figure 5Z , the insertion enable indication 545 indicates the text messaging application ("Messages"). In other embodiments, the insertion enable indication indicates the email application or the chat application. In various embodiments, the insertion enable indication 545 includes an indication of the sender of the electronic message. For example, in Figure 5Z , the insertion enable indication indicates the phone number ("987 - 66"). In other embodiments, the insertion enable indication indicates the name of the service, e.g., "Apple Fun". In some embodiments, the indication of the application or the indication of the sender is not displayed together with the other.

[0241] Figure 5Z Contact 550W is shown at the location of the insertion enable indication in the text suggestion area 542.

[0242] Figure AA shows the user interface 500 in response to detecting contact 550W at the location of the insertion enable indication 545. Figure 5Z In Figure 5AA , the verification code has been inserted into the verification code field 532G.

[0243] In various embodiments, directly from Figure 5Y the user interface to Figure 5AAa user interface 500 without the need to select an insert affordance 545. Thus, in various embodiments, in response to determining that an electronic message includes content that meets a corresponding criterion, device 100 automatically inserts the content as a verification code into the user interface.

[0244] Compared with Figure 5O in Figure 5AB shows another embodiment of the user interface 500 after an electronic message has been received by device 100 Figure 5N . Compared with Figure 5O in

[0245] Compared with Figure 5O in Figure 5AC shows another embodiment of the user interface 500 after an electronic message has been received by device 100 Figure 5N . In response to receiving the electronic message, a message notification 561F is displayed. The message notification 561F includes text indicating the source of the electronic message (e.g., contact name "Gary") and preview text previewing the content of the electronic message. Compared with Figure 5O in

[0246] Figure 5AC shows a contact 550X at the location of the verification code field 532G.

[0247] Figure 5AD shows the user interface 500 in response to detecting a contact 550X at the location of the verification code field 532G Figure 5AC . In response to detecting a selection of the verification code field 532G, the content area 522 includes a cursor 533 displayed in the verification code field 532G. In addition, the user interface 500 includes a soft keyboard 503A having a plurality of character insert affordances that, when selected, insert characters into the selected field. The soft keyboard 503A includes a navigation area 541 and a text suggestion area 542 that includes text suggestion affordances indicating suggested text, and that, when selected, insert the suggested text into the selected field. In Figure 5AD compared with Figure 5ZIn contrast, the text suggestion area 542 does not include an insertion enabling representation 545 for inserting a verification code because the electronic message displayed in the message notification 561F of Figure 5AC does not include a verification code.

[0248] Figure 6A An operating environment 600 including a first electronic device 610, a second electronic device 620, and a third electronic device 630 is shown. The first electronic device 610 corresponds to a portable electronic device, such as the portable electronic device 100 of FIG. 1 or Figure 3 the device 300 of

[0249] The second user interface 622 includes a plurality of enabling representations that, when selected, open an application or provide media content via the second user interface 622. In Figure 6A , the application enabling representation 623 among the plurality of enabling representations is selected.

[0250] Figure 6A A contact 650A detected on the touch-sensitive input device 631 when the application enabling representation 623 is selected is shown.

[0251] Figure 6B The operating environment 600 in response to detecting the contact 650A on the touch-sensitive input device 631 when the application enabling representation 623 is selected is shown. In Figure 6A , the second user interface 622 includes a home screen of a service, and the home screen includes an image (of Apple), a registration enabling representation 624A, and a login enabling representation 624B. The registration enabling representation 624A, when selected, allows a user to register for the service, for example, create a user account to access resources (such as content) protected by the authentication credentials of the user account. The login enabling representation 624B, when selected, allows a user to provide authentication credentials to access the resources of the service. In Figure 6B , the login enabling representation 624B is selected. Figure 6B A contact 650B detected on the touch-sensitive input device 631 when the login enabling representation 624B is selected is shown.

[0252] Figure 6B

[0253] Figure 6C ​shows an operating environment 600 in response to detecting a contact 650B on the touch-sensitive input device 631 when the sign-in enable representation 624B is selected. Figure 6B In Figure 6C , the second user interface 622 includes a sign-in screen for the service, the sign-in screen including an image (of Apple), a user name field 625A for receiving a text input indicating a user name associated with an existing user account, and a password field 625B for receiving a text input indicating a password associated with the user account. The second user interface 622 includes a continue sign-in enable representation 624C that, when selected, requests access to resources of the service based on authentication credentials input into the fields 625A - 625B.

[0254] In Figure 6C , the second electronic device 620 transmits an indication to the first electronic device 610 that the second electronic device 620 requires authentication credentials (e.g., user name and password) for the service.

[0255] Figure 6D shows the first electronic device 610 in response to receiving the indication that the second electronic device 620 requires authentication credentials for the service. In Figure 6D , the first user interface 612 includes a device bar 501 and an application launcher user interface 507. The application launcher user interface 507 includes multiple representations of applications installed on the first electronic device 610 arranged in a grid. Before the application launcher user interface 507 (or any other currently displayed user interface), the first user interface 612 includes a sharing confirmation window 640.

[0256] The sharing confirmation window 640 includes text describing the indication that the second electronic device 620 requires authentication credentials for the service. In various embodiments, the text includes an indication of the service (e.g., "Apple Fun"). In various embodiments, the text generally indicates that the second electronic device 620 requires authentication credentials for the service (e.g., "Johnny's Apple TV is requesting a password"). The sharing confirmation window 640 includes a sharing confirmation enable representation 641 that, when selected, allows sharing of credentials between the first electronic device 610 and the second electronic device 620, as further described below. The sharing confirmation window 640 includes a sharing cancellation enable representation 642 that, when selected, does not allow sharing of credentials between the first electronic device 610 and the second electronic device 620.

[0257] In various embodiments, based on determining that the first electronic device 610 is within a pre-determined proximity to the second electronic device 620, a sharing confirmation window 640 is displayed on the first electronic device 610. In various embodiments, the pre-determined proximity is the distance to the nearest device. In various embodiments, the pre-determined proximity is a pre-determined range. In various embodiments, based on determining that the first electronic device 610 is within a pre-determined proximity to a third electronic device 630 associated with the second electronic device 620, a sharing confirmation window 640 is displayed on the first electronic device 610. In various embodiments, the pre-determined proximity is the distance to the nearest device. In various embodiments, the pre-determined proximity is a pre-determined range.

[0258] Figure 6D A contact 650C detected at the location of the sharing confirmation enablement indication 641 is shown.

[0259] Figure 6E An operation environment 600 in response to detecting the contact 650C at the location of the sharing confirmation enablement indication 641 is shown. Figure 6C In Figure 6E the second user interface 622 displays verification information, for example, an authorization code. In Figure 6E the first user interface 612 displays a verification prompt that requests information from the second electronic device 620 (e.g., the verification information displayed by the second electronic device 620) to be entered on the first electronic device 610 in order to proceed. Specifically, the verification prompt is used to establish a secure connection between the first electronic device 610 and the second electronic device 620. The verification prompt includes a plurality of numeric character enablement indications for entering information from the second electronic device 620 (e.g., the verification information displayed by the second electronic device 620). In various embodiments, the verification prompt includes a soft keyboard (such as the soft keyboard 503B) or other input user interface.

[0260] Figure 6E A contact 650D at the location of one of the plurality of numeric character enablement indications is shown.

[0261] Figure 6FShows a first electronic device 610 in response to detecting a contact 650D at the position of one of the plurality of numeric character enabling representations and other contacts corresponding to verification information from a second electronic device 620. The first user interface 612 includes a device bar 501 and a service selection user interface 508. The service selection user interface 508 includes a list of service enabling representations 661A - 661G, which are respectively associated with a plurality of services, user accounts of those services, and authentication credentials of those user accounts. The service selection user interface 508 includes a search field 662 for receiving text input and searching the plurality of services based on the text input.

[0262] In Figure 6F it, the list of service enabling representations 661A - 661G is sorted at least in part based on the relevance of the corresponding service. Specifically, the second electronic device 620 indicates a need for authentication credentials of a service, and that service is listed at the top of the list of service enabling representations 661A - 661G.

[0263] Figure 6F Shows a contact 650E detected at the position of the first service enabling representation 661A in the list of service enabling representations 661A - 661G.

[0264] Figure 6G Shows the Figure 6E operating environment 600 in response to detecting a contact 650E at the position of the first service enabling representation 661A. In Figure 6G it, in the second user interface 622, a username field 625A and a password field 625B are filled with authentication credentials received from the first electronic device 610. Additionally, a sign - in enabling representation 624C is selected. In the first user interface 612, a completion sharing window 643 is displayed, which includes a notification indicating that the authentication credentials have been shared with the second electronic device 620.

[0265] Figure 6G Shows a contact 650F detected on a touch - sensitive input device 631 when the continue sign - in enabling representation 624C is selected.

[0266] Figure 6H Shows the Figure 6G operating environment 600 in response to detecting a contact 650F on a touch - sensitive input device 631 when the continue sign - in enabling representation 624C is selected. In Figure 6H it, the second user interface 622 includes a content screen of the service.

[0267] Figure 7AShows an application launcher user interface 707 that is part of a user interface 700 displayed by a portable multifunctional device 100 (hereinafter referred to as "device 100"). In addition to the application launcher user interface 507, the user interface 700 also includes a device bar 701 located at the top of the display, which includes an identifier of the device 100 (e.g., "iPhone"), a wireless connection indicator, the current time, and a battery indicator indicating the charging level of the device 100.

[0268] Below the device bar 701 and spanning the remainder of the display, the user interface 700 includes the application launcher user interface 707. The application launcher user interface 707 includes multiple representations of applications installed on the device 100, including a settings representation 710. As Figure 7A shown, each representation includes an icon associated with the corresponding application and text describing the application (e.g., the name or function of the application). As the application launch user interface 707, in response to detecting user input at a specified location of a representation of a particular application, the device 100 launches that particular application.

[0269] Although Figure 7A shows the application launch user interface 707 in the form of a home screen, in various embodiments, the application launch user interface 707 is a task bar or a file manager. Additionally, although Figure 7A only shows a single page of the home screen, in various embodiments, the application launcher user interface 707 includes multiple pages.

[0270] Figure 7A Shows a contact 750A detected at the location of the settings representation 710.

[0271] Figure 7B Shows the user interface 700 in response to detecting the contact 750A at the location of the settings representation 710 Figure 7A In response to detecting the contact 750A at the location of the settings representation 710, the application launcher user interface 707 is replaced by a general settings user interface 704. The general settings user interface 704 includes multiple settings enabling representations 725A - 725F, and the multiple settings enabling representations include a connectivity management enabling representation 725A, a display management enabling representation 725B, a sound management enabling representation 725C, a storage management enabling representation 725D, a power management enabling representation 725E, and a password management enabling representation 725F. In various embodiments, the general settings user interface 704 may include additional, fewer, or other settings enabling representations.

[0272] Figure 7BShows contact 750B detected at the location of the password management enablement representation 725F.

[0273] Figure 7C Shows the Figure 7B user interface 700 in response to detecting contact 750B at the location of the password management enablement representation 725F. In response to detecting contact 750B at the location of the password management enablement representation 725F, the general settings user interface 704 is generally replaced by the password management user interface 703. The password management user interface 703 includes a password list enablement representation 726A that, when selected, displays a list of user accounts with their corresponding associated authentication credentials. The password management user interface 703 includes a list of account enablement representations 726B - 726D that, when selected, provide information and configurable settings for the corresponding user account in the user account list. The password management user interface 703 includes an add account enablement representation 726E that, when selected, allows the user to add a user account to the user account list. The password management user interface 703 includes an extraction settings enablement representation 726F that, when selected, allows the user to select extraction settings for extracting data from the user account.

[0274] Figure 7C Shows contact 750C at the location of the password list enablement representation 726A.

[0275] Figure 7D Shows the user interface 700 in response to detecting contact 750C at the location of the password list enablement representation 726A. In Figure 7D it, the password management user interface 703 is replaced by the password list user interface 708. The password list user interface 708 includes a list of user account enablement representations 727A - 727G that are respectively associated with multiple user accounts for corresponding multiple services and the authentication credentials of those user accounts. Some of the user account enablement representations 727A, 727C, 727G include an alert marker 781 that indicates that the password associated with the corresponding user account is the same as the password associated with one or more other user accounts.

[0276] In various embodiments, a switch enablement indication is provided that allows a user to switch the display of the alert marker 781. Additionally, in some embodiments, even when two user accounts have the same password, when the two user accounts are determined to be affiliated and share authentication credentials, the alert marker 781 is not shown in either user account enablement indication. For example, if facespace.com and hotels4less.com are affiliated, e.g., owned by the same entity and / or known to use the same authentication credentials, the alert marker 781 is not shown in either user account enablement indication 727E - 727F.

[0277] The password list user interface 708 includes a search field 729 for receiving text input and searching the plurality of user accounts based on the text input. The password list user interface 708 includes a return enablement indication 728A for returning to the password management user interface 703.

[0278] Figure 7D Contact 750D detected at the location of the fourth user account enablement indication 727D is shown.

[0279] Figure 7E A user interface 700 in response to detecting contact at the location of the fourth user account enablement indication 727D is shown. In Figure 7E it, the password list user interface 708 is replaced by a password details user interface 709A for the first user account of the first service. The password details user interface 709A includes a username enablement indication 730A and a password enablement indication 730B. The username enablement indication includes text indicating the username associated with the first user account of the first service, and the password enablement indication includes text indicating the password associated with the first user account. The password details user interface 709A includes text indicating the website 731A associated with the first service. The password details user interface 709A includes a return enablement indication 728B for returning to the password list user interface 708.

[0280] ​ A lock screen user interface 705 shown as part of a user interface 700 displayed by a portable multifunctional device 100 (hereinafter referred to as "device 100") is shown. In addition to the lock screen user interface 705, the user interface 700 also includes a device bar 701 at the top of the display. The device bar includes an identifier of the device 100 (e.g., "iPhone"), a wireless connection indicator, the current time, and a battery indicator indicating the charging level of the device 100. In various embodiments, the lock screen user interface 705 is displayed when the device 100 is in a locked state.

[0281] ​Shows a detected contact 750E moving upward from a position near the bottom of the display.

[0282] ​ Shows the user interface 700 in response to detecting the contact 750E moving upward from a position near the bottom of the display. ​ In ​ An authentication-in-progress window 741 is displayed, which indicates that an authentication process for authenticating the user is being performed. In various embodiments, the authentication process includes receiving authentication information and authenticating the user based on the authentication information. In various embodiments, the authentication information is the user's biometric, such as one or more facial features or fingerprints. Thus, in various embodiments, the authentication information is received via a camera (e.g., a depth camera) or a fingerprint sensor. In various embodiments, the authentication information is a passphrase or password provided by the user. Thus, in various embodiments, the provided authentication information is received via a touch-sensitive surface.

[0283] ​ Shows the user interface 700 in response to authenticating the user. ​ In ​ The authentication-in-progress window 741 is replaced by an authenticated window 742.

[0284] Figure 7I Shows the user interface 700 after unlocking the device (e.g., placing the device 100 in an unlocked state) in response to authenticating the user. Figure 7H In Figure 7I The lock screen user interface 705 is replaced by an application launcher user interface 707.

[0285] Figure 7I Shows a verbal request 751A detected by the device 100. In various embodiments, the verbal request 751A is displayed as part of the user interface 700. In various embodiments, the verbal request 751A is not displayed. In Figure 7I In

[0286] Figure 7J Shows the user interface 700 in response to detecting the verbal request 751A to display the password information of the first user account. Figure 7I In Figure 7JIn this, an authentication in - progress window 741 is displayed, and this authentication in - progress window indicates that an authentication process for authenticating a user is being performed. Thus, in various embodiments, even when the device 100 is in an unlocked state, the authentication process is performed before the password information is displayed. As described above, in various embodiments, the authentication process includes receiving authentication information and authenticating the user based on the authentication information. In various embodiments, the authentication information suitable for unlocking the device (e.g., a password) is not suitable for displaying the password information, which may, for example, require more secure authentication information (e.g., the user's biometric). However, in various embodiments, the authentication information suitable for displaying the password information includes a password (e.g., if biometric authentication fails or is not configured).

[0287] Figure 7K Shows a user interface 700 in response to authenticating a user Figure 7J In Figure 7K this, the authentication in - progress window 741 is replaced by an authenticated window 742.

[0288] Figure 7L Shows a user interface 700 in response to authenticating a user and in response to a verbal request 751A Figure 7K In Figure 7L this, the application launcher user interface 705 is replaced by a password details user interface 709A.

[0289] Figure 7L Shows a contact 750F detected at the position of the password - enabled representation 730B.

[0290] Figure 7M Shows a user interface 700 in response to detecting a contact 750F at the position of the password - enabled representation 730B Figure 7L In response to detecting a contact 750F at the position of the password - enabled representation 730B, the user interface 700 includes a copy - enabled representation 732A and a share - enabled representation 732B. The copy - enabled representation, when selected, stores the password associated with the first user account in a cache (e.g., copies the password to the clipboard), and the share - enabled representation, when selected, initiates a process for sharing the password (and / or other authentication credentials) associated with the first user account.

[0291] Figure 7M Shows a contact 750G detected at the position of the share - enabled representation 732B.

[0292] Figure 7N Shows a user interface 700 in response to detecting a contact 750G at the position of the share - enabled representation 732B Figure 7MUser interface 700. In Figure 7N User interface 700 includes a recipient selection card 733, which includes a plurality of recipient enabling representations 734A - 734C. When the plurality of recipient enabling representations are selected, a process for sharing the password (and / or other authentication credentials) associated with the first user account with the corresponding recipient is initiated. In various embodiments, the recipient selection card 733 includes recipient enabling representations of nearby devices. In various embodiments, the recipient selection card 733 includes recipient enabling representations of contacts stored by the device 100.

[0293] In various embodiments, the device 100 displays verification information (e.g., a character sequence and / or a visual pattern) that is required to be input into the device 100 (e.g., via a keyboard or a camera for a visual pattern) before sharing the password (and / or other authentication credentials) with the recipient device. In various embodiments, the recipient device displays verification information (e.g., a character sequence and / or a visual pattern) that is required to be input into the device 100 (e.g., via a keyboard or a camera for a visual pattern) before sharing the password (and / or other authentication credentials) with the recipient device. Examples of requiring the input of verification information from one device into another device were described above with reference to Figures 6A to 6H Examples of requiring the input of verification information from one device into another device were described above with reference to

[0294] Compared with Figure 7I In Figure 7O Another embodiment of the user interface 700 after the device is unlocked (e.g., the device 100 is placed in an unlocked state) in response to authenticating the user is shown. In Figure 7H User interface 700 after the device is unlocked (e.g., the device 100 is placed in an unlocked state) in response to authenticating the user is shown. In Figure 7O The lock screen user interface 705 is replaced by the application launcher user interface 707.

[0295] Figure 7O A speech request 751B detected by the device 100 is shown. In various embodiments, the speech request 751B is displayed as part of the user interface 700. In various embodiments, the speech request 751B is not displayed. In Figure 7O The speech request 751B is a speech request to display the password information of the second user account.

[0296] Figure 7P Another embodiment of the user interface 700 in response to authenticating the user and in response to the speech request 751B is shown. In Figure 7O User interface 700 in response to authenticating the user and in response to the speech request 751B is shown. In Figure 7PIn [description], the application launcher user interface 705 is replaced by the password details user interface 709B of the second user account of the second service. The password details user interface 709B includes a username enablement representation 730C and a password enablement representation 730D. The username enablement representation includes text indicating the username associated with the second user account of the second service, and the password enablement representation includes text indicating the password associated with the second user account. The password details user interface 709B includes text indicating a website 731B associated with the second service. The password details user interface 709B includes a return enablement representation 728B for returning to the password list user interface 708.

[0297] The password details user interface 709B includes an alert 735 indicating that the password associated with the second user account is the same as the passwords associated with one or more other accounts. The alert 735 includes a modify password enablement representation 736, which, when selected, displays a resource for modifying the password of the second account, such as a web page or an application. In various embodiments, the modify password enablement representation 736 links to a general web page / application, while in various embodiments, the modify password enablement representation 736 links to the password modification user interface of a web page / application. In some embodiments, multiple services place the password modification user interface under a commonly named path, e.g., ".well-known / change-password", and the modify password enablement representation 736 links to that path.

[0298] Figure 7P A contact 750H detected at the location of the modify password enablement representation 736 is shown.

[0299] Figure 7Q The user interface 700 in response to detecting the contact 750H at the location of the modify password enablement representation 736 is shown. Figure 7P of Figure 7Q In [description], the password details user interface 709B is replaced by a web browser user interface 702 that includes a user interface for modifying the password of the second user account.

[0300] Compared with Figure 7I in [description], Figure 7R Another embodiment of the user interface 700 after unlocking the device (e.g., putting the device 100 in an unlocked state) in response to authenticating the user is shown. Figure 7H In [description], Figure 7R the lock screen user interface 705 is replaced by the application launcher user interface 707.

[0301] Figure 7RShows the speech request 751C detected by the device 100. In various embodiments, the speech request 751C is shown as part of the user interface 700. In various embodiments, the speech request 751C is not shown. In Figure 7R In, the speech request 751C is a speech request that displays general password information.

[0302] Figure 7S Shows the user interface 700 in response to authenticating the user and in response to the speech request 751C Figure 7O of. In Figure 7S In, the application launcher user interface 707 is replaced by the password list user interface 708 (as described in detail above with respect to Figure 7D ).

[0303] Compared with Figure 7I In, Figure 7T Shows another embodiment of the user interface 700 after the device is unlocked in response to authenticating the user (e.g., placing the device 100 in an unlocked state). In Figure 7H In, the lock screen user interface 705 is replaced by the application launcher user interface 707. Figure 7T In,

[0304] Figure 7T Shows the speech request 751D detected by the device 100. In various embodiments, the speech request 751D is shown as part of the user interface 700. In various embodiments, the speech request 751D is not shown. In Figure 7T In, the speech request 751D is a speech request that displays the password information of the third user account.

[0305] Figure 7U Shows the user interface 700 in response to authenticating the user and in response to the speech request 751D Figure 7T of. Since the third user account is not one of the user accounts in the list of user accounts 727A - 727G, the application launcher user interface 707 is replaced by the password list user interface 708 (as described in detail above with respect to Figure 7D ) rather than the password detail user interfaces 709A - 709B. However, in Figure 7U In, the search field 729 is pre-populated based on the speech request, and the list of user accounts 727A - 727G is sorted based on the pre-population of the search field 729. In some embodiments, the list of user accounts is filtered based on the pre-population of the search field 729 such that user accounts that do not match the pre-population of the search field 729 are not shown.

[0306] Compared with Figure 7F In, Figure 7VShows a lock screen user interface 705 that is part of a user interface 700 displayed by a portable multifunctional device 100 (hereinafter referred to as "device 100").

[0307] Figure 7V Shows a speech request 751E detected by device 100. In various embodiments, speech request 751E is displayed as part of user interface 700. In various embodiments, speech request 751E is not displayed. In Figure 7V , speech request 751D is a speech request to display password information of a first user account.

[0308] Figure 7W Shows a Figure 7V user interface in response to detecting a speech request to display password information of a first user account. In Figure 7W , an authentication in progress window 741 is displayed, which indicates that an authentication process for authenticating the user is being executed.

[0309] Figure 7X Shows a Figure 7W user interface 700 in response to authenticating the user. In Figure 7X , the authentication in progress window 741 is replaced by an authenticated window 742.

[0310] Figure 7Y Shows a Figure 7X user interface 700 after unlocking the device (e.g., placing device 100 in an unlocked state) in response to authenticating the user and in response to speech request 751E. In Figure 7Y , the lock screen user interface 705 is replaced by a password details user interface 709A.

[0311] Figures 8A to 8C Shows a flowchart of a method 800 for generating a new password for a user account according to some embodiments. The method 800 is executed at an electronic device having a display device and one or more input devices (e.g., Figure 1A the portable multifunctional device 100 in Figure 3 or the device 300 in

[0312] As described below, method 800 provides an intuitive way to generate a new password for a user account. Method 800 reduces the cognitive burden on the user when generating a new password for a user account, thereby creating a more effective human-machine interface. For battery-powered electronic devices, enabling the user to generate a new password for the user account faster and more efficiently saves power and increases the time between battery charges.

[0313] The device displays (802) a user interface including a new password field on a display device. In various embodiments, the user interface includes a spreadsheet having a plurality of fields. For example, in Figure 5B , device 100 displays a web browser user interface 502 including a new password field 532C.

[0314] The device detects (804) user input corresponding to a selection of the new password field via the one or more input devices. In various embodiments, the user input includes a contact at the location of the new password field, a click when the cursor is at the location of the new password field, a tap on the new password field, or a selection of the next affordance when the fields are arranged in the order before selecting the new password field. For example, in Figure 5F , device 100 detects a contact 550F at the location of the new password field 532C. As another example, referring to Figure 5F , the user input corresponding to a selection of the new password field may include a contact at the location of the next affordance in the navigation area 541.

[0315] In some embodiments, detecting user input corresponding to a selection of the new password field includes determining that the selected field is the new password field (806) based on one or more of the number of fields of the user interface or the text associated with the user interface. For example, in Figure 5F , device 100 classifies the field selected by contact 550F as the new password field based on the text "Password" displayed next to the selected field, the text "Register" displayed in the address bar 521, the number of the plurality of fields 532A - 532D being greater than two, and / or the number of fields having the text "Password" displayed next to them being more than one. By determining that the selected field is the new password field (as opposed to a different type of field), the user interface provides different options in response to detecting different types of fields and thus provides an effective mechanism for the user to perform various different actions, thereby reducing the amount of user interaction for performing various actions. The reduction in user interaction reduces the wear and tear on the device. The reduction in user interaction also results in faster execution of various actions and thus reduces the power consumption for performing various actions, thereby extending the battery life of the device.

[0316] In response to detecting user input (808) corresponding to a selection of a new password field, the device displays (810) a representation of a newly auto-generated password in the new password field on a display device. Automatically generating a new password for a user account provides an efficient mechanism for generating a new password for the user account, thereby reducing the amount of user interaction for generating a new password for the user account. The reduction in user interaction reduces wear on the device. The reduction in user interaction also results in generating a new password for the user account more quickly and, thus, reduces the power consumption for generating a new password for the user account, thereby extending the battery life of the device. Additionally, automatically generating a new password for the user account provides a unique, strong, and / or secure password for the user account, thereby enhancing the security of the user account.

[0317] In some embodiments, the device displays (812) the newly auto-generated password. For example, in Figure 5G1 , device 100 displays the newly auto-generated password in new password field 532G. Displaying the new password provides a sense of security to the user, thereby increasing the likelihood of the user accepting the new password and reducing user interaction for generating different new passwords. Reducing user interaction reduces wear on the device and reduces power consumption, thereby extending the battery life of the device.

[0318] In some embodiments, the device displays (814) a generic password indicator. For example, in Figure 5G2 , device 100 displays a series of asterisks (or bullet points) in new password field 532C. Displaying the generic password indicator (instead of the new password) reduces user confusion during user account registration and, specifically, password generation, thereby reducing user interaction during registration. Reducing user interaction reduces wear on the device and reduces power consumption, thereby extending the battery life of the device.

[0319] In some embodiments, the device displays (816) a portion of the newly auto-generated password and an indication that a portion of the newly auto-generated password is not being displayed. For example, in Figure 5G3 , device 100 displays a portion of the newly auto-generated password and an indication that a portion of the newly auto-generated password is not being displayed, e.g., the visibility of the newly auto-generated password decreases along its length by fading. Displaying a portion of the new password provides the benefits of the above two embodiments, providing a sense of security to the user while reducing user confusion, thereby reducing user interaction with the device. Reducing user interaction reduces wear on the device and reduces power consumption, thereby extending the battery life of the device.

[0320] In some embodiments, a newly auto-generated password is generated (818) based on one or more password generation constraints of the user interface. For example, in Figure 5G1In this case, the new automatically generated password includes uppercase letters (e.g., Y), lowercase letters (e.g., v), numbers (e.g., 2), special characters (e.g., %), and at least a threshold number of characters. Automatically generating a password based on password generation constraints of a user interface increases the likelihood that the user will accept the password and reduces the probability that the password will be rejected by the service, ultimately reducing the amount of user interaction with the device. Reducing user interaction reduces wear on the device and reduces power consumption, thereby extending the battery life of the device. In addition, complying with the password generation constraints of the user interface increases the strength of the password, resulting in increased security of the user account.

[0321] Further in response to detecting a user input (808) corresponding to a selection of the new password field, the device displays (820) on the display device an enabling representation for accepting the new automatically generated password and an enabling representation for rejecting the use of the new automatically generated password. For example, in Figure 5G3 this case, the device 100 displays an acceptance enabling representation 543A and a rejection enabling representation 543B. Displaying the enabling representation for accepting the new password (and the representation of the new password) in response to detecting a user input corresponding to a selection of the new password field (as opposed to, for example, a user input requesting the device to provide a new automatically generated password) increases the likelihood that the user will accept the new password and reduces user interaction for generating a new password. Accordingly, the security of the user account is increased, and the reduction in user interaction reduces wear on the device and reduces power consumption, thereby extending the battery life of the device.

[0322] In some embodiments, the device displays (822) a new password user interface that includes an enabling representation for accepting the new automatically generated password and an enabling representation for rejecting the use of the new automatically generated password. For example, in Figure 5G3 this case, the device 100 displays a new password user interface 503C that includes an acceptance enabling representation 543A and a rejection enabling representation 543B.

[0323] In some embodiments, the device displays (824) a new password user interface that does not include a plurality of character insertion enabling representations displayed in a soft keyboard. For example, in Figure 5G3 this case, the device 100 displays the new password user interface 503C but does not display Figure 5C the soft keyboard 503A of (or Figure 5E the numeric soft keyboard 503B of). Not including the display of the soft keyboard increases the likelihood that the user will accept the new password, resulting in increased security and reduced user interaction with the device. In addition, not including the display of the soft keyboard uses less space on the screen; thus, a smaller (and less expensive) screen can provide the same usability.

[0324] In some embodiments, the device detects (826) user input corresponding to a selection of a user identifier field via the one or more input devices. In various implementations, the user identifier field includes a user name field, an email address field, a phone number field, and the like. For example, in Figure 5B device 100 detects contact 550B at the location of user name field 532A. As another example, in Figure 5D device 100 detects contact 550D at the location of phone number field 532B. In some embodiments, in response to detecting user input corresponding to a selection of a user identifier field, the device displays (828) on the display device a soft keyboard including the plurality of character insertion affordances. For example, in Figure 5C in response to detecting contact 550B at the location of user name field 532A, device 100 displays soft keyboard 503A. As another example, in Figure 5E in response to detecting contact 550D at the location of phone number field 532B, device 100 displays numeric soft keyboard 503B. Providing different user interfaces in response to detecting different types of fields provides an effective mechanism for the user to perform various different actions, thereby reducing the amount of user interaction for performing various actions. The reduction in user interaction reduces wear on the device and extends the battery life of the device.

[0325] In some embodiments, the new password user interface includes (830) a description of the newly auto-generated password and instructions for retrieving the newly auto-generated password. For example, in Figure 5G3 new password user interface 503C includes text 544 that includes a description of the newly auto-generated password and instructions for retrieving the newly auto-generated password. Specifically, text 544 indicates that the newly auto-generated password has been auto-generated and meets the password strength requirements. Text 544 indicates that the newly auto-generated password will be saved by device 100 and can be accessed by the user, for example, via a verbal request. Including a description of the new password and instructions for retrieval increases the likelihood that the user will accept the new password and reduces the user interaction for generating a new password. Accordingly, the security of the user account is increased, and the reduction in user interaction reduces wear on the device and reduces power consumption, thereby extending the battery life of the device.

[0326] In some embodiments, the device separately displays (832) a second affordance for rejecting the newly auto-generated password from the new password user interface. For example, in Figure 5G3In [the above], the device 100 displays an auxiliary rejection enabling indication 543BB that rejects the newly automatically generated password and is separate from the new password user interface. Specifically, it is next to the indication of the newly automatically generated password in the new password field 532C. Displaying a second enabling indication that rejects using the new password results in a more effective human-machine interface because the user can more easily find the mechanism for rejecting using the new password. For a battery-powered electronic device, a more effective human-machine interface can save power and increase the time between battery charges. Additionally, a more effective human-machine user interface reduces the amount of user interaction with the device and reduces wear on the device.

[0327] In some embodiments, the device detects (834) via the one or more input devices a user input corresponding to a selection of an enabling indication for accepting the newly automatically generated password. For example, in Figure 5I [the above], the device 100 detects a contact 550H at the location of the acceptance enabling indication 543A. In some embodiments, in response to detecting a user input corresponding to a selection of an enabling indication for accepting the newly automatically generated password, the device stops displaying (836) the enabling indication for accepting the newly automatically generated password and the enabling indication for rejecting using the newly automatically generated password. For example, in Figure 5J [the above], in response to detecting the contact 550H at the location of the acceptance enabling indication 543A, the device stops displaying the new password user interface 503C including the acceptance enabling indication 543A and the rejection enabling indication 543B.

[0328] In some embodiments, the device detects (838) via the one or more input devices a user input corresponding to a selection of an enabling indication for rejecting using the newly automatically generated password. For example, in Figure 5G3 [the above], the device 100 detects a contact 550G at the location of the rejection enabling indication 543B. In some embodiments, in response to detecting a user input corresponding to a selection of an enabling indication for accepting the newly automatically generated password, the device replaces (840) the enabling indication for accepting the newly automatically generated password and the enabling indication for rejecting using the newly automatically generated password with a soft keyboard including an enabling indication for inserting a plurality of characters. For example, in Figure 5H [the above], in response to detecting the contact 550G at the location of the rejection enabling indication 543B, the device 100 replaces the new password user interface 503C including the acceptance enabling indication 543A and the rejection enabling indication 543B with the soft keyboard 503B. Replacing the new password user interface with a soft keyboard provides an effective mechanism for the user to generate a new password, thereby reducing the amount of user interaction for generating a new password. The reduction in user interaction reduces wear on the device. The reduction in user interaction also results in a faster generation of a new password, thereby reducing the power consumption for performing storage management operations and thus extending the battery life of the device.

[0329] It should be understood that forFigures 8A-8C The specific order described for the operations in Figures 8A to 8C is merely exemplary and is not intended to indicate that the described order is the only order in which the operations can be performed. Those of ordinary skill in the art will envision multiple ways to reorder the operations described herein. Additionally, it should be noted that the details of the other processes described herein with respect to other methods (e.g., methods 900, 1000, and 1100) described herein apply in a similar manner to the method 800 described above with respect to

[0330] Figures 9A to 9D FIG. 7 illustrates a flowchart of a method 900 for inserting a verification code into a user interface according to some embodiments. The method 900 is performed at an electronic device having a display device and one or more input devices (e.g., Figure 1A the portable multifunctional device 100 in Figure 3 or the device 300 in

[0331] In some embodiments, the display device is a touch screen display, and one or more of the input devices are located on or integrated with the display device. In some embodiments, the display device is separate from the one or more input devices. Some of the operations in method 900 are optionally combined and / or the order of some operations is optionally changed.

[0332] The device receives (902) a request to access a resource protected by a verification code via the one or more input devices. In various embodiments, the verification code is a one-time use code or on-demand code sent via an authorized communication channel (such as via text or email). In various embodiments, the request includes a selection of a login affordance or a selection of a request code affordance. For example, in Figure 5M the device 100 detects a contact 550L at the location of the continue login affordance 531E.

[0333] After receiving a request to access a resource, the device receives an electronic message (904) at the electronic device. In various embodiments, the electronic message is an SMS text message, an email, or a chat message. For example, in Figure 5O the device 100 displays a message notification 561A indicating that a text message has been received. However, in various embodiments described below, the device receives the electronic message without displaying a message notification.

[0334] In some embodiments, in response to receiving the electronic message, the device displays a message notification (906) on the display device. For example, in Figure 5O the device 100 displays a message notification 561A in response to receiving the electronic message. In some embodiments, the message notification includes (908) a copy enablement representation that, when selected, copies the content to the clipboard. For example, in Figure 5U2 the device 100 displays a message notification 561A that includes a copy enablement representation 561C. The copy enablement representation provides an efficient mechanism for the user to insert a verification code without manually entering each character of the verification code, thereby reducing the user's interaction with the device. The reduction in user interaction reduces the wear and tear of the device. The reduction in user interaction also results in a faster insertion of the verification code and, therefore, a reduction in the power consumption for inserting the verification code, thereby extending the battery life of the device.

[0335] In some embodiments, the device detects (910) a user input corresponding to a selection of the message notification via the one or more inputs. For example, in Figure 5O the device 100 detects a contact 550M at the location of the message notification 561A. In some embodiments, in response to detecting a user input corresponding to a selection of the message notification, the device displays (912) an electronic message on the display device that emphasizes the content that matches a predetermined format (as further described below with respect to block 916). For example, in Figure 5P the device 100 displays a message window 564 that includes the content of the electronic message received from the source, where the content that matches a predetermined format (e.g., verification code "03201981") is emphasized (e.g., underlined). Displaying the electronic message in response to detecting a selection of the message notification results in a more efficient human-machine interface (because the user does not need to access the application launcher user interface to launch an application to display the electronic message). In addition, displaying the electronic message that emphasizes the content that matches a predetermined format guides the user to quickly find the verification code, thereby resulting in a more efficient human-machine interface. For a battery-powered electronic device, a more efficient human-machine interface can save power and increase the time between battery charges. Additionally, a more efficient human-machine user interface reduces the amount of user interaction with the device and reduces the wear and tear of the device.

[0336] In some embodiments, in response to receiving an electronic message, based on determining that the electronic message does not include content that meets a corresponding criterion (as further described below with respect to block 916), the device (914) displays a message notification on a display device and, based on determining that the electronic message includes content that meets the corresponding criterion, forgoes displaying (or cancels) the message notification. For example, in Figure 5AC , based on determining that a received text message does not include a verification code, device 100 displays message notification 561F. However, in Figure 5AB , based on determining that the received text message includes a verification code, device 100 forgoes displaying the message notification. Forgoing display of the message notification simplifies the process of inserting the verification code, thereby reducing the likelihood that the user will launch the application through which the electronic message was received and increasing the likelihood that the user will use the insertion affordance to insert the verification code. This reduces user interaction with the device, thereby reducing wear and extending battery life.

[0337] After receiving an electronic message and when displaying a user interface for entering a verification code on a display device: Based on determining that the electronic message includes content that meets a corresponding criterion, where the corresponding criterion includes a formatting requirement that the electronic message includes content that matches a predetermined format, the device displays (916) an insertion affordance on the electronic device, the insertion affordance automatically inserting, when selected, the content that matches the predetermined format as the verification code into the user interface. For example, in Figure 5Z , after receiving a text message that prompts display of Figure 5Y message notification 561A in and when displaying a web browser user interface 502 that includes a verification code field 532G, based on determining that the text message includes a verification code, device 100 displays an insertion affordance 545 that, when selected, inserts the verification code into verification code field 532G. The insertion affordance provides an efficient mechanism for the user to insert the verification code, thereby reducing the amount of user interaction for inserting the verification code. The reduction in user interaction reduces wear on the device. The reduction in user interaction also results in a faster initiation of the execution of a storage management operation and, thus, a reduction in the power consumption for executing the storage management operation, thereby extending the battery life of the device.

[0338] In some embodiments, the corresponding criterion includes (918) a timing requirement to display a user interface for entering a verification code within a predetermined time period from when the message is received. For example, in Figure 5Z , based on determining that, in response to receiving a text message that prompts display of Figure 5YWithin three minutes of the text message of the message notification 561A, the verification code field 532G is selected, and the device 100 displays the insertion enable indication 545. Displaying the insertion enable indication within a limited time increases the likelihood that the user will select the insertion enable indication and reduces the likelihood that the insertion enable indication will be displayed when the user is less likely to select the insertion enable indication, thus saving screen space. By using less space on the screen, a smaller (and less expensive) screen can provide the same usability.

[0339] In some embodiments, the corresponding criteria include (920) that the user interface for entering the verification code includes the feature requirement of a text input field having predetermined features. For example, in Figure 5Z it is determined that the web browser user interface 502 includes the verification code field 532G, and the device 100 displays the insertion enable indication 545. In some embodiments, the corresponding criteria include (922) the selection requirement of selecting a text input field having predetermined features. For example, in Figure 5Z it is determined (e.g., by detecting Figure 5Y the contact 550V in) that the verification code field 532G is selected, and the device 100 displays the insertion enable indication 545. Displaying the insertion enable indication when the verification code field is selected increases the likelihood that the user will select the insertion enable indication and reduces the likelihood that the insertion enable indication will be displayed when the user is less likely to select the insertion enable indication, thus saving screen space. By using less space on the screen, a smaller (and less expensive) screen can provide the same usability.

[0340] In some embodiments, the predetermined format is based on (924) the text of the electronic message. For example, in Figure 5Z the device 100 displays the Figure 5Y insertion enable indication 545 according to the detected text "code" in the text message of the message notification 561A. In some embodiments, the predetermined format is based on (926) the content including a string that meets the predetermined character criteria. For example, in Figure 5Z the device 100 displays the insertion enable indication 545 according to the detected string ("03201981") including a series of eight digits.

[0341] In some embodiments, the insertion enable indication is displayed (928) in combination with a soft keyboard including multiple character insertion enable indications. For example, in Figure 5Z the device 100 displays the insertion enable indication 545 above the multiple character insertion enable indications as part of the numeric soft keyboard 503B. In some embodiments, the insertion enable indication is displayed (930) in the text suggestion area. For example, in Figure 5ZIn [the situation], the device 100 displays an insertion affordance 545 in the text suggestion area of the numeric soft keyboard 503B. In various embodiments, the text suggestion area is above the soft keyboard, located on a touch bar, or within a pop-up menu. Displaying the insertion affordance in combination with the soft keyboard provides a more effective human-machine interface by presenting different options to the user (e.g., using the insertion affordance or typing a verification code using the soft keyboard), without additional user interaction to access the different options. Reducing the amount of user interaction with the device reduces wear on the device and extends the battery life of the device.

[0342] In some embodiments, the insertion affordance includes an indication of the application (932) through which the electronic message was received. For example, in Figure 5Z [the situation], the insertion affordance 545 includes an indication that the verification code was received from a text messaging application. In some embodiments, the insertion affordance includes an indication of the sender (934) of the electronic message. For example, in Figure 5Z [the situation], the insertion affordance 545 includes an indication that the verification code was received from the phone number "987-66". Including an indication of the application and / or the sender of the electronic message increases the likelihood that the user will select the insertion affordance and effectively insert the verification code, thereby reducing the interaction of the user with the device for inserting the verification code in other ways. Reducing the amount of user interaction with the device reduces wear on the device and extends the battery life of the device.

[0343] In some embodiments, after receiving an electronic message and when a user interface for entering a verification code is displayed on a display device: based on determining that the electronic message does not include content that meets a corresponding criterion, the device forgoes displaying (936) the insertion affordance. For example, in Figure 5AD [the situation], after receiving the text message that prompts the display of Figure 5AC the message notification 561F in [the situation] and when displaying a web browser user interface 502 that includes a verification code field 532G, based on determining that the text message does not include a verification code, the device 100 does not display the insertion affordance 545. In some embodiments, based on determining that the electronic message does not include content that meets a corresponding criterion, the device displays (938) one or more alternative insertion affordances on the display device, the one or more alternative insertion affordances automatically entering corresponding words in the user interface when selected. For example, in Figure 5AD [the situation], the device 100 displays alternative insertion affordances in the text suggestion area 542.

[0344] In some embodiments, the device detects (940) user input corresponding to the selection of the insertion affordance via the one or more input devices. For example, in Figure 5ZIn [description], device 100 detects contact 550W at the location indicating the insertion enablement 545. In some embodiments, in response to detecting a user input corresponding to a selection of the insertion enablement indication, the device automatically inserts (942) content that matches a predetermined format as a verification code into the user interface. For example, in Figure 5AA In [description], device 100 inserts the verification code "03201981" into the verification code field 532G. Automatically inserting the verification code into the user interface provides an effective human-machine interface for inserting the verification code. For battery-powered electronic devices, a more effective human-machine interface can save power and increase the time between battery charges. Additionally, a more effective human-machine user interface reduces the amount of user interaction with the device and reduces wear on the device.

[0345] In some embodiments, in response to determining that an electronic message includes content that meets a corresponding criterion, the device automatically inserts (944) content that matches a predetermined format as a verification code into the user interface. For example, in Figure 5AB In [description], in response to receiving a text message that prompts the display of the message notification 561A in Figure Y, device 100 automatically inserts the verification code "03201981" into the verification code field 532G. Automatically inserting the verification code into the user interface provides an effective human-machine interface for inserting the verification code. For battery-powered electronic devices, a more effective human-machine interface can save power and increase the time between battery charges. Additionally, a more effective human-machine user interface reduces the amount of user interaction with the device and reduces wear on the device.

[0346] It should be understood that the specific order of the operations already described in Figures 9A to 9D is merely exemplary and is not intended to indicate that the order is the only order in which these operations can be performed. Those of ordinary skill in the art will think of various ways to reorder the operations described herein. Additionally, it should be noted that the details of the other processes described herein in connection with other methods described herein (e.g., methods 800, 1000, and 1100) similarly apply in a similar manner to method 900 described above in connection with Figures 9A to 9D For example, the user interface (including fields, enablement indications, and their responses), user input, notifications, and criteria described above with reference to method 900 optionally have one or more features of the user interface (including fields, enablement indications, and their responses), user input, notifications, and criteria described herein with reference to other methods described herein (e.g., methods 800, 1000, and 1100). For the sake of brevity, these details are not repeated here.

[0347] Figures 10A to 10C A flowchart of a method 1000 for sharing authentication credentials according to some embodiments is shown. In a first electronic device having a display device and one or more input devices (e.g.,Figure 1A the portable multifunctional device 100 in Figure 3 the device 300 in

[0348] As described below, method 1000 provides an intuitive way to share authentication credentials. Method 1000 reduces the cognitive burden on the user when sharing authentication credentials, thereby creating a more effective human-machine interface. For battery-powered electronic devices, enabling the user to share authentication credentials faster and more effectively can save power and increase the time between battery charges.

[0349] The first electronic device receives (1002) an indication at the first electronic device that the second electronic device requires authentication credentials for a service. For example, in Figure 6D the first electronic device 610 displays a sharing confirmation window 640 in response to receiving an indication that the second electronic device 620 requires authentication credentials for a service.

[0350] In response to receiving an indication that the second electronic device requires authentication credentials for a service, based on determining that the first electronic device meets the corresponding criteria, wherein the corresponding criteria includes a requirement that the first electronic device is within a predetermined proximity to the second electronic device, in order to meet the corresponding criteria, the first electronic device displays (1004) a verification prompt on the display device, the verification prompt requiring the entry on the first electronic device of verification information from the second electronic device in order to proceed. For example, in Figure 6E the first electronic device 610 displays a first user interface 612 including a verification prompt that requires the entry on the first electronic device 610 of information from the second electronic device 620 (e.g., verification information displayed by the second electronic device 620) in order to proceed.

[0351] In some embodiments, based on determining that the first electronic device does not meet the corresponding criteria, the first electronic device abandons displaying (1006) the verification prompt. For example, in Figure 6EAmong them, a third electronic device that does not meet the corresponding standard abandons displaying a verification prompt. Abandoning the display of the verification prompt on a user device that is not adjacent to the second electronic device provides a more effective human-machine interface, thereby reducing the amount of user interaction that ignores the verification prompt and using less screen space for unnecessary information. For battery-powered electronic devices, a more effective human-machine interface can save power and increase the time between battery charges. Additionally, a more effective human-machine user interface reduces the amount of user interaction with the device and reduces wear and tear on the device. By using less screen space, a smaller (and less expensive) screen can provide the same usability.

[0352] In some embodiments, the corresponding standard includes the requirement that (1008) the first electronic device is within the proximity of a third electronic device associated with the second electronic device. In some embodiments, the second electronic device is (1010) a media playback device, and the third electronic device is a remote control for the second electronic device. For example, in Figure 6E it, the first electronic device 610 displays a verification prompt based on its proximity to the third electronic device 630.

[0353] In some embodiments, the first electronic device displays (1012) a shared confirmation notification including a shared confirmation enabling representation on a display device, the shared confirmation enabling representation causing the display of the verification prompt when selected, and detects user input corresponding to the selection of the shared confirmation enabling representation via the one or more input devices. For example, in Figure 6E it, the first electronic device 610 displays a shared confirmation window 640 including a shared confirmation enabling representation 641 and detects a contact 650C at the location of the shared confirmation enabling representation 641. The shared confirmation window reduces the likelihood of accidentally sharing authentication credentials. Therefore, the security of the user account is improved.

[0354] In some embodiments, the verification information from the second electronic device is displayed (1014) by the second electronic device. For example, in Figure 6E it, the verification information from the second electronic device 620 is displayed by the second electronic device 620 on a display device 621.

[0355] When displaying the verification prompt, the first electronic device receives (1016) the verification information from the second electronic device via the one or more input devices on the first electronic device. For example, in Figure 6E it, the first electronic device detects a contact 650D (and additional contacts) corresponding to the verification information displayed by the second electronic device 620.

[0356] In some embodiments, a verification prompt is used (1018) to establish a secure connection between a first electronic device and a second electronic device, and receiving verification information from the second electronic device on the first electronic device includes receiving an input that satisfies a condition for establishing a secure connection between the first electronic device and the second electronic device.

[0357] In response to receiving the verification information, the first electronic device initiates (1020) a process for sharing authentication credentials of a service from the first electronic device to the second electronic device. For example, in Figure 6F response to receiving the verification information, the first electronic device 610 displays a service selection user interface 508 that includes a list of service enabling representations 661A - 661G, which are respectively associated with multiple services, user accounts of those services, and authentication credentials of those user accounts, and in Figure 6G response to detecting a selection of a particular service, the authentication credentials of the service are shared from the first electronic device 610 to the second electronic device 620. Sharing the authentication credentials provides an effective mechanism for the user to enter authentication credentials on the second electronic device without using additional user interactions. The reduction in user interactions reduces wear and tear on the device. The reduction in user interactions also results in a faster initiation of entering authentication credentials on the second electronic device, and thus reduces the power consumption for entering authentication credentials, thereby extending the battery life of the device.

[0358] In some embodiments, the first electronic device detects (1022) a sequence of one or more inputs for sharing authentication credentials of a service via the one or more input devices. For example, in Figure 6F response to the device detecting a contact 650E at the location of the first service enabling representation 661A, the authentication credentials of the service are shared from the first electronic device 610 to the second electronic device 620.

[0359] In some embodiments, the first electronic device displays (1024) on a display device a service list that includes multiple service enabling representations, where the multiple service enabling representations respectively correspond to multiple services that are respectively associated with multiple authentication credentials. For example, in Figure 6F response to the first electronic device 610 displaying a service selection user interface 508 that includes a list of service enabling representations 661A - 661G, which are respectively associated with multiple services, user accounts of those services, and authentication credentials of those user accounts.

[0360] In some embodiments, the first electronic device sorts the service list (1026) at least in part based on the relevance of the corresponding services. In various implementations, the relevance of the corresponding services is based on the domain name, application name, or identifier of the service for which credentials requested to be supplied by the second device and applied by the first device. For example, in Figure 6F Second electronic device 620 indicates the service by an indication of authentication credentials for the service, and the service is listed at the top of the list of service enablement representations 661A - 661G. Sorting the service list provides an effective mechanism for the user to select the service enablement representation associated with the intended service, thereby reducing user interaction with the device and enhancing security by reducing the likelihood of the user accidentally sharing authentication credentials (e.g., for another user account).

[0361] In some embodiments, the first electronic device detects (1028) a user input corresponding to a selection of one of the plurality of service enablement representations via the one or more input devices, the plurality of service enablement representations corresponding to services associated with authentication credentials of the services. For example, in Figure 6F The device detects a contact 650E at the location of the first service enablement representation 661A and, in response, shares the authentication credentials of the service from the first electronic device 610 to the second electronic device 620.

[0362] In some embodiments, in response to detecting a sequence of one or more inputs, the first electronic device shares (1030) the authentication credentials of the service from the first electronic device to the second electronic device. For example, in Figure 6G In response to detecting Figure 6F a contact 650E at the location of the first service enablement representation 661A in

[0363] In some embodiments, the first electronic device wirelessly transmits (1032) the authentication credentials of the service from the first electronic device to the second electronic device via a secure connection. For example, the authentication credentials can be transmitted via a peer - to - peer WiFi connection or a Bluetooth connection. In some embodiments, the first electronic device shares (1034) the authentication credentials including the user identifier and password from the first electronic device to the second electronic device.

[0364] In some embodiments, the first electronic device authenticates the user before transmitting the authentication credentials. Thus, in some embodiments, the first electronic device obtains (1036) authentication information via the one or more input devices and authenticates (1038) the user based on the authentication information. Authenticating the user before sharing the authentication credentials improves the security of the user account by reducing the likelihood of sharing the authentication credentials without the user's knowledge.

[0365] In some embodiments, after the process of sharing the authentication credentials for a service, the first electronic device displays (1040) on the display device a notification indicating that the process of sharing the authentication credentials for the service has been completed. For example, in Figure 6G , the first electronic device 610 displays a sharing completed window 643 that includes a notification indicating that the authentication credentials have been shared with the second electronic device 620.

[0366] It should be understood that the specific order in which the operations in Figures 10A to 10C are described is merely exemplary and is not intended to indicate that this order is the only order in which these operations can be performed. Those of ordinary skill in the art will envision various ways to reorder the operations described herein. Additionally, it should be noted that the details of the other processes described herein in connection with the other methods described herein (e.g., methods 800, 900, and 1100) apply in a similar manner to the method 1000 described above in connection with Figures 10A to 10C . For example, the user interfaces (including fields, affordances, and their responses), user inputs, electronic devices, and authentication credentials described above with reference to method 1000 optionally have one or more of the features of the user interfaces (including fields, affordances, and their responses), user inputs, electronic devices, and authentication credentials described herein with reference to the other methods described herein (e.g., methods 800, 900, and 1100). For the sake of brevity, these details are not repeated here.

[0367] Figures 11A to 11C FIG. 1100 is a flow diagram of a method of displaying password information according to some embodiments. The method 1100 is performed at an electronic device having a display device and one or more input devices (e.g., Figure 1A the portable multifunctional device 100 in Figure 3 or the device 300 in

[0368] As described below, method 1100 provides an intuitive way to display password information. Method 1100 reduces the cognitive burden on the user when displaying password information, thereby creating a more effective human-machine interface. For battery-powered electronic devices, enabling the user to display password information faster and more effectively saves power and increases the time between battery charges.

[0369] The device detects (1102) a verbal request to display password information via the one or more input devices. In various embodiments, the device detects the verbal request via a microphone. For example, in Figure 7I , device 100 detects verbal request 751A to display password information. As another example, in Figure 7O , device 100 detects verbal request 751B to display password information. As another example, in Figure 7R , device 100 detects verbal request 751C to display password information. As another example, in Figure 7T , device 100 detects verbal request 751D to display password information.

[0370] In response to receiving a verbal request to display password information, and based on determining that the request is for the password of the first user account accessible to the device and the user has been authenticated, the device displays (1104) the password of the first user account. For example, in Figure 7L , based on determining that verbal request 751A is for the password of the user account associated with Figure 7D 's fourth user account enabling representation 727D, and after authenticating the user (as shown in Figures 7J to 7K ), device 100 displays password enabling representation 730B including text indicating the password associated with that user account. As another example, in Figure 7P , based on determining that verbal request 751B is for the password of the user account associated with Figure 7D 's seventh user account enabling representation 727G, and after authenticating the user, device 100 displays password enabling representation 730D including text indicating the password associated with that user account. Displaying password information in response to a verbal request provides an effective mechanism for displaying password information, thereby reducing the amount of user interaction for displaying password information. The reduction in user interaction reduces wear and tear on the device. The reduction in user interaction also results in a faster initiation of displaying password information and, therefore, reduces the power consumption for displaying password information, thereby extending the battery life of the device.

[0371] In some embodiments, the device displays (1106) information about the first user account accessible to the device. For example, in Figure 7LIn [description], device 100 displays a password details user interface 709A, which includes: a username enabling representation 730A, which includes text indicating the username associated with the user account of the service; a password enabling representation 730B, which includes text indicating the password associated with the user account; and text indicating a website 731A associated with the service of the user account. For another example, in Figure 7P In [description], device 100 displays a password details user interface 709B, which includes: a username enabling representation 730C, which includes text indicating the username associated with the user account of the service; a password enabling representation 730D, which includes text indicating the password associated with the user account; and text indicating a website 731B associated with the service of the user account. Providing additional information about the first user account increases the user's confidence in the displayed first password, thereby reducing the likelihood that the user will perform further user interactions to display the first password. Reducing user interactions reduces wear and tear on the device and extends the battery life of the device.

[0372] In some embodiments, the information about the first user account accessible to the device includes (1108) password security information of the password of the first user account. In some embodiments, the information about the first user account accessible to the device includes (1110) an alert indicating that the password of the first user account is the same as the password of another user account accessible to the device. For example, in Figure 7P In [description], device 100 displays an alert 735 indicating that the password associated with the second user account is the same as the passwords associated with one or more other accounts. In some embodiments, the password security information of the password of the first user account includes information about the password strength, for example, whether the password is easy to guess, short, low entropy, contains common words, etc. In some embodiments, the alert includes (1112) an enabling representation that displays a resource for modifying the password of the first user account when selected. For example, in Figure 7P In [description], alert 735 includes a modify password enabling representation 736, which displays a resource for modifying the password of the user account, such as a web page or an application, when selected. Providing an enabling representation for modifying a weak or duplicate password provides an effective mechanism for the user to modify the password, thereby reducing the amount of user interaction for modifying the password. The reduction of user interaction reduces wear and tear on the device. The reduction of user interaction also results in a faster initiation of password modification, and thus reduces the power consumption for password modification, thereby extending the battery life of the device. In addition, providing an effective mechanism for the user to modify the password increases the likelihood that the user will perform such an action and increases the security of the user account.

[0373] In response to receiving a verbal request to display password information, and based on determining that the request is for the password of a second user account accessible to the device and the user has been authenticated, the device displays (1114) the password of the second user account. For example, in Figure 7L it is determined that the verbal request 751A is for the password of the user account associated with the fourth user account enabling representation 727D of Figure 7D and after authenticating the user (as shown in Figures 7J to 7K ), the device 100 displays a password enabling representation 730B that includes text indicating the password associated with that user account. As another example, in Figure 7P it is determined that the verbal request 751B is for the password of the user account associated with the seventh user account enabling representation 727G of Figure 7G and after authenticating the user, the device 100 displays a password enabling representation 730D that includes text indicating the password associated with that user account.

[0374] In some embodiments, in response to receiving a verbal request to display password information, and based on determining that the request is for general password information, the device displays (1116) a list of password display enabling representations that, when selected, display the corresponding passwords of the corresponding user accounts accessible to the device. For example, in Figure 7S in response to receiving the verbal request 751C in Figure 7R , the device 100 displays a password list user interface 708 that includes a list of user account enabling representations 727A - 727G, which are respectively associated with multiple user accounts of corresponding multiple services and the authentication credentials of those user accounts. Displaying password information in response to a verbal request provides an effective mechanism for displaying password information, thereby reducing the amount of user interaction for displaying password information. The reduction in user interaction reduces wear and tear on the device. The reduction in user interaction also results in a faster initiation of displaying password information and, therefore, a reduction in the power consumption for displaying password information, thereby extending the battery life of the device.

[0375] In some embodiments, in response to receiving a verbal request to display password information, and based on determining that the request is for the password of a user account not accessible to the device, the device displays (1118) a list of password display enabling representations that, when selected, display the corresponding passwords of the corresponding user accounts accessible to the device. For example, in Figure 7U in response to receiving Figure 7TIn verbal request 751D, device 100 displays a password list user interface 708 that includes a list of user account enabling representations 727A - 727G, which are each associated with multiple user accounts for respective multiple services and the authentication credentials of those user accounts. In some embodiments, the device displays (1120) a search field pre-populated based on the verbal request. For example, in Figure 7U based on the Figure 7T verbal request 751D in, search field 729 is pre-populated with the word "hotel".

[0376] In some embodiments, the device detects (1122) via the one or more input devices a user input corresponding to the selection of a password for a first user account. For example, in Figure 7L device 100 detects contact 7520F at the location of password enabling representation 730B. In some embodiments, in response to detecting a user input corresponding to the selection of a password for a first user account, the device displays (1124) on the display device a share enabling representation that, when selected, initiates a process for sharing the password of the first user account. For example, in Figure 7M device 100 displays share enabling representation 732B that, when selected, initiates a process for sharing the password (and / or other authentication credentials) associated with the first user account. Thus, the user interface provides an effective mechanism for the user to share authentication credentials, thereby reducing the amount of user interaction for sharing authentication credentials. The reduction in user interaction reduces wear on the device. The reduction in user interaction also results in a faster initiation of sharing authentication credentials and, therefore, reduces the power consumption for sharing authentication credentials, thus extending the battery life of the device.

[0377] In some embodiments, the device detects (1126) via the one or more input devices a user input corresponding to the selection of the share enabling representation. For example, in Figure 7M device 100 detects contact 750G at the location of share enabling representation 732B. In some embodiments, in response to detecting a user input corresponding to the selection of the share enabling representation, the device displays (1128) on the display device a recipient selection card that includes one or more recipient enabling representations that, when selected, share the password of the first user account with the respective device. For example, in Figure 7N device 100 displays recipient selection card 733 that includes multiple recipient enabling representations 734A - 734C that, when selected, initiate a process for sharing the password (and / or other authentication credentials) associated with the first user account with the respective recipient.

[0378] In some embodiments, in response to receiving a verbal request to display password information, and based on determining that the user is not authenticated, the device authenticates the user and continues to display the requested password information. Thus, in some embodiments, in response to receiving a verbal request to display password information, and based on determining that the user is not authenticated, the device obtains (1130) authentication information via the one or more input devices, and authenticates the user based on the authentication information. For example, in Figures 7J to 7K In response to detecting the speech request 751A, the device 100 obtains the authentication information (such as Figure 7J Authentication in progress window 741), and based on the authentication information (such as Figure 7K The user is authenticated (as shown in the authenticated window 742). In some embodiments, the authentication information includes (1132) a biometric identification of the user, such as facial features or fingerprints. Authenticating the user increases the security of the user's account by ensuring that password information is not displayed without the user's knowledge.

[0379] In some embodiments, before receiving a verbal request to display the password information and while the device is locked, the device detects (1134) a user input requesting to unlock the device via the one or more input devices; in response to the user input requesting to unlock the device, the device obtains unlock information via the one or more input devices; and the device unlocks the device based on the unlock information. For example, in Figure 7F , device 100 detects a user input requesting to unlock the device in the form of contact 750E moving upward from a position near the bottom of the display. Figure 7G In the process, the device 100 obtains unlock information (as shown in the identity authentication process window 741). Figure 7H , device 100 unlocks device 100 based on the unlock information (as shown in authenticated window 742).

[0380] In some embodiments, the unlock information includes (1136) a password, and the authentication information includes a biometric of the user, or includes a password if biometric authentication fails. Thus, in various embodiments, the authentication information is more secure than the unlock information. However, in various embodiments, the authentication information includes a password (e.g., if biometric authentication fails, if biometric authentication fails twice, or is not configured).

[0381] In some embodiments, authentication information is obtained (1138) while the device is locked, and wherein authenticating the user based on the authentication information further comprises unlocking the device based on the authentication information. Figure 7WIn , when the device is locked (as indicated by the lock screen user interface 705), the device 100 obtains authentication information (as shown by the ongoing authentication window 741). In Figure 7Y In , the device 100 is unlocked based on the authentication information (as indicated by the password details user interface 709A). Unlocking the device and authenticating the user based on the same information results in a more efficient human-machine interface (since the user does not need to separately unlock the device and authenticate). For battery-powered electronic devices, a more efficient human-machine interface can save power and increase the time between battery charges. Additionally, a more efficient human-machine user interface reduces the amount of user interaction with the device and reduces wear on the device.

[0382] It should be understood that the specific order in which the operations in Figures 11A to 11C are described is merely exemplary and is not intended to indicate that the order is the only order in which these operations can be performed. Those of ordinary skill in the art will envision multiple ways to reorder the operations described herein. Additionally, it should be noted that the details of the other processes described herein in connection with other methods described herein (e.g., methods 800, 900, and 1000) apply in a similar manner to method 1100 described above in connection with Figures 11A to 11C For example, the user interfaces (including fields, affordance representations, and their responses), user inputs (specifically, verbal requests and commands), and authentication credentials described above with reference to method 1100 optionally have one or more of the features of the user interfaces (including fields, affordance representations, and their responses), user inputs (specifically, verbal requests and commands), and authentication credentials described herein with reference to other methods described herein (e.g., methods 800, 900, and 1000). For the sake of brevity, these details are not repeated here.

[0383] The operations in the above information processing method are optionally implemented by running one or more functional modules in an information processing device, such as a general-purpose processor (e.g., as described above with respect to Figure 1A and Figure 3 ) or an application-specific chip.

[0384] The above reference to Figures 8A to 8C , Figures 9A to 9D , Figures 10A to 10C and Figures 11A to 11C The operations described are optionally performed by Figures 1A to 1Bimplemented by the components depicted therein. For example, display operation 802, detection operation 804, display operation 810, display operation 820, reception operation 902, reception operation 904, display operation 916, reception operation 1002, display operation 1004, reception operation 1016, initiation operation 1020, detection operation 1102, display operation 1104, or display operation 1114 are optionally implemented by event classifier 170, event recognizer 180, and event handler 190. Event monitor 171 in event classifier 170 detects a contact on touch-sensitive display 112, and event dispatcher module 174 delivers event information to application 136-1. The corresponding event recognizer 180 of application 136-1 compares the event information with the corresponding event definition 186 and determines whether the first contact at the first position on the touch-sensitive surface (or whether the rotation of the device) corresponds to a predefined event or sub-event, such as the selection of an object on the user interface, or the rotation of the device from one orientation to another. When a corresponding predefined event or sub-event is detected, event recognizer 180 activates event handler 190 associated with the detection of the event or sub-event. Event handler 190 optionally uses or invokes data updater 176 or object updater 177 to update application internal state 192. In some embodiments, event handler 190 accesses corresponding GUI updater 178 to update the content displayed by the application. Similarly, those skilled in the art will readily appreciate how other processes may be implemented based on the components depicted in Figures 1A - 1B the figures.

[0385] For purposes of explanation, the foregoing description has been presented by reference to specific embodiments. However, the above illustrative discussion is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments were chosen and described in order to best illustrate the principles of the invention and its practical application, thereby enabling others skilled in the art to best utilize the invention with various modifications as are suited to the particular use contemplated and the various described embodiments.

Claims

1. A method, comprising: at an electronic device communicating with a display device and one or more input devices: receiving, via the one or more input devices, a request to access a resource protected by a verification code; after receiving the request to access the resource, receiving an electronic message at the electronic device; after receiving the electronic message and while displaying, via the display device, a user interface for inputting the verification code, detecting a selection of a text input field; and in response to detecting the selection of the text input field: displaying an insert enable indication based on determining that the electronic message includes content meeting corresponding criteria, where the corresponding criteria include: a format requirement that the electronic message includes content matching a predetermined format, and a feature requirement that the text input field has predetermined features, and where the insert enable indication, when selected, automatically inserts the content matching the predetermined format as the verification code into the user interface, where the insert enable indication includes an indication of an application via which the electronic message was received.

2. The method according to claim 1, wherein the corresponding criteria include: A timing requirement for displaying the user interface for inputting the verification code within a predetermined time period from when the electronic message is received.

3. The method according to claim 1, wherein inputting the verification code includes automatically inserting the content into the text input field.

4. The method according to claim 1, wherein the corresponding criteria include a selection requirement of selecting the text input field having the predetermined features.

5. The method according to claim 1, wherein the predetermined format is based on the text of the electronic message.

6. The method according to claim 1, wherein the predetermined format is based on the content including a string meeting predetermined character criteria.

7. The method according to claim 1, further comprising: abandoning the display of the insert enable indication based on determining that the electronic message does not include content meeting the corresponding criteria.

8. The method according to claim 7, further comprising: displaying one or more alternative insert enable indications based on determining that the electronic message does not include content meeting the corresponding criteria, where the one or more alternative insert enable indications, when selected, automatically input corresponding words in the user interface.

9. The method according to claim 1, further comprising: detecting, via the one or more input devices, user input corresponding to a selection of the insert enable indication; and in response to detecting the user input corresponding to the selection of the insert enable indication, automatically inserting the content matching the predetermined format as the verification code into the user interface.

10. The method according to claim 1, further comprising: automatically inserting the content matching the predetermined format as the verification code into the user interface in response to determining that the electronic message includes content meeting the corresponding criteria.

11. The method according to claim 1, wherein displaying the insertion enabling representation includes displaying the insertion enabling representation in combination with a soft keyboard including a plurality of character insertion enabling representations.

12. The method according to claim 1, wherein displaying the insertion enabling representation includes displaying the insertion enabling representation in a text suggestion area.

13. The method according to claim 1, wherein the insertion enabling representation includes an indication of the sender of the electronic message.

14. The method according to claim 1, further comprising performing the following operations in response to receiving the electronic message: displaying a message notification according to determining that the electronic message does not include content that meets the corresponding criteria; and abandoning the display of the message notification according to determining that the electronic message includes content that meets the corresponding criteria.

15. The method according to claim 1, further comprising displaying a message notification in response to receiving the electronic message.

16. The method according to claim 15, further comprising: detecting, via the one or more input devices, a user input corresponding to a selection of the message notification; and in response to detecting the user input corresponding to the selection of the message notification, emphasizing the content that matches the predetermined format while displaying the electronic message.

17. The method according to claim 15, wherein the message notification includes a copy enabling representation that copies the content to a clipboard when selected.

18. An electronic device, comprising: a display device configured to display a user interface; one or more input devices configured to receive input; one or more processors; a non-transitory memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing or causing to perform the method according to any one of claims 1 to 17.

19. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs including instructions that, when executed by an electronic device in communication with a display device and one or more input devices, cause the electronic device to perform or cause to perform the method according to any one of claims 1 to 17.

20. A method, comprising: at a first electronic device in communication with a display device and one or more input devices: receiving, at the first electronic device, an indication that a second electronic device requires authentication credentials for a service; in response to receiving the indication that the second electronic device requires authentication credentials for the service, according to determining that the first electronic device meets the corresponding criteria, wherein the corresponding criteria includes that the first electronic device is within a predetermined proximity to the second electronic device so as to meet the requirements of the corresponding criteria, displaying, via the display device, a verification prompt that requests input of verification information on the first electronic device to continue; When displaying the verification prompt, receive the verification information on the first electronic device via the one or more input devices; and In response to receiving the verification information, initiate a process for sharing authentication credentials for the service from the first electronic device to the second electronic device.

21. The method according to claim 20, wherein initiating the process for sharing authentication credentials for the service from the first electronic device to the second electronic device includes: Detect, via the one or more input devices, a sequence of one or more inputs for sharing authentication credentials for the service; and In response to detecting the sequence of one or more inputs, share the authentication credentials for the service from the first electronic device to the second electronic device.

22. The method according to claim 21, wherein receiving the sequence of one or more inputs includes: Display, via the display device, a service list including a plurality of service enabling representations, the plurality of service enabling representations corresponding to a plurality of services respectively, and the plurality of services being respectively associated with a plurality of authentication credentials; and Detect, via the one or more input devices, a user input corresponding to a selection of one of the plurality of service enabling representations corresponding to the service associated with the authentication credentials for the service.

23. The method according to claim 22, wherein displaying the service list includes sorting the service list at least partially based on the relevance of the corresponding services.

24. The method according to claim 21, wherein sharing the authentication credentials for the service from the first electronic device to the second electronic device comprises: Wirelessly transmit the authentication credentials for the service from the first electronic device to the second electronic device via a secure connection.

25. The method according to claim 21, wherein sharing the authentication credentials for the service from the first electronic device to the second electronic device comprises: Share a user identifier and a password from the first electronic device to the second electronic device.

26. The method according to claim 21, wherein sharing the authentication credentials for the service from the first electronic device to the second electronic device includes: Obtain authentication information via the one or more input devices; and Authenticate the user based on the authentication information.

27. The method according to claim 20, further comprising abandoning the display of the verification prompt according to a determination that the first electronic device does not meet the corresponding criteria.

28. The method according to claim 20, wherein the corresponding criteria includes a requirement that the first electronic device is within the proximity of a third electronic device associated with the second electronic device.

29. The method according to claim 28, wherein the second electronic device is a media playback device, and the third electronic device is a remote control for the second electronic device.

30. The method according to claim 20, wherein the verification prompt is used to establish a secure connection between the first electronic device and the second electronic device, and wherein receiving the verification information on the first electronic device includes: Receive an input that meets the conditions for establishing the secure connection between the first electronic device and the second electronic device.

31. The method according to claim 20, further comprising performing the following operations in response to receiving the indication that the second electronic device needs the authentication credentials for the service: Display a sharing confirmation notification on the display device, the sharing confirmation notification including a sharing confirmation enabling representation that, when selected, causes the verification prompt to be displayed; and Detect, via the one or more input devices, a user input corresponding to a selection of the sharing confirmation enabling representation.

32. The method according to claim 20, further comprising: After the process of sharing the authentication credentials for the service, display a notification on the display device indicating that the process of sharing the authentication credentials for the service has been completed.

33. The method according to claim 20, wherein the verification information is displayed by the second device.

34. An electronic device, comprising: A display device configured to display a user interface; One or more input devices configured to receive input; One or more processors; A non-transitory memory; And One or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for performing or causing to perform the method according to any one of claims 20 to 24.

35. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs including instructions that, when executed by an electronic device communicating with a display device and one or more input devices, cause the electronic device to perform or cause to perform the method according to any one of claims 20 to 24.

36. A method, comprising: At an electronic device having a display device and one or more input devices: Detect, via the one or more input devices, a request to display information for a password-protected account; And In response to receiving the request, simultaneously display on the display device: A representation of a first password-protected account associated with credentials having one or more security questions, wherein the representation of the first password-protected account is visually associated with an alert indicator indicating the one or more security questions associated with the credentials of the first password-protected account; And A representation of a second password-protected account associated with credentials having one or more security questions, wherein the representation of the second password-protected account is visually associated with an alert indicator indicating the one or more security questions associated with the credentials of the second password-protected account.

37. The method according to claim 36, wherein the alert indicator indicating the one or more security questions associated with the credentials of the first password-protected account indicates that the one or more security questions correspond to a reused password for the first password-protected account.

38. The method according to claim 36, wherein the alert indicator indicating the one or more security questions associated with the credentials of the first password-protected account indicates that the one or more security questions correspond to a weak password for the first password-protected account.

39. The method according to claim 38, wherein the password corresponds to a weak password when it is determined that the password corresponds to one of the following: an easily guessable password, a short password, a low-entropy password, or a password containing common words.

40. The method according to claim 36, wherein the credentials for the first password-protected account include a first password, and wherein the credentials for the second password-protected account include a second password.

41. The method according to claim 40, wherein the representation of the first password-protected account includes a visual representation of the first password and text indicating the strength of the first password, and wherein the representation of the second password-protected account includes a visual representation of the second password and text indicating the strength of the second password.

42. The method according to claim 41, wherein the visual representation of the first password is a text representation of at least a portion of the first password, and wherein the visual representation of the second password is a text representation of at least a portion of the second password.

43. The method according to claim 41, wherein the visual representation of the first password excludes at least a portion of the first password, and wherein the visual representation of the second password excludes at least a portion of the second password.

44. The method according to claim 40, wherein the representation of the first password-protected account includes an enabling representation corresponding to updating the first password, and wherein the representation of the second password-protected account includes an enabling representation corresponding to updating the second password.

45. The method according to claim 44, further comprising: detecting, via the one or more input devices, a subsequent user input directed to the enabling representation corresponding to updating the first password; and in response to detecting the subsequent user input, displaying, on the display device, a user interface for updating the first password.

46. The method according to claim 45, wherein the user interface for updating the first password corresponds to a web page associated with the first password-protected account.

47. An electronic device, comprising: a display device configured to display a user interface; one or more input devices configured to receive input; one or more processors; a non-transitory memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for performing or causing to be performed the method according to any one of claims 36 to 46.

48. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs including instructions that, when executed by an electronic device in communication with a display device and one or more input devices, cause the electronic device to perform or cause to be performed the method according to any one of claims 36 to 46.