Devices, methods, and graphical user interfaces for managing authentication credentials for user accounts
Electronic devices that automatically generate and manage passwords and verification codes solve the problem of inefficient user account authentication credential management, provide a fast and intuitive user interface, improve device efficiency and user satisfaction, and save energy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- APPLE INC
- Filing Date
- 2019-04-23
- Publication Date
- 2026-04-14
AI Technical Summary
In existing technologies, the methods for managing user account authentication credentials are cumbersome and inefficient, resulting in a heavy cognitive burden, especially wasting power on battery-powered devices, and making it difficult for users to remember and manage multiple passwords and verification codes.
It automatically generates strong passwords on electronic devices, stores and automatically recognizes verification codes, supports password sharing and verification code insertion between devices, and provides a fast and intuitive user interface for managing authentication credentials.
It reduces the cognitive burden on users, improves device efficiency and user satisfaction, saves energy, and enhances device battery life and safety.
Smart Images

Figure CN112154435B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates in its entirety to electronic devices having touch-sensitive surfaces, including but not limited to electronic devices having touch-sensitive surfaces with authentication credentials for managing user accounts. Background Technology
[0002] 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 the display.
[0003] Exemplary manipulations include adjusting the position and / or size of one or more user interface objects, activating a button or opening a file / application represented by a user interface object, 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, users will need to perform such manipulations on user interface objects from the following categories: file management applications (e.g., Finder from Apple Inc., Cupertino, California); image management applications (e.g., Aperture, iPhoto, Photos from Apple Inc., California); digital content (e.g., video and music) management applications (e.g., iTunes from Apple Inc., California); drawing applications; presentation applications (e.g., Keynote from Apple Inc., California); word processing applications (e.g., Pages from Apple Inc., California); website creation applications (e.g., iWeb from Apple Inc., California); disc editing applications (e.g., iDVD from Apple Inc., California); or spreadsheet applications (e.g., Numbers from Apple Inc., California).
[0004] However, the methods used to perform 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 objects is monotonous and places a significant cognitive burden on the user. Furthermore, these methods take longer than necessary, thus wasting energy. This latter consideration is particularly important in battery-powered devices. Summary of the Invention
[0005] Therefore, electronic devices require faster and more efficient methods and interfaces to manage user account authentication credentials. Such methods and interfaces optionally supplement or replace conventional methods used to manage user account authentication credentials. These methods and interfaces reduce the cognitive burden on users and result in more efficient human-machine interfaces. For battery-powered devices, such methods and interfaces can save power and increase the time between battery charges.
[0006] The disclosed device can reduce or eliminate the aforementioned defects and other problems associated with the user interface of an electronic device having a touch-sensitive surface. In some embodiments, the device is a desktop computer. In some embodiments, the device is portable (e.g., a laptop, tablet, or 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 “touchscreen” or “touchscreen display”). In some embodiments, the device has a graphical user interface (GUI), one or more processors, memory, and one or more modules, and a program or set of instructions stored in memory for performing a variety of functions. In some embodiments, the user interacts with the GUI primarily through stylus and / or finger contact and gestures on the touch-sensitive surface. In some embodiments, these functions optionally include image editing, drawing, rendering, word processing, web page creation, disk editing, spreadsheet creation, playing games, making and receiving phone calls, video conferencing, sending and receiving emails, instant messaging, fitness support, digital photography, digital video recording, web browsing, digital music playback, and / or digital video playback. Executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.
[0007] 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 a user interface including a new password field via the display device. The method includes detecting user input corresponding to a selection of the new password field via the one or more input devices. In response to detecting user input corresponding to a selection of the new password field, the method includes displaying a representation of a new automatically generated password in the new password field on the display device, and displaying an enable representation accepting the new automatically generated password and an enable representation rejecting the use of the new automatically generated password on the display device.
[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 receiving a request for access to a CAPTCHA-protected resource via the one or more input devices. 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 while displaying a user interface for inputting a CAPTCHA via the display device, the method includes: based on determining that the electronic message includes content satisfying a corresponding standard, wherein the corresponding standard includes a format requirement that the electronic message includes content matching a predetermined format, displaying an insertion enablement, which, when selected, automatically inserts the content matching the predetermined format as a CAPTCHA into the user interface.
[0009] 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 a service, and based on determining that the first electronic device meets a corresponding criterion, wherein the corresponding criterion includes a requirement that the first electronic device is within a predetermined proximity to the second electronic device, the method includes displaying a verification prompt via the display device, the verification prompt requiring the first electronic device to input verification information from the second electronic device to continue. When displaying the verification prompt, the method includes receiving verification information from the second electronic device at the first electronic device via the one or more input devices. In response to receiving the verification information, the method includes initiating a process for sharing authentication credentials for the service from the first electronic device to the second electronic device.
[0010] 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 to display password information via the one or more input devices. In response to receiving a verbal request to display password information, the method includes displaying the password for a first user account if it is determined that the request is for a password for a first user account accessible by the device and that the user has been authenticated, and displaying the password for a second user account if it is determined that the request is for a password for a second user account accessible by the device and that the user has been authenticated.
[0011] 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 a user interface including a new password field via the display device. The processing is configured to detect user input corresponding to a selection of the new password field via the one or more input devices. In response to detecting user input corresponding to a selection of the new password field, the processing device is configured to display a representation of a new automatically generated password in the new password field on the display device, and to display an enable representation accepting the new automatically generated password and an enable representation rejecting the use of the new automatically generated password on the display device.
[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 receive a request for access to a CAPTCHA-protected resource via the one or more input devices. 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 a user interface for inputting a CAPTCHA via the display device, the processing device is configured to, based on determining that the electronic message includes content satisfying a corresponding standard, wherein the corresponding standard includes a format requirement that the electronic message includes content matching a predetermined format, display an insertion enablement, which, when selected, automatically inserts the content matching the predetermined format as a CAPTCHA into the user interface.
[0013] 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 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 a service, and based on determining that the first electronic device meets a corresponding criterion, wherein the corresponding criterion includes a requirement that the first electronic device is within a predetermined proximity to the second electronic device, the processing device is configured to display a verification prompt via the display device to require verification information from the second electronic device to be entered on the first electronic device to continue. When displaying the verification prompt, the processing device is configured to receive verification information from the second electronic device on the first electronic device via the one or more input devices. In response to receiving the verification information, the processing device is configured to initiate a process for sharing authentication credentials for a service from the first electronic device to the second electronic device.
[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 detect a speech request to display password information via the one or more input devices. In response to receiving a speech request to display password information, the processing device is configured to display the password for a first user account if it is determined that the request is for a password for a first user account accessible by the device and that the user has been authenticated, and to display the password for a second user account if it is determined that the request is for a password for a second user account accessible by the device and that the user has been authenticated.
[0015] 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 operations to be performed in 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 operations to be performed in any of the methods described herein. According to some embodiments, a graphical user interface on an electronic device includes one or more 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 performing one or more programs stored in non-transitory memory, the one or more elements being 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 operations to be performed in 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 operations to be performed in any of the methods described herein.
[0016] Therefore, electronic devices with display devices and one or more input devices are provided with faster and more efficient methods and interfaces for managing user account authentication credentials, thereby improving the effectiveness, efficiency, and user satisfaction of such devices. These methods and interfaces can supplement or replace conventional methods used to manage user account authentication credentials. Attached Figure Description
[0017] To better understand the various embodiments described, reference should be made to the following detailed description in conjunction with the accompanying drawings, wherein similar reference numerals indicate corresponding parts in all the drawings.
[0018] Figure 1A This is a block diagram illustrating a portable multi-functional device with a touch-sensitive display according to some embodiments.
[0019] Figure 1B This is a block diagram illustrating exemplary components for event handling according to some embodiments.
[0020] Figure 2 A portable multi-functional device with a touchscreen is shown according to some embodiments.
[0021] Figure 3This is a block diagram of an exemplary multifunctional device having a display and a touch-sensitive surface according to some embodiments.
[0022] Figure 4A An exemplary user interface for an application menu on a portable multifunction device according to some embodiments is shown.
[0023] Figure 4B An exemplary user interface for a multifunctional device having a touch-sensitive surface separate from the display is shown according to some embodiments.
[0024] Figures 5A to 5AD An exemplary user interface is shown, according to some embodiments, for generating a new password for a user account and inserting a verification code into the user interface.
[0025] Figures 6A to 6H An exemplary user interface for sharing authentication credentials is shown according to some embodiments.
[0026] Figures 7A to 7Y An exemplary user interface for displaying password information is shown according to some embodiments.
[0027] Figures 8A to 8C This is a flowchart illustrating a method for generating a new password for a user account according to some embodiments.
[0028] Figures 9A to 9D This is a flowchart illustrating a method for inserting a verification code into a user interface according to some embodiments.
[0029] Figures 10A to 10C This is a flowchart illustrating a method for sharing authentication credentials according to some embodiments.
[0030] Figures 11A to 11C This is a flowchart illustrating a method for displaying password information according to some embodiments. Detailed Implementation
[0031] As the number of service providers offering services (e.g., web services and mobile applications) increases, so does the number of user accounts associated with users. Many user accounts are associated with authentication credentials (such as usernames and passwords) provided to access resources offered as part of the service. Many users struggle to remember numerous username / password combinations. Consequently, many users choose simple, weak, and / or insecure passwords or use the same password for many different user accounts, leading to a lack of security. When providing a password to log in to a user account on a new device, users can easily forget strong passwords or be required to enter additional authentication credentials in the form of a CAPTCHA.
[0032] Therefore, in various implementations, when the option to generate a new password for a user account is provided, the device automatically generates a strong new password. Furthermore, the device stores the new password for easy retrieval via verbal request. In various implementations, the device shares passwords (and / or other authentication credentials) with other devices and automatically recognizes received verification codes.
[0033] under, 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 An exemplary user interface for managing authentication credentials for user accounts is shown. Figure 8A exist Figure 8C A flowchart illustrating the method for generating new passwords for user accounts is shown. Figures 9A to 9D A flowchart illustrating 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 illustrating a method for displaying password information is shown. Figures 5A to 5AD , Figures 6A to 6H and Figures 7A to 7Y The user interface in the document is used to explain Figures 8A to 8C , Figures 9A to 9D , Figures 10A to 10C and Figures 11A to 11C The process in.
[0034] Exemplary device
[0035] Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. Numerous specific details are shown in the following detailed description in order to provide a full understanding of the various described embodiments. However, it will be apparent to those skilled in the art that the various described embodiments can be practiced without these specific details. In other instances, well-known methods, processes, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure various aspects of the embodiments.
[0036] It will also be understood that, although in some cases 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 may be referred to as a second contact, and similarly, a second contact may be referred to as a first contact, without departing from the scope of the various described embodiments. Both the first contact and the second contact are contacts, but they are not the same contact unless the context clearly indicates otherwise.
[0037] The terminology used in the description of the various embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various embodiments and the appended claims, the singular forms “a” 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 covers any and all possible combinations of one or more of the associated listed items. It will also be understood that the terms “includes”, “including”, “comprises”, and / or “comprising”, when used in this specification, specify the presence of the stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0038] As used herein, depending on the context, the term “if” is optionally interpreted as meaning “when…” followed by “at…” or “in response to determination” or “in response to detection.” Similarly, depending on the context, the phrase “if determination…” or “if [the stated condition or event] is optionally interpreted as meaning “in response to determination…” or “in response to detection of [the stated condition or event]” or “in response to detection of [the stated condition or event].”
[0039] This document describes embodiments of electronic devices, user interfaces of such devices, and related processes for using such devices. 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 functionality. Exemplary embodiments of portable multi-functional devices include, but are not limited to, those from Apple Inc. (Cupertino, California). Devices, iPod equipment, Devices, Apple Equipment and Device. Optionally, other portable electronic devices may be used, such as laptop or tablet computers with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads). It should also be understood that in some embodiments, the device is not a portable communication device, but a desktop computer with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads).
[0040] 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, mouse, and / or joystick.
[0041] The device typically supports a variety of applications, such as one or more of the following: drawing applications, presentation applications, word processing applications, website creation applications, disk editing applications, spreadsheet applications, game applications, phone applications, video conferencing applications, email applications, instant messaging applications, fitness support applications, photo management applications, digital camera applications, digital video camcorder applications, web browsing applications, digital music player applications, and / or digital video player applications.
[0042] Various applications running on the device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more 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 adjusted and / or varied within the respective applications. In this way, the device's common physical architecture (such as the touch-sensitive surface) optionally utilizes a user interface that is intuitive and clear to the user to support various applications.
[0043] Now let’s turn our attention to examples of portable devices with touch-sensitive displays. Figure 1A This is a block diagram illustrating a portable multi-functional device 100 having a touch-sensitive display system 112 according to some embodiments. The touch-sensitive display system 112 is sometimes referred to as a "touchscreen" for convenience, and is sometimes simply referred to as a touch-sensitive display. Device 100 includes a memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral interface 118, RF circuitry 108, audio circuitry 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input or control devices 116, and an external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more intensity sensors 165 (e.g., touch-sensitive surfaces, such as the touch-sensitive display system 112 of device 100) for detecting the intensity of contact on device 100. Device 100 optionally includes one or more haptic output generators 163 for generating haptic output on device 100 (e.g., generating haptic output on a touch-sensitive surface such as the touch-sensitive display system 112 of device 100 or the touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.
[0044] As used in this specification and claims, the term "haptic output" refers to a physical displacement of the device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., the housing), or a displacement of a component relative to the center of mass of the device, which is detected by the user using the user's tactile sense. For example, when the device or a component of the device comes into contact with a touch-sensitive surface (e.g., a finger, palm, or other part of the user's hand), the haptic output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in the physical characteristics of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or touchpad) may optionally be interpreted by the user as a "press-click" or "release-click" on a physically actuated button. In some cases, the user will feel a tactile sensation, such as a "press-click" or "release-click," even when a physically actuated button associated with a touch-sensitive surface that has been physically pressed (e.g., displaced) by the user's movement does not move. For example, even when the smoothness of the tactile surface remains unchanged, the movement of the tactile surface can optionally be interpreted or sensed by the user as the "roughness" of the tactile surface. While such interpretations of touch by users will be limited by the individualized sensory perceptions of the user, many sensory perceptions of touch are common to most users. Therefore, when a tactile output is described as corresponding to a specific sensory perception of a user (e.g., "press click", "release click", "roughness"), unless otherwise stated, the generated tactile output corresponds to a physical displacement of the device or its components that will generate the sensory perception of a typical (or ordinary) user.
[0045] It should be understood that device 100 is merely an example of a portable multifunctional device, and device 100 may optionally have more or fewer components than shown, may optionally combine two or more components, or may optionally have different configurations or arrangements of these components. Figure 1A The various components shown are implemented in hardware, software, firmware, or any combination thereof (including one or more signal processing circuits and / or application-specific integrated circuits).
[0046] 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 interface 118) is optionally controlled by memory controller 122.
[0047] Peripheral interface 118 can be used to couple the device's input peripherals and output peripherals to CPU 120 and memory 102. One or more processors 120 run or execute various software programs and / or instruction sets stored in memory 102 to perform various functions of device 100 and process data.
[0048] In some embodiments, the peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0049] RF (Radio Frequency) circuit 108 receives and transmits RF signals, also known as electromagnetic signals. RF circuit 108 converts electrical signals into electromagnetic signals and vice versa, and communicates with communication networks and other communication devices via these electromagnetic signals. RF circuit 108 optionally includes well-known circuitry for performing these functions, including but not limited to antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, codec chipsets, Subscriber Identity Module (SIM) cards, memory, etc. RF circuit 108 optionally communicates wirelessly with networks and other devices, such as the Internet (also known as the World Wide Web (WWW)), intranets, and / or wireless networks (such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs)). This wireless communication may optionally use any of a variety of communication standards, protocols, and technologies, including but not limited to Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), High-Speed Downlink Packet Access (HSDPA), High-Speed Uplink Packet Access (HSUPA), Evolved Pure Data (EV-DO), HSPA, HSPA+, Dual-Unit HSPA (DC-HSPDA), Long Term Evolution (LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, and Wi-Fi (e.g., IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE...). 802.11g and / or IEEE 802.11n), Voice over Internet Protocol (VoIP), Wi-MAX, email protocols (e.g., Internet Messaging Access Protocol (IMAP) and / or Post Office Protocol (POP)), instant messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Utilizing Extended Protocol (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 this document submission.
[0050] Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between the user and device 100. Audio circuitry 110 receives audio data from peripheral interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves that are audible to humans. Audio circuitry 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuitry 110 converts the electrical signals into audio data and transmits the audio data to peripheral interface 118 for processing. Audio data is optionally retrieved by peripheral interface 118 from and / or transmitted to memory 102 and / or RF circuitry 108. In some embodiments, audio circuitry 110 also includes a headset jack (e.g., ...). Figure 2 (212 in the text). The headset jack provides an interface between the audio circuitry 110 and a removable audio input / output peripheral device, such as an output-only headphone or a headset with both output (e.g., a mono or binaural headphone) and input (e.g., a microphone).
[0051] I / O subsystem 106 couples input / output peripherals on device 100, such as touch-sensitive display system 112 and other input or control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, optical sensor controller 158, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive electrical signals from / send electrical signals to other input or control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push-buttons, rocker buttons, etc.), dial pads, 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: keyboard, infrared port, USB port, stylus, and / or pointing device such as mouse. One or more buttons (e.g., Figure 2 Optionally, 208) includes an up / down button for volume control of speaker 111 and / or microphone 113. One or more buttons optionally include a push-down button (e.g., Figure 2 (206 in the middle).
[0052] The touch-sensitive display system 112 provides input and output interfaces between the device and the user. The display controller 156 receives electrical signals from and / or sends electrical signals to the touch-sensitive display system 112. The touch-sensitive display system 112 displays visual output to the user. Visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively, "graphics"). In some embodiments, some or all of the visual output corresponds to user interface objects.
[0053] The touch-sensitive display system 112 has a touch-sensitive surface, sensor, or sensor array that accepts input from a user based on tactile / haptic contact. The touch-sensitive display system 112 and the display controller 156 (along with any associated modules and / or instruction set in the memory 102) detect contact on the touch-sensitive display system 112 (and any movement or interruption of that contact) and translate the detected contact into interaction with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch-sensitive display system 112. In one exemplary embodiment, the contact point between the touch-sensitive display system 112 and the user corresponds to the user's finger or stylus.
[0054] The touch-sensitive display system 112 optionally employs LCD (Liquid Crystal Display) technology, LPD (Light Emitting Polymer Display) technology, or LED (Light Emitting Diode) technology, but other display technologies are used in other embodiments. The touch-sensitive display system 112 and display controller 156 optionally employ any of a variety of touch sensing technologies now known or to be developed thereafter, along with 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. These various touch sensing technologies include, but are not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies. In one exemplary embodiment, projected mutual capacitance sensing technology, such as that from Apple Inc. (Cupertino, California), is used. iPod and The technology discovered in [the text].
[0055] The touch-sensitive display system 112 optionally has a video resolution exceeding 100 dpi. In some embodiments, the touchscreen video resolution exceeds 400 dpi (e.g., 500 dpi, 800 dpi, or greater). Users optionally use any suitable object or accessory such as a stylus, finger, etc., to interact with the touch-sensitive display system 112. In some embodiments, the user interface is designed to work with finger-based touch and gestures, which may be less precise than stylus-based input due to the larger contact area of a finger on the touchscreen. In some embodiments, the device translates coarse finger-based input into precise pointer / cursor positions or commands to perform the user-desired actions.
[0056] 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 that, 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.
[0057] The device 100 also includes a power system 162 for supplying power to various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, a power fault detection circuit, a power converter or inverter, a power status indicator (e.g., light-emitting diodes (LEDs)), and any other components associated with the generation, management, and distribution of power in the portable device.
[0058] The device 100 may optionally also include one or more optical sensors 164. Figure 1A An optical sensor coupled to an optical sensor controller 158 in the I / O subsystem 106 is shown. One or more optical sensors 164 optionally include charge-coupled devices (CCDs) or complementary metal-oxide-semiconductor (CMOS) phototransistors. The 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 an imaging module 143 (also referred to as a camera module), the one or more optical sensors 164 optionally capture still images and / or video. 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, enabling the touchscreen to function 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 images of the user (e.g., for selfies, for video conferencing while the user views other video conference participants on the touchscreen, etc.).
[0059] The device 100 may optionally also include one or more contact strength sensors 165. Figure 1A A contact strength sensor coupled to a strength sensor controller 159 in I / O subsystem 106 is shown. One or more contact strength sensors 165 optionally include one or more piezoresistive strain gauges, capacitive force sensors, electro-force sensors, piezoelectric sensors, optical force sensors, capacitive touch-sensitive surfaces, or other strength sensors (e.g., sensors for measuring the force (or pressure) of contact on a touch-sensitive surface). One or more contact strength sensors 165 receive contact strength information (e.g., pressure information or a substitute for pressure information) from the environment. In some embodiments, at least one contact strength sensor is arranged juxtaposed with or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact strength sensor is located on the rear of device 100 opposite to the touch-sensitive display system 112 located on the front of device 100.
[0060] The device 100 optionally also includes one or more proximity sensors 166. Figure 1A A proximity sensor 166 coupled to a peripheral device interface 118 is shown. Alternatively, the proximity sensor 166 is coupled to an input controller 160 in an I / O subsystem 106. In some embodiments, when the multifunction device is placed near a user's ear (e.g., when the user is making a phone call), the proximity sensor is turned off and the touch-sensitive display system 112 is disabled.
[0061] The device 100 may optionally also include one or more tactile output generators 163. Figure 1A A haptic output generator coupled to a haptic feedback controller 161 in I / O subsystem 106 is shown. 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 polymerizers, piezoelectric actuators, electrostatic actuators, or other haptic output generating components (e.g., components that convert electrical signals into haptic outputs on the device). One or more haptic output generators 163 receive haptic feedback generation instructions from haptic feedback module 133 and generate haptic outputs on device 100 that can be felt by a user of device 100. In some embodiments, at least one haptic output generator is juxtaposed or adjacent to a haptic surface (e.g., haptic display system 112) and optionally generates the haptic output by moving the haptic surface vertically (e.g., in / outward from the surface of device 100) or laterally (e.g., backward and forward in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the rear of the device 100 opposite to the touch-sensitive display system 112 located on the front of the device 100.
[0062] The device 100 may optionally also include 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 device’s position (e.g., attitude). Figure 1A Sensors 167, 168, and 169, coupled to peripheral interface 118, are shown. Alternatively, sensors 167, 168, and 169 may be coupled to input controller 160 in I / O subsystem 106. In some embodiments, information is displayed on a touchscreen display in portrait or landscape view based on 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 acquiring information about the location of device 100.
[0063] In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a touch / 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 an application program (or instruction set) 136. Furthermore, in some embodiments, memory 102 stores device / global internal state 157, as shown in the figure. Figure 1A and Figure 3 As shown in the diagram. Device / global internal state 157 includes one or more of the following: active application state, which indicates which applications (if any) are currently active; display state, which indicates what applications, views or other information occupy the various areas of the touch-sensitive display system 112; sensor state, including information obtained from the device's various sensors and other input or control devices 116; and position and / or orientation information regarding the device's position and / or orientation.
[0064] Operating system 126 (e.g., iOS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or embedded operating systems such as VxWorks) includes various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware and software components.
[0065] The communication module 128 facilitates communication with other devices via one or more external ports 124 and includes various software components for processing data received by the RF circuitry 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) are adapted to be directly coupled to other devices or indirectly coupled via a network (e.g., the Internet, Wireless LAN, etc.). In some embodiments, the external ports are compatible with some Apple Inc. (Cupertino, California) devices. iPod and The device uses the same or similar and / or compatible multi-pin (e.g., 30-pin) connectors as the 30-pin connector used in the device. In some embodiments, the external port is compatible with some Apple Inc. (Cupertino, California) connectors. iPod and The device uses the same or similar and / or compatible Lightning connectors.
[0066] The contact / motion module 130 optionally detects contact with the touch-sensitive display system 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). The contact / motion module 130 includes software components for performing various operations related to contact detection (e.g., a finger or stylus), such as determining whether 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 an alternative to force or pressure), 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 a break in contact). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point optionally includes determining the rate (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point, the movement of which is represented by a series of contact data. These operations can optionally be applied to single-point contact (e.g., single-finger contact or stylus contact) or multi-point simultaneous contact (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 contact on the touchpad.
[0067] The contact / motion module 130 optionally detects user gesture input. Different gestures on a touch-sensitive surface have different contact patterns (e.g., different movements, timings, and / or intensities of the detected contact). Therefore, gestures are optionally detected by detecting specific contact patterns. For example, detecting a single-finger tap gesture includes detecting a finger press event, and then detecting a finger lift-off (lift-away) event at the same (or substantially the same) location as the finger press event (e.g., at the icon location). As another example, detecting a finger swipe gesture on a touch-sensitive surface includes detecting a finger press event, then detecting one or more finger drag events, and subsequently detecting a finger lift-off (lift-away) event. Similarly, stylus taps, swipes, drags, and other gestures are optionally detected by detecting specific contact patterns of the stylus.
[0068] 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 properties). As used herein, the term "graphics" includes any object that can be displayed to a user, and non-limitingly includes text, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.
[0069] In some embodiments, the graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module 132 receives one or more codes from an application or the like to specify the graphic to be displayed, and, if necessary, also receives coordinate data and other graphic attribute data, and then generates screen image data to output to the display controller 156.
[0070] The haptic feedback module 133 includes various software components for generating instructions used by the haptic output generator 163 to produce haptic output at one or more locations on the device 100 in response to user interaction with the device 100.
[0071] Optionally, the text input module 134, 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).
[0072] GPS module 135 determines the location of the device and provides that information for use in various applications (e.g., to phone 138 for location-based dialing; to camera 143 as image / video metadata; and to applications that provide location-based services such as weather desktop apps, local yellow pages desktop apps, and map / navigation desktop apps).
[0073] Application 136 optionally includes the following modules (or instruction sets) or subsets or supersets thereof:
[0074] • Contact 4EBA module 137 (sometimes called address book or contact list);
[0075] • Telephone module 138;
[0076] • Video conferencing module 139;
[0077] • Email client module 140;
[0078] • Instant Messaging (IM) module 141;
[0079] Fitness support module 142;
[0080] • Camera module 143 for still images and / or video images;
[0081] • Image management module 144;
[0082] • Browser module 147;
[0083] • Calendar module 148;
[0084] • Desktop mini-program module 149, which optionally includes one or more of the following: weather desktop mini-program 149-1, stock market desktop mini-program 149-2, calculator desktop mini-program 149-3, alarm clock desktop mini-program 149-4, dictionary desktop mini-program 149-5, and other desktop mini-programs obtained by the user, and desktop mini-programs created by the user 149-6;
[0085] • Desktop app creator module 150 for creating user-created desktop apps 149-6;
[0086] • Search module 151;
[0087] • A video and music player module 152, optionally composed of a video player module and a music player module;
[0088] • Notepad module 153;
[0089] • Map module 154; and / or
[0090] • Online video module 155.
[0091] Examples of other applications 136 that may be optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, rendering applications, Java-enabled applications, encryption, digital rights management, speech recognition, and speech duplication.
[0092] In conjunction with the touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, the contact module 137 includes executable instructions for managing an address book or contact list (e.g., in the application internal state 192 of the contact module 137 stored in memory 102 or memory 370), including: adding names to the address book; deleting names from the address book; associating phone numbers, email addresses, physical addresses, or other information with names; associating images with names; categorizing and classifying names; providing phone numbers and / or email addresses to initiate and / or facilitate communication via telephone 138, video conferencing 139, email 140, or instant messaging 141; and so on.
[0093] Combining RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, telephone module 138 includes executable instructions for performing the following operations: inputting a character sequence corresponding to a telephone number, accessing one or more telephone numbers in the address book 137, modifying an input telephone number, dialing a corresponding telephone number, initiating a conversation, and disconnecting or hanging up when the conversation is complete. As described above, wireless communication optionally employs any of a variety of communication standards, protocols, and technologies.
[0094] Combining RF circuitry 108, audio circuitry 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, contact list 137, and telephone module 138, video conferencing module 139 includes executable instructions to initiate, conduct, and terminate video conferences between the user and one or more other participants based on user instructions.
[0095] Incorporating RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user commands. Combined with image management module 144, email client module 140 makes it very easy to create and send emails containing still images or video images captured by camera module 143.
[0096] In conjunction with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for performing the following operations: inputting a character sequence corresponding to an instant message, modifying previously input characters, sending a corresponding instant message (e.g., using Short Message Service (SMS) or Multimedia Messaging Service (MMS) protocols for telephone-based instant messaging or using XMPP, SIMPLE, Apple Push Notification Service (APNs), or IMPS for internet-based instant messaging), receiving an instant message, and viewing a received instant message. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photographs, 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 telephone-based messages (e.g., messages sent using SMS or MMS) and internet-based messages (e.g., messages sent using XMPP, SIMPLE, APNs, or IMPS).
[0097] Incorporating RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and video and music player module 152, fitness support module 142 includes executable instructions for creating fitness (e.g., with time, distance, and / or calorie burning goals); communicating with fitness sensors (in sports equipment and smartwatches); receiving fitness sensor data; calibrating sensors used to monitor fitness; selecting and playing music for fitness; and displaying, storing, and transmitting fitness data.
[0098] In conjunction with the touch-sensitive display system 112, display controller 156, one or more optical sensors 164, optical sensor controller 158, contact module 130, graphics module 132, and image management module 144, camera module 143 includes executable instructions for performing the following operations: capturing still images or videos (including video streams) and storing them in memory 102, modifying the characteristics of still images or videos, and / or deleting still images or videos from memory 102.
[0099] In conjunction with the touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, text input module 134, and camera module 143, the image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, tagging, deleting, displaying (e.g., in a digital slideshow or photo album), and storing still images and / or video images.
[0100] In conjunction with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, browser module 147 includes executable instructions for browsing the Internet (including searching, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages) according to user instructions.
[0101] Incorporating RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, calendar module 148 includes executable instructions for creating, displaying, modifying, and storing calendars and associated data (e.g., calendar entries, to-dos, etc.) according to user instructions.
[0102] In conjunction with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, desktop applet module 149 is optionally a micro-application downloaded and used by a user (e.g., weather desktop applet 149-1, stock market desktop applet 149-2, calculator desktop applet 149-3, alarm clock desktop applet 149-4, and dictionary desktop applet 149-5) or a user-created micro-application (e.g., user-created desktop applet 149-6). In some embodiments, the desktop applet includes HTML (Hypertext Markup Language) files, CSS (Cascading Style Sheets) files, and JavaScript files. In some embodiments, the desktop applet includes XML (Extensible Markup Language) files and JavaScript files (e.g., Yahoo! desktop applet).
[0103] Combining RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, desktop applet creator module 150 includes executable instructions for creating desktop applets (e.g., transferring user-specified portions of web pages to desktop applets).
[0104] In conjunction with the touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, the search module 151 includes executable instructions for searching the memory 102 for text, music, sound, images, videos, and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) according to user instructions.
[0105] In conjunction with the touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, the video and music player module 152 includes executable instructions allowing users to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing back video (e.g., on the touch-sensitive display system 112 or on an external display wirelessly connected via 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.).
[0106] In conjunction with the touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, the notepad module 153 includes executable instructions for creating and managing notes, to-do items, etc., according to user instructions.
[0107] Combining RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 includes executable instructions for receiving, displaying, modifying, and storing maps and map-related data (e.g., driving routes; data on shops and other points of interest at or near specific locations; and other location-based data) according to user instructions.
[0108] In conjunction with the touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, the online video module 155 includes executable instructions that allow users to access, browse, receive (e.g., via streaming and / or downloading), play back (e.g., on the touchscreen 112 or on an external display connected wirelessly or via external port 124), send emails with links to specific online videos, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, the instant messaging module 141 is used instead of the email client module 140 to send links to specific online videos.
[0109] Each module and application identified above corresponds to a set of executable instructions for performing one or more of the functions described above and the methods described in this application (e.g., computer-implemented methods and other information processing methods described herein). These modules (i.e., instruction sets) need not be implemented as separate software programs, processes, or modules; therefore, various subsets of these modules may optionally be combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 optionally stores a subset of the modules and data structures described above. Furthermore, memory 102 optionally stores additional modules and data structures not described above.
[0110] In some embodiments, device 100 is a device on which the operation of a predefined set of functions is performed exclusively via a touchscreen and / or touchpad. By using a touchscreen and / or touchpad as the primary input control device for operating device 100, the number of physical input control devices (e.g., push-buttons, dials, etc.) on device 100 is optionally reduced.
[0111] A predefined set of functions, uniquely performed via a touchscreen and / or touchpad, optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 from any user interface displayed on device 100 to a main menu, home menu, or root menu. In such embodiments, a touchpad is used to implement a "menu button." In some other embodiments, the menu button is a physical push-button or other physical input control device, rather than a touchpad.
[0112] Figure 1B This is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 ( Figure 1A (middle) or memory 370 ( Figure 3 This includes an event classifier 170 (e.g., in operating system 126) and a corresponding application 136-1 (e.g., any one of the aforementioned applications 136, 137 to 155, 380 to 390).
[0113] Event classifier 170 receives event information and determines the application 136-1 to which the event information should be delivered and the application view 191 of application 136-1. Event classifier 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192, which indicates one or more current application views displayed on touch-sensitive display system 112 when the application is active or executing. In some embodiments, device / global internal state 157 is used by event classifier 170 to determine which application(s) is currently active, and application internal state 192 is used by event classifier 170 to determine the application view 191 to which the event information should be delivered.
[0114] 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 ready to be displayed by the application 136-1, a state queue for enabling the user to return to the previous state or view of the application 136-1, and a repeat / undo queue for the user's previous actions.
[0115] Event monitor 171 receives event information from peripheral device interface 118. The event information includes information about sub-events (e.g., user touches on touch-sensitive display system 112 as part of a multi-touch gesture). Peripheral device interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, one or more accelerometers 167, one or more gyroscopes 168, one or more magnetometers 169, and / or microphone 113 (via audio circuitry 110). The information received by peripheral device interface 118 from I / O subsystem 106 includes information from touch-sensitive display system 112 or touch-sensitive surfaces.
[0116] In some embodiments, event monitor 171 sends requests to peripheral device interface 118 at predetermined intervals. In response, peripheral device interface 118 transmits event information. In other embodiments, peripheral device interface 118 transmits event information only when a significant event occurs (e.g., receiving input above a predetermined noise threshold and / or receiving input for a predetermined duration).
[0117] In some embodiments, the event classifier 170 further includes a hit view determination module 172 and / or an activity event recognizer determination module 173.
[0118] 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 a sub-event has occurred within one or more views. A view consists of controls and other elements that the user can see on the display.
[0119] Another aspect of the user interface associated with an application is a set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of the corresponding application) in which a touch is detected optionally corresponds to a procedural level within the application's procedural or view hierarchy. For example, the lowest-level view in which a touch is detected is optionally referred to as the hit view, and the set of events identified as correct input is optionally determined at least in part based on the hit view of the initial touch that initiates a touch-based gesture.
[0120] The hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views organized in a hierarchical structure, the hit view determination module 172 identifies the hit view as the lowest-level view in the hierarchical structure from which the sub-events should be processed. In most cases, the hit view is the lowest-level view in which the initiating sub-event (i.e., the first sub-event in a sequence of sub-events that forms an event or potential event) occurs. Once the hit view is identified by the hit view determination module, the hit view typically receives all sub-events related to the same touch or input source to which it was identified as the hit view.
[0121] The activity event recognizer determination module 173 determines which views(s) within the view hierarchy should receive a specific sub-event sequence. In some embodiments, the activity event recognizer determination module 173 determines that only the hit view should receive the specific sub-event sequence. In other embodiments, the activity event recognizer determination module 173 determines that all views including the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive the specific sub-event sequence. In other embodiments, even if the touch sub-event is entirely confined to the area associated with a particular view, the higher-level view in the hierarchy will still remain the actively participating view.
[0122] Event assigner module 174 assigns event information to event identifiers (e.g., event identifier 180). In embodiments that include active event identifier determination module 173, event assigner module 174 delivers event information to the event identifier determined by active event identifier determination module 173. In some embodiments, event assigner module 174 stores event information in an event queue, which is retrieved by the corresponding event receiver module 182.
[0123] In some embodiments, operating system 126 includes event classifier 170. Alternatively, application 136-1 includes event classifier 170. In yet another embodiment, event classifier 170 is a standalone module or part of another module (such as contact / motion module 130) stored in memory 102.
[0124] In some embodiments, application 136-1 includes a plurality of event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events occurring within a corresponding view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, a corresponding application view 191 includes a plurality of event recognizers 180. In other embodiments, one or more event recognizers among the event recognizers 180 are part of a separate module, which is a higher-level object such as a user interface toolkit or from which application 136-1 inherits methods and other properties. In some embodiments, a corresponding event handler 190 includes one or more of the following: a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from an event classifier 170. Event handlers 190 optionally utilize or invoke the data updater 176, the object updater 177, or the GUI updater 178 to update the application's internal state 192. Alternatively, one or more application views in application view 191 include one or more corresponding event handlers 190. Additionally, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in the corresponding application view 191.
[0125] The corresponding event recognizer 180 receives event information (e.g., event data 179) from the event classifier 170 and identifies events 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 one subset of metadata 183 and event delivery instructions 188 (which optionally include sub-event delivery instructions).
[0126] Event receiver 182 receives event information from event classifier 170. The event information includes information about sub-events, such as touch or touch movement. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event involves touch movement, the event information 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 lateral orientation, or vice versa), and the event information includes corresponding information about the device's current orientation (also referred to as device orientation).
[0127] Event comparator 184 compares event information with predefined event or sub-event definitions and determines the event or sub-event based on the comparison, or determines or updates the state of the event or sub-event. In some embodiments, event comparator 184 includes event definition 186. Event definition 186 contains definitions of events (e.g., predefined sequences of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in a corresponding event 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, event 1 (187-1) is defined as a double-click on a displayed object. For example, a double-click includes a first touch (touch start) of a predetermined duration on the displayed object, a first lift of a predetermined duration (touch end), a second touch (touch start) of a predetermined duration on the displayed object, and a second lift of a predetermined duration (touch end). In another example, event 2 (187-2) is defined as a drag on a displayed object. For example, dragging includes a touch (or contact) on the displayed object for a predetermined duration, movement of the touch on the touch-sensitive display system 112, and lifting off the touch (end of touch). In some embodiments, the event also includes information for one or more associated event handlers 190.
[0128] In some embodiments, the event definition of a corresponding event, such as event 1 (187-1) or event 2 (187-2), includes the event definition of the corresponding user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view displaying three user interface objects on a touch-sensitive display system 112, when a touch is detected on the touch-sensitive display system 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a corresponding event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects the event handler associated with the sub-event and the object that triggered the hit test.
[0129] In some embodiments, the definition of a corresponding event, such as event 1 (187-1) or event 2 (187-2), also includes a delay action that delays the delivery of event information until it has been determined whether the sub-event sequence actually corresponds to or does not correspond to the event type of the event recognizer.
[0130] When the corresponding event recognizer 180 determines that the sub-event sequence does not match any event in event definition 186, the corresponding event recognizer 180 enters an event impossible, event failed, or event ended state, after which subsequent sub-events based on touch gestures are ignored. In this case, other event recognizers (if any) that remain active in the hit view continue to track and process the ongoing sub-events based on touch gestures.
[0131] In some embodiments, the corresponding event recognizer 180 includes metadata 183 having configurable attributes, flags, and / or lists instructing how the event delivery system should perform sub-event delivery to actively participating event recognizers. In some embodiments, the metadata 183 includes configurable attributes, flags, and / or lists instructing how or how event recognizers can interact with each other. In some embodiments, the metadata 183 includes configurable attributes, flags, and / or lists instructing whether sub-events are delivered to different levels in a view or programmatic hierarchy.
[0132] 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 delaying) the sub-event to the corresponding hit view. In some embodiments, the event recognizer 180 throws a tag associated with the identified event, and the event handler 190 associated with the tag receives the tag and executes a predefined procedure.
[0133] In some embodiments, event delivery instruction 188 includes a sub-event delivery instruction that delivers event information about a sub-event without activating an event handler. Instead, the sub-event delivery instruction delivers event information to an event handler associated with the sub-event sequence or to an actively participating view. The event handler associated with the sub-event sequence or the actively participating view receives the event information and executes a predetermined procedure.
[0134] In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates phone numbers used in contact module 137 or stores video files used in video player module 145. In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates new user interface objects or updates the location of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on a touch-sensitive display.
[0135] In some embodiments, event handler 190 includes, or has access to, a data updater 176, an object updater 177, and a GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0136] It should be understood that the above discussion regarding event handling for user touch on a touch-sensitive display also applies to other forms of user input used to operate the multifunction device 100 using an input device, and not all user input is initiated on the touchscreen. For example, mouse movement and mouse button presses optionally in conjunction with single or multiple keyboard presses or holds; touch movements on the touchpad, such as taps, drags, scrolls, etc.; stylus input; device movement; verbal commands; detected eye movements; biometric input; and / or any combination thereof may optionally be used as input corresponding to sub-events that define the event to be identified.
[0137] Figure 2 It is shown that some embodiments have a touch screen (e.g., Figure 1A A portable multi-functional device 100 (a touch-sensitive display system 112). The touchscreen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment and other embodiments described below, a user can select one or more graphics by gesturing over the graphics, for example, using one or more fingers 202 (not drawn to scale in the figures) or one or more styluses 203 (not drawn to scale in the figures). In some embodiments, selection of one or more graphics occurs when the user interrupts contact with one or more graphics. In some embodiments, gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, up and / or down), and / or scrolling (from right to left, from left to right, up and / or down) of a finger already in contact with the device 100. In some embodiments or in some cases, unintentional contact with a graphic does not select the graphic. For example, a swipe gesture over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.
[0138] Device 100 optionally also includes one or more physical buttons, such as a "home" or menu button 204. As previously described, menu button 204 is optionally used to navigate to any of the set of applications 136 optionally executed on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on a touchscreen display.
[0139] In some embodiments, device 100 includes a touchscreen display, a menu button 204, a push-button 206 for powering on / off the device and locking the device, one or more volume control buttons 208, a SIM card slot 210, a headset jack 212, and a docking / charging external port 124. The push-button 206 is optionally used to power on / off the device by pressing the button and holding it in the pressed state for a predefined time interval; to lock the device by pressing the button and releasing it before the predefined time interval has elapsed; and / or to unlock the device or initiate an unlocking process. In some embodiments, device 100 also accepts voice input via microphone 113 for activating or deactivating certain functions. Device 100 also optionally includes one or more contact strength sensors 165 for detecting the intensity of contact on the touch-sensitive display system 112, and / or one or more haptic output generators 163 for generating haptic outputs for a user of device 100.
[0140] Figure 3 This is a block diagram of an exemplary multi-functional 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, desktop computer, tablet computer, multimedia player device, navigation device, educational device (such as a children's learning toy), gaming system, or control device (e.g., a home controller or industrial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 for interconnecting these components. The communication bus 320 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 touchscreen display. The I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, and a haptic output generator 357 for generating haptic output on device 300 (e.g., similar to the above references). Figure 1A The one or more tactile output generators 163 and sensors 359 (e.g., similar to those mentioned above) Figure 1AThe sensors 112, 164, 165, 166, 167, 168, and 169 are touch sensors, optical sensors, contact strength sensors, proximity sensors, acceleration sensors, attitude and / or magnetic sensors. 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. Memory 370 optionally includes one or more storage devices located remotely from CPU 310. In some embodiments, memory 370 stores data with portable multifunction device 100 (…). Figure 1A The memory 370 stores programs, modules, and data structures similar to those stored in the memory 102 of the portable multifunction device 100, or subsets thereof. Additionally, the memory 370 optionally stores additional programs, modules, and data structures not present in the memory 102 of the portable multifunction device 100. For example, the memory 370 of the device 300 optionally stores a drawing module 380, a rendering module 382, a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while the portable multifunction device 100 (… Figure 1A The memory 102 may optionally not store these modules.
[0141] Figure 3 Each of the elements identified above is optionally stored in one or more of the previously mentioned memory devices. Each of the modules identified above corresponds to an instruction set for performing the functions described above. The modules or programs identified above (i.e., instruction sets) need not be implemented as separate software programs, processes, or modules; therefore, various subsets of these modules may optionally be combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 optionally stores a subset of the modules and data structures described above. Furthermore, memory 370 optionally stores additional modules and data structures not described above.
[0142] Now turn attention to an embodiment of the user interface (“UI”) optionally implemented on the portable multifunction device 100.
[0143] Figure 4A An exemplary user interface for an application menu on a portable multifunction device 100 according to some embodiments is shown. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes elements or a subset or superset thereof:
[0144] • Signal strength indicator 402 for wireless communications such as cellular signals and Wi-Fi signals;
[0145] • Time 404;
[0146] Bluetooth indicator 405;
[0147] • Battery status indicator 406;
[0148] • Tray tray 408 with icons for commonly used applications, such as:
[0149] The telephone module 138 has an icon 416 labeled "telephone", which optionally includes an indicator 414 indicating the number of missed calls or voicemails.
[0150] The email client module 140 has an icon 418 labeled "Mail", which optionally includes an indicator 410 for the number of unread emails;
[0151] The browser module 147 has an icon 420 labeled "Browser"; and
[0152] The video and music player module 152 (also known as the iPod (a trademark of Apple Inc.) module 152) is marked with an icon 422 labeled "iPod"; and
[0153] • Icons of other applications, such as:
[0154] Icon 424 of the οIM module 141, which is labeled "text";
[0155] The icon 426 of the calendar module 148 is labeled "Calendar";
[0156] The icon 428 of the image management module 144 is labeled "photo";
[0157] The icon 430 of the camera module 143 is labeled "camera";
[0158] The icon 432 of the online video module 155 is labeled "Online Video";
[0159] The icon 434 in the Stock Market Desktop Mini Program 149-2 is labeled "Stock Market";
[0160] The icon 436 of the map module 154 is labeled "map";
[0161] The icon 438 in the Weather Desktop Mini Program 149-1 is marked as "Weather".
[0162] The icon labeled "Clock" in the alarm clock desktop mini-program 169-6 is 440.
[0163] The icon 442 of the fitness support module 142 is labeled "fitness support";
[0164] The notepad module 153 has an icon 444 labeled "Notepad"; and
[0165] An icon 446 is used to set up an application or module, which provides access to settings for the device 100 and its various applications 136.
[0166] 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 labeled "Music" or "Music Player". Other labels are optionally used for various application icons. In some embodiments, the label of a corresponding application icon includes the name of the application corresponding to that application icon. In some embodiments, the label of a particular application icon is different from the name of the application corresponding to that particular application icon.
[0167] Figure 4B A touch-sensitive surface 451 separate from the display 450 is shown (e.g., Figure 3 Devices (e.g., tablets or touchpads 355) Figure 3 An exemplary user interface on device 300. Device 300 may also optionally include one or more contact intensity sensors (e.g., one or more sensors in sensor 359) for detecting the intensity of contact on tactile surface 451 and / or one or more tactile output generators 359 for generating tactile output for the user of device 300.
[0168] Figure 4B A touch-sensitive surface 451 separate from the display 450 is shown (e.g., Figure 3 Devices (e.g., tablets or touchpads 355) Figure 3 An exemplary user interface on device 300). Although many subsequent examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments the device detects input on a touch-sensitive surface separate from the display, such as... Figure 4B As shown in the figure. In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a main axis (e.g., on the display (e.g., 450) that is aligned with the main axis on the display (e.g., 451). Figure 4B The principal axis corresponding to 453 in the middle (e.g., Figure 4B (452 in the middle). 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 (460 and 462 in the example) Figure 4B In the diagram, 460 corresponds to 468 and 462 corresponds to 470. Thus, on a touch-sensitive surface (e.g., Figure 4B 451) and the display of a multi-functional device (e.g., Figure 4B When 450 is separated, user input detected by the device on the touch-sensitive surface (e.g., touches 460 and 462 and their movement) is used by the device to manipulate the user interface on the display. It should be understood that similar methods may be optionally used for other user interfaces described herein.
[0169] Additionally, while the examples below are primarily given with reference to finger input (e.g., finger touch, 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 touch), followed by movement of the cursor along the swipe path (e.g., instead of movement of the touch). Similarly, 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 detection of touch, followed by cessation of touch detection). Likewise, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice are optionally used simultaneously, or mouse and finger touch are optionally used simultaneously.
[0170] As used herein, the term "focus selector" refers to an input element used to indicate the current portion of a user interface with which a user is interacting. In some implementations that include a cursor or other position marker, the cursor acts as a "focus selector," such that when the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), the cursor is positioned on a touch-sensitive surface (e.g., a...). Figure 3 The touchpad 355 or Figure 4B When an input (e.g., a press input) is detected on the touch-sensitive surface 451 of the display, the specific user interface element is adjusted according to the detected input. This applies to touchscreen displays that enable direct interaction with user interface elements on the touchscreen display. Figure 1A The touch-sensitive display system 112 or Figure 4AIn some implementations of a touchscreen, a touch detected on the touchscreen acts as a "focus selector," causing the specific user interface element to be adjusted based on the detected input when input (e.g., a press input via a touch) is detected at the location of a specific user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display. In some implementations, focus moves from one area of the user interface to another without corresponding movement of the cursor or movement of a touch on the touchscreen display (e.g., moving focus from one button to another using tab keys or arrow keys); in these implementations, the focus selector moves according to the movement of focus between different areas of the user interface. Regardless of the specific form the focus selector takes, it is typically a user-controlled element (or a touch on the touchscreen display) that conveys the user's desired interaction with the user interface (e.g., by indicating to the device the element of the user interface the user expects to interact with). For example, when a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of the focus selector (e.g., a cursor, touch, or selection box) above the corresponding button will indicate that the user expects to activate that button (rather than other user interface elements shown on the device display).
[0171] User interface and related processes
[0172] Now turn attention to embodiments of user interfaces (“UIs”) and associated processes that can be implemented on electronic devices such as portable multifunction devices (PMDs) 100 or 300, which have displays, touch-sensitive surfaces, and one or more sensors for detecting the intensity of contact with the touch-sensitive surfaces.
[0173] Figure 5A exist Figure 5K An exemplary user interface for generating new passwords for user accounts, according to some embodiments, is shown. Figures 5L to 5AD An exemplary user interface for inserting a CAPTCHA into a user interface, according to some embodiments, is shown. Figures 6A to 6H An exemplary user interface for sharing authentication credentials is shown according to some embodiments. Figures 7A to 7Y Exemplary user interfaces for displaying password information are shown according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including… Figures 8A to 8C , Figures 9A to 9D , Figures 10A to 10C and Figures 11A to 11C The process in question. Although some examples in the following examples will refer to input on a touchscreen display (which combines a touch-sensitive surface and a display), in some embodiments the device detects input on a touch-sensitive surface 451 separate from the display 450, such as... Figure 4BAs shown in the image.
[0174] Figure 5A A browser user interface 502 is shown as part of a user interface 500 displayed by a portable multi-functional 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 connectivity indicator, the current time, and a battery indicator indicating the charging level of the device 100.
[0175] Below device bar 501 and spanning the remainder of the display, user interface 500 includes web browser user interface 502. Web browser user interface 502 includes address bar 521 and content area 522. Address bar 521 includes the address (e.g., URL) of the webpage with content displayed in content area 522. Address bar 521 also includes a reload capability indicator that reloads the webpage's content in content area 522 when selected. Figure 5A In the address bar, 521 displays the address of the service's homepage.
[0176] exist Figure 5A In the content area 522, the content displayed includes (Apple's) image, a registration enablement representation 531A, and a login enablement representation 531B. When selected, the registration enablement representation 531A allows a user to register for the service, for example, to create a user account for the service in order to access resources (e.g., content) protected by the user account's authentication credentials. When selected, the login enablement representation 531B allows a user to provide authentication credentials to access the service's resources.
[0177] Figure 5A The contact 550A detected at the location of the registered indicator 531A is shown.
[0178] Figure 5B This demonstrates a response to the detection of contact 550A at the location of the registered indicator 531A. Figure 5A User interface 500. Figure 5B In the URL, address bar 521 includes the address of the web service's registration page. Figure 5B In the middle, the content area 522 includes an image (of Apple), multiple fields 532A-532D for receiving text input, text associated with and describing the multiple fields 532A-532D respectively, and a registration completion enablement 531C, when the registration completion enablement is selected, a user account is created using the authentication credentials entered into the multiple fields 532A-532D.
[0179] Multiple fields 532A-532D include a new username field 532A for receiving text input indicating a username to be associated with a user account. Multiple fields 532A-532D include a phone number field 532B for receiving text input indicating a phone number to be associated with a user account (e.g., the phone number of device 100 and / or the user). Multiple fields 532A-532D include a new password field 532C for receiving text input indicating a password to be associated with a user account. Multiple fields 532A-532D include a password confirmation field 532D for receiving text input that matches the password entered into the new password field 532C.
[0180] Figure 5B The contact 550B detected at the location of the new username field 532A is shown.
[0181] Figure 5C This demonstrates the response to the detection of contact 550B at location 532A in the new username field. Figure 5B The user interface 500 includes a cursor 533 displayed in the new username field 532A in response to the detection of a selection of the new username field 532A. Furthermore, the user interface 500 includes a soft keyboard 503A with multiple character insertion indications 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 indication (indicated by an upward arrow) that, when selected, selects the cursor 533 and moves the cursor to the previous field; a next indication (indicated by a downward arrow) that, when selected, selects the cursor 533 and moves the cursor to the next field; and a completion indication (indicated by text displayed as "Complete") that, when selected, deselects the selected field and stops displaying the cursor 533 and the soft keyboard 503A.
[0182] The soft keyboard 503A includes a text suggestion area 542, which includes a text suggestion enablement that indicates suggested text, and when selected, inserts suggested text into the selected field.
[0183] Figure 5C The contact 550C is shown at the position of one of the character insertion enable representations in the plurality of character insertion enable representations of the soft keyboard 503A.
[0184] Figure 5DThe diagram illustrates the action of detecting contact 550C at the location of one of the plurality of character insertion enable representations (and additional contacts at the locations of other character insertion enable representations in the plurality of character insertion enable representations, to complete the insertion of the username “jappleseed” into the new username field 532A). Figure 5C User interface 500.
[0185] Figure 5D The image shows a contact 550D detected at the location of telephone number domain 532B.
[0186] Figure 5E This illustrates the response to detecting contact 550D at location 532B in telephone number domain. Figure 5D The user interface 500. In response to detecting a selection of the telephone number field 532B, a cursor 533 is displayed in the telephone number field 532B. Furthermore, the soft keyboard 503A is replaced by a numeric soft keyboard 503B with multiple character insertion indications that insert corresponding numeric characters into the selected field when selected. Similar to the soft keyboard 503A, the numeric soft keyboard 503B includes a navigation area 541 and a text suggestion area 542.
[0187] Figure 5E The contact 550E detected at the location of one of the multiple character insertion enable representations is shown.
[0188] Figure 5F The diagram illustrates the action of detecting contact 550E at the location of one of the plurality of character insertion display representations (and additional contacts at the other character insertion display representations to complete the insertion of the telephone number “(408)555-1234” into the telephone number field 532B). Figure 5E User interface 500.
[0189] Figure 5F The contact 550F detected at the location of the new cryptographic field 532C is shown.
[0190] Figure 5G1 This demonstrates the response to the detection of contact 550F at the location of the new cryptographic field 532C. Figure 5FIn a first embodiment of the user interface 500, in response to detecting a selection of the new password field 532C, the cursor 533 is stopped from being displayed. Therefore, 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). Furthermore, the numeric keypad 503B is replaced by the new password user interface 503C (also referred to as a "password keypad" 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 keypad 503B).
[0191] In various implementations, the automatically generated password is generated by device 100 based on one or more password constraints from the user interface (e.g., including at least a threshold number of characters, at least one uppercase letter, at least one number, and / or at least one special character). In various implementations, device 100 determines one or more password constraints based on text in the content area 522 of the user interface 500 and / or other information provided by the service.
[0192] 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, text 544 indicates that the new automatically generated password has been automatically generated and meets password strength requirements. Text 544 indicates that the new automatically generated password will be stored by device 100 and can be accessed by a user, for example, via a verbal request as further described below.
[0193] The new password user interface 503C includes an acceptance indication 543A for accepting the new automatically generated password and a rejection indication 543B for refusing to use the new automatically generated password. An auxiliary rejection indication 543BB for refusing to use the new automatically generated password is displayed separately from the new password user interface 503C; specifically, it is displayed next to the indication of the new automatically generated password in the new password field 532C.
[0194] In response to the selection of a specific field, device 100 determines whether to display the soft keyboard 503A based on the type of that specific field (e.g., ...). Figure 5C (as shown), numeric keypad 503B (as shown) Figure 5E(as shown) or a new password user interface 503C. In various embodiments, device 100 uses domain detection and classification algorithms to determine the type of a domain. In various embodiments, device 100 classifies domains based on one or more of the following: (1) the text associated with the content in the content area 522 of user interface 500, or (2) the number of domains in the content area 522 of user interface 500. For example, in response to detecting a domain located next to text containing the word "password", and in response to detecting "register" or "sign up" in the text in 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 containing the word "password" and in response to detecting "login" or "sign up" in the text in content area 522, the device classifies the domain as a password domain (and displays a soft keyboard 503A for receiving password input or automatically inserting a known password into the password domain). For example, in response to detecting two fields in content area 522, one of which is located next to text containing the word "password," device 100 classifies that field as a password field for logging into a user account. Conversely, in response to detecting more than two fields in content area 522, one of which is located next to text containing the word "password," the device classifies that field as a new password field for creating a user account. Similarly, in response to detecting at least two fields in content area 522, two of which are located next to text containing the word "password," device 100 classifies the first field as a new password field and the second field as a password confirmation field.
[0195] exist Figure 5G1 In the new cryptographic field 532C, the representation of the new autogenerated cipher is the new autogenerated cipher itself. Figure 5G2 This demonstrates the response to the detection of contact 550F at the location of the new cryptographic field 532C. Figure 5F The second embodiment of the user interface 500, which is related to Figure 5G1 The difference is that the new automatically generated cipher displayed in the new cipher field 532C (and the cipher confirmation field 532D) is represented by general cipher indicators, such as a series of asterisks or bullet points. Figure 5G3 This demonstrates the response to the detection of contact 550F at the location of the new cryptographic field 532C. Figure 5F The third embodiment of the user interface 500, which is related to Figure 5G1The difference lies in that the representation of the new automatically generated password displayed in the new password field 532C (and the password confirmation field 532D) is a part of the new automatically generated password, and indicates that a part of the new automatically generated password is not displayed, for example, the visibility of the new automatically generated password is reduced by fading along its length. In some embodiments, the new automatically generated password is displayed in a covert manner (e.g., “Y2v'GS…”).
[0196] Figure 5G3 The contact 550G detected at the location of the rejection indicator 543B is shown.
[0197] Figure 5H The diagram illustrates a response to the detection of contact 550G at the location of the rejection indicator 543B (or, in various embodiments, at the location of the auxiliary rejection indicator 543BB). Figure 5G3 The user interface 500. In response to detecting a selection of the rejection enable representation 543B, the new cipher user interface 503C (including the accept enable representation 543A and the rejection enable representation 543B) is replaced by a soft keyboard 503A that includes multiple character insertion enable representations. Furthermore, a cursor 533 is displayed in the new cipher field 532C.
[0198] In various implementation methods (such as) Figure 5H As shown), in response to detecting a selection of the rejection indication 543B, the display of the new automatically generated password indication stops. Therefore, by using the soft keyboard 503A, the user can enter a password created and / or selected by the user. In various embodiments, the display of the new automatically generated password indication remains active. Therefore, by using the soft keyboard 503A, the user can edit the new automatically generated password according to their preferences, or to meet requirements for the new password, such as not using specific characters (e.g., question marks or asterisks).
[0199] Figure 5I This demonstrates that contact 550H is detected at the location of the accepting indicator 543A (instead of detecting contact 550G at the location of the rejecting indicator 543B). Figure 5G3 User interface 500.
[0200] Figure 5J This demonstrates a response to the detection of contact 550H at the location of the receiving indicator 543A. Figure 5I User interface 500. In response to detecting a selection of accept enable representation 543A, the display of new password user interface 503C (including accept enable representation 543A and reject enable representation 543B) is stopped.
[0201] Figure 5JThe contact 550I detected at the location of the completed registration indicator 531C is shown.
[0202] Figure 5K This demonstrates a response to the detection of contact 550I at the location of the completed registration indicator 531C. Figure 5J User interface 500. Figure 5K In the URL, address bar 521 includes the address of the service's registration completion page. Figure 5K In the middle, the content area 522 includes (Apple's) image, text indicating the completion of the registration process, and a home display 531D, which, when selected, returns the web browser user interface 502 to the home page of the web service.
[0203] Figure 5K The contact 550J detected at the location of the home indicator 531D is shown.
[0204] Figure 5L This demonstrates the response to the detection of contact 550J at the location of the home indicator 531D. Figure 5K User interface 500. Figure 5K In the address bar 521, the address of the homepage is included, and the content displayed in the content area 222 includes (Apple's) image, registration indicator 531A, and login indicator 531B.
[0205] Figure 5L The contact 550K detected at the location of the login indicator 531B is shown.
[0206] Figure 5M This demonstrates the response to detecting contact 550K at the location of the login indicator 531B. Figure 5L User interface 500. Figure 5M In the URL, address bar 521 includes the address of the service's login page. Figure 5M In the content area 522, there is an image (of Apple), multiple fields 532E-532F for receiving text input, text associated with and describing the multiple fields 532E-532F respectively, and a continue login enablement 531E that, when selected, requests access to the service's resources based on authentication credentials entered into the multiple fields 532E-532F.
[0207] Multiple fields 532E-532F include a username field 532E for receiving text input indicating a username associated with an existing user account. Multiple fields 532E-532F include a password field 532F for receiving text input indicating a password associated with a user account. Figure 5MIn this context, the username field 532E and the password field 532F have been automatically populated based on the detection and classification of fields 532E-532F and the authentication credentials stored by device 100.
[0208] Figure 5M The contact 550L is shown at the position of the continued login indicator 531E.
[0209] Figure 5N This demonstrates the response to the detection of contact 550L at the location of the continued login indicator 531E. Figure 5M User interface 500. Figure 5N In the URL, address bar 521 includes the address of the service's verification page. Figure 5N In the content area 522, there is an image (of Apple), a CAPTCHA field 532G for receiving text input, text associated with and describing the CAPTCHA field 532G, and another continue login enablement 531F, which, when selected, specifically requests access to the service resource based on the authentication credentials entered into the CAPTCHA field 532G. The content area 522 also includes a request code enablement 531G, which, when selected, requests that an electronic message including a CAPTCHA be sent to the user, for example, as sent to... Figure 5E Text messages containing the phone numbers provided.
[0210] Figure 5O This shows what happens after the device 100 receives the electronic message. Figure 5N The user interface 500. In response to receiving an electronic message, a message notification 561A is displayed. The message notification 561A includes text indicating the source of the electronic message (e.g., a telephone number "987-66") and preview text previewing the content of the electronic message.
[0211] Figure 5O The contact 550M detected at the location of message notification 561A is shown.
[0212] Figure 5P This demonstrates a response to the detection of contact 550M at the location of message notification 561A. Figure 5OThe user interface 500 includes a navigation bar 505 below the device bar 501, which includes a return indicator 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 message user interface 504. The text message user interface 504 includes a contact bar 562 and a content area 563. The contact bar 562 includes text indicating the source of the content displayed in the content area 563. The contact bar 562 also includes a return indicator (indicated by "<") that, when selected, displays a list of contact indicators for accessing content (e.g., SMS text messages) provided by the corresponding contact. The contact bar 562 also includes an information indicator (circled "i") that, when selected, provides information about the source of the content displayed in the content area 563.
[0213] Content area 563 includes message window 564, which contains the content of electronic messages received from a source. In message window 564, the text message content that meets relevant criteria is displayed differently from the rest of the content (e.g., emphasized). Specifically, in Figure 5P In various implementations, the content of a text message that meets the corresponding criteria is displayed underlined, while the rest of the content is not underlined. In various implementations, the content of a 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 implementations, the corresponding criteria include email formatting requirements that match the content to an email format (e.g., including characters before and after the at symbol (“@”)). In various implementations, the corresponding criteria include telephone number formatting requirements that match the content to a telephone number format (e.g., including at least a threshold number of numeric characters). In various implementations, the corresponding criteria include CAPTCHA formatting requirements that match the content to a CAPTCHA format (e.g., numeric or alphanumeric values such as 123456 or ab3d5f are very close to keywords or short phrases indicating the presence of a security code, such as “password,” “CAPTCHA,” “2FA,” “is your <service name> code,” or “to confirm your account”).
[0214] Figure 5P The contact 550N detected is shown at the location of the content that meets the telephone number format requirements displayed in message window 564.
[0215] Figure 5Q This demonstrates that contact 550N was detected at the location where content conforming to the telephone number format requirements was displayed in message window 564. Figure 5P User interface 500. Figure 5Q In the user interface 500, there is a telephone call window 565A, which includes: text indicating a telephone number; a call enable indicator 566A that, when selected, causes the device 100 to make a telephone call to the telephone number; and a cancel enable indicator 566B that, when selected, ignores the telephone call window 565A.
[0216] Figure 5Q The contact 550O detected at the location of the deactivation indicator 566B is shown.
[0217] Figure 5R This demonstrates a response to the detection of contact 550O at the location of the canceled indicator 566B. Figure 5Q User interface 500. Figure 5R In the middle, stop displaying the telephone call window 565A.
[0218] Figure 5R The contact 550P is shown at the location of the content that meets the verification code format requirements displayed in message window 564.
[0219] Figure 5S This demonstrates that contact 550P was detected at the location where content meeting the CAPTCHA format requirements was displayed in message window 564. Figure 5R User interface 500. Figure 5S In the user interface 500, there is a verification code window 565B, which includes: text indicating the verification code; a copy enable option 566C, which, when selected, causes the device 100 to store the verification code in a cache (e.g., copy the verification code to the clipboard); and a deselect enable option 566D, which, when selected, ignores the verification code window 565B.
[0220] Figure 5S The contact 550P detected at the location of the replica energy indicator 566C is shown.
[0221] Figure 5T A user interface 500 is shown in response to the detection of contact 550P at the location of the copy display 566C. Figure 5T In the middle, stop displaying the verification code window 565B.
[0222] Figure 5T The contact 550Q detected at the location of the return indicator 506 is shown.
[0223] Figure 5U1 A user interface 500 is shown in response to the detection of contact 550Q at the location of the return indicator 506. Figure 5U1In the middle, the text message user interface 504 was... Figure 5N The web browser user interface was replaced with a 502 error. Therefore, Figure 5U1 and Figure 5N The difference is that (not shown) device 100 has received an electronic message and has stored the verification code in a cache (e.g., copied the verification code to the clipboard).
[0224] and Figure 5O compared to, Figure 5U2 This shows what happens after the device 100 receives the electronic message. Figure 5N Another embodiment of the user interface 500. In response to receiving an electronic message, a message notification 561B is displayed. The message notification 561B includes text indicating the source of the electronic message (e.g., a 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 verification code format requirements, the message notification 561B further includes: a copy enable indication 561C, which, when selected, causes the device 100 to store the verification code in a cache (e.g., copy the verification code to the clipboard); and a read enable indication 561D, which, when selected, ignores the message notification 561B.
[0225] Figure 5U2 The contact 550R detected at the location of the replica energy indicator 561C is shown.
[0226] Figure 5U3 This demonstrates the response to the detection of contact 550R at the location of the replica display 561C. Figure 5U2 User interface 500. Figure 5U3 User interface 500 and Figure 5U1 The user interface is the same as 500.
[0227] Figure 5U3 The image shows a contact 550S detected at the location of the CAPTCHA field 532G.
[0228] Figure 5V The following is shown: a contact 550S in response to the detection of the CAPTCHA field 532G at the location. Figure 5U3 (or similarly, Figure 5U1 The user interface 500 includes a numeric soft keyboard 503B. In response to detecting a selection of the verification code field 532G, a cursor 533 is displayed in the verification code field 532G.
[0229] In response to text stored in a cache (e.g., copied to the clipboard), user interface 500 includes a paste enable 534 that, when selected, inserts the text stored in the cache into the selected field.
[0230] Figure 5V The contact 550T detected at the location of the pasted indicator 534 is shown.
[0231] Figure 5W This demonstrates the response to the detection of contact 550 at the location of the adhesive indicator 534. Figure 5V User interface 500. Figure 5W In the process, the CAPTCHA from the cache has been inserted into the CAPTCHA field 532G.
[0232] Figure 5W The contact 550U was detected at the location of the continued login indicator 531F.
[0233] Figure 5X This demonstrates the response to the detection of contact 550U at the location of the continued login indicator 531F. Figure 5W User interface 500. Figure 5X In the URL, address bar 521 includes the address of the service's content page. Figure 5X In this context, content area 522 includes resources protected by authentication credentials (potentially including CAPTCHAs) provided by the service.
[0234] and Figure 5O compared to, Figure 5Y This shows what happens after the device 100 receives the electronic message. Figure 5N Another embodiment of the user interface 500. In response to receiving an electronic message, a message notification 561A is displayed. The message notification 561A includes text indicating the source of the electronic message (e.g., a telephone number "987-66") and preview text previewing the content of the electronic message.
[0235] Although Figure 5O The location of contact 550M at the location of message notification 561A is shown, while Figure 5Y The contact at the location of the CAPTCHA field 532G is shown as 550V.
[0236] Figure 5Z This demonstrates the response to detecting a contact of 550V at the location of the CAPTCHA field 532G. Figure 5Y The user interface 500 includes a numeric keypad 503B. The numeric keypad 503B includes a navigation area 541 and a text suggestion area 542. According to relevant standards, the text suggestion area 542 includes an insertion enable indicator 545, which automatically inserts the verification code into the verification code field 532G when selected. Although... Figure 5ZA numeric soft keyboard 503B is shown, but in various embodiments, an insertion enablement indicator 545 is displayed in a text suggestion area 542 above the soft keyboard 503A, a handwriting recognition user interface, or other user input area.
[0237] In various implementations, the corresponding criteria include the requirement that the electronic message includes content that meets the CAPTCHA format requirements. In various implementations, the corresponding criteria include a timing requirement for displaying the user interface within a predetermined time period from the time the electronic message is received. Therefore, in various implementations, the insertion enablement representation is displayed only for a limited time (e.g., three minutes) from the time the electronic message is received. In various implementations, the corresponding criteria include a feature requirement that the user interface includes text input fields with predetermined characteristics. In various implementations, the corresponding criteria include a selection requirement for selecting a text input field. For example, when the selected field is classified as a CAPTCHA field (e.g., based on analysis or metadata about the field provided by the service), the insertion enablement representation 545 is displayed. As another example, the insertion enablement representation 545 is displayed only if the selected field is not otherwise classified as, for example, username, password, email address, phone number, credit card number, address, multi-line input field, etc.
[0238] In various embodiments, the inserted indicator 545 includes an indication of an application through which electronic messages are received. For example, in Figure 5Z In this embodiment, the insertion indication 545 indicates a text messaging application (“message”). In other embodiments, the insertion indication indicates an email application or chat application. In various embodiments, the insertion indication 545 includes an indication of the sender of the electronic message. For example, in Figure 5Z In this embodiment, an indicator is inserted to indicate the phone number (“987-66”). In other embodiments, an indicator is inserted to indicate the name of the service, such as “Apple Fun”. In some embodiments, the application’s instruction or the sender’s instruction is not displayed along with the other.
[0239] Figure 5Z The contact 550W is shown at the location of the insertion indication in the text suggestion area 542.
[0240] Figure AA illustrates the response to the detection of a 550W contact at the location of the insertion indicator 545. Figure 5Z User interface 500. Figure 5AA In the code, the verification code has been inserted into the verification code field 532G.
[0241] In various implementation methods, directly from Figure 5Y User interface arrives Figure 5AAThe user interface 500 is used without requiring the selection of an insertion capability representation 545. Therefore, in various embodiments, in response to determining that the electronic message includes content that meets the corresponding criteria, the device 100 automatically inserts the content as a verification code into the user interface.
[0242] and Figure 5O compared to, Figure 5AB This shows what happens after the device 100 receives the electronic message. Figure 5N Another embodiment of the user interface 500. With Figure 5O In contrast, in response to receiving an electronic message, message notification 561A is not displayed. Furthermore, in response to determining that the electronic message includes content that meets the verification code format requirements, without displaying or selecting the insertion enable display 545, device 100 automatically inserts the content as a verification code into the verification code field 532G.
[0243] and Figure 5O compared to, Figure 5AC This shows what happens after the device 100 receives the electronic message. Figure 5N Another embodiment of the user interface 500. In response to receiving an electronic message, a message notification 561F is displayed. The message notification 561F includes text indicating the source of the electronic message (e.g., the contact name "Gary") and preview text previewing the content of the electronic message. Figure 5O In contrast, the content of electronic messages does not include content that meets the relevant standards. Specifically, the content of electronic messages does not include content that meets the verification code format requirements. Therefore, message notification 561F does not include copy capability representation 561C, but instead includes reply capability representation 561E for composing a text message reply to the sender of the electronic message.
[0244] Figure 5AC The contact 550X is shown at the location of the CAPTCHA field 532G.
[0245] Figure 5AD This demonstrates the response to detecting contact 550X at location 532G of the CAPTCHA field. Figure 5AC The user interface 500 includes a cursor 533 displayed in the CAPTCHA field 532G in response to the detection of selection of the CAPTCHA field 532G. Furthermore, the user interface 500 includes a soft keyboard 503A with multiple character insertion indications that insert characters into the selected field when selected. The soft keyboard 503A includes a navigation area 541 and a text suggestion area 542, which includes text suggestion indications that indicate suggested text, and that, when selected, inserts suggested text into the selected field. Figure 5AD In, with Figure 5ZIn contrast, the text suggestion area 542 does not include the insertion capability representation 545 for inserting the verification code, because... Figure 5AC The electronic message displayed in Message Notification 561F does not include a verification code.
[0246] Figure 6A An operating environment 600 is shown, including a first electronic device 610, a second electronic device 620, and a third electronic device 630. The first electronic device 610 corresponds to a portable electronic device, such as the portable electronic device 100 of FIG1. Figure 3 Device 300. First electronic device 610 includes a display providing a first user interface 612. Second electronic device 620 is a media playback device coupled to a display device 621 providing a second user interface 622. Third electronic device 630 is a remote control for the second electronic device 620. Third electronic device 630 includes a touch-sensitive input device 631 for generating user input transmitted to the second electronic device 620.
[0247] The second user interface 622 includes multiple power indicators that, when selected, open an application or provide media content via the second user interface 622. Figure 6A In this context, the application power representation 623 is selected from the plurality of power representations.
[0248] Figure 6A The image shows a contact 650A detected on a touch-sensitive input device 631 when the application enable indicator 623 is selected.
[0249] Figure 6B This illustrates the response of detecting contact 650A on touch-sensitive input device 631 when application power indicator 623 is selected. Figure 6A The operating environment is 600. Figure 6B In this configuration, the second user interface 622 includes a home screen for the service, which includes an image (of Apple's), a registration enablement icon 624A, and a login enablement icon 624B. The registration enablement icon 624A, when selected, allows the user to register for the service, for example, by creating a user account to access resources (e.g., content) protected by the user account's authentication credentials. The login enablement icon 624B, when selected, allows the user to provide authentication credentials to access the service's resources. Figure 6B In the middle, select Login to show 624B.
[0250] Figure 6B The image shows a touch 650B detected on a touch-sensitive input device 631 when the login enable indicator 624B is selected.
[0251] Figure 6CThis illustrates the response of detecting contact 650B on touch-sensitive input device 631 when login enable indicator 624B is selected. Figure 6B The operating environment is 600. Figure 6C In this second user interface 622, a service login screen is included, comprising an image (of Apple's), a username field 625A for receiving text input indicating a username associated with an existing user account, and a password field 625B for receiving text input indicating a password associated with the user account. The second user interface 622 includes a continue login enablement 624C, which, when selected, requests access to service resources based on authentication credentials entered into fields 625A-625B.
[0252] exist Figure 6C In this process, the second electronic device 620 transmits to the first electronic device 610 an instruction that the second electronic device 620 needs authentication credentials (e.g., username and password) for the service.
[0253] Figure 6D A first electronic device 610 is shown in response to receiving an instruction from a second electronic device 620 that authentication credentials are required for service. Figure 6D In this first user interface 612, there are 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 and arranged in a grid. Prior to the application launcher user interface 507 (or any other currently displayed user interface), the first user interface 612 includes a shared confirmation window 640.
[0254] The Share Confirmation Window 640 includes text indicating that the second electronic device 620 requires authentication credentials for the service. In various embodiments, the text includes a service instruction (e.g., "Apple Fun"). In various embodiments, the text typically indicates that the second electronic device 620 requires authentication credentials for the service (e.g., "Johnny's Apple TV is requesting a password"). The Share Confirmation Window 640 includes a Share Confirmation Enablement Representation 641, which, when selected, allows sharing credentials between the first electronic device 610 and the second electronic device 620, as further described below. The Share Confirmation Window 640 includes a Share Cancel Enablement Representation 642, which, when selected, disallows sharing credentials between the first electronic device 610 and the second electronic device 620.
[0255] In various embodiments, a shared confirmation window 640 is displayed on the first electronic device 610 upon determining that the first electronic device 610 is within a predetermined proximity to the second electronic device 620. In various embodiments, the predetermined proximity is the distance to the nearest device. In various embodiments, the predetermined proximity is a predetermined range. In various embodiments, the shared confirmation window 640 is displayed on the first electronic device 610 upon determining that the first electronic device 610 is within a predetermined proximity to a third electronic device 630 associated with the second electronic device 620. In various embodiments, the predetermined proximity is the distance to the nearest device. In various embodiments, the predetermined proximity is a predetermined range.
[0256] Figure 6D The contact 650C detected at the location of the shared confirmation indicator 641 is shown.
[0257] Figure 6E This demonstrates a response to the detection of contact 650C at the location of the shared confirmation indicator 641. Figure 6C The operating environment is 600. Figure 6E In the second user interface 622, verification information, such as the authorization code, is displayed. Figure 6E In this embodiment, a first user interface 612 displays a verification prompt that requires the first electronic device 610 to input information from a second electronic device 620 (e.g., verification information displayed by the second electronic device 620) to continue. 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 indications for inputting information from the second electronic device 620 (e.g., verification information displayed by the second electronic device 620). In various embodiments, the verification prompt includes a soft keyboard (such as soft keyboard 503B) or other input user interface.
[0258] Figure 6E The contact 650D is shown at the location of one of the plurality of digital character display representations.
[0259] Figure 6FA first electronic device 610 is shown in response to the detection of a contact 650D at the location of one of the plurality of numeric character display representations and other contacts corresponding to authentication information from a second electronic device 620. A 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 display representations 661A-661G, which are associated with a plurality of services, user accounts for those services, and authentication credentials for 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.
[0260] exist Figure 6F In this process, the list of service capability representations 661A-661G is sorted at least in part based on the relevance of the respective services. Specifically, the second electronic device 620 indicates that it requires authentication credentials for a service to indicate that service, and that service is listed at the top of the list of service capability representations 661A-661G.
[0261] Figure 6F The contact 650E detected at the location of the first service indicator 661A in the list of service indicator 661A-661G is shown.
[0262] Figure 6G This demonstrates a response to the detection of contact 650E at the location of the first service indication indicator 661A. Figure 6E The operating environment is 600. Figure 6G In the second user interface 622, the username field 625A and password field 625B are filled with authentication credentials received from the first electronic device 610. Additionally, a login enable option 624C is displayed. In the first user interface 612, a complete sharing window 643 is displayed, which includes a notification indicating that the authentication credentials have been shared with the second electronic device 620.
[0263] Figure 6G The image shows a contact 650F detected on the touch-sensitive input device 631 when the Continue Login Enable indicator 624C is selected.
[0264] Figure 6H This demonstrates the response of detecting contact 650F on the touch-sensitive input device 631 when the Continue Login Enable indicator 624C is selected. Figure 6G The operating environment is 600. Figure 6H In the second user interface 622, the content screen of the service is included.
[0265] Figure 7AAn application launcher user interface 707 is shown as part of a user interface 700 displayed by a portable multi-functional device 100 (hereinafter referred to as "device 100"). In addition to the application launcher user interface 707, 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 connectivity indicator, the current time, and a battery indicator indicating the charging level of the device 100.
[0266] Below the device bar 701 and spanning the remainder of the display, the user interface 700 includes an 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. (See also...) Figure 7A As shown, each representation includes an icon associated with the corresponding application and text describing the application (e.g., the application's name or function). As an application launch user interface 707, device 100 launches the specific application in response to detecting user input at a designated location on the representation of that specific application.
[0267] although Figure 7A An application launch user interface 707 in the form of a home screen is shown, but in various embodiments, the application launch user interface 707 is a taskbar or file manager. Furthermore, although... Figure 7A Only a single page of the home screen is shown, but in various implementations, the application launch user interface 707 includes multiple pages.
[0268] Figure 7A The contact 750A detected at the location indicated by setting 710 is shown.
[0269] Figure 7B This illustrates the response to detecting contact 750A at the location indicated by setting 710. Figure 7A User interface 700. In response to detecting contact 750A at the location of settings representation 710, application launcher user interface 707 is replaced by general settings user interface 704. General settings user interface 704 includes multiple settings indications 725A-725F, including connectivity management indication 725A, display management indication 725B, sound management indication 725C, storage management indication 725D, power management indication 725E, and password management indication 725F. In various embodiments, general settings user interface 704 may include additional, fewer, or other settings indications.
[0270] Figure 7BThe contact 750B detected at the location of the password management enablement indicator 725F is shown.
[0271] Figure 7C This illustrates the response to the detection of contact 750B at the location of the password management enablement indicator 725F. Figure 7B User interface 700. In response to the detection of contact 750B at the location of password management display 725F, the general settings user interface 704 is replaced by the password management user interface 703. The password management user interface 703 includes a password column display display 726A, which, when selected, displays a list of user accounts with corresponding associated authentication credentials. The password management user interface 703 includes a list of account display displays 726B-726D, which, 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 display display 726E, which, when selected, allows the user to add a user account to the user account list. The password management user interface 703 includes an extract settings display display 726F, which, when selected, allows the user to select extract settings for extracting data from the user account.
[0272] Figure 7C The cipher column indicates the location of contact 750C that can represent 726A.
[0273] Figure 7D A user interface 700 is shown in response to the detection of contact 750C at a location where the password column indicates that contact 726A can be represented. Figure 7D In this configuration, the password management user interface 703 is replaced by a password list user interface 708. The password list user interface 708 includes a list of user account enablement representations 727A-727G, which are associated with multiple user accounts for various services and the authentication credentials of those user accounts. Some user account enablement representations 727A, 727C, and 727G include an alert label 781 indicating that the password associated with the corresponding user account is the same as the password associated with one or more other user accounts.
[0274] In various implementations, a switching capability representation is provided that allows the user to toggle the display of alarm marker 781. Furthermore, in some implementations, alarm marker 781 is not shown in either user account capability representation, even when two user accounts have the same password and are determined to be affiliated and share authentication credentials. For example, if facespace.com and hotels4less.com are affiliated, for example, owned by the same entity and / or known to use the same authentication credentials, alarm marker 781 is not shown in either user account capability representation 727E-727F.
[0275] 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 indication 728A for returning to the password management user interface 703.
[0276] Figure 7D The contact 750D detected at the location of the fourth user account enablement indicator 727D is shown.
[0277] Figure 7E A user interface 700 is shown in response to a detected touch at the location of the fourth user account enablement display 727D. Figure 7E In this configuration, 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 display 730A and a password display 730B. The username display includes text indicating the username associated with the first user account of the first service, and the password display 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 display 728B for returning to the password list user interface 708.
[0278] Figure 7F A lock screen user interface 705 is shown as part of a user interface 700 displayed by a portable multi-functional device 100 (hereinafter referred to as "device 100"). In addition to the lock screen user interface 705, the user interface 700 also includes a device bar 701 located at the top of the display, which includes an identifier for the device 100 (e.g., "iPhone"), a wireless connectivity 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 locked.
[0279] Figure 7FThe image shows a contact 750E that has been detected moving upwards from a location near the bottom of the display.
[0280] Figure 7G This demonstrates the response to detecting that contact 750E moves upward from a position near the bottom of the display. Figure 7F User interface 700. In Figure 7G The image displays an authentication window 741, indicating that an authentication process for authenticating a user is being performed. In various embodiments, the authentication process includes receiving authentication information and authenticating the user based on that information. In various embodiments, the authentication information is the user's biometrics, such as one or more facial features or fingerprints. Therefore, 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 password or passcode provided by the user. Therefore, in various embodiments, the provided authentication information is received via a touch-sensitive surface.
[0281] Figure 7H This demonstrates the response to authenticating the user. Figure 7G User interface 700. In Figure 7H In the process, the window 741 that is currently authenticating is replaced by the window 742 that has already been authenticated.
[0282] Figure 7I This illustrates what happens after unlocking the device in response to user authentication (e.g., placing device 100 in an unlocked state). Figure 7H User interface 700. In Figure 7I In this version, the lock screen user interface 705 is replaced by the application launcher user interface 707.
[0283] Figure 7I A speech request 751A detected by device 100 is shown. In various embodiments, speech request 751A is displayed as part of user interface 700. In various embodiments, speech request 751A is not displayed. Figure 7I In this context, Voice Request 751A is a voice request that displays the password information of the first user account.
[0284] Figure 7J This illustrates a response to a verbal request 751A to display the password information of a first user account. Figure 7I User interface 700. In Figure 7JIn the above, an authentication window 741 is displayed, indicating that an authentication process for authenticating the user is being performed. Therefore, in various embodiments, the authentication process is performed before displaying password information, even when the device 100 is unlocked. As described above, in various embodiments, the authentication process includes receiving authentication information and authenticating the user based on that information. In various embodiments, authentication information suitable for unlocking the device (e.g., a password) is not suitable for displaying password information, as it may require, for example, more secure authentication information (e.g., the user's biometrics). However, in various embodiments, authentication information suitable for displaying password information includes a password (e.g., if biometric authentication fails or is not configured).
[0285] Figure 7K This demonstrates the response to authenticating the user. Figure 7J User interface 700. In Figure 7K In the process, the window 741 that is currently authenticating is replaced by the window 742 that has already been authenticated.
[0286] Figure 7L This illustrates the response to user authentication and the response to verbal request 751A. Figure 7K User interface 700. In Figure 7L In this process, the application launcher user interface 705 is replaced by the password details user interface 709A.
[0287] Figure 7L The contact 750F detected at the location of the cryptographic indicator 730B is shown.
[0288] Figure 7M This illustrates the response to the detection of contact 750F at the location of the cryptographic enablement indicator 730B. Figure 7L User interface 700. In response to a detected contact 750F at the location of password enablement 730B, user interface 700 includes a copy enablement 732A and a share enablement 732B, the copy enablement storing the password associated with a first user account in a cache (e.g., copying the password to the clipboard) when selected, and the share enablement initiating a process for sharing the password (and / or other authentication credentials) associated with the first user account when selected.
[0289] Figure 7M The contact 750G detected at the location of the shared power indicator 732B is shown.
[0290] Figure 7N This demonstrates the response to the detection of contact 750G at the location of the shared power indicator 732B. Figure 7MUser interface 700. In Figure 7N In this embodiment, the user interface 700 includes a recipient selection card 733, which includes a plurality of recipient enablement representations 734A-734C. When selected, these multiple recipient enablement representations initiate a process for sharing a password (and / or other authentication credentials) associated with a first user account with the corresponding recipient. In various embodiments, the recipient selection card 733 includes recipient enablement representations of nearby devices. In various embodiments, the recipient selection card 733 includes recipient enablement representations of contacts stored by device 100.
[0291] In various embodiments, device 100 displays authentication information (e.g., character sequences and / or visual patterns) that is required (e.g., via a keyboard or, for visual patterns, a camera) before sharing a password (and / or other authentication credentials) with the recipient device. References above. Figures 6A to 6H This describes an example of requiring verification information from one device to be entered into another device.
[0292] and Figure 7I compared to, Figure 7O This illustrates what happens after unlocking the device in response to user authentication (e.g., placing device 100 in an unlocked state). Figure 7H Another embodiment of the user interface 700. In Figure 7O In this version, the lock screen user interface 705 is replaced by the application launcher user interface 707.
[0293] Figure 7O A speech request 751B detected by device 100 is shown. In various embodiments, speech request 751B is displayed as part of user interface 700. In various embodiments, speech request 751B is not displayed. Figure 7O In this context, voice request 751B is a voice request to display the password information of a second user account.
[0294] Figure 7P This illustrates the response to user authentication and the response to verbal request 751B. Figure 7O User interface 700. In Figure 7PIn this version, the application launcher user interface 705 is replaced by a password details user interface 709B for the second user account of the second service. The password details user interface 709B includes a username display 730C and a password display 730D. The username display includes text indicating the username associated with the second user account of the second service, and the password display includes text indicating the password associated with the second user account. The password details user interface 709B includes text indicating the website 731B associated with the second service. The password details user interface 709B includes a return display 728B for returning to the password list user interface 708.
[0295] The password details user interface 709B includes an alert 735 indicating that the password associated with a second user account is the same as the password associated with one or more other accounts. The alert 735 includes a password change capability representation 736, which, when selected, displays a resource, such as a webpage or application, for changing the password of the second account. In various embodiments, the password change capability representation 736 links to a general webpage / application, while in various embodiments, the password change capability representation 736 links to a password change user interface of the webpage / application. In some embodiments, multiple services place the password change user interface under a commonly named path, such as ".well-known / change-password", and the password change capability representation 736 links to that path.
[0296] Figure 7P The contact 750H detected at the location of the modified cipher power indicator 736 is shown.
[0297] Figure 7Q This illustrates the response to detecting contact 750H at the location of the modified cryptographic enablement representation 736. Figure 7P User interface 700. In Figure 7Q In this version, 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 a second user account.
[0298] and Figure 7I compared to, Figure 7R This illustrates what happens after unlocking the device in response to user authentication (e.g., placing device 100 in an unlocked state). Figure 7H Another embodiment of the user interface 700. In Figure 7R In this version, the lock screen user interface 705 is replaced by the application launcher user interface 707.
[0299] Figure 7RA speech request 751C detected by device 100 is shown. In various embodiments, speech request 751C is displayed as part of user interface 700. In various embodiments, speech request 751C is not displayed. Figure 7R In this context, the verbal request 751C is a verbal request that displays general password information.
[0300] Figure 7S This illustrates the response to user authentication and the response to verbal request 751C. Figure 7O User interface 700. In Figure 7S In the middle, the application launcher user interface 707 is replaced by the password list user interface 708 (as described above relative to the password list user interface 708). Figure 7D (Detailed description) Replacement.
[0301] and Figure 7I compared to, Figure 7T This illustrates what happens after unlocking the device in response to user authentication (e.g., placing device 100 in an unlocked state). Figure 7H Another embodiment of the user interface 700. In Figure 7T In this version, the lock screen user interface 705 is replaced by the application launcher user interface 707.
[0302] Figure 7T A speech request 751D detected by device 100 is shown. In various embodiments, speech request 751D is displayed as part of user interface 700. In various embodiments, speech request 751D is not displayed. Figure 7T In this context, Verbal Request 751D is a verbal request that displays the password information of a third-party user account.
[0303] Figure 7U This illustrates the response to user authentication and the response to verbal request 751D. Figure 7T User interface 700. 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 above relative to the password list user interface 708). Figure 7D (Detailed description) Instead of the password details user interface 709A-709B replacement. However, in Figure 7U In this process, search domain 729 is pre-populated based on a verbal request, and the list of user accounts 727A-727G is sorted based on the pre-population of search domain 729. In some embodiments, the list of user accounts is filtered based on the pre-population of search domain 729 so that user accounts that do not match the pre-population of search domain 729 are not displayed.
[0304] and Figure 7F compared to, Figure 7VA lock screen user interface 705 is shown as part of a user interface 700 displayed by a portable multi-function device 100 (hereinafter referred to as "device 100").
[0305] Figure 7V A speech request 751E detected by device 100 is shown. In various embodiments, speech request 751E is displayed as part of user interface 700. In various embodiments, speech request 751E is not displayed. Figure 7V In this context, the verbal request 751D is a verbal request to display the password information of the first user account.
[0306] Figure 7W This demonstrates a response to detecting a verbal request to display the password information of the first user account. Figure 7V The user interface. Figure 7W The window 741, which is displaying an authentication in progress window, indicates that an authentication process for authenticating the user is being performed.
[0307] Figure 7X This demonstrates the response to authenticating the user. Figure 7W User interface 700. In Figure 7X In the process, the window 741 that is currently authenticating is replaced by the window 742 that has already been authenticated.
[0308] Figure 7Y The diagram illustrates the process after unlocking the device (e.g., placing device 100 in an unlocked state) in response to user authentication and verbal request 751E. Figure 7X User interface 700. In Figure 7Y In this version, the lock screen user interface 705 is replaced by the password details user interface 709A.
[0309] Figures 8A to 8C A flowchart of a method 800 for generating a new password for a user account according to some embodiments is shown. This is in an electronic device having a display device and one or more input devices (e.g., Figure 1A Portable multi-functional device 100 or Figure 3 Method 800 is performed at device 300. In some embodiments, the display device is a touchscreen display, and one or more 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 operations in method 800 may optionally be combined, and / or the order of some operations may optionally be changed.
[0310] As described below, Method 800 provides an intuitive way to generate new passwords for user accounts. Method 800 reduces the cognitive burden on users when generating new passwords for user accounts, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, enabling users to generate new passwords for user accounts faster and more efficiently saves power and increases the time between battery charging sessions.
[0311] The device displays (802) a user interface including the new password field on a display device. In various embodiments, the user interface includes a spreadsheet with multiple fields. For example, in Figure 5B In the middle, device 100 displays a web browser user interface 502 that includes the new password field 532C.
[0312] The device detects (804) user input corresponding to the selection of a new cryptographic field via one or more input devices. In various embodiments, user input includes touch at the location of the new cryptographic field, click with the cursor at the location of the new cryptographic field, tap of the new cryptographic field, or selection of the next enable representation when fields are arranged in the order prior to the selection of the new cryptographic field. For example, in Figure 5F In this context, device 100 detects contact 550F at the location of the new cryptographic field 532C. For example, see reference... Figure 5F User input corresponding to the selection of a new password field may include contact at the location of the next enable representation in navigation area 541.
[0313] In some embodiments, detecting user input corresponding to the selection of a new cryptographic field includes determining that the selected field is a new cryptographic field based on one or more of the number of fields in the user interface or the text associated with the user interface (806). For example, in Figure 5F In this context, device 100 classifies the domain selected by contact 550F as a new password domain based on the text displayed as "Password" next to the selected domain, the text displayed as "Register" in the address bar 521, the number of multiple domains 532A-532D being greater than two, and / or the number of domains with the text displayed as "Password" next to them being greater than one. By determining that the selected domain is a new password domain (rather than a domain of a different type), the user interface provides different options in response to detecting a different type of domain, and thus provides the user with an efficient mechanism to perform various different actions, thereby reducing the amount of user interaction required to perform various actions. The reduction in user interaction reduces wear and tear on the device. The reduction in user interaction also leads to faster execution of various actions, and thus reduces the power consumption of performing various actions, thereby extending the device's battery life.
[0314] In response to detecting user input (808) corresponding to a selection of a new password field, the device displays (810) a representation of the new automatically generated password in the new password field on the display device. Automatically generating a new password for a user account provides an efficient mechanism for users to generate new passwords for their accounts, thereby reducing the amount of user interaction required to generate a new password. Reduced user interaction reduces wear and tear on the device. Reduced user interaction also leads to faster generation of new passwords for user accounts, and thus reduces power consumption during password generation, thereby extending the device's battery life. Furthermore, automatically generating a new password for a user account provides a unique, strong, and / or secure password for the user account, thereby improving the security of the user account.
[0315] In some embodiments, the device displays (812) a new, automatically generated password. For example, in Figure 5G1 In this device, device 100 displays a new, automatically generated password in the new password field 532G. Displaying the new password provides the user with a sense of security, thereby increasing the likelihood that the user will accept the new password and reducing user interaction in generating different new passwords. Reduced user interaction reduces wear and tear on the device and reduces power consumption, thus extending the device's battery life.
[0316] In some embodiments, the device displays (814) a universal password indicator. For example, in Figure 5G2 In this device, device 100 displays a series of asterisks (or bullet points) in the new password field 532C. Displaying a generic password indicator (instead of the new password) reduces user account registration and specifically obfuscates the user during password generation, thereby reducing user interaction during registration. Reduced user interaction reduces device wear and tear and power consumption, thus extending the device's battery life.
[0317] In some embodiments, the device displays (816) a portion of a new, automatically generated password and an indication that this portion of the new, automatically generated password is not displayed. For example, in Figure 5G3 In this embodiment, device 100 displays a portion of a new, automatically generated password, along with an indication that this portion is not displayed, for example, by fading the visibility of the new, automatically generated password along its length. Displaying a portion of the new password provides the benefits of the two embodiments described above, offering the user a sense of security while reducing user confusion, thereby reducing user interaction with the device. Reduced user interaction reduces wear and tear on the device and reduces power consumption, thus extending the device's battery life.
[0318] In some embodiments, a new automatically generated password is generated (818) based on one or more password generation constraints of the user interface. For example, in Figure 5G1In this new, automatically generated password system, 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 are included. User-interface-based password generation constraints increase the likelihood of user acceptance and decrease the probability of password rejection by the service, ultimately reducing user interaction with the device. Reduced user interaction reduces device wear and tear and power consumption, thus extending battery life. Furthermore, adhering to user-interface-based password generation constraints increases password strength, leading to increased security for user accounts.
[0319] Further in response to detecting user input (808) corresponding to a selection of a new password field, the device displays (820) on a display device an indication of accepting the new automatically generated password and an indication of rejecting the new automatically generated password. For example, in Figure 5G3 In this device, device 100 displays an acceptance indication 543A and a rejection indication 543B. Displaying an acceptance indication (along with a representation of the new password) in response to detecting user input corresponding to a selection of a new password field (rather than, for example, user input requesting the device to provide a new automatically generated password) increases the likelihood of the user accepting the new password and reduces user interaction in generating the new password. Therefore, user account security is increased, and the reduced user interaction reduces device wear and power consumption, thereby extending the device's battery life.
[0320] In some embodiments, the device displays (822) a new password user interface, which includes an indication of accepting the new automatically generated password and an indication of rejecting the new automatically generated password. For example, in Figure 5G3 In the device 100, a new password user interface 503C is displayed, including an accept enable indication 543A and a reject enable indication 543B.
[0321] In some embodiments, the device displays (824) a new password user interface that does not include the multiple character insertion enablement displayed on the soft keyboard. For example, in Figure 5G3 In the middle, device 100 displays the new password user interface 503C, but does not display... Figure 5C 503A soft keyboard (or Figure 5E The digital on-screen keyboard (503B) is excluded. The absence of a display on-screen keyboard increases the likelihood that the user will accept a new password, resulting in increased security and reduced user interaction with the device. Furthermore, excluding the display on-screen keyboard uses less space on the screen; therefore, a smaller (and cheaper) screen can provide the same usability.
[0322] 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 embodiments, the user identifier field includes a username field, an email address field, a telephone number field, etc. For example, in... Figure 5B In the middle, device 100 detects contact 550B at the location of username field 532A. For example, in... Figure 5D In this embodiment, device 100 detects contact 550D at the location of telephone number field 532B. In some embodiments, in response to detecting user input corresponding to a selection of user identifier field, the device displays (828) a soft keyboard including the plurality of character insertion capabilities on a display device. For example, in Figure 5C In response to detecting contact 550B at location 532A in the username field, device 100 displays the soft keyboard 503A. For example, in... Figure 5E In response to the detection of contact 550D at the location of telephone number field 532B, device 100 displays a numeric keypad 503B. Providing different user interfaces in response to detecting different types of fields provides an efficient mechanism for users to perform various actions, thereby reducing the amount of user interaction required to perform these actions. Reduced user interaction reduces device wear and extends device battery life.
[0323] In some embodiments, the new password user interface includes (830) a description of the new automatically generated password and instructions for retrieving the new automatically generated password. For example, in Figure 5G3 In the new password user interface 503C, text 544 includes a description of the new automatically generated password and instructions for retrieving it. Specifically, text 544 indicates that the new automatically generated password has been automatically generated and meets password strength requirements. Text 544 also indicates that the new automatically generated password will be stored by device 100 and can be accessed by the user, for example, via verbal request. Including a description of the new password and instructions for retrieval increases the likelihood of the user accepting the new password and reduces user interaction in generating it. Therefore, user account security is increased, and reduced user interaction reduces device wear and power consumption, thereby extending device battery life.
[0324] In some embodiments, the device displays (832) a second indication of refusal to use the new automatically generated password, separate from the new password user interface. For example, in Figure 5G3In this device 100, an auxiliary rejection indication 543BB, separate from the new password user interface, is displayed to reject the new automatically generated password. Specifically, it is displayed next to the new automatically generated password indication in the new password field 532C. Displaying a second indication to reject the new password results in a more efficient human-machine interface because the user can more easily find the mechanism for rejecting the new password. For battery-powered electronic devices, a more efficient human-machine interface saves power and increases the time between battery charging. In addition, a more efficient human-machine interface reduces the amount of user interaction with the device and reduces wear and tear on the device.
[0325] In some embodiments, the device detects (834) user input via the one or more input devices corresponding to a selection of an enabled representation of accepting a new automatically generated password. For example, in Figure 5I In this embodiment, device 100 detects contact 550H at the location where a power indicator 543A is accepted. In some embodiments, in response to detecting user input corresponding to a selection to accept a new automatically generated password, the device stops displaying (836) power indicators accepting the new automatically generated password and power indicators rejecting the new automatically generated password. For example, in Figure 5J In response to the detection of contact 550H at the location of the accept power indication 543A, the device stops displaying the new password user interface 503C, which includes the accept power indication 543A and the reject power indication 543B.
[0326] In some embodiments, the device detects (838) user input via the one or more input devices corresponding to a selection that rejects the enabled representation of the new automatically generated password. For example, in Figure 5G3 In this embodiment, device 100 detects contact 550G at the location of the rejected enable representation 543B. In some embodiments, in response to detecting user input corresponding to a selection to accept a new automatically generated password, the device replaces (840) the enable representations for accepting the new automatically generated password and the enable representations for rejecting the new automatically generated password with a soft keyboard that includes multiple characters inserted into the enable representations. For example, in Figure 5H In response to detecting contact 550G at the location of the rejection indication 543B, device 100 replaces the new password user interface 503C, which includes the acceptance indication 543A and the rejection indication 543B, with a soft keyboard 503B. Replacing the password user interface with a soft keyboard provides the user with an efficient mechanism for generating new passwords, thereby reducing the amount of user interaction required for password generation. Reduced user interaction reduces device wear. Reduced user interaction also leads to faster new password generation, thereby reducing power consumption during storage management operations and extending device battery life.
[0327] It should be understood that, Figures 8A-8C The specific order in which the operations described herein are presented is merely exemplary and not intended to indicate that the order is the only possible order in which these operations can be performed. Those skilled in the art will conceive of various ways to reorder the operations described herein. Furthermore, it should be noted that details of other processes described herein relative to other methods (e.g., methods 900, 1000, and 1100) also apply in a similar manner to the above descriptions relative to other methods described herein. Figures 8A to 8C Method 800 is described herein. For example, the user interface (including domains, capability representations, and their responses), user input, password representation, and authentication credentials described above with reference to method 800 optionally have one or more characteristics of the user interface (including domains, capability representations, and their responses), user input, password representation, and authentication credentials described herein with reference to other methods described herein (e.g., methods 900, 1000, and 1100). For the sake of brevity, these details will not be repeated here.
[0328] Figures 9A to 9D A flowchart illustrates a method 900 for inserting a verification code into a user interface according to some embodiments. This is used in electronic devices having a display device and one or more input devices (e.g., [missing information]). Figure 1A Portable multi-functional device 100 or Figure 3 Method 900 is performed at device 300. In some embodiments, the display device is a touchscreen display, and one or more 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 operations in method 900 may be optionally combined, and / or the order of some operations may be optionally changed.
[0329] As described below, Method 900 provides an intuitive way to insert a verification code into a user interface. Method 900 reduces the cognitive load on the user when inserting the verification code into the user interface, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, enabling users to insert the verification code into the user interface faster and more efficiently saves power and increases the time between battery charging sessions.
[0330] The device receives (902) a request to access a CAPTCHA-protected resource via the one or more input devices. In various implementations, the CAPTCHA is a one-time use code or an on-demand code sent via an authorized communication channel (such as via text or email). In various implementations, the request includes selection of a login enablement or a request code enablement. For example, in... Figure 5M In the middle, device 100 detected contact 550L at the location of the continued login indicator 531E.
[0331] Upon receiving a request to access resources, the device receives an electronic message (904) at the electronic device. In various implementations, the electronic message is an SMS text message, email, or chat message. For example, in... Figure 5O In the present invention, device 100 displays a message notification 561A indicating that a text message has been received. However, in various embodiments described below, the device receives electronic messages without displaying a message notification.
[0332] In some embodiments, in response to receiving an electronic message, the device displays a message notification (906) on a display device. For example, in Figure 5O In response to receiving an electronic message, device 100 displays message notification 561A. In some embodiments, the message notification includes (908) a copy enable indicator that, when selected, copies content to the clipboard. For example, in Figure 5U2 In this context, device 100 displays a message notification 561A including a copy enable display 561C. The copy enable display provides users with an efficient mechanism to insert CAPTCHAs without manually inserting each character, thereby reducing user interaction with the device. Reduced user interaction reduces device wear and tear. Reduced user interaction also results in faster CAPTCHA insertion, and thus reduces power consumption during CAPTCHA insertion, extending device battery life.
[0333] In some embodiments, the device detects (910) user input corresponding to a selection of a message notification via one or more inputs. For example, in Figure 5O In this embodiment, device 100 detects contact 550M at the location of message notification 561A. In some embodiments, in response to detecting user input corresponding to a selection of message notification, the device displays (912) an electronic message on a display device that emphasizes content matching a predetermined format (as further described below with respect to block 916). For example, in Figure 5P In this device, device 100 displays a message window 564 containing content from an electronic message received from a source, where content that is highlighted (e.g., underlined) matches a predetermined format (e.g., a verification code "03201981"). Displaying the electronic message in response to the detection of a message notification selection results in a more efficient human-machine interface (because the user does not need to access the application launcher user interface to launch the application to display the electronic message). Furthermore, displaying the electronic message with highlighted content matching the predetermined format guides the user to quickly find the verification code, thus leading to a more efficient human-machine interface. For battery-powered electronic devices, a more efficient human-machine interface saves power and increases the time between battery charging. Additionally, a more efficient human-machine interface reduces the amount of user interaction with the device and reduces wear and tear on the device.
[0334] 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, abandons the display (or cancels) of the message notification. For example, in Figure 5AC In the process, based on the determination that the received text message does not include a verification code, device 100 displays message notification 561F. However, in Figure 5AB If the received text message contains a verification code, device 100 will not display the message notification. This decision simplifies the process of inserting the verification code, reducing the likelihood that the user will launch an application that receives electronic messages through it, and increasing the likelihood that the user will use the insertion enable function to insert the verification code. This reduces user interaction with the device, thereby reducing wear and tear and extending battery life.
[0335] Upon receiving an electronic message and displaying a user interface for inputting a verification code on a display device: based on the determination that the electronic message includes content that meets a corresponding standard, wherein the corresponding standard includes a format requirement that the electronic message includes content matching a predetermined format, the device displays (916) an insertion enablement on the electronic device, which, when selected, automatically inserts content matching the predetermined format as a verification code into the user interface. For example, in Figure 5Z In the middle, upon receiving the prompt display Figure 5Y Following the text message notification 561A and upon displaying the web browser user interface 502 including the verification code field 532G, based on the determination that the text message includes a verification code, device 100 displays an insertion enable indicator 545, which, when selected, inserts the verification code into the verification code field 532G. This insertion enable indicator provides the user with an efficient mechanism for inserting the verification code, thereby reducing the amount of user interaction required for verification code insertion. Reduced user interaction reduces device wear. Reduced user interaction also leads to faster initiation of storage management operations, and thus reduces power consumption during storage management operations, thereby extending device battery life.
[0336] In some embodiments, the corresponding standard includes (918) a timing requirement for displaying a user interface for entering a verification code within a predetermined time period from the time the message is received. For example, in Figure 5Z In the middle, based on the confirmation received, the prompt will be displayed. Figure 5YWithin three minutes of receiving a text message notification 561A, the user selects the verification code field 532G, and device 100 displays an insertion power indicator 545. Displaying the insertion power indicator for a limited time increases the likelihood that the user will select it and reduces the likelihood of displaying it when the user is unlikely to select it, thus saving screen space. A smaller (and less expensive) screen provides the same usability by using less screen space.
[0337] In some embodiments, the corresponding standard includes (920) a user interface for inputting a verification code that includes feature requirements for a text input field with predetermined characteristics. For example, in Figure 5Z In this context, the web browser user interface 502 is determined to include a verification code field 532G, and the device 100 displays an insertion capability indicator 545. In some embodiments, the corresponding standard includes (922) a selection requirement for a text input field having predetermined characteristics. For example, in Figure 5Z In, according to determination (e.g., by detection) Figure 5Y In the case of a 550V contact field, the CAPTCHA field 532G is selected, and device 100 displays an insert power indicator 545. Displaying the insert power indicator when the CAPTCHA field is selected increases the likelihood that the user will select the insert power indicator and reduces the likelihood that the insert power indicator will be displayed when the user is unlikely to select it, thus saving screen space. By using less space on the screen, a smaller (and less expensive) screen can provide the same usability.
[0338] In some embodiments, the predetermined format is based on the text of the (924) electronic message. For example, in Figure 5Z In the middle, device 100 displays a prompt based on the detected information. Figure 5Y The text "code" in the text message of message notification 561A is used to display the insertion capability representation 545. In some embodiments, the predetermined format is based on (926) the content of a string that includes a predetermined character standard. For example, in Figure 5Z In this process, device 100 displays an insertion indication 545 based on the detected string (“03201981”) containing a series of eight digits.
[0339] In some embodiments, the soft keyboard display (928) including multiple character insertion indications is used to insert the indication. For example, in Figure 5Z In this embodiment, device 100 displays an insertion indicator 545 above multiple character insertion indicator displays as part of a numeric soft keyboard 503B. In some embodiments, the insertion indicator display (930) is located in a text suggestion area. For example, in Figure 5ZIn this embodiment, device 100 displays an insertion enable indicator 545 in the text suggestion area of the numeric soft keyboard 503B. In various implementations, the text suggestion area is located above the soft keyboard, on a touch bar, or within a pop-up menu. Displaying the insertion enable indicator in conjunction with the soft keyboard provides a more efficient human-machine interface by offering the user different options (e.g., using the insertion enable indicator or using the soft keyboard to type a verification code) without requiring additional user interaction to access those options. Reducing user interaction with the device reduces device wear and tear and extends battery life.
[0340] In some embodiments, the insertion capability indicator includes (932) an indication of an application through which electronic messages are received. For example, in Figure 5Z In this context, the inserted indication 545 includes an indication that the verification code was received from a text messaging application. In some embodiments, the inserted indication includes (934) an indication of the sender of the electronic message. For example, in Figure 5Z In this context, the insertion of the power indicator 545 includes an indication that the verification code was received from the telephone number "987-66". Including the sender's information in the application and / or electronic message increases the likelihood that the user will select the power indicator and effectively insert the verification code, thereby reducing user interaction with the device compared to inserting the verification code through other means. Reduced user interaction with the device reduces device wear and tear and extends the device's battery life.
[0341] In some embodiments, after receiving an electronic message and displaying a user interface for entering a verification code on a display device: if it is determined that the electronic message does not contain content that meets the corresponding criteria, the device abandons the display (936) of the inserted enable signal. For example, in Figure 5AD In the middle, upon receiving the prompt display Figure 5AC Following the text message notification 561F and while displaying the web browser user interface 502 including the verification code field 532G, if it is determined that the text message does not include a verification code, device 100 does not display the insertion enablement representation 545. In some embodiments, if it is determined that the electronic message does not include content that meets the corresponding criteria, the device displays (938) one or more alternative insertion enablement representations on the display device, which automatically input the corresponding words in the user interface when selected. For example, in Figure 5AD In this context, device 100 displays an alternative insertion capability representation in the text suggestion area 542.
[0342] In some embodiments, the device detects (940) user input corresponding to a selection of the inserted indication via the one or more input devices. For example, in Figure 5ZIn this embodiment, device 100 detects contact 550W at the location of the insertion indicator 545. In some embodiments, in response to detecting user input corresponding to a selection of the insertion indicator, the device automatically inserts content matching a predetermined format as a verification code into the (942) user interface. For example, in Figure 5AA In this process, device 100 inserts the verification code "03201981" into the verification code field 532G. Automatic insertion of the verification code into the user interface provides an efficient human-machine interface for this purpose. For battery-powered electronic devices, a more efficient human-machine interface saves power and increases the time between battery charging cycles. Furthermore, a more efficient human-machine interface reduces user interaction with the device and reduces wear and tear.
[0343] In some embodiments, in response to determining that the electronic message includes content that meets a corresponding standard, the device automatically inserts content matching a pre-determined format as a verification code into the (944) user interface. For example, in Figure 5AB In response to receiving the text message notification 561A displayed in Figure Y, device 100 automatically inserts the verification code "03201981" into the verification code field 532G. Automatic insertion of the verification code into the user interface provides an efficient human-machine interface for this purpose. For battery-powered electronic devices, an efficient human-machine interface saves power and increases the time between battery charging cycles. Furthermore, an efficient human-machine interface reduces user interaction with the device and reduces wear and tear on the device.
[0344] It should be understood that, Figures 9A to 9D The specific order of operations described herein is merely exemplary and not intended to indicate that the order is the only possible order in which these operations can be performed. Those skilled in the art will conceive of various ways to reorder the operations described herein. Furthermore, it should be noted that the details of other processes described herein in conjunction with other methods (e.g., methods 800, 1000, and 1100) are similarly applicable to the above-described combinations. Figures 9A to 9D The method 900. For example, the user interface (including domains, capability representations and their responses), user inputs, notifications and criteria described above with reference to method 900 optionally have one or more characteristics of the user interface (including domains, capability representations and their responses), user inputs, 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 will not be repeated here.
[0345] Figures 10A to 10C A flowchart illustrating 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 Portable multi-functional device 100 or Figure 3 Method 1000 is performed at device 300. In some embodiments, the display device is a touchscreen display, and one or more 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 operations in method 1000 may be optionally combined, and / or the order of some operations may be optionally changed.
[0346] As described below, Method 1000 provides an intuitive way to share authentication credentials. Method 1000 reduces the cognitive burden on users when sharing authentication credentials, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, enabling users to share authentication credentials faster and more efficiently saves power and increases the time between battery charging sessions.
[0347] The first electronic device receives (1002) an instruction from the second electronic device requiring authentication credentials for the service. For example, in Figure 6D In response to receiving an instruction from the second electronic device 620 that authentication credentials are required for service, the first electronic device 610 displays a shared confirmation window 640.
[0348] In response to receiving an instruction that the second electronic device requires authentication credentials for service, and based on the determination that the first electronic device meets a corresponding criterion, wherein the corresponding criterion includes the requirement that the first electronic device is within a predetermined proximity to the second electronic device, in order to meet the corresponding criterion, the first electronic device displays a verification prompt (1004) on a display device, which requests the first electronic device to enter verification information from the second electronic device to continue. For example, in Figure 6E In the first electronic device 610, a first user interface 612 is displayed, which includes a verification prompt that requires the first electronic device 610 to input information from the second electronic device 620 (e.g., verification information displayed by the second electronic device 620) in order to continue.
[0349] In some embodiments, if it is determined that the first electronic device does not meet the corresponding standard, the first electronic device abandons the display of the (1006) verification prompt. For example, in Figure 6EIn this system, a third electronic device that does not meet the relevant standards will not display the verification prompt. By foregoing the display of the verification prompt on a user device not adjacent to the second electronic device, a more efficient human-machine interface is provided, reducing user interaction that ignores the prompt and using less screen space for unnecessary information. For battery-powered electronic devices, a more efficient human-machine interface saves power and increases the time between battery charging. Furthermore, a more efficient human-machine interface reduces user interaction with the device and reduces wear and tear. By using less screen space, a smaller (and less expensive) screen can provide the same usability.
[0350] In some embodiments, the corresponding standard includes (1008) a requirement that the first electronic device be within proximity to 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 In this process, the first electronic device 610 displays a verification prompt based on its proximity to the third electronic device 630.
[0351] In some embodiments, the first electronic device displays (1012) a shared confirmation notification on a display device, including a shared confirmation capability representation that, when selected, causes a verification prompt to be displayed, and detects user input corresponding to the selection of the shared confirmation capability representation via the one or more input devices. For example, in Figure 6E In this embodiment, the first electronic device 610 displays a share confirmation window 640 including a share confirmation indicator 641, and detects contact 650C at the location of the share confirmation indicator 641. The share confirmation window reduces the possibility of accidentally sharing authentication credentials. Therefore, the security of the user account is improved.
[0352] In some embodiments, verification information from the second electronic device is displayed by the second electronic device (1014). For example, in Figure 6E In this process, the verification information from the second electronic device 620 is displayed on the display device 621 by the second electronic device 620.
[0353] When the verification prompt is displayed, the first electronic device receives (1016) verification information from the second electronic device via the one or more input devices. For example, in Figure 6E In this process, the first electronic device detects contact 650D (and additional contact) corresponding to the verification information displayed by the second electronic device 620.
[0354] In some embodiments, the 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 input that meets the conditions for establishing a secure connection between the first electronic device and the second electronic device.
[0355] In response to receiving the authentication information, the first electronic device initiates (1020) a process for sharing the service's authentication credentials from the first electronic device to the second electronic device. For example, in Figure 6F In response to receiving authentication information, the first electronic device 610 displays a service selection user interface 508, which includes a list of service capabilities 661A-661G, each associated with multiple services, the user accounts for those services, and the authentication credentials for those user accounts. Figure 6G In response to the detection of a specific service selection, the authentication credentials for that service are shared from the first electronic device 610 to the second electronic device 620. Sharing authentication credentials provides the user with an efficient mechanism to enter authentication credentials on the second electronic device without using other user interactions. Reduced user interaction reduces device wear. Reduced user interaction also leads to faster initiation of entering authentication credentials on the second electronic device, and thus reduces the power consumption of entering authentication credentials, thereby extending the device's battery life.
[0356] In some embodiments, the first electronic device detects (1022) a sequence of one or more inputs for authentication credentials used in the sharing service via the one or more input devices. For example, in Figure 6F In the process, the device detects contact 650E at the location of the first service enablement representation 661A, and in response, shares the service authentication credentials from the first electronic device 610 to the second electronic device 620.
[0357] In some embodiments, the first electronic device displays (1024) a service list including multiple service capability representations on a display device, each of the multiple service capability representations corresponding to multiple services respectively associated with multiple authentication credentials. For example, in Figure 6F In the first electronic device 610, a service selection user interface 508 is displayed, which includes a list of service capability representations 661A-661G, which are associated with multiple services, user accounts for those services, and authentication credentials for those user accounts.
[0358] In some embodiments, the first electronic device sorts the service list at least in part based on the relevance of the respective services (1026). In various embodiments, the relevance of the respective services is based on the domain name, application name, or identifier of the service for which credentials are requested by the second device and applied by the first device. For example, in Figure 6F In this configuration, the second electronic device 620 requires an indication of authentication credentials for a service to be specified, and the service is listed at the top of a list of service representations 661A-661G. Sorting the service list provides the user with an efficient mechanism for selecting a service representation associated with the desired service, thereby reducing user interaction with the device and improving security by decreasing the likelihood of the user accidentally sharing authentication credentials (e.g., for another user account).
[0359] In some embodiments, the first electronic device detects (1028) user input via the one or more input devices corresponding to a selection of one of the plurality of service capability representations, the plurality of service capability representations corresponding to services associated with authentication credentials for the service. For example, in Figure 6F In the process, the device detects contact 650E at the location of the first service enablement representation 661A, and in response, shares the service authentication credentials from the first electronic device 610 to the second electronic device 620.
[0360] 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 detection Figure 6F The first service in the device represents the contact 650E at the location of 661A, and the first electronic device 610 shares the authentication credentials of the first service from the first electronic device 610 to the second electronic device 620.
[0361] In some embodiments, the first electronic device wirelessly transmits (1032) authentication credentials for the service from the first electronic device to the second electronic device via a secure connection. For example, the authentication credentials may be transmitted via a peer-to-peer WiFi connection or a Bluetooth connection. In some embodiments, the first electronic device shares (1034) authentication credentials, including a user identifier and a password, from the first electronic device to the second electronic device.
[0362] In some embodiments, the first electronic device authenticates the user before transmitting authentication credentials. Therefore, in some embodiments, the first electronic device obtains (1036) authentication information via the one or more input devices and authenticates the user based on the authentication information (1038). Authentication of the user before sharing authentication credentials improves the security of the user account by reducing the likelihood of sharing authentication credentials without the user's knowledge.
[0363] In some embodiments, after the process of authenticating credentials for the shared service, the first electronic device displays (1040) a notification on a display device indicating that the process of authenticating credentials for the shared service has been completed. For example, in Figure 6G In the first electronic device 610, a sharing completion window 643 is displayed, which includes a notification indicating that authentication credentials have been shared with the second electronic device 620.
[0364] It should be understood that, Figures 10A to 10C The specific order in which the operations described herein are executed is merely exemplary and not intended to indicate that the order is the only possible order in which these operations can be performed. Those skilled in the art will conceive of various ways to reorder the operations described herein. Furthermore, it should be noted that the details of other processes described herein in conjunction with other methods (e.g., methods 800, 900, and 1100) are similarly applicable to the above-described combinations. Figures 10A to 10C The method 1000. For example, the user interface (including domains, capability representations and their responses), user input, electronic device and authentication credentials described above with reference to method 1000 optionally have one or more characteristics of the user interface (including domains, capability representations and their responses), user input, electronic device and authentication credentials described herein with reference to other methods described herein (e.g., methods 800, 900 and 1100). For the sake of brevity, these details will not be repeated here.
[0365] Figures 11A to 11C A flowchart of a method 1100 for displaying password information according to some embodiments is shown. This is applicable to electronic devices having a display device and one or more input devices (e.g., Figure 1A Portable multi-functional device 100 or Figure 3 Method 1100 is performed at device 300. In some embodiments, the display device is a touchscreen display, and one or more 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 operations in method 1100 may optionally be combined, and / or the order of some operations may optionally be changed.
[0366] As described below, method 1100 provides an intuitive way to display password information. Method 1100 reduces the cognitive load on the user when displaying password information, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, enabling users to display password information faster and more efficiently saves power and increases the time between battery charging cycles.
[0367] 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 In the middle, device 100 detects and displays a verbal request 751A containing password information. For example, in... Figure 7O In the middle, device 100 detects and displays a verbal request 751B containing password information. For example, in... Figure 7R In the middle, device 100 detects and displays a verbal request for password information 751C. For example, in... Figure 7T In the middle, device 100 detects and displays the password information in the verbal request 751D.
[0368] In response to receiving a verbal request to display password information, and based on the determination that the request is for the password of a first user account accessible to the device and that the user has been authenticated, the device displays (1104) the password of the first user account. For example, in Figure 7L In the context of determining that the speech request 751A is aimed at... Figure 7D The fourth user account can represent the password of the user account associated with 727D, and after the user is authenticated (such as...). Figures 7J to 7K As shown), device 100 displays a password display 730B that includes text indicating the password associated with the user account. For example, in... Figure 7P In the context of the determination of speech request 751B, it is determined that the request is directed against... Figure 7D The seventh user account display 727G represents the password of the associated user account, and after user authentication, device 100 displays a password display 730D including text indicating the password associated with that user account. Displaying password information in response to verbal requests provides an efficient mechanism for displaying password information, thereby reducing the amount of user interaction required to display it. Reduced user interaction reduces device wear. Reduced user interaction also leads to faster initiation of password information display, and thus reduces power consumption for displaying password information, thereby extending device battery life.
[0369] In some embodiments, the device displays (1106) information about a first user account accessible to the device. For example, in Figure 7LIn the device 100, a password details user interface 709A is displayed. This password details user interface includes: a username display 730A, which includes text indicating the username associated with the user account of the service; a password display 730B, which includes text indicating the password associated with the user account; and text indicating the website associated with the service of the user account 731A. For example, in... Figure 7P In the device 100, a password details user interface 709B is displayed. This user interface includes: a username display 730C, which includes text indicating the username associated with the user account for the service; a password display 730D, which includes text indicating the password associated with the user account; and text indicating the website associated with the service for the user account 731B. Providing additional information about the first user account increases user confidence regarding the display of the first password, thereby reducing the likelihood that the user will perform further user interaction to display the first password. Reduced user interaction reduces device wear and tear and extends device battery life.
[0370] In some embodiments, information about a first user account accessible by the device includes (1108) password security information for the first user account's password. In some embodiments, information about a first user account accessible by the device includes (1110) an alarm indicating that the password for the first user account is the same as the password for another user account accessible by the device. For example, in Figure 7P In this embodiment, device 100 displays an alert 735 indicating that the password associated with a second user account is the same as the password associated with one or more other accounts. In some embodiments, the password security information for the first user account's password includes information about password strength, such as whether the password is easy to guess, short, low-entropy, contains common words, etc. In some embodiments, the alert includes (1112) displaying an indication of the resources available for modifying the password of the first user account when selected. For example, in Figure 7P In this context, alarm 735 includes a password change capability representation 736, which, when selected, displays resources such as web pages or applications for changing the user's account password. Providing a capability representation for changing weak or repeated passwords provides the user with an effective mechanism for changing their password, thereby reducing the amount of user interaction required. Reduced user interaction reduces device wear and tear. Reduced user interaction also leads to faster password change initiation and thus reduces power consumption during password change, extending device battery life. Furthermore, providing the user with an effective mechanism for changing passwords increases the likelihood that the user will perform such an action and enhances the security of the user's account.
[0371] In response to receiving a verbal request to display password information, and based on the determination that the request is for the password of a second user account accessible to the device and that the user has been authenticated, the device displays (1114) the password of the second user account. For example, in Figure 7L In the context of determining that the speech request 751A is aimed at... Figure 7D The fourth user account can represent the password of the user account associated with 727D, and after the user is authenticated (such as...). Figures 7J to 7K As shown), device 100 displays a password display 730B that includes text indicating the password associated with the user account. For example, in... Figure 7P In the context of the determination of speech request 751B, it is determined that the request is directed against... Figure 7G The seventh user account display 727G represents the password of the user account associated with it, and after authenticating the user, the device 100 displays a password display 730D that includes text indicating the password associated with that user account.
[0372] 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 capabilities, which, when selected, displays the corresponding password for the corresponding user account accessible by the device. For example, in Figure 7S In response to receiving Figure 7R In response to a verbal request 751C, device 100 displays a password list user interface 708. This password list user interface includes a list of user account representations 727A-727G, which are associated with multiple user accounts for corresponding services and the authentication credentials of those user accounts. Displaying password information in response to a verbal request provides an efficient mechanism for displaying password information, thereby reducing the amount of user interaction required to display password information. Reduced user interaction reduces device wear. Reduced user interaction also leads to faster initiation of password information display, and thus reduces the power consumption of displaying password information, thereby extending the device's battery life.
[0373] In some embodiments, in response to receiving a verbal request to display password information, and based on determining that the request is for a password for a user account inaccessible to the device, the device displays (1118) a list of password display capabilities, which, when selected, displays the corresponding password for the corresponding user account accessible to the device. For example, in Figure 7U In response to receiving Figure 7TIn the speech request 751D, device 100 displays a password list user interface 708, which includes a list of user account representations 727A-727G, each associated with a user account for a given service and the authentication credentials of that user account. In some embodiments, the device displays (1120) a search field pre-populated based on the speech request. For example, in Figure 7U In China, based on Figure 7T In the verbal request 751D, search domain 729 is pre-filled with the word "hotel".
[0374] In some embodiments, the device detects (1122) user input corresponding to the selection of a password for a first user account via the one or more input devices. For example, in Figure 7L In this embodiment, device 100 detects contact 7520F at the location of password capability indicator 730B. In some embodiments, in response to detecting user input corresponding to a selection of a password for a first user account, the device displays (1124) a shared capability indicator on a display device, which, when selected, initiates a process for sharing the password of the first user account. For example, in Figure 7M In this configuration, device 100 displays a shared power indicator 732B, which, when selected, initiates a process for sharing a password (and / or other authentication credentials) associated with a first user account. Therefore, the user interface provides the user with an efficient mechanism for sharing authentication credentials, thereby reducing the amount of user interaction required for this process. Reduced user interaction decreases device wear and tear. Furthermore, reduced user interaction leads to faster initiation of shared authentication credentials, and consequently reduces power consumption during this process, thus extending the device's battery life.
[0375] In some embodiments, the device detects (1126) user input corresponding to a selection of a shared power representation via the one or more input devices. For example, in Figure 7M In this embodiment, device 100 detects contact 750G at the location of shared power indicator 732B. In some embodiments, in response to detecting user input corresponding to a selection of a shared power indicator, the device displays (1128) a receiver selection card on a display device, comprising one or more receiver power indicators that, when selected, share the password of a first user account with the corresponding device. For example, in Figure 7N In the device 100, a receiver selection card 733 is displayed, comprising a plurality of receiver enablers 734A-734C, which, when selected, initiate a process for sharing a password (and / or other authentication credentials) associated with a first user account with the corresponding receiver.
[0376] In some embodiments, in response to receiving a verbal request to display password information, and based on determining that the user is unauthenticated, the device authenticates the user and continues to display the requested password information. Therefore, in some embodiments, in response to receiving a verbal request to display password information, and based on determining that the user is unauthenticated, the device obtains (1130) authentication information via the one or more input devices, and authenticates the user based on that authentication information. For example, in Figures 7J to 7K In response to detecting a speech request 751A, device 100 obtains authentication information (such as...) via the one or more input devices. Figure 7J The authentication window 741 is shown in progress), and based on the authentication information (such as... Figure 7K The system authenticates the user (as shown in the authentication window 742). In some embodiments, authentication information includes (1132) the user's biometrics, such as facial features or fingerprints. Authenticating the user increases the security of the user account by ensuring that password information is not displayed without the user's knowledge.
[0377] In some embodiments, before receiving a verbal request to display password information and while the device is locked, the device detects (1134) 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 In the process, device 100 detects user input requesting to unlock the device, which takes the form of contact 750E moving upwards from a position near the bottom of the display. Figure 7G In the process, device 100 obtains unlock information (as shown in the authentication window 741). Figure 7H In this process, device 100 unlocks itself based on the unlock information (as shown in the already authenticated window 742).
[0378] In some embodiments, the unlock information includes (1136) a password, and the authentication information includes the user's biometrics, or, if biometric authentication fails, a password. Therefore, 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 if it is not configured).
[0379] In some embodiments, authentication information is obtained (1138) when the device is locked, and authenticating the user based on the authentication information further includes unlocking the device based on the authentication information. For example, in Figure 7WIn this context, when the device is locked (as indicated by the lock screen user interface 705), device 100 obtains authentication information (as shown in the authentication in progress window 741). Figure 7Y In this process, device 100 is unlocked based on 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 (because the user does not need to unlock the device and authenticate separately). For battery-powered electronic devices, a more efficient human-machine interface saves power and increases the time between battery charging. In addition, a more efficient human-machine interface reduces the amount of user interaction with the device and reduces wear and tear on the device.
[0380] It should be understood that, Figures 11A to 11C The specific order in which the operations described herein are presented is merely exemplary and not intended to indicate that the order is the only possible order in which these operations can be performed. Those skilled in the art will conceive of various ways to reorder the operations described herein. Furthermore, it should be noted that the details of other processes described herein in conjunction with other methods (e.g., methods 800, 900, and 1000) are similarly applicable to the above-described combinations. Figures 11A to 11C The method 1100. For example, the user interface (including domains, capability representations and their responses), user input (specifically, verbal requests and commands), and authentication credentials described above with reference to method 1100 optionally have one or more characteristics of the user interface (including domains, capability representations and their responses), user input (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 will not be repeated here.
[0381] 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 relative to...). Figure 1A and Figure 3 (as described) or application-specific chips.
[0382] The above references Figures 8A to 8C , Figures 9A to 9D , Figures 10A to 10C as well as Figures 11A to 11C The operation is optionally performed by Figures 1A to 1BThe components depicted are used to implement this. For example, display operation 802, detection operation 804, display operation 810, display operation 820, receiving operation 902, receiving operation 904, display operation 916, receiving operation 1002, display operation 1004, receiving 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 touch on touch-sensitive display 112, and event distributor 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 touch 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, the event recognizer 180 activates the event handler 190 associated with the detection of that event or sub-event. The event handler 190 optionally uses or invokes the data updater 176 or the object updater 177 to update the application's internal state 192. In some embodiments, the event handler 190 accesses the corresponding GUI updater 178 to update the content displayed by the application. Similarly, those skilled in the art will readily understand that based on... Figure 1A-Figure 1B How the components described herein can implement other processes.
[0383] For purposes of explanation, the foregoing description has been given by reference to specific embodiments. However, the illustrative discussion above is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible based on the teachings above. The embodiments were chosen and described to best elucidate the principles of the invention and its practical application, thereby enabling others skilled in the art to best utilize the invention with various modifications suitable for the particular intended use, as well as the various described embodiments.
Claims
1. A method for generating a new password, comprising: At an electronic device having a display device and one or more input devices: A user interface including a new password field is displayed on the display device, wherein the new password field is a text box for receiving text input indicating a password to be associated with a user account; Detect user input corresponding to the selection of the new password field via the one or more input devices; In response to detecting the user input corresponding to the selection of the new password field: The display device displays a representation of the new automatically generated password in the new password field; as well as The display device displays an indication of acceptance of the new automatically generated password and an indication of rejection of the new automatically generated password; User input corresponding to a request to edit the new, automatically generated password is detected via the one or more input devices; as well as In response to detecting user input corresponding to the request to edit the new automatically generated password, the display of the representation of the new automatically generated password is maintained, and a soft keyboard for editing the new automatically generated password is displayed.
2. The method of claim 1, wherein displaying the representation of the new automatically generated password includes displaying the new automatically generated password.
3. The method of claim 1, wherein the representation of displaying the new automatically generated password includes displaying a portion of the new automatically generated password and an indication that a portion of the new automatically generated password is not displayed.
4. The method of claim 1, wherein displaying the representation of the new automatically generated password includes displaying a generic password indicator.
5. The method according to any one of claims 1 to 4, wherein displaying the indication of acceptance of the new automatically generated password and the indication of rejection of the new automatically generated password comprises displaying a new password user interface, the new password user interface F-EF209185 for review. This includes the indication of acceptance of the new automatically generated password and the indication of rejection of the new automatically generated password.
6. The method of claim 5, wherein displaying the new password user interface does not include a plurality of character insertion enable representations displayed on the soft keyboard.
7. The method according to claim 6, further comprising: Detect user input corresponding to the selection of the user identifier field via the one or more input devices; and In response to detecting user input corresponding to a selection of the user identifier field, the soft keyboard including the plurality of character insertion enable representations is displayed on the display device.
8. The method of claim 5, wherein the new password user interface further includes a description of the new automatically generated password and instructions for retrieving the new automatically generated password.
9. The method of claim 5, wherein displaying the new password user interface further includes displaying a second indication of refusal to use the new automatically generated password separately from the new password user interface.
10. The method according to any one of claims 1 to 4, further comprising: Detect user input corresponding to the selection of the enabled representation to accept the new automatically generated password via the one or more input devices; and In response to detecting user input corresponding to a selection to accept the new automatically generated password, the display of the acceptance of the new automatically generated password and the rejection of the new automatically generated password is stopped.
11. The method according to any one of claims 1 to 4, further comprising: Detect user input corresponding to the selection of the enabled representation that refuses to use the new automatically generated password via the one or more input devices; and In response to detecting user input that corresponds to the selection of the capability representation that rejects the new automatically generated password, the capability representation that accepts the new automatically generated password and the capability representation that rejects the new automatically generated password are replaced with a soft keyboard that includes multiple characters inserted into the capability representation.
12. The method according to any one of claims 1 to 4, wherein detecting the user input corresponding to the selection of the new cryptographic field includes determining that the selected field is a new cryptographic field based on one or more of the number of fields of the user interface or the text associated with the user interface.
13. The method according to any one of claims 1 to 4, wherein the new automatically generated password is generated based on one or more password generation constraints of the user interface.
14. The method according to any one of claims 1 to 4, wherein the indication of refusing to use the new automatically generated cipher is an indication of clearing the new cipher field.
15. An electronic device comprising: A display device configured to display a user interface; One or more input devices, the one or more input devices being configured to receive input; and A processing device, coupled to the display device and the one or more input devices, is configured to: A user interface including a new password field is displayed on the display device, wherein the new password field is a text box for receiving text input indicating a password to be associated with a user account; Detect user input corresponding to the selection of the new password field via the one or more input devices; In response to detecting the user input corresponding to the selection of the new password field: The display device displays a representation of the new automatically generated password in the new password field; as well as The display device displays an indication of acceptance of the new automatically generated password and an indication of rejection of the new automatically generated password; User input corresponding to a request to edit the new, automatically generated password is detected via the one or more input devices; as well as In response to detecting user input corresponding to the request to edit the new automatically generated password, the display of the representation of the new automatically generated password is maintained, and a soft keyboard for editing the new automatically generated password is displayed.
16. The electronic device of claim 15, wherein the processing device is configured to display the representation of the new automatically generated password by displaying the new automatically generated password.
17. The electronic device of claim 15, wherein the processing device is configured to display the representation of the new automatically generated password by displaying a portion of the new automatically generated password and an indication that a portion of the new automatically generated password is not displayed.
18. The electronic device of claim 15, wherein the processing device is configured to display the representation of the new automatically generated password by displaying a universal password indicator.
19. The electronic device according to any one of claims 15 to 18, wherein the processing device is configured to display an indication of acceptance of the new automatically generated password and an indication of refusal to use the new automatically generated password by displaying a new password user interface, the new password user interface including the indication of acceptance of the new automatically generated password and the indication of refusal to use the new automatically generated password.
20. The electronic device of claim 19, wherein the processing device is configured to display the new password user interface instead of displaying a plurality of character insertion enablement representations shown in the soft keyboard.
21. The electronic device of claim 20, wherein the processing device is further configured to: Detect user input corresponding to the selection of the user identifier field via the one or more input devices; and In response to detecting user input corresponding to a selection of the user identifier field, the soft keyboard including the plurality of character insertion enable representations is displayed on the display device.
22. The electronic device of claim 19, wherein the new password user interface further includes a description of the new automatically generated password and instructions for retrieving the new automatically generated password.
23. The electronic device of claim 19, wherein the processing device is configured to display the new password user interface, while displaying, separately from the new password user interface, a second indication of refusal to use the new automatically generated password.
24. The electronic device according to any one of claims 15 to 18, wherein the processing device is further configured to: Detect user input corresponding to the selection of the enabled representation to accept the new automatically generated password via the one or more input devices; and In response to detecting user input corresponding to a selection to accept the new automatically generated password, the display of the acceptance of the new automatically generated password and the rejection of the new automatically generated password is stopped.
25. The electronic device according to any one of claims 15 to 18, wherein the processing device further comprises: Detect user input corresponding to the selection of the enabled representation that refuses to use the new automatically generated password via the one or more input devices; and In response to detecting user input that corresponds to the selection of the capability representation that rejects the new automatically generated password, the capability representation that accepts the new automatically generated password and the capability representation that rejects the new automatically generated password are replaced with a soft keyboard that includes multiple characters inserted into the capability representation.
26. The electronic device according to any one of claims 15 to 18, wherein the processing device is configured to detect the user input corresponding to the selection of the new password field by determining, based on one or more of the number of fields of the user interface or the text associated with the user interface, that the selected field is a new password field.
27. The electronic device according to any one of claims 15 to 18, wherein the new automatically generated password is generated based on one or more password generation constraints of the user interface.
28. The electronic device according to any one of claims 15 to 18, wherein the indication of refusing to use the new automatically generated cipher is an indication of clearing the new cipher field.
29. An electronic device comprising: Display devices; One or more input devices; One or more processors; Non-transitory memory; as well as One or more programs, wherein the one or more programs are stored in the non-transitory memory and configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: A user interface including a new password field is displayed on the display device, wherein the new password field is a text box for receiving text input indicating a password to be associated with a user account; Detect user input corresponding to the selection of the new password field via the one or more input devices; In response to detecting the user input corresponding to the selection of the new password field: The display device displays a representation of the new automatically generated password in the new password field; as well as The display device displays an indication of acceptance of the new automatically generated password and an indication of rejection of the new automatically generated password; User input corresponding to a request to edit the new, automatically generated password is detected via the one or more input devices; as well as In response to detecting user input corresponding to the request to edit the new automatically generated password, the display of the representation of the new automatically generated password is maintained, and a soft keyboard for editing the new automatically generated password is displayed.
30. A non-transitory computer-readable storage medium storing one or more programs, said one or more programs comprising instructions that, when executed by an electronic device having a display device and one or more input devices, cause the electronic device to: A user interface including a new password field is displayed on the display device, wherein the new password field is a text box for receiving text input indicating a password to be associated with a user account; Detect user input corresponding to the selection of the new password field via the one or more input devices; In response to detecting the user input corresponding to the selection of the new password field: The display device displays a representation of the new automatically generated password in the new password field; as well as F-EF209185 requests a review The display device displays an indication of acceptance of the new automatically generated password and an indication of rejection of the new automatically generated password; User input corresponding to a request to edit the new, automatically generated password is detected via the one or more input devices; as well as In response to detecting user input corresponding to the request to edit the new automatically generated password, the display of the representation of the new automatically generated password is maintained, and a soft keyboard for editing the new automatically generated password is displayed.
31. An electronic device, comprising: Display devices; One or more input devices; as well as A means for displaying a user interface including a new password field on the display device, wherein the new password field is a text box for receiving text input indicating a password to be associated with a user account; Means for detecting user input corresponding to the selection of the new password field via the one or more input devices; A means for performing the following operations in response to detecting user input corresponding to the selection of the new password field: The display device displays a representation of the new automatically generated password in the new password field; as well as The display device displays an indication of acceptance of the new automatically generated password and an indication of rejection of the new automatically generated password; A means for detecting, via the one or more input devices, user input corresponding to a request to edit the new, automatically generated password; as well as A device for performing the following operations: in response to detecting user input corresponding to a request to edit the new automatically generated password, maintaining the display of the representation of the new automatically generated password, and displaying a soft keyboard for editing the new automatically generated password.
32. An electronic device, comprising: Display devices; One or more input devices; One or more processors; F-EF209185 requests a review Non-transitory memory; as well as One or more programs, wherein the one or more programs are stored in the non-transitory 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 1 to 14.
33. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions that, when executed by an electronic device having a display device and one or more input devices, cause the electronic device to perform or cause the execution of the method according to any one of claims 1 to 14.
34. An electronic device, comprising: Display devices; One or more input devices; as well as A means for performing or causing to perform the method according to any one of claims 1 to 14.
35. A graphical user interface on an electronic device, the electronic device having a display device, one or more input devices, non-transitory memory, and one or more processors for executing one or more programs stored in the non-transitory memory, the graphical user interface comprising a user interface displayed by the method according to any one of claims 1 to 14.
36. An information processing apparatus for use in an electronic device having a display device and one or more input devices, comprising: A means for performing or causing to perform the method according to any one of claims 1 to 14.
Citation Information
Patent Citations
Automating password maintenance
WO2014019129A1