CN110457093B - Apparatus, method and graphical user interface for proactively managing notifications - Google Patents

Apparatus, method and graphical user interface for proactively managing notifications Download PDF

Info

Publication number
CN110457093B
CN110457093B CN201811165505.8A CN201811165505A CN110457093B CN 110457093 B CN110457093 B CN 110457093B CN 201811165505 A CN201811165505 A CN 201811165505A CN 110457093 B CN110457093 B CN 110457093B
Authority
CN
China
Prior art keywords
notification
notifications
input
event
user interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811165505.8A
Other languages
Chinese (zh)
Other versions
CN110457093A (en
Inventor
J·R·达斯科拉
H·高
C·P·福斯
A·C·戴伊
C·K·王
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from DKPA201870334A external-priority patent/DK201870334A1/en
Application filed by Apple Inc filed Critical Apple Inc
Priority to CN202310383825.5A priority Critical patent/CN116382834A/en
Priority to CN202310382673.7A priority patent/CN116382832A/en
Priority to EP19718891.5A priority patent/EP3791244A1/en
Priority to KR1020207034739A priority patent/KR102447347B1/en
Priority to KR1020227032607A priority patent/KR102573857B1/en
Priority to JP2020557940A priority patent/JP7139450B2/en
Priority to AU2019265367A priority patent/AU2019265367B2/en
Priority to KR1020237029431A priority patent/KR20230131287A/en
Priority to PCT/US2019/026349 priority patent/WO2019217019A1/en
Publication of CN110457093A publication Critical patent/CN110457093A/en
Priority to JP2022142215A priority patent/JP7427057B2/en
Publication of CN110457093B publication Critical patent/CN110457093B/en
Application granted granted Critical
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

The invention provides a device, a method and a graphical user interface for actively managing notifications. The present invention provides a computer system that displays a first notification corresponding to a first event of a first event type. In response to detecting a first input for the first notification, a notification delivery preference control is displayed. In response to a second input to the notification delivery preference control, a delivery preference of a future notification of an event of the first event type is changed from a first delivery mode to a second delivery mode. In response to detecting a second event of the first event type: if the second delivery mode is a quiet delivery mode, adding a second notification of the second event to a notification history without first displaying the second notification in a corresponding user interface, and if the second delivery mode corresponds to closing a notification of the first event type, the computer system forgoes displaying the second notification.

Description

Apparatus, method and graphical user interface for proactively managing notifications
Technical Field
The present invention relates generally to electronic devices that display event notifications, including but not limited to electronic devices that provide interfaces for efficient display and management of notifications.
Background
The use of portable electronic devices has increased significantly in recent years, with many applications typically residing in the memory of such devices. Exemplary applications include communication applications (e.g., messages and phones), calendar applications, news applications, media playback applications (e.g., podcasts, music and video), payment applications, reminder applications, social media applications, and service delivery applications. These applications generate events that contain information with varying degrees of importance to the user. A notification corresponding to the generated event may be displayed. Exemplary notifications may include digital images, videos, text, icons, control elements (such as buttons), and/or other graphics for notifying a user of an event. Exemplary applications that generate notifications include messaging applications (e.g., iMessage or Messages of Apple Inc. (Cupertino, california)), calendar applications (e.g., iCali or Calendar of Apple Inc. (Cupertino, california)), news applications (e.g., apple News of Apple Inc. (Cupertino, california)), media playback applications (e.g., podcasts, apple Music, and iTunes of Apple Inc. (Cupertino), payment applications (e.g., apple Inc. (Cupertino, california)), social applications (e.g., reminder applications, and service delivery applications).
User interfaces for controlling the delivery of notifications and methods of navigating to and from these interfaces are cumbersome and inefficient. For example, notifications may be displayed in a confusing or excessive manner, and navigating to and from an interface containing notifications may also be confusing. These methods take longer than necessary, wasting energy. This latter consideration is particularly important in battery-powered devices.
Disclosure of Invention
Accordingly, there is a need for a computer system with improved methods and interfaces for controlling the frequency, prominence, and type of notifications that are displayed. For example, the methods and interfaces described in accordance with some embodiments provide cues to increase a user's awareness of options for controlling the delivery of notifications. In some cases, the amount of notification types received may exceed the amount of notifications of the type required. As a result, a significant amount of time or input may be required to bypass notifications of limited importance to see notifications that the user finds more important and useful.
The above-described drawbacks and other problems associated with displaying an interface for notifications are reduced or eliminated with the disclosed computer system. In some embodiments, the computer system comprises a desktop computer. In some embodiments, the computer system is portable (e.g., a notebook, tablet, or handheld device). In some embodiments, the computer system includes a personal electronic device (e.g., a wearable electronic device such as a watch). In some embodiments, the computer system has (and/or communicates with) a display generating component and one or more input devices. In some embodiments, the computer system has (and/or communicates with) a touch pad. In some implementations, the computer system has (and/or communicates with) a touch-sensitive display (also referred to as a "touch screen" or "touch screen display"). In some embodiments, a computer system has a Graphical User Interface (GUI), one or more processors, memory and one or more modules, a program or set of instructions stored in the memory for performing a plurality of functions. In some implementations, a user interacts with the GUI in part through stylus and/or finger contacts and gestures on the touch-sensitive surface. In some embodiments, the functions optionally include game play, image editing, drawing, presentation, word processing, spreadsheet making, phone calls, video conferencing, email, instant messaging, fitness support, digital photography, digital video recording, web browsing, digital music playing, notes taking, 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.
According to some embodiments, a method is performed on a computer system having a display generating component and one or more input devices. The method includes detecting an occurrence of a first event type. The method further includes displaying, via the display generating component, a first notification corresponding to the first event type on a respective user interface of the device. The method also includes detecting, via the input device, a first input for the first notification while the first notification is displayed on the respective user interface. The method also includes, in response to detecting the first input, displaying, via a display generation component, one or more notification delivery preference controls. The method also includes detecting, via the input device, a second input for the set of one or more notification delivery preference controls when the one or more notification delivery preference controls are displayed. The method also includes, in response to detecting the second input, changing a delivery preference of a future notification of the event of the first event type from a first delivery mode to a second delivery mode different from the first delivery mode. The method further includes detecting an occurrence of a second event of the first event type after changing delivery preferences of future notifications of events of the first event type according to the second input. The method further includes, in response to detecting the occurrence of the second event of the first event type: in accordance with a determination that the second delivery mode corresponds to the quiet delivery mode, adding a second notification corresponding to the second event to the notification history without first displaying the second notification in the respective user interface; and in accordance with a determination that the second delivery mode corresponds to closing the notification of the first event type, forgoing displaying the second notification in the respective user interface and forgoing adding the second notification to the notification history.
According to some embodiments, a method is performed on a computer system having a display generating component and one or more input devices. The method includes detecting an occurrence of one or more additional events of a first event type when the device has a plurality of notifications in a notification history (the plurality of notifications including a first notification of the first event type and a second notification of a second event of the first event type, wherein the first notification and the second notification are aggregated in the notification history). The method further includes, in response to detecting the occurrence of the first additional event of the first event type, creating a third notification for the first additional event of the first event type. The method further includes receiving, via the input device, a request to wake up the screen user interface of the display device after creating the third notification of the first additional event of the first event type. The method further includes displaying, via the display generating component, the wake screen user interface with a third notification in response to a request to wake screen user interface of the display device, wherein the third notification is not displayed on the wake screen user interface with information about the first notification and the second notification. The method also includes receiving, via the input device, a request to display a notification history after the third notification has been displayed on the wake-up screen user interface. The method further includes displaying the notification history with the aggregated representation of the first notification and the second notification in response to receiving the request to display the notification history.
According to some embodiments, a method is performed on a computer system having a display generating component and one or more input devices. The method includes displaying, via a display generating component, a plurality of notifications of a plurality of different applications in a notification display user interface, the plurality of notifications including notifications of a first application and notifications of a second application. The method also includes detecting, via the input device, a user interaction with the plurality of notifications, the user interaction including a request to perform a requested operation with respect to the notification. The method also includes responding to user interaction with the plurality of notifications by performing a requested operation with respect to the one or more notifications. The method further includes displaying, via the display generating component, a prompt for a user to adjust notification settings of one or more of the plurality of applications, including: in accordance with determining that the user's engagement of notifications with the first application is below a threshold engagement level and the user's engagement of notifications with the second application is above a threshold engagement level based on user interactions with the plurality of notifications, displaying a suggestion to reduce the prominence of future notifications of the first application but not of future notifications of the second application; and displaying a suggestion to reduce the prominence of future notifications of the second application but not the prominence of future notifications of the first application in accordance with determining that the user's engagement of notifications of the second application is below a threshold engagement level and the user's engagement of notifications of the first application is above the threshold engagement level based on user interactions with the plurality of notifications.
According to some embodiments, an electronic device includes a display generating component and one or more input devices, optionally one or more sensors for detecting intensity of contact with a touch-sensitive surface, optionally one or more tactile output generators, optionally one or more device orientation sensors, one or more processors, and a memory storing one or more programs; the one or more programs are configured to be executed by the one or more processors, and the one or more programs include instructions for performing or causing the performance of the operations of any of the methods described herein. According to some embodiments, a computer-readable storage medium has instructions stored therein that, when executed by an electronic device having a display generating component, one or more input devices, optionally one or more sensors for detecting intensity of contact with a touch-sensitive surface, optionally one or more tactile output generators, and optionally one or more device orientation sensors, cause the device to perform or cause to perform operations of any of the methods described herein. According to some embodiments, a graphical user interface on an electronic device with a display generating component, one or more input devices, optionally one or more sensors to detect intensity of contact with a touch-sensitive surface, optionally one or more tactile output generators, optionally one or more device orientation sensors, a memory, and one or more processors to execute one or more programs stored in the memory includes one or more elements displayed in any of the methods described herein, the elements updated in response to the input, as described in any of the methods described herein. According to some embodiments, an electronic device includes: a display generating component, one or more input devices, optionally one or more sensors for detecting intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, and optionally one or more device orientation sensors; and means for performing or causing operation of performing any one of the methods described herein. According to some embodiments, an information processing apparatus for use in an electronic device having a display generating component, one or more input devices, optionally one or more sensors for detecting contact intensity with a touch-sensitive surface, optionally one or more tactile output generators, and optionally one or more device orientation sensors, comprises means for performing or causing operation of any of the methods described herein.
Accordingly, an electronic device having a display generating component, one or more input devices, optionally one or more sensors for detecting contact strength with a touch-sensitive surface, optionally one or more tactile output generators, and optionally one or more device orientation sensors is provided with improved methods and interfaces for managing the manner of display notification, thereby improving effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may supplement or replace conventional methods for managing the manner in which notifications are displayed.
Drawings
For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, in which like reference numerals designate corresponding parts throughout the several views.
Fig. 1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display in accordance with some embodiments.
FIG. 1B is a block diagram illustrating exemplary components for event processing according to some embodiments.
FIG. 1C is a block diagram illustrating a haptic output module according to some embodiments.
Fig. 2 illustrates a portable multifunction device with a touch screen in accordance with some embodiments.
FIG. 3 is a block diagram of an exemplary multi-function device having a display and a touch-sensitive surface, according to some embodiments.
Fig. 4A illustrates an exemplary user interface for an application menu on a portable multifunction device in accordance with some embodiments.
Fig. 4B illustrates an exemplary user interface for a multifunction device with a touch-sensitive surface separate from a display in accordance with some embodiments.
Fig. 4C-4E illustrate examples of dynamic intensity thresholds according to some embodiments.
Fig. 4F-4K illustrate a set of sample tactile output patterns according to some embodiments.
Fig. 5 A1-5 A4 and 5B-5 AY illustrate exemplary user interfaces for delivering preferences for future notifications of events of changing event types according to some embodiments.
Fig. 5 AZ-5 BU illustrate an exemplary user interface for displaying an aggregated notification according to some embodiments.
Fig. 6A-6D illustrate an exemplary user interface with hints to adjust notification settings, according to some embodiments.
Fig. 7A-7G are flowcharts of a process for changing delivery preferences of future notifications of events of an event type, according to some embodiments.
Fig. 8A-8E are flowcharts of a process for displaying an aggregated notification, according to some embodiments.
Fig. 9A-9E are flowcharts of a process for displaying a prompt to adjust notification settings, according to some embodiments.
Detailed Description
The notification provides the user with information about the event generated by the application without requiring the user to interact with the application. Conventional methods of interacting with notifications typically require multiple separate inputs (e.g., a series of gestures and button presses, etc.) to achieve the desired result (e.g., adjusting the manner in which various types of notifications are delivered via a system setup user interface). Embodiments herein provide a user with an intuitive way to manage notifications and interact with notifications (e.g., by allowing the user to provide input when displaying notifications, in order to access controls for managing notifications (e.g., managing the delivery mode of future notifications of the corresponding type of notification currently displayed), by aggregating notifications corresponding to events of event types, and by automatically displaying prompts that guide the user to adjust notification settings based on monitored interactions with notifications).
The systems, methods, and GUIs described herein improve the management of notifications in a number of ways. For example, they can more easily adjust delivery preferences of notifications and navigate among multiple notifications corresponding to events of the same event type.
1A-1C, 2 and 3 provide a description of an exemplary device. Fig. 4A-4B, 5A-5 BU, and 6A-6D illustrate example user interfaces for managing notifications. Fig. 7A-7G illustrate flowcharts of methods for changing delivery preferences of future notifications of events of an event type, according to some embodiments. Fig. 8A-8E illustrate a flowchart of a method for displaying an aggregated notification, according to some embodiments. Fig. 9A-9E illustrate a flowchart of a method for displaying a prompt to adjust notification settings, according to some embodiments. The user interfaces in fig. 5A to 5BU and fig. 6A to 6D are used to illustrate the processes in fig. 7A to 7G, fig. 8A to 8E and fig. 9A to 9E.
Exemplary apparatus
Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. Numerous specific details are set forth in the following detailed description in order to provide a thorough understanding of the various described embodiments. It will be apparent, however, 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. may be used herein to describe various elements in some cases, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, a first contact may be named a second contact, and similarly, a second contact may be named a first contact without departing from the scope of the various described embodiments. The first contact and the second contact are both contacts, but they are not the same contact unless the context clearly indicates otherwise.
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 in 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 "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 interpreted to mean "when..or" at..time "or" in response to a determination "or" in response to detection "depending on the context. Similarly, the phrase "if determined" or "if [ stated condition or event ] is detected" is optionally interpreted to mean "upon determination" or "in response to determination" or "upon detection of [ stated condition or event ] or" in response to detection of [ stated condition or event ] "depending on the context.
Embodiments of electronic devices, user interfaces for such devices, and related processes for using such devices are described herein. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and/or music player functions. Exemplary embodiments of the portable multifunction device include, but are not limited to, those from Apple inc (Cupertino, california)
Figure BSA0000171581050000071
iPod/>
Figure BSA0000171581050000072
Know->
Figure BSA0000171581050000073
An apparatus. Other portable electronic devices, such as a laptop or tablet computer having a touch-sensitive surface (e.g., a touch screen display and/or a touch pad), are optionally used. It should also be appreciated that in some embodiments, the device is not a portable communication device, but rather a desktop computer having a touch-sensitive surface (e.g., a touch screen display and/or a touch pad).
In the following discussion, an electronic device including a display and a touch-sensitive surface is described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices, such as a physical keyboard, mouse, and/or joystick.
The device typically supports various applications, such as one or more of the following: note taking applications, drawing applications, presentation applications, word processing applications, website creation applications, disk editing applications, spreadsheet applications, gaming applications, telephony applications, video conferencing applications, email applications, instant messaging applications, workout support applications, photograph management applications, digital camera applications, digital video camera applications, web browsing applications, digital music player applications, and/or digital video player applications.
The various applications executing on the device optionally use at least one generic physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and/or changed for different applications and/or within the respective applications. In this way, the common physical architecture of the devices (such as the touch-sensitive surface) optionally supports various applications with a user interface that is intuitive and transparent to the user.
Attention is now directed to embodiments of a portable device having a touch sensitive display. Fig. 1A is a block diagram illustrating a portable multifunction device 100 with a touch-sensitive display system 112 in accordance with some embodiments. Touch-sensitive display system 112 is sometimes referred to as a "touch screen" for convenience and is sometimes referred to simply as a touch-sensitive display. Device 100 includes memory 102 (which optionally includes one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripheral interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input/output (I/O) subsystem 106, other input or control devices 116, and external ports 124. The apparatus 100 optionally includes one or more optical sensors 164. The device 100 optionally includes one or more intensity sensors 165 for detecting intensity of contact on the device 100 (e.g., a touch-sensitive surface, such as the touch-sensitive display system 112 of the device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile outputs on device 100 (e.g., generating tactile outputs on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touch pad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.
It should be understood that the device 100 is merely one example of a portable multifunction device, and that the device 100 optionally has more or fewer components than shown, optionally combines two or more components, or optionally has a different configuration or arrangement of the components. The various components shown in fig. 1A are implemented in hardware, software, firmware, or any combination thereof (including one or more signal processing circuits and/or application specific integrated circuits).
Memory 102 optionally includes high-speed random access memory, and also optionally includes nonvolatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other nonvolatile solid state memory devices. Access to the memory 102 by other components of the device 100, such as the one or more CPUs 120 and the peripheral interface 118, is optionally controlled by a memory controller 122.
The peripheral interface 118 may be used to couple input and output peripherals of the device to the memory 102 and the one or more CPUs 120. The one or more processors 120 run or execute various software programs and/or sets of instructions stored in the memory 102 to perform various functions of the device 100 and process data.
In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
The RF (radio frequency) circuit 108 receives and transmits RF signals, also referred to as electromagnetic signals. The RF circuitry 108 converts/converts electrical signals to/from electromagnetic signals and communicates with communication networks and other communication devices via electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a codec chipset, a Subscriber Identity Module (SIM) card, memory, and the like. RF circuitry 108 optionally communicates via wireless communication with networks such as the internet (also known as the World Wide Web (WWW)), intranets, and/or wireless networks such as cellular telephone networks, wireless Local Area Networks (LANs), and/or Metropolitan Area Networks (MANs), and other devices. The wireless communication optionally uses any of a variety of communication standards, protocols, and technologies including, but not limited to, global system for mobile communications (GSM), enhanced Data GSM Environment (EDGE), high Speed Downlink Packet Access (HSDPA), high Speed Uplink Packet Access (HSUPA), evolution-only data (EV-DO), HSPA, hspa+, dual cell HSPA (DC-HSPDA), long Term Evolution (LTE), near Field Communication (NFC), wideband code division multiple access (W-CDMA), code Division Multiple Access (CDMA), time Division Multiple Access (TDMA), bluetooth, wireless fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g, and/or IEEE 802.11 n), voice over internet protocol (VoIP), wi-MAX, email protocols (e.g., internet Message Access Protocol (IMAP) and/or post protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol (XMPP), session initiation protocol (sime) for instant messaging and presence with extension), instant Messaging and Presence (IMPS), instant messaging and/or other suitable communication protocols including the text messaging and/or short messaging protocols.
Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between the user and device 100. Audio circuitry 110 receives audio data from peripheral interface 118, converts the audio data to electrical signals, and transmits the electrical signals to speaker 111. The speaker 111 converts electrical signals into sound waves that are audible to humans. The audio circuit 110 also receives electrical signals converted from sound waves by the microphone 113. The audio circuitry 110 converts the electrical signals into audio data and transmits the audio data to the peripheral interface 118 for processing. The audio data is optionally retrieved from and/or transmitted to the memory 102 and/or the RF circuitry 108 by the peripheral interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., 212 in fig. 2). The headset jack provides an interface between the audio circuit 110 and a removable audio input/output peripheral, such as an output-only headset or a headset having both an output (e.g., a monaural headset or a binaural headset) and an input (e.g., a microphone).
The I/O subsystem 106 couples input/output peripheral devices on the device 100, such as a touch-sensitive display system 112 and other input or control devices 116, to a peripheral interface 118. The I/O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, an intensity sensor controller 159, a haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive electrical signals from/transmit electrical signals to other input or control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and the like. In some alternative implementations, one or more input controllers 160 are optionally coupled to (or not coupled to) any of the following: a keyboard, an infrared port, a USB port, a stylus, and/or a pointing device such as a mouse. One or more buttons (e.g., 208 in fig. 2) optionally include an up/down button for volume control of speaker 111 and/or microphone 113. The one or more buttons optionally include a push button (e.g., 206 in fig. 2).
The touch sensitive display system 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives electrical signals from the touch sensitive display system 112 and/or transmits electrical signals to the touch sensitive display system 112. The touch sensitive display system 112 displays visual output to a user. Visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively, "graphics"). In some embodiments, some or all of the visual output corresponds to a user interface object. As used herein, the term "affordance" refers to a user-interactive graphical user interface object (e.g., a graphical user interface object configured to respond to input directed to the graphical user interface object). Examples of user interactive graphical user interface objects include, but are not limited to, buttons, sliders, icons, selectable menu items, switches, hyperlinks, or other user interface controls.
The touch sensitive display system 112 has a touch sensitive surface, sensor, or set of sensors that receives input from a user based on haptic and/or tactile contact. The touch-sensitive display system 112 and the display controller 156 (along with any associated modules and/or sets of instructions in the memory 102) detect contact (and any movement or interruption of the contact) on the touch-sensitive display system 112 and translate the detected contact into interactions with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch-sensitive display system 112. In some embodiments, the point of contact between the touch-sensitive display system 112 and the user corresponds to a user's finger or stylus.
Touch-sensitive display system 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, butOther display technologies are used in other embodiments. Touch sensitive display system 112 and display controller 156 optionally detect contact and any movement or interruption thereof using any of a variety of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with touch sensitive display system 112. In some embodiments, projected mutual capacitance sensing techniques are used, such as those from Apple inc (Cupertino, california)
Figure BSA0000171581050000111
iPod/>
Figure BSA0000171581050000112
And->
Figure BSA0000171581050000113
The technology found in (a) is provided.
The touch sensitive display system 112 optionally has a video resolution in excess of 100 dpi. In some implementations, the touch screen video resolution exceeds 400dpi (e.g., 500dpi, 800dpi, or greater). The user optionally uses any suitable object or appendage, such as a stylus, finger, or the like, to contact the touch sensitive display system 112. In some embodiments, the user interface is designed to work with finger-based contacts and gestures, which may not be as accurate as stylus-based input due to the large contact area of the finger on the touch screen. In some embodiments, the device translates the finger-based coarse input into a precise pointer/cursor position or command for performing the action desired by the user.
In some embodiments, the device 100 optionally includes a touch pad for activating or deactivating specific functions in addition to the touch screen. In some embodiments, the touch pad is a touch sensitive area of the device that, unlike a touch screen, does not display visual output. The touch pad is optionally a touch-sensitive surface separate from the touch-sensitive display system 112 or an extension of the touch-sensitive surface formed by the touch screen.
The apparatus 100 also includes a power system 162 for powering the various components. The power system 162 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., light Emitting Diode (LED)), and any other components associated with the generation, management, and distribution of power in the portable device.
The apparatus 100 optionally further comprises one or more optical sensors 164. FIG. 1A shows an optical sensor coupled to an optical sensor controller 158 in the I/O subsystem 106. The one or more optical sensors 164 optionally include a Charge Coupled Device (CCD) or a Complementary Metal Oxide Semiconductor (CMOS) phototransistor. The one or more optical sensors 164 receive light projected through the one or more lenses from the environment and convert the light into data representing an image. In conjunction with imaging module 143 (also referred to as a camera module), one or more optical sensors 164 optionally capture still images and/or video. In some embodiments, the optical sensor is located on the back of the device 100 opposite the touch sensitive display system 112 on the front of the device, enabling the touch screen to be used as a viewfinder for still image and/or video image acquisition. In some embodiments, another optical sensor is located on the front of the device to acquire images of the user (e.g., for self-photographing, for video conferencing while the user views other video conference participants on the touch screen, etc.).
The apparatus 100 optionally further comprises one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to an intensity sensor controller 159 in the I/O subsystem 106. 1. The one or more contact strength sensors 165 optionally include one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other strength sensors (e.g., sensors for measuring force (or pressure) of a contact on a touch-sensitive surface). One or more contact strength sensors 165 receive contact strength information (e.g., pressure information or a surrogate for pressure information) from the environment. In some implementations, at least one contact intensity sensor is juxtaposed or in proximity to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the rear of the device 100, opposite the touch screen display system 112 located on the front of the device 100.
The device 100 optionally further includes one or more proximity sensors 166. Fig. 1A shows a proximity sensor 166 coupled to the peripheral device interface 118. Alternatively, the proximity sensor 166 is coupled to the input controller 160 in the I/O subsystem 106. In some implementations, the proximity sensor turns off and disables the touch-sensitive display system 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).
The device 100 optionally further comprises one or more tactile output generators 167. FIG. 1A shows a haptic output generator coupled to a haptic feedback controller 161 in the I/O subsystem 106. In some embodiments, the one or more tactile output generators 167 include one or more electroacoustic devices such as speakers or other audio components; and/or electromechanical devices for converting energy into linear motion such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating means (e.g., means for converting electrical signals into tactile output on a device). The haptic output generator 167 receives haptic feedback generation instructions from the haptic feedback module 133 and generates a haptic output on the device 100 that is capable of being perceived by a user of the device 100. In some embodiments, at least one tactile output generator is juxtaposed or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112), and optionally generates a tactile output by moving the touch-sensitive surface vertically (e.g., inward/outward of the surface of device 100) or laterally (e.g., backward and forward in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on a rear of the device 100 opposite the touch sensitive display system 112 located on a front of the device 100.
The device 100 optionally further includes one or more accelerometers 168. Fig. 1A shows accelerometer 168 coupled to peripheral device interface 118. Alternatively, accelerometer 168 is optionally coupled with input controller 160 in I/O subsystem 106. In some implementations, information is displayed in a portrait view or a landscape view on a touch screen display based on analysis of data received from one or more accelerometers. The device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver in addition to the accelerometer 168 for obtaining information about the position and orientation (e.g., longitudinal or lateral) of the device 100.
In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a contact/motion module (or instruction set) 130, a graphics module (or instruction set) 132, a haptic feedback module (or instruction set) 133, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and an application program (or instruction set) 136. Further, in some embodiments, memory 102 stores device/global internal state 157, as shown in fig. 1A and 3. The device/global internal state 157 includes one or more of the following: an active application state indicating which applications, if any, are currently active; a display state indicating what applications, views, or other information occupy various areas of the touch-sensitive display system 112; sensor status, including information obtained from various sensors of the device and other input or control devices 116; and position and/or orientation information about the position and/or pose of the device.
Operating system 126 (e.g., iOS, darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and/or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.), and facilitates communication between the various hardware and software components.
Communication module 128Facilitating communication with other devices through one or more external ports 124, and also includes various software components for processing data received by RF circuitry 108 and/or external ports 124. External port 124 (e.g., universal Serial Bus (USB), firewire, etc.) is adapted to be coupled directly to other devices or indirectly through a network (e.g., the internet, wireless LAN, etc.). In some embodiments, the external ports are some of the same as Apple inc (Cupertino, california)
Figure BSA0000171581050000141
iPod/>
Figure BSA0000171581050000142
The same or similar and/or compatible multi-pin (e.g., 30-pin) connectors as used in iPod devices. In some embodiments, the external port is some +.o. with Apple inc (Cupertino, california)>
Figure BSA0000171581050000143
iPod/>
Figure BSA0000171581050000144
The same or similar and/or compatible lighting connectors as those used in iPod devices.
The contact/motion module 130 optionally detects contact with the touch-sensitive display system 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). The contact/motion module 130 includes various software components for performing various operations related to contact detection (e.g., by a finger or stylus), such as determining whether contact has occurred (e.g., detecting a finger press event), determining the strength of the contact (e.g., the force or pressure of the contact, or a substitute for the force or pressure of the contact), determining whether there is movement of the contact and tracking movement across the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining whether the contact has ceased (e.g., detecting a finger lift-off event or a contact break). The contact/motion module 130 receives contact data from the touch-sensitive surface. Determining movement of the point of contact optionally includes determining a velocity (magnitude), a speed (magnitude and direction), and/or an acceleration (change in magnitude and/or direction) of the point of contact, the movement of the point of contact being represented by a series of contact data. These operations are optionally applied to single point contacts (e.g., single-finger contacts or stylus contacts) or simultaneous multi-point contacts (e.g., "multi-touch"/multi-finger contacts). In some embodiments, the contact/motion module 130 and the display controller 156 detect contact on the touch pad.
The contact/motion module 130 optionally detects gesture input by the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timings, and/or intensities of the detected contacts). Thus, gestures are optionally detected by detecting a particular contact pattern. For example, detecting a single-finger tap gesture includes detecting a finger-down event, and then detecting a finger-up (lift-off) event at the same location (or substantially the same location) as the finger-down event (e.g., at an icon location). As another example, detecting a finger swipe gesture on a touch-sensitive surface includes detecting a finger press event, then detecting one or more finger drag events, and then detecting a finger lift (lift off) event. Similarly, taps, swipes, drags, and other gestures of the stylus are optionally detected by detecting a particular contact pattern of the stylus.
In some embodiments, detecting the finger tap gesture is dependent on a length of time between detecting the finger press event and the finger lift event, but independent of a finger contact strength between the finger press event and the finger lift event. In some embodiments, in accordance with a determination that the length of time between the finger press event and the finger lift event is less than a predetermined value (e.g., less than 0.1 seconds, 0.2 seconds, 0.3 seconds, 0.4 seconds, or 0.5 seconds), a flick gesture is detected regardless of whether the intensity of the finger contact during the flick reaches a given intensity threshold (greater than a nominal contact detection intensity threshold), such as a light press or a deep press intensity threshold. Thus, a finger tap gesture may satisfy a particular input criteria that does not require the characteristic intensity of the contact to satisfy a given intensity threshold to satisfy the particular input criteria. For clarity, finger contact in a flick gesture is typically required to meet a nominal contact detection intensity threshold below which no contact is detected to detect a finger press event. Similar analysis applies to detecting a flick gesture by a stylus or other contact. In the case where the device is capable of detecting finger or stylus contact hovering over a touch sensitive surface, the nominal contact detection intensity threshold optionally does not correspond to physical contact between the finger or stylus and the touch sensitive surface.
The same concepts apply in a similar manner to other types of gestures. For example, swipe gestures, pinch gestures, spread gestures, and/or long press gestures may optionally be detected based on satisfaction of criteria that are independent of the intensity of contacts included in the gesture or do not require the contacts of the performed gesture to reach an intensity threshold in order to be recognized. For example, a swipe gesture is detected based on an amount of movement of one or more contacts; the zoom gesture is detected based on movement of the two or more contacts toward each other; the amplification gesture is detected based on movement of the two or more contacts away from each other; the long press gesture is detected based on a duration of contact on the touch-sensitive surface having less than a threshold amount of movement. Thus, statement that a particular gesture recognition criterion does not require that the contact intensity meet a respective intensity threshold to meet the particular gesture recognition criterion means that the particular gesture recognition criterion can be met when a contact in the gesture does not meet the respective intensity threshold, and can also be met if one or more contacts in the gesture meet or exceed the respective intensity threshold. In some embodiments, a flick gesture is detected based on determining that a finger press event and a finger lift event are detected within a predefined time period, regardless of whether the contact is above or below a respective intensity threshold during the predefined time period, and a swipe gesture is detected based on determining that the contact movement is greater than a predefined magnitude, even though the contact is above the respective intensity threshold at the end of the contact movement. Even in implementations where the detection of gestures is affected by the intensity of the contact performing the gesture (e.g., the device detects a long press faster when the intensity of the contact is above an intensity threshold, or the device delays the detection of a tap input when the intensity of the contact is higher), the detection of these gestures does not require the contact to reach a certain intensity threshold (e.g., even if the amount of time required to recognize the gesture changes) as long as the criteria for recognizing the gesture may be met without the contact reaching the certain intensity threshold.
In some cases, the contact strength threshold, duration threshold, and movement threshold are combined in various different combinations in order to create a heuristic to distinguish between two or more different gestures for the same input element or region, such that multiple different interactions with the same input element can provide a richer set of user interactions and responses. Statement that a set of specific gesture recognition criteria does not require that the intensity of a contact meet a respective intensity threshold to meet the specific gesture recognition criteria does not preclude simultaneous evaluation of other intensity-related gesture recognition criteria to identify other gestures having criteria that are met when the gesture includes a contact having an intensity above the respective intensity threshold. For example, in some cases, a first gesture recognition criterion of a first gesture (which does not require the intensity of a contact to meet a respective intensity threshold to meet the first gesture recognition criterion) competes with a second gesture recognition criterion of a second gesture (which depends on the contact reaching the respective intensity threshold). In such a competition, if the second gesture recognition criteria of the second gesture is satisfied by the first criteria, the gesture is optionally not recognized as satisfying the first gesture recognition criteria of the first gesture. For example, if the contact reaches a corresponding intensity threshold before the contact moves by a predefined amount of movement, a deep press gesture is detected instead of a swipe gesture. Conversely, if the contact moves a predefined amount of movement before the contact reaches the corresponding intensity threshold, a swipe gesture is detected instead of a deep press gesture. Even in this case, the first gesture recognition criterion of the first gesture still does not require that the intensity of the contact satisfies the respective intensity threshold to satisfy the first gesture recognition criterion, because if the contact remains below the respective intensity threshold until the gesture ends (e.g., a swipe gesture having a contact that does not increase in intensity above the respective intensity threshold), the gesture will be recognized by the first gesture recognition criterion as a swipe gesture. Thus, a particular gesture recognition criterion that does not require the intensity of the contact to meet the respective intensity threshold to meet the particular gesture recognition criterion will (a) in some cases ignore the intensity of the contact relative to the intensity threshold (e.g., for a flick gesture) and/or (B) in some cases fail to meet the particular gesture recognition criterion (e.g., for a long press gesture) in the sense that the intensity of the contact relative to the intensity threshold (e.g., for a long press gesture) is still dependent on if a competing set of intensity-related gesture recognition criteria (e.g., for a long press gesture that competes for recognition with a deep press gesture) recognizes the input as corresponding to the intensity-related gesture before the particular gesture recognition criterion recognizes the gesture.
Graphics module 132 includes various known software components for rendering and displaying graphics on touch-sensitive display system 112 or other displays, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual attribute) of the displayed graphics. As used herein, the term "graphic" includes any object that may be displayed to a user, including without limitation text, web pages, icons (such as user interface objects including soft keys), digital images, video, animation, and the like.
In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module 132 receives one or more codes designating graphics to be displayed from an application program or the like, and also receives coordinate data and other graphics attribute data together if necessary, and then generates screen image data to output to the display controller 156.
Haptic feedback module 133 includes various software components for generating instructions (e.g., instructions used by haptic feedback controller 161) to generate haptic output at one or more locations on device 100 using haptic output generator 167 in response to user interaction with device 100.
Text input module 134, which is optionally a component of graphics module 132, provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).
The GPS module 135 determines the location of the device and provides such information for use in various applications (e.g., to the phone 138 for location-based dialing, to the camera 143 as picture/video metadata, and to applications that provide location-based services such as weather desktops, page-on-the-earth desktops, and map/navigation desktops).
The application 136 optionally includes the following modules (or sets of instructions) or a subset or superset thereof:
contact module 137 (sometimes referred to as an address book or contact list);
a telephone module 138;
video conferencing module 139;
email client module 140;
an Instant Messaging (IM) module 141;
a fitness support module 142;
a camera module 143 for still and/or video images;
an image management module 144;
browser module 147;
calendar module 148;
desktop applet module 149, optionally including one or more of: weather desktop applet 149-1, stock desktop applet 149-2, calculator desktop applet 149-3, alarm desktop applet 149-4, dictionary desktop applet 149-5 and other desktop applets obtained by the user, and user created desktop applet 149-6;
A desktop applet creator module 150 for forming a user-created desktop applet 149-6;
search module 151;
a video and music player module 152, optionally consisting of a video player module and a music player module;
notepad module 153;
map module 154; and/or
An online video module 155.
Examples of other applications 136 optionally stored in memory 102 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 connection with the touch sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, and the text input module 134, the contact module 137 includes executable instructions for managing an address book or contact list (e.g., in the application internal state 192 of the contact module 137 stored in the memory 102 or the memory 370), including: adding names to address books; deleting names from the address book; associating a telephone number, email address, physical address, or other information with the name; associating the image with the name; classifying and classifying names; providing a telephone number and/or email address to initiate and/or facilitate communication via telephone 138, video conference 139, email 140, or instant message 141; etc.
In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, phone module 138 includes executable instructions for: entering a sequence of characters corresponding to the telephone numbers, accessing one or more telephone numbers in address book 137, modifying the telephone numbers that have been entered, dialing the corresponding telephone numbers, conducting a conversation, and disconnecting or hanging up when the conversation is completed. As described above, wireless communication optionally uses any of a variety of communication standards, protocols, and technologies.
In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, one or more optical sensors 164, optical sensor controller 158, contact module 130, graphics module 132, text input module 134, contact list 137, and telephony module 138, videoconferencing module 139 includes executable instructions to initiate, conduct, and terminate a videoconference between a user and one or more other participants according to user instructions.
In conjunction with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In conjunction with the image management module 144, the email client module 140 makes it very easy to create and send emails with still or video images captured by the camera module 143.
In conjunction with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, instant message module 141 includes executable instructions for: inputting a character sequence corresponding to an instant message, modifying previously inputted characters, transmitting a corresponding instant message (e.g., using a Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for a phone-based instant message or using a XMPP, SIMPLE, apple push notification service (APN) or IMPS for an internet-based instant message), receiving an instant message, and viewing the received instant message. In some implementations, the transmitted and/or received instant message optionally includes graphics, photos, audio files, video files, and/or other attachments supported in an MMS and/or Enhanced Messaging Service (EMS). As used herein, "instant message" refers to both phone-based messages (e.g., messages sent using SMS or MMS) and internet-based messages (e.g., messages sent using XMPP, SIMPLE, APN or IMPS).
In conjunction with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and video and music player module 152, workout support module 142 includes executable instructions for creating a workout (e.g., with time, distance, and/or calorie burn goals); communication with fitness sensors (in sports equipment and smart watches); receiving fitness sensor data; calibrating a sensor for monitoring fitness; selecting and playing music for exercise; and displaying, storing and transmitting the fitness data.
In conjunction with the touch sensitive display system 112, the display controller 156, the one or more optical sensors 164, the optical sensor controller 158, the contact module 130, the graphics module 132, and the image management module 144, the camera module 143 includes executable instructions for: capturing still images or videos (including video streams) and storing them in the memory 102, modifying features of the still images or videos, and/or deleting the still images or videos from the memory 102.
In conjunction with the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, the text input module 134, and the camera module 143, the image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, tagging, deleting, presenting (e.g., in a digital slide or album), and storing still and/or video images.
In conjunction with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, browser module 147 includes executable instructions for browsing the internet (including searching, linking to, receiving, and displaying web pages or portions thereof, and attachments and other files linked to web pages) according to user instructions.
In conjunction with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, calendar module 148 includes executable instructions for creating, displaying, modifying, and storing calendars and data associated with calendars (e.g., calendar entries, to-do items, etc.) according to user instructions.
In conjunction with the RF circuitry 108, the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the text input module 134, and the browser module 147, the desktop applet module 149 is a mini-application (e.g., weather desktop applet 149-1, stock desktop applet 149-2, calculator desktop applet 149-3, alarm clock desktop applet 149-4, and dictionary desktop applet 149-5) optionally downloaded and used by a user, or a mini-application created by a user (e.g., user created desktop applet 149-6). In some embodiments, the desktop applet includes an HTML (hypertext markup language) file, a CSS (cascading style sheet) file, and a JavaScript file. In some embodiments, the desktop applet includes an XML (extensible markup language) file and a JavaScript file (e.g., yahoo.
In conjunction with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, desktop applet creator module 150 includes executable instructions for creating an applet (e.g., turning a user-specified portion of a web page into the applet).
In conjunction with the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, and the text input module 134, the search module 151 includes executable instructions for searching text, music, sound, images, video, and/or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) according to user instructions.
In conjunction with the touch-sensitive display system 112, the display system controller 156, the contact module 130, the graphics module 132, the audio circuit 110, the speaker 111, the RF circuit 108, and the browser module 147, the video and music player module 152 includes executable instructions that allow a user to download and playback recorded music and other sound files stored in one or more file formats (such as MP3 or AAC files), as well as executable instructions for displaying, rendering, or otherwise playing back video (e.g., on the touch-sensitive display system 112 or on an external display wirelessly connected via the external port 124). In some embodiments, the device 100 optionally includes the functionality of an MP3 player such as an iPod (trademark of Apple inc.).
In conjunction with touch-sensitive display system 112, display controller 156, touch module 130, graphics module 132, and text input module 134, notepad module 153 includes executable instructions for creating and managing notepads, backlog, and the like in accordance with user instructions.
In conjunction with the RF circuitry 108, the touch-sensitive display system 112, the display system controller 156, the contact module i 30, the graphics module 132, the text input module 134, the GPS module 135, and the browser module 147, the map module 154 includes executable instructions for receiving, displaying, modifying, and storing maps and data associated with maps (e.g., driving directions; data of stores and other points of interest at or near a particular location; and other location-based data) according to user instructions.
In conjunction with touch sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, and browser module 147, online video module 155 includes executable instructions that allow a user to access, browse, receive (e.g., by streaming and/or downloading), play back (e.g., on touch screen 112 or an external display connected wirelessly or via external port 124), send email with a link to a particular online video, and otherwise manage online video in one or more file formats such as h.264. In some embodiments, the instant messaging module 141 is used to send links to particular online videos instead of the email client module 140.
Each of the modules and applications identified above corresponds to a set of executable instructions for performing one or more of the functions described above, as well as the methods described in this application (e.g., computer-implemented methods and other information processing methods described herein). These modules (i.e., sets of instructions) need not be implemented in separate software programs, procedures or modules, and thus various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 optionally stores a subset of the modules and data structures described above. Further, memory 102 optionally stores additional modules and data structures not described above.
In some embodiments, device 100 is a device that performs the operation of a predefined set of functions thereon solely through a touch screen and/or touch pad. By using a touch screen and/or a touch pad as the primary input control device for operating the device 100, the number of physical input control devices (e.g., push buttons, dials, etc.) on the device 100 is optionally reduced.
A predefined set of functions performed solely by the touch screen and/or the touch pad optionally includes navigation between user interfaces. In some embodiments, the touch pad, when touched by a user, navigates the device 100 from any user interface displayed on the device 100 to a main menu, home menu, or root menu. In such implementations, a touch pad is used to implement a "menu button". In some other embodiments, the menu buttons are physical push buttons or other physical input control devices, rather than touch pads.
FIG. 1B is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 (in FIG. 1A) or memory 370 (in FIG. 3) includes event sorter 170 (e.g., in operating system 126) and corresponding applications 136-1 (e.g., any of the aforementioned applications 136, 137-155, 380-390).
The event classifier 170 receives the event information and determines an application view 191 of the application 136-1 and the application 136-1 to which the event information is to be delivered. The event sorter 170 includes an event monitor 171 and an event dispatcher module 174. In some implementations, the application 136-1 includes an application internal state 192 that indicates one or more current application views that are displayed on the touch-sensitive display system 112 when the application is active or executing. In some embodiments, the device/global internal state 157 is used by the event classifier 170 to determine which application(s) are currently active, and the application internal state 192 is used by the event classifier 170 to determine the application view 191 to which to deliver event information.
In some implementations, the application internal state 192 includes additional information, such as one or more of the following: restoration information to be used when the application 136-1 resumes execution, user interface state information indicating information being displayed by the application 136-1 or ready for display by the application, a state queue for enabling a user to return to a previous state or view of the application 136-1, and a repeat/undo queue of previous actions taken by the user.
Event monitor 171 receives event information from peripheral interface 118. The event information includes information about sub-events (e.g., user touches on the touch sensitive display system 112 as part of a multi-touch gesture). The peripheral interface 118 transmits information it receives from the I/O subsystem 106 or sensors such as the proximity sensor 166, the accelerometer 168, and/or the microphone 113 (via the audio circuit 110). The information received by the peripheral interface 118 from the I/O subsystem 106 includes information from the touch-sensitive display system 112 or touch-sensitive surface.
In some embodiments, event monitor 171 sends requests to peripheral interface 118 at predetermined intervals. In response, the peripheral interface 118 transmits event information. In other embodiments, the peripheral interface 118 transmits event information only if there is a significant event (e.g., an input above a predetermined noise threshold is received and/or an input exceeding a predetermined duration is received).
In some implementations, the event classifier 170 also includes a hit view determination module 172 and/or an active event identifier determination module 173.
When the touch sensitive display system 112 displays more than one view, the hit view determination module 172 provides a software process for determining where within one or more views a sub-event has occurred. The view is made up of controls and other elements that the user can see on the display.
Another aspect of the user interface associated with an application is a set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of the respective application) in which the touch is detected optionally corresponds to a level of programming within the application's programming or view hierarchy. For example, the lowest horizontal view in which a touch is detected is optionally referred to as a hit view, and the set of events identified as being correctly entered is optionally determined based at least in part on the hit view of the initial touch that begins a touch-based gesture.
Hit view determination module 172 receives information related to sub-events of the touch-based gesture. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process sub-events. In most cases, the hit view is the lowest level view in which the initiating sub-event (i.e., the first sub-event in the sequence of sub-events that form the event or potential event) occurs. Once the hit view is identified by the hit view determination module, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as a hit view.
The activity event recognizer determination module 173 determines which view or views within the view hierarchy should receive a particular sequence of sub-events. In some implementations, the active event identifier determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, the active event identifier determination module 173 determines that all views including the physical location of the sub-event are actively engaged views, and thus determines that all actively engaged views should receive a particular sequence of sub-events. In other embodiments, even if the touch sub-event is completely localized to the region associated with one particular view, the higher view in the hierarchy will remain the actively engaged view.
The event dispatcher module 174 dispatches event information to an event recognizer (e.g., event recognizer 180). In embodiments that include an active event recognizer determination module 173, the event dispatcher module 174 delivers event information to the event recognizer determined by the active event recognizer determination module 173. In some embodiments, the event dispatcher module 174 stores event information in an event queue that is retrieved by the corresponding event receiver module 182.
In some embodiments, the operating system 126 includes an event classifier 170. Alternatively, the application 136-1 includes an event classifier 170. In other embodiments, the event classifier 170 is a stand-alone module or part of another module stored in the memory 102, such as the contact/motion module 130.
In some embodiments, the application 136-1 includes a plurality of event handlers 190 and one or more application views 191, where each application view includes instructions for processing touch events that occur within a respective view of the user interface of the application. Each application view 191 of the application 136-1 includes one or more event recognizers 180. Typically, the respective application view 191 includes a plurality of event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a separate module that is a higher level object from which methods and other properties are inherited, such as the user interface toolkit or application 136-1. In some implementations, the respective event handlers 190 include one or more of the following: the data updater 176, the object updater 177, the GUI updater 178, and/or event data 179 received from the event sorter 170. Event handler 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update the application internal state 192. Alternatively, one or more of application views 191 include one or more corresponding event handlers 190. Additionally, in some implementations, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in a respective application view 191.
The corresponding event identifier 180 receives event information (e.g., event data 179) from the event classifier 170 and identifies events from the event information. Event recognizer 180 includes event receiver 182 and event comparator 184. In some embodiments, event recognizer 180 further includes at least a subset of metadata 183 and event transfer instructions 188 (which optionally include sub-event delivery instructions).
The event receiver 182 receives event information from the event sorter 170. The event information includes information about sub-events such as touches or touch movements. The event information also includes additional information, such as the location of the sub-event, according to the sub-event. When a sub-event relates to movement of a touch, the event information optionally also includes the rate and direction of the sub-event. In some embodiments, the event includes rotation of the device from one orientation to another orientation (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about a current orientation of the device (also referred to as a device pose).
The event comparator 184 compares the event information with predefined event or sub-event definitions and determines an event or sub-event or determines or updates the status of an event or sub-event based on the comparison. In some embodiments, event comparator 184 includes event definition 186. Event definition 186 includes definitions of events (e.g., a predefined sequence of sub-events), such as event 1 (187-1), event 2 (187-2), and other events. In some implementations, sub-events in event 187 include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition of event 1 (187-1) is a double click on the displayed object. For example, the double click includes a first touch (touch start) for a predetermined period of time on the displayed object, a first lift-off (touch end) for a predetermined period of time, a second touch (touch start) for a predetermined period of time on the displayed object, and a second lift-off (touch end) for a predetermined period of time. In another example, the definition of event 2 (187-2) is a drag on the displayed object. For example, dragging includes touching (or touching) on the displayed object for a predetermined period of time, movement of the touch on the touch-sensitive display system 112, and lift-off of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.
In some implementations, the event definitions 187 include definitions of events for respective user interface objects. In some implementations, the event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view that displays three user interface objects on touch-sensitive display system 112, when a touch is detected on touch-sensitive display system 112, event comparator 184 executes hit Test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler 190, the event comparator uses the results of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler associated with the sub-event and the object that triggered the hit test.
In some implementations, the definition of the respective event 187 also includes a delay action that delays delivery of the event information until it has been determined whether the sequence of sub-events does or does not correspond to an event type of the event recognizer.
When the respective event recognizer 180 determines that the sequence of sub-events does not match any of the events in the event definition 186, the respective event recognizer 180 enters an event impossible, event failed, or event end state after which subsequent sub-events of the touch-based gesture are ignored. In this case, the other event recognizers (if any) that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
In some embodiments, the respective event recognizer 180 includes metadata 183 with configurable attributes, flags, and/or lists that indicate how the event delivery system should perform sub-event delivery to the actively engaged event recognizer. In some embodiments, metadata 183 includes configurable attributes, flags, and/or lists that indicate how event recognizers interact with each other or are capable of interacting. In some embodiments, metadata 183 includes configurable properties, flags, and/or lists that indicate whether sub-events are delivered to different levels in a view or programmatic hierarchy.
In some implementations, when one or more particular sub-events of an event are identified, the respective event identifier 180 activates an event handler 190 associated with the event. In some implementations, the respective event identifier 180 delivers event information associated with the event to the event handler 190. The activate event handler 190 is different from sending sub-events (and deferred sending) to the corresponding hit view. In some embodiments, event recognizer 180 throws a flag associated with the recognized event, and event handler 190 associated with the flag captures the flag and performs a predefined process.
In some implementations, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about the sub-event without activating the event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with the sub-event sequence or to an actively engaged view. Event handlers associated with the sequence of sub-events or with the actively engaged views receive the event information and perform a predetermined process.
In some embodiments, the data updater 176 creates and updates data used in the application 136-1. For example, the data updater 176 updates phone numbers used in the contacts module 137 or stores video files used in the video or music player module 152. In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, the object updater 177 creates a new user interface object or updates the location of the user interface object. GUI updater 178 updates the GUI. For example, the GUI updater 178 prepares the display information and sends the display information to the graphics module 132 for display on a touch-sensitive display.
In some embodiments, event handler 190 includes or has access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, the data updater 176, the object updater 177, and the GUI updater 178 are included in a single module of the respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
It should be appreciated that the above discussion regarding event handling of user touches on a touch sensitive display is also applicable to other forms of user input that utilize an input device to operate the multifunction device 100, not all of which are initiated on a touch screen. For example, mouse movements and mouse button presses optionally in conjunction with single or multiple keyboard presses or holds; contact movement on the touchpad, such as tapping, dragging, scrolling, etc.; stylus input; movement of the device; verbal instructions; detected eye movement; inputting biological characteristics; and/or any combination thereof is optionally used as input corresponding to sub-events defining the event to be identified.
FIG. 1C is a block diagram illustrating a haptic output module according to some embodiments. In some embodiments, I/O subsystem 106 (e.g., haptic feedback controller 161 (fig. 1A) and/or other input controller 160 (fig. 1A)) includes at least some of the exemplary components shown in fig. 1C. In some implementations, the peripheral interface 118 includes at least some of the exemplary components shown in fig. 1C.
In some embodiments, the haptic output module includes a haptic feedback module 133. In some implementations, the haptic feedback module 133 aggregates and combines haptic output from user interface feedback of software applications on the electronic device (e.g., feedback responsive to user input corresponding to a displayed user interface and prompts and other notifications indicating performance of operations or occurrence of events in the user interface of the electronic device). Haptic feedback module 133 includes one or more of waveform module 123 (for providing waveforms for generating haptic outputs), mixer 125 (for mixing waveforms, such as waveforms in different channels), compressor 127 (for reducing or compressing the dynamic range of the waveforms), low pass filter 129 (for filtering out high frequency signal components in the waveforms), and thermal controller 131 (for adjusting the waveforms according to thermal conditions). In some embodiments, haptic feedback module 133 is included in haptic feedback controller 161 (fig. 1A). In some embodiments, the individual units of haptic feedback module 133 (or individual implementations of haptic feedback module 133) are also included in an audio controller (e.g., audio circuit 110, fig. 1A) and used to generate the audio signal. In some embodiments, a single haptic feedback module 133 is used to generate the audio signal as well as to generate the waveform of the haptic output.
In some embodiments, haptic feedback module 133 also includes trigger module 121 (e.g., a software application, operating system, or other software module that determines to generate a haptic output and initiates a process for generating a corresponding haptic output). In some embodiments, the trigger module 121 generates a trigger signal that triggers (e.g., by the waveform module 123) the generation of a waveform. For example, the trigger module 121 generates a trigger signal based on a timing standard set in advance. In some embodiments, the trigger module 121 receives a trigger signal from outside the haptic feedback module 133 (e.g., in some embodiments, the haptic feedback module 133 receives a trigger signal from a hardware input processing module 146 located outside the haptic feedback module 133) and relays the trigger signal to other components within the haptic feedback module 133 (e.g., the waveform module 123) or software applications that trigger operation based on activation of a user interface element (e.g., an application icon or affordance within an application) or a hardware input device (e.g., a home button or an intensity-sensitive input surface, such as an intensity-sensitive touch screen) (e.g., using the trigger module 121). In some embodiments, trigger module 121 also receives haptic feedback generation instructions (e.g., from haptic feedback module 133, fig. 1A and 3). In some embodiments, trigger module 121 generates the trigger signal in response to receiving a haptic feedback instruction from haptic feedback module 133 (or trigger module 121 in haptic feedback module 133) (e.g., from haptic feedback module 133, fig. 1A and 3).
Waveform module 123 receives as input a trigger signal (e.g., from trigger module 121) and, in response to receiving the trigger signal, provides waveforms (e.g., waveforms selected from a predefined set of waveforms assigned for use by waveform module 123, such as the waveforms described in more detail below with reference to fig. 4F-4G) for generating one or more haptic outputs.
The mixer 125 receives waveforms as input (e.g., from the waveform module 123) and mixes the waveforms together. For example, when the mixer 125 receives two or more waveforms (e.g., a first waveform in a first channel and a second waveform in a second channel that at least partially overlaps the first waveform), the mixer 125 outputs a combined waveform that corresponds to the sum of the two or more waveforms. In some embodiments, the mixer 125 also modifies one or more of the two or more waveforms to emphasize a particular waveform relative to the remaining waveforms of the two or more waveforms (e.g., by increasing the scale of the particular waveform and/or decreasing the scale of other ones of the waveforms). In some cases, the mixer 125 selects one or more waveforms to remove from the combined waveform (e.g., when there are waveforms from more than three sources that have been requested to be output simultaneously by the haptic output generator 167, the waveform from the oldest source is discarded).
The mixer 127 receives waveforms (e.g., combined waveforms from the mixer 125) as inputs and modifies those waveforms. In some embodiments, compressor 127 scales these waveforms (e.g., according to the physical specifications of haptic output generator 167 (fig. 1A) or 357 (fig. 3)) such that the haptic output corresponding to these waveforms is scaled down. In some embodiments, the compressor 127 limits the waveform, such as by imposing a predefined maximum amplitude for the waveform. For example, the compressor 127 reduces the amplitude of the waveform portion that exceeds a predefined amplitude threshold while maintaining the amplitude of the waveform portion that does not exceed the predefined amplitude threshold. In some implementations, the compressor 127 reduces the dynamic range of the waveform. In some implementations, the compressor 127 dynamically reduces the dynamic range of the waveforms such that the combined waveform remains within the performance specifications (e.g., force and/or movable mass displacement limits) of the haptic output generator 167.
The low pass filter 129 receives a waveform (e.g., a compressed waveform from the compressor 127) as an input and filters (e.g., smoothes) the waveform (e.g., removes or reduces high frequency signal components in the waveform). For example, in some cases, the compressor 127 includes extraneous signals (e.g., high frequency signal components) in the compressed waveform that interfere with the haptic output generation and/or exceed the performance specifications of the haptic output generator 167 when generating the haptic output from the compressed waveform. The low pass filter 129 reduces or removes such extraneous signals in the waveform.
Thermal controller 131 receives as input a waveform (e.g., a filtered waveform from low pass filter 129) and adjusts the waveform according to thermal conditions of device 100 (e.g., based on an internal temperature detected within device 100, such as a temperature of haptic feedback controller 161, and/or an external temperature detected by device 100). For example, in some cases, the output of the haptic feedback controller 161 varies as a function of temperature (e.g., in response to receiving the same waveform, the haptic feedback controller 161 generates a first haptic output when the haptic feedback controller 161 is at a first temperature and a second haptic output when the haptic feedback controller 161 is at a second temperature different from the first temperature). For example, the magnitude (or amplitude) of the haptic output may vary depending on the temperature. To reduce the effects of temperature variations, the waveform is modified (e.g., the amplitude of the waveform is increased or decreased based on temperature).
In some implementations, the haptic feedback module 133 (e.g., the trigger module 121) is coupled to the hardware input processing module 146. In some embodiments, the other input controller 160 in fig. 1A includes a hardware input processing module 146. In some embodiments, the hardware input processing module 146 receives input from a hardware input device 145 (e.g., other inputs or control devices 116 in fig. 1A, such as a home button, or an intensity-sensitive input surface, such as an intensity-sensitive touch screen). In some implementations, the hardware input device 145 is any of the input devices described herein, such as one of the touch-sensitive display system 112 (fig. 1A), the keyboard/mouse 350 (fig. 3), the touchpad 355 (fig. 3), other input or control devices 116 (fig. 1A), or an intensity-sensitive home button. In some implementations, the hardware input device 145 is comprised of an intensity sensitive home button, rather than a touch sensitive display system 112 (fig. 1A), a keyboard/mouse 350 (fig. 3), or a touch pad 355 (fig. 3). In some implementations, in response to input from a hardware input device 145 (e.g., an intensity sensitive home button or touch screen), the hardware input processing module 146 provides one or more trigger signals to the haptic feedback module 133 to indicate that user input meeting predefined input criteria has been detected, such as input corresponding to a "click" (e.g., "press click" or "release click") of the home button. In some embodiments, the tactile feedback module 133 provides a waveform corresponding to a primary button "click" in response to an input corresponding to the primary button "click" to simulate tactile feedback of pressing a physical primary button.
In some embodiments, the haptic output module includes a haptic feedback controller 161 (e.g., haptic feedback controller 161 in fig. 1A) that controls the generation of the haptic output. In some embodiments, the haptic feedback controller 161 is coupled to a plurality of haptic output generators and selects one or more of the plurality of haptic output generators and sends waveforms to the selected one or more haptic output generators for generating haptic output. In some implementations, the touch feedback controller 161 coordinates haptic output requests corresponding to the activation hardware input device 145 and haptic output requests corresponding to the software event (e.g., haptic output requests from the haptic feedback module 133) and modifies one or more of the two or more waveforms to emphasize a particular waveform relative to the remaining ones of the two or more waveforms (e.g., by increasing the scale of the particular waveform and/or decreasing the scale of the remaining ones of the waveforms) to prioritize haptic output corresponding to the activation hardware input device 145 over haptic output corresponding to the software event.
In some embodiments, as shown in fig. 1C, the output of haptic feedback controller 161 is coupled to and provides an audio signal to audio circuitry of device 100 (e.g., audio circuitry 110, fig. 1A). In some embodiments, haptic feedback controller 161 provides both a waveform for generating the haptic output and an audio signal for providing an audio output along with generating the haptic output. In some embodiments, the haptic feedback controller 161 modifies the audio signal and/or waveform (used to generate the haptic output) such that the audio output and the haptic output are synchronized (e.g., by delaying the audio signal and/or waveform) in some embodiments, the haptic feedback controller 161 includes a digital-to-analog converter for converting the digital waveform to an analog signal that is received by the amplifier 163 and/or the haptic output generator 167.
In some embodiments, the haptic output module includes an amplifier 163. In some implementations, the amplifier 163 receives the waveform (e.g., from the haptic feedback controller 161) and amplifies the waveform and then sends the amplified waveform to the haptic output generator 167 (e.g., either the haptic output generator 167 (fig. 1A) or 357 (fig. 3)). For example, the amplifier 163 amplifies the received waveform to a signal level that meets the physical specifications of the haptic output generator 167 (e.g., to a voltage and/or current required by the haptic output generator 167 to generate the haptic output such that the signal sent to the haptic output generator 167 generates a haptic output corresponding to the waveform received from the haptic feedback controller 161) and sends the amplified waveform to the haptic output generator 167. In response, the tactile output generator 167 generates a tactile output (e.g., by shifting the movable mass back and forth in one or more dimensions relative to a neutral position of the movable mass).
In some embodiments, the haptic output module includes a sensor 169 coupled to the haptic output generator 167. The sensor 169 detects the state or change in state (e.g., mechanical position, physical displacement, and/or movement) of the tactile output generator 167 or one or more components of the tactile output generator 167 (e.g., one or more moving components for generating a tactile output, such as a membrane). In some embodiments, the sensor 169 is a magnetic field sensor (e.g., a hall effect sensor) or other displacement and/or motion sensor. In some embodiments, the sensor 169 provides information (e.g., the position, displacement, and/or movement of one or more components in the tactile output generator 167) to the tactile feedback controller 161, and the tactile feedback controller 161 adjusts the waveform output from the tactile feedback controller 161 (e.g., the waveform optionally sent to the tactile output generator 167 via the amplifier 163) based on the information provided by the sensor 169 regarding the state of the tactile output generator 167.
Fig. 2 illustrates a portable multifunction device 100 with a touch screen (e.g., touch-sensitive display system 112 of fig. 1A) in accordance with some embodiments. The touch screen optionally displays one or more graphics within a User Interface (UI) 200. In these embodiments, as well as other embodiments described below, a user can select one or more of these graphics by making a gesture on the graphics, for example, with one or more fingers 202 (not drawn to scale in the figures) or one or more styluses 203 (not drawn to scale in the figures). In some embodiments, selection of one or more graphics will occur when a user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, up and/or down), and/or scrolling of a finger that has been in contact with the device 100 (right to left, left to right, up and/or down). In some implementations or in some cases, inadvertent contact with the graphic does not select the graphic. For example, when the gesture corresponding to the selection is a tap, a swipe gesture that swipes over an application icon optionally does not select the corresponding application.
The device 100 optionally also includes one or more physical buttons, such as a "home" button, or a menu button 204. As previously described, menu button 204 is optionally used to navigate to any application 136 in a set of applications that are optionally executed on device 100. Alternatively, in some embodiments, the menu buttons are implemented as soft keys in a GUI displayed on a touch screen display.
In some embodiments, the device 100 includes a touch screen display, a menu button 204 (sometimes referred to as a home button 204), a press button 206 for powering the device on/off and for locking the device, one or more volume adjustment buttons 208, a Subscriber Identity Module (SIM) card slot 210, a headset plug 212, and a docking/charging external port 124. Pressing button 206 is optionally used to turn on/off the device by pressing the button and holding the button in the pressed state for a predefined time interval; locking the device by depressing the button and releasing the button before the predefined time interval has elapsed; and/or unlock the device or initiate an unlocking process. In some embodiments, the device 100 also accepts voice input through the microphone 113 for activating or deactivating certain functions. The device 100 also optionally includes one or more contact intensity sensors 165 for detecting intensity of contacts on the touch-sensitive display system 112 and/or one or more tactile output generators 167 for generating tactile outputs for a user of the device 100.
FIG. 3 is a block diagram of an exemplary multi-function device having a display and a touch-sensitive surface, according to some embodiments. The device 300 need not be portable. In some embodiments, the device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, a teaching device (such as a child learning toy), a gaming system, or a control device (e.g., a home controller or an industrial controller). The device 300 generally includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 for interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communications between system components. The device 300 includes an input/output (I/O) interface 330 with a display 340, typically a touch screen display. The I/O interface 330 also optionally includes a keyboard and/or mouse (or other pointing device) 350 and a touch pad 355, a tactile output generator 357 (e.g., similar to the one or more tactile output generators 167 described above with reference to fig. 1A) for generating tactile outputs on the device 300, sensors 359 (e.g., optical sensors, acceleration sensors, proximity sensors, touch sensitive sensors, and/or contact intensity sensors similar to the one or more contact intensity sensors 165 described above with reference to fig. 1A). Memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU 310. In some embodiments, memory 370 stores programs, modules, and data structures, or a subset thereof, similar to those stored in memory 102 of portable multifunction device 100 (fig. 1A). Furthermore, memory 370 optionally stores additional programs, modules, and data structures that are not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, word processing module 384, website creation module 386, disk editing module 388, and/or spreadsheet module 390, while memory 102 of portable multifunction device 100 (fig. 1A) optionally does not store these modules.
Each of the above identified elements in fig. 3 is optionally stored in one or more of the previously mentioned memory devices. Each of the identified modules corresponds to a set of instructions for performing the functions 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 rearranged in various embodiments. In some embodiments, memory 370 optionally stores a subset of the modules and data structures described above. Further, memory 370 optionally stores additional modules and data structures not described above.
Attention is now directed to embodiments of a user interface ("UI") optionally implemented on the portable multifunction device 100.
Fig. 4A illustrates an exemplary user interface 400 of an application menu on the portable multifunction device 100 in accordance with some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, the user interface 400 includes the following elements, or a subset or superset thereof:
signal strength indicators for wireless communications (such as cellular signals and Wi-Fi signals);
Time;
bluetooth indicator;
battery status indicator;
tray 408 with commonly used application icons, such as:
an icon 416 of the flag "phone" of the o phone module 138, the icon 416 optionally including an indicator 414 of the number of missed calls or voice messages;
an icon 418 of the tag "mail" of the o email client module 140, the icon 418 optionally including an indicator 410 of the number of unread emails;
icon 420 labeled "browser" of the omicron browser module 147; and
icon 422 labeled "music" of the omicron video and music player module 152; and
Icons of other applications, such as:
icon 424 labeled "message" of omicron IM module 141;
icon 426 labeled "calendar" of the o calendar module 148;
icon 428 labeled "photo" of image management module 144;
an icon 430 labeled "camera" of the omicron camera module 143;
icon 432 labeled "online video" of online video module 155;
icon 434 labeled "stock market" for the o stock market desktop applet 149-2;
icon 436 labeled "map" of the omicron map module 154;
Icon 438 labeled "weather" for the o weather desktop applet 149-1;
icon 440 labeled "clock" for the o alarm desktop applet 149-4;
icon 442 labeled "fitness support" of omicron fitness support module 142;
icon 444 labeled "notepad" for notepad module 153; and
an icon 446 of a set application or module, the icon 446 providing access to the settings of the device 100 and its various applications 136.
It should be noted that the iconic labels shown in fig. 4A are merely exemplary. For example, other labels are optionally used for various application icons. In some embodiments, the label of the respective application icon includes a name of the application corresponding to the respective application icon. In some embodiments, the label of a particular application icon is different from the name of the application corresponding to the particular application icon.
Fig. 4B illustrates an exemplary user interface on a device (e.g., device 300 in fig. 3) having a touch-sensitive surface 451 (e.g., a tablet or touchpad 355 in fig. 3) separate from the display 450. While many examples will be given later with reference to inputs on touch screen display 112 (where the touch sensitive surface and the display are combined), in some embodiments the device detects inputs on a touch sensitive surface separate from the display, as shown in fig. 4B. In some implementations, the touch-sensitive surface (e.g., 451 in fig. 4B) has a primary axis (e.g., 452 in fig. 4B) that corresponds to the primary axis (e.g., 453 in fig. 4B) on the display (e.g., 450). According to these embodiments, the device detects contact with the touch-sensitive surface 451 at locations corresponding to respective locations on the display (e.g., 460 and 462 in fig. 4B) (e.g., in fig. 4B, 460 corresponds to 468 and 462 corresponds to 470). Thus, while the touch-sensitive surface (e.g., 451 in FIG. 4B) is separate from the display (e.g., 450 in FIG. 4B) of the multifunction device, user inputs (e.g., contacts 460 and 462 and movement thereof) detected by the device on the touch-sensitive surface are used by the device to manipulate the user interface on the display. It should be appreciated that similar approaches are optionally used for other user interfaces described herein.
Additionally, while the following examples are primarily presented with reference to finger inputs (e.g., finger contacts, single-finger flick gestures, finger swipe gestures, etc.), it should be appreciated that in some embodiments one or more of these finger inputs are replaced by input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., rather than a contact), followed by movement of the cursor along the path of the swipe (e.g., rather than movement of the contact). As another example, a flick gesture is optionally replaced by a mouse click (e.g., instead of detection of contact, followed by ceasing to detect contact) when the cursor is over the position of the flick gesture. Similarly, when multiple user inputs are detected simultaneously, it should be appreciated that multiple computer mice are optionally used simultaneously, or that the mice and finger contacts are optionally used simultaneously.
As used herein, the term "focus selector" refers to an input element for indicating the current portion of a user interface with which a user is interacting. In some implementations that include a cursor or other position marker, the cursor acts as a "focus selector" such that when the cursor detects an input (e.g., presses an input) on a touch-sensitive surface (e.g., touch pad 355 in fig. 3 or touch-sensitive surface 451 in fig. 4B) above a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations including a touch screen display (e.g., touch sensitive display system 112 in fig. 1A or the touch screen in fig. 4A) that enables direct interaction with user interface elements on the touch screen display, the contact detected on the touch screen acts as a "focus selector" such that when an input (e.g., a press input by contact) is detected on the touch screen display at the 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 area of the user interface to another area of the user interface without a corresponding movement of a cursor or movement of contact on the touch screen display (e.g., by moving focus from one button to another using a tab key or arrow key); in these implementations, the focus selector moves in accordance with movement of the focus between different areas of the user interface. Regardless of the particular form that the focus selector takes, the focus selector is typically controlled by the user in order to deliver a user interface element (or contact on the touch screen display) that is interactive with the user of the user interface (e.g., by indicating to the device the element with which the user of the user interface desires to interact). For example, upon detection of a press input on a touch-sensitive surface (e.g., a touchpad or touch screen), the position of a focus selector (e.g., a cursor, contact, or selection box) over a respective button will indicate that the user desires to activate the respective button (rather than other user interface elements shown on the device display).
As used in this specification and in the claims, the term "intensity" of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of the contact on the touch-sensitive surface (e.g., finger contact or stylus contact), or refers to a surrogate of the force or pressure of the contact on the touch-sensitive surface. The intensity of the contact has a range of values that includes at least four different values and more typically includes hundreds of different values (e.g., at least 256). The intensity of the contact is optionally determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure forces at different points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average or summation) to determine an estimated contact force. Similarly, the pressure-sensitive tip of the stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area and/or its variation detected on the touch-sensitive surface, the capacitance of the touch-sensitive surface and/or its variation in the vicinity of the contact and/or the resistance of the touch-sensitive surface and/or its variation in the vicinity of the contact is optionally used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some implementations, surrogate measurements of contact force or pressure are directly used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to surrogate measurements). In some implementations, an alternative measurement of contact force or pressure is 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). The intensity of the contact is used as an attribute of the user input, allowing the user to access additional device functions that the user would not otherwise be readily accessible on a smaller-sized device for displaying affordances (e.g., on a touch-sensitive display) and/or receiving user input (e.g., via a touch-sensitive display, a touch-sensitive surface, or physical/mechanical controls such as knobs or buttons).
In some implementations, the contact/motion module 130 uses a set of one or more intensity thresholds to determine whether an operation has been performed by a user (e.g., to determine whether the user has "clicked" on an icon). In some implementations, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by activation thresholds of particular physical actuators, and may be adjusted without changing the physical hardware of the device 100). For example, without changing the touchpad or touch screen display hardware, the mouse "click" threshold of the touchpad or touch screen may be set to any of a wide range of predefined thresholds. Additionally, in some implementations, a user of the device is provided with software settings for adjusting one or more intensity thresholds in a set of intensity thresholds (e.g., by adjusting individual intensity thresholds and/or by adjusting multiple intensity thresholds at once with a system-level click on an "intensity" parameter).
As used in the specification and claims, the term "characteristic intensity" of a contact refers to the characteristic of a contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples or a set of intensity samples acquired during a predetermined period of time (e.g., 0.05 seconds, 0.1 seconds, 0.2 seconds, 0.5 seconds, 1 second, 2 seconds, 5 seconds, 10 seconds) relative to a predefined event (e.g., after detection of contact, before detection of lift-off of contact, before or after detection of start of movement of contact, before detection of end of contact, before or after detection of increase in intensity of contact and/or before or after detection of decrease in intensity of contact). The characteristic intensity of the contact is optionally based on one or more of: maximum value of contact intensity, average value of contact intensity, value at the first 10% of contact intensity, half maximum value of contact intensity, 90% maximum value of contact intensity, value generated by low-pass filtering contact intensity over a predefined period of time or from a predefined time, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some implementations, the feature intensities are compared to a set of one or more intensity thresholds to determine whether the user has performed an operation. For example, the set of one or more intensity thresholds may include a first intensity threshold and a second intensity threshold. In this example, contact of the feature strength that does not exceed the first strength threshold results in a first operation, contact of the feature strength that exceeds the first strength threshold but does not exceed the second strength threshold results in a second operation, and contact of the feature strength that exceeds the second threshold results in a third operation. In some implementations, a comparison between the feature intensity and one or more intensity thresholds is used to determine whether to perform one or more operations (e.g., whether to perform the respective option or to forgo performing the respective operation) instead of being used to determine whether to perform the first operation or the second operation.
In some implementations, a portion of the gesture is identified for determining a feature strength. For example, the touch-sensitive surface may receive a continuous swipe contact that transitions from a starting position and reaches an ending position (e.g., a drag gesture) where the intensity of the contact increases. In this example, the characteristic intensity of the contact at the end position may be based on only a portion of the continuous swipe contact, rather than the entire swipe contact (e.g., only a portion of the swipe contact at the end position). In some implementations, a smoothing algorithm may be applied to the intensity of the swipe gesture prior to determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of the following: an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and/or an exponential smoothing algorithm. In some cases, these smoothing algorithms eliminate narrow spikes or depressions in the intensity of the swipe contact for the purpose of determining the characteristic intensity.
The user interface diagrams described herein optionally include various intensity diagrams that illustrate contact on a touch-sensitive surface relative to one or more intensity thresholds (e.g., contact detection intensity threshold IT 0 Light press intensity threshold IT L Threshold IT of deep compression strength D (e.g., at least initially above IT L ) And/or one or more other intensity thresholds (e.g., ratio IT L Low intensity threshold IT H ) A) the current intensity. The intensity map is typically not part of the displayed user interface, but is provided to help interpret the map. In some embodiments, the tap strength threshold corresponds to a strength of: at this intensity the device will perform the operations normally associated with clicking a button of a physical mouse or touch pad. In some embodiments, the deep compression intensity threshold corresponds to an intensity of: at this intensity the device will perform an operation that is different from the operation normally associated with clicking a physical mouse or a button of a touch pad. In some embodiments, when the characteristic intensity is detected to be below the light press intensity threshold (e.g., and above the nominal contact detection intensity threshold IT 0 A contact below the nominal contact detection intensity threshold is no longer detected), the device will move the focus selector according to the movement of the contact over the touch-sensitive surface without performing a soft or deep press with the soft press intensity thresholdOperation associated with a compressive strength threshold. Generally, unless otherwise stated, these intensity thresholds are consistent across different sets of user interface drawings.
In some embodiments, the response of the device to the input detected by the device depends on a criterion based on the contact strength during the input. For example, for some "tap" inputs, the intensity of the contact exceeding a first intensity threshold during the input triggers a first response. In some embodiments, the response of the device to the input detected by the device depends on criteria including both the contact strength during the input and a time-based criterion. For example, for some "deep press" inputs, the intensity of the contact exceeding a second intensity threshold greater than the first intensity threshold of the light press triggers a second response whenever a delay time passes between the first intensity threshold being met and the second intensity threshold being met during the input. The duration of the delay time is typically less than 200ms (milliseconds) (e.g., 40ms, 100ms, or 120ms, depending on the magnitude of the second intensity threshold, wherein the delay time increases as the second intensity threshold increases). This delay time helps to avoid accidentally recognizing a deep press input. As another example, for some "deep press" inputs, a period of reduced sensitivity will occur after the first intensity threshold is reached. During the period of reduced sensitivity, the second intensity threshold increases. This temporary increase in the second intensity threshold also helps to avoid accidental deep press inputs. For other deep press inputs, the response to detecting the deep press input is not dependent on a time-based criterion.
In some implementations, one or more of the input intensity thresholds and/or corresponding outputs vary based on one or more factors (such as user settings, touch movements, input timing, application operation, rate at which intensity is applied, number of simultaneous inputs, user history, environmental factors (e.g., ambient noise), focus selector position, etc., exemplary factors are described in U.S. patent application Ser. Nos. 14/399,606 and 14/624,296, which are incorporated herein by reference in their entirety.
For example, FIG. 4C illustrates a dynamic intensity threshold 480 that varies over time based in part on the intensity of the touch input 476 over time. The dynamic intensity threshold 480 is the sum of the two components: a first component 474 that decays over time after a predefined delay time p1 from when the touch input 476 was initially detected, and a second component 478 that tracks the intensity of the touch input 476 over time. The initial high intensity threshold of the first component 474 reduces the inadvertent triggering of a "deep press" response while still allowing an immediate "deep press" response if the touch input 476 provides sufficient intensity. The second component 478 reduces the gradual intensity fluctuation through the touch input without inadvertently triggering a "deep press" response. In some implementations, a "deep press" response is triggered when the touch input 476 meets the dynamic intensity threshold 480 (e.g., at point 481 in fig. 4C).
FIG. 4D illustrates another dynamic intensity threshold 486 (e.g., intensity threshold I D ). Fig. 4D also shows two other intensity thresholds: first intensity threshold I H And a second intensity threshold I L . In FIG. 4D, although the touch input 484 meets the first intensity threshold I before time p2 H And a second intensity threshold I L But does not provide a response until a delay time p2 has elapsed at time 482. Also in fig. 4D, dynamic intensity threshold 486 decays over time, with the decay being at slave time 482 (trigger and second intensity threshold I L At the time of the associated response) has elapsed a predefined delay time p 1. This type of dynamic intensity threshold reduction is immediately triggered by a lower threshold intensity (such as a first intensity threshold I H Or a second intensity threshold I L ) Accidental triggering of the dynamic intensity threshold I after or simultaneously with the associated response D An associated response.
Fig. 4E shows yet another dynamic intensity threshold 492 (e.g., intensity threshold I D ). In FIG. 4E, after a delay time p2 has elapsed since the time touch input 490 was initially detected, the trigger and intensity threshold I L An associated response. Meanwhile, the dynamic intensity threshold 492 has been extended by a predefined delay when initially detected from the touch input 490 Decay after a delay time p 1. Thus, at trigger and intensity threshold I L Decreasing the intensity of the touch input 490 after the associated response, then increasing the intensity of the touch input 490 without releasing the touch input 490 may trigger the intensity threshold I D The associated response (e.g., at time 494), even when the intensity of the touch input 490 is below another intensity threshold (e.g., intensity threshold I L ) As does the case.
The contact characteristic intensity is lower than the light pressing intensity threshold IT L Is increased to an intensity between the light compression intensity threshold IT L And a deep compression strength threshold IT D The intensity in between is sometimes referred to as a "soft press" input. The characteristic intensity of the contact is never lower than the deep-press intensity threshold IT D Is increased to an intensity above the deep compression intensity threshold IT D Sometimes referred to as a "deep press" input. The contact characteristic intensity is from below the contact detection intensity threshold IT 0 Is increased to an intensity between the contact detection intensity threshold IT 0 And the light pressing intensity threshold IT L The intensity in between is sometimes referred to as detecting contact on the touch surface. The characteristic intensity of the contact is higher than the contact detection intensity threshold IT 0 Is reduced to an intensity below the contact detection intensity threshold IT 0 Is sometimes referred to as detecting the lift-off of a contact from the touch surface. In some embodiments, IT 0 Zero. In some embodiments, IT 0 Greater than zero in some illustrations, a hatched circle or oval is used to represent the intensity of the contact on the touch-sensitive surface. In some illustrations, an unshaded circle or oval is used to represent a corresponding contact on the touch-sensitive surface without specifying the intensity of the corresponding contact.
In some implementations described herein, one or more operations are performed in response to detecting a gesture that includes a respective press input or in response to detecting a respective press input performed with a respective contact (or contacts), wherein the respective press input is detected based at least in part on detecting an increase in intensity of the contact (or contacts) above a press input intensity threshold. In some implementations, the respective operation is performed in response to detecting that the intensity of the respective contact increases above a press input intensity threshold (e.g., the respective operation is performed on a "downstroke" of the respective press input). In some embodiments, the press input includes an increase in intensity of the respective contact above a press input intensity threshold and a subsequent decrease in intensity of the contact below the press input intensity threshold, and the respective operation is performed in response to detecting the subsequent decrease in intensity of the respective contact below the press input threshold (e.g., the respective operation is performed on an "upstroke" of the respective press input).
In some implementations, the device employs intensity hysteresis to avoid accidental inputs, sometimes referred to as "jitter," in which the device defines or selects a hysteresis intensity threshold having a predefined relationship to the compression input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the compression input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable proportion of the compression input intensity threshold). Thus, in some embodiments, the press input includes an increase in intensity of the respective contact above a press input intensity threshold and a subsequent decrease in intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold, and the respective operation is performed in response to detecting that the intensity of the respective contact subsequently decreases below the hysteresis intensity threshold (e.g., the respective operation is performed on an "upstroke" of the respective press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in contact intensity from an intensity equal to or below the hysteresis intensity threshold to an intensity equal to or above the press input intensity threshold and optionally a subsequent decrease in contact intensity to an intensity equal to or below the hysteresis intensity, and a corresponding operation is performed in response to detecting a press input (e.g., an increase in contact intensity or a decrease in contact intensity depending on the circumstances).
For ease of explanation, the description of operations performed in response to a press input associated with a press input intensity threshold or in response to a gesture comprising a press input is optionally triggered in response to detecting: the intensity of the contact increases above the compression input intensity threshold, the intensity of the contact increases from an intensity below the hysteresis intensity threshold to an intensity above the compression input intensity threshold, the intensity of the contact decreases below the compression input intensity threshold, or the intensity of the contact decreases below the hysteresis intensity threshold corresponding to the compression input intensity threshold. In addition, in examples where the operation is described as being performed in response to the intensity of the detected contact decreasing below a press input intensity threshold, the operation is optionally performed in response to the intensity of the detected contact decreasing below a hysteresis intensity threshold that corresponds to and is less than the press input intensity threshold. As described above, in some embodiments, the triggering of these operations also depends on the satisfaction of a time-based criterion (e.g., a delay time has elapsed between the satisfaction of the first intensity threshold and the satisfaction of the second intensity threshold).
As used in this specification and in the claims, the term "haptic output" refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to a center of mass of the device, to be detected by a user with a user's feel. For example, in the case where the device or component of the device is in contact with a touch-sensitive surface of the user (e.g., a finger, palm, or other portion of the user's hand), the haptic output generated by the physical displacement will be interpreted by the user as a haptic sensation corresponding to a perceived change in a physical characteristic of the device or component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or touch pad) is optionally interpreted by a user as a "press click" or "click-down" of a physically actuated button. In some cases, the user will feel a tactile sensation, such as "press click" or "click down", even when the physical actuation button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movement is not moved. As another example, movement of the touch-sensitive surface may optionally be interpreted or sensed by a user as "roughness" of the touch-sensitive surface, even when the smoothness of the touch-sensitive surface is unchanged. While such interpretation of touches by a user will be limited by the user's individualized sensory perception, many sensory perceptions of touches are common to most users. Thus, when a haptic output is described as corresponding to a particular sensory perception of a user (e.g., "click down," "click up," "roughness"), unless stated otherwise, the haptic output generated corresponds to a physical displacement of the device or component thereof that would generate the sensory perception of a typical (or normal) user. Using haptic output to provide haptic feedback to a user enhances the operability of the device and makes the user device interface more efficient (e.g., by helping the user provide appropriate input and reducing user error in operating/interacting with the device), thereby further reducing power usage and extending battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, the haptic output pattern specifies characteristics of the haptic output, such as the magnitude of the haptic output, the shape of the motion waveform of the haptic output, the frequency of the haptic output, and/or the duration of the haptic output.
When a device generates haptic outputs having different haptic output patterns (e.g., one or more haptic output generators that generate haptic outputs via moving a movable mass), the haptic outputs may generate different haptic sensations in a user holding or touching the device. While the user's senses are based on the user's perception of the haptic output, most users will be able to recognize changes in the waveform, frequency, and amplitude of the haptic output generated by the device. Thus, the waveform, frequency, and amplitude may be adjusted to indicate to the user that different operations have been performed. As such, having characteristics (e.g., size, material, weight, stiffness, smoothness, etc.) designed, selected, and/or arranged to simulate objects in a given environment (e.g., a user interface including graphical features and objects, a simulated physical environment having virtual boundaries and virtual objects, a real physical environment having physical boundaries and physical objects, and/or a combination of any of the above); behavior (e.g., oscillation, displacement, acceleration, rotation, stretching, etc.); and/or interactive (e.g., bump, adhere, repel, attract, rub, etc.) haptic output patterns will in some cases provide helpful feedback to the user that reduces input errors and improves the efficiency of the user's operation of the device. In addition, the haptic output is optionally generated to correspond to feedback that is independent of the simulated physical characteristic (such as input threshold or object selection). Such haptic output will in some cases provide helpful feedback to the user, which reduces input errors and improves the efficiency of the user's operation of the device.
In some embodiments, a haptic output with a suitable haptic output pattern serves as a cue for the occurrence of an event of interest in the user interface or behind a screen in the device. Examples of events of interest include activation of an affordance (e.g., a real or virtual button, or toggle switch) provided on a device or in a user interface, success or failure of a requested operation, reaching or crossing a boundary in a user interface, entering a new state, switching input focus between objects, activating a new mode, reaching or crossing an input threshold, detecting or recognizing a type of input or gesture, and so forth. In some embodiments, a tactile output is provided to act as a warning or cue of an impending event or result that would occur unless a change of direction or interrupt input was detected in time. Haptic output is also used in other contexts to enrich the user experience, improve the accessibility of the device by users with visual or movement difficulties or other accessibility needs, and/or improve the efficiency and functionality of the user interface and/or device. Optionally comparing the haptic output with audio input and/or visual user interface changes, which further enhances the user experience when the user interacts with the user interface and/or device and facilitates better transmission of information about the state of the user interface and/or device, and which reduces input errors and improves the efficiency of the user's operation of the device.
Fig. 4F-4H provide a set of sample haptic output patterns that may be used, alone or in combination, as such or through one or more transformations (e.g., modulation, amplification, truncation, etc.) to generate appropriate haptic feedback for various purposes in various scenarios, such as those described above and those described with respect to the user interfaces and methods discussed herein. This example of a control panel for haptic output shows how a set of three waveforms and eight frequencies can be used to generate an array of haptic output patterns. In addition to the haptic output modes shown in these figures, each of these haptic output modes is optionally tuned in magnitude by changing the gain value of the haptic output mode, as shown, for example, for the FullTap 80Hz, fullTap 200Hz, miniTap 80Hz, miniTap 200Hz, microTap 80Hz, and MicroTap 200Hz in fig. 4I-4K, each shown as a variant with gains of 1.0, 0.75, 0.5, and 0.25. As shown in fig. 4I to 4K, changing the gain of the haptic output pattern changes the amplitude of the pattern without changing the frequency of the pattern or changing the shape of the waveform. In some embodiments, changing the frequency of the tactile output pattern also results in a lower amplitude because some tactile output generators are limited by how much force can be applied to the movable mass, so the higher frequency movement of the mass is constrained to a lower amplitude to ensure that the acceleration required to generate the waveform does not require forces outside the operating force range of the tactile output generator (e.g., peak amplitudes of the FullTap at 230Hz, 270Hz, and 300Hz are lower than the amplitudes of the FullTap at 80Hz, 100Hz, 125Hz, and 200 Hz).
Fig. 4F to 4K illustrate haptic output patterns having specific waveforms. The waveform of the haptic output pattern represents a pattern of physical displacement versus time relative to a neutral position (e.g., xzero) through which the movable mass passes to generate a haptic output having the haptic output pattern. For example, the first set of haptic output modes shown in fig. 4F (e.g., the haptic output mode of "FullTap") each have a waveform that includes oscillations with two complete cycles (e.g., oscillations that begin and end at and three times through the neutral position). The second set of haptic output modes shown in fig. 4G (e.g., the haptic output modes of "MiniTap") each have a waveform that includes oscillations with one complete cycle (e.g., oscillations that begin and end at the neutral position and once through the neutral position). The third set of haptic output modes shown in fig. 4H (e.g., the haptic output modes of "MicroTap") each have a waveform that includes oscillations with half a complete cycle (e.g., oscillations that begin and end at the neutral position and do not pass through the neutral position). The waveform of the haptic output pattern also includes a start buffer and an end buffer representing gradual acceleration and deceleration of the movable mass at the start and end of the haptic output. The exemplary waveforms shown in fig. 4F-4K include xmin and xmax values representing the maximum and minimum degrees of movement of the movable mass. For larger electronic devices with larger movable masses, the minimum and maximum degree of movement of the masses may be greater or lesser. The examples shown in fig. 4F-4K describe movement of the mass in 1 dimension, but similar principles are applicable to movement of the movable mass in two or three dimensions.
As shown in fig. 4F-4K, each haptic output pattern also has a corresponding characteristic frequency that affects the "pitch" of the haptic sensations perceived by the user from the haptic output having that characteristic frequency. For continuous haptic output, the characteristic frequency represents the number of cycles (e.g., cycles per second) completed by the movable mass of the haptic output generator in a given period of time. For discrete haptic outputs, a discrete output signal is generated (e.g., having 0.5, 1, or 2 cycles), and the characteristic frequency value specifies how fast the movable mass needs to move to generate a haptic output having the characteristic frequency. As shown in fig. 4F-4H, for each type of haptic output (e.g., defined by a corresponding waveform, such as FullTap, miniTap, or MicroTap), a higher frequency value corresponds to a faster movement of the movable mass, and thus, in general, to a shorter haptic output completion time (e.g., a time that includes the number of cycles required to complete a discrete haptic output plus a start and end buffer time). For example, a FullTap with a characteristic frequency of 80Hz takes longer to complete than a FullTap with a characteristic frequency of 100Hz (e.g., 35.4ms and 28.3ms in fig. 4F). Further, for a given frequency, a haptic output having more cycles in its waveform at the corresponding frequency takes longer to complete than a haptic output having fewer cycles in its waveform at the same corresponding frequency. For example, a 150Hz FullTap takes longer to complete than a 150Hz MiniTap (e.g., 19.4ms and 12.8 ms), and a 150Hz MiniTap takes longer to complete than a 150Hz MicroTap (e.g., 12.8ms and 9.4 ms). However, for haptic output modes with different frequencies, this rule may not apply (e.g., haptic outputs with more cycles but with higher frequencies may take a shorter amount of time to complete than haptic outputs with fewer cycles but with lower frequencies, and vice versa). For example, at 300Hz, fullTap takes as long as MiniTap (e.g., 9.9 ms).
As shown in fig. 4F to 4K, the haptic output mode also has a characteristic amplitude that affects the amount of energy contained in the haptic signal or the "intensity" of the tactile sensation that the user can feel through the haptic output having the characteristic amplitude. In some embodiments, the characteristic amplitude of the haptic output pattern refers to an absolute or normalized value representing the maximum displacement of the movable mass relative to the neutral position when the haptic output is generated. In some embodiments, the characteristic amplitude of the haptic output pattern may be adjusted according to various conditions (e.g., customized based on user interface context and behavior) and/or pre-configured metrics (e.g., input-based metrics, and/or user interface-based metrics), such as by a fixed or dynamically determined gain factor (e.g., a value between 0 and 1). In some implementations, a characteristic of the input (e.g., a rate of change in the characteristic intensity of a contact in a press input or a rate of movement of the contact on a touch-sensitive surface) during triggering of the input to generate the tactile output is measured based on a metric of the input (e.g., an intensity change metric or an input speed metric). In some embodiments, a characteristic of a user interface element (e.g., a speed of movement of the element across a hidden error or visible boundary in the user interface) during a user interface change that triggers generation of a tactile output is measured based on a metric of the user interface (e.g., a cross-boundary speed metric). In some embodiments, the characteristic amplitude of the haptic output pattern may be "envelope" modulated, and the peaks of adjacent cycles may have different amplitudes, with one of the waveforms shown above being further modified by multiplication with an envelope parameter that varies over time (e.g., from 0 to 1) to gradually adjust the amplitude of the portion of the haptic output over time as it is generated.
Although specific frequencies, amplitudes and waveforms are shown in the sample haptic output pattern for illustrative purposes in fig. 4F-4K, haptic output patterns having other frequencies, amplitudes and waveforms may be used for similar purposes. For example, waveforms having between 0.5 and 4 cycles may be used. Other frequencies in the range of 60Hz-400Hz may also be used.
User interface and associated process
Attention is now directed to embodiments of a user interface ("UI") and associated processes that may be implemented on an electronic device, such as portable multifunction device 100 or device 300, having a display, a touch-sensitive surface, one or more tactile output generators (optionally) for generating tactile outputs, and (optionally) one or more sensors for detecting the intensity of contacts with the touch-sensitive surface.
Fig. 5 A1-5 A4 and 5B-5 AY illustrate exemplary user interfaces for delivering preferences for future notifications of events of changing event types according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in fig. 7A-7G, 8A-8E, and 9A-9E. For ease of explanation, some of the embodiments will be discussed with reference to operations performed on a device having a touch sensitive display system 112. In such implementations, the focus selector is optionally: a respective finger or stylus contact, a representative point corresponding to the finger or stylus contact (e.g., the center of gravity of the respective contact or a point associated with the respective contact), or the center of gravity of two or more contacts detected on the touch-sensitive display system 112. However, in response to detecting contact on the touch-sensitive surface 451 when the user interface shown in the figures is displayed on the display 450 along with the focus selector, similar operations are optionally performed on a device having the display 450 and the separate touch-sensitive surface 451.
Fig. 5 A1-5 A4 illustrate activating a display (e.g., touch sensitive display 112) in response to changing the orientation of the device 100. A notification received when the display device is in a screen off state when the display is activated. In some implementations, the device uses one or more sensors (e.g., accelerometers, gyroscopes, audio sensors, thermal sensors, and/or light sensors) to determine whether the orientation of the device has changed. For example, the device determines whether the device is rotated beyond a threshold angle (e.g., rotated along an axis of the device, such as tilted from a position in which the device is substantially horizontal to a position in which the device is substantially vertical). In fig. 5A1, the device is in a screen off state when the device is held flat in the user's hand 5002 such that the device display is substantially horizontal. In fig. 5A2, the device is tilted such that the display is more vertical than in fig. 5 A1. Because the tilt angle of the device does not increase above the threshold tilt angle in fig. 5A2, the display is not activated. In fig. 5A3, the device is tilted such that the display is more vertical than in fig. 5 A2. Because the tilt angle of the device increases above the threshold tilt angle in fig. 5A3, the display transitions from the screen off state to the screen on state and the awake screen user interface 5004 (e.g., the initial user interface displayed when the device transitions from the screen off state to the screen on state) is displayed by the display 112. In fig. 5A4, the display 112 is substantially vertical.
In fig. 5A4, a lock icon 5005 is shown in the wake screen user interface 5004 to indicate that the device is locked. In fig. 5B, the lock icon 5005 is replaced with an unlock icon 5007 to indicate that the device has been unlocked (e.g., in response to receiving user authentication information, such as biometric information of the device user or a password of the device). The wakeup screen user interface 5004 in the locked mode optionally displays less information (e.g., displaying an edited version of the notification) than the wakeup screen user interface 5004 displayed in the unlocked mode.
Fig. 5B illustrates a wake screen user interface 5004 in accordance with some embodiments. The wake screen user interface 5004 displays notifications 5006, 5008, 5010, 5012, 5014, and 5016 corresponding to events (e.g., events occurring when the device 100 is in a screen off state). For example, notification 5006 corresponds to an event generated by an application entitled "social media" (as shown by application identification information 5018). The notification 5006 also includes an icon 5020 corresponding to the social media application and a received time indication 5022.
Fig. 5C-5J illustrate inputs for changing future-learned delivery preferences for events from a social media application. Inputs for changing delivery preferences for future notifications include: swipe input at social media notification 5006 to display a set of notification controls 5028, as shown in fig. 5C-5E; tapping input at the option control 5030 from the set of notification controls 5028 to display a notification delivery preference control menu 5038, as shown in fig. 5G to 5H; and tap input at control 5040 from delivery preference control menu 5038, as shown in fig. 5I. Input is made at control 5040 to change the delivery preference of future notifications of events from the social media application from a highlighted delivery mode (e.g., future notifications of events from the social media application are displayed in this mode on wakeup screen user interface 5004) to a quiet delivery display mode (e.g., future notifications of events from the social media application are sent to the notification history in this mode without first being displayed on wakeup screen user interface 5004 such that input for displaying the notification history is required to view the notification).
Fig. 5C-5E illustrate a swipe left input at notification 5006, which shows a set of notification controls 5028 corresponding to notification 5006. In fig. 5C, contact 5024 is detected at a position on touch screen 112 corresponding to notification 5006. In fig. 5C-5E, the contact 5024 moves along the path shown by arrow 5026. As the contact 5024 moves to the left along the path shown by arrow 5026, the notification 5006 also moves to the left (e.g., as if the notification 5006 were "dragged" by the contact as the contact 5024 moves), thereby displaying a set of notification controls 5028, as shown in fig. 5E. The set of notification controls 5028 includes an options control 5030 (e.g., a set of notification delivery preference controls for displaying social media applications), a view control 5032 (e.g., for displaying an expanded view of notifications 5006), and a clear control 5034 (e.g., for dismissing notifications 5006).
Fig. 5G illustrates a tap input made through contact input 5036 at a location on touch screen 112 corresponding to option control 5030. In response to the tap input, the display of notifications 5008-5016 is stopped and notification delivery preference control menu 5038 is displayed in wake screen user interface 5004 as shown in FIG. 5H. The notification delivery preference control menu 5038 includes controls for adjusting the delivery preferences of notifications from the social media application (because the notification delivery preference control menu 5038 is accessed via input at the notification 5006 of the social media application). The notification delivery preference control menu 5038 includes a control 5040 for changing delivery preferences of future notifications of events of the social media application to a quiet delivery mode (e.g., future notifications of events of the social media application will be sent to the notification history in this mode when received), a control 5042 for closing future notifications from the social media application, a control 5044 for displaying a notification settings user interface of the social media application, and a control 5046 for dismissing the menu 5038. The notification delivery preference control menu 5038 also includes application identification information 5048 and application icons 5050, which correspond to application identification information 5018 and application icons 5020 of the notification 5006.
In fig. 5I, a tap input through contact 5052 is detected at a location on touch screen 112 corresponding to control 5040 (for changing delivery preferences of future notifications of events of the social media application to a quiet delivery mode). In fig. 5J, in response to input at control 5040, notification delivery preference control menu 5038 and notification 5006 are stopped from being displayed, and notifications 5008-5016 are redisplayed.
As a result of the input to change the delivery preference of future notifications of events from the social media application to the quiet delivery display mode, as described with respect to fig. 5C-5J, the social media notifications received after the change of delivery preference are not displayed on the wake screen user interface 5004 until input is provided to display the notification history, as described with respect to fig. 5J-50.
From fig. 5J to 5K, the current time 5054 is from 6:02 becomes 6:05. displayed in wakeup screen user interface 5004 is a 6:04 receives a new notification 5056. As shown in fig. 5K, a new event of the social media application occurs at 6:05, but no notification corresponding to the event is displayed in the wake screen user interface 5004 (because the delivery preference of notifications of events from the social media application changes to a reduced prominence mode as described with reference to fig. 5B-5I such that notifications are sent directly to the notification history). From fig. 5K to 5L, the current time 5054 is from 6:05 to 6:08.
Fig. 5M through 50 illustrate swipe up inputs on the wakeup screen user interface 5004 to show notification history. In fig. 5M-5N, contact 5058 moves with touch screen 112 along the path shown by arrow 5060. As contact 5058 moves upward along the path shown by arrow 5060, notifications 50085016 and 5056 also move upward (e.g., as if the notification was "dragged" by contact 5058 as it moved). In fig. 50, contact 5058 continues to move along the path shown by arrow 5060, causing notification history 5062 to be displayed in wakeup screen 5004. As shown in fig. 5O and 5P, notification history 5062 includes information that occurred at 6:05, notification of events by the social media application 5064. Notification history 5062 also includes notifications 5068 of received messages in message threads in the message application. For another received message in a message thread in a message application, notification 5068 is aggregated with notification 5066, as described in further detail below.
Fig. 5Q-5Y illustrate inputs for changing future-learned delivery preferences for events from a social media application. Inputs for changing delivery preferences for future notifications include: pressing an input at social media notification 5064 to display an expanded version of notification 5064, as shown in fig. 5Q-5S; input at control 5074 displayed in the expanded version of notification 5064, as shown in fig. 5T-5U; and input at control 5080 of delivery preference control menu 5078. Entering at the control changes the delivery preference of future notifications of events from the social media application from a quiet delivery display mode to a highlighted delivery mode.
Fig. 5Q-5S illustrate a press input at notification 5064, which shows an expanded version of notification 5064. In fig. 5Q, contact 5070 is detected at a location on touch screen 112 corresponding to notification 5064. The characteristic intensity of contact 5070 is above the contact detection intensity threshold level IT 0 (as shown by intensity level meter 5001) and below the prompt intensity threshold level IT H (as shown by intensity level meter 5001). At the position ofIn FIG. 5R, the characteristic intensity of contact 5070 has increased above the alert intensity threshold level IT H (as shown by intensity level meter 5001). As the characteristic intensity of contact 5070 increases above the alert intensity threshold level IT H The background of the wake screen user interface 5004 becomes increasingly blurred as illustrated in fig. 5R-5S. In FIG. 5S, the characteristic intensity of contact 5070 has increased above the light-press intensity threshold level IT L (as shown by intensity level meter 5001). Responsive to detecting an increase in the characteristic intensity of contact 5070 above the light-press intensity threshold level IT L An expanded version of notification 5064 is displayed. In some embodiments, when additional notification information is available for notification of the indicated event, the additional information is displayed in the expanded version of the notification in response to input (e.g., a tap input) at a location corresponding to the notification. In FIG. 5S, an expanded version of notification 5064 including image 5072 is displayed and notifications 5010-5016 and 5066-5068 are stopped from being displayed. Controls 5074 (e.g., a set of notification delivery preference controls for displaying a social media application) are displayed in an expanded version of the notification 5064. In some embodiments, entering (e.g., tapping) at a location of the expanded version of notification 5064 (e.g., away from control 5074) will cause display of wakeup screen user interface 5004 and cause the expanded view of notification 5064 to be replaced by an application (e.g., social media application) that is displayed corresponding to notification 5064. In some implementations, input (e.g., tap input) at a location outside of the expanded version of notification 5064 will cause the expanded view displaying notification 5064 to be replaced with notifications 5010-5016, the unexpanded version of notification 5064, and notifications 5066-5068 (e.g., returning to the previous view of the wakeup screen user interface as shown in FIG. 5Q).
FIG. 5T illustrates tap input by contact 5076 at control 5074 of the expanded version of notification 5064. In response to the tap input, a notification delivery preference control menu 5078 is displayed in the wake screen user interface 5004, as illustrated in fig. 5U. ( The notification delivery preference control menu 5078 is an illustrative example of a delivery preference control menu having different features than the notification delivery preference control menu 5038 described with respect to fig. 5H. In some embodiments, in response to the input described with respect to fig. 5T, a notification delivery preference control menu 5038 is displayed. It should be appreciated that the notification delivery preference control menu described herein may include various combinations of features and/or controls described with respect to menu 5038 or menu 5078. )
The notification delivery preference control menu 5078 as shown in fig. 5U includes controls for adjusting the delivery preferences of notifications from the social media application (because the notification delivery preference control menu 5078 is accessed via input at the notification 5064 of the social media application). The notification delivery preference control menu 5078 includes a control 5080 for changing delivery preferences of future notifications of events of the social media application to a highlighted delivery mode (e.g., future notifications of events of the social media application will be displayed on the wake screen user interface 5004 in this mode when received), a control 5040 for changing delivery preferences of future notifications of events of the social media application to a quiet delivery mode (e.g., future notifications of events of the social media application will be sent to a notification calendar history in this mode), a control 5042 for closing future notifications from the social media application, a control 5044 for displaying a notification settings user interface of the social media application, and a control 5046 for dismissing the menu 5038. The notification delivery preference control menu 5078 also includes a status flag 5082 for indicating the currently selected notification delivery preference and an animated icon 5084 for showing the currently selected notification delivery mode (in this example, the quiet delivery mode).
Fig. 5U to 5X show frames of an animation sequence for animation icon 5084. Animation icon 5084 depicts a miniature version of device 100, and an animation sequence shows input (shown in animation by animation contact representation 5086) for accessing a notification (shown in animation by animation notification representation 5088) in a notification history.
In fig. 5X, tap input through contact 5090 is detected at a location on touch screen 112 corresponding to control 5080 (for changing notification delivery preference to highlight delivery mode). In fig. 5Y, in response to input at control 5080, a status marker 5082 is displayed at control 5080 to indicate that the currently selected notification delivery mode is a highlight delivery mode in which notifications from the social media application are first displayed on the wake screen. An animated icon 5092 is displayed to show the highlighting delivery mode. Fig. 5Y to 5Z show frames of an animation sequence for animation icon 5092. The animation sequence shows the screen off state (as shown in fig. 5Y) transitioning to the screen on state (as shown in fig. 5Z) in which the notification representation 5094 is displayed on the wake screen user interface.
In some embodiments, the animated icon 5084 is displayed only when the currently selected notification delivery preference is in a quiet delivery mode (as shown in fig. 5U-5X) and the animated icon 5092 is displayed only when the currently selected notification delivery preference is in a highlighting delivery mode (as shown in fig. 5Y-5Z). In some embodiments, the animated icon 5084 is animated only when the currently selected notification delivery preference is in the quiet delivery mode, and the animated icon 5092 is animated only when the currently selected notification delivery preference is in the highlighting delivery mode. In some embodiments, the animated icons 5084 and 5092 are displayed simultaneously. In some embodiments, animated icons 5084 and 5092 are animated simultaneously. In some embodiments, animation icon 5084 is animated only when the currently selected notification delivery preference is a highlighting delivery mode, and animation icon 5092 is animated only when the currently selected notification delivery preference is a quiet delivery mode (e.g., for educating the user about an unselected delivery mode).
In fig. 5Z, tap input through contact 5096 is detected at a location on touch screen 112 corresponding to control 5080 (for changing notification delivery preference to quiet delivery mode). In fig. 5Z, tap input through contact 5098 is detected at a location on touch screen 112 corresponding to control 5044 (a notification settings user interface for displaying a social media application).
Fig. 5 AB-5 AG illustrate the delivery preference of future notifications of events for an application using the notification settings user interface 5100 for the application.
In fig. 5AB, in response to input through contact 5098, the display wakeup screen user interface 5004, notification 5064, and notification delivery preference control menu 5078 are replaced with a display notification settings user interface 5100. Notification settings user interface 5100 includes application identifier 5102 for indicating that the switch displayed in notification settings user interface 5100 controls settings of social media applications. The notification settings user interface 5100 includes a switcher 5104 for enabling/disabling notification of an application, a switcher 5106 for enabling/disabling display of notification of an application on the wakeup screen user interface 5004, a switcher 5108 for enabling/disabling display of notification of an application in a notification history, and a switcher 5110 for enabling/disabling display of a notification banner when the device is in a screen on state (e.g., when the user is operating the device).
Animation icons 5112, 5114, and 5116 illustrate a highlighting delivery mode, a quieting delivery mode, and a notification banner delivery mode, respectively. Active mode indicators 5118, 5120, and 5122 indicate the activation status of the outstanding delivery mode, quiet delivery mode, and notification banner delivery mode, respectively. The selected flags in active mode indicators 5120 and 5122 indicate that the quiet delivery mode and the notification banner delivery mode are currently active, respectively. Fig. 5AB to 5AD show frames for respective animation sequences of animation icons 5114 and 5116.
In fig. 5AD, an input through the contact 5124 is detected at a position on the touch screen 112 corresponding to the switching member 5106. Entering through contact 5124 changes the delivery preference of future notifications of time. The delivery preference changes from a mode in which the notification of the application is disabled (as shown by the state of switch 5106 in fig. 5 AD) displayed on wakeup screen user interface 5004 to a mode in which the notification of the application is enabled (as shown by the state of switch 5106 and the selected flag in active mode indicator 5118 in fig. 5 AE) displayed on wakeup screen user interface 5004. Fig. 5AE to 5AF show frames for respective animation sequences of animation icons 5112, 5114, and 5116.
In some embodiments, the animated icon 5112 is animated when the corresponding switch 5106 is in the enabled state and the animated icon 5112 is not animated when the corresponding switch 5106 is in the disabled state; animation icon 5114 is animated when the corresponding switch 5108 is in the enabled state, and animation icon 5114 is not animated when switch 5108 is in the disabled state; the animation icon 5116 is animated when the corresponding switch 5110 is in the enabled state, and the animation icon 5116 is not animated when the switch 5110 is in the disabled state (for example, as shown in fig. 5AB to 5 AF). In some embodiments, when the notification setting user interface 5100 is displayed, the animated icons 5112, 5114, and 5116 are animated at the same time regardless of the state of the switchers corresponding to the respective animated icons.
From fig. 5AF to fig. 5AG, the current time 5054 is from 6:08 becomes 6:10. in response to input via contact 5124, a notification is enabled showing the application on wakeup screen user interface 5004 as described with respect to fig. 5 AD. Thus, the wakeup screen user interface 5004 in fig. 5AG is shown at 6:09 new notification 5126 of the event of the social media application.
Fig. 5AH through 5AR illustrate inputs for changing future learned delivery preferences for a subset of events from an application. For example, a news application may generate events from multiple news sources and a user may wish to set different notification delivery preferences for the various news sources. In some embodiments, the events corresponding to the respective news sources are a subset of events from the news application.
Fig. 5AH shows a swipe left input at notification 5010 through contact 5128 (e.g., with a move left 5130), which displays a set of notification controls 5132 corresponding to notification 5010. Fig. 5AI illustrates tap input through contact 5138 at option control 5134. In response to the tap input, the display of notifications 5126, 5056, 5008, 5012, and 5014 is stopped, and a notification delivery preference control menu 5138 and a control 5140 for dismissing the menu 5138 are displayed in the wake-up screen user interface 5004, as shown in fig. 5 AJ. The notification delivery preference control menu 5138 includes controls for adjusting delivery preferences of one or more news sources of a news application. The notification delivery preference control menu 5138 includes a currently selected source indication 5142 indicating one or more news sources to which the change to the delivery preference will be applied. V-shape 5144 is used to indicate a control for displaying additional news sources. The general delivery preference control menu 5138 includes a control 5146 for changing delivery preferences of future notifications of events from one or more news sources to a quiet delivery mode (e.g., future notifications of events from one or more news sources will be sent to notification history in this mode), a control 5148 for closing future notifications from one or more news sources, and a control 5150 for displaying a notification settings user interface for one or more news sources. When the currently selected news source is "The Hapsburg Haps", as indicated by the currently selected source indication 5142, selecting either control 5146 or 5148 will cause an event from the "The Hapsburg Haps" news source to change the notification delivery preference, but not for other news sources that are not currently selected.
In fig. 5AK, a tap input through contact 5154 is detected at a location on touch screen 112 corresponding to chevrons 5144 (for displaying additional news sources). In fig. 5AL, in response to input at The V5144, the notification delivery preference control menu 5138 replaces display controls 5146, 5148, and 5150 with a display control 5156 (for selecting a first additional news source ("Local Daily")), a control 5158 (for selecting a second additional news source ("The Urban Times")), and a control 5160 (for selecting all news sources (e.g., "The Hapsburg Haps", "Local Daily", and "The Urban Times")). The orientation of the chevrons 5144 changes (e.g., to indicate that the mode of the notification delivery preference control menu 5138 has changed from display controls 5146, 5148, and 5150 for changing the delivery preferences of future notifications of events from news sources to display controls 5156, 5158, and 5160 for selecting one or more news sources). In some embodiments, in response to input at control 5141, selection of the selected news source ("The Hapsburg Haps") continues and notification delivery preference control menu 5138, as shown in fig. 5AK, is redisplayed.
In fig. 5AM, tap input through contact 5162 is detected at a location on touch screen 112 corresponding to control 5160 (for selecting all news sources). In fig. 5AN, in response to input at the control 5160, the currently selected source indication 5142 in the notification delivery preference control menu 5138 changes from the indication "The Hapsburg Haps" as shown in fig. 5AK to the indication "all news sources". The orientation of the chevrons 5144 changes (e.g., to indicate that the mode of the notification delivery preference control menu 5138 has changed from display controls 5156, 5158, and 5160 for selecting one or more news sources to redisplay controls 5146, 5148, and 5150 for changing the delivery preferences of future notifications of events from all news sources).
In FIG. 5AO, a tap input through contact 5164 is detected at a location on touch screen 112 corresponding to control 5148 (for closing future notifications from one or more news sources). When the currently selected news source is "all news sources," selecting control 5146 or 5148 will cause events from all news sources of the news application to change notification delivery preferences as indicated by the currently selected source indication 5142. In some embodiments, as a result of input at control 5148 (for closing future notifications from all news sources), when wake screen user interface 5004 is subsequently displayed as shown in fig. 5AP, previously received notifications 5010 from the "The Hapsburg Haps" news source and notifications 5012 of news from the "Local day" news source are not displayed.
Fig. 5AQ to 5AS show inputs for changing delivery preferences of notifications corresponding to a subset of events of a communication application. For example, the instant messaging application may generate events corresponding to received messages from various contacts and/or contact groups, and the user may wish to dismiss notifications of messages in a conversation thread with a first contact while continuing to receive notifications of messages in a conversation thread with a second contact. In some embodiments, the events corresponding to the conversation thread are a subset of events from the extinguishing application.
In fig. 5AQ to 5AR, in response to an input at a message notification, a notification delivery preference control menu 5186 AQ corresponding to a message application is displayed. For example, in fig. 5AQ, an input by contact 5166 (e.g., a swipe left input or a tap input) is detected on touch screen 112 at a location corresponding to notification 5008, causing a control to be displayed for displaying a set of notification delivery preference controls, and in response to a subsequent input (e.g., a tap input) at the displayed control, notification delivery preference control menu 5168 is displayed (e.g., as described with respect to fig. 5B-5H or fig. 5R-5U). The notification delivery preference control menu 5168 includes a control 5170 for changing delivery preferences of future notifications of messages in a conversation thread with Ursula to a quiet delivery mode (e.g., future notifications of messages in a conversation thread with Ursula will be sent to a notification history in this mode), a control 5172 for closing future notifications in a conversation thread with Ursula, a control 5044 for displaying a notification settings user interface of a messaging application, and a control 5176 for dismissing the menu 5168. In some embodiments, the changes made to the delivery preferences of one or more applications, such as a messaging application, are valid for a limited period of time (e.g., 1 hour, 1 day, 1 week, etc.).
FIG. 5AR shows tap input by contact 5178 at a location on touch screen 112 corresponding to control 5172 (for closing future notifications in a conversation thread with Ursula). In response to the tap input, the wake screen user interface 5004 is redisplayed. In some implementations, in response to input at control 5172 (for closing future notifications in the conversation thread with the contact) (or as a result of interaction with the notification), previously received notifications in the conversation thread with the contact are stopped from being displayed. For example, in fig. 5AS, notifications 5126, 5056, and 5054 are displayed on wakeup screen user interface 5004, and notification 5008 previously received in the conversation thread with Ursula is not displayed on wakeup screen user interface 5004.
From fig. 5AS to fig. 5AT, the current time 5054 goes from 6:10 to 6:12. a new notification from the messaging application is displayed indicating the message from the contact Edwin. Because the input described with respect to FIG. 5AR closes notifications in the conversation thread with Ursula, notifications of messages in other conversation threads (e.g., messages from other contacts such as Edwin) continue to be displayed on the wakeup screen user interface 5004.
Fig. 5AU to 5AY show inputs for displaying a cover user interface 5190 including notification history 5062.
In fig. 5AU, an input through contact 5184 to deactivate the wake screen user interface 5004 (e.g., swipe up input from the lower edge of the touch screen display 112) is detected. As the contact 5184 moves along the path shown by arrow 5185, a home screen user interface 5182 is displayed, as shown in fig. 5 AV. In FIG. 5AW, an input through contact 5186 for displaying the cover user interface 5190 is detected (e.g., swipe input down from the upper edge of the touch screen display 112). As the contact 5186 moves along the path shown by arrow 5188, a cover user interface 5190 is displayed, as shown in FIG. 5 AX.
In FIG. 5AX, cover user interface 5190 displays notifications 5180, 5126, 5056, and 5014, and notification history 5062 including notifications 5064, 5066, and 5068. An input through contact 5192 for scrolling through notifications displayed in the facing user interface 5190 is detected (e.g., a vertical swipe input that moves contact 5192 up along the path indicated by arrow 5194). In response to the vertical swipe input, the notification displayed in the cover user interface 5184 moves in the movement direction of the contact, as shown in fig. 5AX to 5 AY.
In some embodiments, when the cover user interface 5190 is initially displayed, the notification history 5062 is not displayed and the notification history 5062 is displayed on the cover user interface in response to an upward swipe input on the cover user interface (rather than an upward swipe input starting from the bottom edge of the screen).
Fig. 5AY to 5BU show exemplary user interfaces for displaying an aggregation notification.
In FIG. 5AY, cover user interface 5190 displays notifications 5180, 5126, 5056, and 5014, and notification history 5062 including notifications 5064, 5066, and 5068. In fig. 5AY to 5AZ, the apparatus 100 transitions from the screen on state shown in fig. 5AY to the screen off state shown in fig. 5 AZ. For example, the transition occurs in response to an input powering down the device, such as an input at button 206, or in response to a determination that a screen shutdown criterion is met (e.g., a criterion that includes a criterion that is met according to a condition that the time elapsed since the input was received is determined to exceed a threshold amount of time). In fig. 5AZ to 5BA, the apparatus 100 transitions from the screen off state shown in fig. 5AZ to the screen on state shown in fig. 5 BA. For example, the transition occurs in response to an input to power on the device, such as an input at button 206, or in response to a determination that a screen opening criterion is met (e.g., a criterion that includes a criterion that is met according to a condition that a new notification has been received, or that the device has been picked up and tilted beyond a preset tilt angle).
From fig. 5AY to fig. 5BA, the current time 5054 is from 6:12 to 6:14. as a result of activating the device (e.g., dismissing the wakeup screen user interface 5004 to display the home screen user interface 5182, as shown in fig. 5 AU-5 AV), the notifications 5180, 5126, 5056, and 5014 have been moved to the notification history and are not displayed on the wakeup screen user interface 5004 in fig. 5BA before transitioning from the screen off state to the screen on state (fig. 5 AZ-5 BA). Displaying on the wakeup screen user interface 5004 the information at 6:14. 6:13 and 6:13, 5196, 5198, and 5200.
In fig. 5 BB-5 BC, contact 5202 moves with touch screen 112 along the path shown by arrow 5204. As contact 5202 moves upward along the path shown by arrow 5060, notifications 5196-5200 also move upward (e.g., as if the notification was "dragged" by contact 5202 as it moved). In fig. 5 BC-5 BD, the contact 5202 continues to move along the path shown by arrow 5204, such that a notification history 5062 is displayed in the wake screen 5004.
In some embodiments, when notification history 5062 includes multiple notifications of events from the same application (e.g., social media application), the multiple notifications are aggregated. For example, as shown in FIG. 5BD, when notification 5126 has been moved to notification history 5062, notification 5126 of the social media application is aggregated with notifications 5064 previously in notification history 5062 (see FIG. 5 AY).
In some embodiments, when notification history 5062 includes a plurality of notifications corresponding to sub-types of events from an application (e.g., events corresponding to conversation threads in a messaging application), the plurality of notifications are aggregated. For example, as shown in FIG. 5BD, when notification 5180 (for messages from contacts Edwin in conversation threads with Madeline and Edwin) has been moved to notification history 5062, notification 5180 aggregates with notifications 5066 and 5068 (for messages from contacts Madeline and Edwin in conversation threads with Madeline and Edwin) previously in notification history 5062 (see FIG. 5 AY). As shown in fig. 5 BC-5 BD, notifications 5196 from messages with contacts Madeline in the conversation threads of Madeline and Edwin are not aggregated with notifications 5066, 5068, and 5180 in notification history 5062 (because notification 5196 has not been moved to notification history).
In fig. 5BD to 5BE, the apparatus 100 transitions from the screen on state shown in fig. 5BD to the screen off state shown in fig. 5 BE. In fig. 5BE to 5BF, the apparatus 100 transitions from the screen off state shown in fig. 5BE to the screen on state shown in fig. 5 BF.
From fig. 5BD to fig. 5BF, the current time 5054 is from 6:14 to 6:17. in fig. 5BF, displayed on wakeup screen user interface 5004 is the following 6:15, a new notification 5206 received.
In some implementations, when the wakeup screen user interface 5004 includes a plurality of notifications corresponding to events of an application or event sub-types of an application (e.g., before receiving input at the wakeup screen user interface 5004 for displaying the notification history 5062), the plurality of notifications are aggregated in the wakeup screen user interface 5004. For example, as shown in fig. 5BF, when the wakeup screen user interface 5004 includes notifications 5206 (for messages in conversation threads with madelines and Edwin), the notifications 5206 are aggregated with notifications 5196 (also for messages in conversation threads with madelines and Edwin) previously displayed on the wakeup screen user interface 5004 (see fig. 5 BC).
In fig. 5BG, an input through contact 5208 to deactivate the wake screen user interface 5004 is detected (e.g., swipe the input up from the lower edge of the touch screen display 112). As the contact 5208 moves along the path shown by arrow 5210, a home screen user interface 5182 is displayed, as shown in fig. 5 BH. In fig. 5BH to 5BI, the apparatus 100 transitions from the screen on state shown in fig. 5BH to the screen off state shown in fig. 5 BI. In fig. 5BI to 5BJ, the apparatus 100 transitions from the screen-off state as shown in fig. 5BI to the screen-on state as shown in fig. 5 BJ.
In fig. 5BJ, in response to transitioning to the screen on state, a wake screen user interface 5004 is illustrated. As a result of activating the device (e.g., dismissing the wakeup screen user interface 5004 to display the home screen user interface 5182, as shown in fig. 5 BG-5 BH), the notifications 5196, 5206, 5198, and 5200 have been moved to the notification history 5062 and are not displayed on the wakeup screen user interface 5004 in fig. 5BJ before transitioning from the screen off state to the screen on state (fig. 5 BI-5 BJ). Input through the contact 5212 (e.g., a vertical swipe input that moves the contact 5212 up along the path shown by arrow 5214) causes the notification history 5062 to be displayed on the wake screen user interface 5004. In response to the vertical swipe input, a notification history 5062 is displayed in fig. 5 BK. In fig. 5BK, notifications 5196 and 5206 (for messages in conversation threads with madelines and Edwin) are aggregated with notifications 5180, 5068, and 5066 (for messages in conversation threads with madelines and Edwin) previously displayed in notification history 5062 (see fig. 5 BD) as a result of notifications 5196 and 5206 (for messages in conversation threads with madelines and Edwin) having been moved to notification history 5062. As a result of notification 5200 (from podcast application) having been moved to notification history 5062, notification 5200 aggregates with notification 5014 (from podcast application) previously displayed in notification history 5062. As a result of notification 5126 (from the social media application) having been moved to notification history 5062, notification 5126 is aggregated with notifications 5064 (from the social media application) that were previously displayed in notification history 5062.
Fig. 5BL to 5BO show inputs for expanding a set of notifications in an aggregated representation of notifications and re-aggregating notifications of the expanded set.
In fig. 5BL, tap input through contact 5218 is detected at a location corresponding to the aggregated representation of notifications (including notifications 5066, 5068, 5180, 5196, and 5206). In response to input via contact 5218, an expanded version of the aggregated representation of the notification is displayed, as shown in fig. 5 BM. In the BM of fig. 5, notifications 5206, 5196, 5180, and 5068 of the aggregate representation of the notifications are displayed separately.
By expanding the aggregate representation, notifications 5198, 5014, 5200, 5064, 5126, and 5056 are "pushed" downward and cease to be displayed in the wakeup screen user interface 5004. Controls 5220 for re-aggregating the expanded versions of the set of notifications and controls 5221 for removing all notifications in the set of notifications of the corresponding aggregate representation are displayed at locations corresponding to the set of expanded versions.
In fig. 5BN, tap input through contact 5222 is detected at a location corresponding to control 5220 (for re-aggregating the expanded version of the set of notifications). In response to the input, the aggregated representation of the notifications (including notifications 5066, 5068, 5180, 5196, and 5206) is redisplayed as shown in FIG. 5 BO. Notifications 5198, 5014, 5200, 5064, 5126, and 5056 are also redisplayed in the wake screen user interface 5004 in fig. 5 BO.
Fig. 5BP to 5BU show the input of a group of notifications in the aggregate representation of the expanded notifications, the input of additional notifications for scrolling through the notifications of the expanded group to display the aggregate representation of the notifications, and the input of an expanded view for displaying a notification of the expanded group with respect to a notification of the notifications.
In fig. 5BP, tap input through contact 5224 is detected at a location corresponding to the aggregate representation of notifications (including notifications 5066, 5068, 5180, 5196, and 5206). In response to input via contact 5224, an expanded version of the aggregated representation of the notification is displayed, as shown in fig. 5 BQ. In fig. 5BR to 5BS, the contact 5226 moves along the path indicated by arrow 5228. As the contact 5226 moves up the path shown by arrow 5228, notifications 5206, 5196, 5180, and 5068 also move up (e.g., as if the notifications were "dragged" by the contact 5226 as it moves), thereby displaying notifications 5066 in the expanded set of notifications corresponding to the aggregate representation. As shown in fig. 5BS, in some embodiments, movement of the contact displays one or more notifications, such as notification 5198, that are "pushed" down by expanding the set of notifications.
In fig. 5BS, the contact 5230 (e.g., the same contact as the contact 5226, or a different contact detected after lifting the contact 5226 off of the touch screen 112) is located on the touch screen 112 at a position corresponding to the notification 5196. In FIG. 5BT, the characteristic intensity of contact 5230 has increased above the alert intensity threshold level IT H (as shown by intensity level meter 5001). As the characteristic intensity of the contact 5230 increases above the alert intensity threshold level IT H The background of the wake screen user interface 5004 becomes increasingly blurred as illustrated in fig. 5 BT-5 BU. In fig. 5BU, the characteristic intensity of contact 5230 has increased above the light-press intensity threshold level IT L (as shown by intensity level meter 5001). Responsive to detecting an increase in the characteristic intensity of the contact 5230 above the light-press intensity threshold level IT L An extended version of notification 5196 is displayed. In the BU of fig. 5, the expanded version of notification 5196 includes messages 5232, 5234, 5236, 5238, and 5240 corresponding to notifications 5066, 5068, 5180, 5196, and 5206, respectively. When an expanded version of the notification 5196 is displayed, an input area 5242 including input fields, message controls, and a keyboard is displayed in the wakeup screen user interface 5004.
Fig. 6A-6D illustrate example user interfaces for displaying aggregated notifications, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in fig. 7A-7G, 8A-8E, and 9A-9E. For ease of explanation, some of the embodiments will be discussed with reference to operations performed on a device having a touch sensitive display system 112. In such embodiments, the focus selector is optionally: a respective finger or stylus contact, a representative point corresponding to the finger or stylus contact (e.g., a center of gravity of the respective contact or a point associated with the respective contact), or a center of gravity of two or more contacts detected on the touch-sensitive display system 112. However, in response to detecting contact on the touch-sensitive surface 451 while displaying the user interface on the display 450 and the focus selector shown in the figures, similar operations are optionally performed on a device having the display 450 and the separate touch-sensitive surface 451.
Fig. 6A-6D illustrate hints for adjusting notification settings according to some embodiments. For example, in accordance with a determination that the user's engagement with the application is below a threshold engagement level, a prompt is displayed to adjust notification settings of future notifications of the application. Various examples of cues described with respect to fig. 6A-6D include different features. It should be understood that various combinations of features described with respect to fig. 6A-6D may be displayed in the prompt.
In fig. 6A, a prompt 602 is displayed on a wakeup screen user interface 5004. The prompt 602 includes an indication of a notification 604 corresponding to an event of the social media application. For example, notification 604 is a notification of a recently received social media application and/or a notification that triggers display of prompt 602. The suggestion 602 also includes a control 606 (e.g., a "hold" button) for maintaining a current prominence of notifications for the social media application, a control 608 (e.g., a "close" button) for closing the notifications for the social media application, and a control 610 (e.g., a "custom" button) for displaying a notification settings user interface (e.g., notification settings user interface 5100 as shown in FIG. 5 AB) for the social media application.
FIG. 6B shows a prompt 614 that includes an indication of the notification 604 corresponding to an event of the social media application and aggregated notifications 616 and 618 corresponding to events of the house simulator game application. Prompt 614 includes switches 620 and 622 for the social media application. The input at switch 620 is used to enable/disable the display of future notifications corresponding to events from the social media application. The input at switch 622 is used to enable/disable sending future notifications corresponding to events from the social media application to notification history 5062. Prompt 614 also includes switches 624 and 626 for the house simulator game application. The input at toggle 624 is used to enable/disable displaying future notifications corresponding to events from the house simulator game. The input at the switch 626 is used to enable/disable sending future notifications corresponding to events from the house simulator game to the notification history 5062.
FIG. 6C shows a prompt 628 that includes an indication of the notification 604 of the social media application and aggregated notifications 616 and 618 of the house simulator game application. The cues 628 include a control 630 for maintaining a current prominence setting for notifications of the social media application (e.g., a "hold" button), a control 632 for closing notifications of the social media application (e.g., a "close" button), a control 634 for maintaining a current prominence setting for notifications of the house simulator game (e.g., a "hold" button), and a control 636 for closing notifications of the house simulator game (e.g., a "close" button).
FIG. 6D shows a prompt 638 that includes an indication of the notification 604 corresponding to an event of the social media application and aggregated notifications 616 and 618 corresponding to events of the house simulator game application. The cues 638 include a control 640 (e.g., a "hold" button) for maintaining a current prominence of the notification of the social media application and maintaining a current prominence of the notification of the house simulator game, and a control 642 (e.g., a "close" button) for closing the notification of the social media application and closing the notification of the house simulator game.
Fig. 7A-7G are flowcharts illustrating a method 700 for changing delivery preferences of future notifications of events of an event type, according to some embodiments. The method 700 is performed at a device having a display generating component (e.g., a display, projector, heads-up display, etc.) and one or more input devices (e.g., a touch screen display 112 that serves as both a display and a touch sensitive surface). In some implementations, the display generating component is a touch screen display 112 and the touch sensitive surface is on or integrated with the display. Some operations in method 700 are optionally combined and/or the order of some operations is optionally changed.
The device detects 702 the occurrence of a first event type (e.g., when the display is turned off, when the wakeup screen user interface 5004 is displayed, when the application user interface is displayed, or when the home screen user interface 5182 is displayed). In some embodiments, the event type corresponds to an application. In some implementations, the event type corresponds to a subset or category of content in the application (e.g., a set of messages sent by the same sender, a set of messages in the same thread, news from the same news source, etc.). In some embodiments, the first event is an operating system event or application event related to a change in device state, receipt of data or content from an external source, completion of a task, or the like, which is used by the operating system as a trigger and basis for generating and/or displaying a corresponding notification to a user external to the application.
The device displays (704), via the display generation component, a first notification corresponding to the first event type (e.g., in response to detecting occurrence of the first event type) on a respective user interface of the device. For example, in fig. 5B, a notification 5006 of a social media event is displayed (e.g., the event type corresponding to the event of notification 5006 is an event of a social media application). The notification 5008 is for message events in the conversation thread with the contact Ursula (e.g., the event type corresponding to the event of notification 5008 includes message events for messages in the conversation thread with the contact Ursula). In some embodiments, the notification is displayed as a banner or window overlaid on the respective user interface, or as an item within the respective user interface. In some embodiments, the respective user interfaces are a wake screen user interface 5004, a lock screen user interface, an application user interface, a home screen user interface 5182 including a plurality of application launch icons (e.g., 416-446) corresponding to a plurality of applications, a cover user interface 5190 (e.g., including a notification center) displayed by swipe down from a top edge of the home screen/application/desktop applet user interface, or a notification calendar Shi Jilu interface 5062 displayed by swipe up on the wake screen interface, which are displayed when the device switches from a display off state to a display on state (e.g., as described with respect to fig. 5 A1-5 A4). In some embodiments, the cover user interface 5190 and/or the notification center user interface has an appearance substantially similar to the wake screen user interface 5004. For example, elements such as current time 5054, current date, notification, and/or other controls are displayed in similar locations and/or with similar appearances in cover user interface 5190 and wakeup screen user interface 5004. In some embodiments, the control for displaying a set of notification preference controls (e.g., in a menu or in a separate setting user interface) is also displayed concurrently with the first notification (e.g., the control is displayed in response to an input (such as a swipe left input) at a location corresponding to the first notification). For example, a set of notification controls 5028 corresponding to the notification is displayed at the notification swipe left input as shown in fig. 5E, and a control 5074 for displaying a set of notification delivery preference controls is displayed in an expanded version of the notification as shown in fig. 5T.
When the first notification is displayed on the respective user interface, the device detects (706) a first input (e.g., an input comprising a horizontal swipe input as described with respect to fig. 5C-5E and/or a tap input as described with respect to fig. 5G, or an input comprising a tap input as described with respect to fig. 5R-5S and/or a tap input as described with respect to fig. 5T) for the first notification via the input device. For example, the first input is an input that meets control display criteria (e.g., includes criteria that are met in accordance with a determination that the characteristic intensity of the contact increases above a threshold intensity level and/or criteria that are met in accordance with a determination that the duration of the contact exceeds a threshold duration), or an input corresponding to a request to display a set of one or more notification delivery preference controls (e.g., includes a tap or press input on the control (e.g., displayed in the vicinity of the notification)).
In response to detecting the first input, the device displays (708) one or more notification delivery preference controls via the display generation component (e.g., in a control panel overlaying a currently displayed user interface and/or at a location corresponding to the first notification, such as within or near the first notification). For example, in response to the inputs described with respect to fig. 5C-5G, notification delivery preference controls (including a control 5040 for changing delivery preferences of future notifications of events of event type to a quiet delivery mode, a control 5042 for closing future notifications of events from event type, a control 5044 for displaying a notification settings user interface of an application, and a control 5046 for dismissing menu 5038) are displayed in notification delivery preference control menu 5038.
When one or more notification delivery preference controls are displayed (e.g., concurrently with the first notification on the respective user interface), the device detects (710), via the input device, a second input for the set of one or more notification delivery preference controls (e.g., an input through contact 5052 as described with respect to fig. 5I, an input through contact 5090 as described with respect to fig. 5X, an input through contact 5096 as described with respect to fig. 5Z, an input through contact 5164 as described with respect to fig. 5AO, or an input through contact 5178 as described with respect to fig. 5 AR). For example, the second input (e.g., a selection input including selecting one of the one or more notification delivery preference controls, such as a tap input) is an input that satisfies a preference modification criteria (e.g., includes criteria that are satisfied according to a condition that a duration between a downward touch of the contact and a liftoff of the contact is determined to be less than or equal to a tap time threshold).
In response to detecting the second input, the device changes (712) a delivery preference of a future notification of the event of the first event type from a first delivery mode (e.g., a quiet delivery mode or a highlighting delivery mode) to a second delivery mode (e.g., a mute mode, a highlighting delivery mode, or a quiet delivery mode) that is different from the first delivery mode. For example, in response to input via contact 5052, the delivery preference of future notifications of events from the social media application changes from a highlighting delivery mode to a quiet delivery mode (e.g., notifications of events from the social media application are delivered to the notification history in this mode), as discussed with respect to fig. 5B-5O.
After changing the delivery preference of future notifications of events of the first event type according to the second input, the device detects (714) an occurrence of a second event of the first event type (e.g., a new social media post, as shown by the text "notification received from social media application at 6:05 is not displayed on the wake screen" in FIG. 5K).
In response to detecting occurrence of a second event of the first event type (716): in accordance with a determination that the second delivery mode corresponds to a quiet delivery mode (e.g., the first notification is displayed on the wake screen user interface 5004 or on the lock screen user interface in the highlighted delivery mode, and the second input changes the delivery mode of the first notification type from the highlighted delivery mode to the quiet delivery mode), the device adds the second notification corresponding to the second event to the notification history without first displaying the second notification in the respective user interface; and in accordance with a determination that the second delivery mode corresponds to closing the notification of the first event type (e.g., the first notification is displayed in the notification history 5062 in the quiet delivery mode or on the wake screen user interface 5004 in the highlighting delivery mode, and the second input changes the delivery mode of the first notification type from the quiet delivery mode or highlighting delivery mode to the mute mode), the device forgoes displaying the second notification in the respective user interface (e.g., the second notification is forgone in the quiet delivery mode or the second notification is forgone being displayed on the wake screen in the highlighting delivery mode) and forgoes adding the second notification to the notification history (e.g., in the mute mode closing the notification of the first event type, the notification of the first event type is neither displayed on the wake screen nor stored by the device (e.g., in the notification history) for future access by the user upon receipt). In some embodiments, in a quiet mode of the first event type, notifications of the first event type are sent directly to the notification history (without first being displayed on the wake screen or the lock screen), and the user must provide the required input on the wake screen or pull down the cover to view the notifications in the notification history on the wake screen or cover. For example, after changing the delivery preference of future notifications of events of the social media application to a quiet delivery mode, as described with respect to fig. 5I, occurs at 6:05 is not displayed on the wake screen user interface 5004 until the notification history 5062 is accessed, as shown in fig. 5K-5O.
In some embodiments, the respective event types are topics (e.g., news topics, news sources, topics of communication threads, keywords in topics of communication threads), sources (e.g., news sources such as news websites), content types (e.g., records/lists of shared content (e.g., photo streams), devices of related content (e.g., memory) generate collages or folders. In some embodiments, the respective event type corresponds to a contact or a group of contacts (e.g., for a communication content item such as a message, a follow-up, a voice mail, or an email). In some embodiments, the application need not obtain user permissions to deliver notifications (e.g., notification of one or more event types corresponding to the application) according to a quiet delivery mode (e.g., the quiet delivery mode is a default mode in which notifications of one or more event types corresponding to the application are delivered until the application obtains user permissions to change delivery modes or the user changes delivery modes using a notification delivery preference control). In some embodiments, notifications of one or more event types corresponding to an application are turned off until the application obtains user permission to change notification modes.
Changing the delivery preference of future notifications of events of the event type in response to input received when the notifications of the event type are displayed reduces the amount of input required to change the delivery preference of future notifications of events of the event type. Reducing the number of inputs required to perform the operation enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to change the delivery preference of notifications without requiring inputs to access the setup user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, in response to detecting an occurrence of a second event of the first event type, in accordance with a determination that the second delivery mode corresponds to a highlighted delivery mode, the device displays (718) a second notification of the first event type on a wake screen user interface (e.g., wake screen user interface 5004) that is different from the respective user interface. For example, the first notification is displayed in the notification history 5062 in the quiet delivery mode (e.g., accessed from the wake screen user interface 5004 or from the cover user interface 5190) and the second input changes the delivery mode of the first notification type from the quiet delivery mode to the highlighting delivery mode. In some embodiments, the highlighted delivery mode is a mode that displays a notification corresponding to the first event type on a currently displayed user interface when an event of the first event type occurs (e.g., when the device is in use) and/or a mode that displays a notification corresponding to the first event type when a wake screen user interface 5004 or a lock screen is displayed after an event of the first event type occurs. In some embodiments, the first notification is not initially displayed on the wakeup screen user interface 5004 and user input is required after the first event occurs to view the first notification in the respective user interface. The user input for viewing the first notification is, for example: swipe up on the wakeup screen 5004 to bring up a notification history user interface 5062 (e.g., as described with respect to fig. 5N-5O to display notification history 5062), or swipe down on a home screen user interface 5182 (e.g., as described with respect to fig. 5 AW-5 AZ), desktop user interface, desktop applet user interface, or another user interface displayed by the device. In some embodiments, the second notification is displayed when the wakeup screen user interface 5004 is initially displayed and no user input is required to view the second notification on the wakeup screen user interface 5004. In some embodiments, the application must obtain user permission to display the notification in the prominent notification delivery mode. Changing the delivery preference of future notifications of events of the event type to a highlight delivery mode in response to input received when the notifications of the event type are displayed reduces the amount of input required to increase the highlighting of the delivery of the future notifications. Reducing the number of inputs required to perform an operation enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to increase the prominence of the delivery of future notifications of events of the event type without requiring inputs to access the setup user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, the respective user interface includes (720) a notification history (e.g., the respective user interface is a notification user interface 5062 displayed in response to swipe up on the wakeup screen user interface 5004, or the respective user interface is a facing user interface 5190 displayed in response to swipe down from a top edge of the touch screen 112 detected when the home screen user interface 5182 or the application user interface is displayed). Changing the delivery preference of future notifications of events of the event type to a prominent delivery mode in response to input received while displaying the notification history reduces the amount of input required to change the delivery preference of future notifications of events of the event type. Reducing the number of inputs required to perform an operation enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to change delivery preferences of future notifications of events of the event type without requiring inputs to access the setup user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, the device displays (722) the first notification of the first event type (e.g., the first notification of the second event type corresponds to the occurrence of the first event of the second event type different from the first event type) on a respective user interface (e.g., a notification history user interface, a wake screen or cover user interface, etc.) concurrently with the first notification of the second event type different from the first event type. For example, the first notification of the first event type is the notification 5006 of the social media application and the first notification of the second event type is the notification 5014 of the podcast application. The device detects (724) an occurrence of an event of a second event type (e.g., a second event of a second event type occurring after the first event of the second event type) when the first notification of the first event type and the first notification of the second event type are displayed simultaneously on the respective user interfaces. In response to detecting an occurrence of an event of a second event type (e.g., a second event of the second event type), in accordance with a determination that an input for changing a delivery preference of a future notification of the event of the second event type was not detected due to displaying the first notification of the second event type on a respective user interface, the device displays (726) the second notification of the event of the second event type in accordance with a current delivery mode (e.g., a quiet delivery mode or a highlighted delivery mode) of the notification of the second event type. For example, the notification 5014 of the podcast application is delivered according to the highlighted delivery mode as shown in fig. 5B, and the notification 5200 of the podcast application is also delivered according to the highlighted delivery mode as shown in fig. 5 BA. Allowing the user to change (or bypass) the delivery preferences of notifications of events of the changed event type and deliver the notifications according to the delivery mode indicated by the changed (or unchanged) delivery preferences makes the user device interface more efficient and enhances the operability of the device (e.g., by displaying the notifications according to the preferences indicated by the user, which in turn reduces the amount of time and/or the amount of input required to display the desired notification in the highlighted notification, while preserving the user's ability to display reduced highlighted notifications (e.g., in the notification history). Enabling a user to use the device more quickly and efficiently reduces power usage and extends the battery life of the device.
In some embodiments, when the delivery preference of the future notification of the event of the first event type corresponds to the second delivery mode, the device detects (728) a third input for displaying a notification settings user interface (e.g., notification settings user interface 5100) corresponding to the first event type. In some embodiments, the third input is input for a notification delivery preference control (e.g., a control displayed in the notification delivery preference control menu 5078). For example, the third input is an input made at control 5044 (a notification settings user interface for displaying a social media application), as described with respect to FIG. 5 AA. In some embodiments, the third input is an input detected when the generic notification settings user interface is displayed (e.g., an input corresponding to the notification settings user interface of the application is displayed). In some implementations, the notification settings user interface (e.g., for an application) is displayed after a series of inputs including, for example, an input to unlock the device, an input to display the home screen user interface 5182, an input to navigate to a home screen user interface page including the settings icon 446, an input to display a generic settings user interface, and/or an input to display a generic notification settings user interface. In response to detecting the third input, the device displays (730) a notification settings user interface 5100 corresponding to the first event type, including displaying an indication (including, for example, text, images, and/or animated graphics, and/or selectable controls for selecting a preferred delivery mode) of a current selection corresponding to the second delivery mode in the notification settings user interface 5100 corresponding to the first event type. For example, in fig. 5AB, active mode indicators 5118 and 5120 and switches 5106 and 5108 indicate that the highlight delivery mode is not activated and the quiet delivery mode is activated. In some embodiments, changes made in response to the second input are saved and reflected in notification settings user interface 5100 without additional input from the user. For example, when the user navigates to the notification settings user interface after providing input to change delivery preferences of future notifications of events of the first event type from the first delivery mode to the second delivery mode, the notification settings user interface displays an indication of the current selection of the second delivery mode when the notification settings user interface is presented to the user. Displaying an indication of the currently selected delivery mode in the notification settings user interface after changing the delivery preference to the second delivery mode provides improved feedback indicating the current state of the device. Providing improved feedback enhances the operability of the device and makes the user device interface more efficient (e.g., by helping the user understand the input provided for changing the delivery preference to the second delivery mode, thereby reducing user error in interacting with the device), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, when a notification settings user interface corresponding to a first event type is displayed (e.g., as a result of a third input for displaying the notification settings user interface corresponding to the first event type), the device detects (732) input for a delivery mode control corresponding to a respective delivery mode of the plurality of delivery modes (e.g., the delivery mode control is a respective delivery mode control of the plurality of delivery mode controls corresponding to the plurality of delivery modes). For example, when a notification settings user interface 5100 corresponding to an event of a social media application is displayed, input is detected for a delivery mode control (e.g., a toggle 5106 for enabling/disabling the display of notifications of applications on the wake screen user interface 5004), as shown in fig. 5 AD. In response to detecting an input for the delivery mode control (734): the device changes the delivery mode preference of future notifications of events of the first event type from the currently selected delivery mode (e.g., the second delivery mode) to the respective delivery mode, and the device displays a respective animation (e.g., an animation of the control and/or an animation of an image displayed at a location corresponding to the control) showing the notification delivery in the respective delivery mode. In some embodiments, the animation shows the delivery mode by indicating (e.g., relative to the display generation component and/or the representation of the application window) the following: the size of the representation of the notification, the path of movement of the representation of the notification, the duration of displaying the communicated representation, and/or whether the representation of the notification is displayed on a wakeup screen, displayed as a banner on a currently displayed user interface, and/or sent directly into the notification history. For example, in response to an input through the contact 5124, as described with respect to fig. 5AD, the states of the switching member 5106 and the active mode indicator 5118 are changed from fig. 5AD to fig. 5AE, and the animation sequence of the animation icon 5116 is started, as shown in fig. 5AE to fig. 5 AF. In some embodiments, the notification action continues when the notification option is selected and stops when the notification option is not selected. In some embodiments, the notification animation continues regardless of whether the notification option is selected. Displaying an animation showing the delivery of the notification according to the currently selected delivery mode provides improved feedback indicating the status of the device. Providing improved feedback enhances the operability of the device and makes the user device interface more efficient (e.g., by helping the user understand the input provided for changing delivery preferences to delivery mode, thereby reducing user error in interacting with the device), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, when the respective notification is displayed (e.g., in a wake screen interface, a lock screen interface, or a notification history), the device detects (736) a fourth input (e.g., the feature strength of the contact increases above a first strength threshold (e.g., a tap strength threshold IT) for invoking a corresponding extended version of the respective notification (e.g., the extended version includes the content of the respective notification, and additional content and/or control affordances that are not present in the respective notification when the respective notification is not extended) L ) Or touch and hold input). For example, the fourth input is a light press input by contact 5070 at a position on touch screen 112 corresponding to notification 5064, as shown in fig. 5Q to 5S. In response to detecting the fourth input, the device displays (738) an expanded version of the respective notification, wherein the expanded version of the respective notification includes a control for triggering display of at least one of the notification delivery preference controls. For example, in response to a fourth input as shown in fig. 5Q-5S, an expanded version of notification 5064 is displayed in fig. 5S. In some embodiments, the device detects (740) a fifth input for a control for triggering display of at least one of the notification delivery preference controls. For example, the fifth input is a tap input through contact 5076 at a location on touch screen 112 corresponding to control 5074, as shown in fig. 5T. In response to the fifth input, the device displays (742) at least one of the one or more notification delivery preference controls (e.g., including controls for selecting from the two or more notification delivery modes) (e.g., at a location corresponding to the expanded version of the respective notification, such as within or near the expanded version of the respective notification). For example, in response to a fifth input as shown in fig. 5T, the device displays a notification delivery preference control menu 5078 that includes a control 5080 for changing the delivery preference of future notifications of event types to a highlighted delivery mode, a delivery for future notifications of event types Control 5040 for changing the delivery preference to a quiet delivery mode and control 5042 for closing future notifications of event types. Displaying delivery preferences of future notifications of events of the event type in response to input detected when displaying an expanded version of the notification of the event type reduces the amount of input required to change the delivery preferences of the future notifications of events of the event type. Reducing the number of inputs required to perform an operation enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to change the learned delivery preferences without requiring user input to access the setup user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, when at least one notification is displayed (e.g., in the wake screen user interface 5004, the lock screen interface, or the notification history 5062), the device detects (744) a sixth input for the respective notification. In response to detecting the sixth input (746): in accordance with a determination that the sixth input (e.g., swipe left input) meets notification control display criteria (e.g., including criteria that are met in accordance with a determination that the contact has moved a distance along a substantially horizontal path that exceeds a threshold distance (e.g., swipe left) and/or that the characteristic intensity of the contact at a location corresponding to the respective notification has increased above a first intensity threshold (e.g., a tap intensity threshold IT) L ) The device displays at least one of the one or more notification delivery preference controls (e.g., controls 5040, 5042, and/or 5080); and in accordance with a determination that the sixth input meets the notification selection criteria (e.g., including criteria that are met in accordance with a determination that the sixth input is a tap input (e.g., the duration of the input is between the downward touch of the contact and the lift-off of the contact and is less than or equal to a tap time threshold, and the characteristic intensity of the contact at the location corresponding to the respective notification does not increase above the first intensity threshold) or a long press input (e.g., the duration of the input is between the downward touch of the contact and the lift-off of the contact and is greater than a tap time threshold, and the characteristic intensity of the contact at the location corresponding to the respective notification increases)As high as above the first intensity threshold)), the device ceases to display the respective user interface and displays a user interface corresponding to the respective event type corresponding to the respective notification. For example, in accordance with a determination that the input of notification 5006 for an event from a social media notification meets notification selection criteria, a user interface of the social media application is displayed. Determining whether to display a notification delivery preference control or a user interface corresponding to a respective event based on whether input for a notification meets notification control display criteria enables a variety of different types of operations to be performed with input for a notification. Being able to perform a variety of different types of operations with input for notifications enhances the operability of the device and makes the user device interface more efficient, which in turn reduces power usage and extends battery life of the device by enabling a user to use the device more quickly and efficiently.
In some embodiments, each respective notification in a set of notifications displayed on the respective user interface has a corresponding priority level (748); and the respective user interfaces include a priority control (e.g., a "priority" button) (e.g., the priority control, when selected, causes the device to stop displaying future notifications that do not meet the priority criteria (e.g., they each have a respective priority level below the priority threshold) (e.g., stop displaying on the wakeup screen, stop displaying in the notification history, or stop all displays), and display future notifications that meet the priority criteria (e.g., they each have a respective priority level equal to or above the priority threshold)). In some embodiments, the device detects (750) a seventh input for the priority control (e.g., detects a tap input on the priority control) while the set of notifications is displayed on the respective user interfaces; in response to detecting the seventh input, the device activates (752) a priority delivery mode. The device detects 754 an occurrence of a corresponding event. In response to detecting the respective event (756): in accordance with a determination that the priority delivery mode is activated (e.g., when an event is detected): the device determines whether the respective event meets a priority criterion (e.g., a priority score corresponding to the event is equal to or higher than a priority threshold); and in accordance with a determination that the respective event meets the priority criteria, the device displays a fourth notification corresponding to the respective event in the respective user interface (e.g., within a designated area of the user interface, such as at the top of a list of displayed notifications). In some embodiments, in accordance with a determination that the respective event does not meet the priority criteria, the respective notification is delivered to the notification history. In some embodiments, in accordance with a determination that the respective event does not meet the priority criteria, the device forgoes displaying the respective notification in the respective interface and forgoes adding the respective notification to the notification history. In some embodiments, in accordance with a determination that the respective event does not meet the priority criteria, the device foregoes displaying the respective notification in the respective user interface. In some embodiments, in accordance with a determination that the priority delivery mode is not activated, the device delivers the notification in accordance with a respective delivery mode corresponding to a respective event type of the respective event. Activating the priority delivery mode and delivering notifications according to the priority mode makes the user device interface more efficient and enhances the operability of the device (e.g., by displaying the notifications according to the user indicated priority preference, which in turn reduces the number of inputs required to display the required notifications in the available notifications). Enabling a user to use the device more quickly and efficiently reduces power usage and extends the battery life of the device.
In some implementations, in response to an input (e.g., a tap on a touch screen, a movement of the device in a predetermined manner, a movement of the device to a predetermined location, a pressing of a button, etc.) to switch the device from a display off state to a display on state (e.g., waking up the device), the device displays (758) a respective user interface. For example, the respective user interface is a wake screen user interface 5004 (e.g., as described with respect to fig. 5 A2-5 A3 or as described with respect to fig. 5 AZ-5 BA) displayed after the device switches from the display off state to the display on state. When the respective user interface is displayed (e.g., wake screen user interface 5004), the device detects 760 swipe inputs (e.g., up or down swipe inputs) on the respective user interface. For example, the swipe input is the input as described with respect to fig. 5BB to 5 BD. In response to detecting the swipe input, in accordance with a determination that the swipe input on the respective user interface meets notification history display criteria (e.g., notification history display criteria require (1) movement of the contact to be detected after the end of the scrollable arrangement of new notifications in the respective user interface has been reached (e.g., the bottommost new notification) and/or (2) continued movement of the contact beyond a threshold amount of movement in the current scroll direction after the end of the scrollable arrangement has been reached), the device displays (762) a notification calendar history (e.g., notifications currently displayed on the respective user interface are not saved in notification history 5062 or are displayed in notification history 5062 at this time). In some embodiments, in accordance with a determination that the swipe input does not meet the notification history display criteria, the device scrolls the respective user interfaces without displaying the notification history. Displaying the notification history without further input in response to swipe input received while displaying the wake screen user interface (meeting the notification history display criteria) enhances operability of the device and makes the user device interface more efficient (e.g., by allowing the user to access the notification history without requiring input for navigating away from the wake screen user interface), which in turn reduces power usage and prolongs battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, in response to an input to switch the device from a display off state to a display on state (e.g., wake the device), the device displays (764) a respective user interface. When the respective user interface is displayed, the device detects (766) input for dismissing the respective user interface (e.g., input for dismissing the wake screen user interface 5004 and displaying the home screen 5182 (e.g., swipe up from the bottom edge of the screen, press the home button, etc.) and authentication input (e.g., biometric input such as facial recognition input and/or fingerprint sensor input on the home button, or password input)). In response to dismissing the respective user interface, the device displays (768) a second user interface (e.g., home screen user interface 5182 or application user interface) that is different from the respective user interface. While the second user interface is displayed, the device detects (770) a swipe input (e.g., a swipe gesture upward or downward from an edge of the touch screen) on the respective user interface. In response to detecting the swipe input, in accordance with a determination that the swipe input on the respective user interface meets cover display criteria, the device display (772) includes a cover user interface (e.g., cover user interface 5190) of a notification history (e.g., notification history 5062) (e.g., a notification previously displayed on the respective user interface optionally has been saved to notification history 5062 and is now displayed in notification history 5062). For example, in response to a swipe input detected while home screen user interface 5182 is displayed (after waking up screen user interface 5004) a cover user interface 5190 including notification history 5062 is displayed, as described with respect to fig. 5 AU-5 AX. Displaying the notification history on the accessible cover user interface after releasing the wake screen user interface reduces the number of inputs required to display the notification history. Reducing the number of inputs required to perform the operation enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to view notification history without requiring inputs to redisplay the wakeup screen user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
It should be understood that the particular order in which the operations in fig. 7A-7G are described is merely exemplary and is not intended to suggest that the order is the only order in which the operations may be performed. Those of ordinary skill in the art will recognize a variety of ways to reorder the operations described herein. Additionally, it should be noted that the details of other processes described herein with respect to other methods described herein (e.g., method 800 and method 900) are equally applicable in a similar manner to method 700 described above with respect to fig. 7A-7G. For example, the contacts, inputs, controls, event types, delivery modes, intensity thresholds, and/or animations described above with reference to method 700 optionally have one or more of the features of contacts, inputs, controls, event types, delivery modes, intensity thresholds, and/or animations described herein with reference to other methods described herein (e.g., methods 800 and 900). For the sake of brevity, these details are not repeated here.
Fig. 8A-8E are flowcharts illustrating a method 800 of displaying an aggregated notification according to some embodiments. Method 800 is performed at an electronic device (e.g., device 300, FIG. 3; or portable multifunction device 100, FIG. 1A) having a display generating component and one or more input devices. In some implementations, the display generating component is a touch screen display 112 and the touch sensitive surface is on or integrated with the display. Some operations in method 800 are optionally combined and/or the order of some operations is optionally changed.
When the device has multiple notifications in the notification history (e.g., notification history 5062), which include a first notification of a first event type (e.g., notification 5066 of an event in a conversation thread with contacts Edwin and Madeline, as shown in fig. 5 AY) and a second notification of a second event of the first event type (e.g., notification 5068 of an event in a conversation thread with contacts Edwin and Madeline), which are aggregated in the notification history (e.g., when the notification history is displayed in the notification history user interface or cover user interface, the first and second notifications will appear in an aggregated or condensed state (e.g., the content of only one or none of the two notifications is fully visible)), the device detects (802) the occurrence of one or more additional events of the first event type. For example, in fig. 5BD, notification 5068 is aggregated with notification 5066 (e.g., as shown by notification 5068 overlapping notification 5066 in part).
In response to detecting the occurrence of the first additional event of the first event type, the device creates (804) a third notification of the first additional event of the first event type.
After creating the third notification of the first additional event of the first event type, the device receives (806) a request (e.g., an input or device event) to wake the device (e.g., the wake screen user interface is an initial user interface displayed when the device switches from the display off state to the display on state (e.g., in response to a gesture or input to wake the device, or in response to the arrival of a new notification)) via the input device to wake the device.
In response to a request to display a wake screen user interface of the device, the device displays (808) the wake screen user interface via the display generating component with a third notification, wherein the third notification is not displayed on the wake screen user interface with information about the first notification and the second notification. For example, in fig. 5AZ to 5BA, in response to a request to display the wakeup screen user interface 5004, the wakeup screen user interface 5004 is displayed together with notification 5196 of an event in the conversation thread of contacts Edwin and Madeline.
After displaying the third notification on the wakeup screen user interface, the device receives (810) a request to display the notification history via the input device (e.g., a swipe up on the wakeup screen user interface to bring up the notification history user interface, or a swipe down from the top edge of the display detected while displaying the home screen or application user interface). For example, in fig. 5BB to 5BD, the up swipe input through contact 5202 shows notification history 5062.
In response to receiving a request to display a notification history (e.g., notification history 5062), the device displays (812) the notification history (e.g., notification calendar history 5062) along with an aggregated representation of the first notification and the second notification (e.g., aggregated representations of notifications 5066 and 5068 (also aggregated with notification 5180) in BD of fig. 5). In some embodiments, the aggregate representation includes content from only one of the first notification and the second notification, or partial content from both the first notification and the second notification, or summaries of content from the first notification and the second notification (e.g., a stack of notifications that aggregate representations are events of the first event type, with the most recent notification above). An aggregate representation of notifications of event types is displayed in the notification history user interface (e.g., such that notifications of event types that have not been sent to the notification history are not aggregated with notifications of event types in the notification history after additional notifications of event types are displayed on the wakeup screen), providing an indication of notifications of event types by displaying each notification individually without cluttering the notification history user interface. Displaying notifications without cluttering the notification history user interface enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing a user to access notifications in the notification history user interface of event types other than the event types of aggregated notifications without requiring input to scroll through separate notifications of event types), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, in response to detecting occurrence of the second additional event of the first event type (e.g., after the third notification of the first additional event of the first event type has been created and before or after the third notification is displayed on the wakeup screen user interface), the device creates (814) a fourth notification of the second additional event of the first event type. For example, notification 5206 corresponds to a second additional event in the conversation thread with contacts Edwin and Madeline.
In response to a request to display a wake screen user interface of the device, the device displays (816) a fourth notification aggregated with the third notification in the wake screen user interface. For example, in fig. 5BF, notification 5206 is aggregated with notification 5196 when awake screen user interface 5004 is displayed (as shown in fig. 5BF, after the screen off state as shown in fig. 5 BE). Displaying an aggregated representation of notifications of event types in the wakeup screen user interface (e.g., such that each notification of an event type is displayed separately before aggregation with other notifications of event types after one or more additional notifications of event types are displayed on the wakeup screen) provides an indication of the notifications of event types by displaying each notification separately at the same time without cluttering the wakeup screen user interface. Displaying notifications without cluttering the wake screen user interface enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to access notifications in the wake screen user interface of event types other than the event types of aggregated notifications without requiring input to scroll through separate notifications of event types), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, after displaying the third notification in the wake screen user interface, the device detects (818) an input for dismissing the wake screen user interface. For example, dismissing the wake screen user interface occurs in response to an input displaying a home screen user interface or an application user interface, such as activation of a home button or a gesture on a touch sensitive display of the device (e.g., swipe input upward from the lower edge of touch screen 112 for displaying home screen user interface 5182, as shown in fig. 5 BG-5 BH). In response to the input to deactivate the awake screen user interface, the device stops (820) displaying the awake screen user interface (e.g., awake screen user interface 5004) and the third notification (e.g., notification 5196). When the third notification meets the notification history display criteria (e.g., the user does not explicitly clear the third notification on the wakeup screen), the device detects (822) an input for displaying the notification history (e.g., an up swipe input on the redisplayed wakeup screen user interface 5004, as shown in fig. 5 BJ-5 BK). In some embodiments, the input for displaying the notification history is, for example, the input described with respect to operations 758-762 or with respect to operations 764-772 of method 700 (fig. 7A-7G). In response to detecting the input to display the notification history, the device displays (824) the notification history with an aggregate representation of the third notification, the second notification, and the first notification (e.g., the third notification is added on top of a stack including the first notification and the second notification). For example, in fig. 5BK, notification history 5062 is displayed along with an aggregate representation of third notification 5196, second notification 5068, and first notification 5066 (and notifications 5180 and 5206). Aggregating notifications previously displayed on the wakeup screen user interface with notifications of the same event type in the notification history user interface provides an indication of the event type notifications by displaying each notification individually without cluttering the notification history user interface. Displaying notifications without cluttering the notification history user interface enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing a user to access notifications in the notification history user interface of event types other than the event type of the aggregated notification without requiring input to scroll through separate notifications of event types), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, in response to detecting an input for displaying the notification history, the timing criterion is met according to a determination that the time difference satisfies (e.g., including a criterion that is met according to determining that a time difference between a time corresponding to an occurrence of an event represented by the third notification and a time corresponding to an occurrence of an event represented by the second notification exceeds a threshold duration and/or that the events represented by the third notification and the second notification occur on different days) (826): the device forgoing displaying the notification history with the aggregated representation of the third notification, the second notification, and the first notification; and the device displays the third notification in the notification history separately from the aggregated representations of the first notification and the second notification. In some embodiments, in accordance with a determination that the time difference does not meet the timing criteria (e.g., the two events occur on the same day or the difference between the occurrence of the two events is less than or equal to a threshold amount of time), the device displays a notification history with an aggregated representation of the third notification, the second notification, and the first notification. Discarding aggregated notifications in accordance with determining that a time difference between events corresponding to the notifications (e.g., a time difference between a most recent event of an event type and a second most recent event of an event type) meets a timing criterion reduces the number of inputs required to view notifications of events occurring within different time periods (e.g., on different days). Reducing the number of inputs required to view notifications of events occurring in different time periods enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to view notifications received on different days alone, without requiring inputs to expand the aggregate representation of the notifications), which in turn reduces power usage and extends the battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, displaying the respective aggregated representations of notifications (e.g., the aggregated representations of notifications in notification history 5062, such as the aggregated representations of the first notification and the second notification, or the aggregated representations of notifications on wakeup screen user interface 5004, such as the aggregated representations of the third notification and the fourth notification) includes (828) displaying at least a portion of content corresponding to the most recently created notification in the respective aggregated representations of notifications (e.g., when the aggregated representations of the first notification and the second notification are displayed, at least a portion of content corresponding to the second notification is displayed if the second notification is created more recently than the first notification). In some implementations, a portion of the content includes identifying information (e.g., contact names, contact images, phone numbers, news sources, etc.) of a communication source (e.g., phone call, voice mail, message, social media post, news article, calendar invitation, etc.) and/or conveying at least a portion of the information (e.g., message content, news article headline, news article content, voice mail transcription, social media post content, social media comment content, calendar invitation information, calendar appointment information, etc.). For example, in the aggregate representation of notifications including notifications 5066 and 5068, as shown in FIG. 5AY, message text ("i am.), sender information (" Madeline "), thread information (" send you and Edwin "), and receipt time (" 3 hours ago ") are display content corresponding to the most recently created notification 5068 in the aggregate representation of notifications. Displaying at least a portion of the content corresponding to the most recently created notification in the aggregated representation of notifications reduces the amount of input required to view the content of the most recently created notification. Reducing the number of inputs required to view the content of the recently created notification (e.g., by allowing the user to view the notification content without requiring input to access the content of the notification) enhances the operability of the device and makes the user device interface more efficient, which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, the respective aggregated representation of notifications (e.g., the aggregated representation of notifications in notification history 5062, such as the aggregated representation of the first notification and the second notification, or the aggregated representation of notifications on wakeup screen user interface 5004, such as the aggregated representation of the third notification and the fourth notification) includes (830) summary information (e.g., contacts of the communication event type, source identification information, number of purchases, number of calendar invitations, number of likes/forwards/mentions) including notification counts represented by the respective aggregated representations. For example, as shown in FIG. 5AY, the generic aggregate representation including notifications 5066 and 5068 includes a notification count represented by the aggregate representation ("+1 is more from Edwin"). Displaying summary information including notification counts represented by aggregated representations of notifications reduces the number of inputs required to obtain the counts. Reducing the amount of input required to obtain notification counts for aggregated representations of notifications (e.g., by allowing a user to view summary information without requiring input to extend the aggregated representations of notifications to view data separately from each notification) enhances operability of the device and makes the user device interface more efficient, which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, the respective aggregate representations of notifications (e.g., aggregate representations of notifications in notification history 5062, such as aggregate representations of first and second notifications, or aggregate representations of notifications on wakeup screen user interface 5004, such as aggregate representations of third and fourth notifications) include (832) a plurality of summary information indicators, where the respective summary information indicators of the plurality of summary information indicators correspond to respective categories of count items corresponding to the content of the notifications represented by the respective aggregate representations (e.g., individually summarizing likes and forwards in a set of aggregate notifications). Displaying summary information including a plurality of summary information indicators of the aggregate representation of the notification reduces the number of inputs required to obtain the summary information. Reducing the amount of input required to obtain summary information for an aggregated representation of notifications (e.g., by allowing a user to view multiple summary information indicators without requiring input to expand the aggregated representation of notifications to view data separately from each notification) enhances operability of the device and makes the user device interface more efficient, which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, the device detects (834) input (e.g., tap input for an aggregate representation) for expanding a respective aggregate representation of notifications (e.g., an aggregate representation of notifications in notification history 5062, such as an aggregate representation of a first notification and a second notification, or an aggregate representation of notifications on wakeup screen user interface 5004, such as an aggregate representation of a third notification and a fourth notification). For example, a tap input through contact 5218 for expanding the aggregate representation of notifications including notifications 5066, 5068, 5180, 5196, and 5206 is shown in fig. 5 BL.
In response to input for expanding the respective aggregate representation, the device displays (836) an expanded version of the set of notifications corresponding to the respective aggregate representation. For example, in the BM of fig. 5, notifications 5206, 5196, 5180, and 5068 are displayed separately. In some embodiments, at least a portion of each notification of the aggregate representation is displayed. In some embodiments, in response to an input to expand the respective aggregated representation, one or more respective notifications in the set of notifications corresponding to the respective aggregated representation are not moved (e.g., are "pushed" out by expanding the set of notifications) to different locations in the wake screen user interface. For example, at least one notification that is not the set of notifications moves toward the lower edge of the wake screen user interface. In some embodiments, in response to input to expand the respective aggregated representation, one or more respective notifications of the set of notifications corresponding to the respective aggregated representation are not stopped from being displayed on the wakeup screen user interface (e.g., notification 5198 is not displayed in the BM of fig. 5 because it was pushed out by expanding an expanded version of the set of notifications). In some embodiments, in response to an input to expand the respective aggregate representation, a control (e.g., control 5221, as shown in fig. 5 BN) to clear all notifications in the set of notifications of the respective aggregate representation is displayed. Displaying an expanded version of a set of notifications corresponding to an aggregated representation of notifications in response to input for expanding the aggregated representation enables a user to alternately display individual notifications of the aggregated set and display the notifications in an aggregated state that does not confuse the user interface. Enabling the user to alternately display individual notifications of the aggregate group and display the notifications in an aggregate state that does not confuse the user interface enhances the operability of the device and makes the user device interface more efficient, which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, when an expanded version of the set of notifications corresponding to the respective aggregated representation is displayed, the device detects (838) input for dismissing the set of notifications corresponding to the respective aggregated representation (e.g., input for control 5221 for clearing all notifications in the set of notifications of the respective aggregated representation, or input on a user interface (e.g., a vertical swipe)). In response to an input to dismiss the set of notifications corresponding to the respective aggregate representations, the device clears (840) the set of notifications corresponding to the respective aggregate representations (e.g., deletes the notification history if the respective aggregate representation is shown in the notification history, or clears the notification without saving into the notification history if the respective aggregate representation is shown on the wake screen). For example, in response to input to control 5221, notifications 5066, 5068, 5180, 5196, and 5206 (corresponding to aggregated representations of notifications) are cleared. Clearing the set of notifications in response to input for dismissing a set of notification representations corresponding to the aggregated representation of notifications reduces the number of inputs required to clear the set of notifications. Reducing the number of inputs required to perform the operation enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to clear multiple notifications without requiring inputs to dismiss each notification individually), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, when displaying an expanded version of the set of notifications corresponding to the respective aggregated representation, the device detects (842) an input of the respective notification for the set of notifications that meets the notification expansion criteria (e.g., by pressing the input (e.g., the characteristic intensity of the contact increases above a first intensity threshold (e.g., a tap pressure intensity threshold IT L ) An input of (c)) or touch and hold inputs to meet notification extension criteria). In response to detecting an input meeting the notification extension criteria, the device displays (844) a corresponding extended version of the notification. For example, as shown in fig. 5BS to 5BU, in response to a light press input through the contact 5230 for the notification 5196, an expanded version of the notification 5196 is displayed, as shown in fig. 5 BU. Displaying an extension of a notification in response to input for the notificationThe version provides the option of viewing an expanded version of the notification by additionally displaying controls for viewing the expanded version of the notification without cluttering the user interface. Providing the option to view an extended version of the notification enhances the operability of the device and makes the user device interface more efficient by additionally displaying controls for viewing the extended version of the notification without cluttering the user interface, which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, when an extended version of the set of notifications corresponding to the respective aggregated representation is displayed, the device detects (846) input for re-aggregating the set of notifications (e.g., tap input for a control for re-aggregating the set of notifications). In response to the input for re-aggregating the set of notifications, the device re-displays (848) an aggregated version of the set of notifications corresponding to the respective aggregated representation. For example, in fig. 5BN to 5BO, in response to input to control 5220, the expanded version of the set of notifications shown in fig. 5BN is reassembled, as shown in fig. 5 BO. In some embodiments, after expanding the set of notifications, other notifications that stopped being displayed when the set of notifications was expanded are redisplayed. For example, when the notification of the extension group is displayed, the display of the notification 5198 is stopped as shown in fig. 5 BN. When the set of notifications is reassembled, the notifications 5198 are redisplayed in FIG. 5 BO. Redisplaying the aggregated version of the set of notifications in response to an input for re-aggregating the set of notifications corresponding to the aggregated representation of the notifications enables a user to alternately display individual notifications of the aggregated set and display the notifications in an aggregated state that does not confuse the user interface. Enabling a user to alternately display individual notifications of an aggregate group and display the notifications in an aggregate state that does not confuse the user interface enhances the operability of the device and makes the user device interface more efficient, which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, a first respective application (e.g., a communication application and/or a news application) generates (850) a plurality of events of different event types (e.g., a single event type corresponds to all communications or articles (e.g., messages, phone calls, voice mails, and/or emails) from a contact, group of contacts, or source). The plurality of notifications in the notification history includes (852): a fifth notification corresponding to a first respective event type of the plurality of different event types, a sixth notification corresponding to the first respective event type, and a seventh notification corresponding to a second respective event type of the plurality of different event types. For example, the messaging application generates a plurality of events of different event types (e.g., each conversation thread is a different event type). In fig. 5BO, notifications 5206, 5196, 5180, 5068, and 5066 are notifications of events of a first event type (events in conversation threads with madelines and Edwin), and notification 5198 is a notification of events of a second event type (events in conversation threads with neals, for example). In response to detecting a request to display a notification history (854): the device displaying an aggregate representation of the fifth notification and the sixth notification in the notification history; and the device displays the seventh notification in the notification history separately from the aggregated representations of the fifth notification and the sixth notification. For example, in notification history 5062 shown in fig. 5BO, an aggregate representation of notifications 5206, 5196, 5180, 5068, and 5066 (for a first event type generated by a messaging application) is displayed, and notification 5198 (for a second event type generated by a messaging application) is separated from the aggregate representation of notifications 5206, 5196, 5180, 5068, and 5066. In some embodiments, the instant messaging application generates a first type of event (message from a first contact) and a second type of event (message from a second contact). In some implementations, the news application generates a first type of event (e.g., an article from a first news source) and a second type of event (e.g., an article from a second news source). Providing different event types for a single application enables separate display (in an unpolymerized state) of communication notifications from different subcategories of the same application. In some implementations, the second corresponding application (e.g., calendar application, traffic service application, or payment application) generates an event of a single event type. Displaying notifications of a first event type generated by an application separately from an aggregate representation of notifications of a second event type generated by the application provides separate indications of received notifications of different event types generated by the application without cluttering the notification history user interface by displaying each notification separately. Displaying notifications without cluttering the notification history user interface enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to access notifications of different event types generated by the application without requiring input to scroll through each individual notification), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
It should be understood that the particular order of the operations that have been described in fig. 8A-8E is merely exemplary and is not intended to suggest that the order is the only order in which the operations may be performed. Those of ordinary skill in the art will recognize a variety of ways to reorder the operations described herein. Additionally, it should be noted that the details of other processes described herein with respect to other methods described herein (e.g., method 700 and method 900) are equally applicable in a similar manner to method 800 described above with respect to fig. 8A-8E. For example, the contacts, inputs, controls, event types, and/or intensity thresholds described above with reference to method 800 optionally have one or more of the features of the contacts, inputs, controls, event types, and/or intensity thresholds described herein with reference to other methods described herein (e.g., methods 700 and 900). For the sake of brevity, these details are not repeated here.
Fig. 9A-9E are flowcharts of a method 900 of displaying hints for adjusting notification settings, according to some embodiments. Method 900 is performed at an electronic device (e.g., device 300, fig. 3; or portable multifunction device 100, fig. 1A) having a display generating component and one or more input devices. In some implementations, the display generating component is a touch screen display 112 and the touch sensitive surface is on or integrated with the display. Some operations in method 900 are optionally combined and/or the order of some operations is optionally changed.
The device displays (902), via the display generation component, a plurality of notifications for a plurality of different applications, including notifications for a first application (e.g., a social media application) and notifications for a second application (e.g., a house simulator game application), in a notification display user interface (e.g., a wake screen user interface 5004, a lock screen user interface, a cover user interface 5190, or a notification history user interface). In some embodiments, at least some of the notifications are displayed on the notification display user interface at different times, respectively.
The device detects (904) user interactions with the plurality of notifications via the input device, including performing a request for a communicated requested operation (e.g., opening a corresponding application, responding to the notification without opening the corresponding application (e.g., using an input area 5242 displayed in an expanded version of the notification, as shown in fig. 5 BU), and/or dismissing the notification).
The device responds (906) to user interactions with the plurality of notifications by performing requested operations with respect to the one or more notifications (e.g., arrival of the notifications is prolonged during a period of time when the user is operating the device normally (e.g., navigating to a plurality of different user interfaces and applications, turning the device on and off multiple times, etc.), and monitoring user interactions with the plurality of notifications for prolonged periods of time).
In some embodiments, the displaying, detecting, and responding operations are performed over an extended period of time (e.g., hours, days, weeks, months, and/or a period of time during which multiple notifications (e.g., for the first application and/or the second application) have been displayed). For example, the time period includes a time from installation of the corresponding application or a time from initialization/reset of the operating system.
The device displays 908, via a display generation component (e.g., after an extended period of time), a prompt (e.g., prompt 602 as shown in fig. 6A, prompt 614 as shown in fig. 6B, prompt 628 as shown in fig. 6C, or prompt 638 as shown in fig. 6D) for a user to adjust notification settings of one or more of the plurality of applications. In some embodiments, the device actively displays the reminder based on preset interaction criteria satisfied by previous user interactions with the plurality of notifications without requiring a specific user request to call the reminder. In accordance with determining that the engagement of the user with the notifications of the first application is below a threshold engagement level and the engagement of the user with the notifications of the second application is above the threshold engagement level based on the user's interactions with the plurality of notifications, the device displays suggestions that reduce the prominence of future notifications of the first application (e.g., change the delivery mode of the notifications of the first application from a prominence delivery mode to a quiet delivery mode, or from a quiet delivery mode to a mute mode, or from a prominence delivery mode to a mute mode) but not reduce the prominence of future notifications of the second application (e.g., not change the known delivery mode of the second application from a prominence delivery mode to a quiet delivery mode, or from a quiet delivery mode to a mute mode). For example, in accordance with a determination that the engagement of the user with the notification of the social media application is below a threshold engagement level (and the engagement of the user with the notification of the house simulator game application is above the threshold engagement level), the device displays a prompt 602 (including text indicating a suggestion to view the notification settings) and controls 606, 608, and 610 for changing the notification settings of the social media application. In accordance with a determination that the engagement of the user with the notifications of the second application is below a threshold engagement level and the engagement of the user with the notifications of the first application is above the threshold engagement level based on the user's interactions with the plurality of notifications, the device displays a suggestion to reduce the prominence of future notifications of the second application but not the prominence of future notifications of the first application. For example, in accordance with a determination that the engagement of the user with the notifications of the house simulator game application is below a threshold engagement level (and the engagement of the user with the notifications of social media is above the threshold engagement level), the device displays a prompt (e.g., including notification 616 instead of notification 604) similar to 602 but related to the house simulator game application instead of the social media application. In some implementations, the prompt includes an explanation of the cause of the prompt (e.g., explanatory text 612). In some implementations, in accordance with a determination that the engagement of the user with the notification of the first application is above the threshold engagement level and the engagement of the user with the notification of the second application is below the threshold engagement level, the prompt includes a suggestion to increase a protrusion of an future notification of the first application (e.g., change a delivery mode of the notification of the first application from a quiet delivery mode to a protrusion delivery mode) but not increase a protrusion of a future notification of the second application (e.g., not change a delivery mode of the notification of the second application from a quiet delivery mode to a protrusion delivery mode). In some embodiments, in accordance with a determination that the user's engagement of notifications with the second application is above a threshold engagement level and the user's engagement of notifications with the first application is below a threshold engagement level, the prompt includes a suggestion to increase the prominence of future notifications of the second application but not of future notifications of the first application. Displaying a prompt to adjust notification settings of one or more applications in response to user interaction with the notification reduces the number of inputs required to adjust notification settings of the application. Reducing the number of inputs required to adjust the notification settings of the application enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to change the notification settings of the application without requiring inputs to access the settings user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, displaying the prompt includes (910): determining that the user's engagement of notifications with the first application is below a threshold engagement level and the user's engagement of notifications with the second application is below a threshold engagement level based on the user's interactions with the plurality of notifications, while displaying suggestions that reduce prominence of future notifications of the first application and suggestions that reduce prominence of future notifications of the second application. For example, cues 614, 628, and 638 are used to adjust notifications for both the first application (social media) and the second application (house simulator). In some implementations, separate notification preference adjustment controls are displayed for each of the first application and the second application (e.g., in the presentation 614, the switchers 620 and 622 of social media and the switchers 624 and 626 of the house simulator allow for separate adjustment of preferences for different applications). In some embodiments, the notification preference adjustment control displayed in the prompt allows for simultaneous adjustment of preferences of multiple applications. For example, input at control 642 displayed in the offer 638 ("close" button) adjusts notification delivery preferences for both the social media application and the house simulator game application. In some embodiments, the hints aggregate suggestions for adjusting notifications of related applications (e.g., social networking applications and gaming applications operating on a social networking platform to which the social networking applications correspond). In some embodiments, the hints aggregate suggestions for adjusting notifications for two completely unrelated applications. Displaying a prompt to adjust notification settings of one or more applications in response to user interaction with the notification reduces the amount of input required to adjust notification settings of the application. Reducing the number of inputs required to adjust the notification settings of the application enhances the operability of the device and makes the user device interface more efficient (e.g., by automatically prompting the user to change the notification settings of the application without requiring user input to access controls for adjusting the notification settings), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, the prompt simultaneously displays (912) a corresponding suggestion (e.g., 612a and 612b in fig. 6C) that reduces future notifications of two independently operated applications (e.g., the first application is a mail application and the second application is a browser application, or the first application is a messaging application and the second application is a map application, etc.). In some embodiments, independently operating applications refer to applications that do not share the same ownership, brand, or data/content source. Displaying a prompt to adjust the notification settings in response to a user interaction with the notification, wherein the prompt simultaneously displays a suggestion to reduce prominence of two independently operated applications, reducing the amount of input required to adjust the notification settings of one or more applications. Reducing the number of inputs required to adjust the notification settings of an application enhances the operability of the device and makes the user device interface more efficient (e.g., by automatically prompting the user to change notification settings for a plurality of different applications without requiring user input to individually access controls for each application for adjusting notification settings), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, the prompt includes (914) a control (e.g., a "hold" button 606, 630, 634, or 640) for rejecting the corresponding suggestion (e.g., suggestion 612) included in the prompt (e.g., a "hold" button for rejecting a suggestion in the prompt that weakens or reduces future notifications of the first application, the second application, or both applications). When the prompt is displayed, the device detects (916) input for a control for rejecting the corresponding suggestion (e.g., a highlighted suggestion that reduces future notifications of the first application, the second application, or both applications). In response to detecting input for a control for rejecting the respective suggestion (e.g., in response to a user selecting a "hold" button displayed concurrently with the suggestion to mute or quiet the future notification of the respective application), the device relinquishes (918) the protrusion of the future notification of at least one of the first application or the second application. Displaying a prompt to adjust notification settings in response to user interaction with the notification (including a control to reject suggestions included in the prompt (e.g., a "hold" button)) enhances operability of the device and makes the user device interface more efficient (e.g., by automatically prompting the user to select between changing and holding notification settings for an application without requiring user input to access the control to view notification settings), which in turn reduces power usage and prolongs battery life of the device by enabling the user to more quickly and efficiently use the device.
In some embodiments, in response to detecting input for a control for rejecting a respective suggestion (e.g., for a first application or a second application or both applications), the device discards (920) the highlighted suggestion that displays a future prompt that includes a reduction in future notifications of the respective application (e.g., the first application or the second application or both applications) of at least one of the first application or the second application. For example, if the user selects a "hold" button corresponding to a notification of the first application, the current prompt of the first application is removed and automatically generating future prompts related to changing the notification delivery mode of the first application is also turned off. Discarding displaying future prompts (including suggestions that reduce the prominence of future notifications of the application) in response to user interaction with the notifications enhances the operability of the device and makes the user device interface more efficient (e.g., by reducing the amount of input required to manage delivery of future notifications after the "hold" control has been selected, because the prompts of the application are no longer displayed, and thus the user does not need to provide input in response to additional prompts of the application), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some embodiments, the device detects (922) user interactions with a plurality of prompts (so that the user adjusts notification settings of one or more of the plurality of applications) via an input device. In accordance with a determination that user interaction with the plurality of notifications meets a rejection criteria (e.g., the user always and/or frequently rejects a highlighted plurality of notifications that change some or all of the one or more applications in the future, and/or the number of rejections is greater than a threshold number of rejections (and/or rate of change over time) of one or more of the plurality of applications, the device discards (924) the future display so that the user adjusts the additional notifications of the notification settings, e.g., if the user selects a "hold" control three times (e.g., for notifications that are not related, for notifications that correspond to events of the same application, for notifications that correspond to events of the same event type, for notifications that correspond to events of a different event type, etc.), all of the future notifications (e.g., all applications or certain notification types, message threads, multiple message threads, etc.) are closed, in some embodiments, if the user provides an input for closing the notifications (e.g., for notifications that are not related, for notifications of the same application, for notifications in the same threads, for notifications of multiple threads, etc.) that occur) a threshold is exceeded (e.g., all notifications are not related, all notifications are not met by the user interaction with the threads, the various types of notifications are determined based on the criteria of the user interaction with the notifications, or the various types of notifications, etc.), the device does not discard additional prompts for future display for the user to adjust the notification settings. Determining whether to forgo displaying future prompts to adjust notification settings in response to user interaction with the prompts to adjust notification settings enhances operability of the device and makes the user device interface more efficient (e.g., by reducing the number of inputs required to manage delivery of future notifications after rejecting the prompts to adjust notification settings meet rejection criteria), which in turn reduces power usage and extends battery life of the device by enabling the user to more quickly and efficiently use the device.
In some embodiments, the prompt includes (926) a control (e.g., a "custom" button 610, fig. 6A) for displaying a notification settings user interface (e.g., notification settings user interface 5100). When a reminder (e.g., reminder 602) is displayed, the device detects (728) input for a control for displaying a notification settings user interface (e.g., a tap input that activates a "custom" button). In response to detecting input for a control for displaying a notification settings user interface, the device (730): stopping displaying the prompt and displaying the notification setting user interface. In some embodiments, the device replaces the display notification display user interface with the display notification setting user interface. In some embodiments, the notification setting user interface displayed (optionally, in accordance with a determination that the user's engagement of the notification of the first application is below a threshold engagement level and the user's engagement of the notification of the second application is above a threshold engagement level) is a notification setting user interface corresponding only to the first application and not to the second application (e.g., as shown in fig. 6A). In some embodiments, the notification setting user interface displayed (optionally in accordance with a determination that the user's engagement with the notification of the second application is below a threshold engagement level and the user's engagement with the notification of the first application is above a threshold engagement level) is a notification setting user interface corresponding to only the second application and not to the first application. Including controls for displaying the notification settings interface in the prompt for the user to adjust the notification settings of one or more applications reduces the amount of input required to access the notification settings user interface. Reducing the number of inputs required to access the notification settings user interface enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to manage notification settings directly from automatically displayed prompts without requiring inputs to dismiss the notification display user interface and navigate to the notification settings user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, the prompt includes (932) a control (e.g., a "close" button 608, 632, 636, or 642) for accepting a corresponding suggestion (e.g., suggestion 612) included in the prompt. When the prompt is displayed, the device detects (934) input for a control for accepting the corresponding suggestion (e.g., a suggestion to reduce highlighting of future notifications of the first application, the second application, or both applications). Upon detecting input for a control for accepting a respective suggestion, the device detects (936) an occurrence of a first event corresponding to the first application (e.g., an event that typically triggers generation of a corresponding notification). In response to detecting occurrence of an event corresponding to the first application (938), in accordance with a determination that the event is associated with a reduce highlighting notification setting (e.g., the corresponding suggestion accepted is a suggestion that reduces highlighting of future notifications of the first application but does not reduce highlighting of future notifications of the second application), the device adds the first notification corresponding to the first event to the notification history (e.g., by swipe up or down on the wakeup screen user interface 5004 (e.g., as discussed with respect to fig. 5N-5O) or in the home screen user interface 5182 (e.g., as discussed with respect to fig. 5 AW-5 AX) or the notification history user interface 5062 displayed on the application user interface swiped down or up from a top or bottom edge of the display) without first displaying the first notification in the notification display user interface (e.g., the wakeup screen or the lock screen). In accordance with a determination that the event is not associated with a reduce highlighting notification setting (e.g., the corresponding suggestion accepted is a suggestion that reduces highlighting of future notifications of the second application but does not reduce highlighting of future notifications of the first application), the device displays a first notification corresponding to the first event in a notification display user interface.
In some embodiments, the device detects the occurrence of a second event corresponding to a second application; and in response to detecting the occurrence of the second event corresponding to the second application: in accordance with a determination that the event is associated with a reduce highlighting notification setting (e.g., the corresponding suggestion accepted is a suggestion that reduces highlighting of future notifications of the first application but does not reduce highlighting of future notifications of the second application), the device displays a second notification corresponding to the second event in a notification display user interface (e.g., a wake screen or a lock screen); and in accordance with a determination that the event is not associated with a decrease in highlighting notification settings (e.g., the corresponding suggestion accepted is a suggestion that decreases the highlighting of future notifications of the second application but does not decrease the highlighting of future notifications of the first application), the device adds a second notification corresponding to the second event to the notification history (e.g., a notification history user interface displayed by swipe up or down on a wake screen or swipe down or up from a top or bottom edge of the display on a home screen or application user interface) without first displaying the second notification in a notification display user interface (e.g., a wake screen or a lock screen). In some embodiments, the method includes detecting (e.g., in the case of increasing notification prominence according to a recommendation) an occurrence of a third event (e.g., an event that generally triggers generation of a corresponding notification) corresponding to the first application; and in response to detecting the occurrence of the third event corresponding to the first application: in accordance with a determination that the event is associated with a prominent notification setting (e.g., the corresponding suggestion accepted is a suggestion that increases the prominence of the future notification of the first application but does not increase the prominence of the future notification of the second application), the device displays a third notification corresponding to the third event on a different wakeup screen or lock screen than the notification display user interface (e.g., the notification history user interface displayed by swipe up or down on the wakeup screen or swipe down or up from the top or bottom edge of the display on the home screen or application user interface); and in accordance with a determination that the event is not associated with a prominent notification setting (e.g., the corresponding suggestion accepted is a suggestion that increases the prominence of the future notification of the second application but does not increase the prominence of the future notification of the first application), the device displays a third notification corresponding to the third event in a notification display user interface (e.g., a notification history user interface). Adding notifications to the notification history in response to input for a control to accept the suggestions included in the prompt reduces the amount of input required to adjust the notification settings of the application. Reducing the number of inputs required to adjust the notification settings of the application enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to change the notification settings of the application without requiring inputs to access the settings user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, the prompt includes (940) a control (e.g., a "close" button 608, 632, 636, or 642) for accepting the respective suggestion included in the prompt. When the prompt is displayed, the device detects (942) input for a control for accepting the corresponding suggestion (e.g., a suggestion to reduce highlighting of future notifications of the first application, the second application, or both applications). Upon detecting input for a control for accepting a respective suggestion, the device detects (944) an occurrence of a first event (e.g., an event that typically triggers generation of a corresponding notification) corresponding to the first application. In response to detecting the occurrence of the first event corresponding to the first application (946): in accordance with a determination that the first event is associated with a reduced prominence notification setting (e.g., the corresponding suggestion accepted is a suggestion that reduces prominence of future notifications of the first application but does not reduce prominence of future notifications of the second application), and the device generates a first non-visual alert (e.g., an audio alert and/or a haptic alert including a haptic output) having a first alert profile (e.g., a first magnitude and/or frequency); and in accordance with a determination that the respective suggestion accepted is a suggestion that reduces the prominence of future notifications of the first application but does not reduce the prominence of future notifications of the second application, the device foregoes generating a non-visual alert of the respective notification but still displays the respective notification. In accordance with a determination that the first event is not associated with a reduced highlighting notification setting (e.g., the corresponding suggestion accepted is a suggestion that reduces highlighting of future notifications of the second application but does not reduce highlighting of future notifications of the first application), the device displays the first notification corresponding to the first event in a notification display user interface and generates a second non-visual alert (e.g., an audio alert including an audio output and/or a haptic alert including a haptic output) having a second alert profile (e.g., a second magnitude different from the first magnitude and/or a second frequency different from the first frequency) different from the first alert profile (e.g., the second alert profile is designed to have a more attractive feature than the first alert profile). In some embodiments, the method includes detecting an occurrence of a second event corresponding to a second application; and in response to detecting occurrence of the second event corresponding to the second application: in accordance with a determination that the respective suggestion accepted is a suggestion that reduces the prominence of the future notification of the first application but does not reduce the prominence of the future notification of the second application, the device displays a second notification corresponding to the second event in a notification display user interface and generates a third alert having a third alert profile (the same alert profile as the second alert profile); and in accordance with a determination that the corresponding suggestion accepted is a suggestion that reduces the prominence of the notification of the second application but does not reduce the prominence of the notification of the first application, the device displays the second notification in the notification display user interface and generates a fourth alert having a fourth alert profile (the same alert profile as the first alert profile) or forgoes generating the fourth alert. Determining whether to generate a non-visual alert having a first alert profile or a second alert profile based on whether the event is associated with a reduced prominence notification setting provides improved feedback indicating to a user whether the received notification corresponds to the event associated with the reduced prominence notification setting. Providing improved feedback enhances operability of the device and makes the user device interface more efficient (e.g., by helping the user determine highlighting of received notifications without activating a display of the device), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
In some implementations, the prompt includes (948) a control (e.g., a "close" button 608, 632, 636, or 642) for accepting a corresponding suggestion (e.g., suggestion 612) included in the prompt. When the prompt is displayed, the device detects (950) input for a control for accepting the corresponding suggestion (e.g., a suggestion to reduce highlighting of future notifications of the first application, the second application, or both applications). Upon detecting input for a control for accepting a respective suggestion, the device detects (952) an occurrence of a first event corresponding to the first application. In response to detecting an occurrence of a first event corresponding to a first application (954): in accordance with a determination that the first event is associated with a reduced prominence setting (e.g., the corresponding suggestion accepted is a suggestion to reduce the prominence of future notifications of the first application but not of future notifications of the second application), the device forgoes displaying notifications corresponding to the first event; and in accordance with a determination that the first event is not associated with a reduce highlighting notification setting (e.g., the corresponding suggestion accepted is a suggestion that reduces highlighting of future notifications of the second application but does not reduce highlighting of future notifications of the first application), the device displays the first notification corresponding to the first event.
In some embodiments, the device detects the occurrence of a second event corresponding to a second application; and in response to detecting the occurrence of the second event corresponding to the second application: in accordance with a determination that the received respective suggestion is a suggestion that reduces the prominence of future notifications of the first application but does not reduce the prominence of future notifications of the second application, the device displays a second notification corresponding to the second event in a notification display user interface; and in accordance with a determination that the corresponding suggestion accepted is a suggestion that reduces the prominence of future notifications of the second application but does not reduce the prominence of future notifications of the first application, the device discards displaying the second notification corresponding to the second event.
Adding notifications to the notification history in response to input for a control for accepting suggestions included in the prompt reduces the amount of input required to adjust the notification settings of the application. Reducing the number of inputs required to adjust the notification settings of the application enhances the operability of the device and makes the user device interface more efficient (e.g., by allowing the user to change the notification settings of the application without requiring inputs to access the settings user interface), which in turn reduces power usage and extends battery life of the device by enabling the user to use the device more quickly and efficiently.
It should be understood that the particular order in which the operations in fig. 9A-9E are described is merely exemplary and is not intended to suggest that the order is the only order in which the operations may be performed. Those of ordinary skill in the art will recognize a variety of ways to reorder the operations described herein. Additionally, it should be noted that the details of other processes described herein with respect to other methods described herein (e.g., method 700 and method 800) are equally applicable in a similar manner to method 900 described above with respect to fig. 9A-9E. For example, the contacts, inputs, controls, and/or event types described above with reference to method 900 optionally have one or more of the features of the contacts, inputs, controls, and/or event types described herein with reference to other methods described herein (e.g., methods 700 and 800). For the sake of brevity, these details are not repeated here.
The operations described above with reference to fig. 7A-7G, 8A-8E, and 9A-9E are optionally implemented by the components depicted in fig. 1A-1B. For example, detect operations 702, 706, 710, 714, 802, and 904; display operations 704, 708, 808, 812, 902, and 908; change operation 712; an add operation 716; creating operation 804; receive operations 806 and 810; and responsive operation 906 is optionally implemented by event sorter 170, event recognizer 180, and event handler 190. An event monitor 171 in the event sorter 170 detects a contact on the touch-sensitive display 112 and an event dispatcher module 174 communicates the event information to the application 136-1. The respective event identifier 180 of the application 136-1 compares the event information to the respective event definition 186 and determines whether the first contact at the first location on the touch-sensitive surface (or whether the rotation of the device) corresponds to a predefined event or sub-event, such as the selection of an object on the user interface, or the rotation of the device from one orientation to another. When a respective predefined event or sub-event is detected, the event recognizer 180 activates an event handler 190 associated with the detection of the event or sub-event. Event handler 190 optionally uses or invokes data updater 176 or object updater 177 to update the application internal state 192. In some embodiments, event handler 190 accesses a respective GUI updater 178 to update the content displayed by the application. Similarly, it will be apparent to those skilled in the art how other processes may be implemented based on the components depicted in fig. 1A-1B.
The foregoing description, for purposes 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 light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application to thereby enable others skilled in the art to best utilize the invention and various described embodiments with various modifications as are suited to the particular use contemplated.

Claims (14)

1. A method for managing notifications, comprising:
at an electronic device having a display generating component and an input device:
detecting an occurrence of one or more additional events of a first event type when the electronic device has a plurality of notifications in a notification history, wherein the plurality of notifications includes a first notification of the first event type and a second notification of a second event of the first event type, the first and second notifications aggregated in the notification history;
in response to detecting an occurrence of a first additional event of the first event type, creating a third notification of the first additional event of the first event type;
After creating the third notification of the first additional event of the first event type, receiving a request via the input device to display a wake-up screen user interface of the electronic device;
in response to the request to display the wake screen user interface of the electronic device, displaying the wake screen user interface via the display generating component with the third notification, wherein the third notification is not displayed on the wake screen user interface with information about the first notification and the second notification;
after the third notification has been displayed on the wakeup screen user interface, receiving a request to display the notification history via the input device; and
in response to receiving the request to display the notification history, displaying the notification history with an aggregated representation of the first notification and the second notification;
wherein displaying respective aggregated representations of notifications representing a plurality of notifications includes simultaneously displaying within the respective aggregated representations: only content from recently created ones of the plurality of notifications represented by the respective aggregate representations of the notifications and summary information including a count of the notifications represented by the respective aggregate representations;
Further comprises:
detecting an input for displaying the notification history when the third notification meets a notification history display criterion; and
in response to detecting the input for displaying the notification history:
in accordance with a determination that a time difference between a time of occurrence of the first additional event corresponding to the first event type represented by the third notification and a time of occurrence of the second event corresponding to the first event type represented by the second notification does not satisfy a timing criterion, displaying a notification history having an aggregate representation of the third notification, the second notification, and the first notification; wherein displaying the aggregated representation of the third notification, the second notification, and the first notification includes simultaneously displaying content from only recently created notifications in the aggregated representations of the third notification, the second notification, and the first notification, and summary information including a count of notifications represented by the aggregated representations of the third notification, the second notification, and the first notification.
2. The method according to claim 1, comprising:
in response to detecting the occurrence of a second additional event of the first event type, creating a fourth notification of the second additional event of the first event type; and
Displaying the fourth notification aggregated with the third notification in the wake screen user interface in response to the request to display the wake screen user interface of the electronic device, wherein information about the first notification and the second notification is displayed in response to the request to display the notification history.
3. The method according to claim 1, comprising:
in response to detecting the input for displaying the notification history, in accordance with a determination that a time difference meets a timing criterion:
discarding the notification history from being displayed with the aggregated representations of the third notification, the second notification, and the first notification; and
the third notification is displayed in the notification history separately from the aggregated representations of the first notification and the second notification.
4. A method according to any one of claims 1 to 3, comprising:
when the third notification meets notification history display criteria:
in response to detecting the input for displaying the notification history, in accordance with a determination that a time difference between a time of occurrence of the first additional event corresponding to the first event type represented by the third notification and a time of occurrence of the second event corresponding to the first event type represented by the second notification meets a timing criterion:
The third notification is displayed separately from the aggregated representations of the first notification and the second notification in the notification history.
5. A method according to any of claims 1 to 3, wherein the respective aggregated representation of notifications comprises a plurality of summary information indicators, wherein a first and a second one of the plurality of summary information indicators comprises a first one of count items of a first respective category corresponding to content of the notification represented by the respective aggregated representation and a second one of count items of a second respective category corresponding to content of the notification represented by the respective aggregated representation.
6. A method according to any one of claims 1 to 3, comprising:
detecting an input for expanding a respective aggregate representation of the notification; and
in response to the input for expanding the respective aggregate representation, an expanded version of a set of notifications corresponding to the respective aggregate representation is displayed.
7. The method of claim 6, comprising:
detecting an input for dismissing the set of notifications corresponding to the respective aggregated representation while displaying the expanded version of the set of notifications corresponding to the respective aggregated representation; and
Responsive to the input for dismissing the set of notifications corresponding to the respective aggregate representation, the set of notifications corresponding to the respective aggregate representation is cleared.
8. The method of claim 6, comprising:
detecting input of a respective notification for the set of notifications that meets a notification extension criterion when the extended version of the set of notifications corresponding to the respective aggregated representation is displayed; and
in response to detecting the input meeting the notification extension criteria, the extended version of the respective notification is displayed.
9. The method of claim 6, comprising:
detecting input for re-aggregating the set of notifications while displaying the expanded version of the set of notifications corresponding to the respective aggregated representation; and
responsive to the input for re-aggregating the set of notifications, an aggregated version of the set of notifications corresponding to the respective aggregated representation is re-displayed.
10. A method according to any one of claims 1 to 3, wherein a first respective application generates a plurality of events of different event types; and is also provided with
The plurality of notifications in the notification history includes:
A fifth notification corresponding to a first respective event type of the plurality of different event types,
a sixth notification corresponding to the first respective event type, and
a seventh notification corresponding to a second corresponding event type of the plurality of different event types; and is also provided with
In response to detecting the request to display the notification history:
displaying an aggregate representation of the fifth notification and the sixth notification in the notification history; and
the seventh notification is displayed in the notification history separately from the aggregated representations of the fifth notification and the sixth notification.
11. An electronic device, comprising:
a display generation section;
one or more input devices;
one or more processors;
a memory; and
one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions for:
detecting an occurrence of one or more additional events of a first event type when the electronic device has a plurality of notifications in a notification history, wherein the plurality of notifications includes a first notification of the first event type and a second notification of a second event of the first event type, the first and second notifications aggregated in the notification history;
In response to detecting an occurrence of a first additional event of the first event type, creating a third notification of the first additional event of the first event type;
after creating the third notification of the first additional event of the first event type, receiving a request via the input device to display a wake-up screen user interface of the electronic device;
in response to the request to display the wake screen user interface of the electronic device, displaying the wake screen user interface via the display generating component with the third notification, wherein the third notification is not displayed on the wake screen user interface with information about the first notification and the second notification;
after the third notification has been displayed on the wakeup screen user interface, receiving a request to display the notification history via the input device;
in response to receiving the request to display the notification history, displaying the notification history with an aggregated representation of the first notification and the second notification;
wherein displaying respective aggregated representations of notifications representing a plurality of notifications includes simultaneously displaying within the respective aggregated representations: only content from recently created ones of the plurality of notifications represented by the respective aggregate representations of the notifications and summary information including a count of the notifications represented by the respective aggregate representations;
Detecting an input for displaying the notification history when the third notification meets a notification history display criterion; and
in response to detecting the input for displaying the notification history:
in accordance with a determination that a time difference between a time of occurrence of the first additional event corresponding to the first event type represented by the third notification and a time of occurrence of the second event corresponding to the first event type represented by the second notification does not satisfy a timing criterion, displaying a notification history having an aggregate representation of the third notification, the second notification, and the first notification; wherein displaying the aggregated representation of the third notification, the second notification, and the first notification includes simultaneously displaying content from only recently created notifications in the aggregated representations of the third notification, the second notification, and the first notification, and summary information including a count of notifications represented by the aggregated representations of the third notification, the second notification, and the first notification.
12. The electronic device of claim 11, wherein the one or more programs include instructions for performing any of the methods of claims 2-10.
13. A computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by an electronic device with a display generation component and one or more input devices, cause the electronic device to:
detecting an occurrence of one or more additional events of a first event type when the electronic device has a plurality of notifications in a notification history, wherein the plurality of notifications includes a first notification of the first event type and a second notification of a second event of the first event type, the first and second notifications aggregated in the notification history;
in response to detecting an occurrence of a first additional event of the first event type, creating a third notification of the first additional event of the first event type;
after creating the third notification of the first additional event of the first event type, receiving a request via the input device to display a wake-up screen user interface of the electronic device;
in response to the request to display the wake screen user interface of the electronic device, displaying the wake screen user interface via the display generating component with the third notification, wherein the third notification is not displayed on the wake screen user interface with information about the first notification and the second notification;
After the third notification has been displayed on the wakeup screen user interface, receiving a request to display the notification history via the input device;
in response to receiving the request to display the notification history, displaying the notification history with an aggregate representation of the first notification and the second notification,
wherein displaying respective aggregated representations of notifications representing a plurality of notifications includes simultaneously displaying within the respective aggregated representations: only content from recently created ones of the plurality of notifications represented by the respective aggregate representations of the notifications and summary information including a count of the notifications represented by the respective aggregate representations;
detecting an input for displaying the notification history when the third notification meets a notification history display criterion; and
in response to detecting the input for displaying the notification history:
in accordance with a determination that a time difference between a time of occurrence of the first additional event corresponding to the first event type represented by the third notification and a time of occurrence of the second event corresponding to the first event type represented by the second notification does not satisfy a timing criterion, displaying a notification history having an aggregate representation of the third notification, the second notification, and the first notification; wherein displaying the aggregated representation of the third notification, the second notification, and the first notification includes simultaneously displaying content from only recently created notifications in the aggregated representations of the third notification, the second notification, and the first notification, and summary information including a count of notifications represented by the aggregated representations of the third notification, the second notification, and the first notification.
14. The computer readable storage medium of claim 13, wherein the one or more programs comprise instructions, which when executed by an electronic device with display generating means and one or more input devices, cause the electronic device to perform any of the methods of claims 2-10.
CN201811165505.8A 2018-05-07 2018-09-29 Apparatus, method and graphical user interface for proactively managing notifications Active CN110457093B (en)

Priority Applications (10)

Application Number Priority Date Filing Date Title
CN202310383825.5A CN116382834A (en) 2018-05-07 2018-09-29 Apparatus, method and graphical user interface for proactively managing notifications
CN202310382673.7A CN116382832A (en) 2018-05-07 2018-09-29 Apparatus, method and graphical user interface for proactively managing notifications
AU2019265367A AU2019265367B2 (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactive management of notifications
KR1020207034739A KR102447347B1 (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactive management of notifications
KR1020227032607A KR102573857B1 (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactive management of notifications
JP2020557940A JP7139450B2 (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactively managing notifications
EP19718891.5A EP3791244A1 (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactive management of notifications
KR1020237029431A KR20230131287A (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactive management of notifications
PCT/US2019/026349 WO2019217019A1 (en) 2018-05-07 2019-04-08 Devices, methods, and graphical user interfaces for proactive management of notifications
JP2022142215A JP7427057B2 (en) 2018-05-07 2022-09-07 Devices, methods, and graphical user interfaces for proactively managing notifications

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862668183P 2018-05-07 2018-05-07
US62/668,183 2018-05-07
DKPA201870335 2018-06-11
DKPA201870334A DK201870334A1 (en) 2018-05-07 2018-06-11 Devices, methods, and graphical user interfaces for proactive management of notifications
DKPA201870335A DK201870335A1 (en) 2018-05-07 2018-06-11 Devices, methods, and graphical user interfaces for proactive management of notifications
DKPA201870334 2018-06-11

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN202310383825.5A Division CN116382834A (en) 2018-05-07 2018-09-29 Apparatus, method and graphical user interface for proactively managing notifications
CN202310382673.7A Division CN116382832A (en) 2018-05-07 2018-09-29 Apparatus, method and graphical user interface for proactively managing notifications

Publications (2)

Publication Number Publication Date
CN110457093A CN110457093A (en) 2019-11-15
CN110457093B true CN110457093B (en) 2023-06-27

Family

ID=68480535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811165505.8A Active CN110457093B (en) 2018-05-07 2018-09-29 Apparatus, method and graphical user interface for proactively managing notifications

Country Status (1)

Country Link
CN (1) CN110457093B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918055A (en) * 2021-09-14 2022-01-11 维沃移动通信有限公司 Message processing method and device and electronic equipment
CN116048710B (en) * 2023-04-03 2023-09-29 荣耀终端有限公司 Application identifier display method, electronic device and readable storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4860505B2 (en) * 2007-02-27 2012-01-25 Necインフロンティア株式会社 Information processing apparatus, clock correction processing method, clock correction processing program, and program recording medium
CN103297939A (en) * 2012-02-29 2013-09-11 Nec比葛露 Push delivery apparatus, mobile terminal, and push delivery system
CN106250133A (en) * 2016-07-26 2016-12-21 北京奇虎科技有限公司 message display method, device and equipment
CN106462358A (en) * 2014-05-31 2017-02-22 苹果公司 Displaying interactive notifications on touch sensitive devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751500B2 (en) * 2012-06-26 2014-06-10 Google Inc. Notification classification and display
US9406103B1 (en) * 2012-09-26 2016-08-02 Amazon Technologies, Inc. Inline message alert
US10254911B2 (en) * 2015-03-08 2019-04-09 Apple Inc. Device configuration user interface
DK179360B1 (en) * 2015-06-07 2018-05-22 Apple Inc Devices, methods and graphical user interfaces for providing and interacting with notifications
US20170185275A1 (en) * 2015-12-28 2017-06-29 Sap Se Method and system for integrated application notifications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4860505B2 (en) * 2007-02-27 2012-01-25 Necインフロンティア株式会社 Information processing apparatus, clock correction processing method, clock correction processing program, and program recording medium
CN103297939A (en) * 2012-02-29 2013-09-11 Nec比葛露 Push delivery apparatus, mobile terminal, and push delivery system
CN106462358A (en) * 2014-05-31 2017-02-22 苹果公司 Displaying interactive notifications on touch sensitive devices
CN106250133A (en) * 2016-07-26 2016-12-21 北京奇虎科技有限公司 message display method, device and equipment

Also Published As

Publication number Publication date
CN110457093A (en) 2019-11-15

Similar Documents

Publication Publication Date Title
US11489803B2 (en) Devices, methods, and graphical user interfaces for proactive management of notifications
AU2020289876B2 (en) Tactile feedback for user interfaces
US20220179553A1 (en) Devices, Methods, and Graphical User Interfaces for Messaging
US10613634B2 (en) Devices and methods for controlling media presentation
US10095396B2 (en) Devices, methods, and graphical user interfaces for interacting with a control object while dragging another object
EP3469470B1 (en) Accelerated scrolling
EP3593230B1 (en) Tactile feedback for user interfaces
CN110457093B (en) Apparatus, method and graphical user interface for proactively managing notifications
US11875016B2 (en) Devices, methods, and graphical user interfaces for displaying media items shared from distinct applications
US11966578B2 (en) Devices and methods for integrating video with user interface navigation
JP2024054149A (en) DEVICE, METHOD, AND GRAPHICAL USER INTERFACE FOR PROACTIVELY MANAGING NOTIFICATIONS - Patent application
US20190369862A1 (en) Devices and Methods for Integrating Video with User Interface Navigation
CN117321560A (en) System and method for interacting with a user interface

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant