RELATED APPLICATIONThis application claims priority to U.S. Provisional Patent Application No. 61/875,669, filed Sep. 9, 2013, which is incorporated by reference herein in its entirety.
TECHNICAL FIELDThis relates generally to electronic devices with fingerprint sensors, including but not limited to electronic devices with fingerprint sensors that detect inputs for manipulating user interfaces.
BACKGROUNDThe use of touch-sensitive surfaces as input devices for computers and other electronic computing devices has increased significantly in recent years. Exemplary touch-sensitive surfaces include touch pads and touch screen displays. Such surfaces are widely used to manipulate user interface objects on a display. Additionally, some electronic devices include fingerprint sensors for authenticating users.
Exemplary manipulations include adjusting the position and/or size of one or more user interface objects or activating buttons or opening files/applications represented by user interface objects, as well as associating metadata with one or more user interface objects or otherwise manipulating user interfaces. Exemplary user interface objects include digital images, video, text, icons, control elements such as buttons and other graphics. A user will, in some circumstances, need to perform in such manipulations on user interface objects in a file management program (e.g., Finder from Apple Inc. of Cupertino, Calif.), an image management application (e.g., Aperture or iPhoto from Apple Inc. of Cupertino, Calif.), a digital content (e.g., videos and music) management application (e.g., iTunes from Apple Inc. of Cupertino, Calif.), a drawing application, a presentation application (e.g., Keynote from Apple Inc. of Cupertino, Calif.), a word processing application (e.g., Pages from Apple Inc. of Cupertino, Calif.), a website creation application (e.g., iWeb from Apple Inc. of Cupertino, Calif.), a disk authoring application (e.g., iDVD from Apple Inc. of Cupertino, Calif.), or a spreadsheet application (e.g., Numbers from Apple Inc. of Cupertino, Calif.).
But methods for performing these manipulations are cumbersome and inefficient. In addition, these methods take longer than necessary, thereby wasting energy. This latter consideration is particularly important in battery-operated devices.
SUMMARYAccordingly, there is a need for electronic devices with faster, more efficient methods and interfaces for manipulating user interfaces. Such methods and interfaces optionally complement or replace conventional methods for manipulating user interfaces. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
The above deficiencies and other problems associated with user interfaces for electronic devices with touch-sensitive surfaces are reduced or eliminated by the disclosed devices. In some embodiments, the device is a desktop computer. In some embodiments, the device is portable (e.g., a notebook computer, tablet computer, or handheld device). In some embodiments, the device has a touchpad. In some embodiments, the device has a touch-sensitive display (also known as a “touch screen” or “touch screen display”). In some embodiments, the device has a fingerprint sensor. In some embodiments, the device has a graphical user interface (GUI), one or more processors, memory and one or more modules, programs or sets of instructions stored in the memory for performing multiple functions. In some embodiments, the user interacts with the GUI primarily through finger contacts and gestures on the touch-sensitive surface and/or the fingerprint sensor. In some embodiments, the functions optionally include image editing, drawing, presenting, word processing, website creating, disk authoring, spreadsheet making, game playing, telephoning, video conferencing, e-mailing, instant messaging, workout support, digital photographing, digital videoing, web browsing, digital music playing, and/or digital video playing. 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.
There is a need for electronic devices with faster, more efficient methods and interfaces for enrolling fingerprints with a device. Such methods and interfaces may complement or replace conventional methods for enrolling fingerprints with a device. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: displaying a fingerprint enrollment interface; detecting on the fingerprint sensor a plurality of separate and distinct stationary finger gestures performed with a respective finger; and collecting fingerprint information from the plurality of separate and distinct stationary finger gestures performed with the respective finger. After collecting the fingerprint information, the method includes determining, based on fingerprint information collected for the respective finger, whether the fingerprint information that has been collected is sufficient to enroll a fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, the method includes enrolling the fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is not sufficient to enroll the fingerprint of the respective finger, the method includes displaying a message in the fingerprint enrollment interface prompting a user to perform one or more additional stationary finger gestures on the fingerprint sensor with the respective finger.
In accordance with some embodiments, an electronic device includes: a display unit configured to display a fingerprint enrollment interface; a fingerprint sensor unit; and a processing unit coupled to the display unit and the fingerprint sensor unit. The processing unit is configured to: detect on the fingerprint sensor unit a plurality of separate and distinct stationary finger gestures performed with a respective finger; and collect fingerprint information from the plurality of separate and distinct stationary finger gestures performed with the respective finger. After collecting the fingerprint information, the processing unit is also configured to determine, based on the fingerprint information collected for the respective finger, whether the fingerprint information that has been collected is sufficient to enroll a fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, the processing unit is configured to enroll the fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is not sufficient to enroll the fingerprint of the respective finger, the processing unit is configured to enable display of a message in the fingerprint enrollment interface prompting a user to perform one or more additional stationary finger gestures on the fingerprint sensor unit with the respective finger.
Thus, electronic devices with displays and fingerprint sensors are provided with faster, more efficient methods and interfaces for enrolling fingerprints with a device, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods of enrolling fingerprints with a device.
There is a need for electronic devices with faster, more efficient methods and interfaces for performing operations based on fingerprints. Such methods and interfaces may complement or replace conventional methods for performing operations. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a fingerprint sensor. The method includes detecting, with the fingerprint sensor, a first input. The method also includes, in response to detecting the first input, determining whether the first input includes a fingerprint. The method further includes, in accordance with a determination that the first input includes a fingerprint: performing a first operation based on the presence of the fingerprint without regard to an identity of the fingerprint; and, in accordance with a determination that the fingerprint in the first input matches an enrolled fingerprint, conditionally performing a second operation based on the enrolled fingerprint.
In accordance with some embodiments, an electronic device includes a fingerprint sensor unit configured to detect a first input and a processing unit coupled to the fingerprint sensor unit. The processing unit is configured to, in response to detecting the first input: determine whether the first input includes a fingerprint. The processing unit is also configured to, in accordance with a determination that the first input includes a fingerprint: perform a first operation based on the presence of the fingerprint without regard to an identity of the fingerprint. The processing unit is further configured to, in accordance with a determination that the fingerprint in the first input matches an enrolled fingerprint, conditionally perform a second operation based on the enrolled fingerprint.
Thus, electronic devices with fingerprint sensors are provided with faster, more efficient methods and interfaces for performing operations based on fingerprints, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for performing operations based on fingerprints.
There is a need for electronic devices with faster, more efficient methods and interfaces for populating credential fields and revealing redacted credentials, such as passwords, credit card numbers, and the like. Such methods and interfaces may complement or replace conventional methods for populating credential fields and revealing redacted credentials. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: storing a set of one or more credentials; displaying a form with fields corresponding to one or more credentials of the set of one or more credentials; receiving a request to automatically fill in the form with one or more credentials of the set of one or more credentials, wherein the request includes a finger input on the fingerprint sensor; in response to receiving the request to automatically fill in the form: in accordance with a determination that the finger input includes a fingerprint that is associated with a user who is authorized to use the set of one or more credentials, filling in the form with the one or more credentials; and in accordance with a determination that the finger input includes a fingerprint that is not associated with a user who is authorized to use the set of one or more credentials, forgoing filling in the form with the one or more credentials.
In accordance with some embodiments, an electronic device includes a display unit configured to display a form with fields corresponding to one or more credentials of the set of one or more credentials; a credential storage unit configured to store a set of one or more credentials; a fingerprint sensor unit; and a processing unit coupled to the display unit, the credential storage unit, and the fingerprint sensor unit. The processing unit is configured to: receive a request to automatically fill in the form with one or more credentials of the set of one or more credentials, wherein the request includes a finger input on the fingerprint sensor; and in response to receiving the request to automatically fill in the form: in accordance with a determination that the finger input includes a fingerprint that is associated with a user who is authorized to use the set of one or more credentials, fill in the form with the one or more credentials; and in accordance with a determination that the finger input includes a fingerprint that is not associated with a user who is authorized to use the set of one or more credentials, forgo filling in the form with the one or more credentials.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: storing a set of one or more credentials; receiving a request to display the set of one or more credentials; in response to receiving the request to display the set of one or more credentials, displaying redacted versions of the set of one or more credentials; while displaying the redacted versions of the set of one or more credentials, detecting a fingerprint on the fingerprint sensor; and in response to detecting the fingerprint and in accordance with a determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials, displaying a non-redacted version of the set of one or more credentials.
In accordance with some embodiments, an electronic device includes a display unit; a fingerprint sensor unit; and a processing unit coupled to the display unit, the credential storage unit, and the fingerprint sensor unit. The processing unit is configured to: receive a request to display the set of one or more credentials; in response to receiving the request to display the set of one or more credentials, enable display of redacted versions of the set of one or more credentials; and in response to detection of a fingerprint on the fingerprint sensor while the redacted versions of the set of one or more credentials are displayed, and in accordance with a determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials, enable display of a non-redacted version of the set of one or more credentials.
Thus, electronic devices with displays and fingerprint sensors are provided with faster, more efficient methods and interfaces for automatically populating credential fields and revealing redacted credentials, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for populating credential fields and revealing redacted credentials.
There is a need for electronic devices with more efficient and secure methods and interfaces for managing the automatic usage of saved credentials. Such methods and interfaces may complement or replace conventional methods for managing the automatic usage of saved credentials.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: storing on the device a respective credential of a user of the device; while executing a software application: (1) receiving a fingerprint at a fingerprint sensor of the device; and (2) in response to receiving the fingerprint and in accordance with a determination that credential-usage criteria have been satisfied, including a determination that the received fingerprint matches at least one of a set of enrolled fingerprints, automatically using the respective credential of the user in the software application. The method also includes: after automatically using the respective credential of the user in response to receiving the fingerprint, receiving a request to enroll an additional fingerprint with the device; in response to the request to enroll the additional fingerprint with the device, adding the additional fingerprint to the set of enrolled fingerprints; and in response to adding the additional fingerprint to the set of enrolled fingerprints, preventing enrolled fingerprints from being used to authorize automatic usage of the respective credential.
In accordance with some embodiments, an electronic device includes a storage unit configured to store on the device a respective credential of a user of the device; and a processing unit coupled to the storage unit. The processing unit is configured to: while executing a software application: (1) receive a fingerprint at a fingerprint sensor of the device; and (2) in response to receiving the fingerprint and in accordance with a determination that credential-usage criteria have been satisfied, including a determination that the received fingerprint matches at least one of a set of enrolled fingerprints, automatically use the respective credential of the user in the software application. The processing unit is further configured to: after automatically using the respective credential of the user in response to receiving the fingerprint, receive a request to enroll an additional fingerprint with the device; in response to the request to enroll the additional fingerprint with the device, add the additional fingerprint to the set of enrolled fingerprints; and in response to adding the additional fingerprint to the set of enrolled fingerprints, prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential.
Thus, electronic devices with displays and fingerprint sensors are provided with more efficient and secure methods and interfaces for managing the automatic usage of credentials, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for managing the automatic usage of credentials.
There is a need for electronic devices with faster, more efficient methods and interfaces for revealing redacted information. Such methods and interfaces may complement or replace conventional methods for displaying information on a device. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: displaying a redacted version of first information on the display, and while displaying the redacted version of the first information on the display, detecting a finger input on the fingerprint sensor. The method further includes, in response to detecting the finger input on the fingerprint sensor: in accordance with a determination that the finger input includes a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, replacing display of the redacted version of the first information with an unredacted version of the first information; and in accordance with a determination that the finger input does not include a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, maintaining display of the redacted version of the first information on the display.
In accordance with some embodiments, an electronic device includes a display unit configured to display a redacted version of first information on the display; a fingerprint sensor unit; and a processing unit coupled to the display unit and the fingerprint sensor unit. The processing unit is configured to, while enabling display of the redacted version of the first information on the display unit, detect a finger input on the fingerprint sensor. The processing unit is further configured to, in response to detecting the finger input on the fingerprint sensor: in accordance with a determination that the finger input includes a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, replace display of the redacted version of the first information with an unredacted version of the first information; and in accordance with a determination that the finger input does not include a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, maintain display of the redacted version of the first information on the display.
Thus, electronic devices with displays, and fingerprint sensors are provided with faster, more efficient methods and interfaces for revealing redacted information, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for displaying information on a device.
There is a need for electronic devices with faster, more efficient methods and interfaces for providing different unlock modes of such electronic devices. Such methods and interfaces may complement or replace conventional methods for providing different unlock modes. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a fingerprint sensor and a display. While the device is in a locked mode of operation in which access to a respective set of features of the electronic device is locked, the method includes detecting, with the fingerprint sensor, a first input that corresponds to a request to initiate unlocking the device. In response to detecting the first input with the fingerprint sensor, the method further includes determining whether the first input meets one of unlock criteria, first unlock-failure criteria, or second unlock-failure criteria. In accordance with a determination that the first input meets the unlock criteria, the method includes transitioning the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked. In accordance with a determination that the first input meets the first unlock-failure criteria, the method includes maintaining the device in the locked mode and adjusting unlock settings so that the device is enabled to be unlocked via an unlock operation in a first set of one or more unlock operations, and in accordance with a determination that the first input meets the second unlock-failure criteria, maintaining the device in the locked mode and adjusting unlock settings so that the device is enabled to be unlocked via an unlock operation in a second set of one or more unlock operations that is different from the first set of unlock operations.
In accordance with some embodiments, an electronic device includes a display unit configured to display a graphical user interface, a fingerprint sensor unit and a processing unit coupled to the display unit and fingerprint sensor unit. While the device is in a locked mode of operation in which access to a respective set of features of the electronic device is locked, the fingerprint sensor unit detects a first input that corresponds to a request to initiate unlocking the device. In response to detecting the first input with the fingerprint sensor unit, the processing unit is configured to: determine whether the first input meets one of unlock criteria, first unlock-failure criteria, or second unlock-failure criteria. The processing unit is further configured to: in accordance with a determination that the first input meets the unlock criteria, transition the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked. The processing unit is further configured to: in accordance with a determination that the first input meets the first unlock-failure criteria, maintain the device in the locked mode and adjust unlock settings so that the device is enabled to be unlocked via an unlock operation in a first set of one or more unlock operations. The processing unit is further configured to: in accordance with a determination that the first input meets the second unlock-failure criteria, maintain the device in the locked mode and adjust unlock settings so that the device is enabled to be unlocked via an unlock operation in a second set of one or more unlock operations that is different from the first set of unlock operations.
Thus, electronic devices with displays, and fingerprint sensors are provided with faster, more efficient methods and interfaces for providing different unlock modes, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for providing different unlock modes.
There is a need for electronic devices with more efficient and secure methods and interfaces for controlling access to device information and features and unlocking the device. Such methods and interfaces may complement or replace conventional methods for controlling access to device information and features and unlocking the device. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: while the device is in a locked mode in which access to a respective set of features of the electronic device is locked, displaying a first user interface on the display and detecting a first input; in response to detecting the first input, displaying a second user interface on the display, where the second user interface is in a limited-access mode in which access to the second user interface is restricted in accordance with restriction criteria; and, while displaying the second user interface in the limited-access mode: detecting a first fingerprint on the fingerprint sensor; in accordance with a determination that the first fingerprint is one of a plurality of enrolled fingerprints that are enrolled with the device, displaying the second user interface in a full-access mode in which access to the second user interface is not restricted in accordance with the restriction criteria and transitioning the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked; and in accordance with a determination that the first fingerprint is not one of the plurality of enrolled fingerprints, maintaining display of the second user interface in the limited-access mode and maintaining the device in the locked mode.
In accordance with some embodiments, an electronic device includes a display unit, a fingerprint sensor unit, and a processing unit coupled to the display unit and the fingerprint sensor unit. The processing unit is configured to: while the device is in a locked mode in which access to a respective set of features of the electronic device is locked, enable display of the first user interface on the display unit, and detect a first input; in response to detecting the first input, enable display of a second user interface on the display unit, where the second user interface is in a limited-access mode in which access to the second user interface is restricted in accordance with restriction criteria; and while enabling display of the second user interface in the limited-access mode: detect a first fingerprint on the fingerprint sensor unit; in accordance with a determination that the first fingerprint is one of a plurality of enrolled fingerprints that are enrolled with the device, enable display of the second user interface in a full-access mode in which access to the second user interface is not restricted in accordance with the restriction criteria, and transition the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked; and in accordance with a determination that the first fingerprint is not one of the plurality of enrolled fingerprints, maintain display of the second user interface in the limited-access mode and maintain the device in the locked mode.
Thus, electronic devices with displays and fingerprint sensors are provided with more efficient and secure methods and interfaces for controlling access to device information and features and unlocking the device, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for controlling access to device information and features and unlocking the device.
There is a need for electronic devices with efficient methods and interfaces for unlocking an application or a device depending on context. Such methods and interfaces may complement or replace conventional methods for unlocking. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is performed at an electronic device with a display and a fingerprint sensor. The method includes: while the electronic device is in a locked mode in which access to features of a plurality of different applications on the electronic device is prevented, displaying a first user interface on the display, the first user interface being one of a locked-device user interface for the electronic device, and a limited-access user interface for a respective application in the plurality of different applications, and detecting, with the fingerprint sensor, a first input that corresponds to a request to initiate unlocking one or more features of the device. The method further includes, in response to detecting, with the fingerprint sensor, the first input that corresponds to the request to initiate unlocking one or more features of the device: in accordance with a determination that the first user interface is the locked-device user interface for the electronic device, transitioning the device from the locked mode to a multi-application unlocked mode in which the features of the plurality of different applications are unlocked. The method also includes, in accordance with a determination that the first user interface is the limited-access user interface for the respective application: transitioning the device from the locked mode to a single-application unlocked mode in which one or more previously-locked features of the respective application are unlocked; and continuing to prevent access to one or more previously-locked features of other applications in the plurality of different applications.
In accordance with some embodiments, an electronic device includes a display unit configured to display a first user interface; a fingerprint sensor unit; and a processing unit coupled to the display unit and the fingerprint sensor unit. The processing unit is configured to: while the electronic device is in a locked mode in which access to features of a plurality of different applications on the electronic device is prevented: enable display of the first user interface on the display unit, the first user interface being one of: a locked-device user interface for the electronic device, and a limited-access user interface for a respective application in the plurality of different applications; and detect, with the fingerprint sensor, a first input that corresponds to a request to initiate unlocking one or more features of the device. The processing unit is further configured to, in response to detecting, with the fingerprint sensor, the first input that corresponds to the request to initiate unlocking one or more features of the device: in accordance with a determination that the first user interface is the locked-device user interface for the electronic device, transition the device from the locked mode to a multi-application unlocked mode in which the features of the plurality of different applications are unlocked. The processing unit is also configured to, in accordance with a determination that the first user interface is the limited-access user interface for the respective application: transition the device from the locked mode to a single-application unlocked mode in which one or more previously-locked features of the respective application are unlocked; and continue to prevent access to one or more previously-locked features of other applications in the plurality of different applications.
Thus, electronic devices with displays and fingerprint sensors are provided with efficient methods and interfaces for unlocking an application or a device depending on context, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for unlocking.
In accordance with some embodiments, an electronic device includes a fingerprint sensor, a display, and/or a touch-sensitive surface, one or more processors, memory, and one or more programs; the one or more programs are stored in the memory and configured to be executed by the one or more processors and the one or more programs include instructions for performing the operations of any of the methods described above. In accordance with some embodiments, a graphical user interface on an electronic device with a fingerprint sensor, a display, optionally a touch-sensitive surface, a memory, and one or more processors to execute one or more programs stored in the memory includes one or more of the elements displayed in any of the methods described above, which are updated in response to inputs, as described in any of the methods described above. In accordance with some embodiments, a computer readable storage medium has stored therein instructions which when executed by an electronic device with a fingerprint sensor and optionally a display and/or, a touch-sensitive surface, cause the device to perform the operations of any of the methods described above. In accordance with some embodiments, an electronic device includes: a fingerprint sensor and optionally, a display and/one or a touch-sensitive surface; and means for performing the operations of any of the methods described above. In accordance with some embodiments, an information processing apparatus, for use in an electronic device with a fingerprint sensor and optionally a display and/or a touch-sensitive surface, includes means for performing the operations of any of the methods described above.
Thus, electronic devices with displays and fingerprint sensors are provided with faster, more efficient methods and interfaces for changing beamforming parameters based on fingerprint orientation, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for changing beamforming parameters.
BRIEF DESCRIPTION OF THE DRAWINGSFor a better understanding of the various described embodiments, reference should be made to the Description of Embodiments below, in conjunction with the following drawings in which like reference numerals refer to corresponding parts throughout the figures.
FIG. 1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display and a fingerprint sensor in accordance with some embodiments.
FIG. 1B is a block diagram illustrating exemplary components for event handling in accordance with some embodiments.
FIG. 2 illustrates a portable multifunction device having a touch screen and a fingerprint sensor in accordance with some embodiments.
FIG. 3 is a block diagram of an exemplary multifunction device with a display and a plurality of sensors including a fingerprint sensor and, optionally a touch-sensitive surface in accordance with some embodiments.
FIG. 4A illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments.
FIG. 4B illustrates an exemplary user interface for a multifunction device with a fingerprint sensor and a touch-sensitive surface that is separate from the display in accordance with some embodiments.
FIG. 4C illustrates a schematic representation of a two hands with associated fingerprints in accordance with some embodiments.
FIG. 4D illustrates different types of rotation of a fingerprint on a fingerprint sensor in accordance with some embodiments.
FIGS.5A-5EE illustrate exemplary user interfaces for enrolling fingerprints with a device in accordance with some embodiments.
FIGS. 6A-6D are flow diagrams illustrating a method of enrolling fingerprints with a device in accordance with some embodiments.
FIG. 7 is a functional block diagram of an electronic device in accordance with some embodiments.
FIGS. 8A-8W illustrate exemplary user interfaces for performing operations based on fingerprints in accordance with some embodiments.
FIGS. 9A-9B are flow diagrams illustrating a method of performing operations based on fingerprints in accordance with some embodiments.
FIG. 10 is a functional block diagram of an electronic device in accordance with some embodiments.
FIGS. 11A-11D illustrate exemplary user interfaces for populating credential fields with credentials, and for displaying non-redacted versions of credentials, in response to fingerprint-based authentication of a user, in accordance with some embodiments.
FIGS. 12A-12B are flow diagrams illustrating methods for using fingerprint-based authentication of a user to authorize automatic population of credential fields and to authorize display of non-redacted versions of credentials, in accordance with some embodiments.
FIG. 13 is a functional block diagram of an electronic device, in accordance with some embodiments.
FIGS. 14A-14C illustrate exemplary user interfaces for displaying non-redacted versions of credentials in response to fingerprint-based authentication of a user, in accordance with some embodiments.
FIGS. 15A-15B are flow diagrams illustrating methods for using fingerprint-based authentication of a user to authorize display of non-redacted versions of credentials, in accordance with some embodiments.
FIG. 16 is a functional block diagram of an electronic device, in accordance with some embodiments.
FIGS. 17A-17J illustrate exemplary user interfaces for managing the automatic usage of a saved credential through enrolled fingerprints in accordance with some embodiments.
FIGS. 18A-18C are flow diagrams illustrating a method of managing the automatic usage of a saved credential through enrolled fingerprints in accordance with some embodiments.
FIG. 19 is a functional block diagram of an electronic device in accordance with some embodiments.
FIGS. 20A-20T illustrate exemplary user interfaces for revealing redacted information in accordance with some embodiments.
FIGS. 21A-21C are flow diagrams illustrating a method of revealing redacted information in accordance with some embodiments.
FIG. 22 is a functional block diagram of an electronic device in accordance with some embodiments.
FIGS.23A-23FF illustrate exemplary user interfaces for providing different unlock modes in accordance with some embodiments.
FIGS. 24A-24D are flow diagrams illustrating a method of providing different unlock modes in accordance with some embodiments.
FIG. 25 is a functional block diagram of an electronic device in accordance with some embodiments.
FIGS. 26A-26X illustrate exemplary user interfaces for controlling access to device information and features and unlocking the device in accordance with some embodiments.
FIGS. 27A-27D are flow diagrams illustrating a method of controlling access to device information and features and unlocking the device in accordance with some embodiments.
FIG. 28 is a functional block diagram of an electronic device in accordance with some embodiments.
FIGS. 29A-29Y illustrate exemplary user interfaces for unlocking an application or a device depending on context in accordance with some embodiments.
FIGS. 30A-30D are flow diagrams illustrating a method of unlocking an application or a device depending on context in accordance with some embodiments.
FIG. 31 is a functional block diagram of an electronic device in accordance with some embodiments.
DESCRIPTION OF EMBODIMENTSThe methods, devices and GUIs described herein respond to inputs on a fingerprint sensor instead of, or in addition to, inputs on a touch-sensitive surface or other input device. In some implementations, a touch-sensitive surface with a spatial resolution that is high enough to detect fingerprint features formed by individual fingerprint ridges is used as a fingerprint sensor. When a fingerprint sensor is used without a separate touch-sensitive surface, the fingerprint sensor can serve as a substitute for many of the functions of the touch-sensitive surface with a much smaller form factor, as the fingerprint sensor can detect movement of a contact over the fingerprint sensor even when the fingerprint has an area that is as large as or larger than the area of the fingerprint sensor. When a fingerprint sensor is used in addition to a separate touch-sensitive surface, the fingerprint sensor can augment the touch-sensitive surface by providing accurate detection of twisting motions of a contact, identifying different fingerprints of fingers that are used to perform gestures on the fingerprint sensor, and identifying a current user of the device. Additionally, when a fingerprint sensor is used in addition to a separate touchscreen display, the fingerprint sensor can detect touch inputs in situations where it is advantageous to avoid having fingers obscuring portions of the display (e.g., while viewing a map, a video or a game). When the touch-sensitive surface is used as a fingerprint sensor, the touch-sensitive surface optionally has spatial resolution settings that can be defined so as to switch the touch-sensitive surface (or regions of the touch-sensitive surface) between a low-resolution mode and a high-resolution mode automatically, without user intervention. In many situations the low-resolution mode consumes less power than the high-resolution mode. An advantage of operating the touch-sensitive surface in a low-resolution mode when fingerprint detection is not needed and switching the touch-sensitive surface, or a region of the touch-sensitive surface, to high-resolution mode on an as-needed basis is that such an approach conserves power while still providing high-resolution fingerprint feature sensing as-needed to improve the user experience of using the device. In implementations where the touch-sensitive surface is used as a fingerprint sensor, the term “fingerprint sensor” is used to refer to the touch-sensitive surface, or a region of the touch-sensitive surface, that is currently in high-resolution mode.
A number of different approaches to providing an intuitive user interface where inputs from one or more fingerprint sensors are used to manipulate a user interface of an electronic device are described below. Using one or more of these approaches (optionally in conjunction with each other) helps to provide a user interface that intuitively provides users with additional information and functionality, thereby reducing the user's cognitive burden and improving the human-machine interface. Such improvements in the human-machine interface enable users to use the device faster and more efficiently. For battery-operated devices, these improvements conserve power and increase the time between battery charges. For ease of explanation, systems, methods and user interfaces for including illustrative examples of some of these approaches are described below, as follows:
- Below, FIGS.5A-5EE illustrate exemplary user interfaces for enrolling fingerprints with a device.FIGS. 6A-6D are flow diagrams illustrating a method of enrolling fingerprints with a device. The user interfaces in FIGS.5A-5EE are used to illustrate the processes inFIGS. 6A-6D.
- Below,FIGS. 8A-8W illustrate exemplary user interfaces for performing operations based on fingerprints.FIGS. 9A-9B are flow diagrams illustrating a method of performing operations based on fingerprints. The user interfaces inFIGS. 8A-8W are used to illustrate the processes inFIGS. 9A-9B.
- Below,FIGS. 11A-11D and14A-14C illustrate exemplary user interfaces for populating credential fields with credentials, and for displaying non-redacted versions of credentials, in response to fingerprint-based authentication of a user.FIGS. 12A-12B and15A-15B are flow diagrams illustrating methods for using fingerprint-based authentication of a user to authorize automatic population of credential fields and/or to authorize display of non-redacted credentials. The user interfaces inFIGS. 11A-11D and14A-14C are used to illustrate the processes inFIGS. 12A-12B and15A-15B.
- Below,FIGS. 17A-17J illustrate exemplary user interfaces for managing automatic usage of saved credentials on an electronic device (e.g.,device100 or300).FIGS. 18A-18C are flow diagrams illustrating a method of managing automatic usage of saved credentials on an electronic device (e.g.,device100 or300). The user interfaces inFIGS. 17A-17J are used to illustrate the processes inFIGS. 18A-18C.
- Below,FIGS. 20A-20T illustrate exemplary user interfaces for revealing redacted information.FIGS. 21A-21C are flow diagrams illustrating a method of revealing redacted information. The user interfaces inFIGS. 20A-20T are used to illustrate the processes inFIGS. 21A-21C.
- Below, FIGS.23A-23FF illustrate exemplary user interfaces for providing different unlock modes on an electronic device.FIGS. 24A-24D are flow diagrams illustrating a method of providing different unlock modes on an electronic device. The user interfaces in FIGS.23A-23FF are used to illustrate the processes inFIGS. 24A-24D.
- Below,FIGS. 26A-26X illustrate exemplary user interfaces for controlling access to device information and features and unlocking the device.FIGS. 27A-27D are flow diagrams illustrating a method of unlocking a device and access to device features. The user interfaces inFIGS. 26A-26X are used to illustrate the processes inFIGS. 27A-27D.
- Below,FIGS. 29A-29Y illustrate exemplary user interfaces for unlocking an application or a device depending on context.FIGS. 30A-30D are flow diagrams illustrating a method of unlocking an application or a device depending on context. The user interfaces inFIGS. 29A-29Y are used to illustrate the processes inFIGS. 30A-30D.
Exemplary DevicesReference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various described embodiments. However, it will be apparent to one of ordinary skill in the art that the various described embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
It will also be understood that, although the terms first, second, etc. are, in some instances, used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first contact could be termed a second contact, and, similarly, a second contact could be termed a first contact, without departing from the scope of the various described embodiments. The first contact and the second contact are both contacts, but they are not the same contact.
The terminology used in the description of the various described embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various described embodiments and the appended claims, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and/or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes,” “including,” “comprises,” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
As used herein, the term “if” is, optionally, construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context. Similarly, the phrase “if it is determined” or “if [a stated condition or event] is detected” is, optionally, construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event]” or “in response to detecting [the stated condition or event],” depending on the context.
Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communications device, such as a mobile telephone, that also contains other functions, such as PDA and/or music player functions. Exemplary embodiments of portable multifunction devices include, without limitation, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, Calif. Other portable electronic devices, such as laptops or tablet computers with touch-sensitive surfaces (e.g., touch screen displays and/or touch pads), are, optionally, used. It should also be understood that, in some embodiments, the device is not a portable communications device, but is a desktop computer with a touch-sensitive surface (e.g., a touch screen display and/or a touch pad).
In the discussion that follows, an electronic device that includes a display and a touch-sensitive surface is described. It should be understood, however, that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse and/or a joystick.
The device typically supports a variety of applications, such as one or more of the following: a drawing application, a presentation application, a word processing application, a website creation application, a disk authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an e-mail application, an instant messaging application, a workout support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and/or a digital video player application.
The various applications that are executed on the device optionally use at least one common physical user-interface device, such as the touch-sensitive surface. One or more functions of the touch-sensitive surface as well as corresponding information displayed on the device are, optionally, adjusted and/or varied from one application to the next and/or within a respective application. In this way, a common physical architecture (such as the touch-sensitive surface) of the device optionally supports the variety of applications with user interfaces that are intuitive and transparent to the user.
Attention is now directed toward embodiments of portable devices with touch-sensitive displays.FIG. 1A is a block diagram illustrating portablemultifunction device100 with touch-sensitive displays112 in accordance with some embodiments. Touch-sensitive display112 is sometimes called a “touch screen” for convenience, and is sometimes known as or called a touch-sensitive display system.Device100 includes memory102 (which optionally includes one or more computer readable storage mediums),memory controller122, one or more processing units (CPU's)120, peripherals interface118,RF circuitry108,audio circuitry110,speaker111,microphone113, input/output (I/O)subsystem106, other input orcontrol devices116, andexternal port124.Device100 optionally includes one or moreoptical sensors164.Device100 optionally includes one ormore intensity sensors165 for detecting intensity of contacts on device100 (e.g., a touch-sensitive surface such as touch-sensitive display system112 of device100).Device100 optionally includes one or moretactile output generators167 for generating tactile outputs on device100 (e.g., generating tactile outputs on a touch-sensitive surface such as touch-sensitive display system112 ofdevice100 ortouchpad355 of device300). These components optionally communicate over one or more communication buses orsignal lines103.
As used in the specification and claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch sensitive surface, or to a substitute (proxy) for the force or pressure of a contact on the touch sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values and more typically includes hundreds of distinct values (e.g., at least 256). Intensity of a contact is, optionally, determined (or measured) using various approaches and various sensors or combinations of sensors. For example, one or more force sensors underneath or adjacent to the touch-sensitive surface are, optionally, used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., a weighted average) to determine an estimated force of a contact. Similarly, a pressure-sensitive tip of a stylus is, optionally, used to determine a pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and/or changes thereto, the capacitance of the touch-sensitive surface proximate to the contact and/or changes thereto, and/or the resistance of the touch-sensitive surface proximate to the contact and/or changes thereto are, optionally, used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the substitute measurements for contact force or pressure are used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurements). In some implementations, the substitute measurements for contact force or pressure are converted to an estimated force or pressure and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure).
As used in the specification and claims, the term “tactile output” refers to physical displacement of a device relative to a previous position of the device, physical displacement of a component (e.g., a touch-sensitive surface) of a device relative to another component (e.g., housing) of the device, or displacement of the component relative to a center of mass of the device that will be detected by a user with the user's sense of touch. For example, in situations where the device or the component of the device is in contact with a surface of a user that is sensitive to touch (e.g., a finger, palm, or other part of a user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in physical characteristics of the device or the component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is, optionally, interpreted by the user as a “down click” or “up click” of a physical actuator button. In some cases, a user will feel a tactile sensation such as an “down click” or “up click” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movements. As another example, movement of the touch-sensitive surface is, optionally, interpreted or sensed by the user as “roughness” of the touch-sensitive surface, even when there is no change in smoothness of the touch-sensitive surface. While such interpretations of touch by a user will be subject to the individualized sensory perceptions of the user, there are many sensory perceptions of touch that are common to a large majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., an “up click,” a “down click,” “roughness”), unless otherwise stated, the generated tactile output corresponds to physical displacement of the device or a component thereof that will generate the described sensory perception for a typical (or average) user.
It should be appreciated thatdevice100 is only one example of a portable multifunction device, and thatdevice100 optionally has more or fewer components than shown, optionally combines two or more components, or optionally has a different configuration or arrangement of the components. The various components shown inFIG. 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and/or application specific integrated circuits.
Memory102 optionally includes high-speed random access memory and optionally also includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Access tomemory102 by other components ofdevice100, such asCPU120 and theperipherals interface118, is, optionally, controlled bymemory controller122.
Peripherals interface118 can be used to couple input and output peripherals of the device toCPU120 andmemory102. The one ormore processors120 run or execute various software programs and/or sets of instructions stored inmemory102 to perform various functions fordevice100 and to process data.
In some embodiments, peripherals interface118,CPU120, andmemory controller122 are, optionally, implemented on a single chip, such aschip104. In some other embodiments, they are, optionally, implemented on separate chips.
RF (radio frequency)circuitry108 receives and sends RF signals, also called electromagnetic signals.RF circuitry108 converts electrical signals to/from electromagnetic signals and communicates with communications networks and other communications devices via the electromagnetic signals.RF circuitry108 optionally includes well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, and so forth.RF circuitry108 optionally communicates with networks, such as the Internet, also referred to as the World Wide Web (WWW), an intranet and/or a wireless network, such as a cellular telephone network, a wireless local area network (LAN) and/or a metropolitan area network (MAN), and other devices by wireless communication. The wireless communication optionally uses any of a plurality of communications standards, protocols and technologies, including but not limited to Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), near field communication (NEC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and/or IEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol for e-mail (e.g., Internet message access protocol (IMAP) and/or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and/or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.
Audio circuitry110,speaker111, andmicrophone113 provide an audio interface between a user anddevice100.Audio circuitry110 receives audio data fromperipherals interface118, converts the audio data to an electrical signal, and transmits the electrical signal tospeaker111.Speaker111 converts the electrical signal to human-audible sound waves.Audio circuitry110 also receives electrical signals converted bymicrophone113 from sound waves.Audio circuitry110 converts the electrical signal to audio data and transmits the audio data to peripherals interface118 for processing. Audio data is, optionally, retrieved from and/or transmitted tomemory102 and/orRF circuitry108 byperipherals interface118. In some embodiments,audio circuitry110 also includes a headset jack (e.g.,212,FIG. 2). The headset jack provides an interface betweenaudio circuitry110 and removable audio input/output peripherals, such as output-only headphones or a headset with both output (e.g., a headphone for one or both ears) and input (e.g., a microphone).
I/O subsystem106 couples input/output peripherals ondevice100, such astouch screen112 and otherinput control devices116, toperipherals interface118. I/O subsystem106 optionally includesdisplay controller156,optical sensor controller158,intensity sensor controller159,haptic feedback controller161 and one ormore input controllers160 for other input or control devices. The one ormore input controllers160 receive/send electrical signals from/to other input orcontrol devices116. The otherinput control devices116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and so forth. In some alternate embodiments, input controller(s)160 are, optionally, coupled to any (or none) of the following: a keyboard, infrared port, USB port, and a pointer device such as a mouse. The one or more buttons (e.g.,208,FIG. 2) optionally include an up/down button for volume control ofspeaker111 and/ormicrophone113. The one or more buttons optionally include a push button (e.g.,206,FIG. 2).
Touch-sensitive display112 provides an input interface and an output interface between the device and a user.Display controller156 receives and/or sends electrical signals from/totouch screen112.Touch screen112 displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively termed “graphics”). In some embodiments, some or all of the visual output corresponds to user-interface objects.
Touch screen112 has a touch-sensitive surface, sensor or set of sensors that accepts input from the user based on haptic and/or tactile contact.Touch screen112 and display controller156 (along with any associated modules and/or sets of instructions in memory102) detect contact (and any movement or breaking of the contact) ontouch screen112 and converts the detected contact into interaction with user-interface objects (e.g., one or more soft keys, icons, web pages or images) that are displayed ontouch screen112. In an exemplary embodiment, a point of contact betweentouch screen112 and the user corresponds to a finger of the user.
Touch screen112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although other display technologies are used in other embodiments.Touch screen112 anddisplay controller156 optionally detect contact and any movement or breaking thereof using any of a plurality of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact withtouch screen112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone®, iPod Touch®, and iPad® from Apple Inc. of Cupertino, Calif.
Touch screen112 optionally has a video resolution in excess of 100 dpi. In some embodiments, the touch screen has a video resolution of approximately 160 dpi. The user optionally makes contact withtouch screen112 using any suitable object or appendage, such as a stylus, a finger, and so forth. In some embodiments, the user interface is designed to work primarily with finger-based contacts and gestures, which can be less precise than stylus-based input due to the larger area of contact of a finger on the touch screen. In some embodiments, the device translates the rough finger-based input into a precise pointer/cursor position or command for performing the actions desired by the user.
In some embodiments, in addition to the touch screen,device100 optionally includes a touchpad (not shown) for activating or deactivating particular functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output. The touchpad is, optionally, a touch-sensitive surface that is separate fromtouch screen112 or an extension of the touch-sensitive surface formed by the touch screen.
Device100 also includespower system162 for powering the various components.Power system162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator (e.g., a light-emitting diode (LED)) and any other components associated with the generation, management and distribution of power in portable devices.
Device100 optionally also includes one or moreoptical sensors164.FIG. 1A shows an optical sensor coupled tooptical sensor controller158 in I/O subsystem106.Optical sensor164 optionally includes charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) phototransistors.Optical sensor164 receives light from the environment, projected through one or more lens, and converts the light to data representing an image. In conjunction with imaging module143 (also called a camera module),optical sensor164 optionally captures still images or video. In some embodiments, an optical sensor is located on the back ofdevice100, oppositetouch screen display112 on the front of the device, so that the touch screen display is enabled for use as a viewfinder for still and/or video image acquisition. In some embodiments, another optical sensor is located on the front of the device so that the user's image is, optionally, obtained for videoconferencing while the user views the other video conference participants on the touch screen display.
Device100 optionally also includes one or morecontact intensity sensors165.FIG. 1A shows a contact intensity sensor coupled tointensity sensor controller159 in I/O subsystem106.Contact intensity sensor165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface).Contact intensity sensor165 receives contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is collocated with, or proximate to, a touch-sensitive surface (e.g., touch-sensitive display system112). In some embodiments, at least one contact intensity sensor is located on the back ofdevice100, oppositetouch screen display112 which is located on the front ofdevice100.
Device100 optionally also includes one ormore proximity sensors166.FIG. 1A showsproximity sensor166 coupled toperipherals interface118. Alternately,proximity sensor166 is coupled to inputcontroller160 in I/O subsystem106. In some embodiments, the proximity sensor turns off and disablestouch screen112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).
Device100 optionally also includes one or moretactile output generators167.FIG. 1A shows a tactile output generator coupled tohaptic feedback controller161 in I/O subsystem106.Tactile output generator167 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 a motor, solenoid, electroactive polymer, piezoelectric actuator, electrostatic actuator, or other tactile output generating component (e.g., a component that converts electrical signals into tactile outputs on the device).Contact intensity sensor165 receives tactile feedback generation instructions fromhaptic feedback module133 and generates tactile outputs ondevice100 that are capable of being sensed by a user ofdevice100. In some embodiments, at least one tactile output generator is collocated with, or proximate to, a touch-sensitive surface (e.g., touch-sensitive display system112) and, optionally, generates a tactile output by moving the touch-sensitive surface vertically (e.g., in/out of a surface of device100) or laterally (e.g., back and forth in the same plane as a surface of device100). In some embodiments, at least one tactile output generator sensor is located on the back ofdevice100, oppositetouch screen display112 which is located on the front ofdevice100.
Device100 optionally also includes one ormore accelerometers168.FIG. 1A showsaccelerometer168 coupled toperipherals interface118. Alternately,accelerometer168 is, optionally, coupled to aninput controller160 in I/O subsystem106. In some embodiments, information is displayed on the touch screen display in a portrait view or a landscape view based on an analysis of data received from the one or more accelerometers.Device100 optionally includes, in addition to accelerometer(s)168, a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information concerning the location and orientation (e.g., portrait or landscape) ofdevice100.
In some embodiments,device100 also includes (or is in communication with) one ormore fingerprint sensors169.FIG. 1A showsfingerprint sensor169 coupled toperipherals interface118. Alternately,fingerprint sensors169 are, optionally, coupled to aninput controller160 in I/O subsystem106. However, in one common embodiment, fingerprint identification operations are performed using secured dedicated computing hardware (e.g., one or more processors, memory and/or communications busses) that has additional security features so as to enhance security of the fingerprint information determined by the fingerprint sensors. As used herein, a fingerprint sensor is a sensor that is capable of distinguishing fingerprint features (sometimes called “minutia features”) of the ridges and valleys of skin such as those found on the fingers and toes of humans. A fingerprint sensor can use any of a variety of techniques to distinguish the fingerprint features, including but not limited to: optical fingerprint imaging, ultrasonic fingerprint imaging, active capacitance fingerprint imaging and passive capacitance fingerprint imaging. In addition to distinguishing fingerprint features in fingerprints, in some embodiments,fingerprint sensor169 is capable of tracking movement of fingerprint features over time and thereby determining/characterizing movement of the fingerprint over time on the fingerprint sensor. While the fingerprint sensor (e.g., Fingerprint Sensor169) inFIG. 1A is shown as being separate from the touch-sensitive surface (e.g., Touch-Sensitive Display System112), it should be understood that in some implementations, the touch-sensitive surface (e.g., Touch-Sensitive Display System112) has a spatial resolution that is high enough to detect fingerprint features formed by individual fingerprint ridges and is used as a fingerprint sensor instead of, or in addition to, a separate fingerprint sensor (e.g., Fingerprint Sensor169). In some embodiments,device100 includes a set of one or more orientation sensors that are used to determine an orientation of a finger or hand on or proximate to the device (e.g., an orientation of a finger that is over fingerprint sensor169). Additionally, in some embodiments, the set of one or more orientation sensors are used in addition to or instead of a fingerprint sensor to detect rotation of a contact that is interacting with the device (e.g., in one or more of the methods described below, instead of using a fingerprint sensor to detect rotation of a fingerprint/contact, the set of one or more orientation sensors is used to detect rotation of the contact that includes the fingerprint, with or without detecting features of the fingerprint).
In some embodiments, features of fingerprints and comparisons between features of detected fingerprints and features of stored fingerprints are performed by secured dedicated computing hardware (e.g., one or more processors, memory and/or communications busses) that are separate fromprocessors120, so as to improve security of the fingerprint data generated, stored and processed byfingerprint sensor169. In some embodiments, features of fingerprints and comparisons between features of detected fingerprints and features of enrolled fingerprints are performed byprocessors120 usingfingerprint analysis module131.
In some embodiments, during an enrollment process, the device (e.g.,fingerprint analysis module131 or a separatesecure module146 in communication with fingerprint sensor(s)169) collects biometric information about one or more fingerprints of the user (e.g., identifying relative location of a plurality of minutia points in a fingerprint of the user). After the enrollment process has been completed the biometric information is stored at the device (e.g., in secure fingerprint module146) for later use in authenticating detected fingerprints. In some embodiments, the biometric information that is stored at the device excludes images of the fingerprints and also excludes information from which images of the fingerprints could be reconstructed so that images of the fingerprints are not inadvertently made available if the security of the device is compromised. In some embodiments, during an authentication process, the device (e.g.,fingerprint analysis module131 or a separatesecure module146 in communication with fingerprint sensor(s)169) determines whether a finger input detected by the fingerprint sensor includes a fingerprint that matches a previously enrolled fingerprint by collecting biometric information about a fingerprint detected on the fingerprint sensor (e.g., identifying relative locations of a plurality of minutia points in the fingerprint detected on the fingerprint sensor) and comparing the biometric information that corresponds to the detected fingerprint to biometric information that corresponds to the enrolled fingerprints(s). In some embodiments, comparing the biometric information that corresponds to the detected fingerprint to biometric information that corresponds to the enrolled fingerprints(s) includes comparing a type and location of minutia points in the biometric information that corresponds to the detected fingerprint to a type and location of minutia points in the biometric information that corresponds to the enrolled fingerprints. However the determination as to whether or not a finger input includes a fingerprint that matches a previously enrolled fingerprint that is enrolled with the device is, optionally, performed using any of a number of well known fingerprint authentication techniques for determining whether a detected fingerprint matches an enrolled fingerprint.
In some embodiments, the software components stored inmemory102 includeoperating system126, communication module (or set of instructions), contact/motion module (or set of instructions)130,fingerprint analysis module131, graphics module (or set of instructions)132, text input module (or set of instructions)134, Global Positioning System (GPS) module (or set of instructions)135, and applications (or sets of instructions)136. Furthermore, in someembodiments memory102 stores device/globalinternal state157, as shown inFIGS. 1A and 3. Device/globalinternal state157 includes one or more of: active application state, indicating which applications, if any, are currently active; display state, indicating what applications, views or other information occupy various regions oftouch screen display112; sensor state, including information obtained from the device's various sensors andinput control devices116; and location information concerning the device's location and/or attitude.
In some embodiments credential information is stored assecure credential information145. Secure credential information, optionally, includes credentials for user accounts (e.g., user names and passwords, billing information, address information). In some embodiments, the credential information for one or more different applications is stored in a secure central location on the device, so that the credential information is accessible to different applications. In some embodiments, credential information that is associated with a particular application (e.g., a user name and password or billing information that has been entered into the particular application) is stored with the particular application (e.g., a user name and password for authorizing purchases in a store application are stored with the store application for ease of access by the store application). In some embodiments other security information (e.g., decryption keys for decrypting encrypted content stored at the device) is stored withsecure credential information145 or at another secure location on the device.
Operating system126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and/or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware and software components.
Communication module128 facilitates communication with other devices over one or moreexternal ports124 and also includes various software components for handling data received byRE circuitry108 and/orexternal port124. External port124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) is adapted for coupling directly to other devices or indirectly over a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, or similar to and/or compatible with the 30-pin connector used on iPod (trademark of Apple Inc.) devices.
Contact/motion module130 optionally detects contact with touch screen112 (in conjunction with display controller156) and other touch sensitive devices (e.g., a touchpad or physical click wheel). Contact/motion module130 includes various software components for performing various operations related to detection of contact, such as determining if contact has occurred (e.g., detecting a finger-down event), determining an intensity of the contact (e.g., the force or pressure of the contact or a substitute for the force or pressure of the contact), determining if there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-dragging events), and determining if the contact has ceased (e.g., detecting a finger-up event or a break in contact). Contact/motion module130 receives contact data from the touch-sensitive surface. Determining movement of the point of contact, which is represented by a series of contact data, optionally includes determining speed (magnitude), velocity (magnitude and direction), and/or an acceleration (a change in magnitude and/or direction) of the point of contact. These operations are, optionally, applied to single contacts (e.g., one finger contacts) or to multiple simultaneous contacts (e.g., “multitouch”/multiple finger contacts). In some embodiments, contact/motion module130 anddisplay controller156 detect contact on a touchpad.
In some embodiments, contact/motion module130 uses a set of one or more intensity thresholds to determine whether an operation has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments at least a subset of the intensity thresholds are determined in accordance with software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of particular physical actuators and can be adjusted without changing the physical hardware of device100). For example, a mouse “click” threshold of a trackpad or touch screen display can be set to any of a large range of predefined thresholds values without changing the trackpad or touch screen display hardware. Additionally, in some implementations a user of the device is provided with software settings for adjusting one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and/or by adjusting a plurality of intensity thresholds at once with a system-level click “intensity” parameter).
Contact/motion module130 optionally detects a gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and/or intensities of detected contacts). Thus, a gesture is, optionally, detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger-down event followed by detecting a finger-up (lift off) event at the same position (or substantially the same position) as the finger-down event (e.g., at the position of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger-down event followed by detecting one or more finger-dragging events, and subsequently followed by detecting a finger-up (lift off) event.
Fingerprint analysis module131 optionally detects a finger input by a user on a fingerprint sensor and determines whether the finger input includes a fingerprint that corresponds to a previously enrolled fingerprint that is enrolled with the device and/or detects movement of the fingerprint that corresponds to a finger gesture. In some embodiments, the enrollment of fingerprints and the comparison between detected fingerprints and enrolled fingerprints is performed at a securefingerprint analysis module146 that is in communication with fingerprint sensor(s)169 and securefingerprint analysis module146 providesfingerprint analysis module131 with information indicating whether or not the detected fingerprint matches a previously enrolled fingerprint without providing biometric information about the detected fingerprint or the enrolled fingerprint to fingerprint analysis module131 (e.g., so as to maintain the security of biometric information about detected and enrolled fingerprints). In some embodiments, information about movement of the fingerprint during the finger input and times of finger-up or finger-down events are also provided tofingerprint analysis module131 by securefingerprint analysis module146. In some embodiments, the information about the finger input is used byfingerprint analysis module131 to respond to the finger inputs (e.g., by unlocking the device, unlocking a function of the device, displaying previously redacted information, or performing an operation based on the movement of a fingerprint on the fingerprint sensor).
Graphics module132 includes various known software components for rendering and displaying graphics ontouch screen112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast or other visual property) of graphics that are displayed. As used herein, the term “graphics” includes any object that can be displayed to a user, including without limitation text, web pages, icons (such as user-interface objects including soft keys), digital images, videos, animations and the like.
In some embodiments,graphics module132 stores data representing graphics to be used. Each graphic is, optionally, assigned a corresponding code.Graphics module132 receives, from applications etc., one or more codes specifying graphics to be displayed along with, if necessary, coordinate data and other graphic property data, and then generates screen image data to output to displaycontroller156.
Haptic feedback module133 includes various software components for generating instructions used by tactile output generator(s)167 to produce tactile outputs at one or more locations ondevice100 in response to user interactions withdevice100.
Text input module134, which is, optionally, a component ofgraphics module132, provides soft keyboards for entering text in various applications (e.g.,contacts137,e-mail140,IM141,browser147, and any other application that needs text input).
GPS module135 determines the location of the device and provides this information for use in various applications (e.g., to telephone138 for use in location-based dialing, tocamera143 as picture/video metadata, and to applications that provide location-based services such as weather widgets, local yellow page widgets, and map/navigation widgets).
Applications136 optionally include the following modules (or sets of instructions), or a subset or superset thereof:
- contacts module137 (sometimes called an address book or contact list);
- telephone module138;
- video conferencing module139;
- e-mail client module140;
- instant messaging (IM)module141;
- workout support module142;
- camera module143 for still and/or video images;
- image management module144;
- browser module147;
- calendar module148;
- widget modules149, which optionally include one or more of: weather widget149-1, stocks widget149-2, calculator widget149-3, alarm clock widget149-4, dictionary widget149-5, and other widgets obtained by the user, as well as user-created widgets149-6;
- widget creator module150 for making user-created widgets149-6;
- search module151;
- video andmusic player module152, which is, optionally, made up of a video player module and a music player module;
- notes module153;
- map module154; and/or
- online video module155.
Examples ofother applications136 that are, optionally, stored inmemory102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice replication.
In conjunction withtouch screen112,display controller156,contact module130,graphics module132, andtext input module134,contacts module137 are, optionally, used to manage an address book or contact list (e.g., stored in applicationinternal state192 ofcontacts module137 inmemory102 or memory370), including: adding name(s) to the address book; deleting name(s) from the address book; associating telephone number(s), e-mail address(es), physical address(es) or other information with a name; associating an image with a name; categorizing and sorting names; providing telephone numbers or e-mail addresses to initiate and/or facilitate communications bytelephone138,video conference139,e-mail140, orIM141; and so forth.
In conjunction withRF circuitry108,audio circuitry110,speaker111,microphone113,touch screen112,display controller156,contact module130,graphics module132, andtext input module134,telephone module138 are, optionally, used to enter a sequence of characters corresponding to a telephone number, access one or more telephone numbers inaddress book137, modify a telephone number that has been entered, dial a respective telephone number, conduct a conversation and disconnect or hang up when the conversation is completed. As noted above, the wireless communication optionally uses any of a plurality of communications standards, protocols and technologies.
In conjunction withRF circuitry108,audio circuitry110,speaker111,microphone113,touch screen112,display controller156,optical sensor164,optical sensor controller158,contact module130,graphics module132,text input module134,contact list137, andtelephone module138,videoconferencing module139 includes executable instructions to initiate, conduct, and terminate a video conference between a user and one or more other participants in accordance with user instructions.
In conjunction withRF circuitry108,touch screen112,display controller156,contact module130,graphics module132, andtext input module134,e-mail client module140 includes executable instructions to create, send, receive, and manage e-mail in response to user instructions. In conjunction withimage management module144,e-mail client module140 makes it very easy to create and send e-mails with still or video images taken withcamera module143.
In conjunction withRF circuitry108,touch screen112,display controller156,contact module130,graphics module132, andtext input module134, theinstant messaging module141 includes executable instructions to enter a sequence of characters corresponding to an instant message, to modify previously entered characters, to transmit a respective instant message (for example, using a Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for telephony-based instant messages or using XMPP, SIMPLE, or IMPS for Internet-based instant messages), to receive instant messages and to view received instant messages. In some embodiments, transmitted and/or received instant messages optionally include graphics, photos, audio files, video files and/or other attachments as are supported in a MMS and/or an Enhanced Messaging Service (EMS). As used herein, “instant messaging” refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
In conjunction withRF circuitry108,touch screen112,display controller156,contact module130,graphics module132,text input module134,GPS module135,map module154, andmusic player module146,workout support module142 includes executable instructions to create workouts (e.g., with time, distance, and/or calorie burning goals); communicate with workout sensors (sports devices); receive workout sensor data; calibrate sensors used to monitor a workout; select and play music for a workout; and display, store and transmit workout data.
In conjunction withtouch screen112,display controller156, optical sensor(s)164,optical sensor controller158,contact module130,graphics module132, andimage management module144,camera module143 includes executable instructions to capture still images or video (including a video stream) and store them intomemory102, modify characteristics of a still image or video, or delete a still image or video frommemory102.
In conjunction withtouch screen112,display controller156,contact module130,graphics module132,text input module134, andcamera module143,image management module144 includes executable instructions to arrange, modify (e.g., edit), or otherwise manipulate, label, delete, present (e.g., in a digital slide show or album), and store still and/or video images.
In conjunction withRF circuitry108,touch screen112,display system controller156,contact module130,graphics module132, andtext input module134,browser module147 includes executable instructions to browse the Internet in accordance with user instructions, including searching, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
In conjunction withRF circuitry108,touch screen112,display system controller156,contact module130,graphics module132,text input module134,e-mail client module140, andbrowser module147,calendar module148 includes executable instructions to create, display, modify, and store calendars and data associated with calendars (e.g., calendar entries, to do lists, etc.) in accordance with user instructions.
In conjunction withRF circuitry108,touch screen112,display system controller156,contact module130,graphics module132,text input module134, andbrowser module147,widget modules149 are mini-applications that are, optionally, downloaded and used by a user (e.g., weather widget149-1, stocks widget149-2, calculator widget149-3, alarm clock widget149-4, and dictionary widget149-5) or created by the user (e.g., user-created widget149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).
In conjunction withRF circuitry108,touch screen112,display system controller156,contact module130,graphics module132,text input module134, andbrowser module147, thewidget creator module150 are, optionally, used by a user to create widgets (e.g., turning a user-specified portion of a web page into a widget).
In conjunction withtouch screen112,display system controller156,contact module130,graphics module132, andtext input module134,search module151 includes executable instructions to search for text, music, sound, image, video, and/or other files inmemory102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.
In conjunction withtouch screen112,display system controller156,contact module130,graphics module132,audio circuitry110,speaker111,RF circuitry108, andbrowser module147, video andmusic player module152 includes executable instructions that allow the user to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, and executable instructions to display, present or otherwise play back videos (e.g., ontouch screen112 or on an external, connected display via external port124). In some embodiments,device100 optionally includes the functionality of an MP3 player, such as an iPod (trademark of Apple Inc.).
In conjunction withtouch screen112,display controller156,contact module130,graphics module132, andtext input module134, notesmodule153 includes executable instructions to create and manage notes, to do lists, and the like in accordance with user instructions.
In conjunction withRF circuitry108,touch screen112,display system controller156,contact module130,graphics module132,text input module134,GPS module135, andbrowser module147,map module154 are, optionally, used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions; data on stores and other points of interest at or near a particular location; and other location-based data) in accordance with user instructions.
In conjunction withtouch screen112,display system controller156,contact module130,graphics module132,audio circuitry110,speaker111,RF circuitry108,text input module134,e-mail client module140, andbrowser module147,online video module155 includes instructions that allow the user to access, browse, receive (e.g., by streaming and/or download), play back (e.g., on the touch screen or on an external, connected display via external port124), send an e-mail with a link to a particular online video, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments,instant messaging module141, rather thane-mail client module140, is used to send a link to a particular online video.
Each of the above identified modules and applications correspond to a set of executable instructions for performing one or more functions described above and the methods described in this application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (i.e., sets of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules are, optionally, combined or otherwise re-arranged in various embodiments. In some embodiments,memory102 optionally stores a subset of the modules and data structures identified above. Furthermore,memory102 optionally stores additional modules and data structures not described above.
In some embodiments,device100 is a device where operation of a predefined set of functions on the device is performed exclusively through a touch screen and/or a touchpad. By using a touch screen and/or a touchpad as the primary input control device for operation ofdevice100, the number of physical input control devices (such as push buttons, dials, and the like) ondevice100 is, optionally, reduced.
The predefined set of functions that are performed exclusively through a touch screen and/or a touchpad optionally include navigation between user interfaces. In some embodiments, the touchpad, when touched by the user, navigatesdevice100 to a main, home, or root menu from any user interface that is displayed ondevice100. In such embodiments, a “menu button” is implemented using a touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device instead of a touchpad.
FIG. 1B is a block diagram illustrating exemplary components for event handling in accordance with some embodiments. In some embodiments, memory102 (inFIG. 1A) or370 (FIG. 3) includes event sorter170 (e.g., in operating system126) and a respective application136-1 (e.g., any of the aforementioned applications137-13,155,380-390).
Event sorter170 receives event information and determines the application136-1 andapplication view191 of application136-1 to which to deliver the event information.Event sorter170 includes event monitor171 andevent dispatcher module174. In some embodiments, application136-1 includes applicationinternal state192, which indicates the current application view(s) displayed on touchsensitive display112 when the application is active or executing. In some embodiments, device/globalinternal state157 is used byevent sorter170 to determine which application(s) is (are) currently active, and applicationinternal state192 is used byevent sorter170 to determineapplication views191 to which to deliver event information.
In some embodiments, applicationinternal state192 includes additional information, such as one or more of: resume information to be used when application136-1 resumes execution, user interface state information that indicates information being displayed or that is ready for display by application136-1, a state queue for enabling the user to go back to a prior state or view of application136-1, and a redo/undo queue of previous actions taken by the user.
Event monitor171 receives event information from peripherals interface118 or, optionally,fingerprint analysis module131. Event information includes information about a sub-event (e.g., a user touch on touch-sensitive display112, as part of a multi-touch gesture or a finger input on a fingerprint sensor169). Peripherals interface118 transmits information it receives from I/O subsystem106 or a sensor, such asproximity sensor166, accelerometer(s)168,fingerprint sensor169, and/or microphone113 (through audio circuitry110). Information that peripherals interface118 receives from I/O subsystem106 includes information from touch-sensitive display112 or a touch-sensitive surface.
In some embodiments, event monitor171 sends requests to the peripherals interface118 at predetermined intervals. In response, peripherals interface118 transmits event information. In other embodiments,peripheral interface118 transmits event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and/or for more than a predetermined duration).
In some embodiments,event sorter170 also includes a hitview determination module172 and/or an active eventrecognizer determination module173.
Hitview determination module172 provides software procedures for determining where a sub-event has taken place within one or more views, when touchsensitive display112 displays more than one view. Views are made up of controls and other elements that a user can see on the display.
Another aspect of the user interface associated with an application is a set of views, sometimes herein called application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of a respective application) in which a touch is detected optionally correspond to programmatic levels within a programmatic or view hierarchy of the application. For example, the lowest level view in which a touch is detected is, optionally, called the hit view, and the set of events that are recognized as proper inputs are, optionally, determined based, at least in part, on the hit view of the initial touch that begins a touch-based gesture.
Hitview determination module172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized in a hierarchy, hitview determination module172 identifies a hit view as the lowest view in the hierarchy which should handle the sub-event. In most circumstances, the hit view is the lowest level view in which an initiating sub-event occurs (i.e., the first sub-event in the sequence of sub-events that form an event or potential event). 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 for which it was identified as the hit view.
Active eventrecognizer determination module173 determines which view or views within a view hierarchy should receive a particular sequence of sub-events. In some embodiments, active eventrecognizer determination module173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active eventrecognizer determination module173 determines that all views that include the physical location of a sub-event are actively involved views, and therefore determines that all actively involved views should receive a particular sequence of sub-events. In other embodiments, even if touch sub-events were entirely confined to the area associated with one particular view, views higher in the hierarchy would still remain as actively involved views.
Event dispatcher module174 dispatches the event information to an event recognizer (e.g., event recognizer180). In embodiments including active eventrecognizer determination module173,event dispatcher module174 delivers the event information to an event recognizer determined by active eventrecognizer determination module173. In some embodiments,event dispatcher module174 stores in an event queue the event information, which is retrieved by a respectiveevent receiver module182.
In some embodiments,operating system126 includesevent sorter170. Alternatively, application136-1 includesevent sorter170. In yet other embodiments,event sorter170 is a stand-alone module, or a part of another module stored inmemory102, such as contact/motion module130.
In some embodiments, application136-1 includes a plurality ofevent handlers190 and one or more application views191, each of which includes instructions for handling touch events that occur within a respective view of the application's user interface. Eachapplication view191 of the application136-1 includes one ormore event recognizers180. Typically, arespective application view191 includes a plurality ofevent recognizers180. In other embodiments, one or more ofevent recognizers180 are part of a separate module, such as a user interface kit (not shown) or a higher level object from which application136-1 inherits methods and other properties. In some embodiments, arespective event handler190 includes one or more of:data updater176,object updater177,GUI updater178, and/orevent data179 received fromevent sorter170.Event handler190 optionally utilizes or callsdata updater176,object updater177 orGUI updater178 to update the applicationinternal state192. Alternatively, one or more of the application views191 includes one or morerespective event handlers190. Also, in some embodiments, one or more ofdata updater176,object updater177, andGUI updater178 are included in arespective application view191.
Arespective event recognizer180 receives event information (e.g., event data179) fromevent sorter170, and identifies an event from the event information.Event recognizer180 includesevent receiver182 andevent comparator184. In some embodiments,event recognizer180 also includes at least a subset of:metadata183, and event delivery instructions188 (which optionally include sub-event delivery instructions).
Event receiver182 receives event information fromevent sorter170. The event information includes information about a sub-event, for example, a touch or a touch movement, or a finger input or fingerprint movement. Depending on the sub-event, the event information also includes additional information, such as location of the sub-event. When the sub-event concerns motion of a touch, the event information optionally also includes speed and direction of the sub-event. In some embodiments, events include rotation of the device from one orientation to another (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation (also called device attitude) of the device.
Event comparator184 compares the event information to predefined event or sub-event definitions and, based on the comparison, determines an event or sub-event, or determines or updates the state of an event or sub-event. In some embodiments,event comparator184 includesevent definitions186.Event definitions186 contain definitions of events (e.g., predefined sequences of sub-events), for example, event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in an event187 include, for example, touch begin, touch end, touch movement, touch cancellation, multiple touching, fingerprint begin, fingerprint end, fingerprint movement, fingerprint authenticate, and fingerprint authentication fail. In one example, the definition for event 1 (187-1) is a double tap on a displayed object. The double tap, for example, comprises a first touch (touch begin) on the displayed object for a predetermined phase, a first lift-off (touch end) for a predetermined phase, a second touch (touch begin) on the displayed object for a predetermined phase, and a second lift-off (touch end) for a predetermined phase. In another example, the definition for event 2 (187-2) is a dragging on a displayed object. The dragging, for example, comprises a touch (or contact) on the displayed object for a predetermined phase, a movement of the touch across touch-sensitive display112, and lift-off of the touch (touch end). In some embodiments, the event also includes information for one or more associatedevent handlers190.
In some embodiments, event definition187 includes a definition of an event for a respective user-interface object. In some embodiments,event comparator184 performs a hit test to determine which user-interface object is associated with a sub-event. For example, in an application view in which three user-interface objects are displayed on touch-sensitive display112, when a touch is detected on touch-sensitive display112,event comparator184 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 arespective event handler190, the event comparator uses the result of the hit test to determine whichevent handler190 should be activated. For example,event comparator184 selects an event handler associated with the sub-event and the object triggering the hit test.
In some embodiments, the definition for a respective event187 also includes delayed actions that delay delivery of the event information until after it has been determined whether the sequence of sub-events does or does not correspond to the event recognizer's event type.
When arespective event recognizer180 determines that the series of sub-events do not match any of the events inevent definitions186, therespective event recognizer180 enters an event impossible, event failed, or event ended state, after which it disregards subsequent sub-events of the touch-based gesture. In this situation, other event recognizers, if any, that remain active for the hit view continue to track and process sub-events of an ongoing touch-based gesture.
In some embodiments, arespective event recognizer180 includesmetadata183 with configurable properties, flags, and/or lists that indicate how the event delivery system should perform sub-event delivery to actively involved event recognizers. In some embodiments,metadata183 includes configurable properties, flags, and/or lists that indicate how event recognizers interact, or are enabled to interact, with one another. In some embodiments,metadata183 includes configurable properties, flags, and/or lists that indicate whether sub-events are delivered to varying levels in the view or programmatic hierarchy.
In some embodiments, arespective event recognizer180 activatesevent handler190 associated with an event when one or more particular sub-events of an event are recognized. In some embodiments, arespective event recognizer180 delivers event information associated with the event toevent handler190. Activating anevent handler190 is distinct from sending (and deferred sending) sub-events to a respective hit view. In some embodiments,event recognizer180 throws a flag associated with the recognized event, andevent handler190 associated with the flag catches the flag and performs a predefined process.
In some embodiments,event delivery instructions188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver event information to event handlers associated with the series of sub-events or to actively involved views. Event handlers associated with the series of sub-events or with actively involved views receive the event information and perform a predetermined process.
In some embodiments,data updater176 creates and updates data used in application136-1. For example,data updater176 updates the telephone number used incontacts module137, or stores a video file used invideo player module145. In some embodiments, objectupdater177 creates and updates objects used in application136-1. For example, objectupdater176 creates a new user-interface object or updates the position of a user-interface object.GUI updater178 updates the GUI. For example,GUI updater178 prepares display information and sends it tographics module132 for display on a touch-sensitive display.
In some embodiments, event handler(s)190 includes or has access todata updater176,object updater177, andGUI updater178. In some embodiments,data updater176,object updater177, andGUI updater178 are included in a single module of a respective application136-1 orapplication view191. In other embodiments, they are included in two or more software modules.
It shall be understood that the foregoing discussion regarding event handling of user touches on touch-sensitive displays also applies to other forms of user inputs to operatemultifunction devices100 with input-devices, not all of which are initiated on touch screens. For example, mouse movement and mouse button presses, optionally coordinated with single or multiple keyboard presses or holds; contact movements such as taps, drags, scrolls, etc., on touch-pads; pen stylus inputs; movement of the device; oral instructions; detected eye movements; biometric inputs; and/or any combination thereof are optionally utilized as inputs corresponding to sub-events which define an event to be recognized.
FIG. 2 illustrates aportable multifunction device100 having atouch screen112 in accordance with some embodiments. The touch screen optionally displays one or more graphics within user interface (UI)200. In this embodiment, as well as others described below, a user is enabled to select one or more of the graphics by making a gesture on the graphics, for example, with one or more fingers202 (not drawn to scale in the figure) or one or more styluses203 (not drawn to scale in the figure). In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (from left to right, right to left, upward and/or downward) and/or a rolling of a finger (from right to left, left to right, upward and/or downward) that has made contact withdevice100. In some implementations or circumstances, inadvertent contact with a graphic does not select the graphic. For example, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.
Device100 optionally also includes one or more physical buttons, such as “home” ormenu button204. As described previously,menu button204 is, optionally, used to navigate to anyapplication136 in a set of applications that are, optionally executed ondevice100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed ontouch screen112. In someembodiments button204 includes an integrated fingerprint sensor169-1 for identifying a fingerprint that is interacting withbutton204 and/or detecting movement of the fingerprint onbutton204. Device also, optionally, includes one or more other fingerprint sensors169-2 that are separate frombutton204 and are used instead of or in conjunction with a fingerprint sensor169-1 integrated intobutton204 to identify a user interacting with the device and/or detect motion of the fingerprint. Additionally, one or more of the other fingerprint sensors169-2 are optionally associated with a button (e.g., a pressure sensitive region that is activated by detecting an input with an intensity above an activation intensity threshold or a physical actuator that moves in response force applied by a user). In implementations where the touch-sensitive surface (e.g., Touch Screen112) has a spatial resolution that is high enough to detect fingerprint features formed by individual fingerprint ridges, the touch-sensitive surface (e.g., Touch Screen112) is optionally used as a fingerprint sensor instead of, or in addition to, a separate fingerprint sensor (e.g., Fingerprint Sensors169-1 or169-2). In some embodiments,device100 includes a set of one or more orientation sensors that are used to determine an orientation of a hand ondevice100.
In one embodiment,device100 includestouch screen112,menu button204,push button206 for powering the device on/off and locking the device, volume adjustment button(s)208, Subscriber Identity Module (SIM)card slot210, head setjack212, and docking/chargingexternal port124.Push button206 is, optionally, used to turn the power on/off on the device by depressing the button and holding the button in the depressed state for a predefined time interval; to lock the device by depressing the button and releasing the button before the predefined time interval has elapsed; and/or to unlock the device or initiate an unlock process. In an alternative embodiment,device100 also accepts verbal input for activation or deactivation of some functions throughmicrophone113.Device100 also, optionally, includes one or morecontact intensity sensors165 for detecting intensity of contacts ontouch screen112 and/or one or moretactile output generators167 for generating tactile outputs for a user ofdevice100.
FIG. 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface in accordance with some embodiments.Device300 need not be portable. In some embodiments,device300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or industrial controller).Device300 typically includes one or more processing units (CPU's)310, one or more network orother communications interfaces360,memory370, and one ormore communication buses320 for interconnecting these components.Communication buses320 optionally include circuitry (sometimes called a chipset) that interconnects and controls communications between system components.Device300 includes input/output (I/O)interface330 comprisingdisplay340, which is typically a touch screen display. I/O interface330 also optionally includes a keyboard and/or mouse (or other pointing device)350 andtouchpad355,tactile output generator357 for generating tactile outputs on device300 (e.g., similar to tactile output generator(s)167 described above with reference toFIG. 1A), sensors359 (e.g., optical, acceleration, proximity, touch-sensitive, and/or contact intensity sensors similar to contact intensity sensor(s)165 described above with reference toFIG. 1A, and/or fingerprint sensors similar to fingerprint sensor(s)169 described above with reference toFIG. 1A). Additionally, in implementations where the touch-sensitive surface (e.g., Touchpad355) has a spatial resolution that is high enough to detect fingerprint features formed by individual fingerprint ridges, the touch-sensitive surface (e.g., Touchpad355) is optionally used as a fingerprint sensor instead of, or in addition to, a separate fingerprint sensor (e.g., one of sensors359). In some embodiments,device300 includes a set of one or more orientation sensors that are used to determine an orientation of a finger or hand on or proximate to the device (e.g., an orientation of a finger that is over fingerprint sensor169). Additionally, in some embodiments, the set of one or more orientation sensors are used in addition to or instead of a fingerprint sensor to detect rotation of a contact that is interacting with the device. For example, in one or more of the methods described below, instead of using a fingerprint sensor to detect rotation of a fingerprint/contact, the set of one or more orientation sensors is used to detect rotation of the contact that includes the fingerprint, with or without detecting features of the fingerprint.
Memory370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid state memory devices; and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices.Memory370 optionally includes one or more storage devices remotely located from CPU(s)310. In some embodiments,memory370 stores programs, modules, and data structures analogous to the programs, modules, and data structures stored inmemory102 of portable multifunction device100 (FIG. 1A), or a subset thereof. Furthermore,memory370 optionally stores additional programs, modules, and data structures not present inmemory102 of portablemultifunction device100. For example,memory370 ofdevice300 optionallystores drawing module380,presentation module382,word processing module384,website creation module386,disk authoring module388, and/orspreadsheet module390, whilememory102 of portable multifunction device100 (FIG. 1A) optionally does not store these modules.
Each of the above identified elements inFIG. 3 are, optionally, stored in one or more of the previously mentioned memory devices. Each of the above identified modules corresponds to a set of instructions for performing a function described above. The above identified modules or programs (i.e. sets of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules are, optionally, combined or otherwise re-arranged in various embodiments. In some embodiments,memory370 optionally stores a subset of the modules and data structures identified above. Furthermore,memory370 optionally stores additional modules and data structures not described above.
Attention is now directed towards embodiments of user interfaces (“UI”) that is, optionally, implemented onportable multifunction device100.
FIG. 4A illustrates an exemplary user interface for a menu of applications onportable multifunction device100 in accordance with some embodiments. Similar user interfaces are, optionally, implemented ondevice300. In some embodiments,user interface400 includes the following elements, or a subset or superset thereof:
- Signal strength indicator(s)402 for wireless communication(s), such as cellular and Wi-Fi signals;
- Time404;
- Bluetooth indicator405;
- Battery status indicator406;
- Tray408 with icons for frequently used applications, such as:
- Icon416 fortelephone module138, labeled “Phone,” which optionally includes anindicator414 of the number of missed calls or voicemail messages;
- Icon418 fore-mail client module140, labeled “Mail,” which optionally includes anindicator410 of the number of unread e-mails;
- Icon420 forbrowser module147, labeled “Browser;” and
- Icon422 for video andmusic player module152, also referred to as iPod (trademark of Apple Inc.)module152, labeled “iPod;” and
- Icons for other applications, such as:
- Icon424 forIM module141, labeled “Text;”
- Icon426 forcalendar module148, labeled “Calendar;”
- Icon428 forimage management module144, labeled “Photos;”
- Icon430 forcamera module143, labeled “Camera;”
- Icon432 foronline video module155, labeled “Online Video”
- Icon434 for stocks widget149-2, labeled “Stocks;”
- Icon436 formap module154, labeled “Map;”
- Icon438 for weather widget149-1, labeled “Weather;”
- Icon440 for alarm clock widget149-4, labeled “Clock;”
- Icon442 forworkout support module142, labeled “Workout Support;”
- Icon444 fornotes module153, labeled “Notes;” and
- Icon446 for a settings application or module, which provides access to settings fordevice100 and itsvarious applications136.
It should be noted that the icon labels illustrated inFIG. 4A are merely exemplary. For example,icon422 for video andmusic player module152 are labeled “Music” or “Music Player.” Other labels are, optionally, used for various application icons. In some embodiments, a label for a respective application icon includes a name of an application corresponding to the respective application icon. In some embodiments, a label for a particular application icon is distinct from a name of an application corresponding to the particular application icon.
FIG. 4B illustrates an exemplary user interface on a device (e.g.,device300,FIG. 3) with a touch-sensitive surface451 (e.g., a tablet ortouchpad355,FIG. 3) that is separate from the display450 (e.g., touch screen display112) with an integrated359-1 (or separate359-2) fingerprint sensor (e.g., one or more ofsensors359 that operates in an analogous manner tofingerprint sensor169 inFIG. 1A). Additionally, in implementations where the touch-sensitive surface451 has a spatial resolution that is high enough to detect fingerprint features formed by individual fingerprint ridges, the touch-sensitive surface451 is optionally used as a fingerprint sensor instead of, or in addition to, a distinct fingerprint sensor (e.g., integrated fingerprint sensor359-1 or separate fingerprint sensor359-2).Device300 also, optionally, includes one or more contact intensity sensors (e.g., one or more of sensors359-3) for detecting intensity of contacts on touch-sensitive surface451 and/or one or moretactile output generators357 for generating tactile outputs for a user ofdevice300.
Although some of the examples which follow will be given with reference to inputs on touch screen display112 (where the touch sensitive surface and the display are combined), in some embodiments, the device detects inputs on a touch-sensitive surface that is separate from the display, as shown inFIG. 4B. In some embodiments the touch sensitive surface (e.g.,451 inFIG. 4B) has a primary axis (e.g.,452 inFIG. 4B) that corresponds to a primary axis (e.g.,453 inFIG. 4B) on the display (e.g.,450). In accordance with these embodiments, the device detects contacts (e.g.,460 and462 inFIG. 4B) with the touch-sensitive surface451 at locations that correspond to respective locations on the display (e.g., inFIG. 4B,460 corresponds to468 and462 corresponds to470). In this way, user inputs (e.g.,contacts460 and462, and movements thereof) detected by the device on the touch-sensitive surface (e.g.,451 inFIG. 4B) are used by the device to manipulate the user interface on the display (e.g.,450 inFIG. 4B) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are, optionally, used for other user interfaces described herein.
Additionally, while the following examples are given primarily with reference to finger inputs (e.g., finger contacts, finger tap gestures, finger swipe gestures), it should be understood that, in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., a mouse based input or stylus input). For example, a swipe gesture is, optionally, replaced with a mouse click (e.g., instead of a contact) followed by movement of the cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is, optionally, replaced with a mouse click while the cursor is located over the location of the tap gesture (e.g., instead of detection of the contact followed by ceasing to detect the contact). Similarly, when multiple user inputs are simultaneously detected, it should be understood that multiple computer mice are, optionally, used simultaneously, or a mouse and finger contacts are, optionally, used simultaneously.
As used herein, the term “focus selector” refers to an input element that indicates a current part of a user interface with which a user is interacting. In some implementations that include a cursor or other location marker, the cursor acts as a “focus selector,” so that when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g.,touchpad355 inFIG. 3 or touch-sensitive surface451 inFIG. 4B) while the cursor is over a particular user interface element (e.g., a button, window, slider or other user interface element), the particular user interface element is adjusted in accordance with the detected input. In some implementations that include a touch-screen display (e.g., touch-sensitive display system112 inFIG. 1A ortouch screen112 inFIG. 4A) that enables direct interaction with user interface elements on the touch-screen display, a detected contact on the touch-screen acts as a “focus selector,” so that when an input (e.g., a press input by the contact) is detected on the touch-screen display at a location of a particular user interface element (e.g., a button, window, slider or other user interface element), the particular user interface element is adjusted in accordance with the detected input. In some implementations focus is moved from one region of a user interface to another region of the user interface without corresponding movement of a cursor or movement of a contact on a touch-screen display (e.g., by using a tab key or arrow keys to move focus from one button to another button); in these implementations, the focus selector moves in accordance with movement of focus between different regions of the user interface. Without regard to the specific form taken by the focus selector, the focus selector is generally the user interface element (or contact on a touch-screen display) that is controlled by the user so as to communicate the user's intended interaction with the user interface (e.g., by indicating, to the device, the element of the user interface with which the user is intending to interact). For example, the location of a focus selector (e.g., a cursor, a contact or a selection box) over a respective button while a press input is detected on the touch-sensitive surface (e.g., a touchpad or touch screen) will indicate that the user is intending to activate the respective button (as opposed to other user interface elements shown on a display of the device).
FIG. 4C shows a schematic representation of a two hands with associated fingerprints LP (“left pinky” fingerprint), LR (“left ring” fingerprint), LM (“left middle” fingerprint), LI (“left index” fingerprint), LT (“left thumb” fingerprint), RT (“right thumb” fingerprint), RI (“right index” fingerprint), RM (“right middle” fingerprint), RR (“right ring” fingerprint), RP (“right pinky” fingerprint). These abbreviations will be used with reference to other figures showing examples of interactions with a fingerprint sensor. For some of the methods described herein, one or more fingerprints of a user are registered by collecting information about the fingerprint that would enable the fingerprint to be identified. These registered fingerprints or pre-registered fingerprints are also sometimes referred to as enrolled fingerprints. In many situations described below, fingerprints detected on a fingerprint sensor are compared against previously registered fingerprints (e.g., enrolled fingerprints).
FIG. 4D shows two different types of rotation of a fingerprint on a fingerprint sensor (e.g.,fingerprint sensor169 that is integrated into button204). On the left side ofFIG. 4D, is an example of a fingerprint “revolving” around a fingerprint sensor, where a centroid of the fingerprint moves in a looping motion (e.g., a circular-type motion) around a center of the fingerprint sensor. On the right side ofFIG. 4D, is an example of a fingerprint “twisting” on a fingerprint sensor, where a primary axis of the fingerprint changes orientation relative to the fingerprint sensor. These terms (e.g., “revolving” and “twisting”) will be used to described different types of rotation of a fingerprint on a fingerprint sensor with reference to other figures showing examples of interactions with a fingerprint sensor.
As shown inFIG. 4D, in some embodiments, the fingerprint sensor is smaller than, or approximately the same size as, an average fingerprint. Thus, in some embodiments, the fingerprint sensor detects movement of the fingerprint (e.g., fingerprint gestures) by detecting movement of fingerprint features of the fingerprint instead of or in addition to detecting movement of edges of the fingerprint. In other words, in some implementations, the fingerprint sensor detects movement of the fingerprint not by determining movement of an outline of the fingerprint (e.g., a “contact”) but by detecting movement of ridges (or specific minutia points in the ridges) of the fingerprint over the fingerprint sensor. Without regard to whether the fingerprint sensor is larger or smaller than the fingerprint, detecting movement of a fingerprint (e.g., fingerprint gestures) based on movement of fingerprint features instead of, or in addition to, detecting movement of the fingerprint based on movement of an edge or outline of the fingerprint enables movement of the fingerprint to be tracked in much greater detail and provides the ability to track fingerprint movement even when a fingerprint is covering all or a large portion of the fingerprint sensor.
User Interfaces and Associated ProcessesEnrolling Fingerprints with a DeviceMany electronic devices provide a method to unlock the device. For example, a user is required enter a passcode or personal identification number (PIN), perform a swipe gesture in a predefined pattern, or slide an affordance to unlock the device to access private user information and applications. However, with the increased penetration of e-commerce and mobile purchasing, greater security is required to unlock a device. The device described below improves on existing methods by enrolling a fingerprint of a respective finger with a device after collecting fingerprint information from a plurality of separate and distinct stationary finger gestures. In turn, the device performs restricted operations (e.g., unlocking the device or mobile purchasing) when a detected fingerprint matches an enrolled fingerprint.
The device displays a fingerprint enrollment interface and detects on a fingerprint sensor a plurality of separate and distinct stationary finger gestures performed with a respective finger. The device collects fingerprint information from the plurality of separate and distinct stationary finger gestures performed with the respective finger. After collecting the fingerprint information, the device determines, based on fingerprint information collected for the respective finger, whether the fingerprint information that has been collected is sufficient to enroll a fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, the device enrolls the fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is not sufficient to enroll the fingerprint of the respective finger, the device displays a message in the fingerprint enrollment interface prompting a user to perform one or more additional stationary finger gestures on the fingerprint sensor with the respective finger.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to5A-5EE and6A-6D includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g. separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference to FIGS.5A-5EE and6A-6D will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described in FIGS.5A-5EE on the integrated fingerprint sensor359-1 while displaying the user interfaces shown in FIGS.5A-5EE on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described in FIGS.5A-5EE on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown in FIGS.5A-5EE on thedisplay450; in such embodiments, the contacts shown in FIGS.5A-5EE optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIGS. 5A-5M illustrate a portion of a device setup process in which a first fingerprint is enrolled with portablemultifunction device100.
FIG. 5A illustrates portable multifunction device100 (sometimes herein called device100) displayinguser interface400 ontouch screen112. InFIG. 5A,user interface400 includes a “Set Up Touch ID” interface prompting a user to enroll a fingerprint to serve as the user's touch ID. The enrolled fingerprint (e.g., touch ID) can be used to unlock the device in place of a passcode or personal identification number (PIN) and, optionally, to purchase goods or services. InFIG. 5A, the “Set Up Touch ID” interface is displayed during a device set up process. For example, the device set up process occurs when a user powers on the device for a first time. For example, the device set up process at least includes an, optional, fingerprint enrollment process (e.g., shown inFIGS. 5B-5K andFIGS. 5N-5T) and a passcode set up process (e.g., shown inFIG. 5M). The “Set Up Touch ID” interface includes “Set up now”box502, which, when activated, causesdevice100 to start a fingerprint enrollment process and a “Set up later”box504, which, when activated, causesdevice100 to skip the fingerprint enrollment process and display a passcode set up interface (e.g., shown inFIG. 5M). For example, “Set up now”box502 is activated when a contact (e.g., touch input or tap gesture) is detected at a location inside of or on “Set up now”box502 or a fingerprint is detected onfingerprint sensor169. For example, “Set up later”box504 is activated when a touch input is detected at a location inside of or on “Set up later”box504.FIG. 5A also illustratesdevice100 detecting contact506 (e.g., a tap gesture) at a location ontouch screen112 that corresponds to “Set up now”box502. Alternatively,FIG. 5A illustratesdevice100 detecting fingerprint508 (e.g., corresponding to a user's right index finger) as part of a first finger gesture (e.g., a first touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the first finger gesture.
FIG. 5B illustratesdevice100 displaying a first fingerprint enrollment interface for the fingerprint enrollment process ontouch screen112 in response to detectingcontact506 inFIG. 5A. In some embodiments, the fingerprint enrollment process includes at least a first fingerprint enrollment interface (e.g., shown inFIGS. 5B-5G and5O-5Q) and a second fingerprint enrollment interface (e.g., shown inFIGS. 5H-5J and5R-5S). InFIG. 5B, the first fingerprint enrollment interface includes instructions prompting the user to perform a plurality of separate and distinct stationary finger gestures with a respective finger onfingerprint sensor169 so as to enroll the fingerprint of the respective finger. InFIG. 5B, the first fingerprint enrollment interface also includes aprogress indicator510 in a first state510-a. For example, in first state510-a,progress indicator510 resembles a faux fingerprint with narrow ridges. First state510-aindicates that no fingerprint information has been collected.FIG. 5B also illustrates “Back”affordance509, which, when activated, causesdevice100 to redisplay the “Set Up Touch ID” interface inFIG. 5A.FIG. 5B further illustratesdevice100 detecting fingerprint512 (e.g., corresponding to the user's right index finger) as part of a first finger gesture (e.g., a first touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the first finger gesture.
FIG. 5C illustratesdevice100 changing an appearance ofprogress indicator510 in response to detecting the first finger gesture. For example, the first finger gesture corresponds tofingerprint508 inFIG. 5A or, alternatively,fingerprint512 inFIG. 5B. InFIG. 5C,device100displays progress indicator510 in second state510-b. InFIG. 5C, at least a portion of the ridges ofprogress indicator510 are thickened (or darkened) in second state510-bas compared to first state510-ainFIG. 5B. Second state510-bofprogress indicator510 indicates that some fingerprint information has been collected but one or more additional finger gestures are required to enroll the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger).FIG. 5C also illustratesdevice100 detecting fingerprint514 (e.g., corresponding to the user's right index finger) as part of a second finger gesture (e.g., a second touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the second finger gesture.
FIG. 5D illustratesdevice100 displaying a message ontouch screen112 prompting a user to perform subsequent finger gestures differently from the second finger gesture detected inFIG. 5C. InFIG. 5D,device100displays message516 the first enrollment interface (includingprogress indicator510 in second state510-b) ontouch screen112 in response to detecting the second finger gesture inFIG. 5C. InFIG. 5D,message516 includes instructions directing the user to move the respective finger more between each finger gesture so as to collect fingerprint information corresponding to different regions of the fingerprint of the respective finger. In some embodiments,message516 is dismissed and the fingerprint enrollment process is resumed when either a contact is detected at a location corresponding to the “Okay” affordance inmessage516 or a subsequent finger gesture is detected onfingerprint sensor169.FIG. 5D also illustratesdevice100 detecting fingerprint518 (e.g., corresponding to the user's right index finger) as part of a third finger gesture (e.g., a third touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the third finger gesture.
FIG. 5E illustratesdevice100 changing an appearance ofprogress indicator510 in response to detecting the third finger gesture inFIG. 5D. InFIG. 5E,device100displays progress indicator510 in third state510-c. InFIG. 5E, a greater amount of the ridges ofprogress indicator510 are thickened in third state510-cas compared to second state510-binFIG. 5B. Third state510-cofprogress indicator510 indicates that more fingerprint information has been collected but one or more additional finger gestures are required to enroll the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger).FIG. 5E also illustratesdevice100 detecting fingerprint520 (e.g., corresponding to the user's right index finger) as part of a fourth finger gesture (e.g., a fourth touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the fourth finger gesture.
FIG. 5F illustratesdevice100 displaying a message ontouch screen112 prompting a user to perform subsequent finger gestures differently from the fourth finger gesture detected inFIG. 5E. InFIG. 5F,device100displays message522 over the first enrollment interface (includingprogress indicator510 in third state510-c) ontouch screen112 in response to detecting the fourth finger gesture inFIG. 5E. InFIG. 5F,message522 includes instructions directing the user keep their finger onfingerprint sensor169 for a longer period of time so as to collect fingerprint information. In some embodiments,message522 includes instructions indicating that the user will feel a vibration that signals when the user can lift their finger fromfingerprint sensor169. In some embodiments,message522 is dismissed and the fingerprint enrollment process is resumed when either a contact is detected at a location corresponding to the “Okay” affordance inmessage522 or a subsequent finger gesture is detected onfingerprint sensor169.FIG. 5F also illustratesdevice100 detectingcontact524 at a location ontouch screen112 that corresponds to the -Okay” affordance inmessage522.
FIG. 5G illustratesdevice100 displaying the first fingerprint enrollment interface withprogress indicator510 in third state510-cin response to detectingcontact524 inFIG. 5F.FIG. 5G also illustratesdevice100 detecting fingerprint526 (e.g., corresponding to the user's right index finger) as part of a fifth finger gesture (e.g., a fifth touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the fifth finger gesture.
FIG. 5H illustratesdevice100 displaying a second fingerprint enrollment interface for the fingerprint enrollment process ontouch screen112 and changing an appearance ofprogress indicator510 in response to detecting the fifth finger gesture in FIG.5G. InFIG. 5H, the second fingerprint enrollment interface includes instructions prompting the user to perform one or more additional separate and distinct stationary finger gestures with the respective finger (e.g., the user's right index finger) onfingerprint sensor169 so as gather fingerprint information for regions of the fingerprint of the respective finger (e.g., the edges) that are missing from the previously collected fingerprint information in order to complete enrollment of the first fingerprint (e.g., corresponding to the user's right index finger). InFIG. 5H,device100displays progress indicator510 in fourth state510-d. InFIG. 5H,progress indicator510 is expanded in fourth state510-dto reveal a larger perimeter oval of narrow ridges surrounding an inner region of thickened ridges. InFIG. 5H, the inner region ofprogress indicator510 corresponds toun-expanded progress indicator510 included in the first enrollment interface displayed inFIGS. 5B-5G. In this example, a greater amount of the ridges of the inner region ofprogress indicator510 are thickened in fourth state510-das compared to third state510-cinFIG. 5G. Fourth state510-dofprogress indicator510 indicates that more fingerprint information has been collected but one or more additional finger gestures are required to enroll the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger).FIG. 5H also illustratesdevice100 detecting fingerprint528 (e.g., corresponding to the user's right index finger) as part of a sixth finger gesture (e.g., a sixth touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the sixth finger gesture.
FIG. 5I illustratesdevice100 changing an appearance ofprogress indicator510 in response to detecting the sixth finger gesture inFIG. 5H. InFIG. 5H,device100displays progress indicator510 in fifth state510-e. InFIG. 5I, a portion of the ridges in the outside perimeter ofprogress indicator510 are thickened in fifth state510-eas compared to fourth state510-dinFIG. 5H. Fifth state510-eofprogress indicator510 indicates that more fingerprint information has been collected but one or more additional finger gestures are required to enroll the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger).FIG. 5I also illustratesdevice100 detecting fingerprint530 (e.g., corresponding to the user's right index finger) as part of a seventh finger gesture (e.g., a fourth touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the seventh finger gesture.
FIG. 5J illustratesdevice100 changing an appearance ofprogress indicator510 in response to detecting the seventh finger gesture inFIG. 5I. InFIG. 5J,device100displays progress indicator510 in sixth state510-f. InFIG. 5J, all of the ridges in the outside perimeter ofprogress indicator510 are thickened in sixth state510-f. In this example, sixth state510-fofprogress indicator510 indicates that no additional finger gestures are required to enroll the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger).
FIG. 5K illustratesdevice100 displaying a third fingerprint enrollment interface ontouch screen112 after changing the appearance ofprogress indicator510 inFIG. 5J. InFIG. 5K, the third fingerprint enrollment interface indicates that the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger) has been successfully enrolled withdevice100. InFIG. 5K, the third fingerprint enrollment interface includes “Continue”box534, which, when activated, causesdevice100 to display an interface for the next step in the device set up process.FIG. 5K also illustratesdevice100 detecting contact536 (e.g., a tap gesture) at a location ontouch screen112 that corresponds to “Continue”box534.
FIG. 5L illustratesdevice100 displaying a “Set Up Touch ID for Purchases” interface ontouch screen112 in response to detectingcontact536 inFIG. 5K. The “Set Up Touch ID for Purchases” interface prompts the user to associate the fingerprint enrolled inFIGS. 5B-5K with purchasing credentials (e.g., store login ID and password, credit card information, billing address, etc.). The “Set Up Touch ID for Purchases” interface includes “Set up now”box538, which, when activated, causesdevice100 to start a purchase set up process for associating purchasing credentials with the previously enrolled fingerprint and “Set up later”box540, which, when activated, causesdevice100 to skip the purchase set up process and display a passcode set up interface. For example, “Set up now”box538 is activated when a touch input is detected at a location inside of or on “Set up later”box538, and “Set up later”box540 is activated when a touch input is detected at a location inside of or on “Set up later”box540.FIG. 5L also illustratesdevice100 detecting contact542 (e.g., a tap gesture) at a location ontouch screen112 that corresponds to “Set up later”box540.
FIG. 5M illustratesdevice100 displaying a passcode set up interface ontouch screen112 in response to detectingcontact542 inFIG. 5L. InFIG. 5M, the passcode set up interface includes a plurality of soft keys that enable the user to set up a master passcode or PIN for the device.
FIGS. 5N-5T illustrate enrolling a second fingerprint with portablemultifunction device100 from a settings interface.
FIG. 5N illustratesdevice100 displaying a fingerprint settings interface ontouch screen112. InFIG. 5N, the fingerprint settings interface includes a “Back”affordance544, which, when activated, causesdevice100 to redisplay a previous settings interface different from the fingerprint settings interface and an “Edit”affordance546, which, when activated, causesdevice100 to change an appearance of the fingerprint settings interface and enables the user to delete or edit the names of enrolled fingerprints. InFIG. 5N, the fingerprint settings interface also includestoggle switch548 configured to turn on/off a passcode unlock function which allows the user to unlock the device with an enrolled fingerprint in place of the passcode, andtoggle switch550 configured to turn on/off the ability to purchase goods and services with an enrolled fingerprint. InFIG. 5N, the passcode unlock function is turned on and the ability to purchase goods and services with an enrolled fingerprint is turned off.
InFIG. 5N, the fingerprint settings interface also includes a list of enrolled fingerprints. InFIG. 5N, the list of enrolled fingerprints includes “Fingerprint 1”box552, which when activated, causesdevice100 to change an appearance of “Fingerprint 1”box552 and to enable the user to edit the name of the enrolled fingerprint, and “Add Fingerprint”box554, which when activated, causesdevice100 to start the fingerprint enrollment process. For example, enrolled “Fingerprint 1” corresponds to the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger) enrolled during the enrollment process illustrated inFIGS. 5B-5K.FIG. 5N further illustratesdevice100 detecting contact556 (e.g., a tap gesture) at a location ontouch screen112 that corresponds to “Add Fingerprint”box554.
FIG. 5O illustratesdevice100 displaying a first fingerprint enrollment interface for the fingerprint enrollment process ontouch screen112 in response to detectingcontact556 inFIG. 5N. InFIG. 5O, the first fingerprint enrollment interface includes instructions prompting the user to perform a plurality of separate and distinct stationary finger gestures with a respective finger onfingerprint sensor169 so as to enroll the fingerprint of the respective finger. InFIG. 5O, the first fingerprint enrollment interface also includes aprogress indicator558 in first state558-a. For example, in first state558-a,progress indicator558 resembles a faux fingerprint with narrow ridges. First state558-aindicates that no fingerprint information has been collected.FIG. 5O also illustrates “Back”affordance557, which, when activated, causesdevice100 to redisplay the fingerprint settings interface inFIG. 5N.FIG. 5O further illustratesdevice100 detecting fingerprint560 (e.g., corresponding to the user's left index finger) as part of a first finger gesture (e.g., a first touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the first finger gesture.
FIG. 5P illustratesdevice100 changing an appearance ofprogress indicator558 in response to detecting the first finger gesture inFIG. 5O. InFIG. 5P,device100displays progress indicator558 in second state558-b. InFIG. 5P, at least a portion of the ridges ofprogress indicator558 are thickened (or darkened) in second state558-bas compared to first state558-ainFIG. 5O. Second state558-bofprogress indicator558 indicates that some fingerprint information has been collected but one or more additional finger gestures are required to enroll the second fingerprint (e.g., the fingerprint corresponding to the user's left index finger).FIG. 5P also illustratesdevice100 detecting fingerprint562 (e.g., corresponding to the user's left index finger) as part of a second finger gesture (e.g., a second touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the second finger gesture.
FIG. 5Q illustratesdevice100 displaying a message ontouch screen112 prompting a user to perform subsequent finger gestures differently from the second finger gesture detected inFIG. 5P. InFIG. 5Q,device100displays message564 over the first enrollment interface (includingprogress indicator558 in second state558-b) ontouch screen112 in response to detecting the second finger gesture inFIG. 5P. InFIG. 5Q,message564 includes instructions which direct the user to rest their finger on fingerprint sensor169 (e.g., integrated in home button204) until a vibration is felt without clicking/depressing home button204 so as to collect fingerprint information. In some embodiments,message564 is dismissed and the fingerprint enrollment process is resumed when either a contact is detected at a location corresponding to the “Okay” affordance inmessage564 or a subsequent finger gesture is detected onfingerprint sensor169.FIG. 5Q also illustratesdevice100 detecting fingerprint566 (e.g., corresponding to the user's left index finger) as part of a third finger gesture (e.g., a third touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the third finger gesture.
FIG. 5R illustratesdevice100 displaying a second fingerprint enrollment interface for the fingerprint enrollment process ontouch screen112 and changing an appearance ofprogress indicator558 in response to detecting the third finger gesture inFIG. 5Q. InFIG. 5R, the second fingerprint enrollment interface includes instructions prompting the user to perform one or more additional separate and distinct stationary finger gestures with the respective finger (e.g., the user's left index finger) onfingerprint sensor169 so as gather fingerprint information on regions of the fingerprint of the respective finger (e.g., the edges) that are missing from the previously collected fingerprint information in order to complete enrollment of the second fingerprint (e.g., corresponding to the user's left index finger). InFIG. 5R,device100displays progress indicator558 in third state558-c. For example,progress indicator510 is expanded in third state558-cto reveal a larger perimeter oval of narrow ridges surrounding an inner region of thickened ridges. InFIG. 5R, the inner region ofprogress indicator558 corresponds toun-expanded progress indicator558 included in the first enrollment interface displayed inFIGS. 5O-5Q. In this example, a greater amount of the ridges of the inside region ofprogress indicator558 are thickened in third state558-cas compared to second state510-binFIG. 5P. Third state558-cofprogress indicator558 indicates that more fingerprint information has been collected but one or more additional finger gestures are required to enroll the second fingerprint (e.g., the fingerprint corresponding to the user's left index finger).FIG. 5R also illustratesdevice100 detecting fingerprint568 (e.g., corresponding to the user's left index finger) as part of a fourth finger gesture (e.g., a fourth touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the fourth finger gesture.
FIG. 5S illustratesdevice100 changing an appearance ofprogress indicator558 in response to detecting the fourth finger gesture inFIG. 5R. InFIG. 5S,device100displays progress indicator558 in fourth state510-d. InFIG. 5S, a portion of the ridges in the outside perimeter ofprogress indicator558 are thickened in fourth state510-das compared to third state510-cinFIG. 5R. Fourth state510-dofprogress indicator558 indicates that more fingerprint information has been collected but one or more additional finger gestures are required to enroll the second fingerprint (e.g., the fingerprint corresponding to the user's left index finger). Stated another way, fourth state510-dofprogress indicator558 is not full, and does not indicate completion, and thereby indicates that one or more additional finger gestures are required to enroll the second fingerprint.FIG. 5S also illustratesdevice100 detecting fingerprint569 (e.g., corresponding to the user's left index finger) as part of a fifth finger gesture (e.g., a fifth touch and rest gesture) onfingerprint sensor169 and collecting fingerprint information from the fifth finger gesture.
FIG. 5T illustratesdevice100 displaying a third fingerprint enrollment interface ontouch screen112 in response to detecting the fifth finger gesture inFIG. 5S. InFIG. 5T, the third fingerprint enrollment interface indicates that the second fingerprint (e.g., the fingerprint corresponding to the user's left index finger) has been successfully enrolled withdevice100. InFIG. 5T, the third fingerprint enrollment interface includes “Continue”box570, which, when activated, causesdevice100 to redisplay the fingerprint settings interface.FIG. 5T also illustratesdevice100 detecting contact572 (e.g., a tap gesture) at a location ontouch screen112 that corresponds to “Continue”box570.
FIGS. 5U-5W illustrate highlighting an enrolled fingerprint in a fingerprint settings interface when the enrolled fingerprint is detected.
FIG. 5U illustratesdevice100 displaying the fingerprint settings interface ontouch screen112 in response to detectingcontact570 inFIG. 5T. InFIG. 5U, the list of enrolled fingerprints includes “Fingerprint 1”box552, which when activated, causesdevice100 to change an appearance of “Fingerprint 1”box552 and to enable the user to edit the name of the enrolled fingerprint, “Fingerprint 2”box574, which when activated, causesdevice100 to change an appearance of “Fingerprint 2”box574 and to enable the user to edit the name of the enrolled fingerprint, and “Add Fingerprint”box554, which when activated, causesdevice100 to start the fingerprint enrollment process for enrolling an additional fingerprint. For example, enrolled “Fingerprint 1” corresponds to the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger) enrolled during the enrollment process illustrated inFIGS. 5B-5K, and enrolled “Fingerprint 2” corresponds to the second fingerprint (e.g., the fingerprint corresponding to the user's left index finger) enrolled during the enrollment process illustrated inFIGS. 5N-5T.
FIG. 5U also illustratesdevice100 detecting fingerprint576 (e.g., corresponding to the user's left index finger) onfingerprint sensor169. In response to detectingfingerprint576,device100 highlights, in the list of enrolled fingerprints, the enrolled fingerprint corresponding to the detected fingerprint (if any). InFIG. 5U, for example,device100 increases the thickness of the border of “Fingerprint 2”box574 to signify to the user that detectedfingerprint576 corresponds to enrolled “Fingerprint 2.”
FIG. 5V illustratesdevice100 detecting fingerprint578 (e.g., corresponding to the user's right index finger) onfingerprint sensor169. In response to detectingfingerprint578,device100 highlights, in the list of enrolled fingerprints, the enrolled fingerprint corresponding to the detected fingerprint (if any). InFIG. 5V, for example,device100 increases the thickness of the border of “Fingerprint 1”box552 to signify to the user that detectedfingerprint578 corresponds to enrolled “Fingerprint 1.”
FIG. 5W illustratesdevice100 detecting fingerprint580 (e.g., corresponding to the user's left thumb). In response to detectingfingerprint580,device100 does not highlight any enrolled fingerprint in the list of enrolled fingerprints if it determines that the detectedfingerprint580 does not correspond to any of the enrolled fingerprints. InFIG. 5W, for example,device100 maintains display of the fingerprint settings interface to signify to the user that detectedfingerprint580 does correspond to any of the enrolled fingerprints.
FIGS.5X-5AA illustrate performing a restricted operation when an enrolled fingerprint is detected.
FIG. 5X illustratesdevice100 displaying a lock screen ontouch screen112. InFIG. 5X, for example,device100 is in a locked or restricted access mode.FIG. 5X also illustratesdevice100 detecting fingerprint582 (e.g., corresponding to the user's right index finger) onfingerprint sensor169.
FIG. 5Y illustratesdevice100 displaying a home screen ontouch screen112 in response to detectingfingerprint582 inFIG. 5X and in accordance with a determination thatfingerprint582 corresponds to an enrolled fingerprint. For example,fingerprint582 corresponds to the user's right index finger which was enrolled as the first fingerprint inFIGS. 5B-5K. InFIG. 5Y, for example,device100 is in an unlocked or unrestricted access mode.
FIG. 5Z illustratesdevice100 displaying a lock screen ontouch screen112. InFIG. 5Z, for example,device100 is in a locked or restricted access mode.FIG. 5Z also illustratesdevice100 detecting fingerprint584 (e.g., corresponding to the user's right thumb) onfingerprint sensor169.
FIG.5AA illustratesdevice100 maintaining display of the lock screen ontouch screen112 in response to detectingfingerprint584 inFIG. 5Z and in accordance with a determination thatfingerprint584 does not correspond to an enrolled fingerprint. In FIG.5AA, for example,device100 is in the locked or restricted access mode.
FIGS.5BB-5EE illustrate changing an appearance of a progress indicator in response to a series of separate and distinct stationary finger gestures.
FIG.5BB illustrates the appearance of a progress indicator following a plurality of separate and distinct stationary finger gestures (e.g., touch and rest gestures). In FIG.5BB, the progress indicator resembles a faux fingerprint with a plurality of ridges. In FIG.5BB, the ridges of the progress indicator are thickened (or darkened) as fingerprint information is collected from the finger gestures. In some embodiments, the ridges of the progress indicator are thickened in accordance with a predefined pattern. In FIG.5BB, for example, the appearance of the progress indicator is the same afterfinger gesture 5 as it was afterfinger gesture 4 because fingerprint information was not collected duringfinger gesture 5. In this example, fingerprint information was not collected duringfinger gesture 5 due to the user not resting their finger on the fingerprint sensor for long enough (e.g.,message522 inFIG. 5F), the user clicking the home button (e.g.,message564 inFIG. 5Q), or the user failing to move their finger between finger gestures (e.g.,message516 inFIG. 5D). In FIG.5BB, the progress indicator expands afterfinger gesture 7 to indicate that additional fingerprint information needs to be collected for the edges of the fingerprint to enroll the fingerprint.
FIG.5CC illustrates the appearance of a progress indicator following a plurality of separate and distinct stationary finger gestures (e.g., touch and rest gestures). In FIG.5CC, the progress indicator includes a plurality of concentric circles (e.g., resembling a bull's-eye). In FIG.5CC, circles (or rings) of the progress indicator are filled in starting from the inner most circle as fingerprint information is collected from the finger gestures. In FIG.5CC, for example, the appearance of the progress indicator is the same afterfinger gesture 5 as it was afterfinger gesture 4 because fingerprint information was not collected duringfinger gesture 5. In this example, fingerprint information was not collected duringfinger gesture 5 due to the user not resting their finger on the fingerprint sensor for long enough (e.g.,message522 inFIG. 5F), the user clicking the home button (e.g.,message564 inFIG. 5Q), or the user failing to move their finger between finger gestures (e.g.,message516 inFIG. 5D). In FIG.5CC, the progress indicator expands afterfinger gesture 7 to indicate that additional fingerprint information needs to be collected to enroll the fingerprint.
FIG.5DD illustrates the appearance of a progress indicator following a plurality of separate and distinct stationary finger gestures (e.g., touch and rest gestures). In FIG.5DD, the progress indicator includes a plurality of progress-indicator portions (e.g., hexagonal geometric shapes in a honeycomb layout). In FIG.5DD, progress-indicator portions (e.g., hexagons) of the progress indicator are filled in relative to the location of the fingerprint information collected from the previous finger gesture. In FIG.5DD, for example, afterfinger gesture 1 is performed, progress-indicator portions in the lower left region of the progress indicator are filled in to indicate that fingerprint information for the lower left region of the fingerprint was collected fromfinger gesture 1. In FIG.5DD, the progress indicator expands afterfinger gesture 6 to indicate that additional fingerprint information needs to be collected for the edges of the fingerprint to enroll the fingerprint. In FIG.5DD, for example, the appearance of the progress indicator is the same afterfinger gesture 10 as it was afterfinger gesture 9 because fingerprint information was not collected duringfinger gesture 10. In this example, fingerprint information was not collected duringfinger gesture 10 due to the user not resting their finger on the fingerprint sensor for long enough (e.g.,message522 inFIG. 5F), the user clicking the home button (e.g.,message564 inFIG. 5Q), or the user failing to move their finger between finger gestures (e.g.,message516 inFIG. 5D).
FIG.5EE illustrates the appearance of a progress indicator following a plurality of separate and distinct stationary finger gestures (e.g., touch and rest gestures). In FIG.5EE, the progress indicator (e.g., a partially displayed sphere) includes a plurality of progress-indicator portions (e.g., boxed regions on the partially displayed sphere). In FIG.5EE, progress-indicator portions (e.g., boxed regions) of the progress indicator are filled in relative to the location of the fingerprint information collected from the previous finger gesture. In FIG.5EE, for example, afterfinger gesture 1 is performed, progress-indicator portions near the origin of the equator of the progress indicator are filled in to indicate that fingerprint information for the middle of the fingerprint was collected fromfinger gesture 1. In FIG.5EE, for example, the appearance of the progress indicator is the same afterfinger gesture 9 as it was afterfinger gesture 8 because fingerprint information was not collected duringfinger gesture 9. In this example, fingerprint information was not collected duringfinger gesture 9 due to the user not resting their finger on the fingerprint sensor for long enough (e.g.,message522 inFIG. 5F), the user clicking the home button (e.g.,message564 inFIG. 5Q), or the user failing to move their finger between finger gestures (e.g.,message516 inFIG. 5D).
FIGS. 6A-6D are flow diagrams illustrating amethod600 of enrolling fingerprints with a device in accordance with some embodiments.Method600 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a fingerprint sensor. In some embodiments, the display is a touch screen display and the fingerprint sensor is on the display. In some embodiments, the display is separate from the fingerprint sensor. Some operations inmethod600 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below,method600 provides an intuitive way to enroll fingerprints with a device. The method reduces the cognitive burden on a user when enrolling fingerprints with a device, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to enroll fingerprints with a device faster and more efficiently conserves power and increases the time between battery charges.
The devices displays (602) a fingerprint enrollment interface. In some embodiments, the fingerprint enrollment interface is displayed as part of a device set up process. For example,FIGS. 5A-5M illustrate a device set up process including a fingerprint enrollment process inFIGS. 5B-5K, a purchase set up process inFIG. 5L, and a passcode set up process inFIG. 5M. InFIGS. 5B-5K, the fingerprint enrollment process includes a first enrollment interface inFIGS. 5B-5G with an un-expanded progress indicator, a second enrollment inFIGS. 5H-5J with an expanded progress indicator, and a third enrollment interface inFIG. 5K with text indicating that the fingerprint enrollment process was successful. In some embodiments, during the device setup process, the fingerprint enrollment interface is displayed before displaying a passcode set up interface. For example, the fingerprint enrollment process shown inFIGS. 5B-5K occurs prior to the display of the passcode set up interface inFIG. 5M in response to detectingcontact506 at a location corresponding to “Set up now”box502 inFIG. 5A.
In some embodiments, if the fingerprint enrollment interface is dismissed without enrolling a fingerprint, a passcode set up interface is displayed. For example, in response to detecting a contact at a location corresponding to “Set up later”box504 inFIG. 5A, the device displays the passcode set up interface inFIG. 5M.
In some embodiments, the fingerprint enrollment interface is displayed as part of a device settings user interface. For example,FIGS. 5O-5T illustrate a fingerprint enrollment process initiated in response to detectingcontact556 at a location corresponding to “Add Fingerprint”box554 in the fingerprint settings interface inFIG. 5N. InFIGS. 5O-5T, the fingerprint enrollment process includes a first enrollment interface inFIGS. 5O-5Q with an un-expanded progress indicator, a second enrollment inFIGS. 5R-5S with an expanded progress indicator, and a third enrollment interface inFIG. 5T with text indicating that the fingerprint enrollment process was successful.
The device detects (604) on the fingerprint sensor a plurality of separate and distinct stationary finger gestures performed with a respective finger. For example, the plurality of separate and distinct stationary finger gestures are gestures in which the respective finger does not move laterally across the fingerprint sensor, such as tap and hold gestures on the fingerprint sensor. Thus, in some embodiments, the plurality of finger gestures are not swipe gestures over the fingerprint sensor. For example,device100 detects seven separate and distinct finger gestures (e.g., touch and rest gestures) onfingerprint sensor169 during the fingerprint enrollment process illustrated inFIGS. 5B-5K. As another example,device100 detects five separate and distinct finger gestures (e.g., touch and rest gestures) onfingerprint sensor169 during the fingerprint enrollment process illustrated inFIGS. 5N-5T.
The device collects (606) fingerprint information from the plurality of separate and distinct stationary finger gestures performed with the respective finger. For example,device100 collects (or attempts to collect) fingerprint information from the fingerprint detected onfingerprint sensor169 as part of each of the seven separate and distinct finger gestures (e.g., touch and rest gestures) during the fingerprint enrollment process illustrated inFIGS. 5B-5K. As another example,device100 collects (or attempts to collect) fingerprint information from the fingerprint detected onfingerprint sensor169 as part of each of the seven separate and distinct finger gestures (e.g., touch and rest gestures) during the fingerprint enrollment process illustrated inFIGS. 5N-5T.
In some embodiments, fingerprint information from the plurality of separate and distinct stationary finger gestures is collected (608) for an area of the fingerprint of the respective finger that is at least twice as large as the area that can be captured by the fingerprint sensor during a single stationary finger gesture. For example, the whole fingerprint cannot be captured based on a single stationary finger gesture because the fingerprint sensor is substantially smaller than the relevant area of the fingerprint. In some embodiments, the fingerprint information collected from the plurality of separate and distinct stationary finger gestures corresponds to more than a 100 mm2area of the fingerprint of the respective finger while the fingerprint sensor has smaller sensor area such as 50 mm2or 25 mm2or less.
In some embodiments, while the respective finger is on the fingerprint sensor during a respective stationary gesture, the device: collects (610) fingerprint information; and after the fingerprint information has been collected, provides haptic feedback at the device to indicate that the fingerprint information has been collected. For example, the device vibrates slightly to indicate to the user that fingerprint information for the current stationary finger gesture has been collected and that a next finger gesture can be performed. In some embodiments, it takes the device a respective amount of time to collect fingerprint information and the haptic feedback is provided after the finger has been on the fingerprint sensor for at least the respective amount of time. For example,message522 inFIG. 5F indicates thatdevice100 was unable to collect fingerprint information from the fourth finger gesture detected inFIG. 5E because the user did not rest their finger onfingerprint sensor169 for a time period long enough to collect fingerprint information. In some embodiments,message522 includes instructions directing the user to rest their finger onfingerprint sensor169 integrated inhome button204 until the user feels a slight vibration indicating that fingerprint was collected and that the user can lift their finger fromfingerprint sensor169. In some implementations, the respective amount of time to collect fingerprint information from each fingerprint gesture is less than one second. In some implementations, the respective amount of time to collect fingerprint information from each fingerprint gesture is less than one second and greater than 0.1 seconds. In some implementations, the respective amount of time to collect fingerprint information from each fingerprint gesture is at least 0.25 seconds and no greater the 0.75 seconds.
In some embodiments, the fingerprint enrollment interface includes (612) a progress indicator, and in response to detecting on the fingerprint sensor a respective stationary finger gesture performed with the respective finger, the device changes an appearance of the progress indicator to indicate the collection of additional fingerprint information from the respective stationary finger gesture. InFIGS. 5B-5K, the fingerprint enrollment process includes a first enrollment interface inFIGS. 5B-5G with an un-expanded progress indicator and a second enrollment inFIGS. 5H-5J with an expanded progress indicator. In this example, an appearance of the progress indicator is changed (e.g., ridges are thickened) as fingerprint information is collected from the plurality of separate and distinct finger gestures (e.g., touch and rest finger gestures).
In some embodiments, the fingerprint enrollment interface also includes a message prompting a user to rest their finger on the fingerprint sensor in a representative manner, and the progress indicator is a faux/stock fingerprint. For example, the first enrollment interface inFIGS. 5B-5G includes instructions directing the user to perform multiple finger gestures (e.g., touch and rest gestures) onfingerprint sensor169 integrated inhome button204. InFIGS. 5B-5J, for example,progress indicator510 resembles a faux fingerprint.
In some embodiments, the changes in the appearance of the progress indicator illustrate the amount of collected fingerprint information relative to an amount of fingerprint information necessary to enroll the fingerprint. FIGS.5BB-5EE illustrate changes in the appearance of different progress indicators following a plurality of separate and distinct finger gestures (e.g., touch and rest gestures). Each of the progress indicators in FIGS.5BB-5EE illustrate the amount of fingerprint information collected compared to the amount of fingerprint information necessary to enroll the fingerprint. In FIG.5BB, for example, thick ridges indicate an amount of fingerprint information that has been collected and narrow ridges indicate an amount of fingerprint information that has not been collected. In FIG.5CC, for example, filled (or shaded) circles/rings indicate fingerprint information that has been collected and the total number of circles/rings indicate the total amount of fingerprint information that is necessary to enroll the fingerprint. In FIG.5DD, for example, filled (or shaded) hexagons indicate fingerprint information that has been collected and the total number of hexagons indicate the total amount of fingerprint information that is necessary to enroll the fingerprint. In FIG.5EE, for example, filled (or shaded) boxed regions of the partially displayed sphere indicate fingerprint information that has been collected and the total number of boxed regions of the partially displayed sphere indicate the total amount of fingerprint information that is necessary to enroll the fingerprint.
In some embodiments, as additional fingerprint information is collected, portions of the progress indicator are filled in, in a predefined sequence, without regard to which fingerprint portion was detected. InFIGS. 5B-5J, for example, the ridges ofprogress indicator510 are thickened in accordance with a predefined pattern without regard to which fingerprint portion was detected. In some embodiments, the portions of the progress indicator are filled in based on the portions of the fingerprint for which fingerprint information has been collected. In FIG.5DD, for example, the progress indicator includes a plurality of progress-indicator portions (e.g., hexagonal geometric shapes in a honeycomb layout). In FIG.5DD, progress-indicator portions (e.g., hexagons) of the progress indicator are filled in relative to the location of the fingerprint information collected from the previous finger gesture. In FIG.5EE, the progress indicator (e.g., a partially displayed sphere) includes a plurality of progress-indicator portions (e.g., boxed regions on the partially displayed sphere). In FIG.5EE, progress-indicator portions (e.g., boxed regions) of the progress indicator are filled in relative to the location of the fingerprint information collected from the previous finger gesture.
In some embodiments, the progress indicator includes (614) a portion of a surface of a three-dimensional object (e.g., a sphere or other ellipsoid). In FIG.5EE, the progress indicator resembles a sphere where a portion of the sphere's surface is displayed.
In some embodiments, the progress indicator is (616) in the shape of a fingerprint (e.g., a stock or faux fingerprint) and includes lines that are representative of fingerprint ridges and changing the appearance of the progress indicator includes coloring in a portion of the plurality of ridges. In FIG.5BB, for example, the progress indicator resembles a faux fingerprint with a plurality of ridges. In this example, ridges of the progress indicator are thickened or colored as fingerprint information is collected from the plurality of finger gestures.
In some embodiments, the progress indicator includes (618) a plurality of concentric circles and changing the appearance of the progress indicator includes filling in one of a plurality of concentric circles with a predefined fill (e.g., a predefined color and/or pattern). In FIG.5CC, the progress indicator includes a plurality of concentric circles (e.g., resembling a bull's-eye). In some embodiments, the concentric circles are filled with the predefined fill starting from the innermost circle to the outermost circle. In FIG.5CC, circles (or rings) of the progress indicator are filled in starting from the inner most circle as fingerprint information is collected from the finger gestures. In some embodiments, the concentric circles are filled with the predefined fill starting from the outermost circle to the innermost circle.
In some embodiments, the progress indicator includes (620) a plurality of progress-indicator portions that correspond to fingerprint portions of the respective fingerprint, and when fingerprint information from a respective fingerprint portion is collected, the device changes an appearance of the corresponding progress-indicator portion to indicate that fingerprint information from the respective fingerprint portion has been collected. In some embodiments, the progress-indicator portions are representations of fingerprint ridges. For example, after each finger gesture, a region of the user's fingerprint corresponding to the fingerprint information collected from the previous finger gesture is presented in the progress indicator. In this example, the progress indicator resembles a representative image of the user's fingerprint that is built-up from the plurality finger gestures (e.g., a patchwork of images or scans of the user's fingerprint). In this example, once a complete representative image of the user's fingerprint is presented, the user's fingerprint is enrolled with the device. In some embodiments, the representative image of the user's fingerprint is deleted from the device upon enrollment of the fingerprint. In some embodiments, the progress-indicator portions are geometric shapes (e.g., hexagons in a honeycomb layout). In FIG.5DD, the progress indicator resembles a honeycomb layout with a plurality of progress-indicator portions where each progress-indicator portion is a hexagonal geometric shape. In FIG.5DD, the hexagons of the progress indicator are filled in relative to the location of the fingerprint information collected from the previous finger gesture. In FIG.5EE, the progress indicator resembles a partially displayed sphere with a plurality of progress-indicator portions where each progress-indicator portion is a boxed regions on the partially displayed sphere. In FIG.5EE, the boxed regions of the progress indicator are filled in relative to the location of the fingerprint information collected from the previous finger gesture.
After collecting the fingerprint information, the device determines (622), based on fingerprint information collected for the respective finger, whether the fingerprint information that has been collected is sufficient to enroll a fingerprint of the respective finger with the device. In some embodiments, a maximum number of images captured from each finger gesture are able to be combined to produce the necessary fingerprint information. For example, in some implementations, a maximum of 15 images from each of 15 finger gestures may be combined to produce the necessary fingerprint information.
In some embodiments, the collected fingerprint information is sufficient to enroll the fingerprint of the respective finger when the collected fingerprint information satisfies predefined criteria. In some embodiments, the predefined criteria include a threshold amount of fingerprint information (e.g., a threshold amount of surface area). In some embodiments, the threshold amount of fingerprint information is a predefined minimum amount of non-overlapping fingerprint area. For example, 15 images collected from each of 15 finger gestures are combined to produce at least 200 mm2of non-overlapping area of a fingerprint, where 200 mm2is the predefined minimum amount of area necessary to enroll a fingerprint. In some embodiments, the threshold amount of fingerprint information is a multiple of the surface area of the fingerprint sensor. For example, when the fingerprint sensor is 25 mm2, a sufficient amount of fingerprint information is an amount of non-overlapping fingerprint area that is 8 times the surface area of the fingerprint sensor (e.g., 200 mm2). In some embodiments, the predefined criteria include a predetermined quality of images collected from the plurality of finger gestures. For example, if the user's fingerprint from a respective finger gesture is too dirty, too faint, or otherwise fails to meet some other predetermined standard, the quality of the image collected from that finger gesture will not satisfy the quality criterion. In some embodiments, the predefined criteria require a predefined degree of contiguousness between images collected from the plurality of finger gestures. In some embodiments, the predefined criteria require that the fingerprint information collected be from a same finger.
In accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, the device enrolls (624) the fingerprint of the respective finger with the device. InFIG. 5K, for example,device100 determines that the first fingerprint (e.g., the fingerprint corresponding to the user's right index finger) has been successfully enrolled withdevice100 after detecting the seventh finger gesture inFIG. 5I. InFIG. 5T, for example,device100 determines that the second fingerprint (e.g., the fingerprint corresponding to the user's left index finger) has been successfully enrolled withdevice100 after detecting the fifth finger gesture inFIG. 5S.
In accordance with a determination that the fingerprint information that has been collected for the respective finger is not sufficient to enroll the fingerprint of the respective finger, the device displays (626) a message in the fingerprint enrollment interface prompting a user to perform one or more additional stationary finger gestures on the fingerprint sensor with the respective finger. InFIGS. 5C-5I, for example,device100 determines that the fingerprint information collected for the respective finger is not sufficient to enroll the fingerprint of the respective finger. InFIGS. 5C-5G, for example,device100 displays instructions in a first fingerprint enrollment interface directing the user to perform one or more additional finger gestures onfingerprint sensor169, which is integrated inhome button204, and, inFIGS. 5H-5I, for example,device100 displays instructions in a second fingerprint enrollment interface directing the user to adjust their grip when performing one or more additional finger gestures onfingerprint sensor169 integrated inhome button204 so as to capture the edges of the fingerprint.
In some embodiments, the message prompting the user to perform one or more additional finger gestures includes (628) displayed instructions to perform subsequent finger gestures differently from the respective finger gesture. In some embodiments,device100 displays one of a plurality of predefined messages or warning notifications so as to encourage the user to perform subsequent finger gestures in a manner in which fingerprint information can be properly collected.
In some embodiments, the displayed message (628) includes displayed instructions to move the finger more between each finger gesture on the fingerprint sensor to collect information from the fingerprint with fewer finger gestures (e.g., “Move finger. Move your finger slightly between scans.”). For example,message516 inFIG. 5D indicates thatdevice100 was unable to collect fingerprint information from the second finger gesture detected inFIG. 5C because the user did not move their finger slightly as compared to the location of the first finger gesture. In some embodiments, while displaying the instructions to move the user's finger more between each finger gesture on the fingerprint sensor,device100 provides negative haptic feedback (e.g., two consecutive vibrations) to get the user's attention and inform the user thatdevice100 was unable to collect fingerprint information from the previous finger gesture.
In some embodiments, the message includes displayed instructions to leave the finger on the fingerprint sensor for a longer period of time (e.g., “Please keep your finger on sensor.”). For example,message522 inFIG. 5F indicates thatdevice100 was unable to collect fingerprint information from the fourth finger gesture detected inFIG. 5E because the user did not rest their finger onfingerprint sensor169 for a time period long enough to collect fingerprint information. In some embodiments, while displaying the message that includes displayed instructions to leave the user's finger onfingerprint sensor169 for a longer period of time,device100 provides negative haptic feedback (e.g., two consecutive vibrations) to get the user's attention and inform the user thatdevice100 was unable to collect fingerprint information from the previous finger gesture.
In some embodiments, the message includes displayed instructions to apply less pressure on the fingerprint sensor (e.g., “Oops. You clicked. Rest your finger on the home button until you feel a vibration without clicking it.”). For example,message564 inFIG. 5Q indicates thatdevice100 was unable to collect fingerprint information from the second finger gesture detected inFIG. 5P because the user clickedhome button204 instead of resting their finger onfingerprint sensor169, integrated inhome button204. In some embodiments, while displaying the instructions to apply less pressure onfingerprint sensor169,device100 provides negative haptic feedback (e.g., two consecutive vibrations) to get the user's attention and to inform the user that the user needs to rest their finger onfingerprint sensor169 without clicking ordepressing home button204.
In some embodiments, in which the fingerprint enrollment process is alignment dependent, the message includes displayed instructions to properly align the finger onfingerprint sensor169 with a representation of proper finger alignment. In some such embodiments, while displaying the instructions to properly align the finger onfingerprint sensor169,device100 provides negative haptic feedback (e.g., two consecutive vibrations). However, in some other embodiments, the enrollment process is alignment independent.
In some embodiments, the message prompting the user to perform one or more additional finger gestures includes (630) an indication of one or more portions or locations of the respective fingerprint for which fingerprint information is inadequate or has not been collected (e.g., the message indicates that edges of the fingerprint are missing from the collected fingerprint information). In some embodiments, the message includes displayed instructions to change the part of the fingerprint that is in contact with the fingerprint sensor so that the device is able to capture a particular part of a fingerprint (e.g., instructions to place an edge of the finger on the fingerprint sensor), so that the device is able to capture a larger variety of fingerprint information (e.g., instructions to move the finger around more in between finger gestures). InFIGS. 5H-5I and5R-5S, for example,device100 displays instructions in a second fingerprint enrollment interface directing the user to adjust their grip when performing one or more additional finger gestures onfingerprint sensor169 integrated inhome button204 so as to capture the edges of the fingerprint. In some embodiments, the message includes displayed instructions to change the part of the fingerprint that is in contact with the fingerprint sensor so that the device is better able to combine the information from the plurality of stationary finger gestures (e.g., instructions to move the finger around less in between finger gestures).
In some embodiments, after changing the appearance of a plurality of progress-indicator portions (e.g., by coloring in the plurality of progress-indicator portions with a respective color) and in accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, the device changes (632) the appearance of one or more unchanged progress-indicator portions to match the appearance of the plurality of progress-indicator portions (e.g., by coloring in the entirety of the fingerprint shape in the progress indicator with the respective color). InFIG. 5J, for example,device100 darkens or thickens all of the ridges of progress indicator510 (in comparison toFIG. 5I) in accordance with the determination that the fingerprint information collected after detecting the seventh finger gesture inFIG. 5I is sufficient to enroll the fingerprint. In FIG.5CC, for example,device100 flood fills the progress indicator after detectingfinger gesture 12 in accordance with the determination that the fingerprint information collected after detectingfinger gesture 12 is sufficient to enroll the fingerprint.
In some embodiments, after enrolling fingerprint of the respective finger with the device, the device receives (634) a request to perform a restricted operation (e.g., unlocking the device, purchasing content or applications for the device, or displaying private information on the device), and the device detects a fingerprint on the fingerprint sensor. InFIG. 5X, for example, after enrolling the first fingerprint (e.g., corresponding to the user's right index finger) inFIGS. 5B-5K and the second fingerprint (e.g., corresponding to the user's left index finger) inFIGS. 5N-5T,device100 receives a request to perform a restricted operation (e.g., unlock device100) while the lock screen is displayed ontouch screen112. In this example, the request to perform the restricted operation includes a fingerprint582 (e.g., corresponding to the user's right index finger) onfingerprint sensor169. InFIG. 5Z, for example, after enrolling the first fingerprint (e.g., corresponding to the user's right index finger) inFIGS. 5B-5K and the second fingerprint (e.g., corresponding to the user's left index finger) inFIGS. 5N-5T,device100 receives a request to perform a restricted operation (e.g., unlock device100) while the lock screen is displayed ontouch screen112. In this example, the request includes fingerprint584 (e.g., corresponding to the user's right thumb) onfingerprint sensor169.
In some embodiments, in response to receiving (636) the request to perform the restricted operation and in accordance with a determination that the fingerprint is enrolled with the device, the device performs (638) the restricted operation. InFIG. 5Y, for example, in response to receiving the request to unlockdevice100 inFIG. 5X and in accordance with a determination thatfingerprint582 is an enrolled fingerprint,device100 unlocks (e.g., the restricted operation) and displays the home screen with a plurality of application icons ontouch screen112.
In some embodiments, in response to receiving (636) the request to perform the restricted operation and in accordance with a determination that the fingerprint is not enrolled with the device, the device forgoes (640) performance of the restricted operation. In FIG.5AA, for example, in response to receiving the request to unlockdevice100 inFIG. 5Z and in accordance with a determination thatfingerprint584 is not an enrolled fingerprint,device100 maintains display of the lock screen ontouch screen112 and forgoes unlocking (e.g., the restricted operation).
In some embodiments, after enrolling the fingerprint of the respective finger with the device, the device: displays (642) a fingerprint settings interface with a plurality of entries (e.g., a plurality of entries in a list) that correspond to respective enrolled fingerprints, where the plurality of entries includes a respective entry that corresponds to the fingerprint of the respective finger and one or more other entries that correspond to other enrolled fingerprints of other fingers besides the respective finger; detecting a second finger gesture on the fingerprint sensor that corresponds to the fingerprint of the respective finger; and in response to detecting the second finger gesture, highlighting the respective entry that corresponds to the fingerprint of the respective finger (e.g., displaying a frame around the entry, increasing the line thickness of the entry, changing a text or fill color of the entry, etc.). InFIGS. 5U-5W, for example,device100 displays a fingerprint settings interface ontouch screen112 with a list of enrolled fingerprints. In this example, the list of enrolled fingerprints include “Fingerprint 1”box552 associated with the first fingerprint enrolled inFIGS. 5N-5T (e.g., corresponding to the user's right index finger) and “Fingerprint 2”box574 associated with the second fingerprint enrolled inFIGS. 5B-5K (e.g., corresponding to the user's left index finger). InFIG. 5U, for example, in response to detecting fingerprint576 (e.g., corresponding to the user's left index finger) onfingerprint sensor169,device100 increases the line thickness of (or otherwise highlights) “Fingerprint 2”box574 to indicate that detectedfingerprint576 corresponds to the enrolled “Fingerprint 2.” InFIG. 5V, for example, in response to detecting fingerprint578 (e.g., corresponding to the user's right index finger) onfingerprint sensor169,device100 increases the line thickness of (or otherwise highlights) “Fingerprint 1”box552 to indicate that detectedfingerprint578 corresponds to the enrolled “Fingerprint 1.” InFIG. 5W, for example, in response to detecting fingerprint580 (e.g., corresponding to the user's left thumb) onfingerprint sensor169,device100 maintains display of the fingerprint settings interface to indicate that detectedfingerprint580 does not correspond to any of the enrolled fingerprints.
In some embodiments, a given entry can be renamed (e.g., by typing in a new name for the entry while the fingerprint settings interface is in an edit mode) and/or deleted (e.g., by swiping across the entry and selecting a delete affordance that is displayed in response to detecting the swiping across the entry). InFIG. 5N, for example,device100 displays a fingerprint settings interface ontouch screen112 with “Edit”affordance546. “Edit”affordance546, which, when activated, causesdevice100 to change an appearance of the fingerprint settings interface (e.g., displaying a delete affordance next to each of the enrolled fingerprints) and causesdevice100 to enter an edit mode whereby a user is enabled to delete or edit the names of enrolled fingerprints. In some embodiments, a limited number of fingerprints (e.g., 3, 5, 10 or other reasonable number) are allowed to be enrolled at a time so as to limit the amount of time that it takes to determine whether a fingerprint detected on the fingerprint sensor matches an enrolled fingerprint. For example, in some implementations, the number of enrolled fingerprints is limited such that a determination of whether a fingerprint detected on the fingerprint sensor matches an enrolled fingerprint can be completed within 0.5 seconds.
It should be understood that the particular order in which the operations inFIGS. 6A-6D have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod600 described above with respect toFIGS. 6A-6D. For example, the fingerprints and gestures described above with reference tomethod600 optionally have one or more of the characteristics of the fingerprints and gestures described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 7 shows a functional block diagram of anelectronic device700 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 7 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 7,electronic device700 includes adisplay unit702 configured to display a fingerprint enrollment interface and afingerprint sensor unit704. In some embodiments,electronic device700, optionally, includes a touch-sensitive surface unit706 configured to receive one or more touch inputs and a haptic feedback unit configured to provide haptic feedback.Electronic device700 also includes aprocessing unit710 coupled todisplay unit702 andfingerprint sensor unit704, and, optionally, coupled to touch-sensitive surface unit706 andhaptic feedback unit708. In some embodiments, processingunit710 includes a detectingunit712, a collectingunit714, a determiningunit716, an enrollingunit718, adisplay enabling unit720, a receivingunit722, a performingunit724, a highlightingunit726, and anappearance changing unit728.
Processing unit710 is configured to: detect (e.g., with detecting unit712) on fingerprint sensor unit704 a plurality of separate and distinct stationary finger gestures performed with a respective finger; and collect (e.g., with collecting unit714) fingerprint information from the plurality of separate and distinct stationary finger gestures performed with the respective finger. After collecting the fingerprint information, processingunit710 is configured to determine (e.g., with determining unit716), based on the fingerprint information collected for the respective finger, whether the fingerprint information that has been collected is sufficient to enroll a fingerprint of the respective finger with the device. In accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, processingunit710 is configured to enroll (e.g., with enrolling unit718) the fingerprint of the respective finger withelectronic device700. In accordance with a determination that the fingerprint information that has been collected for the respective finger is not sufficient to enroll the fingerprint of the respective finger, processingunit710 is configured to enable display of (e.g., with the display enabling unit720) a message in the fingerprint enrollment interface prompting a user to perform one or more additional stationary finger gestures onfingerprint sensor unit704 with the respective finger.
In some embodiments, fingerprint information from the plurality of separate and distinct stationary finger gestures is collected for an area of the fingerprint of the respective finger that is at least twice as large as the area that can be captured byfingerprint sensor unit704.
In some embodiments, processingunit710 is configured to receive (e.g., with receiving unit722) a request to perform a restricted operation and detect (e.g., with detecting unit712) a fingerprint onfingerprint sensor704. In response to receiving the request to perform the restricted operation, processingunit710 is configured to: in accordance with a determination that the fingerprint is enrolled with the device, perform (e.g., with the performing unit724) the restricted operation; and in accordance with a determination that the fingerprint is not enrolled with the device, forgo performance of the restricted operation.
In some embodiments, the message prompting the user to perform one or more additional finger gestures includes displayed instructions to perform subsequent finger gestures differently from the respective finger gesture.
In some embodiments, the message prompting the user to perform one or more additional finger gestures includes an indication of one or more portions or locations of the respective fingerprint for which fingerprint information is inadequate or has not been collected.
In some embodiments, processingunit710 is configured to collect (e.g., with collecting unit714) fingerprint information while the respective finger is onfingerprint sensor unit704 during a respective stationary gesture.Electronic device700 includes ahaptic feedback unit708 configured to, after the fingerprint information has been collected, provide haptic feedback atelectronic device700 to indicate that the fingerprint information has been collected.
In some embodiments, after enrolling the fingerprint of the respective finger withelectronic device700, processingunit710 is configured to: enable display of (e.g., with display enabling unit720) a fingerprint settings interface with a plurality of entries that correspond to respective enrolled fingerprints, where the plurality of entries includes a respective entry that corresponds to the fingerprint of the respective finger and one or more other entries that correspond to other enrolled fingerprints of other fingers besides the respective finger; detect (e.g., with detecting unit712) a second finger gesture onfingerprint sensor unit704 that corresponds to the fingerprint of the respective finger; and in response to detecting the second finger gesture, highlight (e.g., with highlighting unit726) the respective entry that corresponds to the fingerprint of the respective finger.
In some embodiments, the fingerprint enrollment interface includes a progress indicator, and, in response to detecting onfingerprint sensor unit704, processingunit710 is configured to change (e.g., with appearance changing unit728) an appearance of the progress indicator to indicate the collection of additional fingerprint information from the respective stationary finger gesture.
In some embodiments, the progress indicator includes a portion of a surface of a three-dimensional object.
In some embodiments, the progress indicator is in the shape of a fingerprint and includes lines that are representative of fingerprint ridges, and changing the appearance of the progress indicator includes coloring (e.g., with appearance changing unit728) in a portion of the plurality of ridges.
In some embodiments, the progress indicator includes a plurality of concentric circles, and changing the appearance of the progress indicator includes filling (e.g., with appearance changing unit728) in one of a plurality of concentric circles with a predefined fill.
In some embodiments, the progress indicator includes a plurality of progress-indicator portions that correspond to fingerprint portions of the respective fingerprint, and when fingerprint information from a respective fingerprint portion is collected, processingunit710 is configured to change (e.g., with appearance changing unit728) an appearance of the corresponding progress-indicator portion to indicate that fingerprint information from the respective fingerprint portion has been collected.
In some embodiments, processingunit710 is configured, after changing the appearance of a plurality of progress-indicator portions and in accordance with a determination that the fingerprint information that has been collected for the respective finger is sufficient to enroll the fingerprint of the respective finger, to change (e.g., with appearance changing unit728) the appearance of one or more unchanged progress-indicator portions to match the (already changed) appearance of the plurality of progress-indicator portions.
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 6A-6D are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 7. For example, detectingoperation602, collectingoperation606, determiningoperation622, and enrollingoperation624 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Performing Operations Based on FingerprintsMany electronic devices are configured to perform various operations. Existing methods for performing operations typically require performing a respective operation in response to a respective input. For example, with existing methods, a user typically provides an input to perform a single operation. When the user wants to perform a different operation, the user needs to navigate through menus, or to provide a different input, to perform a different operation. In addition, certain secure operations involve private information (e.g., credit card information, passwords, etc.) or restricted features. Such secure operations typically require authentication of the user (e.g., using a passcode). Thus, it is cumbersome and inefficient to perform multiple operations, including secure operations. In the embodiments described below, an improved method for performing operations is achieved by performing multiple operations in response to a single input. Non-secure operations (e.g., resetting a display dim timer) are performed in response to a fingerprint input regardless of an identity of the fingerprint (e.g., regardless of whether the fingerprint belongs to an authorized user), whereas secure operations (e.g., revealing private information) are performed in response to the fingerprint input when the fingerprint input includes a fingerprint that matches a pre-registered (e.g., enrolled) fingerprint. This method streamlines performing multiple operations in response to a fingerprint input, thereby eliminating the need for extra, separate steps to perform the multiple operations.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to8A-8W and9A-9B includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference toFIGS. 8A-8W and9A-9B will be discussed with reference to display450, a separate touch-sensitive surface451 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described inFIGS. 8A-8W on the integrated fingerprint sensor359-1 while displaying the user interfaces shown inFIGS. 8A-8B on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with atouch screen112 in response to detecting the contacts described inFIGS. 8A-8W on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) while displaying the user interfaces shown inFIGS. 8A-8W on thetouch screen112.
FIGS. 8A-8W illustrate exemplary user interfaces for performing operations based on fingerprints in accordance with some embodiments.
FIG. 8A illustrates an exemplary user interface for a shopping web page. The exemplary user interface includes a plurality of input fields (e.g.,802-1 through802-8) and representations of information in respective input fields (e.g.,804). The representations of information in the respective input fields are distinct from the information in the respective input fields. These representations are sometimes called redacted representations, and the information in these input fields is sometimes called redacted information. For example, as illustrated, the redacted representations of information in the respective input fields indicate that the respective input fields contain information, but do not reveal the information in the respective input fields. Although redacted information in the respective input fields are represented with solid dots (e.g., a single solid dot representing a respective character in the respective input fields) inFIG. 8A, redacted information in the respective input fields may be represented using any other characters, shapes, or visual representations that do not directly convey the information in the respective input fields. In some implementations, one or more of the input fields in a respective user interface contain non-redacted information, and those input fields show the information in those input fields, while others of the input fields contain redacted information, as represented by redacted representations.
FIG. 8A also illustrates a display dim timer896-1 and a credential-authorization timer898-1. The display dim timer896-1 and the credential-authorization timer898-1 inFIG. 8A indicate that the display dim timer896-1 and the credential-authorization timer898-1 are in respective reset positions. In some embodiments, the display dim timer896-1 is a timer that is used to determine when to dim the display of thedevice100. In some embodiments, the credential-authorization timer898-1 is a timer that is used to determine when enrolled fingerprints are no longer authorized to authenticate a user of thedevice100. Although the display dim timer896-1 and the credential-authorization timer898-1 are illustrated inFIG. 8A to describe certain operations of thedevice100, the display dim timer896-1 and the credential-authorization timer898-1 are not necessarily shown on thetouch screen112. In some embodiments, the display dim timer896-1 is shown on thetouch screen112. In other embodiments, the display dim timer896-1 is not shown on thetouch screen112. In some embodiments, the credential-authorization timer898-1 is shown on thetouch screen112. In other embodiments, the credential-authorization timer898-1 is not shown on thetouch screen112.
FIG. 8B illustrates the display dim timer896-2 and the credential-authorization timer898-2 that indicate that time has elapsed. As illustrated inFIG. 8B, in some embodiments, the display dim timer896-1 expires faster than the credential-authorization timer898-1. For example, in some embodiments, the display dim timer896-1 expires within a minute, and the credential-authorization timer898-1 expires in 24 or 48 hours. In some implementations, the dim timer has an expiration period that is user selectable, for example, to any of a set of predefined dim timer expiration periods, such as 1 minute, 2 minutes, 5 minutes and 10 minutes. In some implementations, the credential-authorization timer has a default expiration period (e.g., 48 hours) that can be overridden by the user or by a corporate policy that includes one or more default setting value overrides. If overridden, the authorization timer expiration period is set to a shorter period (e.g., 24 hours, 12 hours, 6 hours, 4 hours, or 2 hours) than the default expiration period.
FIG. 8C illustrates that further time has elapsed, and the display dim timer896-3 has expired. In accordance with a determination that the display dim timer has expired, thetouch screen112 is automatically dimmed (e.g., a brightness of thetouch screen112 is reduced).
FIG. 8C also illustrates that, while thetouch screen112 is dimmed, an input812 (e.g., a finger contact or a contact with an object) is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput812 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput812 is ignored (e.g., no operation is performed in response to the input812). In some embodiments, in accordance with a determination that theinput812 includes a fingerprint, one or more operations are performed.
FIGS. 8D-8F illustrate three respective sets of operations that may be performed in response to theinput812 in accordance with a determination that theinput812 includes a fingerprint, in accordance with some embodiments.
FIG. 8D illustrates an exemplary set of operations that are performed in response to the input812 (FIG. 8C) that includes a fingerprint, in accordance with some embodiments. InFIG. 8D, the display dim timer896-4 is reset and thetouch screen112 ceases to be dimmed (e.g., the brightness of thetouch screen112 increases to the brightness of thetouch screen112 before dimming). InFIG. 8D, the credential-authorization timer898-4 is not reset. Also inFIG. 8D, the representations of information (e.g.,804) in respective input fields (e.g.,802-1 through802-8) remain on thetouch screen112.
FIG. 8E illustrates an alternative set of operations that are performed in response to the input812 (FIG. 8C) that includes a fingerprint, in accordance with some embodiments. InFIG. 8E, the display dim timer896-5 is reset and thetouch screen112 ceases to be dimmer. In addition, the representations (sometimes called redacted representations) of information (e.g.,804 inFIG. 8C) in respective input fields (e.g.,802-1 through802-8) are replaced with the information (sometimes called non-redacted information) in the respective input fields. For example, inFIG. 8E, the representations of information in respective input fields are replaced with the payment information (e.g., credit card number, expiration date, security code, name on the card, billing address, etc.). InFIG. 8F, the credential-authorization timer898-5 is not reset.
FIG. 8F illustrates yet another alternative set of operations that are performed in response to the input812 (FIG. 8C) that includes a fingerprint, in accordance with some embodiments. InFIG. 8F, the display dim timer896-6 is reset and thetouch screen112 ceases to be dimmer. In addition, the representations (sometimes called redacted representations) of information (e.g.,804 inFIG. 8C) in respective input fields (e.g.,802-1 through802-8) are replaced with the information (sometimes called non-redacted information) in the respective input fields. Furthermore, the credential-authorization timer898-6 is reset.
In some embodiments, the respective sets of operations illustrated inFIGS. 8E-8F are performed in accordance with a determination that the fingerprint in theinput812 matches an enrolled fingerprint. However, in some embodiments, the operations illustrated inFIG. 8D is performed regardless of whether the fingerprint in theinput812 matches an enrolled fingerprint (e.g., in some embodiments, the operations illustrated inFIG. 8D is performed even when the fingerprint in theinput812 does not match an enrolled fingerprint).
FIGS. 8G-8H illustrate operations that are performed while thetouch screen112 is not dimmed, in accordance with some embodiments.
FIG. 8G illustrates a user interface that is similar to the user interface shown inFIG. 8B. InFIG. 8G, the display dim timer896-7 and the credential-authorization timer898-7 have not expired.FIG. 8G also illustrates that aninput814 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput814 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput814 is ignored (e.g., no operation is performed in response to the input814). In some embodiments, in accordance with a determination that theinput814 includes a fingerprint, one or more operations are performed.
FIG. 8H illustrates that in response to theinput814 that includes a fingerprint, the display dim timer896-8 is reset. InFIG. 8H, the credential-authorization timer898-4 is not reset. Also inFIG. 8H, the representations of information (e.g.,804) in respective input fields (e.g.,802-1 through802-8) remain on thetouch screen112.
FIGS. 8I-8K illustrate operations that are performed before the credential-adjustment timer898 expires, in accordance with some embodiments.
FIG. 8I illustrates a lock screen displayed on thetouch screen112. InFIG. 8I, the credential-adjustment timer898-9 has not expired. A display dim timer (e.g.,896-8 inFIG. 8G) is not illustrated inFIG. 8I for brevity. However, a person having ordinary skill in the art would understand that, in some implementations, display dim-timer896 related operations can be performed from the lock screen. For example, in some embodiments, in accordance with a determination that the display dim timer896 has expired while thetouch screen112 displays a lock screen, thedevice100 automatically dims thetouch screen112 while displaying the lock screen on thetouch screen112. In some embodiments, in accordance with a determination that an input that includes a fingerprint is detected on thefingerprint sensor169, the display dim timer896 is reset.
InFIG. 8I, aninput816 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput816 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput816 is ignored (e.g., no operation is performed in response to the input816). In some embodiments, in accordance with a determination that theinput816 includes a fingerprint, one or more operations are performed.
FIG. 8J illustrates an exemplary user interface that is displayed in response to determining that the fingerprint in theinput816 does not match an enrolled fingerprint.FIG. 8J also illustrates that aninput818, distinct from theinput816, is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput818 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput818 is ignored (e.g., no operation is performed in response to the input818). In some embodiments, in accordance with a determination that theinput818 includes a fingerprint, one or more operations are performed.
FIG. 8K illustrates that, in some embodiments, in accordance with a determination that the fingerprint in theinput818 matches an enrolled fingerprint, thedevice100 is unlocked. In some embodiments, unlocking thedevice100 includes displaying a home screen.
FIGS. 8L-8M illustrate operations that are performed while the credential-authorization timer898 is expired.
FIG. 8L illustrates a lock screen displayed on thetouch screen112. InFIG. 8L, the credential-adjustment timer898-9 is expired.FIG. 8L also illustrates that aninput820 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput820 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput820 is ignored (e.g., no operation is performed in response to the input820). In some embodiments, in accordance with a determination that theinput820 includes a fingerprint, one or more operations are performed.
FIG. 8M illustrates that a passcode screen (shown inFIG. 8M) is displayed on thetouch screen112 in response to the input820 (FIG. 8L), in accordance with some embodiments. In some embodiments, even if the fingerprint in the input820 (FIG. 8L) matches an enrolled fingerprint, the passcode screen is displayed in accordance with a determination that the input820 (FIG. 8L) has been received while the credential-authorization timer898 is expired.
In some embodiments, the passcode screen is displayed in accordance with a determination that an input that includes a fingerprint has been received while the credential-authorization timer898 is expired, regardless of whether the fingerprint in the input matches an enrolled fingerprint.
FIGS. 8N-8O illustrate exemplary operations for providing access to restricted features, in accordance with some embodiments.
FIG. 8N illustrates a user interface that includes one or more selectable user interface objects (e.g., buttons labeled “Network Settings,” “Bluetooth,” and “Sounds”). Compared toFIG. 8O, one or more selectable user interface objects (e.g., a button labeled “Credential Manager”806,FIG. 8O) are not displayed on thetouch screen112.FIG. 8N also illustrates that aninput822 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput822 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput822 is ignored (e.g., no operation is performed in response to the input822). In some embodiments, in accordance with a determination that theinput822 includes a fingerprint, one or more operations are performed.
FIG. 8O illustrates that in accordance with a determination that the fingerprint in theinput822 matches an enrolled fingerprint, a selectableuser interface object806 is displayed on thetouch screen112.FIG. 8O also illustrates that atouch input824 is detected on thetouch screen112 at a location that corresponds to the selectableuser interface object806.
FIG. 8P illustrates an exemplary user interface (e.g., a credential manager user interface) that is displayed in response to detecting the touch input824 (FIG. 8O) at a location that corresponds to the selectableuser interface object806. The exemplary user interface inFIG. 8P includes a plurality of fields and representations of information in the respective fields.
FIG. 8P also illustrates a unauthorized-attempt counter894-1 that counts a number of unauthorized attempts to perform one or more predefined secure operations (e.g., revealing private information or providing access to restricted features).
Although the unauthorized-attempt counter894-1 is illustrated inFIGS. 8P-8V to describe certain operations of thedevice100, the unauthorized-attempt counter894-1 is not necessarily shown on thetouch screen112. In some embodiments, the unauthorized-attempt counter894-1 is shown on thetouch screen112. In other embodiments, the unauthorized-attempt counter894-1 is not shown on thetouch screen112.
FIG. 8P illustrates that aninput826 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput826 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput826 is ignored (e.g., no operation is performed in response to the input826). In some embodiments, in accordance with a determination that theinput826 includes a fingerprint, one or more operations are performed. In some embodiments, in accordance with a determination that the fingerprint in theinput826 does not match an enrolled fingerprint, no operation is performed.
FIG. 8Q illustrates that, in accordance with a determination that the fingerprint in theinput826 does not match an enrolled fingerprint, the number of unauthorized attempts to perform one or more predefined secure operations in the unauthorized-attempt counter894-1 increases (e.g., from zero to one), in some embodiments. In some embodiments, as shown inFIG. 8Q, the representations (sometimes called redacted representations) of information in the respective fields remain on thetouch screen112.FIG. 8Q illustrates that the input826 (FIG. 8P) is no longer detected on thefingerprint sensor169. In some embodiments, the number of unauthorized attempts to perform one or more predefined secure operations in the unauthorized-attempt counter894-1 increases in response to detecting liftoff of the input826 (FIG. 8P) from thefingerprint sensor169 and in accordance with a determination that the fingerprint in the input826 (FIG. 8P) does not match an enrolled fingerprint.
FIG. 8R illustrates that aninput828 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput828 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput828 is ignored (e.g., no operation is performed in response to the input828). In some embodiments, in accordance with a determination that theinput828 includes a fingerprint, one or more operations are performed. In some embodiments, in accordance with a determination that the fingerprint in theinput828 does not match an enrolled fingerprint, no operation is performed.
FIG. 8S illustrates that, in accordance with a determination that the fingerprint in theinput828 does not match an enrolled fingerprint, the number of unauthorized attempts to perform one or more predefined secure operations in the unauthorized-attempt counter894-3 increases (e.g., from one to two), in some embodiments. In some embodiments, as shown inFIG. 8S, the representations of information in the respective fields remain on thetouch screen112. InFIGS. 8S-8U, we will assume that the number of unauthorized attempts in the unauthorized-attempt counter894-3 satisfies (e.g., matches or exceeds) a predefined number of unauthorized attempts (e.g., two, three, four or five).
FIG. 8S also illustrates that the input828 (FIG. 8R) is no longer detected on thefingerprint sensor169. In some embodiments, the number of unauthorized attempts to perform one or more predefined secure operations in the unauthorized-attempt counter894-3 increases in response to detecting liftoff of the input828 (FIG. 8R) from thefingerprint sensor169 and in accordance with a determination that the fingerprint in the input828 (FIG. 8R) does not match an enrolled fingerprint.
FIG. 8T illustrates that aninput830 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput830 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput830 is ignored (e.g., no operation is performed in response to the input830). In some embodiments, in accordance with a determination that theinput830 includes a fingerprint, one or more operations are performed. In some embodiments, in accordance with a determination that the fingerprint in theinput830 does not match an enrolled fingerprint, no operation is performed.
FIG. 8U illustrates that even if the fingerprint in theinput830 matches an enrolled fingerprint, the representations (sometimes called redacted representations) of information in the respective fields remain on the touch screen112 (e.g., the information in the respective fields is not revealed). In some embodiments, the number of unauthorized attempts in the unauthorized-attempt counter894-3 does not increase once the number of unauthorized attempts in the unauthorized-attempt counter894-3 satisfies the predefined number of unauthorized attempts (e.g., two) as illustrated inFIG. 8U. In some embodiments, the number of unauthorized attempts in the unauthorized-attempt counter894-3 increases for a fingerprint in a respective input that does not match an enrolled fingerprint regardless of whether the number of unauthorized attempts in the unauthorized-attempt counter894-3 satisfies the predefined number of unauthorized attempts.
In some embodiments, once the number of unauthorized attempts in the unauthorized-attempt counter894-3 satisfies the predefined number of unauthorized attempts, the unauthorized-attempt counter894-3 is reset by providing a correct passcode on a passcode screen (e.g.,FIG. 8M).
FIGS. 8V-8W illustrate operations performed while the number of unauthorized attempts in the unauthorized-attempt counter894-3 does not satisfy the predefined number of unauthorized attempts.
FIG. 8V illustrates that aninput832 is detected on thefingerprint sensor169. In some embodiments, in accordance with a determination that theinput832 does not include a fingerprint (e.g., a contact with an object such as a pen), theinput832 is ignored (e.g., no operation is performed in response to the input832). In some embodiments, in accordance with a determination that theinput832 includes a fingerprint, one or more operations are performed. In some embodiments, in accordance with a determination that the fingerprint in theinput832 does not match an enrolled fingerprint, no operation is performed.
FIG. 8W illustrates that in accordance with a determination that the fingerprint in theinput832 matches an enrolled fingerprint, the representations (sometimes called redacted representations) of information in the respective fields are replaced with the information (sometimes called non-redacted or unredacted information) in the respective fields. For example, as shown inFIG. 8W, the representations of information in the respective fields are replaced with one or more sets of usernames and passwords (sometimes called non-redacted or unredacted usernames and passwords). In some embodiments, while the number of unauthorized attempts in the unauthorized-attempt counter894-4 (FIG. 8V) does not satisfy the predefined number of unauthorized attempts, in accordance with a determination that the fingerprint in theinput832 matches an enrolled fingerprint, the unauthorized-attempt counter894-4 (FIG. 8V) is reset.
FIGS. 9A-9B are flow diagrams illustrating amethod900 of performing operations based on fingerprints in accordance with some embodiments. Themethod900 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod900 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod900 provides an intuitive way to perform operations based on fingerprints. The method reduces the cognitive burden on a user when performing operations based on fingerprints, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to perform operations based on fingerprints faster and more efficiently conserves power and increases the time between battery charges.
The device detects (902), with the fingerprint sensor, a first input. For example, as illustrated inFIG. 8C, aninput812 is detected on thefingerprint sensor169.
In response to detecting the first input, the device determines (904) whether the first input includes a fingerprint.
In accordance with a determination that the first input includes a fingerprint, the device performs (906) a first operation based on the presence of the fingerprint without regard to an identity of the fingerprint. In some embodiments, the first operation includes resetting a display dim timer. For example, as illustrated inFIG. 8E, in accordance with a determination that the first input includes a fingerprint, the display dim timer896-5 is reset. Typically, resetting the display dim timer has an effect that the brightness of the display is not automatically dimmed, because the dim timer has not expired (is not in an expired state). Typically, as long as the fingerprint continues to be detected on the fingerprint sensor, the brightness of the display is not automatically dimmed.
In some embodiments, the device includes (908) a display. The device also includes a display dim timer (e.g.,896-1 inFIG. 8A) that starts from a dim timer starting value (e.g., zero seconds). The device automatically dims the display in accordance with a determination that the display dim timer has expired (e.g., the display dim timer reaches a predefined expiration value, such as 60 seconds, 120 seconds, etc.) In some embodiments, the display dim timer stores time elapsed since the display dim timer was reset. For example, when one second has elapsed since the display dim timer was reset, the display dim timer stores one second. When two seconds have elapsed since the display dim timer was reset, the display dim timer stores two seconds. In some embodiments, the first operation includes resetting the display dim timer to the dim timer starting value. In another example, the dim timer is a count down timer, the dim timer expiration value is zero seconds, and the dim starting value is value such as 60 seconds, 120 second, 300 seconds, etc. In this example, the display is not dimmed so long as the dim timer has a non-zero value.
In some embodiments, the device collects information about a fingerprint in contact with the fingerprint sensor at predetermined intervals that are shorter than the amount of time that it takes for the dim timer to expire, so that while the fingerprint is maintained on the fingerprint sensor, the device will repeatedly detect the fingerprint and reset the dim timer and as a result, in such a situation, the brightness of the display is not automatically dimmed as long as the fingerprint continues to be detected on the fingerprint sensor.
In accordance with a determination that the fingerprint in the first input matches an enrolled fingerprint, the device conditionally performs (910) a second operation based on the enrolled fingerprint. For example, as illustrated inFIG. 8E, the device reveals private information (e.g., credit card information) in accordance with a determination that the fingerprint in the input812 (FIG. 8C) matches an enrolled fingerprint. In some embodiments, conditionally performing the second operation includes performing the second operation in accordance with a determination that the second operation is not prevented. In some embodiments, conditionally performing the second operation includes forgoing the second operation in accordance with a determination that the second operation is prevented. In some implementations, the second operation is prevented in accordance with a determination that a credential-authorization timer898 has expired.
In some embodiments, the second operation includes (912) one or more of: revealing private information (e.g., revealing the credit card information as illustrated inFIG. 8E) and providing access to restricted features (e.g., as illustrated inFIG. 8O, displaying a selectableuser interface object806, which, when selected, initiates a display of a user interface with restricted features, such as a credential manager features).
In some embodiments, in response to detecting the first input, in accordance with the determination that the first input includes the fingerprint and a determination that the fingerprint in the first input does not match an enrolled fingerprint, the device forgoes (914) performance of the second operation. For example, as illustrated inFIGS. 8G-8H, in response to detecting the input814 (FIG. 8G) and in accordance with a determination that theinput814 includes a fingerprint and a determination that the fingerprint in theinput814 does not match an enrolled fingerprint, the device forgoes performance of the second operation (e.g., private information, such as credit card information, is not revealed inFIG. 8H).
In some embodiments, in response to detecting the first input, in accordance with the determination that the first input includes the fingerprint and a determination that the fingerprint in the first input does not match an enrolled fingerprint, the device performs (916) the first operation without performing the second operation. For example, as illustrated inFIGS. 8G-8H, in response to detecting the input814 (FIG. 8G) and in accordance with a determination that theinput814 includes a fingerprint and a determination that the fingerprint in theinput814 does not match an enrolled fingerprint, the device performs the first operation (e.g., resetting the display dim timer896-8 inFIG. 8H) without performing the second operation (e.g., private information, such as credit card information, is not revealed inFIG. 8H).
In some embodiments, the first operation and the second operation are both performed (918) in accordance with a determination that the first input includes a fingerprint that matches an enrolled fingerprint. For example, as illustrated inFIGS. 8C and 8E, in accordance with a determination that the input812 (FIG. 8C) includes a fingerprint that matches an enrolled fingerprint, the first operation (e.g., resetting the display dim timer896-5) and the second operation (e.g., revealing private information, such as credit card information, as shown inFIG. 8E) are both performed.
In some embodiments, in accordance with a determination that the first input includes a fingerprint that matches an enrolled fingerprint, the device also performs (920) a third operation, distinct from the second operation, based on the enrolled fingerprint. For example, as illustrated inFIGS. 8C and 8F, in accordance with a determination that the input812 (FIG. 8C) includes a fingerprint that matches an enrolled fingerprint, the device performs a third operation (e.g., resetting the credential-authorization timer898-6 inFIG. 8F).
In some embodiments, the device includes (922) a credential-authorization timer (e.g., a timer that measures an amount of time that enrolled fingerprints authorized to use: a device unlock credential such as a passcode, or a purchasing credential such as a credit card number or a password for a store account that is linked to a credit card number or other payment source) that starts from an authorization timer starting value (e.g., zero). In some embodiments, the credential-authorization timer stores time elapsed since the credential-authorization timer was reset. For example, when one hour has elapsed since the credential-authorization timer was reset, the credential-authorization timer stores one hour. When two hours have elapsed since the credential-authorization timer was reset, the credential-authorization timer stores two hours.
In some embodiments, the device prevents unlocking the device with a fingerprint (with a fingerprint matching an enrolled fingerprint) after the credential-authorization timer expires (e.g., reaches a predefined expiration value, such as 12 hours, 24 hours, or 48 hours). In another example, the credential-authorization timer is a count down timer, the credential-authorization timer expiration value is zero seconds, and the credential-authorization timer starting value is (or corresponds to) the authorization timer expiration period, such as any of the authorization timer expiration periods listed elsewhere in this document. In this example, the device does not prevent unlocking the device (with a fingerprint matching an enrolled fingerprint) so long as the credential-authorization timer has a non-zero value.
In some embodiments, preventing the unlocking of the device with a fingerprint includes disabling the unlocking of the device with a fingerprint. For example, as illustrated inFIGS. 8L-8M, in accordance with a determination that the credential-authorized timer898-12 (FIG. 8L) has expired, the device prevents unlocking the device even though a fingerprint in theinput820 matches an enrolled fingerprint. In some embodiments, in response to theinput820, the device displays a passcode screen (FIG. 8M) instead of unlocking the device. In comparison, in some embodiments, as illustrated inFIGS. 8J-8K, in accordance with a determination that the credential-authorization timer898-10 (FIG. 8J) has not expired, the device unlocks in response to a fingerprint in theinput818 that matches an enrolled fingerprint (e.g., ceases to display an unlock screen illustrated inFIG. 8J and displays a home screen illustrated inFIG. 8K).
In some embodiments, the third operation includes resetting the credential-authorization timer to the authorization timer starting value. For example, as illustrated inFIGS. 8C and 8F, in accordance with a determination that the input812 (FIG. 8C) includes a fingerprint that matches an enrolled fingerprint, the device performs a third operation (e.g., resetting the credential-authorization timer898-5 inFIG. 8F).
In some embodiments, the first input includes (924) a respective fingerprint on the fingerprint sensor. The device detects liftoff of the respective fingerprint from the fingerprint sensor. In response to detecting liftoff of the fingerprint from the fingerprint sensor and in accordance with a determination that the respective fingerprint does not match an enrolled fingerprint, the device increments a count of unauthorized attempts to perform the second operation (e.g., unauthorized attempts to unlock the device). For example, as illustrated inFIGS. 8P and 8Q, in response to detecting liftoff of the input826 (FIG. 8P) from the fingerprint sensor169 (FIG. 8Q) and in accordance with a determination that a fingerprint in theinput826 does not match an enrolled fingerprint, the device increases a count of unauthorized attempts to perform the second operation (e.g., the count in the unauthorized-attempt counter894-2) from zero to one. In some embodiments, the count of unauthorized attempts is only incremented upon detecting a distinct fingerprint gesture that includes touchdown and liftoff of a fingerprint from the fingerprint sensor. As a result, a long continuous fingerprint gesture is only counted as a single attempt to perform the second operation.
In some embodiments, subsequent to incrementing the count of unauthorized attempts to perform the second operation, the device determines (926) whether fingerprint-disable criteria have been met. The fingerprint-disable criteria include a criterion that is met when the count of unauthorized attempts to perform the second operation satisfies a predefined number of unauthorized attempts to perform the second operation. In some embodiments, the count of unauthorized attempts to perform in the second operation is deemed to satisfy a predefined number of unauthorized attempts to perform the second operation when the count of unauthorized attempts to perform the second operation matches the predefined number of unauthorized attempts to perform the second operation. For example, when the predefined number of unauthorized attempts to perform the second operation is set to two, and the count of unauthorized attempts to perform the second operation in the unauthorized-attempt counter894-3 (FIG. 8T) is two, the count of unauthorized attempts satisfies the predefined number of unauthorized attempts to perform the second operation. In some embodiments, the count of unauthorized attempts to perform the second operation is deemed to satisfy a predefined number of unauthorized attempts to perform the second operation when the count of unauthorized attempts to perform the second operation exceeds the predefined number of unauthorized attempts to perform the second operation.
In some embodiments, in accordance with a determination that the fingerprint-disable criteria have been met, the device prevents the second operation from being performed based on a fingerprint (e.g., by disabling the fingerprint sensor or by ignoring a fingerprint detected by the fingerprint sensor that matches a previously enrolled fingerprint). For example, as illustrated inFIGS. 8T-8U, in accordance with a determination that the fingerprint-disable criteria have been met (e.g., the count of unauthorized attempts to perform the second operation satisfies a predefined number of unauthorized attempts to perform the second operation), the device prevents the second operation (e.g., revealing private information such as usernames and passwords) from being performed in response to a fingerprint in aninput830 that matches an enrolled fingerprint (e.g., the representations of private information are maintained on thetouch screen112 inFIG. 8U and private information is not displayed on thetouch screen112 inFIG. 8U).
In some embodiments, the first operation is performed (928) while detecting the presence of a fingerprint on the fingerprint sensor, and the second operation is performed in response to detecting liftoff of a fingerprint that matches a previously enrolled fingerprint from the fingerprint sensor. For example, in some embodiments, the first operation (e.g., resetting the display dim timer896-3 inFIG. 8C) is performed while detecting the input812 (FIG. 8C) that includes a fingerprint on the fingerprint sensor169 (FIG. 8C). In comparison, in some embodiments, the second operation (e.g., revealing private information such as credit card information) is performed only after detecting liftoff of the input812 (FIG. 8C) from the fingerprint sensor169 (FIG. 8E).
It should be understood that the particular order in which the operations inFIGS. 9A-9B have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. For example, in some embodiments, the device detects, with the fingerprint sensor, a first input. In response to detecting the first input, the device determines whether the first input includes a fingerprint; and, in accordance with a determination that the first input includes a fingerprint, performs a first operation based on the presence of the fingerprint without regard to an identity of the fingerprint; and, in accordance with a determination that the fingerprint in the first input matches an enrolled fingerprint, performs a second operation based on the enrolled fingerprint.
Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod900 described above with respect toFIGS. 9A-9B. For example, the inputs, operations, and credentials described above with reference tomethod900 optionally have one or more of the characteristics of the inputs, operations, and credentials described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 10 shows a functional block diagram of anelectronic device1000 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 10 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 10, anelectronic device1000 includes afingerprint sensor unit1006 configured to detect a first input; and aprocessing unit1008 coupled to thefingerprint sensor unit1006. In some embodiments, theelectronic device1000 includes adisplay unit1002 coupled to theprocessing unit1008 and configured to display a graphical user interface. In some embodiments, thedisplay unit1002 is coupled to thefingerprint sensor unit1006. In some embodiments, theelectronic device1000 includes a touch-sensitive surface unit1004 coupled to theprocessing unit1008 and configured to receive touch inputs. In some embodiments, theprocessing unit1008 includes a determiningunit1010, a first operation performing unit1012, a second operation performing unit1014, a third operation performing unit1016, a credential-authorization timer unit1018, a preventingunit1020, aresetting unit1022, a displaydim timer unit1024, adimming unit1026, a privateinformation revealing unit1028, anaccess providing unit1030, and anincrementing unit1032.
Theprocessing unit1008 is configured to, in response to detecting the first input, determine whether the first input includes a fingerprint (e.g., with the determining unit1010). Theprocessing unit1008 is also configured to, in accordance with a determination that the first input includes a fingerprint, perform a first operation based on the presence of the fingerprint without regard to an identity of the fingerprint (e.g., with the first operation performing unit1012). Theprocessing unit1008 is further configured to, in accordance with a determination that the fingerprint in the first input matches an enrolled fingerprint (e.g., with the determining unit1010), conditionally perform a second operation based on the enrolled fingerprint (e.g., with the second operation performing unit1014).
In some embodiments, theprocessing unit1008 is configured to, in response to detecting the first input, in accordance with the determination that the first input includes the fingerprint and a determination that the fingerprint in the first input does not match an enrolled fingerprint, forgo performance of the second operation (e.g., with the preventing unit1020).
In some embodiments, theprocessing unit1008 is configured to, in response to detecting the first input, in accordance with the determination that the first input includes the fingerprint and a determination that the fingerprint in the first input does not match an enrolled fingerprint (e.g., with the determining unit1010), perform the first operation (e.g., with the first operation performing unit1012) without performing the second operation.
In some embodiments, the first operation and the second operation are both performed (e.g., with the first operation performing unit1012 and the second operation performing unit1014) in accordance with a determination that the first input includes a fingerprint that matches an enrolled fingerprint (e.g., with the determining unit1010).
In some embodiments, theprocessing unit1008 is configured to, in accordance with a determination that the first input includes a fingerprint that matches an enrolled fingerprint, perform a third operation, distinct from the second operation, based on the enrolled fingerprint (e.g., with the third operation performing unit1016).
In some embodiments, the device includes a credential-authorization timer unit1018 that starts from an authorization timer starting value. Theprocessing unit1008 is configured to prevent unlocking the device with a fingerprint (e.g., with the preventing unit1020) after the credential-authorization timer unit1018 expires. The third operation includes resetting the credential-authorization timer unit1018 to the authorization timer starting value (e.g., with the resetting unit1022).
In some embodiments, the device includes thedisplay unit1002 coupled to theprocessing unit1008. The device includes a displaydim timer unit1024 that starts from a dim timer starting value. Theprocessing unit1008 is configured to automatically enable dimming of the display unit1002 (e.g., with the dimming unit1026) in accordance with a determination that the displaydim timer unit1024 has expired (e.g., with the determining unit1010). The first operation includes resetting the displaydim timer unit1024 to the dim timer starting value (e.g., with the resetting unit1022).
In some embodiments, the second operation includes one or more of: revealing private information (e.g., with the private information revealing unit1028) and providing access to restricted features (e.g., with the access providing unit1030).
In some embodiments, the first input includes a respective fingerprint on thefingerprint sensor unit1006. Thefingerprint sensor unit1006 is configured to detect liftoff of the respective fingerprint from thefingerprint sensor unit1006 and theprocessing unit1008 is configured to, in response to detecting liftoff of the fingerprint from thefingerprint sensor unit1006 and in accordance with a determination that the respective fingerprint does not match an enrolled fingerprint (e.g., with the determining unit1010), increment a count of unauthorized attempts to perform the second operation (e.g., with the incrementing unit1032).
In some embodiments, theprocessing unit1008 is configured to, subsequent to incrementing the count of unauthorized attempts to perform the second operation, determine whether fingerprint-disable criteria have been met (e.g., with the determining unit1010). The fingerprint-disable criteria includes a criterion that is met when the count of unauthorized attempts to perform the second operation satisfies a predefined number of unauthorized attempts to perform the second operation. In accordance with a determination that fingerprint-disable criteria have been met (e.g., with the determining unit1010), theprocessing unit1008 is configured to prevent the second operation from being performed based on a fingerprint (e.g., with the preventingunit1020 and/or the second operation performing unit1014).
In some embodiments, the first operation is performed (e.g., with the first operation performing unit1012) while detecting the presence of a fingerprint on thefingerprint sensor unit1006; and the second operation is performed (e.g., with the second operation performing unit1014) in response to detecting liftoff of a fingerprint that matches a previously enrolled fingerprint from thefingerprint sensor unit1006.
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 9A-9B are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 10. For example,detection operation902, firstoperation performing operation906, and secondoperation performing operation910 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Automatically Populating Credential Fields and Revealing Redacted CredentialsMany uses of modern electronic devices require users to provide credentials in order to access certain information and/or services. For example, e-commerce websites or applications often require a user to enter a credit card number, billing address, and shipping address in order to make a purchase. As another example, users are often required to enter a user ID and/or password before access to a secure service or other secure information is granted (e.g., an email website or application, a social network, etc.). Because users are required to provide credentials so frequently when using electronic devices, it is possible to store credentials in memory of such devices so that they can be inserted into credential fields without requiring manual entry by the user. However, this presents several security and privacy risks. For example, an unauthorized user may be able pick up a device that does not belong to them and make purchases using stored credit card information, or gain access to personal and/or sensitive data, applications, websites, or the like.
Moreover, in order to protect the privacy and/or security of credentials, they may be displayed in redacted form so that they cannot be read or copied. However, this makes it difficult for users to review the credentials to confirm that they were entered correctly, or to review and/or edit stored credentials that are typically only displayed in redacted form (e.g., as may be the case in a credential manager interface with which a user can enter, edit, and otherwise manage credentials stored on a device).
In embodiments described below, fingerprint recognition is used to provide authorization to access credentials, and, more particularly, to provide authorization to populate credential fields and/or display non-redacted versions of credentials to a user. For example, if a user navigates to a form with credential fields (e.g., for a credit card number, a billing address, etc.), the user can provide a fingerprint input by placing a finger on a fingerprint sensor. If the fingerprint detected on the fingerprint sensor matches a previously registered fingerprint of the user (and, optionally, if other conditions are satisfied) the credential fields will be automatically populated with stored credentials associated with the user. This way, manual entry of credentials, which is time consuming and can be prone to text input errors, is avoided. As another example, if redacted credentials are displayed (e.g., in a webpage or a credential manager interface), the user can provide a fingerprint input in order to cause the credentials to be displayed in a non-redacted (i.e., human readable) form. Accordingly, credentials can be accessed for viewing and/or input into credential fields quickly and intuitively, while also preventing unauthorized access to such credentials.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to11A-11D,14A-14C,12A-12B, and15A-15B includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference toFIGS. 11A-11D,14A-14C,12A-12B, and15A-15B will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described inFIGS. 11A-11D and14A-14C on the integrated fingerprint sensor359-1 while displaying the user interfaces shown inFIGS. 11A-11D and14A-14C on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described inFIGS. 11A-11D and14A-14C on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown inFIGS. 11A-11D and14A-14C on thedisplay450; in such embodiments, the contacts shown inFIGS. 11A-11D and14A-14C optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIG. 11A illustrates an exemplary user interface that is displayed on a display of a portablemulti-function device100, where the user interface displays aform1101 with fields1102 (1102-1, . . . ,1102-8) corresponding to a plurality of credentials. The fields1102 illustrated inFIG. 11A correspond to the types of fields that are sometimes present in a “checkout” form of an e-commerce website or application, including credit card information fields (e.g., credit card number field1102-1, expiration date field1102-2, etc.) and billing address information fields (e.g., street field1102-5, city field1102-6, etc.). The fields1102 displayed inform1101 are merely exemplary, and more or fewer fields may be displayed in various embodiments. Moreover, other fields, including other types of fields that are not shown inFIG. 11A, may be included instead of or in addition to those shown.
As shown inFIG. 11A,device100 detects afinger input1110 onfingerprint sensor169 while displayingform1101. In some embodiments,finger input1110 corresponds to a request to automatically fill in the fields inform1101. For example, in some embodiments, when a form with credential fields is displayed bydevice100, detection of an authorized fingerprint onfingerprint sensor169 will cause thedevice100 to populate the fields with stored credentials. On the other hand, as described below, if an unauthorized fingerprint is detected onfingerprint sensor169, the fields will not be populated with stored credentials.
FIG. 11B illustratesform1101 after fields1102 have been populated with credentials (e.g., after it has been determined that thefingerprint1110 is associated with a user who is authorized to use the credentials). As shown inFIG. 11B, the credentials are displayed in redacted form so that they are unreadable to a user of the device. In this example, the redacted credentials are represented as sequences of dots. However, one of ordinary skill in the art would recognize that other redaction techniques may also be implemented in various embodiments (e.g., any removal, replacement or obscuration of the characters so that the credentials are unreadable by a user of the device).
In some embodiments, credentials that are automatically populated into credential fields are redacted by default. In some embodiments, one or more of the automatically inserted credentials are displayed in non-redacted or partially redacted form (i.e., including redacted and non-redacted portions), instead of the redacted form illustrated inFIG. 11B. For example, in some embodiments, the last four digits of thecredit card credential1104 are displayed in human readable form (not shown). In some embodiments, other credentials are displayed in partially redacted or non-redacted form, such as a billing address, a name on a credit card, etc. In some embodiments where multiple credential fields are displayed, any combination of redacted, partially redacted, and non-redacted credentials may be displayed. For example, in some embodiments, a credit card number credential is displayed in partially redacted form, an expiration date and credit card security code are displayed in redacted form, and a billing address is displayed in non-redacted form. In some embodiments, whether a credential is displayed in redacted, partially redacted, or non-redacted form is based on a sensitivity and/or security level associated with that credential. For example, credit card numbers, bank account numbers, and the like may be associated with a higher sensitivity and/or security level than usernames and mailing addresses.
As described above,FIG. 11B illustratesform1101 after it has been determined that thefingerprint1110 is associated with a user who is authorized to use the credentials, and afterdevice100 has filled inform1101 with the credentials (e.g., the fields1102 have been populated with the credentials). If, on the other hand, it is determined thatfingerprint1110 is not associated with a user who is authorized to use the credentials, the device forgoes filling in theform1101 with the credentials (not shown). In some embodiments, if a finger input (e.g., finger input1110) is detected, but the fingerprint does not match those of an authorized user,device100 issues a prompt indicating that the request to automatically populate the credential fields is denied.
In some embodiments, once theform1101 has been filled in, an additional finger input can be used to cause the credentials to be displayed in non-redacted form, as described with respect toFIGS. 11C-11D. This way, a user can review the credentials to make sure that they are correct and/or correspond to the particular credentials that the user wished to use. In some implementations, the additional finger input is accomplished by the user lifting their finger offfingerprint sensor169 to end theinitial fingerprint1110, and putting their finger back down onfingerprint sensor169. Upon authentication of the second fingerprint, e.g., as matching an enrolled fingerprint of a user who is authorized to reveal the one or more credentials, the one or more credentials of the user previously displayed in redacted form are displayed in non-redacted form.Finger input1112 shown inFIG. 11C is an example of the aforementioned second fingerprint.
As shown inFIG. 11C,device100 detects afinger input1112 onfingerprint sensor169 while displayingform1101 with redacted credentials displayed in credential fields1102.
In response tofinger input1112, and in accordance with a determination that the fingerprint corresponding to fingerinput1112 is associated with a user who is authorized to reveal the one or more credentials, non-redacted versions of the one or more credentials are displayed in the fields1102 ofform1101, as shown inFIG. 11D. For example,FIG. 11D illustrates all of the credentials inform1101 in plaintext.
In the process shown and described with respect toFIGS. 11A-11D, a first finger input (e.g., finger input1110) causes a form to be filled in with redacted credentials, and a second finger input (e.g., finger input1112) causes non-redacted versions of the credentials to be displayed in place of the redacted versions. In some embodiments, sequential finger inputs cause increasing amounts of one or more credentials to be displayed in non-redacted form. For example, after a first finger input is received (and after it is determined that the fingerprint of the input is associated with an authorized user), credential fields in a form are populated with redacted credentials. After a second finger input from an authorized user is received, a subset of the redacted credentials are replaced with non-redacted versions of the credentials, while others of the redacted credentials remain unchanged (e.g., remain in redacted form). Alternatively, after the second finger input, all or some of the redacted credentials are replaced with partially redacted versions of the credentials. Finally, after a third finger input, all of the credentials are displayed in non-redacted form. Accordingly, each sequential finger input of an authorized user causes redacted credentials to be replaced with less redacted (i.e., more readable) versions. This way, users can easily scale the degree to which their sensitive information is revealed in plaintext, while also allowing them to review the credentials that are automatically filled in to ensure that they are the correct and/or intended credentials.
In some embodiments, the sequential inputs described above must be received and/or detected without intervening inputs (e.g., finger inputs, touch events, etc.). In some embodiments, the sequential inputs need not be received and/or detected without intervening inputs.
In some embodiments, the order in which credentials are displayed in non-redacted form in response to a sequence of finger inputs depends on the relative security level of the credential. For example, in some embodiments, a non-redacted version of a shipping address is displayed in response to an earlier finger input in a sequence of finger inputs (e.g., because it is associated with a lower security and/or privacy level), and a non-redacted version of a credit card number is displayed in response to a later finger input in the sequence of finger inputs (e.g., because it is associated with a higher security and/or privacy level).
FIGS. 12A-12B are flow diagrams illustrating amethod1200 of populating credential fields with credentials, in accordance with some embodiments. Themethod1200 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod1200 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod1200 provides an intuitive way to enter credentials into credential fields that are displayed in a form, and display non-redacted versions of the credentials after redacted versions are initially displayed. The method reduces the cognitive burden on a user when presented with credential fields that need to be populated, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to populate credential fields and enable display of non-redacted versions of credentials faster and more efficiently conserves power and increases the time between battery charges.
The device stores a set of one or more credentials (1202). In some embodiments, credentials are secured credentials that are associated with a user of the device. In some embodiments, the set of one or more credentials is stored in memory of the device (e.g.,memory102,FIG. 1A). In some embodiments, the credentials are stored in a secure area ofmemory102, and/or are encrypted to prevent unauthorized access thereto.
In some embodiments, the set of one or more credentials includes one or more of: a user ID, a password, a credit card number, a bank account number, an address, a telephone number, and/or a shopping credential (1204). In some implementations, the set of credentials includes a plurality of subsets of credentials, each subset corresponding to or associated with a distinct application, payment method, user, shipping address, online resource, set of online resources, or the like. In one example, the set of credentials include: for a first particular online resource (e.g., an email website), a user ID and a password; for a second particular online resource, a user ID, a password, a shipping address, a billing address, and a telephone number; and for shopping, a user ID, a credit card number, a shipping address, a billing address, and a telephone number.
The device displays a form with fields corresponding to one or more credentials of the set of one or more credentials (1206). In some embodiments, the form is a webpage, such as a checkout page of an e-commerce website, a login page to a secure webpage (e.g., a social network, email provider, etc.), or the like. In some embodiments, the form is associated with a user interface of an application, such as a login screen of an application (or operating system). Oneexemplary form1101, shown inFIGS. 11A-11D, illustrates an example of a “checkout” page of an e-commerce website, and includes fields for credentials that are typical of a “checkout” or purchase authorization page (e.g., credit card information fields, billing address information fields, etc.).
The device receives a request to automatically fill in the form with one or more credentials of the set of one or more credentials, wherein the request includes a finger input on the fingerprint sensor (1208). For example, when a form with credential fields is displayed, a user requests that the form be automatically filled with the appropriate credentials by placing a finger on thefingerprint sensor169, as shown inFIG. 11A. In some embodiments, the request to auto-fill the form corresponds to a request to populate all displayed fields of a form with credentials (or all fields for which credentials have been stored). In some embodiments, the request to auto-fill the form corresponds to a request to populate all fields of the form with credentials, regardless of whether they are displayed when the request is received (e.g., undisplayed fields of the form, such as those that are “off screen,” are also populated in response to the request).
In some embodiments, when the device detects that a form having appropriate credential fields is displayed or to be displayed, the device prompts the user to provide an input in order to request automatic filling (“auto-fill”) of a form, such as by presenting the text “Scan your fingerprint to automatically fill in this form.”
In response to receiving the request to automatically fill in the form: in accordance with a determination that the finger input includes a fingerprint that is associated with a user who is authorized to use the set of one or more credentials, the device fills in the form with the one or more credentials; and in accordance with a determination that the finger input includes a fingerprint that is not associated with a user who is authorized to use the set of one or more credentials, the device forgoes filling in the form with the one or more credentials (1210).
In some embodiments, the determination that the fingerprint is associated with a user who is authorized to use the set of one or more credentials includes a determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints (1212). For example, if the fingerprint corresponding to finger input1110 (FIG. 11A) matches an enrolled fingerprint, the device fills in the form (i.e., the fields of the form) with the stored credentials, as shown inFIG. 11B. If, on the other hand, the fingerprint corresponding to fingerinput1110 does not match an enrolled fingerprint, the device will not fill in the form. In some embodiments, the device will provide an indication that the fingerprint did not match an enrolled fingerprint, such as an audible or visible alert. For example, the device will display a prompt with the text “Auto-fill authorization denied—please try again.”
In some implementations, one or more enrolled fingerprints are associated with a user who is authorized to use the set of one or more credentials, while one or more other enrolled fingerprints are not associated with a user who is authorized to use the set of one or more credentials. In such implementations, the determination that the fingerprint is associated with a user who is authorized to use the set of one or more credentials includes a determination that the fingerprint matches at least one enrolled fingerprint that is associated with a user who is authorized to use the set of one or more credentials.
In some implementations, different enrolled fingerprints are associated with different sets of credentials or different subsets of the set of credentials stored in the device. In one example, one or more enrolled fingerprints are associated with a user who is authorized to use all of the credentials, or a first subset of the credentials that is less than all the credentials, in the set of one or more credentials, while one or more other enrolled fingerprints are associated with another user who is authorized to use only a second subset of the credentials that is less than all the credentials and that is different from the first subset of the credentials. Other examples of associating different enrolled fingerprints with different sets or subsets of credentials are possible. In some such implementations, the determination that a fingerprint in a finger input is associated with a user who is authorized to use the set of one or more credentials includes both a determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints, and if so, a determination of whether the use one or more respective credentials in the set of one or more credentials is authorized by the fingerprint.
In some embodiments, the determination that the fingerprint is associated with a user who is authorized to use the set of one or more credentials and/or the determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints is performed by the device (e.g., withfingerprint analysis module131 of device100). In some embodiments, the determinations are performed by one or more additional devices instead of or in addition to the device.
In some embodiments, if a predetermined number of consecutive requests to auto-fill a form are denied (e.g., 2, 3, 4, 5, or more denials), the device performs one or more actions. For example, in order to protect sensitive information from unauthorized access and/or use, the device disables an auto-fill functionality (e.g., for a predetermined time, or until a valid override password is input by a user), or deletes stored credentials from memory.
With reference toFIG. 12B, in some embodiments, filling in the form with the one or more credentials includes displaying redacted versions of the one or more credentials in one or more fields of the form (1214). In some embodiments, a respective credential is redacted when at least a portion of the respective credential is rendered unreadable to a user of the device (e.g., by removing, replacing or obscuring characters, or by blocking out all or a portion of the characters in the respective credential). For example, the credentials inFIG. 11B (e.g., credit card credential1104) are illustrated as a series of dots.
In some embodiments, while displaying the redacted versions of the one or more credentials in one or more fields of the form, the device detects a respective fingerprint on the fingerprint sensor; and in response to detecting the respective fingerprint and in accordance with a determination that the respective fingerprint is associated with a user who is authorized to reveal the one or more credentials, displays a non-redacted version of the one or more credentials in the fields of the form (1216). For example,FIG. 11D illustrates the device displaying non-redacted versions of credentials in response to a finger input1112 (shown inFIG. 11C) corresponding to a fingerprint of an authorized user.
In some embodiments, the same fingerprints that are authorized to use the set of credentials are also authorized to reveal the set of one or more credentials. In some embodiments, one or more fingerprints that are authorized to use the credentials are not authorized to reveal the credentials.
As shown inFIGS. 11A-11D, the device initially displays credentials in redacted form, and, if certain conditions are met, subsequently displays non-redacted versions of the credentials. In some embodiments, the redacted version of a respective credential includes an indication of a length of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the respective credential (1218). A redacted credential can indicate the length of the underlying credential in several ways. For example, in some embodiments, the redacted version of a respective credential includes a symbol (e.g., a dot, asterisk, letter, etc.) for each character in the respective credential.Credential1104 inFIGS. 11B-11D illustrates an example of this, where one dot is displayed for each number in the credit card number. In some embodiments, the redacted version of a respective credential includes a symbol or graphic whose length is proportional to the length of the respective credential (e.g., a black bar, a horizontal line, etc.). In some embodiments, a human readable version of the respective credential is a plaintext version of the credential (i.e., the actual text, symbols, numbers, characters, etc., of the credential).
In some embodiments, or in some circumstances, the redacted version of a respective credential includes a non-redacted portion of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the entire respective credential (1220). In some embodiments, the particular portion of the redacted credential that is non-redacted depends on the credential. For example, in the case of a credit card number, the last four digits are displayed in plaintext in the redacted version. In the case of an address credential, the house number (and/or the city or state) is displayed in plaintext in the redacted version, and the rest of the address (e.g., the street name and zip code) is redacted. Other portions of these credentials are displayed in non-redacted form in various embodiments.
Devices are sometimes used by multiple, different users, each having a different set of credentials that they are likely to use. For example, each user may have a unique username and password for an email account, a unique credit card number. unique login credentials for social networking services, and the like. Moreover, in some embodiments, a device can register fingerprints for multiple users, such that the device can identify a user making a request by comparing a received fingerprint to the registered fingerprints of the multiple users. Accordingly, in some embodiments, in response to receiving the request to automatically fill in the form, the device identifies which user has issued the request (e.g., by comparing the fingerprint of thefinger input1110 to the registered fingerprints), and automatically fills in the form with credentials corresponding to the identified user. Thus, personalized auto-fill based on fingerprint recognition is provided for multiple different users of a single device.
Similarly, a user of a device may have multiple different instances of a particular type of credential. For example, a user may have multiple email accounts, each with its own unique email address and password. A user may also have multiple credit cards, each associated with unique credit card information. Further, a user may have multiple different mailing addresses (e.g., a home address and a business address). In some embodiments, respective sets of one or more credentials of a user are associated with different respective fingerprints of the user. For example, credentials of a first credit card and billing address are associated with a fingerprint of a right thumb (RT) of the user, and a second credit card and billing address are associated with a fingerprint of a right index (RI) finger. As another example, credentials for a credit card are associated with a fingerprint of a right thumb (RT) of the user, and login credentials for a social networking service are associated with a fingerprint of a right index (RI) finger. Accordingly, in some embodiments, the device selects a set of one or more credentials (from among multiple sets) that correspond to the particular fingerprint detected by the fingerprint sensor, and auto-fills the form with the selected set of one or more credentials. Other associations between fingers and sets of credentials than those described above are also possible. For example, any credential or set of credentials described herein can be associated with any unique fingerprint, whether it is a different finger of the same user, or a finger of a different user.
It should be understood that the particular order in which the operations inFIGS. 12A-12B have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod1200 described above with respect toFIGS. 12A-12B. For example, the fingerprints, contacts, and user interface objects described above with reference tomethod1200 optionally have one or more of the characteristics of the fingerprints, contacts, and user interface objects described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 13 shows a functional block diagram of anelectronic device1300 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 13 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 13, anelectronic device1300 includes adisplay unit1302 configured to display a form with fields corresponding to one or more credentials of the set of one or more credentials, an optional touch-sensitive surface unit1304 configured to receive contacts, afingerprint sensor unit1306; acredential storage unit1307 configured to store a set of one or more credentials, and aprocessing unit1308 coupled to thedisplay unit1302, the optional touch-sensitive surface unit1304, thecredential storage unit1307, and thefingerprint sensor unit1306. In some embodiments, theprocessing unit1308 includes arequest receiving unit1310, aform filling unit1312, adisplay enabling unit1314, and afingerprint matching unit1316.
Processing unit1308 is configured to: receive a request to automatically fill in the form with one or more credentials of the set of one or more credentials (e.g., with request receiving unit1310), wherein the request includes a finger input on the fingerprint sensor (e.g., fingerprint sensor unit1306); and in response to receiving the request to automatically fill in the form: in accordance with a determination that the finger input includes a fingerprint that is associated with a user who is authorized to use the set of one or more credentials, fill in the form with the one or more credentials (e.g., with form filling unit1312); and in accordance with a determination that the finger input includes a fingerprint that is not associated with a user who is authorized to use the set of one or more credentials, forgo filling in the form with the one or more credentials (e.g., with form filling unit1312).
In some embodiments, the set of one or more credentials includes one or more of: a user ID, a password, a credit card number, a bank account number, an address, a telephone number, and a shopping credential.
In some embodiments, filling in the form with the one or more credentials includes enabling display of redacted versions of the one or more credentials in one or more fields of the form (e.g., with display enabling unit1314).
In some embodiments, thefingerprint sensor unit1306 is configured to, while the redacted versions of the one or more credentials are displayed in one or more fields of the form, detect a respective fingerprint on the fingerprint sensor; and theprocessing unit1308 is further configured to, in response to detection of the respective fingerprint and in accordance with a determination that the respective fingerprint is associated with a user who is authorized to reveal the one or more credentials (e.g., with fingerprint matching unit1316), enable display of a non-redacted version of the one or more credentials in the fields of the form (e.g., with display enabling unit1314).
In some embodiments, the redacted version of a respective credential includes an indication of a length of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the respective credential.
In some embodiments, the redacted version of a respective credential includes a non-redacted portion of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the entire respective credential.
In some embodiments, the determination that the fingerprint is associated with a user who is authorized to use the set of one or more credentials includes a determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints. In some embodiments, thedevice1300 determines that the fingerprint matches at least one of a set of one or more enrolled fingerprints (e.g., with fingerprint matching unit1316).
FIG. 14A illustrates an exemplary user interface that is displayed on a display of a portablemulti-function device100. The user interface displays aselection page1402 that includes one or more selectable user interface objects, including acredential manager icon1404. Thepage selection1402 illustrates one possible example of an interface in which a user can request the display of stored credentials (e.g., by requesting activation and/or display of a credential manager interface).
As shown inFIG. 14A,device100 receives a request to display the set of one or more credentials (e.g.,contact1406, indicating a user selection of credential manager icon1404).
FIG. 14B illustrates an exemplarysettings manager interface1403 that is displayed in response to thecontact1406. Thesettings manager interface1403 includes fields1408 (1408-1, . . . ,1408-6) corresponding to one or more credentials. Fields1408 correspond to examples of credentials that are stored by thedevice100, according to some embodiments. For example, fields1408 include a username field1408-1 and a password field1408-2 associated with an email account, a user ID field1408-3 and a password field1408-4 associated with an account for a shopping website/application, and a user ID field1408-5 and a password field1408-6 associated with a social network account. Other credential fields are possible, including credit card information fields, and the like.
Thedevice100 displays redacted versions of the credentials in each of the fields1408. In this example, the redacted credentials are represented as sequences of dots. However, other redaction techniques are also contemplated (e.g., any removal, replacement or obscuration of the characters such that the credentials are unreadable by a user of the device).
As shown inFIG. 14B,device100 detects afinger input1406 onfingerprint sensor169 while displaying redacted credentials in credential fields1408 ofsettings manager interface1403.Device100 detects a fingerprint included withfinger input1406, and, in response to detecting the fingerprint and if the fingerprint is associated with an authorized user,device100 displays the credentials infields1406 in non-redacted form, as shown inFIG. 14C. Specifically,FIG. 14C illustrates thesettings manager interface1403 with the credentials displayed in plaintext so that they are readable (and/or editable) by a user of the device.
FIGS. 15A-15B are flow diagrams illustrating amethod1500 of revealing redacted credentials, in accordance with some embodiments. Themethod1500 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod1500 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod1500 provides an intuitive way to reveal redacted credentials. The method reduces the cognitive burden on a user when attempting to review or edit credentials that are displayed in redacted form, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to reveal redacted credentials faster and more efficiently conserves power and increases the time between battery charges.
The device stores a set of one or more credentials (1502). As described above, in some embodiments, credentials are secured credentials that are associated with a user of the device, and are stored in memory of the device (e.g.,memory102,FIG. 1A). In some embodiments, the credentials are stored in a secure area of memory, and/or are encrypted to prevent unauthorized access to the credentials.
In some embodiments, the set of one or more credentials includes credentials that correspond to a plurality of different accounts of a user of the device (1504). For example, a user may store on the device credentials for multiple different accounts, such as one or more email accounts, one or more payment accounts (e.g., credit cards, bank accounts, online payment accounts, and the like), shopping credentials (e.g., usernames and passwords for e-commerce websites and/or applications), credentials for social network accounts, and the like.FIG. 14B illustrates examples of credentials corresponding to a plurality of different accounts of a user of a device.
In some embodiments, the set of one or more credentials includes passwords for a plurality of different accounts of a user of the device (1506). For example, as shown inFIG. 14B, the set of one or more credentials includes a password for a webmail account (e.g., credential field1408-2), a password for a shopping site (e.g., credential field1408-4), and a password for a social network account (e.g., credential field1408-6).
In some embodiments, the set of one or more credentials includes payment authorization information for a plurality of different payment accounts of a user of the device (1508). Payment authorization information includes, for example, credit card information (e.g., credit card numbers, expiration dates, security codes, billing addresses, etc.), online payment account information (e.g., account numbers, user identifiers, passwords, etc.), bank account information (e.g., bank account numbers, routing numbers, user identifiers, passwords, etc.), and the like.
In some embodiments, the set of one or more credentials includes one or more of: a user ID, a password, a credit card number, a bank account number, an address, a telephone number, and/or a shopping credential (1510). Examples of these credentials are described above, and are illustrated inFIGS. 11A-11D and14B-14C.
The device receives a request to display the set of one or more credentials (1512). In some embodiments, the request includes a user selection of a selectable user interface object (e.g., an icon). For example,FIG. 14A illustratescontact1406 indicating a user selection ofcredential manager icon1404. In response to receiving the request to display the set of one or more credentials (e.g., contact1406), the device displays redacted versions of the set of one or more credentials (1514). In some embodiments, the redacted versions of the set of one or more credentials are displayed in a “credential manager” interface, as illustrated inFIG. 14B.
In some embodiments, the redacted versions of the credentials are identified with (e.g., displayed near or otherwise in association with) non-redacted human readable text (i.e., a label) that indicates the type of credential. Non-limiting examples of credential labels include username; user identifier; email address; password; credit card number; expiration date; etc. In some embodiments, the redacted versions of the credentials are identified with non-redacted human readable text (i.e., a label) that indicates which account a particular redacted credential is associated with. For example,FIG. 14B illustrates webmail credentials displayed in association with text indicating the account (“Webmail Account”), as well as text indicating the type of each credential (“Username” and “Password”).
While displaying the redacted versions of the set of one or more credentials, the device detects a fingerprint on the fingerprint sensor (1516). For example,FIG. 14B illustrates finger input1406 (including a fingerprint) onfingerprint sensor169 while the redacted versions of the credentials are displayed in thecredential manager1403.
In response to detecting the fingerprint and in accordance with a determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials, the device displays a non-redacted version of the set of one or more credentials (1518).FIG. 14C illustrates thedevice100 displaying plaintext versions of the credentials that were redacted inFIG. 14B, in response to detection of a fingerprint (e.g., finger input1406) and a determination that the fingerprint is associated with an authorized user. In some embodiments, the determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials includes a determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints (1520).
In some embodiments, the determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials and/or the determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints is performed by the device (e.g., withfingerprint analysis module131 of device100). In some embodiments, the determinations are performed by one or more additional devices instead of or in addition to the device.
With reference toFIG. 15B, in some embodiments, the redacted version of a respective credential includes an indication of a length of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the respective credential (1522). For example, in some implementations, the redacted version of a respective credential includes a symbol (e.g., a dot, asterisk, letter, etc.) for each character in the respective credential.Credential1104 inFIGS. 11B-11D illustrates an example of this, where one dot is displayed for each number in the credit card number. In some embodiments, the redacted version of a respective credential includes a symbol or graphic whose length is proportional to the length of the respective credential (e.g., a black bar, a horizontal line, etc.). In some embodiments, a human readable version of the respective credential is a plaintext version of the credential (i.e., the actual text, symbols, numbers, characters, etc., of the credential).
In some embodiments, the redacted version of a respective credential includes a non-redacted portion of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the entire respective credential (1524). In some embodiments, the particular portion of the redacted credential that is non-redacted depends on the credential. For example, in the case of a credit card number, the last four digits are displayed in plaintext in the redacted version. In the case of an address credential, the house number (and/or the city or state) is displayed in plaintext in the redacted version, and the rest of the address (e.g., the street name and zip code) is redacted. Other portions of these credentials are displayed in non-redacted form in various embodiments.
It should be understood that the particular order in which the operations inFIGS. 15A-15B have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod1500 described above with respect toFIGS. 15A-15B. For example, the fingerprints, contacts, and user interface objects described above with reference tomethod1500 optionally have one or more of the characteristics of the fingerprints, contacts, and user interface objects described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 16 shows a functional block diagram of anelectronic device1600 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 16 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 16, anelectronic device1600 includes adisplay unit1602, an optional touch-sensitive surface unit1604 configured to receive contacts, afingerprint sensor unit1606; acredential storage unit1607 configured to store a set of one or more credentials, and aprocessing unit1608 coupled to thedisplay unit1602, the optional touch-sensitive surface unit1604, thecredential storage unit1607, and thefingerprint sensor unit1606. In some embodiments, theprocessing unit1608 includes arequest receiving unit1610, adisplay enabling unit1612, and afingerprint matching unit1614.
Processing unit1608 is configured to: receive a request to display the set of one or more credentials (e.g., with request receiving unit1610); in response to receiving the request to display the set of one or more credentials, enable display of redacted versions of the set of one or more credentials (e.g., with display enabling unit1612); and in response to detection of a fingerprint on the fingerprint sensor while the redacted versions of the set of one or more credentials are displayed, and in accordance with a determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials (e.g., with fingerprint matching unit1614), enable display of a non-redacted version of the set of one or more credentials (e.g., with display enabling unit1612).
In some embodiments, the set of one or more credentials includes credentials that correspond to a plurality of different accounts of a user of the device.
In some embodiments, the set of one or more credentials includes passwords for a plurality of different accounts of a user of the device.
In some embodiments, the set of one or more credentials includes payment authorization information for a plurality of different payment accounts of a user of the device.
In some embodiments, the set of one or more credentials includes one or more of: a user ID, a password, a credit card number, a bank account number, an address, a telephone number, and a shopping credential.
In some embodiments, the redacted version of a respective credential includes an indication of a length of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the respective credential.
In some embodiments, the redacted version of a respective credential includes a non-redacted portion of the respective credential; and the non-redacted version of the respective credential includes a human readable version of the entire respective credential.
In some embodiments, the determination that the fingerprint is associated with a user who is authorized to reveal the set of one or more credentials includes a determination that the fingerprint matches at least one of a set of one or more enrolled fingerprints. In some embodiments, thedevice1600 determines that the fingerprint matches at least one of a set of one or more enrolled fingerprints (e.g., with fingerprint matching unit1614).
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 12A-12B and15A-15B are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 13 or16. For example,display operation1206, request receivingoperation1208, and form filling operation1210 (FIG. 12A) andrequest receiving operation1512,credential display operation1514,fingerprint detection operation1516, and credential revealing operation1518 (FIG. 15A) are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Managing Usage of Saved CredentialsMany electronic devices provide services that require particular credentials that are used by the devices or service providers to determine a user's eligibility for receiving the services. Such credentials frequently comprise information that is not easily accessible to people other than the particular user(s) associated with the credentials. Examples of a credential include a passcode, a registered username-password combination, a stored answer to a security question, credit card information, a social security number, and so on. Although requiring the user to input the correct credential each time the user wishes to access a particular service may promote security, such requirement is also cumbersome and time consuming. As described herein, automatically saving a credential that was previously provided on the device for accessing a function or service and subsequently allowing the user to access the function or service again through an enrolled fingerprint help to streamline the user's access to the function or service without significantly compromising the required level of access security. In addition, as described herein, in some embodiments, it is possible for a device to have multiple enrolled fingerprints at any given time, and a user may enroll one or more additional fingerprints while the device is in an unlocked state. It is therefore important to have a method to securely manage the automatic usage of saved credentials when one or more additional fingerprints are enrolled since the credential was last used.
As described herein, in some embodiments, after a fingerprint enrollment process is successfully completed and one or more fingerprints are enrolled, the device automatically saves each credential manually entered by the user. When any of the saved credentials is subsequently required on the device (e.g., by a software application or online service provider), the device automatically prompts the user to provide an enrolled fingerprint in lieu of requesting the user to manually input the required credential. When the user provides a valid fingerprint, the device automatically retrieves and uses an appropriate saved credential on behalf of the user. In the event that one or more additional fingerprints have been enrolled subsequently (or, in some embodiments, in the event that an attempt has been made to add an additional fingerprint), automatic usage of the previously saved credentials is automatically disabled (e.g., by discarding the previously saved credentials, or changing a predefined usage setting). As such, when a credential is subsequently required on the device, the device prompts the user to manually enter the credential rather than accepting any fingerprint input. After the user provides the correct credential, the device saves the credential and re-enables automatic usage of the saved credential through enrolled fingerprints. Such automatic management of saved credentials improves access security on the device. For example, if a second user adds (or, in some embodiments, attempts to add) his or her fingerprint to the set of enrolled fingerprints, the enrolled fingerprints cannot be used authorize usage of the previously saved credential until after the credential has been re-entered.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to17A-17J and18A-18C includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference toFIGS. 17A-17J and18A-18C will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described inFIGS. 17A-17J on the integrated fingerprint sensor359-1 while displaying the user interfaces shown inFIGS. 17A-17J on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described inFIGS. 17A-17J on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown inFIGS. 17A-17J on thedisplay450; in such embodiments, the contacts shown inFIGS. 17A-17J optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIGS. 17A-17J illustrate an exemplary process that occurs on an electronic device (e.g., device100) and demonstrate how the automatic usage of saved credentials through enrolled fingerprints are managed (e.g., allowed and prevented) in accordance with some embodiments.FIGS. 17A-17D illustrate the automatic retrieval and usage of a saved credential through a previously enrolled fingerprint.FIGS. 5E-5H illustrate subsequent enrollment of an additional fingerprint and the resulting disablement of the saved credential.FIGS. 5H-5J illustrates manual entry of the credential by the user, and the automatic saving and re-enablement of the credential, where the re-enabled credential is made available for subsequent retrieval and use through enrolled fingerprints.
The exemplary scenario shown inFIGS. 17A-17D occurs after a user of the electronic device (e.g., device100) has already registered a set of one or more fingerprints (e.g., through the processes described in method600), and enabled automatic usage of saved credentials through enrolled fingerprints (e.g., through a fingerprint usage setting described in method600). In addition, during the first occasion after the enrollment of the set of fingerprints that a particular credential (e.g., a passcode of a registered online shopping account) is required on the device, the user is prompted to manually enter the credential. In response to receiving the manual entry of the credential, the device uses the credential to provide access to the function or service (e.g., making a purchase at an online store), and automatically saves a copy of the credential for future use through the set of enrolled fingerprints.
Before the start of the exemplary scenario shown inFIG. 17A, a copy of the credential (e.g., the passcode of the online shopping account) has been saved on thedevice100, and the user has returned again to the same online store after the previous shopping session had been terminated (e.g., through timeout or formal exit).
As shown inFIG. 17A, the user has identified an item (e.g., a software application1702) for purchase in the online store (e.g., an app store), and is presented with auser interface1704 showing the detailed description of the item. Theuser interface1704 includes auser interface element1706 for purchasing the item using a registered online shopping account. In some embodiments, the online store has stored the necessary payment information (e.g., shipping address, billing address, credit card information, store credit, etc.) in association with the registered shopping account, and will apply the stored payment information when the passcode associated with the registered shopping account is received from the user at the time of the purchase.
As shown inFIGS. 17A-17B, when the user selects (e.g., using a touch input1708) theuser interface element1706 to proceed with the purchase of thesoftware application1702, thedevice100 determines (e.g., through a notification received from the online store) that a particular registered account passcode is required by the online store for completing the purchase. Thedevice100 further determines that the registered account passcode has been previously entered and saved on the device. In accordance with such determinations, thedevice100 presents a prompt (e.g., a pop-up window1710) instructing the user to provide an enrolled fingerprint to use the saved passcode to proceed with the purchase. In some embodiments, thedevice100 activates thefingerprint sensor169 separate from thetouch screen112 to detect and capture any fingerprint input provided on thehome button204. In some embodiments, the device selectively activates a high-resolution region1712 on the touch-screen112 within the pop-upwindow1710 to serve as a fingerprint sensor. In some embodiments, the device displays an animation (e.g., a glowing fingerprint graphic) to visually indicate the activated high-resolution region1712 to the user.
In some embodiments, as shown inFIG. 17B, the pop-upwindow1710 further displays auser interface element1714 for canceling the current operation and returning to theuser interface1704 shown inFIG. 17A. In some embodiments, as shown inFIG. 17B, the pop-upwindow1710 also displays auser interface element1716 for manually entering the required account passcode using a keypad. Although not shown in this exemplary interaction scenario, a person of ordinary skill in the art would understand that, if the user selects theuser interface element1716, instead of providing an enrolled fingerprint, the device will present an alternate user interface that allows the user to type in the required passcode or to switch to a different online shopping account.
As shown inFIG. 17C, the user has provided afingerprint input1718 through thefingerprint sensor169 on thehome button204. Thedevice100 captures thefingerprint input1718 and determines that the received fingerprint matches one of the set of fingerprints currently enrolled on thedevice100. Thedevice100 further determines that the required account passcode is currently stored on thedevice100 and is not currently disabled (e.g., an exemplary scenario illustrating disablement of a saved passcode is shown later inFIGS. 17E-17H). In accordance with such determinations, the device retrieves the saved account passcode, and provides the saved account passcode to the online store on behalf of the user. In some embodiments, automatic population of the saved account passcode into the online store's passcode interface is presented to the user through an animation. In some embodiments, as shown inFIG. 17D, the saved passcode is provided to the online store in the background, and the user is presented with auser interface1720 indicating transaction success after the saved passcode has been accepted by the online store. In this example, the purchase of the selected item has been confirmed, and download of the purchased application has been started.
FIGS. 17A-17D illustrate how a saved credential (e.g., an account passcode) can be used on behalf of the user through an enrolled fingerprint provided by the user.FIGS. 17E-17H illustrate how use of a saved credential can be disabled after an additional fingerprint has been enrolled after the credential is saved. Disabling automatic usage of a saved credential after enrollment of one or more additional fingerprints provides an alert to the user (either implicitly or explicitly) that additional fingerprints have been enrolled. If the enrollment of the additional fingerprints is not objectionable to the user, the user can manually provide the required credential to re-enable the automatic usage of the credential through any of the set of fingerprints currently enrolled on thedevice100.
As shown inFIGS. 17E-17F, after the user has exited the shopping interface of the online store, and while the account passcode for the online store remains a saved credential on thedevice100, a new fingerprint has been successfully registered on thedevice100. A detailed description of an exemplary process for enrolling an additional fingerprint is described with reference tomethod600. As a result of the enrollment of the new fingerprint, thedevice100 determines that, at least one fingerprint (e.g., the new fingerprint) in the set of currently enrolled fingerprints ondevice100 is registered after the saved account passcode was last used. According to this determination, thedevice100 disables the automatic usage of the saved account passcode.
In other words, in some embodiments, even if a user were to provide the same fingerprint that he or she had previously used to apply the saved account passcode to the online store, this fingerprint will no longer achieve the same result because the automatic usage of the saved account passcode has been disabled. In some embodiments, the automatic usage of the saved account passcode (or other credential) is not disabled for the previously enrolled fingerprints, but is disabled for the newly enrolled fingerprint until the user has manually entered the account passcode to associate/connect the account passcode with the newly enrolled fingerprint.
As shown inFIGS. 17G-17H, when the user returns to the same online store at a later time and wishes to make another purchase using the same online shopping account, instead of prompting the user to provide an enrolled fingerprint, thedevice100 provides a prompt for the user to manually enter the required passcode.
As shown inFIG. 17G, the user has identified an item (e.g., an interactive book1724) for purchase in the same online store, and is presented with auser interface1726 showing the detailed descriptions of the item. Theuser interface1726 includes auser interface element1728 for purchasing the item using a registered online shopping account. When the user selects (e.g., using a touch input1730) theuser interface element1728 to proceed with the purchase of theinteractive book1724, thedevice100 determines again (e.g., through a notification received from the online store) that a particular registered account passcode is required by the online store for completing the purchase. Thedevice100 further determines that automatic usage of the previously saved account passcode has been disabled on the device (e.g., due to the enrollment of the additional fingerprint as shown inFIGS. 17E-17F). In some embodiments, the previously saved account passcode has been deleted from thedevice100 through disablement, and thedevice100 simply determines that no saved account passcode is available at this time. In accordance with either of these determinations, as shown inFIG. 17H, thedevice100 presents a prompt (e.g., a pop-up window1730) for the user to manually enter the required account passcode to proceed with the purchase.
FIG. 17I illustrates that the user has provided the required passcode in the pop-up window1730 (e.g., using thesoft keypad1732 provided along with the pop-up window1730). Thedevice100 transmits the received passcode to the online store in the usual manner (e.g., in an encrypted form). When the online store verifies and accepts the user-entered passcode, thedevice100 presents auser interface1738 indicating that the purchase has been confirmed and download of the purchased interactive book has been started, as shown inFIG. 17J.
At this point, once the manually entered passcode has been accepted by the online store, thedevice100 automatically saves the account passcode, and once again enables automatic retrieval and usage of the saved account passcode through enrolled fingerprints (e.g., any of the set of currently enrolled fingerprints) in the next transaction in which the account passcode is required. For example, the next purchase transaction can proceed in a manner analogous to that shown inFIGS. 17A-17D.
FIGS. 18A-18C are flow diagrams illustrating amethod1800 of managing automatic usage of a saved credential through enrolled fingerprints in accordance with some embodiments. Themethod1800 is performed at an electronic device (e.g.,device300 ofFIG. 3, or portablemultifunction device100 ofFIG. 1A) with a display, a fingerprint sensor, and optionally, a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. In some embodiments, the fingerprint sensor is integrated with the touch-sensitive surface (e.g., the touch screen or the touch-sensitive surface separate from the display). In some embodiments the fingerprint sensor is separate from the touch-sensitive surface. Some operations inmethod1800 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod1800 provides an efficient and intuitive way of providing automatic usage of saved credentials through enrolled fingerprints while also providing security in light of possible unauthorized enrollment of new fingerprints. The method increases the security of using saved credentials, while permitting concurrent enrollment of multiple fingerprints on the device.
As shown inFIG. 18A, at an electronic device with one or more processors, memory, and a fingerprint sensor: the electronic device stores (1802) on the device a respective credential of a user of the device.
In some embodiments, the respective credential includes (1804) a credential selected from the set consisting of: a user ID, a password, a credit card number, a bank account number, an address, a telephone number, and a shopping credential. For example, in some embodiments, as illustrated inFIGS. 17A-17G, the respective credential is an account passcode for a registered shopping account at an online store (e.g., an app store or an e-commerce store). The online store uses the account passcode to identify and/or authenticate a shopper and/or retrieve previously stored customer information associated with the shopper. In some embodiments, the respective credential is a user ID associated with the device, a user ID associated with an email account, or a user ID associated with an online service account (e.g., online gaming account, a document storage account, etc.). In some embodiments, the respective credential includes a set of user information that is frequently used during online shopping, including a credit card number, a shipping address, a billing address, a credit card expiration date, a telephone number, and/or a credit card security code, etc. In some embodiments, the respective credential includes private authentication information used to verify the user's identity. In some embodiments, the respective credential further includes other user data (e.g., address, birthday, age, preferences, etc.) associated with the authentication information.
In some embodiments, the respective credential is associated with a respective context (e.g., making a purchase using a shopping application, unlocking a locked screen, completing a credit card transaction on an e-commerce website, etc.) for which it is applicable. In some embodiments, the device stores the respective credential in association with the respective context for which it is applicable, such that the device is able to retrieve and use the correct credential under a given context. In some embodiments, the device stores the respective credential in a secured form, e.g., an encrypted form.
In some embodiments, the device automatically stores the respective credential entered by the user, when the user successfully uses the respective credential in context (e.g., using the account passcode for a registered online shopping account to complete a purchase transaction at an online store). In some embodiments, the device stores the respective credential through a respective credential set-up process initiated by the user.
In some embodiments, the context for using the respective credential is associated with a software application executing on the electronic device (e.g., a shopping application, a browser application presenting an online shopping portal, a device operating system, a security application, an email application, a banking application, etc.).
While executing a software application (1806) (e.g., while executing the software application with fingerprint authorization of automatic usage of the respective credential currently enabled on the device): the device receives (1808) a fingerprint at the fingerprint sensor of the device. In response to receiving the fingerprint and in accordance with a determination that credential-usage criteria have been satisfied, including a determination that the received fingerprint matches at least one of a set of enrolled fingerprints, the device automatically uses (1810) the respective credential of the user in the software application (e.g., without the user entering additional authorizing information other than the fingerprint). For example, in some embodiments, the user requests performance of a particular operation that is secured by the credential (e.g., logging in to a secured user interface of the application or making a purchase) and the credential is automatically provided to the application for use in performing the particular requested operation).
For example, as illustrated inFIGS. 17A-17D, in some embodiments, while executing a software application of an online store, the device determines that a respective credential (e.g., an account passcode) associated with the user is requested by the software application. The device determines whether the required credential is currently stored on the device, and if so, whether automatic usage of the stored credential through at least one of a set of enrolled fingerprints is currently enabled. As described with reference tomethod600, automatic usage of saved credentials through enrolled fingerprints can be enabled by the user using a predefined fingerprint usage setting. If automatic usage of saved credentials through enrolled fingerprints is enabled, and the appropriate credential (e.g., the account passcode) is already stored on the device, the device prompts (e.g., using pop-upwindow1710 inFIG. 17B) the user to provide an enrolled fingerprint input, in lieu of providing the required credential itself. In some embodiments, the device temporarily activates the fingerprint sensor (e.g.,fingerprint sensor169 or1712 inFIG. 17C) to capture the fingerprint input provided by the user. The device receives a fingerprint input (e.g.,fingerprint1718 inFIG. 17C) at the fingerprint sensor and checks whether the received fingerprint matches one of a set of fingerprints currently enrolled on the device.
In some embodiments, the device presents a pop-up window that prompts the user to either provide a fingerprint input at the fingerprint sensor (i.e., to automatically use the saved credential) or to manually enter a credential that the user wishes to use for the current secured operation. For example, in some embodiments, activation of the fingerprint sensor is performed concurrently with presenting a soft keypad with a text input field for the user to enter the required credential directly. Providing these two choices concurrently to the user allows the user to easily enter a credential other than the one that has been saved on the device.
In some embodiments, the determination that credential-usage criteria have been satisfied includes (1812) a determination that usage of the respective credential has not been disabled. For example, in some embodiments, automatic usage of the respective credential is optionally disabled when the total number of unsuccessful attempts to enter an enrolled fingerprint has exceeded a predetermined threshold number. In some embodiments, automatic usage of the respective credential is optionally disabled when an additional fingerprint has been enrolled since the respective credential was last used. In some embodiments, the device also maintains a cumulative counter for unmatched fingerprint inputs that have been provided thus far. In some embodiments, if the number of unmatched fingerprints exceeds a predetermined threshold number, the device disables automatic usage of saved credentials through fingerprints. For example, if the user provided more than a threshold number of unmatched fingerprints in response to the prompt for an enrolled fingerprint (e.g., the pop-upwindow1710 inFIG. 17C), automatic usage of the saved credential (e.g., the account passcode) will be disabled. In response, the device will present a different prompt asking the user to manually enter the required credential.
In some embodiments, a determination that the received fingerprint matches at least one of a set of enrolled fingerprints further includes a determination that the received fingerprint matches any one of all fingerprints currently enrolled on the device. In some embodiments, a determination that the received fingerprint matches at least one of a set of enrolled fingerprints further includes a determination that the received fingerprint matches one of a subset of all fingerprints currently enrolled on the device, where the subset of enrolled fingerprints are one or more fingerprints specifically associated with the software application and/or the respective credential.
In some embodiments, automatically using the respective credential in the software application includes automatically populating one or more text input fields provided in the software application using the respective credential. In some embodiments, automatically using the respective credential in the software application includes automatically sending the respective credential in a plain or encrypted form to the software application or to a remote server through the software application. For example, as illustrated inFIGS. 17C-17D, the device provides the saved credential (e.g., the saved account passcode) to the online store through an app store application to complete a purchase transaction at the online store.
After automatically using the respective credential of the user in response to receiving the fingerprint, the device receives (1814) a request to enroll an additional fingerprint with the device. In response to the request to enroll the additional fingerprint with the device, the device adds (1816) the additional fingerprint to the set of enrolled fingerprints. For example, as illustrated inFIGS. 17D-17F, after the user had finished the shopping transaction using an enrolled fingerprint in lieu of manually entering the required account passcode, the user requested to register a new fingerprint on thedevice100 and has enrolled an additional fingerprint (e.g.,Finger 2 inFIG. 17F) to the set of fingerprints currently enrolled on the device.
In some embodiments, in response to adding the additional fingerprint to the set of enrolled fingerprints, the device prevents (1818) enrolled fingerprints from being used to authorize automatic usage of the respective credential. In some other embodiments, for enhanced security, the device prevents enrolled fingerprints from being used to authorize automatic usage of the respective credential in response to detecting a request to enroll an additional fingerprint with the device, independent of whether or not an additional fingerprint is actually enrolled. Thus, in some other embodiments, the mere request to enroll an additional fingerprint (e.g., activating “Add Finger” inFIG. 17E) causes the device to prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential (e.g., at least until the respective credential is subsequently entered manually). Disabling automatic usage of a saved credential after an attempt to enroll an additional fingerprint provides an alert to the user (either implicitly or explicitly) of the attempted enrollment.
In some embodiments, the device stores (1820) on the device a predefined fingerprint usage setting that enables the device to automatically use the respective credential of the user in a software application upon receiving a fingerprint that matches at least one of a set of enrolled fingerprints. For example, exemplary embodiments of the predefined fingerprint usage setting for enabling automatic usage of saved credentials are described with reference tomethod600.
In some embodiments, preventing enrolled fingerprints from being used to authorize automatic usage of the respective credential includes (1822) deleting or changing a value of the predefined fingerprint usage setting. In some embodiments, deleting or changing a value of the predefined fingerprint usage setting includes deleting a previous authorization from the user to enable automatic usage of saved credentials through an enrolled fingerprint, or changing the fingerprint usage setting (e.g., Touch ID Purchase setting550 inFIG. 5U) from enabled to disabled.
In some embodiments, preventing enrolled fingerprints from being used to authorize automatic usage of the respective credential includes (1824) deleting a predefined set of confidential values that includes the respective credential. For example, in some embodiments, the device deletes all saved credentials currently stored on the device, such that no saved credential is available for automatic use through enrolled fingerprints. In such embodiments, in the event that the user manually enters a credential in context, the device will automatically save the manually entered credential, and re-enable the automatic usage of the credential through enrolled fingerprints. In some embodiments, if the device supports different sets of enrolled fingerprints for usage of different sets of saved credentials, the device deletes all saved credentials associated with the respective set of enrolled fingerprints to which the additional fingerprint was added.
In some embodiments, preventing enrolled fingerprints from being used to authorize automatic usage of the respective credential includes (1826) deleting the respective credential (e.g., deleting the Apple ID password in the example shown inFIGS. 5A-5J). In some embodiments, the device deletes the respective credential along with one or more other saved credentials having the same level of security on the device.
In some embodiments, the device keeps track of the number of unsuccessful attempts to provide an enrolled fingerprint to unlock the device. In some embodiments, if the device has registered too many failed attempts to unlock the device using an enrolled fingerprint, the device continues to keep the device locked, and also disables automatic usage of saved credentials through enrolled fingerprints. In such embodiments, even if the device is subsequently unlocked (e.g., through the use of an unlock passcode), the user is required to re-enable the automatic usage of save credentials by manually entering the saved credentials and/or reconfiguring the predefined fingerprint usage setting. In some embodiments, the device receives (1828) a sequence of N unsuccessful attempts to unlock the device via fingerprint authorization, wherein N is a predefined integer greater a predetermined threshold number (e.g., 1, 2, 3, 4, 5 or any reasonable number of unsuccessful attempts). In response to receiving the sequence of N unsuccessful attempts to unlock the device via fingerprint authorization, the device prevents (1830) enrolled fingerprints from being used to authorize automatic usage of the respective credential.
In some embodiments, the device provides a way to reauthorize or re-enable the automatic usage of saved credentials through enrolled fingerprints, after the automatic usage has been prevented or disabled (e.g., through any of the methods described above). In some embodiments, after preventing enrolled fingerprints from being used to authorize automatic usage of the respective credential (1832): the device receives (1834) a request to use the respective credential in the software application (e.g., as shown inFIG. 17G, the device receives a request from the app store application to use the account passcode to complete a purchase transaction). In the event that the automatic usage of the saved credential has been disabled, the device requests (1836) the respective credential from the user (e.g., by presenting the pop-upwindow1730 and thesoft keypad1732, as shown inFIG. 17H). The device receives (1838) the respective credential (e.g., the account passcode) from the user (e.g., through the text input field shown in the pop-upwindow1730 inFIG. 17I). In some embodiments, in response to receiving the respective credential from the user (1740): the device uses (1742) the respective credential in the software application (e.g., as illustrated inFIGS. 17I-17J); and enables (1744) enrolled fingerprints to be used to authorize automatic usage of the respective credential. For example, in some embodiments, once the automatic usage of the respective credential is re-enabled, if the user returns to the same software application (e.g., the app store application), and tries to activate the same secured operation (e.g., making another purchase), the operation can proceed in a manner analogous to that shown inFIGS. 17A-17D (i.e., the user can provide an enrolled fingerprint in lieu of the credential to complete the purchase).
It should be understood that the particular order in which the operations inFIGS. 18A-18C have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod1800 described above with respect toFIGS. 18A-18C. For example, the finger inputs (e.g., including fingerprints), requests, operations, credentials, and requests described above with reference tomethod1800 optionally have one or more of the characteristics of the finger inputs (e.g., including fingerprints), requests, operations, credentials, and requests described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 19 shows a functional block diagram of anelectronic device1900 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 19 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 19, anelectronic device1900 includes adisplay unit1902 configured to display a graphic user interface, a touch-sensitive surface unit1904 configured to receive contacts, afingerprint sensor unit1906 configured to receive a fingerprint input; and aprocessing unit1908 coupled to thedisplay unit1902, the touch-sensitive surface unit1904, and thefingerprint sensor unit1906. In some embodiments, theprocessing unit1908 includes acredential storage unit1910, a determiningunit1912, a credential usage unit1914, afingerprint enrollment unit1916, a usage authorization unit1918, asettings storage unit1920, alocking unit1922, arequest receiving unit1924, and acredential receiving unit1926.
In some embodiments, thecredential storage unit1910 is configured to store on the device a respective credential of a user of the device. While a software application is being executed on the device: thefingerprint sensor unit1906 is configured to receive a fingerprint at the fingerprint sensor of the device. The determiningunit1912 is configured to: while the software application is being executed on the device, determine that credential-usage criteria have been satisfied, including determining that the received fingerprint matches at least one of a set of enrolled fingerprints. The credential usage unit1914 is configured to: while the software application is being executed on the device, in response to the receipt of the fingerprint by thefingerprint sensor unit1906 and in accordance with a determination by the determiningunit1912 that credential-usage criteria have been satisfied, including a determination that the received fingerprint matches at least one of a set of enrolled fingerprints, automatically use the respective credential of the user in the software application. Thefingerprint enrollment unit1916 is configured to: after the credential usage unit1914 has automatically used the respective credential of the user in response to thefingerprint sensor unit1906 receiving the fingerprint, receive a request to enroll an additional fingerprint with the device. Thefingerprint enrollment unit1916 is further configured to: in response to the request to enroll the additional fingerprint with the device, add the additional fingerprint to the set of enrolled fingerprints. Theusage authorization unit1718 is configured to: in response to the addition of the additional fingerprint to the set of enrolled fingerprints by thefingerprint enrollment unit1916, prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential.
In some embodiments, the determination that credential-usage criteria have been satisfied includes a determination that usage of the respective credential has not been disabled.
In some embodiments, the respective credential includes a credential selected from the set consisting of: a user ID, a password, a credit card number, a bank account number, an address, a telephone number, and a shopping credential.
In some embodiments, thesettings storage unit1920 is configured to store on the device a predefined fingerprint usage setting that enables the device to automatically use the respective credential of the user in the software application upon receiving a fingerprint that matches at least one of a set of enrolled fingerprints.
In some embodiments, the usage authorization unit1918 is configured to prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential by deleting or changing a value of the predefined fingerprint usage setting.
In some embodiments, the usage authorization unit1918 is configured to prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential by deleting a predefined set of confidential values that includes the respective credential.
In some embodiments, the usage authorization unit1918 is configured to prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential by deleting the respective credential.
In some embodiments, thelocking unit1922 is configured to: receive a sequence of N unsuccessful attempts to unlock the device via fingerprint authorization, wherein N is a predefined integer; and in response to receiving the sequence of N unsuccessful attempts to unlock the device via fingerprint authorization, prevent enrolled fingerprints from being used to authorize automatic usage of the respective credential.
In some embodiments, therequest receiving unit1924 is configured to receive a request to use the respective credential in the software application, after enrolled fingerprints are prevented from being used to authorize automatic usage of the respective credential. Thecredential receiving unit1926 is configured to requesting the respective credential from the user (e.g., after therequest receiving unit1924 receives the request and enrolled fingerprints are prevented from being used to authorize automatic usage of the respective credential). In some embodiments, the credential usage unit1914 is further configured to: in response to the credential receiving unit receiving the respective credential from the user, use the respective credential in the software application. In addition, in some embodiments, the usage authorization unit1918 is further configured to: in response to the credential receiving unit receiving the respective credential from the user, enable enrolled fingerprints to be used to authorize automatic usage of the respective credential.
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 18A-18J are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 19. For example, storingoperation1802, receivingoperation1808, usingoperation1810, addingoperation1816, preventingoperation1818 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Revealing Redacted InformationMany electronic devices have graphical user interfaces that contain private information (e.g., information that a user of the device may not want to be viewed by others). Redacting private information prevents other people from viewing the private information; however, redacting private information also prevents the user of the device from viewing the private information. Some methods require a user to perform a complicated sequence of steps (e.g., navigating to a settings menu and/or entering a pass code or password) to reveal redacted information (e.g., by unlocking the device or changing redaction settings). This makes it difficult and time consuming for the user to quickly review an unredacted version of the information. Thus, it would be advantageous to provide a way for a user to quickly and intuitively remove redaction from information displayed by the device so that the private information is hidden from other people but is still readily accessible to the user of the device. In some embodiments described below, an improved method for revealing redacted information is achieved by using a fingerprint sensor to determine whether or not to reveal redacted information. In particular, while the device is displaying information with a redacted portion, the device determines whether or not to display an unredacted version of the redacted portion of the information based on whether the device detects a fingerprint that matches a previously enrolled fingerprint on a fingerprint sensor of the device. This method streamlines the process of revealing redacted information by enabling a user to reveal redacted information simply by placing a finger on a fingerprint sensor of the device, thereby eliminating the need for extra, separate, steps to reveal redacted information.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to20A-20T and21A-21C includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference toFIGS. 20A-20T and21A-21C will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described inFIGS. 20A-20T on the integrated fingerprint sensor359-1 while displaying the user interfaces shown inFIGS. 20A-20T on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described inFIGS. 20A-20T on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown inFIGS. 20A-20T on thedisplay450; in such embodiments, the contacts shown inFIGS. 20A-20T optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIG. 20A illustrates a locked-device user interface displayed ontouch screen112 ofdevice100 while the device is in a locked mode of operation. In some embodiments, locked-device user interface is displayed while one or more functions ofdevice100 are locked (e.g., access to personal data and applications is limited compared to when the device is in an unlocked mode of operation). In some embodiments, when the device detects a swipe gesture including movement of a contact from left to right acrosstouch screen112, the device is unlocked or an unlock sequence is initiated (e.g., a user is prompted to enter a pass code, as shown inFIG. 20G). In some embodiments, the device is unlocked when the swipe gesture is detected over an unlock image2001 (e.g., the text “>slide to unlock” inFIG. 20A).
InFIG. 20B, while the device is in the locked mode of operation, the device receives an email and generatesnotification2002 that includes redactedportion2004 that corresponds to a snippet of content of the email andunredacted portion2006 that includes a sender, title, and time of the email.
InFIG. 20C, the device detects a finger gesture that includesfinger contact2008 onfingerprint sensor169.Finger contact2008 includes a fingerprint that matches a previously enrolled fingerprint and, in response to detectingfinger contact2008, the device displaysunredacted version2010 of the content of the email. In this example, the device continues to displayunredacted portion2006 ofnotification2002 while displayingunredacted version2010 of the content.
FIG. 20D illustrates a locked-device user interface displayed ontouch screen112 ofdevice100 while the device is in a locked mode of operation after the device has generated multiple notifications that correspond to different received communications or events, including a compressed version2012-4 ofemail notification2002 shown inFIGS. 20B-20C, calendar notification2012-1, phone call notification2012-2, and email notification2012-3. InFIG. 20D, the content of email notifications2012-3 and2012-4 is redacted and the name of the caller in phone call notification2012-2 is redacted, while none of the information in calendar notification2012-1 is redacted. In some embodiments a name or location of the calendar notification is redacted. In some embodiments, none of the information in phone call notification2012-2 is redacted. In some embodiments, one or more of these notifications2012 inFIG. 20D includes only redacted information.
InFIGS. 20E-20F, the device detectscontact2020 ontouch screen112 and detects movement2022-aand2022-bofcontact2020 acrosstouch screen112. In response to detectingcontact2020 at or near a location oficon2024 that corresponds to email notification2012-3, the device ceases to display descriptive information about email notification2012-3 (e.g., the redacted and unredacted information that correspond to the notification) and instead displays an instruction for accessing the email corresponding to the notification (e.g., “slide to unlock”2026). In response to detecting movement ofcontact2020, the device movesicon2024 across the display (e.g., so as provide visual confirmation that the notification that corresponds toicon2024 has been selected and/or to indicate progress toward unlocking the device and displaying the email corresponding to email notification2012-3). In some embodiments, when at least a portion of a respective notification is redacted, the device responds to an attempt to unlock the device to access additional information related to the respective notification (e.g., swipe gesture at a location that corresponds to the respective notification, as shown inFIGS. 20E-20F) by requesting additional authentication from the user (e.g., as shown inFIG. 20G). In some embodiments, when a respective notification is not redacted, the device responds to an attempt to unlock the device to access additional information related to the respective notification (e.g., swipe gesture at a location that corresponds to the respective notification, as shown inFIGS. 20J-20K) by displaying the additional information related to the respective notification (e.g., as shown inFIG. 20L).
InFIG. 20G, the device displays an unlock user interface for unlocking the device. InFIG. 20G, the device will unlock the device in response to detecting entry of a pass code for the device or in response to detecting a fingerprint onfingerprint sensor169 that matches a previously enrolled fingerprint. For example, if a correct pass code is entered in pass code entry user interface2028 (e.g., by detecting tap gestures on the numbers that correspond to entry of the correct pass code) and/or a fingerprint matching a previously enrolled fingerprint is detected onfingerprint sensor169, the device will display a copy of the email that corresponds to the activated notification2012-3 inFIG. 20D in an email application (e.g., as shown inFIG. 20L).
InFIG. 20H, the device displays unredacted versions of previously redacted notifications in response to detectingfinger contact2030 onfingerprint sensor169 that includes a fingerprint that matches a previously enrolled fingerprint while displaying multiple notifications2012, a plurality of which included both redacted and unredacted information (e.g., as shown inFIG. 20D). In this example, the device continues to display the unredacted portions of notifications2012 while displaying unredacted portions of a plurality of notifications that previously included redacted portions (e.g., notifications2012-2,2012-3, and2012-4 previously included redacted portions inFIG. 20D and do not include redacted portions inFIG. 20H afterfinger contact2030 has been detected). In some embodiments, in response to detecting liftoff offinger contact2030, redacted versions of the notifications are redisplayed (e.g., returning to the user interface shown inFIG. 20D). In some embodiments, in response to detecting liftoff offinger contact2030, the device is unlocked (e.g., as shown inFIG. 20I). In some embodiments, after detecting liftoff of thefinger contact2030, the unredacted versions of the notifications continue to be displayed for a predefined time period (e.g., for 5, 10, 15, 30, 60 seconds or some other reasonable time period) or until a predetermined criteria has been met (e.g., the display of the device has turned off either due to a screen-dim timer or due to a screen-dim input from a user such as activating a sleep/power button of the device), as shown inFIG. 20J, where unredacted versions of notifications2012-2 and2012-4 are displayed even though the device is not currently detecting a fingerprint onfingerprint sensor169.
InFIG. 20I, in response to detecting a liftoff of finger contact2030 (FIG. 20H) fromfingerprint sensor169, the device transitions from operating in a locked mode to operating in an unlocked mode and displays an application launch interface for launching a plurality of different applications (e.g., in response to detecting a tap gesture on a respective icon of the icons displayed ontouch screen112 inFIG. 20I, the device would open an application corresponding to the respective icon as described in greater detail above with reference toFIG. 4A). In some embodiments, when the device is unlocked, a most recently open application (e.g., an application that was open at the time when the device was locked) is displayed instead of displaying the application launch user interface (e.g., if a mail application was open when the device was last locked, a mail application user interface such as the interface shown inFIG. 20L is shown on the display).
InFIGS. 20J-20K, while unredacted versions of notifications2012 are displayed (e.g., as shown inFIG. 20H), the device detectscontact2032 ontouch screen112 and movement2034-aand2034-bofcontact2032 acrosstouch screen112. In response to detectingcontact2032 at or near a location of anicon2024 that corresponds to email notification2012-3, the device ceases to display descriptive information about email notification2012-3 (e.g., the redacted and unredacted information that correspond to the notification) and instead displays an instruction for accessing the email corresponding to the notification (e.g., “slide to unlock”2026). In response to detecting movement ofcontact2032, the device movesicon2024 across the display (e.g., so as provide visual confirmation that the notification that corresponds toicon2024 has been selected and/or to indicate progress toward unlocking the device and displaying the email corresponding to email notification2012-3).
InFIG. 20L, the device displays an email received at the device that corresponds to notification2012-3 inFIGS. 20D and 20H. As shown inFIG. 20L, the full version of the email includes additional content that is not included in the snippet shown in the notification that corresponds to the email. The email interface inFIG. 20L also includes a plurality of controls2036 that enable the user to perform or initiate performance of different operations, such as: navigate to different emails (e.g., by tapping on control2036-1 to display an inbox view that includes representations of a plurality of emails, by tapping on control2036-3 to navigate to a previous email in the current folder or tapping on control2036-2 to navigate to a next email in the current folder), flag/star the displayed email (e.g., by tapping on control2036-4), file the displayed email in a folder (e.g., by tapping on control2036-5), delete/archive the displayed email (e.g., by tapping on control2036-6), reply/forward the displayed email (e.g., by tapping on control2036-7), and draft a new email (e.g., by tapping on control2036-8).
InFIGS. 20M-200, the device detectscontact2040 ontouch screen112 and movement2042-aand2042-bacrosstouch screen112. In response to detecting movement ofcontact2040 downward from a top edge oftouch screen112, the device gradually displaysnotification interface2044 sliding downtouch screen112, e.g., in accordance withmovement2042 ofcontact2040. As shown inFIG. 20P,notification interface2044 includes a plurality of notifications that include redacted information and unredacted information and a plurality of notifications that include only unredacted information.
InFIG. 20P, calendar notifications2046-1 and2046-2 are unredacted; email notifications2046-3 and2046-4 include unredacted senders, subjects and times and redacted content; phone message notifications2046-5 and2046-6 include redacted callers and unredacted times; and message notifications2046-7 and2046-8 include unredacted senders and times and redacted content. InFIG. 20P, in response to detecting an upward swipe gesture including detectingcontact2048 near a lower edge oftouch screen112 andmovement2050 ofcontact2048 upward ontouch screen112 while the redacted version of some of the notifications is displayed (e.g., as shown inFIG. 20P), the device returns to displaying a locked-device user interface such as the user interface shown inFIG. 20M.
InFIG. 20Q, in response to detectingfinger contact2052 onfingerprint sensor169 that includes a fingerprint that matches a previously enrolled fingerprint, the device displays unredacted versions of multiple, previously redacted notifications2046, a plurality of which include both redacted and unredacted information (e.g., as shown inFIG. 20P). In this example, the device continues to display the unredacted portions of notifications2046 while displaying unredacted portions of a plurality of notifications that previously included redacted portions (e.g., notifications2046-3,2046-4,2046-5,2046-6,2046-7, and2046-8 previously included redacted portions inFIG. 20P and do not include redacted portions inFIG. 20Q afterfinger contact2052 has been detected). In some embodiments, in response to detecting liftoff offinger contact2052, redacted versions of the notifications are redisplayed (e.g., returning to the user interface shown inFIG. 20P). In some embodiments, in response to detecting liftoff offinger contact2052, the device is unlocked (e.g., as shown inFIG. 20I). In some embodiments, after detecting liftoff of thefinger contact2030, the unredacted versions of the notifications continue to be displayed for a predefined time period (e.g., for 5, 10, 15, 30, 60 seconds or some other reasonable time period) or until a predetermined criteria has been met (e.g., the display of the device has turned off either due to a screen-dim timer or due to a screen-dim input from a user such as activating a sleep/power button of the device). InFIG. 20Q, in response to detecting an upward swipe gesture including detectingcontact2054 near a lower edge oftouch screen112 andmovement2056 upward ontouch screen112 as shown inFIG. 20Q while the unredacted versions the notifications are displayed, the device displays an unlocked-device user interface (e.g., an application launch user interface such as the application launch user interface shown inFIG. 20I or a user interface for a recently opened application such as the email user interface shown inFIG. 20L).
FIGS. 20R-20T illustrate alternative ways to redact a notification. InFIG. 20R, a snippet of content is replaced with redaction text string2058 (e.g., <Message Content>) that indicates that the snippet of content of the email has been redacted. InFIG. 20S, a snippet of content of the email is obscured by placingblack boxes2060 over individual words to indicate that the snippet of content of the email has been redacted. InFIG. 20T, predefined redaction object2062 has been placed over the snippet of content to indicate that the snippet of content of the email has been redacted. While the redaction shown inFIGS. 20A-20Q included blurring redacted text, any suitable method of rendering the redacted content unreadable, including those shown inFIGS. 20R-20T, could be used instead of or in addition to the blurring shown inFIGS. 20A-20Q.
FIGS. 21A-21C are flow diagrams illustrating amethod2100 of revealing redacted information in accordance with some embodiments. Themethod2100 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod2100 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod2100 provides an intuitive way to reveal redacted information. The method reduces the cognitive burden on a user when revealing redacted information, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to revealing redacted information faster and more efficiently conserves power and increases the time between battery charges.
In some embodiments, the device displays (2102) a locked-device user interface. In some embodiments, the device receives (2104) a request to display information (e.g., detecting the activation of a button that corresponds to a request to turn on a display of the device, or detecting a request to display a notification user interface as shown inFIGS. 20M-20P). In some embodiments, the device detects (2106) the occurrence of a predefined event (e.g., the device receives a new communication and generates a notification of the new communication as described above with reference toFIGS. 20A-20B).
The device displays (2108) a redacted version of first information on the display (e.g.,notification2002 inFIG. 20B, notifications2012-2,2012-3,2012-4 inFIG. 20D, or notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 inFIG. 20P). In some embodiments, the redacted version of the first information is displayed in response to receiving the request to display information and/or in response to detecting the occurrence of the predefined event.
In some embodiments, the first redacted information includes (2110) a plurality of distinct information items (e.g., notifications2012-2,2012-3,2012-4 inFIG. 20D, or notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 inFIG. 20P), and each information item in the plurality of information items includes a redacted portion and an unredacted portion (e.g., inFIG. 20D, the time and description of phone call notification2012-2 are not redacted, while the name of the caller is redacted, and the subject, sender and time of email notifications2012-3 and2012-4 are not redacted while the content of the emails is redacted). In some embodiments, an information item is a set of related information (e.g., information related to a single event or communication). For example, an information item for an electronic message includes two or more of: a name of a sender, a subject line, a time at which the message was received, and content of the message. As another example, an information item for a calendar event includes two or more of a name of an event, a list of participants, a location, a time of the event, and a description of the event. As another example, an information item for a phone call includes two or more of a name of a caller, a phone number from which the phone call was received, and a time of the call.
In some embodiments, the first information includes (2112) a notification that includes identifying information (e.g., a sender of a message and a time) and content (e.g., a subject line and/or a snippet or portion of a body of a message), the identifying information is not redacted and the content is redacted (e.g., as shown withnotification2002 inFIG. 20B and notifications2012-3 and2014 inFIG. 20D). In some embodiments, the first information includes (2114) one or more notifications of communications received by the device (e.g., notifications of missed messages, emails, phone calls and the like). For example, inFIG. 20D, the first information includes phone call notification2012-2 and email notifications2012-3 and2012-4. In some embodiments, the first information includes (2116) one or more notifications of social networking updates. (e.g., notifications of messages and events generated by users who are friends or are followed by a user of the device).
In some embodiments, the redacted version of the first information includes (2118) a copy of the first information that has been rendered unreadable (e.g., by blurring words as shown inFIGS. 20B,20D and20P, by blacking out words as shown inFIG. 20S, or by otherwise obscuring text). In some embodiments, the redacted version of the first information includes (2120) a predefined redaction object (e.g., a string that says <message content> as shown inFIG. 20R or <redacted content> or a predefined shape as shown inFIG. 20T) that is displayed in place of text in the first information.
In some embodiments, the redacted version of the first information is displayed (2122) on a locked-device user interface (e.g., a lock screen) of the device (e.g., as shown inFIGS. 20B and 20D). In some embodiments, the first information includes (2124) a plurality of distinct information items that are redacted (e.g., a plurality of notifications for different messages or events that occurred on the device). In some embodiments, information items in a plurality of information items in the first information each include a redacted portion (e.g., content) and an unredacted portion (e.g., an identifier). For example inFIG. 20D, notifications2012-2,2012-3, and2012-4 each include a redacted portion and an unredacted portion and inFIG. 20P, notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 each include a redacted portion and an unredacted portion. In some embodiments, while displaying the redacted version of the first information, the device displays (2128) an unredacted version of second information (e.g., inFIG. 20D, notification2012-1 is unredacted and inFIG. 20P, notifications2046-1 and2046-2 are unredacted). In some embodiments, the device displays a plurality of notifications including one or more redacted notifications and one or more unredacted notifications (e.g., notifications of email messages are redacted, while notifications from a game are not redacted). Providing a plurality of notifications that each include a redacted portion and an unredacted portion provides the user with the ability to quickly view at least some information about multiple different events or communications and determine whether or not it is necessary to view the unredacted versions of the notifications and/or unlock the device to display additional information that corresponds to the notifications. Thus, providing a plurality of notifications with both redacted and unredacted content maintains the ease of use of the device for the user while improving the security of private information (e.g., content of email messages, content of text messages, and/or the identity of callers).
While displaying the redacted version of the first information on the display, the device detects (2130) a finger input (e.g.,finger contact2008 inFIG. 20C,finger contact2030 inFIG. 20H, orfinger contact2052 inFIG. 20Q) on the fingerprint sensor (e.g.,fingerprint sensor169 inFIGS. 20A-20T).
In response (2132) to detecting the finger input on the fingerprint sensor, in accordance with a determination that the finger input includes a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, the device replaces (2134) display of the redacted version of the first information with an unredacted version of the first information (e.g., as shown inFIGS. 20B-20C,FIGS. 20D and 20H, andFIGS. 20P-20Q the device removes redaction from one or more notifications in response to detecting an enrolled fingerprint on fingerprint sensor169).
In some embodiments, when the first redacted information includes a plurality of distinct information items; and each information item in the plurality of information items includes a redacted portion and an unredacted portion, replacing display of the redacted version of the first information with the unredacted version of the first information includes (2136) replacing display of redacted portions of the plurality of information items with corresponding unredacted content while maintaining display of unredacted portions of the plurality of information items. For example inFIG. 20D, notifications2012-2,2012-3, and2012-4 each include a redacted portion and an unredacted portion and inFIG. 20H, after detectingfinger contact2030 onfingerprint sensor169, the redacted portions of these notifications are replaced with unredacted portions while the previously unredacted portions continue to be displayed. Similarly, inFIG. 20P, notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 each include a redacted portion, and inFIG. 20Q, after detectingfinger contact2052 onfingerprint sensor169, the redacted portions of these notifications are replaced with unredacted portions while the previously unredacted portions continue to be displayed.
In response to detecting the finger input on the fingerprint sensor, in accordance with a determination that the finger input does not include a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, the device maintains (2138) display of the redacted version of the first information on the display. For example, if finger contact2008 (FIG. 20C) did not include a fingerprint that matched a previously enrolled fingerprint, the device would continue to display the user interface shown inFIG. 20B (rather than the user interface shown inFIG. 20C) or display a fingerprint match error user interface indicating to the user that a non-matching fingerprint was detected. As another example, if finger contact2030 (FIG. 20H) did not include a fingerprint that matched a previously enrolled fingerprint, the device would continue to display the user interface shown inFIG. 20D (rather than the user interface shown inFIG. 20H) or display a fingerprint match error user interface indicating to the user that a non-matching fingerprint was detected. As another example, if finger contact2052 (FIG. 20Q) did not include a fingerprint that matched a previously enrolled fingerprint, the device would continue to display the user interface shown inFIG. 20P (rather than the user interface shown inFIG. 20Q) or display a fingerprint match error user interface indicating to the user that a non-matching fingerprint was detected. Maintaining display of the redacted version of information when non-enrolled fingerprint is detected on the fingerprint sensor prevents unauthorized users from viewing private information that is redacted.
In some embodiments, after displaying the unredacted version of the first information, the device continues (2140) to detect the fingerprint on the fingerprint sensor. In some embodiments, while continuing to detect the fingerprint on the fingerprint sensor, the device maintains (2142) display of the unredacted version of the first information on the display. In some embodiments, while maintaining display of the unredacted version of the first information, the device ceases (2144) to detect the fingerprint on the fingerprint sensor (e.g., detecting liftoff of the fingerprint from the fingerprint sensor). In some embodiments, in response to ceasing to detect the fingerprint on the fingerprint sensor, the device redisplays (2146) the redacted version of the first information. For example, inFIG. 20C, if the device detected liftoff ofcontact2008, the device would redisplay the user interface shown inFIG. 20B. As another example, inFIG. 20H, if the device detected liftoff ofcontact2030, the device would redisplay the user interface shown inFIG. 20D. As another example, inFIG. 20Q, if the device detected liftoff ofcontact2052, the device would redisplay the user interface shown inFIG. 20P.
In some embodiments, prior to detecting the first input, the device displays (2102) a locked-device user interface on the display (e.g., a user interface that corresponds to a locked mode of operation of the device as shown inFIG. 20D). In some embodiments, after displaying the unredacted version of the first information, the device continues (2140) to detect the fingerprint on the fingerprint sensor (e.g., as shown inFIG. 20H). In some embodiments, while continuing to detect the fingerprint on the fingerprint sensor, the device maintains (2142) display of the unredacted version of the first information on the display (e.g., as shown inFIG. 20H). In some embodiments, while maintaining display of the unredacted version of the first information, the device ceases (2144) to detect the fingerprint on the fingerprint sensor (e.g., detecting liftoff of the fingerprint from the fingerprint sensor as shown inFIG. 20I). In some embodiments, in response to ceasing to detect the fingerprint on the fingerprint sensor, the device ceases (2148) to display the first information; and displays an unlocked-device user interface on the display (e.g., displaying a user interface that corresponds to an unlocked mode of operation of the device such as the application launch user interface shown inFIG. 20I or a user interface for a last-used application such as the mail application user interface shown inFIG. 20L). Thus, in some embodiments, in response to detecting a finger-down portion of the first input, the device reveals redacted content (e.g., by replacing a redacted version of the content with an unredacted version of the content) and in response to detecting a finger-up portion of the first input, the device displays an unlocked-device user interface. Revealing redacted information in response to detecting a finger-down portion of a finger input and displaying an unlocked-device user interface in response to a finger-up portion of the finger input provides the user with a quick way to view the redacted content and then transition to the unlocked-device user interface.
In some embodiments, the unlocked-device user interface is displayed in response to detecting liftoff of the finger contact if the time between the finger-down portion of the finger input (e.g., the time at which the finger was detected on the fingerprint sensor) and the finger-up portion of the finger input (e.g., the time at which the finger ceased to be detected on the fingerprint sensor) is greater than a first time threshold (e.g., 0.05, 0.1, 0.2, 0.5, 1 second, or some other reasonable time threshold); and the locked-device user interface continues to be displayed in response to detecting liftoff of the finger contact if the time between the finger-down portion of the finger input and the finger-up portion of the finger input is less than the first time threshold (e.g., the user can cancel the device unlock operation by removing the finger contact on the fingerprint sensor before the first time threshold amount of time has elapsed).
In some embodiments, the unlocked-device user interface is displayed in response to detecting liftoff of the finger contact if the time between the finger-down portion of the finger input (e.g., the time at which the finger was detected on the fingerprint sensor) and the finger-up portion of the finger input (e.g., the time at which the finger ceased to be detected on the fingerprint sensor) is less than a second time threshold (e.g., 0.05, 0.1, 0.2, 0.5, 1 second, or some other reasonable time threshold); and the locked-device user interface continues to be displayed in response to detecting liftoff of the finger contact if the time between the finger-down portion of the finger input and the finger-up portion of the finger input is greater than the second time threshold (e.g., the user can cancel the device unlock operation by maintaining the finger contact on the fingerprint sensor for more than the second time threshold amount of time).
In some embodiments, prior to displaying the redacted version of the first information, the device receives (2104) a request to display the first information. For example, the device detects a swipe gesture in a first direction (e.g., downward) starting at or near a first (e.g., top) edge of the display (e.g., as shown inFIGS. 20M-200, wherecontact2040 is detected near a top edge oftouch screen112 and moves2042 downward) or detects a predefined input (e.g., activation of a button of the device that corresponds to a request to wake the device from a low power mode, a request to turn the display of the device on, and/or a request to display a locked-device user interface). In some embodiments, in response to receiving the request to display the first information, the device displays (2108) the redacted version of the first information on the display. For example, inFIG. 20P, the device displaysnotification user interface2044 with a plurality of notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 that each include a redacted portion in response to detecting the swipe gesture in the first direction. In some embodiments, after displaying the first information, the device detects a swipe gesture (e.g.,movement2050 ofcontact2048 inFIG. 20P ormovement2056 ofcontact2054 inFIG. 20Q) in a second direction (e.g., upward) that is different from the first direction and starts at or near a different (e.g., bottom) edge of the display. In response to detecting the swipe gesture in the second direction, the device ceases to display the redacted version of the first information on the display. In some embodiments, whether or not the first information (e.g., the notifications in notification user interface2044) is redacted depends on whether the device is in a locked mode of operation or an unlocked mode of operation (e.g., in response to detecting a request to display the first information while the device is a locked mode of operation), the device displays a redacted version of the first information such as the redacted notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 shown inFIG. 20P, whereas in response to detecting a request to display the first information while the device is in an unlocked mode of operation, the device displays an unredacted version of the first information such as the unredacted notifications2046-3,2046-4,2046-5,2046-6,2046-7,2046-8 shown inFIG. 20Q).
In some embodiments, prior to displaying the redacted version of the first information, the device detects (2106) the occurrence of a predefined event and in response to detecting the occurrence of the predefined event, the device displays (2108) the redacted version of the first information on the display (e.g., in response to receiving a communication such as an email or a phone call, detecting that a reminder time for a calendar appointment has been reached, or receiving a notification from a third party application, the device displays a pop-up notification that corresponds to the event). For example, inFIG. 20B, the device receives an email from Johnny Appleseed, generates a notification including information from the email and displays a redacted version ofnotification2002 ontouch screen112. In some embodiments, whether or not the first information is redacted depends on whether the device is in a locked mode of operation or an unlocked mode of operation (e.g., in response to detecting the occurrence of the predefined event while the device is a locked mode of operation, the device displays a redacted version of the first information as shown inFIG. 20B and in response to detecting the occurrence of the predefined event while the device is in an unlocked mode of operation, the device displays an unredacted version of the first information). In some embodiments, the redacted version of the first information is displayed in a predefined location on the display (e.g., in a center of the display) when it is first received and is later displayed in a list of notifications with one or more other notifications (e.g., one or more unredacted notifications and/or one or more redacted notifications). For example, inFIG. 20B anotification2002 for an email from Johnny Appleseed is initially displayed in a center oftouch screen112 inFIG. 20B after it is received and notification2012-4 for the same email from Johnny Appleseed is later displayed inFIG. 20D in a list of other notifications generated by the device (e.g., notifications that correspond to communications received or events that occurred since the last time the device was unlocked) ontouch screen112.
It should be understood that the particular order in which the operations inFIGS. 21A-21C have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod2100 described above with respect toFIGS. 21A-21C. For example, the fingerprints, contacts, gestures, redaction, and animations described above with reference tomethod2100 optionally have one or more of the characteristics of the fingerprints, contacts, gestures, redaction, and animations described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 22 shows a functional block diagram of anelectronic device2200 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 22 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 22, anelectronic device2200 includes adisplay unit2202 configured to display a redacted version of first information, optionally a touch-sensitive surface unit2204, afingerprint sensor unit2206, and aprocessing unit2208 coupled to thedisplay unit2202, optionally the touch-sensitive surface unit2204, and thefingerprint sensor unit2206. In some embodiments, theprocessing unit2208 includes adisplay enabling unit2210, a detectingunit2212, a replacingunit2214, a maintainingunit2216, aceasing unit2218, and areceiving unit2220.
Theprocessing unit2208 is configured to, while enabling display (e.g., with the display enabling unit2210) of the redacted version of the first information on thedisplay unit2202, detect (e.g., with the detecting unit2212) a finger input on the fingerprint sensor. Theprocessing unit2208 is configured to, in response to detecting the finger input on the fingerprint sensor: in accordance with a determination that the finger input includes a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, replace display (e.g., with replacing unit2214) of the redacted version of the first information with an unredacted version of the first information; and in accordance with a determination that the finger input does not include a fingerprint that matches a previously enrolled fingerprint that is authorized to reveal the first information, maintain display (e.g., with maintaining unit2216) of the redacted version of the first information on thedisplay unit2202.
In some embodiments, the first redacted information includes a plurality of distinct information items and each information item in the plurality of information items includes a redacted portion and an unredacted portion.
In some embodiments, replacing display of the redacted version of the first information with the unredacted version of the first information includes replacing display of the redacted portions of the plurality of information items with corresponding unredacted content while maintaining display of the unredacted portions of the plurality of information items.
In some embodiments, the first information includes a notification that includes identifying information and content, the identifying information is not redacted, and the content is redacted.
In some embodiments, the first information includes one or more notifications of communications received by the device.
In some embodiments, the first information includes one or more notifications of social networking updates.
In some embodiments, the redacted version of the first information includes a copy of the first information that has been rendered unreadable.
In some embodiments, the redacted version of the first information includes a predefined redaction object that is displayed in place of text in the first information.
In some embodiments, the redacted version of the first information is displayed on a locked-device user interface of the device.
In some embodiments, the first information includes a plurality of distinct information items that are redacted.
In some embodiments, theprocessing unit2208 is configured to, while enabling display of the redacted version of the first information, enable display (e.g., with the display enabling unit2210) of an unredacted version of second information.
In some embodiments, theprocessing unit2208 is configured to: after enabling display of the unredacted version of the first information, continue to detect (e.g., with the detecting unit2212) the fingerprint on the fingerprint sensor; while continuing to detect the fingerprint on the fingerprint sensor, maintain display (e.g., with the maintaining unit2216) of the unredacted version of the first information on thedisplay unit2202; while maintaining display of the unredacted version of the first information, cease to detect (e.g., with the detecting unit2212) the fingerprint on the fingerprint sensor; and in response to ceasing to detect the fingerprint on the fingerprint sensor, enable redisplay (e.g., with the display enabling unit2210) of the redacted version of the first information.
In some embodiments, theprocessing unit2208 is configured to: prior to detecting the first input, enable display (e.g., with the display enabling unit2210) of a locked-device user interface on thedisplay unit2202; after displaying the unredacted version of the first information, continue to detect (e.g., with the detecting unit2212) the fingerprint on the fingerprint sensor; while continuing to detect the fingerprint on the fingerprint sensor, maintain display (e.g., with the maintaining unit2216) of the unredacted version of the first information on thedisplay unit2202; while maintaining display of the unredacted version of the first information, cease to detect (e.g., with the detecting unit2212) the fingerprint on the fingerprint sensor; and in response to ceasing to detect the fingerprint on the fingerprint sensor: cease to display (e.g., with the ceasing unit2218) the first information; and enable display (e.g., with the display enabling unit2210) of an unlocked-device user interface on thedisplay unit2202.
In some embodiments, theprocessing unit2208 is configured to: prior to displaying the redacted version of the first information, receive (e.g., with the receiving unit2220) a request to display the first information; and in response to receiving the request to display the first information, enable display (e.g., with the display enabling unit2210) of the redacted version of the first information on thedisplay unit2202.
In some embodiments, theprocessing unit2208 is configured to: prior to displaying the redacted version of the first information, detect (e.g., with the detecting unit2212) the occurrence of a predefined event; and in response to detecting the occurrence of the predefined event, enable display (e.g., with the display enabling unit2210) of the redacted version of the first information on thedisplay unit2202.
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 21A-21C are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 22. For example,display operations2102 and2108, receivingoperation2104, detectingoperations2106 and2130, replacingoperation2134 and maintainingoperation2138 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Providing Different Unlock ModesMany electronic devices have a locked mode, where the locked mode has a different set of enabled features than the unlocked mode on the corresponding device. Because many users wish to keep the contents of their electronic devices private, a locked mode allows for a level of security against unauthorized access to an electronic device. A user may wish to have more than one way to unlock an electronic device while it is in a locked state. The device described below improves on existing methods by providing different unlock modes to unlock a device while it is in a locked mode of operation, including one or more unlock modes associated with a fingerprint sensor.
While the device is in a locked mode of operation in which access to a respective set of features of the electronic device is locked, the device detects, with the fingerprint sensor, a first input that corresponds to a request to initiate unlocking the device. In response to detecting the first input with the fingerprint sensor the device determines whether the first input meets one of unlock criteria, first unlock-failure criteria, or second unlock-failure criteria. In accordance with a determination that the first input meets the unlock criteria, the device transitions the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked. In accordance with a determination that the first input meets the first unlock-failure criteria, the device maintains the device in the locked mode and adjusts unlock settings so that the device is enabled to be unlocked via an unlock operation in a first set of one or more unlock operations. Finally, in accordance with a determination that the first input meets the second unlock-failure criteria, the device maintains the device in the locked mode and adjusts unlock settings so that the device is enabled to be unlocked via an unlock operation in a second set of one or more unlock operations that is different from the first set of unlock operations.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to23A-23FF and24A-24D includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference to FIGS.23A-23FF and24A-24D will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described in FIGS.23A-23FF on the integrated fingerprint sensor359-1 while displaying the user interfaces shown in FIGS.23A-23FF on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described in FIGS.23A-23FF on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown in FIGS.23A-23FF on thedisplay450; in such embodiments, the contacts shown in FIGS.23A-23FF optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIGS.23A-23FF illustrate aportable multifunction device100 providing different unlock modes, and responding to various successful and unsuccessful unlock operations. While in a locked mode,portable multifunction device100 provides different operations associated with unlock modes, represented by various user interfaces in FIGS.23A-23FF.
FIGS. 23A-23C illustrate aportable multifunction device100 being successfully unlocked.FIG. 23A illustrates an exemplary unlock-initiation user interface2302 displayed ontouch screen112 of a device (e.g. device100). In some embodiments, unlock-initiation user interface2302 is a user interface of an operating system running ondevice100. In some embodiments unlock-initiation user interface2302 is displayed bydevice100 in response todevice100 detecting a user input, such as a click ofmenu button204. This exemplary unlock-initiation user interface2302 displays a firstvisual cue2304 for one unlock mode. In some embodiments, unlock-initiation user interface2302 displays more than one visual cue, where each visual cue corresponds to a different unlock mode. In some embodiments,device100 is capable of providing more than one unlock mode, even when only one visual cue for one unlock mode is displayed, as in unlock-initiation user interface2302. In some embodiments, firstvisual cue2304 is textual, graphical or any combination thereof. InFIG. 23A, firstvisual cue2304 is displayed to instruct the user to make a sliding gesture ontouch screen112 from left to right, to unlockdevice100.
FIG. 23B illustrates a fingerprint2306-1 being detected byfingerprint sensor169. In this example, detected fingerprint2306-1 matches an enrolled fingerprint ofdevice100. In some embodiments in whichdevice100 has more than onefingerprint sensor169, fingerprint2306-1 is detected by any one of the device's fingerprint sensors.
FIG. 23C illustrates an unlocked-mode user interface2308. In some embodiments, the unlocked-mode user interface2308 is displayed bydevice100 in response to detecting a user input that meets one or more unlock criteria, while thedevice100 is in a locked mode. In some embodiments, unlocked-mode user interface2308 is displayed in response to thedevice100 detecting a fingerprint2306-1 that matches an enrolled fingerprint ofdevice100, as inFIG. 23B. In some embodiments,device100 does not have security measures enabled to lock the phone, or disables one or more security measures to lock the phone for a predetermined amount of time after a successful attempt to unlock the phone. In such embodiments, unlocked-mode user interface2308 is displayed by thedevice100 without a user input fulfilling one or more unlock criteria.
FIGS. 23D-23K illustratedevice100 being unsuccessfully unlocked by repeated attempts.FIG. 23D illustrates the same unlock-initiation user interface2302 and firstvisual cue2304, as shown inFIG. 23B. In exemplaryFIG. 23D however, fingerprint2310-1, detected byfingerprint sensor169, does not match any enrolled fingerprint ofdevice100.
Throughout this document, the term “any enrolled fingerprint ofdevice100” means any enrolled fingerprint ofdevice100 that can be used to unlockdevice100. In some implementations, all enrolled fingerprints ofdevice100 can be used to unlockdevice100. However, in some other implementations, or in some circumstances, one of more of the enrolled fingerprints ofdevice100 are configured so that they cannot be used to unlockdevice100. For ease of discussion, such enrolled fingerprints are said to be “fingerprints not authorized to unlockdevice100,” while the enrolled fingerprints that can be used to unlock device are said to be “fingerprints authorized to unlockdevice100.”
FIG. 23E illustrates an exemplary response bydevice100 to detection of fingerprint2310-1, which does not match any enrolled fingerprint ofdevice100. InFIG. 23E, firstvisual cue2304 is displayed as shaking from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed. In some embodiments,device100 uses another technique to alert the user that the detected fingerprint is not recognized to be an enrolled fingerprint, such as playing an audio message, displaying a different visual cue, or any combination of audio and visual feedback.
FIG. 23F illustrates an exemplary response bydevice100 to detection of one or more fingerprints2310-1 that do not match any enrolled fingerprint ofdevice100.FIG. 23F illustrates the device displaying a secondvisual cue2312 on unlock-initiation user interface2302, instructing the user, in this example, to try to unlock the device by a fingerprint detection again, and an arrow pointing to the right to indicate that the user can alternatively make a sliding gesture ontouch screen112 from left to right, to unlockdevice100. In some embodiments, secondvisual cue2312 is the same as firstvisual cue2304. In some embodiments,device100 maintains a counter of failed attempts to unlock the device by a particular type of unlock-operation or by any type of unlock operation. In some embodiments, secondvisual cue2312 indicates how many times thedevice100 has detected failed attempts by passcode entry, failed attempts by fingerprint sensing, or failed attempts by any type of unlock-operation. In some embodiments, secondvisual cue2312 indicates how many attempts to unlock the device by a particular means or by any means are permissible before the device precludes any more attempts for an undefined or predefined length of time. In some embodiments, secondvisual cue2312 indicates information associated with the last failed attempt to unlockdevice100, such as a time stamp.
FIGS. 23G-23H illustrate an exemplary response bydevice100 to detection of a fingerprint2310-2 that does not match any enrolled fingerprint ofdevice100, after displaying secondvisual cue2312. InFIG. 23G, secondvisual cue2312 is displayed as shaking (or, equivalently, as being shaken) from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed. In some embodiments,device100 uses another technique to alert the user that the detected fingerprint is not recognized as an enrolled fingerprint, such as playing an audio message, displaying a different visual cue, or any combination of audio and visual feedback. In some embodiments,device100 displays another visual cue distinct from the firstvisual cue2304 and secondvisual cue2312, in response to detecting two or more failed attempts to unlockdevice100 by fingerprint detection. In some embodiments, after displaying secondvisual cue2312 as shaking, the device displays unlock-initiation user interface2302 with secondvisual cue2312 as stationary, as shown inFIG. 23H.
FIG. 23I illustrates a third attempt to unlockdevice100, when fingerprint2310-3 is detected by device, in the sequence of unlock attempts shown inFIGS. 23D to 23J. In this example, fingerprint2310-3 does not match any enrolled fingerprint ofdevice100.
FIGS. 23J-23K illustrate an exemplary response bydevice100 to detection of a first predefined number of unsuccessful attempts to unlockdevice100. In some embodiments, the first predefined number of unsuccessful attempts (e.g., three attempts) corresponds solely to unsuccessful attempts to unlock the device with unrecognized fingerprints. For example,FIGS. 23J-23K illustrate the response ofdevice100 to detection of a third attempt to unlockdevice100 with anunrecognized fingerprint2312, shown inFIG. 23I.FIG. 23J shows a transitional display ontouch screen112, wheredevice100 is switching from displaying unlock-initiation user interface2302 to displaying passcodeentry user interface2314, shown inFIG. 23K. In some embodiments,device100 transitions from unlock-initiation user interface2302 to passcodeentry user interface2314 through a lateral sliding motion, as shown inFIGS. 23J and 23K. In some embodiments, whiledevice100 transitions from unlock-initiation user interface2302 to passcodeentry user interface2314, other user interface objects that were displayed on unlock-initiation user interface2302 such asoverlay icons2315 and secondvisual cue2312 or firstvisual cue2304 are also gradually removed from display ontouch screen112.FIG. 23K illustrates an exemplary passcodeentry user interface2314 thatdevice100 transitions to in response to detecting a first predefined number of unsuccessful attempts to unlockdevice100. In some embodiments, passcodeentry user interface2314 comprises a thirdvisual cue2316 and aprogress indicator2318. InFIG. 23K, exemplary thirdvisual cue2316 comprises the same text as exemplary secondvisual cue2312, however, in some embodiments, thirdvisual cue2316 comprises text distinct from text in any other visual cues. In some embodiments, thirdvisual cue2316 is textual, graphical or any combination thereof
FIGS. 23L-23P illustrate an exemplary response ofdevice100 to user entry of a correct sequence of numbers (e.g., a passcode) to unlock the device, afterdevice100 has detected a first predefined number of unsuccessful attempts (e.g., by repeated detection of fingerprints that do not match any enrolled fingerprint of device100) to unlock the device. InFIG. 23L,device100 detects a finger input2320-1 ontouch screen112 corresponding to entry of the number “1” on the keypad displayed on passcodeentry user interface2314.Progress indicator2318 changes to show a first shape of a set of geometric shapes (e.g., circles) change from an “unfilled” to “filled” appearance. InFIG. 23L,progress indicator2318 has 4 circles to indicate that the one or more passcodes to unlock the device comprise 4 digits. In some embodiments,progress indicator2318 has more than 4 geometric shapes, to correspond to more than 4 digits in a valid passcode to unlockdevice100, or less than 4 geometric shapes to correspond to less than 4 digits in a valid passcode to unlockdevice100. InFIG. 23M,device100 detects another finger input2320-2, andprogress indicator2318 is correspondingly updated to indicate that two finger inputs have been detected. InFIG. 23N,device100 detects another finger input2320-3, andprogress indicator2318 is correspondingly updated to indicate that three finger inputs have been detected. InFIG. 23O,device100 detects another finger input2320-4, andprogress indicator2318 is correspondingly updated to indicate that four finger inputs have been detected.FIG. 23P illustrates an unlocked-mode user interface2308, displayed in response todevice100 detecting a valid passcode entered inFIGS. 23L-23O.
FIG. 23Q illustrates an exemplary response ofdevice100 to user entry of an incorrect sequence of numbers (e.g., an incorrect passcode) to unlock the device, afterdevice100 has detected a first predefined number of unsuccessful attempts to unlock the device (e.g., by repeated detection of fingerprints that do not match any enrolled fingerprints authorized to unlock the device).FIG. 23Q is displayed, for example, afterFIGS. 23L-23O, if the passcode entered inFIGS. 23L-23O is determined to be invalid forunlocking device100. InFIG. 23Q,progress indicator2318 is displayed as being shaken from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed. In some embodiments,device100 uses another technique to alert the user that the entered passcode is not recognized to be a passcode authorized to unlockdevice100, such as playing an audio message, displaying a different visual cue, or any combination of audio and visual feedback. In some embodiments,device100 displays thirdvisual cue2316 as being shaken from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed. InFIG. 23Q, the geometric shapes ofprogress indicator2318 change from being filled, as shown inFIG. 23O, to being unfilled.
FIGS. 23R-23T illustrate further exemplary unsuccessful attempts to unlockdevice100 by fingerprint detection, in the sequence of unlock attempts shown fromFIG. 23D toFIG. 23J. InFIG. 23R, detected fingerprint2310-4 does not match any enrolled fingerprint ofdevice100. InFIG. 23S,progress indicator2318 is displayed as being shaken from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed. In some embodiments,device100 uses another technique to alert the user that the detected fingerprint is not recognized to be an enrolled fingerprint authorized to unlockdevice100, such as playing an audio message, displaying a different visual cue, or any combination of audio and visual feedback. In some embodiments,progress indicator2318 remains stationary and thirdvisual cue2316 is displayed differently to indicate detection of fingerprint that does not match any enrolled fingerprint authorized to unlockdevice100. For example, thirdvisual cue2316 is displayed as being shaken from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed.FIG. 23T illustrates an exemplary fourthvisual cue2322 displayed on passcodeentry user interface2314 in response to detecting a second predefined threshold of unsuccessful attempts to unlockdevice100. In some embodiments, fourthvisual cue2322 is displayed to indicate thatdevice100 has disabled the ability to unlock the device through fingerprint detection. In some embodiments, the second predefined threshold of unsuccessful attempts to unlock corresponds solely to attempts by fingerprint detection.
FIG. 23U illustrates an exemplary unlock-initiation user interface2302. In some embodiments, unlock-initiation user interface2302 is displayed in response to detecting a predefined user action, such aspressing menu button204, while the display of the device is in a low power mode (e.g., the display is off and/or the display backlight is off). In some embodiments, unlock-initiation user interface2302 is also displayed bydevice100 after a predefined period of time has elapsed, while the device is in a locked mode and an idleness condition is detected (e.g., no user input for the predefined period of time).
FIG. 23V illustrates an exemplary response ofdevice100 to detection of a fingerprint2310-5, detected while displaying unlock-initiation user interface2302 (FIG. 23U), where fingerprint2310-5 does not match any enrolled fingerprint ofdevice100 authorized to unlockdevice100. In this example,device100 has previously detected at least one fingerprint2310 that also did not match any enrolled fingerprint ofdevice100 authorized to unlockdevice100 prior to detecting fingerprint2310-5 in unlock-initiation user interface2302, shown inFIG. 23U.FIG. 23V illustrates an exemplary response ofdevice100 to detection of fingerprint2310-5 (which does not match any enrolled fingerprint ofdevice100 authorized to unlock device100) inFIG. 23U. InFIG. 23V,device100 displays the passcodeentry user interface2314, along with a fifthvisual cue2324 that alerts the user to its inability to recognize the detected fingerprint. In some embodiments, fifthvisual cue2324 alerts the user to at least one prior unsuccessful attempt to unlockdevice100 by fingerprint detection, and in some embodiments fifthvisual cue2324 comprises information regarding the one or more prior unsuccessful attempts to unlockdevice100.
FIGS. 23W and 23X illustratedevice100 transitioning from display of unlock-initiation user interface2302 to passcodeentry user interface2314, in response to detecting a device unlock finger gesture2326 ontouch screen112. In this example, device unlock finger gesture2326 is a lateral movement from left to right on unlock-initiation user interface2302, for example from position2326-1 to position2326-2. In some embodiments the direction of device unlock finger gesture2326 is from right to left. Exemplary finger gesture2326 corresponds to the instructions displayed by firstvisual cue2304.FIG. 23X illustrates the transition to passcodeentry user interface2314, shown inFIG. 23Y.
FIG. 23Y illustrates an exemplary passcodeentry user interface2314 displayed bydevice100 in response to detecting device unlock finger gesture2326 inFIG. 23W.FIG. 23W shows a sixth visual cue2328 (e.g., “Enter Passcode”), and aprogress indicator2318. In some embodiments, sixthvisual cue2328 indicates to the user that the device may be unlocked by passcode entry. In some implementations, sixthvisual cue2328 indicates additional methodologies for unlocking the device, such as fingerprint detection, another technique, or a combination of techniques. InFIG. 23Y, a fingerprint2306-2 is detected onfingerprint sensor169. In this example, fingerprint2306-2 matches an enrolled fingerprint authorized to unlockdevice100.
FIGS.23Z-23DD illustrate an exemplary response bydevice100 to detection of a fingerprint2306-2 onfingerprint sensor169, while displaying passcodeentry user interface2314. In FIGS.23Z-23CC,progress indicator2318 is progressively modified by filling in geometric shapes inprogress indicator2318, one at a time. In some embodiments,progress indicator2318 is progressively modified whiledevice100 determines whether the detected fingerprint2306-2 matches an enrolled fingerprint authorized to unlockdevice100. In some embodiments, upon determining that a fingerprint2306-2 received while displaying passcodeentry user interface2314 matches an enrolled fingerprint authorized to unlockdevice100,progress indicator2318 is instantly modified to display all the geometric shapes as being filled in. FIG.23DD illustrates an unlocked-mode user interface2308, displayed afterdevice100 displays the user interfaces shown in FIGS.23Y-23CC anddevice100 has made a determination that the detected fingerprint matches an enrolled fingerprint authorized to unlockdevice100.
FIGS.23EE and23FF illustrate an exemplary response bydevice100 to detection of a fingerprint2310-6, byfingerprint sensor169, while displaying passcodeentry user interface2314. For example, FIG.23EE followsFIGS. 23W-23X, afterdevice100 detects finger gesture2326 ontouch screen112. FIG.23FF illustrates an exemplary response bydevice100 to detection of a fingerprint2310-6 (shown in FIG.23EE) that does not match any enrolled fingerprint authorized to unlockdevice100. In FIG.23FF, a visual cue, such as third visual cue2316 (e.g., “try again”) is displayed, andprogress indicator2318 is displayed as being shaken from side to side for a predetermined amount of time, for a predetermined number of times and/or at a predetermined speed.
FIGS. 24A-24D are flow diagrams illustrating amethod2400 of providing different unlock modes in accordance with some embodiments. Themethod2400 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and fingerprint sensor. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod2400 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod2400 provides an intuitive way to provide different unlock modes. The method reduces the cognitive burden on a user when providing different unlock modes, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to unlock an electronic device faster and more efficiently conserves power and increases the time between battery charges.
While the device is in a locked mode of operation in which access to a respective set of features of the electronic device is locked, the device detects (2406), with the fingerprint sensor, a first input that corresponds to a request to initiate unlocking the device. In some embodiments, prior to detecting the first input, the device displays (2402) an unlock-initiation user interface (e.g., a slide-to-unlock user interface, shown inFIG. 23U) that does not include a passcode entry user interface, wherein while the unlock-initiation user interface is displayed, the device is enabled to be unlocked using a fingerprint but is not enabled to be unlocked using a passcode. For example, in a slide-to-unlock user interface, a passcode entry user interface is not displayed and thus there is no way to enter a passcode to unlock the device. In some embodiments, prior to detecting the first input, while the display of the device is in a low power mode (e.g., the display is off and/or the display backlight is off), the device enables (2404) the device to be unlocked using a fingerprint without enabling the device to be unlocked using a passcode. For example, if the display is off and the display backlight is off, a passcode entry user interface is not displayed and thus there is no way to enter a passcode to unlock the device.
The device performs several operations in response to detecting (2408) the first input with the fingerprint sensor inmethod2400. In response to detecting (2408) the first input with the fingerprint sensor, the device determines (2410) whether the first input meets one of unlock criteria, first unlock-failure criteria, or second unlock-failure criteria. In accordance with a determination that the first input meets the unlock criteria, the device transitions (2412) the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked. In some embodiments, the unlock criteria include (2414) a criterion that is met when the first input includes a fingerprint detected with the fingerprint sensor that matches a fingerprint that is enrolled with the device. For example, if the first input corresponds to an enrolled fingerprint authorized to unlock the device, the device transitions from a locked mode to an unlocked mode, as seen inFIGS. 23B and 23C.
In some embodiments, in accordance with a determination that the first input does not meet the unlock criteria, the device displays (2416) a passcode entry user interface. For example, if the first input is fingerprint2310-3 inFIG. 23I, which the device determines does not match any enrolled fingerprint authorized to unlockdevice100, the device displays exemplary passcodeentry user interface2314 inFIG. 23K. In some embodiments, in accordance with the determination that the first input meets first unlock-failure criteria, the device displays (2418) a first unlock interface that includes the passcode entry user interface, and a visual indication that the device is enabled to be unlocked using a fingerprint.
In some embodiments, in accordance with the determination that the first input meets second unlock-failure criteria, the device displays (2420) a second unlock interface that includes the passcode entry user interface, and a visual indication that the device has been disabled from being unlocked using a fingerprint. For example,FIG. 23T illustrates an exemplary second unlock interface that includes the passcodeentry user interface2314, and a visual indication that the device has been disabled from being unlocked using a fingerprint (e.g., fourth visual cue2322).
In some circumstances, while the device displays (2422) the passcode entry user interface, the device receives a passcode entered via the passcode entry user interface. For example,FIGS. 23K-FIG.23O illustratedevice100 receiving a passcode entered via passcodeentry user interface2314. In response to receiving the passcode, and in accordance with a determination that the passcode matches a current passcode for the device, the device transitions the device from the locked mode of operation to the unlocked mode of operation (e.g.,FIG. 23P). In accordance with a determination that the passcode does not match the current passcode for the device, the device maintains the device in the locked mode (e.g.,FIG. 23Q).
In some embodiments, in response to receiving the passcode, the device determines (2424) whether passcode-timeout criteria have been met, the passcode-timeout criteria including a criterion that is met when at least a first number of unsuccessful passcode unlock attempts have been made (e.g., between one and four unsuccessful passcode unlock attempts). Alternatively, the passcode-timeout criteria includes a criterion that is met when at least a first number of unsuccessful passcode unlock attempts have been made within a predefined time period. In accordance with a determination that the passcode-timeout criteria have been met, the device disables the device from being unlocked using a passcode for a timeout period of time. For example, the device ceases to display the passcode entry user interface, ceases to accept input for the passcode entry user interface and/or disables unlocking via the passcode entry user interface even if the current passcode is entered in the passcode entry user interface.
In some embodiments, in response to receiving the passcode, the device determines (2426) whether data-preclusion criteria have been met, the data-preclusion criteria including a criterion that is met when at least a second number of unsuccessful passcode unlock attempts have been made (e.g., between 5 and 20 unsuccessful passcode unlock attempts). Alternatively, the data-preclusion criteria includes a criterion that is met when at least the second number of unsuccessful passcode unlock attempts have been made within a predefined time period. In accordance with a determination that the data-preclusion criteria have been met, the device renders private data stored on the device unusable. For example, the device deletes, encrypts or otherwise removes the ability to access private data such user communications, contact information, financial information, account information and optionally other data on the device. In some embodiments, when the data-preclusion criteria have been met, the device performs a device-disable operation that renders the device unusable.
In some embodiments, the passcode entry user interface includes (2428) a progress indicator that provides a visual indication of progress toward entering a passcode when characters are entered via the passcode entry user interface. For example, the progress indicator is a sequence of circles or other geometric shapes (e.g., as inFIGS. 23K to 23O) that each correspond to a character in the passcode, which are filled in or highlighted as characters are entered in the passcode entry user interface.
In some embodiments, while the passcode entry user interface is displayed on the display, the device detects (2430) a fingerprint on the fingerprint sensor, and in response to detecting the fingerprint on the fingerprint sensor, displays an animation in the progress indicator that indicates progress towards unlocking the device. For example, an animation that indicates that progress is being made toward unlocking the device (e.g., in FIGS.23Y to23CC) is provided in response to detecting the fingerprint, even though the user at the moment is not entering individual characters in the passcode with a keyboard.
In some embodiments, the device receives (2432) an unlock request to unlock the device that includes authentication information. For example, the device receives a passcode entered via the passcode entry user interface or a fingerprint detected on a fingerprint sensor. While receiving the authentication information, the device displays an animation of the progress indicator changing from a first state (e.g., the progress indicator comprising a sequence of empty circles or other geometric objects as inFIG. 23Y) to a second state (e.g., the progress indicator comprising a sequence of full circles or other geometric objects as in FIG.23CC). In response to receiving the unlock request, the device determines whether the authentication information is sufficient to unlock the device. In accordance with a determination that the authentication information is sufficient to unlock the device (e.g., a passcode that matches a previously established passcode or a fingerprint that matches a previously enrolled fingerprint that is authorized to unlock the device), the device transitions the device from the locked mode of operation to the unlocked mode of operation, and in accordance with a determination that the authentication information is not sufficient to unlock the device (e.g., a passcode that does not match a previously established passcode or a fingerprint that does not match a previously enrolled fingerprint authorized to unlock the device), the device maintains the device in the locked mode of operation and displays an authentication rejection animation (e.g., shaking the progress indicator from side to side) in which the progress indicator changes (e.g., reverts or is reset) from the second state to the first state. In some embodiments, the same authentication rejection animation is displayed regardless of whether the authentication information is a passcode or a fingerprint.
Themethod2400 further includes: in accordance with a determination that the first input meets the first unlock-failure criteria, the device maintains (2434) the device in the locked mode and adjusts unlock settings of the device so that the device is enabled to be unlocked via an unlock operation in a first set of one or more unlock operations. For example, the device enables passcode entry by displaying a passcode interface in addition to still permitting use of the fingerprint sensor to unlock in the first set of unlock operations. In some embodiments, the first set of unlock operations includes (2436) an unlock operation that uses a fingerprint to unlock the device and another unlock operation that uses a passcode to unlock the device. In some embodiments, the device is enabled to be unlocked using a fingerprint when the device is configured to transition from the locked mode of operation to the unlocked mode of operation in response to detecting a fingerprint on the fingerprint sensor that matches a previously enrolled fingerprint (e.g., an enrolled fingerprint authorized to unlock the device). In some embodiments, the device is enabled to be unlocked using a passcode when the device is configured to transition from the locked mode of operation to the unlocked mode of operation in response to detecting entry of a passcode that matches a previously established passcode.
In accordance with a determination that the first input meets the second unlock-failure criteria, the device maintains (2438) the device in the locked mode and adjusts unlock settings so that the device is enabled to be unlocked via an unlock operation in a second set of one or more unlock operations that is different from the first set of unlock operations. For example, the device enables the passcode entry but fingerprint authentication is disabled in the second set of unlock operations. In some embodiments, the second set of unlock operations includes (2440) an unlock operation that uses a passcode to unlock the device and excludes an unlock operation that uses a fingerprint to unlock the device. For example,FIG. 23T shows a user interface corresponding to a second set of unlock operations that includes an unlock operation that uses a passcode to unlock the device and excludes an unlock operation that uses a fingerprint to unlock the device.
In some embodiments, the first input includes a fingerprint input on the fingerprint sensor. The first unlock-failure criteria includes (2442) a criterion that is met when the device has detected at least a first threshold number of unsuccessful attempts to unlock the device with one or more unrecognized fingerprints (e.g., detected fingerprints that are not found to match any of the enrolled fingerprints), and the second unlock-failure criteria includes a criterion that is met when the device has detected at least a second threshold number of unsuccessful attempts to unlock the device with one or more unrecognized fingerprints, where the second threshold number is greater than the first threshold number. For example, the second unlock-failure criteria are met when the device has detected five unsuccessful fingerprint authorization attempts. In some embodiments, the device maintains a counter of the number of unsuccessful attempts to unlock the device, where such record is only reset after successfully unlocking the device. In some embodiments, the device maintains a counter of the number of unsuccessful attempts to unlock the device by fingerprint detection, where such record is only reset after successfully unlocking the device.
In some embodiments, the first unlock-failure criteria includes (2444) a criterion that is met when the device has detected less than the second number of unsuccessful attempts to unlock the device with one or more unrecognized fingerprints. For example, the first unlock-failure criteria are met when the device has detected one to four unsuccessful fingerprint authorization attempts.
It should be understood that the particular order in which the operations inFIGS. 24A-24D have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod2400 described above with respect toFIGS. 24A-24D. For example, the fingerprints, contacts, gestures and user interface objects described above with reference tomethod2400 optionally have one or more of the characteristics of the fingerprints, contacts, gestures and user interface objects described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 25 shows a functional block diagram of anelectronic device2500 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 25 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 25, anelectronic device2500 includes adisplay unit2502 configured to display a graphical user interface, afingerprint sensor unit2506; and aprocessing unit2508 coupled to thedisplay unit2502 and thefingerprint sensor unit2506. In some embodiments, theelectronic device2500 includes a touch-sensitive surface unit2504 configured to receive contacts, coupled to theprocessing unit2508, thefingerprint sensor unit2506 and thedisplay unit2502. In some embodiments, theprocessing unit2508 includes a determiningunit2510, atransitioning unit2512, a maintainingunit2514, an adjusting unit2516, an enablingunit2518, areceiving unit2520, a disablingunit2522, arendering unit2524 and a detectingunit2526.
While the device is in a locked mode of operation in which access to a respective set of features of the electronic device is locked, thefingerprint sensor unit2508, detects a first input that corresponds to a request to initiate unlocking the device. In response to detecting the first input withfingerprint sensor unit2506,processing unit2508 is configured to: determine whether the first input meets one of unlock criteria, first unlock-failure criteria, or second unlock-failure criteria (e.g., with determining unit2510).Processing unit2508 is further configured to: in accordance with a determination that the first input meets the unlock criteria, transition the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked (e.g., with transitioning unit2512).Processing unit2508 is further configured to: in accordance with a determination that the first input meets the first unlock-failure criteria, maintain (e.g., with maintaining unit2514) the device in the locked mode and adjust (e.g., with adjusting unit2516) unlock settings so that the device is enabled to be unlocked via an unlock operation in a first set of one or more unlock operations.Processing unit2508 is further configured to: in accordance with a determination that the first input meets the second unlock-failure criteria, maintain (e.g., with maintaining unit2514) the device in the locked mode and adjust (e.g., with adjusting unit2516) unlock settings so that the device is enabled to be unlocked via an unlock operation in a second set of one or more unlock operations that is different from the first set of unlock operations.
In some embodiments, the first input includes a fingerprint input onfingerprint sensor unit2506, the first unlock-failure criteria includes a criterion that is met when the device has detected at least a first threshold number of unsuccessful attempts to unlock the device with one or more unrecognized fingerprints, and the second unlock-failure criteria includes a criterion that is met when the device has detected at least a second threshold number of unsuccessful attempts to unlock the device with one or more unrecognized fingerprints, where the second threshold number is greater than the first threshold number.
In some embodiments, prior to detecting the first input, the device displays withdisplay unit2502, an unlock-initiation user interface that does not include a passcode entry user interface. Furthermore, while the unlock-initiation user interface is displayed, the device is enabled to be unlocked using a fingerprint but is not enabled to be unlocked using a passcode.
In some embodiments, theprocessing unit2508 is further configured to enable (e.g., with enabling unit2518) the device to be unlocked using a fingerprint, prior to detecting the first input, while the display of the device is in a low power mode, without enabling the device to be unlocked using a passcode.
In some embodiments, in response to detecting the first input and in accordance with a determination that the first input does not meet the unlock criteria, the device displays with display unit2502 a passcode entry user interface.
In some embodiments, in accordance with the determination that the first input meets the first unlock-failure criteria, the device displays with display unit2502 a first unlock interface that includes the passcode entry user interface, and a visual indication that the device is enabled to be unlocked using a fingerprint. In some embodiments, in accordance with the determination that the first input meets the second unlock-failure criteria, the device displays with display unit2502 a second unlock interface that includes the passcode entry user interface, and a visual indication that the device has been disabled from being unlocked using a fingerprint.
In some embodiments, prior to detecting the first input, the device displays withdisplay unit2502 an unlock-initiation user interface that does not include a passcode entry user interface. Furthermore, while the unlock-initiation user interface is displayed, the device is enabled to be unlocked using a fingerprint but is not enabled to be unlocked using a passcode.
In some embodiments, theprocessing unit2508 is further configured to enable (e.g., with enabling unit2518) the device to be unlocked using a fingerprint, prior to detecting the first input, while the display of the device is in a low power mode, without enabling the device to be unlocked using a passcode.
In some embodiments, in response to detecting the first input and in accordance with a determination that the first input does not meet the unlock criteria, the device displays with display unit2502 a passcode entry user interface.
In some embodiments, in accordance with the determination that the first input meets the first unlock-failure criteria, the device displays with display unit2502 a first unlock interface that includes the passcode entry user interface and a visual indication that the device is enabled to be unlocked using a fingerprint.
In some embodiments, while the device displays withdisplay unit2502 the passcode entry user interface, theprocessing unit2508 is further configured to: receive (e.g., with receiving unit2520) a passcode entered via the passcode entry user interface; transition (e.g., with transitioning unit2512) the device from the locked mode of operation to the unlocked mode of operation, in response to receiving the passcode and in accordance with a determination that the passcode matches a current passcode for the device; and maintain (e.g., with maintaining unit2514) the device in the locked mode, in response to receiving the passcode and in accordance with a determination that the passcode does not match the current passcode for the device.
In some embodiments, theprocessing unit2508 is further configured to: determine (e.g., with determining unit2510), in response to receiving the passcode, whether passcode-timeout criteria have been met, the passcode-timeout criteria including a criterion that is met when at least a first number of unsuccessful passcode unlock attempts have been made, and disable (e.g., with disabling unit2522) the device from being unlocked using a passcode for a timeout period of time, in accordance with a determination that the passcode-timeout criteria have been met.
In some embodiments, theprocessing unit2508 is further configured to: determine (e.g., with determining unit2510), in response to receiving the passcode, whether data-preclusion criteria have been met, the data-preclusion criteria including a criterion that is met when at least a second number of unsuccessful passcode unlock attempts have been made, and render (e.g., with rendering unit2524), in response to receiving the passcode, private data stored on the device unusable, in accordance with a determination that the data-preclusion criteria have been met.
In some embodiments, while the passcode entry user interface is displayed on the display, the device detects, with thefingerprint sensor unit2506, a fingerprint onfingerprint sensor unit2506, and in response to detecting the fingerprint onfingerprint sensor unit2506, displays withdisplay unit2502, an animation in the progress indicator that indicates progress towards unlocking the device (e.g., progress toward filling in the passcode).
In some embodiments,processing unit2508 is further configured to: receive (e.g. with receiving unit2520), an unlock request to unlock the device that includes authentication information. In such embodiments,display unit2502 displays an animation of the progress indicator changing from a first state to a second state, while receiving the authentication information.Processing unit2508 is further configured to determine (e.g., with determining unit2510), in response to receiving the unlock request, whether the authentication information is sufficient to unlock the device, transition (e.g. with transitioning unit2512) the device from the locked mode of operation to the unlocked mode of operation, in accordance with a determination that the authentication information is sufficient to unlock the device; and maintain (e.g., with maintaining unit2514), the device in the locked mode of operation, in accordance with a determination that the authentication information is not sufficient to unlock the device, whiledisplay unit2502 displays an authentication rejection animation in which the progress indicator changes from the second state to the first state.
The operations in the information processing methods described above are, optionally implemented by one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 24A-24D are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 25. For example,detection operation2406,determination operation2410, andenablement operation2404 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Controlling Access to Device Information and Features and Unlocking the DeviceMany electronic devices have graphical user interfaces that are displayed while the device is locked. For example, notifications and settings user interfaces can be displayed while the device is locked. However, displaying notifications or settings while the device is locked can compromise the device and/or user data, as an unauthorized user who has the device in his possession can read notifications or change device settings despite being an unauthorized user. However, suppressing display of all notifications and control of settings while the device is locked inconveniences authorized users of the device.
The methods below describe an improved way to control access to device information and features and to unlock the device. While a device with a fingerprint sensor is locked, a user interface—such as one for viewing notifications, changing settings, or viewing photos—is brought up in a limited-access mode. In a limited-access mode, the notification, settings, or photo viewing user interface provides less than full access to device information and features. For example, notifications are partially or fully redacted, device settings that can be changed are restricted, or previously stored digital photographs are not viewable. While viewing the user interface in a limited access mode, the user attempts to authenticate himself or herself with a fingerprint on the device's fingerprint sensor. If authentication is successful, the user interface changes to a full-access mode and the device is unlocked. The device remains unlocked when the full-access user interface is dismissed. If authentication is not successful, the user interface remains in its limited-access mode and the device remains locked. The device remains locked when the limited-access user interface is dismissed. This method increases security by controlling access to device information and controls prior to fingerprint authentication, yet seamlessly provides immediate access to more device information and features and unlocks the device upon successful fingerprint authentication.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to26A-26X and27A-27D includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference toFIGS. 26A-26X and27A-27D will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described inFIGS. 26A-26X on the integrated fingerprint sensor359-1 while displaying the user interfaces shown inFIGS. 26A-26X on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described inFIGS. 26A-26X on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown inFIGS. 26A-26X on thedisplay450; in such embodiments, the contacts shown inFIGS. 26A-26X optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIG. 26A illustrates lockeddevice interface2600 displayed on a display of a device (e.g., ontouch screen112 of device100).Locked device interface2600 is a user interface that indicates to users ofdevice100 thatdevice100 is in locked mode (i.e.,device100 is locked), and thus access to one or more features ofdevice100 is locked. For example, whiledevice100 is locked,user interface400 is inaccessible (and thus the user is unable to launch at least some applications on device100). In some embodiments, lockeddevice interface2600 provides limited information to users. For example, lockeddevice interface2600 includes current date andtime2602 and instructions orhints2604 on how to unlockdevice100.
Locked device interface2600 also includes one or more user interface objects for displaying respective user interfaces or launching specific applications. For example, lockeddevice interface2600 includeshandles2606 and2608, andicon2610.Handle2606 is adjacent to the top edge oftouch screen112, and2608 is adjacent to the bottom edge oftouch screen112. A user performs a gesture (e.g., a swipe gesture) starting fromhandle2606 to activate display of a notification interface (e.g.,notification interface2616,FIG. 26C). A user performs a gesture (e.g., a swipe gesture) starting fromhandle2608 to activate display of settings-management interface (e.g., settings-management interface2650,FIG. 26N). A user performs a gesture (e.g., a swipe gesture) onicon2610 to activate display of a camera interface (e.g.,camera interface2678,FIG. 26U).
FIG. 26A illustrates a gesture detected ontouch screen112 whiledevice100 is in a locked mode. The gesture (e.g., a swipe gesture) includescontact2612 detected onhandle2606, andcontact2612, while detected onhandle2606, moving indirection2614. In response to detecting the gesture,device100displays notification interface2616 ontouch screen112, as shown inFIG. 26C, anddevice100 remains in locked mode.
In some embodiments, the transition from displaying lockeddevice interface2600 to displayingnotification interface2616 includes an animation in whichnotification interface2616 slides ontotouch screen112 in accordance with the movement ofcontact2612, as shown inFIGS. 26A-26C;contact2612swipes notification interface2616 ontotouch screen112.
In the animation,notification interface2616 slides over lockedscreen interface2600. In some embodiments,notification interface2616 is translucent and lockeddevice interface2600 is partially visible (e.g., visible but blurred or faint) undernotification interface2616, as shown inFIG. 26C. For example, current date andtime2602 and unlockinstructions2604 are visible but faint undernotification interface2616. In some other embodiments,notification interface2616 is opaque and lockeddevice interface2600 is not visible undernotification interface2616.
Notification interface2616 is a user interface for displaying notifications2620 associated with respective applications ondevice100. In some embodiments,notification interface2616 includes one or more sections2618. Each respective section2618 is associated with a respective application ondevice100, and displays one or more notifications2620 associated with that respective application. A respective notification2620 includes one or more portions for displaying respective fields of information. For example, a notification for a message or email includes respective portions for a sender, a date/time, and an indicator of content (e.g., the subject, and/or a snippet of the message/email body). As another example, a notification for a calendar event invite includes respective portions for a name and/or description of the event, a source of the invite (e.g., a contact that sent the invite), and a date/time of the event. What portions and information a notification2620 includes is typically determined by the respective associated application.
In some embodiments,notification interface2616 also includes two or more view filters2638. A respective view filter2638 corresponds to a respective set of criteria for filtering notifications2620 displayed innotification interface2616; notifications2620 that satisfy the criteria are displayed and the notifications2620 that don't satisfy the criteria are hidden. For example, inFIG. 5C, view filter “All”2638-1 is active; all outstanding notifications2620 (other than notifications that are hidden in accordance with restrictions on access tonotification interface2616, as described below) are displayed. A non-active view filter2638 is activated by a gesture performed on that view filter (e.g., a tap gesture). For example, in response to detecting a tap gesture performed on view filter “Missed”2638-2,device100 displays notifications2620 that have not been addressed within a predetermined time period (e.g., the prior 24 hours) innotification interface2616, and omits display of notifications2620 that do not satisfy this not-addressed-within-time-period criterion.
Becausedevice100 is locked when the gesture withcontact2612 is detected,notification interface2616 is displayed in a limited-access mode. Whilenotification interface2616 is in the limited-access mode, access tonotification interface2616 is restricted. In some embodiments, restrictions on access tonotification interface2616 include one or more of the following: redaction of information in one or more of notifications2620, omission from display (e.g., hiding from display) of one or more sections2618 that otherwise have outstanding notifications, and omission from display of one or more view filters2638. For example,FIG. 26C shows redacted notifications2620 innotification interface2616. As an alternative example.FIG. 26D shows redacted notifications2620 and omission of section2618-2 innotification interface2616. Also,FIGS. 26C and 26D both show that view filter “Today”2638-3 (FIG. 26H) is hidden.
In some embodiments, redaction of a notification2620 includes replacement of all or some portions of the notification with generic, placeholder text. For example, inFIG. 5C, notification2620-1 is a notification for a message received by a messaging application ondevice100. Notification2620-1 includesportion2622 for identifying the sender of the message,portion2624 for a timestamp of the message (e.g., date/time the message was sent or received), and portion2626 for all or some (e.g., a snippet) of the contents of the message. When notification2620-1 is not redacted, theportions2622,2624, and2626 are filled with their actual respective contents (i.e., actual sender name, actual timestamp, and actual message contents, respectively). When notification2620-1 is redacted, one or more ofportions2622,2624, and2626 are replaced with respective generic text. As shown inFIG. 26C, notification2620-1 is partially redacted.Portion2622 shows the actual sender name, butportion2624 shows generic text “Time” instead of the actual timestamp, and portion2626 shows generic text “Message” instead of a snippet of the actual message.
As another example, notification2620-2 inFIG. 26C is a notification for a calendar event invite received by a calendar application ondevice100. Notification2620-2 includesportion2628 for the name or description of the event,portion2630 for a source of the invite (e.g., the inviter), andportion2632 for the time of the event. InFIG. 26C, actual contents inportions2628,2630, and2632 are replaced with generic text “Event,” “Invitation from Contact,” and “Time,” respectively.
In some other embodiments, redaction of a notification2620 includes visual obscuring of all or some portions of the notification2620, as opposed to replacement of all or some portions of the notification2620 with respective generic text. The visual obscuring includes, for example, blacking out (e.g., with censor bars), blurring, or pixelating (e.g., as described above with reference to method2100).
In some embodiments, restrictions on access tonotification interface2616 further include an inability of users to open or otherwise access the underlying content or application corresponding to a notification. For example, whilenotification interface2616 is displayed in full-access mode, a user can perform a gesture (e.g., a tap gesture) on notification2620-1 to open a messages application and view the full message corresponding to notification2620-1, perform a gesture on notification2620-2 to open a calendar application and view the full event invite corresponding to notification2620-2, and perform a gesture on notification2620-3 or2620-4 to open an email application and view the respective full message corresponding to notification2620-3 or2620-4, respectively. Conversely, whilenotification interface2616 is displayed in limited-access mode, these full access features are disabled; gestures detected on notifications2620 do not activate access to the full content or launch the corresponding application.
Whilenotification interface2616 is displayed in limited-access mode, a gesture can be performed by the user to dismissnotification interface2616. For example,FIGS. 26C and 26D each show a gesture detected ontouch screen112. The gesture (e.g., a swipe gesture) includescontact2634 detected onhandle2606, andcontact2634, while detected onhandle2606, moving indirection2636. In response to detecting the gesture,device100 displays lockeddevice interface2600 ontouch screen112, as shown inFIG. 26F. Because no user has been successfully authenticated sincedevice100 entered into locked mode,device100 remains in locked mode (and thus displays lockeddevice interface2600 on touch screen112).
In some embodiments, the transition from displayingnotification interface2616 to displaying lockeddevice interface2600 includes an animation in whichnotification interface2616 slides offtouch screen112, following the movement ofcontact2634, revealing lockeddevice interface2600, as shown inFIGS. 26D-26F;contact2634swipes notification interface2616 offtouch screen112.
Continuing inFIG. 26G, which includes the user interface shown inFIG. 26C,fingerprint2640 is detected onfingerprint sensor169.Device100 determines iffingerprint2640 is one of one or more fingerprints enrolled withdevice100. Ifdevice100 determines thatfingerprint2640 is not one of the enrolled fingerprints (e.g., theuser applying fingerprint2640 has not been authenticated), thendevice100 maintains display ofnotification interface2616 in limited-access mode anddevice100 maintains itself in locked mode.
Ifdevice100 determines thatfingerprint2640 is one of the enrolled fingerprints (e.g., theuser applying fingerprint2640 has been successfully authenticated), thendevice100displays notification interface2616 in full-access mode anddevice100 transitions itself from locked mode to unlocked mode, as shown inFIG. 26H. Display ofnotification interface2616 in full-access mode includes one or more of the following: un-redacting notifications2620 that were redacted whilenotification interface2616 was displayed in limited-access mode, displaying any section2618 that was omitted from display whilenotification interface2616 was displayed in limited-access mode, and displaying (and making accessible) view filters2638 that were omitted from display (and thus inaccessible) whilenotification interface2616 was displayed in limited-access mode. Thus, for example, as shown inFIG. 26H, notifications2620 are not redacted; the portions in the respective notifications2620 display actual content. Also, section2618-2 is displayed (compared todevice100 as depicted inFIG. 26D). Further, view filter “Today”2638-3 is displayed; when view filter “Today”2638-3 is activated, the notifications2620 displayed innotification interface2616 are notifications for the current day (e.g., messages or mails received on the current day, calendar events for the current day).
As described above, iffingerprint2640 is one of the enrolled fingerprints, thendevice100 transitions itself from locked mode to unlocked mode. The transition includes transitioning from lockeddevice interface2600 touser interface400, which takes place belownotification interface2616 becausenotification interface2616 is overlaid above lockeddevice interface2600 anduser interface400. In some embodiments, this transition is not visible to the user (e.g., becausenotification interface2616 is opaque). In some embodiments,notification interface2616 is translucent, and thus the transition is visible to the user (e.g., as an animation) but blurred or faint. As shown inFIGS. 26G-26H, when the transition to unlocked mode occurs, user interface elements in lockeddevice interface2600, such as date/time2602 andinstructions2604, are no longer displayed belownotification interface2616, and application icons inuser interface400 are displayed belownotification interface2616 instead.
FIG. 26I showsnotification interface2616 displayed in full-access mode anddevice100 in unlocked mode. Whilenotification interface2616 is displayed in full-access mode anddevice100 is in unlocked mode, a gesture is detected ontouch screen112. The gesture (e.g., a swipe gesture) includescontact2642 detected onhandle2606, andcontact2642, while detected onhandle2606, moving in direction2644. In response to detecting the gesture,device100 dismissesnotification interface2616 fromtouch screen112, as shown inFIG. 26J.User interface400 is displayed ontouch screen112, asdevice100 remains in unlocked mode after dismissal ofnotification interface2616; the user has access to applications that were previously inaccessible becauseuser interface400 was inaccessible.
FIG. 26K summarizes the transition of device100 (from device100-athru100-d) from locked mode to unlocked mode whennotification interface2616 is displayed, as depicted inFIGS. 26A-26J. Device100-ais in locked mode and lockeddevice interface2600 is displayed, andnotification interface2616 is not displayed. When display ofnotification interface2616 is activated, as shown for device100-b, lockeddevice interface2600 is partially visible under atranslucent notification interface2616 that is displayed in limited-access mode. When an enrolled fingerprint is detected,device100 transitions from locked mode to unlocked mode andnotification interface2616 is displayed in full-access mode (device100-bto device100-c); lockeddevice interface2600 transitions touser interface400. Whennotification interface2616, displayed in full-access mode, is dismissed,user interface400 is displayed on the display of device100-d.
FIG. 26L illustrates lockeddevice interface2600 displayed ontouch screen112 ofdevice100;device100 is in locked mode.FIG. 26L also illustrates a gesture detected ontouch screen112. The gesture (e.g., a swipe gesture) includescontact2646 detected onhandle2608, andcontact2646, while detected onhandle2608, moving indirection2648. In response to detecting the gesture,device100 displays settings-management interface2650 ontouch screen112, as shown inFIG. 26N, anddevice100 remains in locked mode.
In some embodiments, the transition from displaying lockeddevice interface2600 to displaying settings-management interface2650 includes an animation in which settings-management interface2650 slides ontotouch screen112 in accordance with the movement ofcontact2646, as shown inFIGS. 26L-26N;contact2646 swipes settings-management interface2650 ontotouch screen112.
In the animation, settings-management interface2650 slides over lockedscreen interface2600. In some embodiments,notification interface2616 is opaque, and whatever portion of lockeddevice interface2600 that is overlaid by settings-management interface2650 is not visible under settings-management interface2650, and the portion of lockeddevice interface2600 not overlaid by settings-management interface2650 is displayed in the clear or displayed as blurred or faint, as shown inFIG. 26N, for example. In some other embodiments, settings-management interface2650 is translucent and lockeddevice interface2600 is visible but blurred or faint under settings-management interface2650 (e.g., as withnotification interface2616 depicted inFIG. 26C).
Settings-management interface2650 is a user interface associated with one or more device settings ondevice100. Settings-management interface2650 includes user interface objects2652 for changing respective settings. For example, settings-management interface2650 includes airplane mode icon2652-1 for toggling airplane mode on/off (when airplane mode is on,device100 does not transmit wireless signals), Wi-Fi icon2652-2 for toggling Wi-Fi on or off, Bluetooth icon2652-3 for toggling Bluetooth on or off, do-not-disturb icon2652-4 for toggling a do-not-disturb mode on or off (whendevice100 is in do-not-disturb mode, audible alerts for notifications2620 are suppressed, but the notifications themselves are, optionally, still displayed on touch screen112), and orientation lock icon2652-5 for toggling an orientation lock on or off. A respective icon2652 indicates the current status of the respective corresponding setting, and toggles the respective corresponding setting in response to activation of (e.g., by a tap gesture on) the respective icon2652. Settings-management interface2650 also optionally includesbrightness control2654 for controlling the brightness level oftouch screen112.
In some embodiments, settings-management interface2650 also includes music playback controls2656 for controlling music playback,icon2658 for initiating a process for wirelessly sharing a file with another device,icon2660 for initiating a process for wirelessly streaming media content to another device, and one or more icons2662 for launching predetermined applications or activating predetermined functionality. For example, settings-management interface2650 includes icon2662-1 for launching a flashlight application or activating flashlight functionality, icon2662-2 for launching a clock/timer application, icon2662-3 for launching a calculator application, and icon2662-4 for launching a camera application (e.g., camera module143).
Asdevice100 was locked when the gesture withcontact2646 was performed, settings-management interface2650 is displayed in a limited-access mode. While settings-management interface2650 is in the limited-access mode, one or more of the icons, controls, etc. (e.g., any of icons2652;brightness control2654; music controls2656;icons2658,2660, and2662) for changing settings, launching applications, or activating functionality are disabled. For example, inFIG. 26N, icon2652-1 is disabled.Tap gesture2664 on icon2652-1 does not toggle, and thus does not affect, the airplane mode. In some embodiments, the disablement of an icon2652 is visually indicated by graying out or shading of the icon (e.g., as with icon2652-1 inFIG. 26N).
While settings-management interface2650 is displayed in limited-access mode, a gesture can be performed by the user to dismiss settings-management interface2650, similar to the dismissal ofnotification interface2616 as shown inFIGS. 26C-26F. For example, a gesture (e.g., a swipe gesture) onhandle2608 that is the reverse of the gesture withcontact2646 is detected (not shown) ontouch screen112 while settings-management interface2650 is displayed in limited-access mode; the gesture is detected onhandle2608 and the corresponding contact moves in the direction opposite ofdirection2648. In response to detecting the gesture,device100 displays lockeddevice interface2600 ontouch screen112, as inFIG. 26L. Because no user has been successfully authenticated sincedevice100 entered into locked mode,device100 remains in locked mode (and thus displays lockeddevice interface2600 on touch screen112).
In some embodiments, the transition from displaying settings-management interface2650 to displaying lockeddevice interface2600 includes an animation (not shown) in which settings-management interface2650 slides offtouch screen112, following the movement of contact in the dismissal gesture, revealing lockeddevice interface2600, similar to the animation shown for the dismissal ofnotification interface2616 shown inFIGS. 26D-26F; the dismissal gesture swipes settings-management interface2650 offtouch screen112.
Returning toFIG. 26N,fingerprint2666 is detected onfingerprint sensor169.Device100 determines iffingerprint2666 is one of one or more fingerprints enrolled withdevice100. Ifdevice100 determines thatfingerprint2666 is not one of the enrolled fingerprints, thendevice100 maintains display of settings-management interface2650 in limited-access mode anddevice100 maintains itself in locked mode.
Ifdevice100 determines thatfingerprint2666 is one of the enrolled fingerprints, thendevice100 displays settings-management interface2650 in full-access mode anddevice100 transitions itself from locked mode to unlocked mode, as shown inFIG. 26O. Display of settings-management interface2650 in full-access mode includes enabling any icons, controls, etc. (e.g., any of icons2652;brightness control2654; music controls2656;icons2658,2660, and2662) that were disabled while settings-management interface2650 was displayed in limited-access mode. For example, inFIG. 26O, icon2652-1 is enabled; icon2652-1 is no longer grayed out.Tap gesture2668 on icon2652-1 toggles the airplane mode, as shown inFIG. 26P; inFIG. 26P, icon2652-1 changes contrast (compare to icon2652-1 inFIG. 26O), indicating that the airplane mode setting has been toggled from the setting inFIG. 26O.
As described above, iffingerprint2666 is one of the enrolled fingerprints, thendevice100 transitions itself from locked mode to unlocked mode. The transition optionally includes a transition from lockeddevice interface2600 touser interface400, taking place below settings-management interface2650 that is overlaid above lockeddevice interface2600 anduser interface400. In some embodiments, this transition is not visible to the user. In some embodiments, this transition is visible to the user, as an animation of lockeddevice interface2600 transitioning touser interface400; settings-management interface2650 is translucent and/or at most partially covers lockeddevice interface2600/user interface400, and thus the animation andinterfaces2600 and400 are visible, but optionally blurred or faint below settings-management interface2650. As shown inFIGS. 26N-26O, when the transition to unlocked mode occurs, user interface elements in lockeddevice interface2600, such as date/time2602, are no longer displayed, and application icons inuser interface400 are displayed. In some embodiments,user interface400 is the user interface that was displayed immediately prior to the device entering the locked mode, which may be a different interface from the interface that displays application icons. In other words, the interface that displays application icons inFIGS. 26H-26K and26O-26R is merely exemplary of an unlocked mode user interface.
FIG. 26Q shows settings-management interface2650 displayed in full-access mode anddevice100 in unlocked mode. While settings-management interface2650 is displayed in full-access mode anddevice100 is in unlocked mode, a gesture is detected ontouch screen112. The gesture (e.g., a swipe gesture) includescontact2670 detected onhandle2608, andcontact2670, while detected onhandle2608, moving indirection2672. In response to detecting the gesture,device100 dismisses settings-management interface2650 fromtouch screen112, as shown inFIG. 26R.User interface400 is displayed ontouch screen112, asdevice100 remains in unlocked mode after dismissal of settings-management interface2650; the user has access to applications that were previously inaccessible becauseuser interface400 was inaccessible.
FIG. 26S illustrates lockeddevice interface2600 displayed ontouch screen112 ofdevice100;device100 is in locked mode.FIG. 26S also illustrates a gesture detected ontouch screen112. The gesture (e.g., a swipe gesture) includescontact2674 detected onicon2610, andcontact2674, while detected onicon2610, moving indirection2676. In response to detecting the gesture,device100displays camera interface2678 ontouch screen112, as shown inFIG. 26U, anddevice100 remains in locked mode.
In some embodiments, the transition from displaying lockeddevice interface2600 to displayingcamera interface2678 includes an animation in whichcamera interface2678 slides ontotouch screen112 in accordance with the movement ofcontact2674, as shown inFIGS. 26S-26U;contact2674 swipescamera interface2678 ontotouch screen112.
In the animation,camera interface2678 slides over lockedscreen interface2600. In some embodiments,camera interface2678 is opaque, and lockeddevice interface2600 is not visible undercamera interface2678, as shown inFIG. 26U, for example.
In some other embodiments, the transition from displaying lockeddevice interface2600 to displayingcamera interface2678 includes an animation in which lockeddevice interface2600 slides off oftouch screen112 in accordance with the movement ofcontact2674 to revealcamera interface2678.
Camera interface2678 is an interface associated with a camera application (e.g., camera module143) ondevice100.Camera interface2678 includescamera preview2680,flash control2682, front/back camera toggle2684, shutter/capture button2686, image effectscontrol2688, andcamera roll icon2690.Device100 ceases to displaycamera interface2678 and displays camera roll interface2693 (FIG. 26V) in response to detection of gesture2692 (e.g., a tap gesture) oncamera roll icon2690. Photos2697 (FIG. 26W) captured or otherwise stored ondevice100 are displayed incamera roll interface2693.Camera roll interface2693 also includesicon2694. In response to activation of icon2694 (e.g., by a tap gesture on camera icon2694),device100displays camera interface2678. Thus,camera icon2694 andcamera roll icon2690 are analogous controls; activation ofcamera roll icon2690 switchesdevice100 to displayingcamera roll interface2693, and activation oficon2694 switchesdevice100 to displayingcamera interface2678.
Asdevice100 was locked when the gesture withcontact2674 was performed,camera interface2678 is displayed in a limited-access mode. Whilecamera interface2678 is in limited-access mode, in response to detection ofgesture2692 oncamera roll icon2690,device100 replaces display ofcamera interface2678 in limited-access mode with display ofcamera roll interface2693 in limited-access mode. Whilecamera roll interface2693 is displayed in limited-access mode, display of images captured or otherwise stored ondevice100 is restricted. In some embodiments, the restrictions includedevice100 preventing a user from viewing images that were captured and/or stored ondevice100 prior to the device entering locked mode until the user is successfully authenticated;device100 suppresses display, incamera roll interface2693, of images captured or stored in the camera roll prior todevice100 entering locked mode. Thus, for example, inFIG. 26V, warningmessage2695 is displayed alerting users that not all photos are displayed whilecamera roll interface2693 is displayed in limited-access mode, and that the user should unlock device100 (e.g., authenticate himself) in order to view the hidden photos.
Whilecamera interface2678 orcamera roll interface2693 is displayed in limited-access mode, either can be dismissed by a press ofbutton204 ondevice100. In response to detection of a press ofbutton204 ondevice100 while eithercamera interface2678 orcamera roll interface2693 is displayed in limited-access mode,device100 displays lockeddevice interface2600 ontouch screen112, as inFIG. 26S, or alternatively, a passcode entry interface (not shown), unless the finger performing the button press has an enrolled fingerprint that is detected byfingerprint sensor169 during the button press. Because no user has been successfully authenticated sincedevice100 entered into locked mode,device100 remains in locked mode (and thus displays lockeddevice interface2600 or a passcode entry interface on touch screen112). If the finger performing the press has an enrolled fingerprint that is detected byfingerprint sensor169 during the button press, then the user is authenticated, anddevice100displays user interface400 instead of lockeddevice interface2600.
Returning todevice100 as depicted inFIG. 26V,fingerprint2696 is detected onfingerprint sensor169.Device100 determines iffingerprint2696 is one of one or more fingerprints enrolled withdevice100. Ifdevice100 determines thatfingerprint2696 is not one of the enrolled fingerprints, thendevice100 maintains display ofcamera roll interface2693 in limited-access mode anddevice100 maintains itself in locked mode. Similarly, if a fingerprint is detected onfingerprint sensor169 whilecamera interface2678 is detected,device100 determines if the fingerprint is one of the enrolled fingerprints. If the fingerprint is not one of the enrolled fingerprints, thedevice100 maintains display ofcamera interface2678 in limited-access mode anddevice100 maintains itself in locked mode.
Ifdevice100 determines thatfingerprint2696 is one of the enrolled fingerprints, thendevice100 displayscamera roll interface2693 in full-access mode anddevice100 transitions itself from locked mode to unlocked mode, as shown inFIG. 26W. Display ofcamera roll interface2693 in full-access mode includes displayingimages2697 that were not displayed whilecamera roll interface2693 was displayed in limited-access mode.
In response to activation of camera icon2694 (e.g., bytap gesture2698 on camera icon2694) whilecamera roll interface2693 is displayed in full-access mode,device100displays camera interface2678 in full-access mode anddevice100 continues in unlocked mode; switching tocamera interface2678 whilecamera roll interface2693 is displayed in full-access mode putscamera interface2678 in full-access mode.
While eithercamera interface2678 orcamera roll interface2693 is displayed in full-access mode (anddevice100 is in unlocked mode), either can be dismissed by a press ofbutton204 ondevice100. In response to detection of apress2699 ofbutton204 ondevice100 while eithercamera interface2678 orcamera roll interface2693 is displayed in full-access mode (e.g., as shown inFIG. 26W, withcamera roll interface2693 displayed in full-access mode),device100displays user interface400 ontouch screen112, as shown inFIG. 26X, asdevice100 remains in unlocked mode.
FIGS. 27A-27D are flow diagrams illustrating amethod2700 of controlling access to device information and features and unlocking the device in accordance with some embodiments. Themethod2700 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod2700 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod2700 provides an intuitive and secure way to control access to device information and features and unlock the device. The method reduces the cognitive burden on a user when controlling access to device information and features and unlocking the device, thereby creating a more efficient human-machine interface.
While the device is in a locked mode in which access to a respective set of features of the electronic device is locked (2702), the device displays (2704) a first user interface on the display, and detects (2706) a first input (e.g., a first gesture in the first user interface such as a downward swipe gesture originating in the top region of the display or at or near an edge of the display). InFIG. 26A andFIG. 26L, for example, lockeddevice interface2600 is displayed whiledevice100 is in locked mode. A swipe gesture withcontact2612 and2646, respectively, is detected ontouch screen112 starting fromhandle2606 and2608, respectively.
As another example, inFIG. 26U,camera interface2678 is displayed whiledevice100 is in locked mode.Tap gesture2692 is detected ontouch screen112, oncamera roll icon2692.
In response to detecting the first input, the device displays (2708) a second user interface on the display, where the second user interface is in a limited-access mode in which access to the second user interface is restricted in accordance with restriction criteria (e.g., at least a portion of the one or more notifications are redacted, the full messages corresponding to notifications can't be accessed without unlocking the device, and/or one or more displayed controls can't be changed). For example, in response to detecting the gesture withcontact2612,device100displays notification interface2616 in limited-access mode (FIG. 26C or26D); notifications2620 are redacted. As another example, in response to detecting the gesture withcontact2646,device100 displays settings-management interface2650 in limited-access mode (FIG. 26N); airplane mode icon2652-1 is disabled. As another example, in response to detectinggesture2692,device100 displayscamera roll interface2693 in limited-access mode (FIG. 26V);photos2697 are hidden from display.
In some embodiments, the second user interface is a user interface selected in accordance with the first input (2710). In response to detecting the first input: in accordance with a determination that the first input starts from a first edge of the device, the second user interface is a notification interface; and in accordance with a determination that the second input starts from a second edge of the device that is different from (e.g., opposite to) the first edge of the device, the second interface is a settings-management interface (2712). For example, in response to detecting the gesture withcontact2612, which starts on handle2606 (e.g., starts from the top edge of touch screen112),notification interface2616 is displayed in limited-access mode (FIGS. 26A-26D). Conversely, in response to detecting the gesture withcontact2646, which starts on handle2608 (e.g., starts from the bottom edge of touch screen112), settings-management interface2650 is displayed in limited-access mode (FIGS. 26L-26N).
While displaying the second user interface in the limited-access mode (2714), the device detects (2716) a first fingerprint on the fingerprint sensor. For example, fingerprint2640 (FIG. 26G),2666 (FIG. 26N), or2696 (FIG. 26V) is detected onfingerprint sensor169.
In accordance with a determination that the first fingerprint is one of a plurality of enrolled fingerprints that are enrolled with the device (2718), the device displays (2720) the second user interface in a full-access mode in which access to the second user interface is not restricted in accordance with the restriction criteria (e.g., the one or more notifications are un-redacted), and transitions (2722) the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked. In some embodiments, a subject line and preview of the notifications are displayed in the un-redacted mode. For example, when fingerprint2640 (FIG. 26G) is determined to be one of the enrolled fingerprints,notification interface2616 is displayed in full-access mode anddevice100 is unlocked (FIG. 26H); notifications2620 are displayed as unredacted. As another example, when fingerprint2666 (FIG. 26N) is determined to be one of the enrolled fingerprints, settings-management interface2650 is displayed in full-access mode anddevice100 is unlocked (FIG. 26O); airplane mode icon2652-1 is enabled. As another example, when fingerprint2696 (FIG. 26V) is determined to be one of the enrolled fingerprints,camera roll interface2693 is displayed in full-access mode anddevice100 is unlocked (FIG. 26W);photos2697 are displayed.
In some embodiments, the second user interface is translucent, and the second user interface is displayed on top of the first user interface (2724). In accordance with the determination that the first fingerprint is one of the plurality of enrolled fingerprints that are enrolled with the device, the device displays (2726) an animation, below the translucent second user interface, of the first user interface for the locked mode of the device transitioning to a user interface for the unlocked mode of the device. For example, the first user interface is a lock screen for the device when the device is in a locked mode, and the first user interface transitions to a home screen, a screen with application icons for launching applications, or the last screen displayed by the device in the unlocked mode, just prior to the device going into the locked mode. This animated transition is typically blurred because this transition occurs underneath the translucent second user interface. This animated transition signals to a user that the device has been unlocked while maintaining display of the second user interface. As shown inFIG. 26C, for example,notification interface2616 is translucent and displayed over lockeddevice interface2600. When fingerprint2640 (FIG. 26G) is determined to be one of the enrolled fingerprints, an animation transitioning lockeddevice interface2600 touser interface400 is displayed undernotification interface2616, as shown inFIGS. 26G-26H.
In accordance with a determination that the first fingerprint is not one of the plurality of enrolled fingerprints, the device maintains (2728) display of the second user interface in the limited-access mode and maintains the device in the locked mode. For example, when fingerprint2640 (FIG. 26G) is determined to not be one of the enrolled fingerprints,device100 maintainsnotification interface2616 in limited-access mode and maintains itself in locked mode; notifications2620 remain redacted. As another example, when fingerprint2666 (FIG. 26N) is determined to not be one of the enrolled fingerprints,device100 maintains settings-management interface2650 in limited-access mode and maintains itself in locked mode; airplane mode icon2652-1 remains disabled. As another example, when fingerprint2696 (FIG. 26V) is determined to not be one of the enrolled fingerprints,device100 maintains camera roll interface2693 (and camera interface2678) in limited-access mode and maintains itself in locked mode;photos2697 remain hidden from display.
In some embodiments, after detecting the first input and while displaying the second user interface, the device detects (2730) a second input. In response to detecting the second input (2732), the device ceases (2734) to display the second user interface and displays (2736) a respective user interface in place of the second user interface. When the device is in the unlocked mode (e.g., in accordance with a determination that the first fingerprint is one of a plurality of enrolled fingerprints that are enrolled with the device), the respective user interface is (2738) a user interface with unrestricted access to the respective set of features of the electronic device (e.g., an application launch user interface for launching a plurality of different applications, or a most recently used application). When the device is in the locked mode (e.g., in accordance with a determination that the first fingerprint is not one of the plurality of enrolled fingerprints), the respective user interface is (2740) the first user interface with restricted access to the respective set of features of the electronic device. Whiledevice100 is displayingnotification interface2616 or settings-management interface2650,device100 detects a respective input to dismiss the respective interface. Whendevice100 is in unlocked mode and the respective interface is dismissed,device100displays user interface400. Whendevice100 is in locked mode and the respective interface is dismissed,device100 displays lockeddevice interface2600.
For example, in response to detecting the gesture withcontact2634 to dismiss notification interface2616 (FIG. 26C or26D),device100 maintains locked mode and displays lockeddevice interface100. However, in response to detecting the gesture withcontact2642 to dismiss notification interface2616 (FIG. 26I),device100 maintains unlocked mode and displays user interface400 (FIG. 26J).
As another example, in response to detecting a gesture to dismiss settings-management interface2650 while settings-management interface2650 is displayed in limited-access mode anddevice100 is in locked mode,device100 maintains locked mode and displays lockeddevice interface2600. However, in response to detecting the gesture withcontact2670 to dismiss settings-management interface2650 (FIG. 26Q),device100 maintains unlocked mode and displays user interface400 (FIG. 26R).
In some embodiments, the second user interface is (2742) a notification interface that is associated with a plurality of notifications; in the limited-access mode, respective information contained in one or more of the notifications is not accessible; and in the full-access mode, the respective information is accessible. As shown inFIGS. 26C and 26H,notification interface2616 is displayed with notifications2620. Whennotification2616 is displayed in limited-access mode, as inFIG. 26C, the actual message or email contents (e.g., snippets of the message or email) are not accessible, and is replaced with generic text in the notifications2620. However, whennotification interface2616 is displayed in full-access mode, as inFIG. 26H, the actual message or email contents are included in the notification2620.
In some embodiments, the respective information that is not accessible in the limited-access mode includes redacted information (2744). In the limited-access mode, a representation of a respective notification includes a first portion (e.g., a sender identifier) and a second portion (e.g., a subject or content snippet) where the first portion is unredacted and the second portion is redacted. In the full-access mode, the representation of the respective notification includes the first portion and the second portion where the first portion and the second portion are unredacted. Notification2620-1 inFIG. 26C, for example, is a redacted notification; portion2622 (sender) is not redacted, but portion2624 (message timestamp) and portion2626 (message snippet) are redacted by replacement with generic placeholder text.\
In some embodiments, a notification is not redacted, even in limited access mode, if the notification does not include or involve personal or private information. For example, sports updates or news updates notifications need not be redacted.
In some embodiments, the respective information that is not accessible in the limited-access mode includes information from a predetermined section of the notification interface (2746). Tn the limited-access mode, the notification interface omits the predetermined section, and in the full-access mode, the notification interface includes the predetermined section. For example, inFIG. 26D, section2618-2 for calendar notifications is omitted whilenotification interface2616 is in limited-access mode. InFIG. 26H, section2618-2 for calendar notifications is displayed whilenotification interface2616 in full-access mode.
In some embodiments, the second user interface is (2748) a settings-management interface that is associated with a plurality of device settings. In the limited-access mode, the device prevents at least one respective setting from being changed (e.g., the respective setting is fixed at a previously selected value such as “on” or “off” and the device will not respond to user inputs by changing the setting unless/until the second user interface is transitioned to the full-access mode). In the full-access mode, the respective setting is enabled to be changed (e.g., the setting is enabled to be changed in response to inputs from the user such as tapping on a setting toggle or sliding a setting slider). For example, settings-management interface2650 is an interface associated with multiple settings (airplane mode on/off, Wi-Fi on/off, etc.). When settings-management interface2650 is in limited-access mode, airplane mode icon2652-1 is disabled (FIG. 26N); the current airplane mode setting is unchanged despitetap gesture2664 on airplane mode icon2652-1. However, when settings-management interface2650 is in full-access mode, airplane mode icon2652-1 is enabled; tapgesture2668 on airplane mode icon2652-1 changes the airplane mode setting (FIG. 26O).
In some embodiments, the second user interface is (2750) a camera playback interface for viewing images taken by a camera of the device. In the limited-access mode the device prevents one or more previously captured images from being viewed in the camera playback interface (e.g., the device prevents a user from viewing images that were captured and placed in a virtual “camera roll” prior to the device entering the locked mode of operation, until the user is successfully authenticated). However, in the full-access mode, the one or more previously captured images are enabled to be viewed in the camera playback interface (e.g., after the user has been successfully authenticated, the virtual “camera roll” is unlocked and the user is provided with access to images in the virtual “camera roll”). For example,FIGS. 26V-26W showcamera roll interface2693, for viewing photos captured or otherwise stored ondevice100, displayed ontouch screen112. Whencamera roll interface2693 is in full-access mode (FIG. 26W),photos2697 are displayed. Whencamera roll interface2693 is in limited-access mode (FIG. 26V),photos2697 are not displayed.
It should be understood that the particular order in which the operations inFIGS. 27A-27D have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod2700 described above with respect toFIGS. 27A-27D. For example, the inputs, user interfaces, user interface objects or elements, and animations described above with reference tomethod2700 optionally have one or more of the characteristics of the inputs, user interfaces, user interface objects or elements, and animations described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 28 shows a functional block diagram of anelectronic device2800 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 28 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 28, anelectronic device2800 includes adisplay unit2802, optionally a touch-sensitive surface unit2804, afingerprint sensor unit2806; and aprocessing unit2808 coupled to thedisplay unit2802, optionally touch-sensitive surface unit2804, and thefingerprint sensor unit2806. In some embodiments, theprocessing unit2808 includes adisplay enabling unit2810, a detectingunit2812, atransitioning unit2814, a maintainingunit2816, and aceasing unit2818.
The processing unit2808 is configured to: while the device is in a locked mode in which access to a respective set of features of the electronic device is locked, enable display of the first user interface on the display unit2802 (e.g., with the display enabling unit2810) and detect a first input (e.g., with the detecting unit2812); in response to detecting the first input, enable display of a second user interface on the display unit2802 (e.g., with the display enabling unit2810), where the second user interface is in a limited-access mode in which access to the second user interface is restricted in accordance with restriction criteria; and while enabling display of the second user interface in the limited-access mode: detect a first fingerprint on the fingerprint sensor unit2806 (e.g., with the detecting unit2812); in accordance with a determination that the first fingerprint is one of a plurality of enrolled fingerprints that are enrolled with the device, enable display of the second user interface in a full-access mode in which access to the second user interface is not restricted in accordance with the restriction criteria (e.g., with the display enabling unit2810), and transition the device from the locked mode to an unlocked mode in which the respective set of features of the electronic device is unlocked (e.g., with the transitioning unit2814); and in accordance with a determination that the first fingerprint is not one of the plurality of enrolled fingerprints, maintain display of the second user interface in the limited-access mode and maintain the device in the locked mode (e.g., with the maintaining unit2816).
In some embodiments, the second user interface is a notification interface that is associated with a plurality of notifications, in the limited-access mode, respective information contained in one or more of the notifications is not accessible, and in the full-access mode, the respective information is accessible.
In some embodiments, the respective information that is not accessible in the limited-access mode includes redacted information, in the limited-access mode, a representation of a respective notification includes a first portion and a second portion where the first portion is unredacted and the second portion is redacted, and in the full-access mode, the representation of the respective notification includes the first portion and the second portion where the first portion and the second portion are unredacted.
In some embodiments, the respective information that is not accessible in the limited-access mode includes information from a predetermined section of the notification interface, in the limited-access mode, the notification interface omits the predetermined section, and in the full-access mode, the notification interface includes the predetermined section.
In some embodiments, the second user interface is a settings-management interface that is associated with a plurality of device settings, in the limited-access mode, the device prevents at least one respective setting from being changed, and in the full-access mode, the respective setting is enabled to be changed.
In some embodiments, the second user interface is a camera playback interface for viewing images taken by a camera of the device, in the limited-access mode the device prevents one or more previously captured images from being viewed in the camera playback interface, and in the full-access mode, the one or more previously captured images are enabled to be viewed in the camera playback interface.
In some embodiments, theprocessing unit2808 is configured to: after detecting the first input and while enabling display of the second user interface, detect a second input (e.g., with the detecting unit2812); and in response to detecting the second input: cease to display the second user interface (e.g., with the ceasing unit2818), and enable display of a respective user interface in place of the second user interface (e.g., with the display enabling unit2810), wherein: when the device is in the unlocked mode, the respective user interface is a user interface with unrestricted access to the respective set of features of the electronic device, and when the device is in the locked mode, the respective user interface is the first user interface with restricted access to the respective set of features of the electronic device.
In some embodiments, the second user interface is a user interface selected in accordance with the first input, and in response to detecting the first input: in accordance with a determination that the first input starts from a first edge of the device, the second user interface is a notification interface; and in accordance with a determination that the second input starts from a second edge of the device that is different from the first edge of the device, the second interface is a settings-management interface.
In some embodiments, the second user interface is translucent, and the second user interface is displayed on top of the first user interface, and theprocessing unit2808 is configured to: in accordance with the determination that the first fingerprint is one of the plurality of enrolled fingerprints that are enrolled with the device, enable display of an animation, below the translucent second user interface, of the first user interface for the locked mode of the device transitioning to a user interface for the unlocked mode of the device (e.g., with the display enabling unit2810).
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 27A-27D are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 28. For example,detection operations2706 and2716, displayingoperations2704,2708, and2720, transitioningoperation2722, and maintainingoperation2728 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
Unlocking an Application or a Device Depending on ContextMany electronic devices have a locked mode in which access to most applications on the device is prevented. While in a locked mode, such devices may still permit limited access to a particular application, even though most of the applications on the device are locked.
In some circumstances, in response to an unlock request, it may be more efficient to unlock the entire device so that a user can navigate to any application on the device. In other circumstances, in response to an unlock request, it may be more efficient to unlock just the particular application that is operating in a limited access mode, without unlocking the all of the applications on the device, to enable a user to access more features of the particular application. Thus, depending on context, it may be more efficient to unlock an application, rather than unlocking the entire device.
The methods described herein provide a way to unlock an application or a device, depending on the usage context, in response to detecting an authorized fingerprint on a fingerprint sensor.
When an authorized fingerprint is detected while a lock screen for the entire device is being displayed, the device transitions to an unlocked mode in which most, if not all, of the applications on the device are accessible. In this unlocked mode, the display optionally changes to a home screen, a screen with application icons for launching applications, or the last screen displayed by the device in the unlocked mode, just prior to the device going into the locked mode.
On the other hand, when an authorized fingerprint is detected while a user interface is being displayed for the particular application that is being used in a limited access mode, the device transitions from the locked mode to a single-application unlocked mode in which previously-locked features of the particular application are unlocked, while other applications on the device remain locked.
For example, without user authentication, the device may permit limited access to a camera application to enable a user to immediately take photographs. In response to fingerprint authentication of the user, the unlocked camera application may also be able to display photographs previously stored on the camera, send photographs to other devices, etc.
As another example, without user authentication, the device may permit a personal digital assistant (e.g., Siri personal digital assistant from Apple Inc. of Cupertino, Calif.) to answer questions that do not require access to private information for a particular user. In response to fingerprint authentication of the user, the personal digital assistant may also be able to answer questions that require access to private information for the particular user.
In some embodiments, the device is an electronic device with a separate display (e.g., display450) and a separate touch-sensitive surface (e.g., touch-sensitive surface451). In some embodiments, the device is portablemultifunction device100, the display istouch screen112, and the touch-sensitive surface includestactile output generators167 on the display (FIG. 1A). The device described below with reference to29A-29Y and30A-30D includes one ormore fingerprint sensors169. In some embodiments, the one or more fingerprint sensors include one or more integrated fingerprint sensors359-1 (FIG. 4B) that are integrated in to the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). In some embodiments, the one or more fingerprint sensors include separate fingerprint sensors359-2 (FIG. 4B) that are separate from the touch-sensitive surface (e.g., separate touch-sensitive surface451 or touch sensitive display system112). Unless specified otherwise, afingerprint sensor169 described below is, optionally, either an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2, depending on the configuration of the hardware and software of the device that includes thefingerprint sensor169. For convenience of explanation, the embodiments described with reference toFIGS. 29A-29Y and30A-30D will be discussed with reference to a device with atouch screen112 and a separate fingerprint sensor359-2, however analogous operations are, optionally, performed on a device with an integrated fingerprint sensor359-1 in response to detecting the inputs described inFIGS. 29A-29Y on the integrated fingerprint sensor359-1 while displaying the user interfaces shown inFIGS. 29A-29Y on thedisplay450. Additionally, analogous operations are, optionally, performed on a device with adisplay450 and a separate touch-sensitive surface451 instead of atouch screen112 in response to detecting the contacts described inFIGS. 29A-29Y on a fingerprint sensor169 (e.g., an integrated fingerprint sensor359-1 or a separate fingerprint sensor359-2) and/or the separate touch-sensitive surface451 while displaying the user interfaces shown inFIGS. 29A-29Y on thedisplay450; in such embodiments, the contacts shown inFIGS. 29A-29Y optionally represent both a focus selector that corresponds to a location on thedisplay450, and a contact that corresponds to a location of a contact or gesture performed on the separate touch-sensitive surface (e.g., touch-sensitive surface451), where the focus selector is, optionally: a respective contact, a representative point corresponding to a contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on thetouch screen112 and is, optionally, replaced with a displayed cursor.
FIG. 29A illustrates lockeddevice interface29000 displayed on a display of a device (e.g., ontouch screen112 of device100).Locked device interface29000 is a user interface that indicates to users ofdevice100 thatdevice100 is in locked mode (i.e.,device100 is locked), and thus access to features of multiple applications ondevice100 is prevented. For example, whiledevice100 is locked, user interface400 (FIG. 29B) is inaccessible. Thus, a user is unable to launch multiple some applications ondevice100. In some embodiments, lockeddevice interface29000 provides limited information to users. For example, lockeddevice interface29000 includes current date and time29002 and instructions or hints29004 on how to unlockdevice100.
Locked device interface29000 also includes one or more user interface objects for displaying respective user interfaces or launching specific applications. For example, lockeddevice interface29000 includeshandles29006 and29008, andicon29010. A user performs a gesture (e.g., a swipe gesture) starting fromhandle29006 to activate display of a notification interface. A user performs a gesture (e.g., a swipe gesture) starting fromhandle29008 to activate display of settings-management interface. A user performs a gesture (e.g., a swipe gesture) onicon29010 to activate display of a camera interface.
FIG. 29A illustratesfingerprint29012 detected onfingerprint sensor169. In response to detectingfingerprint29012 onfingerprint sensor169,device100 determines iffingerprint29012 is one of one or more fingerprints enrolled withdevice100. Iffingerprint29012 is not one of the enrolled fingerprints,device100 remains in locked mode, and lockeddevice interface29000 remains displayed or a passcode entry interface (not shown) is displayed.
Iffingerprint29012 is one of the enrolled fingerprints,device100 transitions to a multi-application unlocked mode, in which features of multiple applications are unlocked, anduser interface400 is displayed, as shown inFIG. 29B. Withuser interface400 displayed anddevice100 in multi-application unlocked mode, a user can launch and use any of multiple applications ondevice100 with full access. For example,FIG. 29B shows gesture29014 (e.g., a tap gesture) detected on “Photos”icon428. In response to detectinggesture29014,device100 launches a content presentation application (e.g., a photo viewer application) with full access and displays a correspondingphoto viewer interface29016, as shown inFIG. 29C. In some embodiments,photo viewer interface29016 corresponds to a camera application as well as, or instead of, a content presentation application.
Inphoto viewer interface29016, photos29018 stored ondevice100 are displayed, including photos previously captured in past sessions of a camera application ondevice100 and/or photos received bydevice100. In some embodiments,photo viewer interface29016 includesshare icon29020 for initiating a process for sharing any of photos29018 by message, email, social network upload, or any other suitable method.Share icon29020 is enabled, asdevice100 is in the multi-application unlocked mode.
Whilephoto viewer interface29016 is displayed (i.e., the photo viewer application is open),button press29022 onbutton204 is detected bydevice100.Button press29022 includes a button-down (activation) ofbutton204 and a button-up (deactivation) ofbutton204. In response to detectingbutton press29022,photo viewer interface29016 ceases to be displayed (e.g., the photo viewer application is dismissed to the background) anduser interface400 is displayed, anddevice100 remains in multi-application unlocked mode, as shown inFIG. 29D.
FIG. 29E illustratesdevice100 in locked mode with lockeddevice interface29000 displayed ontouch screen112. A gesture is detected ontouch screen112. The gesture (e.g., a swipe gesture) includescontact29024 detected onicon29010, and while detected onicon29010, moving indirection29026. In response to detecting the gesture,device100displays camera interface29028 in a limited-access mode ontouch screen112, as shown inFIG. 29F, anddevice100 remains in locked mode.
Camera interface29028 is an interface associated with a camera application (e.g., camera module143) ondevice100.Camera interface29028 includescamera preview29034,flash control29030, front/back camera toggle29032, shutter/capture button29038, image effectscontrol29040, andcamera roll icon29036.Device100 ceases to displaycamera interface29028 and displayscamera roll interface29044 in a limited-access mode (FIG. 29G) in response to detection of gesture29042 (e.g., a tap gesture) oncamera roll icon29036. Whilecamera roll interface29044 is displayed in limited-access mode, photos captured ondevice100 in previous sessions of the camera application are not displayed incamera roll interface29044. For example, inFIG. 29G, instead of photos displayed incamera roll interface29044,message29046 directing the user to unlock the device to view the captured photos is displayed.
Camera roll interface29044 also includesshare icon29020 that is disabled andcamera icon29048. In some embodiments,share icon29020 is grayed out or shaded when it is disabled.Device100 ceases to displaycamera roll interface29044 anddisplays camera interface29028 in response to detection of a gesture (e.g., a tap gesture) oncamera icon29048, which is not disabled.
InFIG. 29G,fingerprint29050 is detected onfingerprint sensor169. Ifdevice100 determines thatfingerprint29050 is one of the enrolled fingerprints, thendevice100 transitions into a single-application unlock mode with respect to the application corresponding tocamera roll interface29044 and unlocks the features ofcamera roll interface29044, including display of photos captured ondevice100 in previous sessions of the camera application. As shown inFIG. 29H, photos29018 are displayed in unlockedcamera roll interface29044. Also,share icon29020 is enabled in the single-application unlock mode, as shown inFIG. 29H. Iffingerprint29050 is not one of the enrolled fingerprints, then the features ofcamera roll interface29044 remain restricted.
In some embodiments, transitioningdevice100 to the single-application unlocked mode with respect tocamera roll interface29044 includesdevice100 unlocking just the camera application to whichcamera roll interface29044 corresponds and making the features of that application unlocked and accessible, while leaving the other applications ondevice100 locked and their features inaccessible.
In some other embodiments, transitioningdevice100 to the single-application unlocked mode with respect tocamera roll interface29044 includes transitioningdevice100 into an unlocked mode with respect to multiple applications (i.e., features of multiple applications are unlocked, including the camera application to whichcamera roll interface29044 corresponds), butdevice100 is also configured to transition back to locked mode (i.e., features of the multiple applications are locked and inaccessible) as soon as the camera application is closed. Thus, in these embodiments, even though multiple applications are unlocked, just the camera and the camera roll are accessible, which effectively makes this a single-application unlocked mode.
Returning toFIG. 29H, while the features ofcamera roll interface29044 are unlocked,button press29052 onbutton204 is detected bydevice100.Button press29052 includes a button-down (activation) ofbutton204 and a button-up (deactivation) ofbutton204. In response to detectingbutton press29052,camera roll interface29044 ceases to be displayed (e.g., the camera application or the content presentation application is closed) and lockeddevice interface29000 is displayed, anddevice100 returns to locked mode, as shown inFIG. 29I.
FIG. 29J illustrates another example of transitioningdevice100 to a single-application unlocked mode with respect tocamera roll interface29044. InFIG. 29J,camera roll interface29044 is in limited-access mode (i.e., its features are restricted),device100 is in locked mode, and photos29054 captured in a current session of the camera application are displayed incamera roll interface29044. InFIG. 29J, other photos stored ondevice100, besides the photos29054 captured in a current session of the camera application, are not displayed. Also,share icon29020 is disabled; gesture (e.g., a tap gesture)29055 onshare icon29020 has no effect.
Fingerprint29056 (FIG. 29J) is detected onfingerprint sensor169. Ifdevice100 determines thatfingerprint29056 is one of the enrolled fingerprints, thendevice100 transitions to a single-application unlock mode and unlocks the features ofcamera roll interface29044, including enablingshare icon29020. As shown inFIGS. 29K-29L, in response to detecting gesture (e.g., a tap gesture)29058 onshare icon29020,device100 initiates a process for sharing one or more of the photos displayed in camera roll interface29044 (e.g., photos29054). (For simplicity, this example assumes that captured photos29054-1-29054-4 are all of the photos stored on the device.) The sharing process includes, for example, displaying photo selection interface29060 (FIG. 29L), where the user selects the photos to share, and displaying an interface for the user to select a method of sharing (e.g., email, message, social network, microblog) (not shown). Iffingerprint29056 is not one of the enrolled fingerprints, then the features ofcamera roll interface29044 remain restricted.
Before the sharing process is completed, the user can close the corresponding content presentation application or camera application, and thus cancel the sharing process. For example, inFIG. 29L, whilephoto selection interface29060 is displayed,button press29066 onbutton204 is detected bydevice100.Button press29066 includes a button-down (activation) ofbutton204 and a button-up (deactivation) ofbutton204. In response to detectingbutton press29066,photo selection interface29060 ceases to be displayed (e.g., the camera application or the content presentation application is closed) and lockeddevice interface29000 is displayed, anddevice100 is in locked mode, as shown inFIG. 29M.
FIG. 29N illustratespasscode entry interface29068 displayed ontouch screen112 whiledevice100 is in locked mode. In some embodiments,passcode entry interface29068 is displayed in response to, for example, detection of a horizontal swipe gesture in proximity of unlockinstructions29004 while lockeddevice interface29000 is displayed.Passcode entry interface29068 includespasscode field29070 andkeypad29072.Keypad29072 includes “Emergency call”key29073. In response to detecting gesture (e.g., a tap gesture, a virtual-key press gesture)29074 on “Emergency call”key29073,device100 displaysemergency call interface29076, anddevice100 remains in locked mode, as shown inFIG. 29O.
Emergency call interface29076 is an interface corresponding to a phone application ondevice100. A user can make emergency calls (e.g., calls to recognized official emergency phone numbers, such as 911, 999, etc.; calls to contacts designated indevice100 as “in case of emergency” (“ICE”) contacts) but not non-emergency calls (e.g., calls to non-emergency phone numbers) fromemergency call interface29076. Also, other features of the phone application (e.g., contacts, call history, voicemail, contact favorites or speed-dial) are not accessible fromemergency call interface29076.Emergency call interface29076 includes, for example,phone number field29078,keypad29080, cancelicon29082, andcall icon29084.
Whileemergency call interface29076 is displayed,fingerprint29086 is detected onfingerprint sensor169. As depicted inFIGS. 29O-29P,fingerprint29086 includes fingerprint-down29086-aand fingerprint-liftoff29086-b. Ifdevice100 determines thatfingerprint29086 is one of the enrolled fingerprints, then in response to detecting fingerprint-liftoff29086-b,device100 transitions to a single-application unlock mode with respect to the phone application and unlocks the features of the phone application. As a result of unlocking the features of the phone application,emergency call interface29076 ceases to be displayed, and instead interfaces for the full-access phone application (e.g.,keypad interface29088 with phone icons29096) are displayed, as shown inFIG. 29Q. Iffingerprint29086 is not one of the enrolled fingerprints, then the features of the phone application remain locked andemergency call interface29076 remains displayed.
FIG. 29Q illustratesdevice100 displayingkeypad interface29088 after the features of the phone application are unlocked.Keypad interface29088 includes, for example,phone number field29078,keypad29090, and icons29096 for accessing the features of the phone application.Keypad29090 includesconference call key29092, which was not present inkeypad29080 inemergency call interface29076. Icons29096 include, for example, favorites icon29096-1, call history icon29096-2, contacts icon29096-3, keypad icon29096-4, and voicemail icon29096-5. In response to detecting gesture (e.g., a tap gesture)29098 on contacts icon29096-3,device100 ceases to displaykeypad interface29088 and displays contacts interface29100, as shown inFIG. 29R. Contacts interface29100 is accessible now that the features of the communication interface are unlocked. Contacts interface29100 includes, for example, a list ofcontacts29102 that the user can view and edit.
Continuing inFIG. 29R, while contacts interface29100 is displayed,button press29104 onbutton204 is detected bydevice100.Button press29104 includes a button-down (activation) ofbutton204 and a button-up (deactivation) ofbutton204. In response to detectingbutton press29104, contacts interface29100 ceases to be displayed (i.e., the phone application is closed) and lockeddevice interface29000 is displayed, anddevice100 is in locked mode, as shown inFIG. 29S.
FIG. 29T illustratesdevice100 in locked mode with lockeddevice interface29000 displayed ontouch screen112.Button press29106 is detected onbutton204, and a fingerprint corresponding tobutton press29106 is detected onfingerprint sensor169 integrated withbutton204. The button press includes button-down29106-aand button-up29106-b(FIG. 29V). During button-down29106-a,fingerprint sensor169 detects the fingerprint corresponding tobutton press29106 and determines if the fingerprint is one of the enrolled fingerprints. Also, in response to button-down29106-acontinuing and lasting for more than a predetermined amount of time (e.g., 2 seconds),personal assistant interface29108 is displayed in limited-access mode, as shown inFIG. 29U; some features of the corresponding personal assistant application are locked.
Personal assistant interface29108 corresponds to a personal assistant application. The personal assistant application is voice controlled, and can perform various operations in response to voice commands from the user. For example, the personal assistant application can perform web searches; display news, weather, and sports scores; read email and messages; inform the user of outstanding appointments or events, and compose email and messages in accordance with user dictation.Personal assistant interface29108 optionally includes prompt29109 to prompt the user to speak a command or request.
Afterpersonal assistant interface29108 is displayed, button-up29106-bis detected. In response to detecting button-up29106-b, if the fingerprint corresponding tobutton press29106 is determined bydevice100 to be one of the enrolled fingerprints,device100 transitions to a single-application unlocked mode with respect to the personal assistant application and the features of the personal assistant application are unlocked; and if the fingerprint corresponding tobutton press29106 is determined bydevice100 to not be one of the enrolled fingerprints, some features of the personal assistant application remain locked.
Whilepersonal assistant interface29108 is displayed and after button-up29106-b, the personal assistant application is standing by for commands or requests from the user, and the user speaks a command or request todevice100, as inFIG. 29V. Commands/requests29110 from the user and responses29112 from the personal assistant application are displayed inpersonal assistant interface29108 for the user to view.
If some features of the personal assistant application remain locked in response to button-up29106-b, then commands or requests involving personal or private information (e.g., play voicemail, compose a message, make a call) are not fulfilled by the personal assistant interface (because these features of the personal assistant application are locked). For example, inFIG. 29W, in response to command29110-1 “Play my voicemail,” response29112-1 from the personal assistant application is “Sorry I can't do that.” In some embodiments, if a command or request does not involve personal or private information (e.g., the command is to display a sports score), then the personal assistant interface answers the command or request.
If the features of the personal assistant application are unlocked in response to button-up29106-b, then the personal assistant application fulfills commands or requests involving personal or private information (e.g., play voicemail, compose a message, make a call), as well as commands/request not involving personal or private information. For example, inFIG. 29X, in response to command29110-2 “Play my voicemail,” response29112-2 from the personal assistant application is “You have two voicemails. Playing . . . ” and playback of the voicemails bydevice100.
The personal assistant application can be closed by a press ofbutton204. For example, in response to detecting button press29114 (FIG. 29W) or button press29116 (FIG. 29X),personal assistant interface29108 cease to be displayed, and lockeddevice interface29000 is displayed, as shown inFIG. 29Y. In bothFIG. 29W andFIG. 29X,device100 is not fully unlocked (inFIG. 29W, features of multiple applications are still locked; inFIG. 29X,device100 is in a single-application unlocked mode with respect to the personal assistant application), and thus lockedscreen interface29000 is displayed.
FIGS. 30A-30D are flow diagrams illustrating amethod3000 of unlocking an application or a device depending on context in accordance with some embodiments. Themethod3000 is performed at an electronic device (e.g.,device300,FIG. 3, or portablemultifunction device100,FIG. 1A) with a display and a touch-sensitive surface. In some embodiments, the display is a touch screen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations inmethod3000 are, optionally, combined and/or the order of some operations is, optionally, changed.
As described below, themethod3000 provides an intuitive way to unlock an application or a device depending on context. The method reduces the cognitive burden on a user when unlocking, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, enabling a user to unlock more efficiently conserves power and increases the time between battery charges.
While the electronic device is (3002) in a locked mode in which access to features of a plurality of different applications on the electronic device is prevented, the device displays (3004) a first user interface on the display. The first user interface is one of: a locked-device user interface for the electronic device, and a limited-access user interface for a respective application in the plurality of different applications. In some embodiments, the features of applications on the electronic device include features of a first application and features of a second application. In some embodiments, features of a respective application include one or more of: the ability to access and interact with content associated with the application (e.g., viewing photos in a camera roll of a camera application, viewing contacts in an address book application, viewing messages in a messaging application), the ability to instruct the application to perform application-specific operations on the device (e.g., taking pictures in a camera application, downloading content in a web browser or app store application, playing media in an media player application, sending and receiving messages in a messaging application). For example,device100 displays locked device interface29000 (FIG. 29A). Alternatively, the device displays a limited-access user interface for an application, such as camera roll interface29044 (FIG. 29G orFIG. 29J), emergency call interface29076 (FIGS. 29O-29P), or personal assistant interface29108 (FIG. 29U). While these interfaces are displayed, an input (fingerprint29012,FIG. 29A;fingerprint29050,FIG. 29G;fingerprint29056,FIG. 29J;fingerprint29086,FIGS. 29O-29P; the fingerprint corresponding tobutton press29106,FIG. 29U; respectively) to initiate unlocking features of the device is detected withfingerprint169.
The device detects (3006), with the fingerprint sensor, a first input (e.g.,fingerprint29012,FIG. 29A;fingerprint29050,FIG. 29G;fingerprint29056,FIG. 29J;fingerprint29086,FIGS. 29O-29P; or the fingerprint corresponding tobutton press29106,FIG. 29U; respectively) that corresponds to a request to initiate unlocking one or more features of the device (and that meets unlock criteria). For example, the first input includes a fingerprint that matches an enrolled fingerprint that was previously enrolled with the device. In some embodiments, when the device detects an input that includes a fingerprint that does not match an enrolled fingerprint that was previously enrolled with the device, the device ignores the input (e.g., by maintaining the device in the locked mode of operation) and/or displays an alternative method of authorizing unlocking the device, such as a passcode entry user interface.
In response to detecting, with the fingerprint sensor, the first input that corresponds to the request to initiate unlocking one or more features of the device (3008), in accordance with a determination that the first user interface is the locked-device user interface for the electronic device, the device transitions (3010) the device from the locked mode to a multi-application unlocked mode in which the features of the plurality of different applications are unlocked. For example, inFIGS. 29A-29B, when the interface displayed is lockeddevice interface29000, in response to detectingfingerprint29012 that is an enrolled fingerprint,device100 transitions to a multi-application unlocked mode anduser interface400 is displayed;device100 is fully unlocked.
However, in response to detecting, with the fingerprint sensor, the first input that corresponds to the request to initiate unlocking one or more features of the device (3008), in accordance with a determination that the first user interface is the limited-access user interface for the respective application, the device (3012) transitions the device from the locked mode to a single-application unlocked mode in which one or more previously-locked features of the respective application are unlocked, and continues to prevent access to one or more previously-locked features of other applications in the plurality of different applications (e.g., features of the other applications, besides the respective application, that are locked when the device is in the locked mode).
For example, inFIG. 29G,device100 displayscamera roll interface29044 in limited-access mode, and in response to detectingfingerprint29050 that is an enrolled fingerprint, features ofcamera roll interface29044 are unlocked but access to features of other applications are prevented (FIG. 29H).
As another example, inFIG. 29J,device100 displayscamera roll interface29044 in limited-access mode, and in response to detectingfingerprint29056 that is an enrolled fingerprint, features ofcamera roll interface29044 are unlocked but access to features of other applications are prevented (FIG. 29K).
As another example, inFIGS. 29O-29P,device100 displaysemergency call interface29076 of a phone application in limited-access mode, and in response to detectingfingerprint29050 that is an enrolled fingerprint, features of the phone application are unlocked (e.g.,keypad interface29088 is displayed;FIG. 29Q), but access to features of other applications are prevented.
As another example, inFIG. 29U.device100 displayspersonal assistant interface29108 of a personal assistant application in limited-access mode, and in response to detecting the fingerprint, that is an enrolled fingerprint, corresponding tobutton press29106, features of the personal assistant application are unlocked (e.g., access to private information is unlocked so that command29110-2, which involves personal or private information, is fulfilled;FIG. 29X), but access to features of other applications are prevented.
In some embodiments, transitioning the device from the locked mode to the single-application unlocked mode and continuing to prevent access to previously-locked features of other applications includes (3014) unlocking the one or more previously-locked features of the respective application without unlocking the one or more previously-locked features of the other applications in the plurality of different applications (e.g., without unlocking all of the features of the plurality of different applications). For example, only features of the respective application are unlocked while features of other applications in the plurality of different applications are not unlocked. InFIGS. 29G-29H orFIGS. 29J-29K, for example, the features of the content presentation application or camera application are unlocked but features of other applications ondevice100 are still locked. InFIGS. 29O-29Q, the features of the phone application are unlocked but features of other applications ondevice100 are still locked. InFIGS. 29T-29V and29X, the features of the personal assistant application are unlocked but features of other applications ondevice100 are still locked.
In some embodiments, transitioning the device from the locked mode to the single-application unlocked mode and preventing access to previously-locked features of other applications includes (3016): transitioning the device from the locked mode to an unlocked mode in which access to the features of the plurality of different applications are unlocked, and configuring the device to transition from the unlocked mode to the locked mode upon detection of a request to close the respective application (e.g., when the device is in the single-application unlocked mode, the whole device is an unlocked mode, however if/when the user requests to exit the respective application, the device transitions back to the locked mode, so that the user is restricted to performing unlocked operations within the respective application). Thus, inFIGS. 29G-29H orFIGS. 29J-29K, alternatively,device100 is unlocked in response tofingerprint29050 and29056, respectively, anddevice100 is locked again when the content presentation application or camera application is closed. InFIGS. 29O-29Q, alternatively,device100 is unlocked in response tofingerprint29086, anddevice100 is locked again when the phone application is closed. InFIGS. 29T-29V and29X, alternatively,device100 is unlocked in response to the fingerprint corresponding tobutton press29106, anddevice100 is locked again when the personal assistant application is closed.
In some embodiments, after detecting the first input, while displaying a user interface for the respective application, the device detects (3018) a second input that includes a request to close the respective application. In response to detecting the second input (3020), when the device is in the single-application unlocked mode, the device returns (3022) the device to the locked mode of operation; and when the device is in the multi-application unlocked mode, the device closes (3024) the respective application and maintains the device in the unlocked mode of operation. For example, whilephoto viewer interface29016 is displayed in multi-application unlock mode, in response to detectingbutton press29022, the corresponding content presentation application is closed anddevice100 remains unlocked (FIGS. 29C-29D). On the other hand, whilecamera roll interface29044 is displayed in single-application unlock mode, in response to detectingbutton press29052, the corresponding content presentation application or camera application is closed anddevice100 returns to locked mode (FIGS. 29H-29I). As another example, whilephoto selection interface29060 is displayed in single-application unlock mode, in response to detectingbutton press29066, the corresponding content presentation application or camera application is closed anddevice100 returns to locked mode (FIGS. 29L-29M). As another example, while contacts interface29100 is displayed in single-application unlock mode, in response to detectingbutton press29104, the corresponding phone application is closed anddevice100 returns to locked mode (FIGS. 29R-29S). As another example, whilepersonal assistant interface29108 is displayed in single-application unlock mode, in response to detectingbutton press29114 or29116, the corresponding personal assistant application or camera application is closed anddevice100 returns to locked mode (FIGS. 29W-29Y).
In some embodiments, detecting the first input includes detecting liftoff of a fingerprint from the fingerprint sensor, and the response to the first input is performed in response to detecting liftoff of the fingerprint from the fingerprint sensor (3026). For example, inFIGS. 29O-29Q, the transition to the single-application unlock mode with respect to the phone application is performed in response to fingerprint-liftoff29086-b.
In some embodiments, the fingerprint sensor is (3028) integrated into a button; detecting the first input includes detecting activation of the button (e.g., detecting a button-down signal), detecting a fingerprint on the fingerprint sensor, and detecting deactivation of the button (e.g., detecting a button-up signal) (e.g., while continuing to detect the fingerprint on the fingerprint sensor); and the response to the first input is performed in response to detecting deactivation of the button (e.g., the response to the first input is performed in response to detecting the button-up signal). For example,FIGS. 29T-29V depictfingerprint sensor169 as integrated intobutton204. InFIGS. 29T-29V, the input isbutton press29106 that includes button-down29106-athat activatesbutton204, detection of the fingerprint corresponding tobutton press29106, and button-up29106-bthat deactivates the button. The transition to the single-application unlock mode (or not) is performed in response to detecting button-up29106-b.
In some embodiments, the respective application is opened (3030) in response to detecting activation of the button (e.g., the device opens a personal digital assistant application in response to detecting a button down event, or in response to detecting a button down event and then continuing to detect the button down for more than a predetermined time threshold such as 0.2, 0.5, 1, 2 seconds, or some other reasonable time threshold). For example,device100 opens the personal assistant application (e.g., displays personal assistant interface29108) in response to detecting button-down29106-afor at least a predetermined amount of time (FIGS. 29T-29U).
In some embodiments, in conjunction with detecting activation of the button (e.g., immediately before, during and/or immediately after detecting activation of the button), the device obtains (3032) fingerprint information about a fingerprint of a finger that is on the fingerprint sensor and determining whether the fingerprint information matches an enrolled fingerprint that was previously enrolled with the device. For example, inFIG. 29T, during button-down29106-a,device100 obtains information for the fingerprint corresponding tobutton press29106 and determines if that fingerprint is an enrolled fingerprint.
In some embodiments, the respective application is (3034) a personal assistant application (e.g., a voice-controlled personal assistant application that is launched with a long press of a button in which the fingerprint sensor is integrated), and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that require the personal assistant application to access data for a particular user stored on the device (e.g., while the device is in the locked mode, the personal assistant application can perform certain functions such as performing web searches or providing directions that do not require access to private information for a particular user but is prevented/disabled from performing other functions such as reading messages, accessing an address book, and/or accessing calendar information that require access to private information for the particular user). For example, inFIGS. 29T-29X, the application is a personal assistant application, and a feature that is unlocked in response to determining that the fingerprint corresponding tobutton press29106 is an enrolled fingerprint is that the personal assistant application can access personal or private information (and therefore can fulfill requests and command such as playing voicemail).
In some embodiments, the respective application is (3036) a camera application, and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable the device to display images that were previously captured by a camera of the device (e.g., photos in a “photo roll” of the camera of the device). For example, inFIGS. 29G-29H, the application is a camera application, and a feature that is unlocked in response to determining thatfingerprint29050 is an enrolled fingerprint is that previously captured or stored photos29018 are displayed incamera roll interface29044.
In some embodiments, the respective application is (3038) a content presentation application (e.g., a camera application with a media viewing feature such as a photo roll that displays photos that were previously captured by the camera), and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable the device to share content associated with the content presentation application (e.g., sharing photos in a -photo roll” of a camera via email, a MMS message, or a message on a social networking service). For example, inFIGS. 29J-29K, the application is a content presentation application (or a camera application), and a feature that is unlocked in response to determining thatfingerprint29056 is an enrolled fingerprint is thatshare icon29020 incamera roll interface29044 is enabled.
In some embodiments, the respective application is (3040) a communication application (e.g., a phone application), the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable a user of the device to communicate with an arbitrary contact specified by the user (e.g., calling a non-emergency phone number). For example, inFIGS. 29O-29Q, the application is a phone application, and a feature that is unlocked in response to determining thatfingerprint29086 is an enrolled fingerprint is thatkeypad interface29088, from which the user can call an arbitrary phone number, is accessible.
In some embodiments, the respective application is (3042) a communication application (e.g., a phone application), and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable the device to access a user-specific directory of communication information (e.g., while the device is locked, access to the user's address book is disabled). For example, inFIGS. 29O-29R, the application is a phone application, and a feature that is unlocked in response to determining thatfingerprint29086 is an enrolled fingerprint is that contacts interface29100 is accessible.
It should be understood that the particular order in which the operations inFIGS. 30A-30D have been described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations could be performed. One of ordinary skill in the art would recognize various ways to reorder the operations described herein. Additionally, it should be noted that details of other processes described herein with respect to other methods described herein (e.g., those listed in paragraph [0080]) are also applicable in an analogous manner tomethod3000 described above with respect toFIGS. 30A-30D. For example, the fingerprints, gestures, and user interface objects described above with reference tomethod3000 optionally have one or more of the characteristics of the fingerprints, gestures, and user interface objects described herein with reference to other methods described herein (e.g., those listed in paragraph [0080]). For brevity, these details are not repeated here.
In accordance with some embodiments,FIG. 31 shows a functional block diagram of anelectronic device3100 configured in accordance with the principles of the various described embodiments. The functional blocks of the device are, optionally, implemented by hardware, software, or a combination of hardware and software to carry out the principles of the various described embodiments. It is understood by persons of skill in the art that the functional blocks described inFIG. 31 are, optionally, combined or separated into sub-blocks to implement the principles of the various described embodiments. Therefore, the description herein optionally supports any possible combination or separation or further definition of the functional blocks described herein.
As shown inFIG. 31, anelectronic device3100 includes adisplay unit3102 configured to display a first user interface, optionally a touch-sensitive surface unit3104 configured to receive contacts, afingerprint sensor unit3106; and aprocessing unit3108 coupled to thedisplay unit3102, optionally the touch-sensitive surface unit3104, and thefingerprint sensor unit3106. In some embodiments, theprocessing unit3108 includes adisplay enabling unit3110, a detectingunit3112, atransitioning unit3114, anaccess preventing unit3116, a returningunit3118, aclosing unit3120, an obtainingunit3122, and a determiningunit3124.
Theprocessing unit3108 is configured to: while the electronic device is in a locked mode in which access to features of a plurality of different applications on the electronic device is prevented: enable display (e.g., with the display enabling unit3110) of the first user interface on thedisplay unit3102, the first user interface being one of: a locked-device user interface for the electronic device, and a limited-access user interface for a respective application in the plurality of different applications; and detect (e.g., with the detecting unit3112), with the fingerprint sensor, a first input that corresponds to a request to initiate unlocking one or more features of the device. Theprocessing unit3108 is further configured to, in response to detecting, with the fingerprint sensor, the first input that corresponds to the request to initiate unlocking one or more features of the device: in accordance with a determination that the first user interface is the locked-device user interface for the electronic device, transition (e.g., with the transitioning unit3114) the device from the locked mode to a multi-application unlocked mode in which the features of the plurality of different applications are unlocked. Theprocessing unit3108 is also configured to, in accordance with a determination that the first user interface is the limited-access user interface for the respective application: transition (e.g., with the transitioning unit3114) the device from the locked mode to a single-application unlocked mode in which one or more previously-locked features of the respective application are unlocked; and continue to prevent access (e.g., with the access preventing unit3116) to one or more previously-locked features of other applications in the plurality of different applications.
In some embodiments, transitioning the device from the locked mode to the single-application unlocked mode and continuing to prevent access to previously-locked features of other applications includes unlocking the one or more previously-locked features of the respective application without unlocking the one or more previously-locked features of the other applications in the plurality of different applications.
In some embodiments, transitioning the device from the locked mode to the single-application unlocked mode and preventing access to previously-locked features of other applications includes: transitioning the device from the locked mode to an unlocked mode in which access to the features of the plurality of different applications are unlocked; and configuring the device to transition from the unlocked mode to the locked mode upon detection of a request to close the respective application.
In some embodiments, theprocessing unit3108 is configured to: after detecting the first input, while enabling display of a user interface for the respective application, detect (e.g., with the detecting unit3112) a second input that includes a request to close the respective application; and in response to detecting the second input: when the device is in the single-application unlocked mode, return (e.g., with the returning unit3118) the device to the locked mode of operation; and when the device is in the multi-application unlocked mode, close (e.g., with the closing unit3120) the respective application and maintaining the device in the unlocked mode of operation.
In some embodiments, detecting the first input includes detecting liftoff of a fingerprint from the fingerprint sensor; and the response to the first input is performed in response to detecting liftoff of the fingerprint from the fingerprint sensor.
In some embodiments, the fingerprint sensor is integrated into a button; detecting the first input includes detecting activation of the button, detecting a fingerprint on the fingerprint sensor, and detecting deactivation of the button; and the response to the first input is performed in response to detecting deactivation of the button.
In some embodiments, the respective application is opened in response to detecting activation of the button.
In some embodiments, theprocessing apparatus3108 is configured to, in conjunction with detecting activation of the button, obtain (e.g., with the obtaining unit3122) fingerprint information about a fingerprint of a finger that is on the fingerprint sensor and determine (e.g., with the determining unit3124) whether the fingerprint information matches an enrolled fingerprint that was previously enrolled with the device.
In some embodiments, the respective application is a personal assistant application, and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that require the personal assistant application to access data for a particular user stored on the device.
In some embodiments, the respective application is a camera application, and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable the device to display images that were previously captured by a camera of the device.
In some embodiments, the respective application is a content presentation application, and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable the device to share content associated with the content presentation application.
In some embodiments, the respective application is a communication application, and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable a user of the device to communicate with an arbitrary contact specified by the user.
In some embodiments, the respective application is a communication application, and the one or more previously-locked features of the respective application that are unlocked in the single-application unlocked mode include features that enable the device to access a user-specific directory of communication information.
The operations in the information processing methods described above are, optionally implemented by running one or more functional modules in information processing apparatus such as general purpose processors (e.g., as described above with respect toFIGS. 1A and 3) or application specific chips.
The operations described above with reference toFIGS. 30A-30D are, optionally, implemented by components depicted inFIGS. 1A-1B orFIG. 31. For example, displayingoperation3004,detection operation3006, transitioningoperation3010, and transitioning and access preventingoperations operation3012 are, optionally, implemented byevent sorter170,event recognizer180, andevent handler190. Event monitor171 inevent sorter170 detects a contact on touch-sensitive display112, andevent dispatcher module174 delivers the event information to application136-1. Arespective event recognizer180 of application136-1 compares the event information torespective event definitions186, and determines whether a first contact at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selection of an object on a user interface. When a respective predefined event or sub-event is detected,event recognizer180 activates anevent handler190 associated with the detection of the event or sub-event.Event handler190 optionally utilizes or calls data updater176 or objectupdater177 to update the applicationinternal state192. In some embodiments,event handler190 accesses arespective GUI updater178 to update what is displayed by the application. Similarly, it would be clear to a person having ordinary skill in the art how other processes can be implemented based on the components depicted inFIGS. 1A-1B.
The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best use the invention and various described embodiments with various modifications as are suited to the particular use contemplated.
As described above, one aspect of the present technology is the gathering and use of data available from various sources to improve the delivery to users of invitational content or any other content that may be of interest to them. The present disclosure contemplates that in some instances, this gathered data may include personal information data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data can include demographic data, location-based data, telephone numbers, email addresses, home addresses, or any other identifying information.
The present disclosure recognizes that the use of such personal information data, in the present technology, can be used to the benefit of users. For example, the personal information data can be used to deliver targeted content that is of greater interest to the user. Accordingly, use of such personal information data enables calculated control of the delivered content. Further, other uses for personal information data that benefit the user are also contemplated by the present disclosure.
The present disclosure further contemplates that the entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data will comply with well-established privacy policies and/or privacy practices. In particular, such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining personal information data private and secure. For example, personal information from users should be collected for legitimate and reasonable uses of the entity and not shared or sold outside of those legitimate uses. Further, such collection should occur only after receiving the informed consent of the users. Additionally, such entities would take any needed steps for safeguarding and securing access to such personal information data and ensuring that others with access to the personal information data adhere to their privacy policies and procedures. Further, such entities can subject themselves to evaluation by third parties to certify their adherence to widely accepted privacy policies and practices.
Despite the foregoing, the present disclosure also contemplates embodiments in which users selectively block the use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements can be provided to prevent or block access to such personal information data. For example, in the case of advertisement delivery services, the present technology can be configured to allow users to select to “opt in” or “opt out” of participation in the collection of personal information data during registration for services. In another example, users can select not to provide location information for targeted content delivery services. In yet another example, users can select to not provide precise location information, but permit the transfer of location zone information.
Therefore, although the present disclosure broadly covers use of personal information data to implement one or more various disclosed embodiments, the present disclosure also contemplates that the various embodiments can also be implemented without the need for accessing such personal information data. That is, the various embodiments of the present technology are not rendered inoperable due to the lack of all or a portion of such personal information data. For example, content can be selected and delivered to users by inferring preferences based on non-personal information data or a bare minimum amount of personal information, such as the content being requested by the device associated with a user, other non-personal information available to the content delivery services, or publically available information.