Training Content User Interface
Patent Information
- Application Number
- JP2023168815
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-09-21
- Filing Date
- 2023-09-28
- Publication Date
- 2025-03-13
- Estimated Expiration
- 2040-09-24
Smart Images

Figure 0007645330000001 
Figure 0007645330000002 
Figure 0007645330000003
Abstract
Description
[Technical Field]
[0001] TECHNICAL FIELD This disclosure relates generally to computer user interfaces, and more particularly to techniques for navigating and outputting training content. [Background technology]
[0002] As electronic devices such as smartphones become more widely used, their functionality grows beyond calling and text messaging, and providing efficient ways to use and implement various features on these electronic devices can be complex and time-consuming. Summary of the Invention
[0003] As used herein, training content refers to audio and / or video content that guides a user to perform physical activity. However, some techniques for navigating and outputting training content using electronic devices are generally cumbersome and inefficient. For example, some existing techniques use complex and time-consuming user interfaces that may involve multiple key presses or keystrokes. The existing techniques take more time than necessary, wasting the user's time and the device's energy. The latter problem is particularly significant on battery-operated devices. As another example, some existing techniques for coordinating the display of training content across multiple devices are not intuitive and therefore lead to incorrect inputs or require multiple key presses or keystrokes. The existing techniques take more time than necessary, wasting the user's time and the device's energy. The latter problem is particularly significant on battery-operated devices.
[0004] Thus, the present technology provides electronic devices with faster, more efficient methods and interfaces for navigating and outputting training content. Such methods and interfaces optionally complement or replace other methods for navigating and outputting training content. Such methods and interfaces reduce the cognitive burden on users and create a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and extend the time between battery charges.
[0005] In some embodiments, a method includes, in an electronic device having a display, displaying on the display a selectable user interface object for displaying training suggestions; detecting user input corresponding to the selectable user interface object for displaying the training suggestions; and displaying a user interface for displaying training suggestions including simultaneously displaying a plurality of selectable options including a first option that, when selected, causes the electronic device to initiate a process for displaying training suggestions that share a first common training parameter and a second option that, when selected, causes the electronic device to initiate a process for displaying training suggestions that share a second common training parameter; and a plurality of training suggestions, wherein the plurality of training suggestions are selected for display based on a training history of a user of the electronic device.
[0006] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display, the one or more programs including instructions for: displaying on the display selectable user interface objects for displaying training suggestions; detecting user input corresponding to the selectable user interface objects for displaying the training suggestions; and, in response to detecting the user input corresponding to the selectable user interface objects for displaying the training suggestions, displaying a user interface for displaying training suggestions including simultaneously displaying a plurality of selectable options including a first option that, when selected, causes the electronic device to initiate a process for displaying training suggestions that share a first common training parameter and a second option that, when selected, causes the electronic device to initiate a process for displaying training suggestions that share a second common training parameter; and a plurality of training suggestions, wherein the plurality of training suggestions are selected for display based on a training history of a user of the electronic device.
[0007] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display, the one or more programs including instructions for: displaying on the display selectable user interface objects for displaying training suggestions; detecting user input corresponding to the selectable user interface objects for displaying training suggestions; and displaying a user interface for displaying training suggestions including simultaneously displaying a plurality of selectable options, including a first option that, when selected, causes the electronic device to initiate a process for displaying training suggestions that share a first common training parameter and a second option that, when selected, causes the electronic device to initiate a process for displaying training suggestions that share a second common training parameter; and a plurality of training suggestions, wherein the plurality of training suggestions are selected for display based on a training history of a user of the electronic device.
[0008] In some embodiments, an electronic device comprises a display, one or more processors, and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising instructions for: displaying on the display selectable user interface objects for displaying training suggestions; detecting user input corresponding to the selectable user interface objects for displaying training suggestions; and, in response to detecting the user input corresponding to the selectable user interface objects for displaying training suggestions, displaying a user interface for displaying training suggestions comprising simultaneously displaying a plurality of selectable options including a first option that, when selected, causes the electronic device to initiate a process for displaying training suggestions sharing a first common training parameter and a second option that, when selected, causes the electronic device to initiate a process for displaying training suggestions sharing a second common training parameter; and a plurality of training suggestions, the plurality of training suggestions being selected for display based on a training history of a user of the electronic device.
[0009] In some embodiments, the electronic device includes a display; means for displaying on the display selectable user interface objects for displaying training suggestions; means for detecting user input corresponding to the selectable user interface objects for displaying training suggestions; and means for displaying a user interface for displaying training suggestions, the user interface including simultaneously displaying a plurality of selectable options, including a first option that, when selected, causes the electronic device to initiate a process for displaying training suggestions sharing a first common training parameter and a second option that, when selected, causes the electronic device to initiate a process for displaying training suggestions sharing a second common training parameter, and a plurality of training suggestions selected for display based on a training history of a user of the electronic device.
[0010] In some embodiments, a method includes, at an electronic device having a display, displaying on the display a selectable user interface object for initiating audio playback; detecting user input corresponding to selection of the selectable user interface object for initiating audio playback; and, in response to detecting user input corresponding to selection of the selectable user interface object for initiating audio playback, causing audio output device in communication with the electronic device to play audio associated with the workout; and recording physical activity indicators corresponding to the workout, the physical activity indicators being recorded by one or more sensors that monitor an activity level of a user of the electronic device.
[0011] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display, the one or more programs including instructions for: displaying on the display a selectable user interface object for initiating audio playback; detecting a user input corresponding to selecting the selectable user interface object for initiating audio playback; in response to detecting the user input corresponding to selecting the selectable user interface object for initiating audio playback, causing audio associated with the workout to be played on an audio output device in communication with the electronic device; and recording physical activity indicators corresponding to the workout, the physical activity indicators being recorded by one or more sensors that monitor an activity level of a user of the electronic device.
[0012] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display, the one or more programs including instructions for: displaying on the display a selectable user interface object for initiating audio playback; detecting a user input corresponding to selecting the selectable user interface object for initiating audio playback; in response to detecting the user input corresponding to selecting the selectable user interface object for initiating audio playback, causing audio associated with the workout to be played on an audio output device in communication with the electronic device; and recording physical activity indicators corresponding to the workout, the physical activity indicators being recorded by one or more sensors that monitor an activity level of a user of the electronic device.
[0013] In some embodiments, the electronic device comprises a display, one or more processors, and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying on the display a selectable user interface object for initiating audio playback; detecting a user input corresponding to selection of the selectable user interface object for initiating audio playback; and in response to detecting the user input corresponding to selection of the selectable user interface object for initiating audio playback, causing audio playback, at an audio output device in communication with the electronic device, of audio associated with the workout; and recording physical activity indicators corresponding to the workout, wherein the physical activity indicators are recorded by one or more sensors that monitor an activity level of a user of the electronic device.
[0014] In some embodiments, the electronic device includes a display; means for displaying on the display a selectable user interface object for initiating audio playback; means for detecting a user input corresponding to selection of the selectable user interface object for initiating audio playback; and means for, in response to detecting the user input corresponding to selection of the selectable user interface object for initiating audio playback, causing, at an audio output device in communication with the electronic device, audio associated with the workout and recording physical activity indicators corresponding to the workout, the physical activity indicators being recorded by one or more sensors monitoring an activity level of a user of the electronic device.
[0015] In some embodiments, a method includes: simultaneously displaying, on an electronic device via a display device, video content and one or more representations of physical activity indicators corresponding to a user, wherein the one or more representations of the physical activity indicators correspond to a predetermined length of time that includes a period before playback of the content, and the one or more representations of the physical activity indicators are overlaid on the video content; receiving activity data based on the user's physical activity during the display of the video content while continuing to display the video content; and, in response to receiving the activity data, updating the display of the one or more representations of the physical activity indicators based on the received activity data.
[0016] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device, the one or more programs including instructions for simultaneously displaying, via a display device, video content and one or more representations of physical activity indicators corresponding to a user, wherein the one or more representations of physical activity indicators correspond to a predetermined length of time that includes a period before playback of the content, and the one or more representations of physical activity indicators are overlaid on the video content; receiving activity data based on the user's physical activity during the display of the video content, while continuing to display the video content; and, in response to receiving the activity data, updating the display of the one or more representations of physical activity indicators based on the received activity data.
[0017] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device, the one or more programs including instructions for simultaneously displaying, via a display device, video content and one or more representations of physical activity indicators corresponding to a user, wherein the one or more representations of physical activity indicators correspond to a predetermined length of time that includes a period before playback of the content, and the one or more representations of physical activity indicators are overlaid on the video content; receiving activity data based on the user's physical activity during the display of the video content while continuing to display the video content; and, in response to receiving the activity data, updating the display of the one or more representations of physical activity indicators based on the received activity data.
[0018] In some embodiments, the electronic device comprises one or more processors and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for simultaneously displaying, via a display device, video content and one or more representations of physical activity indicators corresponding to a user, wherein the one or more representations of physical activity indicators correspond to a predetermined length of time that includes a period before playback of the content, and the one or more representations of physical activity indicators are overlaid on the video content; receiving activity data based on the user's physical activity during the display of the video content while continuing to display the video content; and, in response to receiving the activity data, updating the display of the one or more representations of physical activity indicators based on the received activity data.
[0019] In some embodiments, the electronic device includes means for simultaneously displaying, via a display device, video content and one or more representations of physical activity indicators corresponding to a user, wherein the one or more representations of the physical activity indicators correspond to a predetermined length of time that includes a period before playback of the content, and the one or more representations of the physical activity indicators are overlaid on the video content; and means for receiving, while continuing to display the video content, activity data based on the user's physical activity during the display of the video content, and for updating the display of the one or more representations of the physical activity indicators based on the received activity data in response to receiving the activity data.
[0020] In some embodiments, a method includes simultaneously displaying, on the electronic device, via a display device, video content and a training intensity representation, the training intensity representation having visual characteristics based on a comparison between a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content and a physical activity indicator for a group of users based on the physical activity of the group of users who participated in training while watching the video content corresponding to the first playback position of the video content; receiving activity data corresponding to the physical activity indicator for the user after the video advances from the first playback position to a second playback position; and in response to receiving the activity data, displaying, via the display device, a training intensity representation with visual characteristics of the training intensity representation that have changed based on the received activity data and based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the second playback position of the video content and the physical activity indicator for the group of users corresponding to the second playback position of the video content.
[0021] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device, the one or more programs including instructions for: simultaneously displaying, via a display device, video content and a training intensity representation, the training intensity representation having visual characteristics based on a comparison between a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content and a physical activity indicator for a group of users based on the physical activity of the group of users who participated in training while watching the video content corresponding to the first playback position of the video content; receiving activity data corresponding to the user's physical activity indicator after the video advances from the first playback position to a second playback position; and in response to receiving the activity data, displaying, via the display device, the training intensity representation with visual characteristics of the training intensity representation that have changed based on the received activity data and based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the second playback position of the video content and the physical activity indicator for the group of users corresponding to the second playback position of the video content.
[0022] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device, the one or more programs including instructions for: simultaneously displaying, via a display device, video content and a training intensity representation, the training intensity representation having visual characteristics based on a comparison between a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content and a physical activity indicator for a group of users based on the physical activity of the group of users who participated in training while watching the video content corresponding to the first playback position of the video content; receiving activity data corresponding to the user's physical activity indicator after the video advances from the first playback position to a second playback position; and in response to receiving the activity data, displaying, via the display device, the training intensity representation with visual characteristics of the training intensity representation that have changed based on the received activity data and based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the second playback position of the video content and the physical activity indicator for the group of users corresponding to the second playback position of the video content.
[0023] In some embodiments, the electronic device comprises one or more processors and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: simultaneously displaying, via a display device, video content and a training intensity representation, the training intensity representation having visual characteristics based on a comparison between a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content and a physical activity indicator for a group of users based on the physical activity of the group of users who participated in training while watching the video content corresponding to the first playback position of the video content; receiving activity data corresponding to the physical activity indicator for the user after the video advances from the first playback position to a second playback position; and in response to receiving the activity data, displaying, via the display device, a training intensity representation with visual characteristics of the training intensity representation that have changed based on the received activity data and based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the second playback position of the video content and the physical activity indicator for the group of users corresponding to the second playback position of the video content.
[0024] In some embodiments, the electronic device includes means for simultaneously displaying, via a display device, the video content and a training intensity representation, the training intensity representation having visual characteristics based on a comparison between a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content and a physical activity indicator for a group of users based on the physical activity of the group of users who participated in training while watching the video content corresponding to the first playback position of the video content; means for receiving activity data corresponding to the user's physical activity indicator after the video advances from the first playback position to a second playback position; and means for, in response to receiving the activity data, displaying, via the display device, the training intensity representation with visual characteristics of the training intensity representation that have changed based on the received activity data and based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the second playback position of the video content and the physical activity indicator for the group of users corresponding to the second playback position of the video content.
[0025] In some embodiments, a method includes: displaying, on a display of the electronic device, a user interface corresponding to video content, the user interface including a first selectable user interface object for enabling display of an activity session user interface associated with the video content on a display device communicating with the first external device; detecting a first sequence of one or more user inputs including a selection of the first selectable user interface object; and in response to detecting the first sequence of one or more user inputs including the selection of the first selectable user interface object, causing a display device communicating with the first external device to display a first graphical user interface associated with the activity session; and while the display device is displaying the first graphical user interface associated with the activity session, a display device communicating with the second external device displays a second graphical user interface associated with initiation of the activity session and different from the first graphical user interface, wherein a selection input directed to a portion of the second graphical user interface causes the display device communicating with the first external device to display the activity session user interface associated with the video content.
[0026] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display, the one or more programs including: displaying, on a display of the electronic device, a user interface corresponding to video content, the user interface including a first selectable user interface object for enabling display of an activity session user interface associated with the video content on a display device in communication with a first external device, the electronic device being in communication with the first external device and a second external device; detecting a first sequence of one or more user inputs including selection of the first selectable user interface object; The method includes instructions for: in response to detecting a first sequence of one or more user inputs including a selection of an interface object, causing a display device in communication with the first external device to display a first graphical user interface associated with the activity session; and while the display device is displaying the first graphical user interface associated with the activity session, a display device in communication with a second external device displays a second graphical user interface associated with the start of the activity session and different from the first graphical user interface, wherein a selection input directed to a portion of the second graphical user interface causes the display device in communication with the first external device to display an activity session user interface associated with the video content.
[0027] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having a display, the one or more programs including: displaying, on a display of the electronic device, a user interface corresponding to video content, the user interface including a first selectable user interface object for enabling display of an activity session user interface associated with the video content on a display device in communication with a first external device, the electronic device being in communication with the first external device and a second external device; detecting a first sequence of one or more user inputs including selection of the first selectable user interface object; In response to detecting a first sequence of one or more user inputs including a selection of an interface object, causing a display device in communication with the first external device to display a first graphical user interface associated with the activity session; and while the display device is displaying the first graphical user interface associated with the activity session, a display device in communication with the second external device displays a second graphical user interface associated with the start of the activity session and different from the first graphical user interface, wherein a selection input directed to a portion of the second graphical user interface causes the display device in communication with the first external device to display an activity session user interface associated with the video content.
[0028] In some embodiments, an electronic device comprises a display, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: displaying, on a display of the electronic device, a user interface corresponding to video content, the user interface including a first selectable user interface object for enabling display of an activity session user interface associated with the video content on a display device in communication with a first external device, wherein the electronic device is in communication with the first external device and a second external device; detecting a first sequence of one or more user inputs including selection of the first selectable user interface object; The method includes instructions for: in response to detecting a first sequence of one or more user inputs including a selection of an interface object, causing a display device in communication with the first external device to display a first graphical user interface associated with the activity session; and while the display device displays the first graphical user interface associated with the activity session, a display device in communication with the second external device displays a second graphical user interface associated with the start of the activity session and different from the first graphical user interface, wherein a selection input directed to a portion of the second graphical user interface causes the display device in communication with the first external device to display an activity session user interface associated with the video content.
[0029] In some embodiments, the electronic device includes: a display; and means for displaying, on the display of the electronic device, a user interface corresponding to the video content, the user interface including a first selectable user interface object for enabling display of an activity session user interface associated with the video content on a display device in communication with a first external device, the electronic device being in communication with the first external device and a second external device; means for detecting a first sequence of one or more user inputs including a selection of the first selectable user interface object; and means for causing the display device in communication with the first external device to display a first graphical user interface associated with the activity session in response to detecting the first sequence of one or more user inputs including a selection of the first selectable user interface object; and means for, while the display device is displaying the first graphical user interface associated with the activity session, the display device in communication with the second external device displays a second graphical user interface associated with initiation of the activity session and different from the first graphical user interface, wherein a selection input directed to a portion of the second graphical user interface causes the electronic device in communication with the first external device to display the activity session user interface associated with the video content.
[0030] In some embodiments, a method includes, in a computer system in communication with a display generation component and one or more input devices, causing a user interface to be displayed via the display generation component, the user interface including a plurality of training suggestions displayed in a first region of the user interface and one or more filtering options for filtering the training suggestions displayed simultaneously with the plurality of training suggestions; detecting a first user input via the one or more input devices directed to a first filtering option of the one or more filtering options; and displaying at least a portion of the plurality of training suggestions in the first region of the user interface in accordance with a determination that the first user input directed to the first filtering option is maintained for at least a predetermined period of time. and ceasing to display a first region of the user interface such that the first region of the user interface includes a first subset of training suggestions from the plurality of training suggestions associated with the first filtering option and does not include training suggestions not associated with the first filtering option; detecting, while the first subset of training suggestions is displayed in the first region of the user interface, a second user input via one or more input devices corresponding to navigation to a first training suggestion of the first subset of training suggestions; and, in response to detecting the second user input, displaying, via a display generating component, a visual indication that the input is directed to the first training suggestion while the display of the first subset of training suggestions is maintained in the first region of the user interface.
[0031] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs causing, via the display generation component, to display a user interface, the user interface including a plurality of training suggestions displayed in a first region of the user interface and one or more filtering options for filtering the training suggestions, displayed concurrently with the plurality of training suggestions; detecting, via the one or more input devices, a first user input directed to a first filtering option of the one or more filtering options; and updating the user interface in accordance with a determination that the first user input directed to the first filtering option has been maintained for at least a predetermined period of time. The method includes instructions for: ceasing displaying at least a portion of the plurality of training suggestions in the first region such that the first region of the user interface includes a first subset of training suggestions from the plurality of training suggestions associated with the first filtering option and does not include training suggestions not associated with the first filtering option; detecting, while the first subset of training suggestions is displayed in the first region of the user interface, a second user input, via one or more input devices, corresponding to navigation to a first training suggestion of the first subset of training suggestions; and, in response to detecting the second user input, causing, via the display generation component, a visual indication that the input is directed to the first training suggestion while the display of the first subset of training suggestions is maintained in the first region of the user interface.
[0032] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs causing, via the display generation component, to display a user interface, the user interface including a plurality of training suggestions displayed in a first area of the user interface and one or more filtering options for filtering the training suggestions, displayed simultaneously with the plurality of training suggestions; detecting, via the one or more input devices, a first user input directed to a first filtering option of the one or more filtering options; and updating the first filtering option of the user interface in accordance with a determination that the first user input directed to the first filtering option has been maintained for at least a predetermined period of time. ceasing to display at least a portion of the plurality of training suggestions within the first region of the user interface such that the first region of the user interface includes a first subset of training suggestions from the plurality of training suggestions associated with the first filtering option and does not include training suggestions not associated with the first filtering option; detecting, while the first subset of training suggestions is displayed within the first region of the user interface, a second user input via one or more input devices corresponding to navigation to a first training suggestion of the first subset of training suggestions; and, in response to detecting the second user input, causing, via the display generation component, to display a visual indication that the input is directed to the first training suggestion while the display of the first subset of training suggestions is maintained within the first region of the user interface.
[0033] In some embodiments, a computer system includes one or more processors in communication with a display generation component and one or more input devices; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs causing a user interface to be displayed via the display generation component, the user interface including a plurality of training suggestions displayed in a first region of the user interface and one or more filtering options for filtering the training suggestions displayed simultaneously with the plurality of training suggestions; detecting a first user input via the one or more input devices directed to a first filtering option of the one or more filtering options; and upon determining that the first user input directed to the first filtering option has been maintained for at least a predetermined period of time, ceasing to display at least a portion of the plurality of training suggestions in the first region of the user interface so that the first region of the user interface includes a first subset of training suggestions from the plurality of training suggestions associated with the first filtering option and does not include training suggestions not associated with the first filtering option; detecting, while the first subset of training suggestions is displayed in the first region of the user interface, a second user input, via one or more input devices, corresponding to navigation to a first training suggestion of the first subset of training suggestions; and, in response to detecting the second user input, causing, via a display generation component, a visual indication that the input is directed to the first training suggestion while the display of the first subset of training suggestions is maintained in the first region of the user interface.
[0034] In some embodiments, the computer system includes means for causing, via a display generation component, to display a user interface, the user interface including a plurality of training suggestions displayed in a first region of the user interface and one or more filtering options for filtering the training suggestions displayed simultaneously with the plurality of training suggestions; means for detecting, via one or more input devices, a first user input directed to a first filtering option of the one or more filtering options; and means for ceasing to display at least a portion of the plurality of training suggestions in the first region of the user interface in accordance with a determination that the first user input directed to the first filtering option has been maintained for at least a predetermined period of time. means for causing a first region of the user interface to include a first subset of training suggestions from a plurality of training suggestions associated with a first filtering option and to exclude training suggestions not associated with the first filtering option; means for detecting, via one or more input devices, a second user input corresponding to navigation to a first training suggestion of the first subset of training suggestions while the first subset of training suggestions is displayed in the first region of the user interface; and means for, in response to detecting the second user input, causing, via a display generation component, to display a visual indication that the input is directed to the first training suggestion while the display of the first subset of training suggestions is maintained in the first region of the user interface.
[0035] In some embodiments, a method includes, in a computer system in communication with a display generation component and one or more input devices, detecting, via the one or more input devices, a user input corresponding to a request to display a training user interface; in response to the request to display the training user interface, initiating, via the display generation component, a process for displaying a first training suggestion user interface in accordance with a determination that the computer system satisfies a proximity criterion for a single external electronic device of a first type, wherein the first training suggestion user interface displays one or more training suggestions associated with the single external electronic device; and in accordance with a determination that the computer system satisfies the proximity criterion for at least a first external electronic device of the first type and a second external electronic device of the first type, initiating, via the display generation component, a disambiguating user interface different from the first training suggestion user interface. and initiating a process for displaying a disambiguating user interface, wherein the disambiguating user interface includes a first selectable user interface object that, when selected, initiates a process for displaying a second workout suggestion user interface associated with the first external electronic device, the second workout suggestion user interface displaying one or more workout suggestions associated with the first external electronic device, and a second selectable user interface object that, when selected, initiates a process for displaying a third workout suggestion user interface different from the second workout suggestion user interface and associated with the second external electronic device, the third workout suggestion user interface displaying one or more workout suggestions associated with the second external electronic device.
[0036] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs including: detecting, via the one or more input devices, a user input corresponding to a request to display a training user interface; and in response to the request to display the training user interface, initiating, via the display generation component, a process for displaying a first training suggestion user interface in accordance with a determination that a proximity criterion for a single external electronic device of a first type is met, the first training suggestion user interface displaying one or more training suggestions associated with the single external electronic device; and in accordance with a determination that a proximity criterion for at least a first external electronic device of the first type and a second external electronic device of the first type is met, initiating, via the display generation component, a process for displaying a first training suggestion user interface in accordance with a determination that a proximity criterion for at least a first external electronic device of the first type and a second external electronic device of the first type is met. and initiating a process for displaying a disambiguating user interface that is different from the workout suggestion user interface associated with the first external electronic device, the disambiguating user interface including: a first selectable user interface object that, when selected, initiates a process for displaying a second workout suggestion user interface associated with the first external electronic device, the second workout suggestion user interface displaying one or more workout suggestions associated with the first external electronic device; and a second selectable user interface object that, when selected, initiates a process for displaying a third workout suggestion user interface that is different from the second workout suggestion user interface and associated with the second external electronic device, the third workout suggestion user interface displaying one or more workout suggestions associated with the second external electronic device.
[0037] In some embodiments, a temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs detecting a user input via the one or more input devices corresponding to a request to display a training user interface; and in response to the request to display the training user interface, initiating a process for displaying a first training suggestion user interface via the display generation component in accordance with a determination that a proximity criterion for a single external electronic device of a first type is met, the first training suggestion user interface displaying one or more training suggestions associated with the single external electronic device; and in accordance with a determination that a proximity criterion for at least a first external electronic device of the first type and a second external electronic device of the first type is met, initiating a process for displaying the first training suggestion user interface via the display generation component. and initiating a process for displaying a disambiguating user interface that is different from the workout suggestion user interface associated with the first external electronic device, the disambiguating user interface including: a first selectable user interface object that, when selected, initiates a process for displaying a second workout suggestion user interface associated with the first external electronic device, the second workout suggestion user interface displaying one or more workout suggestions associated with the first external electronic device; and a second selectable user interface object that, when selected, initiates a process for displaying a third workout suggestion user interface that is different from the second workout suggestion user interface and associated with the second external electronic device, the third workout suggestion user interface displaying one or more workout suggestions associated with the second external electronic device.
[0038] In some embodiments, a computer system includes one or more processors in communication with a display generation component and one or more input devices; and a memory storing one or more programs configured to be executed by the one or more processors, wherein the one or more programs detect a user input corresponding to a request to display a training user interface via the one or more input devices; and in response to the request to display the training user interface, the computer system initiates a process to display a first training suggestion user interface via the display generation component in accordance with a determination that a proximity criterion for a single external electronic device of a first type is met, wherein the first training suggestion user interface displays one or more training suggestions associated with the single external electronic device; and the computer system determines whether the proximity criterion for at least a first external electronic device of the first type and a second external electronic device of the first type is met. initiating, via the display generation component, a process for displaying a disambiguating user interface that is different from the first workout suggestion user interface in accordance with determining that the condition is satisfied, the disambiguating user interface including: a first selectable user interface object that, when selected, initiates a process for displaying a second workout suggestion user interface associated with the first external electronic device, the second workout suggestion user interface displaying one or more workout suggestions associated with the first external electronic device; and a second selectable user interface object that, when selected, initiates a process for displaying a third workout suggestion user interface that is different from the second workout suggestion user interface and associated with the second external electronic device, the third workout suggestion user interface displaying one or more workout suggestions associated with the second external electronic device.This includes instructions to:
[0039] In some embodiments, the computer system includes means for detecting, via one or more input devices, a user input corresponding to a request to display a training user interface; and means for, in response to the request to display the training user interface, the computer system, in accordance with a determination that a proximity criterion for a single external electronic device of a first type is met, initiating, via a display generation component, a process for displaying a first training suggestion user interface, the first training suggestion user interface displaying one or more training suggestions associated with the single external electronic device; and means for the computer system, in accordance with a determination that a proximity criterion for at least a first external electronic device of the first type and a second external electronic device of the first type is met, initiating, via the display generation component, a process for displaying a disambiguation user interface that is different from the first training suggestion user interface. the disambiguating user interface includes: a first selectable user interface object that, when selected, initiates a process for displaying a second workout suggestion user interface associated with the first external electronic device, the second workout suggestion user interface displaying one or more workout suggestions associated with the first external electronic device; and a second selectable user interface object that, when selected, initiates a process for displaying a third workout suggestion user interface different from the second workout suggestion user interface and associated with the second external electronic device, the third workout suggestion user interface displaying one or more workout suggestions associated with the second external electronic device.
[0040] Executable instructions to perform these functions are optionally contained in a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors. Executable instructions to perform these functions are optionally contained in a transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.
[0041] This provides devices with faster, more efficient methods and interfaces for navigating and outputting training content, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces can complement or replace other methods for navigating and outputting training content. [Brief explanation of the drawings]
[0042] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout:
[0043] [Figure 1A] FIG. 1 is a block diagram illustrating a portable multifunction device having a touch-sensitive display in accordance with some embodiments.
[0044] [Figure 1B] FIG. 2 is a block diagram illustrating exemplary components for event processing in accordance with some embodiments.
[0045] [Figure 2] 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments.
[0046] [Figure 3] FIG. 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments.
[0047] [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments.
[0048] [Figure 4B] 1 illustrates an exemplary user interface of a multifunction device having a touch-sensitive surface separate from a display in accordance with some embodiments.
[0049] [Figure 5A] 1 illustrates a personal electronic device according to some embodiments.
[0050] [Figure 5B] FIG. 1 is a block diagram illustrating a personal electronic device according to some embodiments.
[0051] [Figure 6A] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6B] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6C] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6D] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6E] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6F]1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6G] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6H] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6I] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6J] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6K] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6L] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6M] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6N] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6O] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6P]1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6Q] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6R] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6S] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6T] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6U] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6V] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6W] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6W1] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6X] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6Y]1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6Z] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6AA] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6BB] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6CC] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6DD] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments. [Figure 6EE] 1 illustrates an exemplary user interface for displaying personalized workout suggestions based on completed workouts, according to some embodiments.
[0052] [Figure 7] FIG. 1 is a flow diagram illustrating an example process for displaying personalized workout suggestions based on completed workouts, according to some embodiments.
[0053] [Figure 8A] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8B] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8C]1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8C1] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8D] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8D1] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8E] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8E1] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8E2] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8E3] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8E4] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8F] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8G] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8H] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8I]1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8J] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8K] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8L] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8M] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8M1] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8M2] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8M3] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8N] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8O] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8P] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8Q] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8Q1]1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8Q2] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8R] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments. [Figure 8S] 1 illustrates an exemplary user interface for initiating an audio-based workout according to some embodiments.
[0054] [Figure 9] FIG. 1 is a flow diagram illustrating an example process for initiating audio-based training, according to some embodiments.
[0055] [Figure 10A] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10B] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10C] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10D] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10E] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10F] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10G] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10G1]1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10G2] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10G3] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10H] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10I] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10J] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10K] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10L] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10M] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10M1] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10M2] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10M3] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10M4] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10N] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10O] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10P] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10Q] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10R] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10S] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10T] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10U] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 10V] 1 illustrates an exemplary user interface for displaying training information according to some embodiments.
[0056] [Figure 11] FIG. 1 is a flow diagram illustrating an example process for displaying training information according to some embodiments.
[0057] [Figure 12A] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12B] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12C] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12D]1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12E] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12F] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12G] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12H] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12I] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12J] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12K] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12L] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12M] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12N] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 12O] 1 illustrates an exemplary user interface for displaying training information according to some embodiments.
[0058] [Figure 13] FIG. 1 is a flow diagram illustrating an example process for displaying training information according to some embodiments.
[0059] [Figure 14A] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14B] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14C] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14D] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14E] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14F] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14G] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14H] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14I] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14J] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14K] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14L]1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14M] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14N] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14O] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14P] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14Q] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments. [Figure 14R] 1 illustrates an exemplary user interface for coordinating the display of training content across multiple devices, according to some embodiments.
[0060] [Figure 15] FIG. 1 is a flow diagram illustrating an example process for coordinating the display of training content across multiple devices, according to some embodiments.
[0061] [Figure 16A] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16B] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16C] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16D]1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16E] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16F] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16G] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16H] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16I] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16J] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16K] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16L] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16M] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16N] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16O] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16P] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16Q] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 16R] 1 illustrates an exemplary user interface for displaying training information according to some embodiments.
[0062] [Figure 17A] FIG. 1 is a flow diagram illustrating an example process for displaying training information according to some embodiments. [Figure 17B] FIG. 1 is a flow diagram illustrating an example process for displaying training information according to some embodiments.
[0063] [Figure 18A] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18B] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18C] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18D] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18E] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18F] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18G] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18H] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18I] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18J]1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18K] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18L] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18M] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18N] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18O] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18P] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18Q] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18R] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18S] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18T] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18U] 1 illustrates an exemplary user interface for displaying training information according to some embodiments. [Figure 18V] 1 illustrates an exemplary user interface for displaying training information according to some embodiments.
[0064] [Figure 19A]FIG. 1 is a flow diagram illustrating an example process for illustrating a method for displaying training information, according to some embodiments. [Figure 19B] FIG. 1 is a flow diagram illustrating an example process for illustrating a method for displaying training information, according to some embodiments. [Figure 19C] FIG. 1 is a flow diagram illustrating an example process for illustrating a method for displaying training information, according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0065] The following description describes example methods, parameters, etc. However, it should be recognized that such description is not intended as a limitation on the scope of the present disclosure, but is instead provided as a description of example embodiments.
[0066] There is a need for electronic devices that provide efficient methods and interfaces for navigating and outputting training content. For example, a user would benefit from being shown specific training suggestions that correspond to completed workouts. As another example, a user would benefit from being shown specific training indicators while the training content is being output. Such techniques can reduce the cognitive burden on a user navigating and outputting training content, thereby increasing productivity. Furthermore, such techniques can reduce processor and battery power that would otherwise be wasted on redundant user input.
[0067] 1A-1B, 2, 3, 4A-4B, and 5A-5B provide a description of an example device for performing techniques for managing event notifications. FIGS. 6A-6EE illustrate an example user interface for displaying personalized workout suggestions based on completed workouts. FIG. 7 is a flow diagram illustrating an example process for displaying personalized workout suggestions based on completed workouts, according to some embodiments. The user interfaces of FIGS. 6A-6EE are used to illustrate processes described below, including the process of FIG. 7. FIGS. 8A-8S illustrate an example user interface for initiating an audio-based workout. FIG. 9 is a flow diagram illustrating an example process for initiating an audio-based workout, according to some embodiments. The user interfaces of FIGS. 8A-8S are used to illustrate processes described below, including the process of FIG. 9. FIGS. 10A-10V illustrate an example user interface for displaying workout information. FIG. 11 is a flow diagram illustrating an example process for displaying workout information, according to some embodiments. The user interfaces of FIGS. 10A-10V are used to illustrate processes described below, including the process of FIG. 11. 12A-12O illustrate exemplary user interfaces for displaying training information. FIG. 13 is a flow diagram illustrating an exemplary process for displaying training information, according to some embodiments. The user interfaces of FIGS. 12A-12O are used to illustrate processes described below, including the process of FIG. 13. FIGS. 14A-14R illustrate exemplary user interfaces for coordinating the display of training content across multiple devices. FIG. 15 is a flow diagram illustrating an exemplary process for coordinating the display of training content across multiple devices, according to some embodiments. The user interfaces of FIGS. 14A-14R are used to illustrate processes described below, including the process of FIG. 15. FIGS. 16A-16R illustrate exemplary user interfaces for displaying training information. FIGS. 17A-17B are flow diagrams illustrating an exemplary process for displaying training information, according to some embodiments.The user interfaces of Figures 16A-16R are used to illustrate processes described below, including the processes of Figures 17A-17B. Figures 18A-18V illustrate exemplary user interfaces for displaying workout information. Figures 19A-19C are flow diagrams illustrating exemplary processes for illustrating a method for displaying workout information, according to some embodiments. The user interfaces of Figures 18A-18V are used to illustrate processes described below, including the processes of Figures 19A-19C.
[0068] In the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first touch can be referred to as a second touch, and similarly, a second touch can be referred to as a first touch, without departing from the scope of the various embodiments described. Although a first touch and a second touch are both touches, they are not the same touch.
[0069] The terminology used in the description of the various embodiments set forth herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments set forth 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 dictates otherwise. Also, as used herein, the term "and / or" should be understood to refer to and include any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0070] The term "if" is interpreted, optionally, depending on the context, to mean "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are interpreted, optionally, depending on the context, to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]."
[0071] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Optionally, other portable electronic devices, such as a laptop or tablet computer having a touch-sensitive surface (e.g., a touchscreen display and / or a touchpad), are also used. It should also be understood 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 touchscreen display and / or a touchpad). In some embodiments, the electronic device is a computer system that communicates (e.g., via wireless communication over wired communication) with a display generation component. The display generation component is configured to provide a visual output, such as a display via a CRT display, a display via an LED display, or a display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. As used herein, "displaying" content includes displaying content (e.g., video data rendered or decoded by display controller 156) by transmitting data (e.g., image data or video data) over a wired or wireless connection to an integrated or external display generation component to visually generate the content.
[0072] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface. However, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.
[0073] The device typically supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.
[0074] Various applications running on the device optionally use at least one common physical user-interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within each application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications with user interfaces that are intuitive and transparent to the user.
[0075] Attention now turns to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating portable multifunction device 100 having touch-sensitive display system 112 according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a "touch screen" and may also be known or referred to as a "touch-sensitive display system." Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 that generate tactile output on device 100 (e.g., generate tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.
[0076] As used herein 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 a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure for the force or pressure of the contact is used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is stated in units corresponding to the surrogate measure). In some implementations, the surrogate measure for the 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). Using contact intensity as an attribute of user input allows a user to access additional device functionality that may not otherwise be accessible by a user on devices of reduced size that have limited area for displaying affordances (e.g., on a touch-sensitive display) and / or receiving user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons).
[0077] As used herein and in the claims, the term “tactile output” refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive surface of a user (e.g., the fingers, palm, or other part of the user's hand), the tactile output produced by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a “downclick” or “upclick” of a physical actuator button. In some cases, a user feels a tactile sensation such as a “downclick” or “upclick” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's action. As another example, movement of a touch-sensitive surface is optionally interpreted or perceived by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. While such user interpretation of touch depends on the user's personal sensory perception, there are many sensory perceptions of touch that are common to the majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "upclick," "downclick," "roughness"), unless otherwise specified, the generated tactile output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.
[0078] It should be understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of its components. The various components shown in Figure 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.
[0079] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.
[0080] Peripheral interface 118 may be used to couple input and output peripherals of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs and / or instruction sets stored in memory 102 to perform various functions and process data for device 100. 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.
[0081] RF (radio frequency) circuitry 108 transmits and receives RF signals, also called electromagnetic signals. RF circuitry 108 converts electrical signals to or 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, etc. RF circuitry 108 optionally communicates wirelessly with networks, such as the Internet, also known as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices. RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by short-range radios. Wireless communication optionally includes, but is not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), Long Term Evolution (LTE), and other technologies.Wireless technology includes, but is not limited to, technology such as: LTE evolution (LTE), near field communications (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth®, Bluetooth Low Energy (BTLE®), Wireless Fidelity (Wi-Fi®) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX®, protocols for email (e.g., Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol), and the like. The present invention may use any of a number of communication standards, protocols, and technologies, including the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (XMPP), the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.
[0082] Audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuit 110 receives audio data from peripherals interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves audible to humans. Audio circuit 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuit 110 converts the electrical signals into audio data and transmits the audio data to peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to memory 102 and / or RF circuit 108 by peripherals interface 118. In some embodiments, audio circuit 110 also includes a headset jack (e.g., 212 in FIG. 2 ). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral, such as an output-only headphone or a headset with both an output (e.g., single or double ear headphones) and an input (e.g., a microphone).
[0083] I / O subsystem 106 couples input / output peripherals on device 100, such as touchscreen 112 and other input control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, light sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive / send electrical signals from / to other input 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, etc. In some alternative embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2 ) optionally include up and down buttons for volume control of speaker 111 and / or microphone 113. The one or more buttons optionally include push buttons (e.g., 206 in FIG. 2 ). In some embodiments, the electronic device is a computer system in communication with one or more input devices (e.g., via wireless communication over wired communication). In some embodiments, the one or more input devices include a touch-sensitive surface (e.g., a trackpad as part of a touch-sensitive display). In some embodiments, the one or more input devices include one or more camera sensors (e.g., one or more light sensors 164 and / or one or more depth camera sensors 175), such as for tracking user gestures (e.g., hand gestures) as input. In some embodiments, the one or more input devices are integrated with the computer system. In some embodiments, the one or more input devices are separate from the computer system.
[0084] As described in U.S. Patent Application No. 11 / 322,549, filed December 23, 2005, "Unlocking a Device by Performing Gestures on an Unlock Image," U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety, a quick press of the push button optionally disengages a lock on the touchscreen 112 or, optionally, initiates a process to unlock the device using a gesture on the touchscreen. A longer press of a push button (e.g., 206) optionally turns power on or off to the device 100. The functionality of one or more of the buttons is optionally customizable by the user. The touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.
[0085] Touch-sensitive display 112 provides an input and output interface between the device and a user. Display controller 156 receives and / or sends electrical signals to touchscreen 112. Touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user-interface objects.
[0086] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detects contacts (and any movement or cessation of contact) on touchscreen 112 and translates the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.
[0087] Touchscreen 112 optionally uses LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touchscreen 112 and display controller 156 optionally detect contact and any movement or disruption thereof using any of a number of now known or later developed touch sensing technologies, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with touchscreen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.
[0088] The touch-sensitive display in some embodiments of touchscreen 112 is optionally similar to the multi-touch-sensing touchpad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Publication No. 2002 / 0015024A1, each of which is incorporated by reference herein in its entirety. However, touchscreen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.
[0089] The touch-sensitive display in some embodiments of touch screen 112 may be any of the touch-sensitive displays described in U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller," (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen," (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices," (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices," and (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices." No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which are incorporated herein by reference in their entirety.
[0090] Touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user optionally contacts touchscreen 112 using any suitable object or accessory, such as a stylus, finger, or the like. In some embodiments, the user interface is designed to primarily handle finger-based contacts and gestures, which may not be as precise as stylus-based input due to the larger contact area of a finger on the touchscreen. In some embodiments, the device translates the coarse finger input into precise pointer / cursor positions or commands to perform the action desired by the user.
[0091] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface that is separate from touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.
[0092] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with the generation, management, and distribution of electrical power within a portable device.
[0093] Device 100 also optionally includes one or more light sensors 164. FIG. 1A shows a light sensor coupled to light sensor controller 158 in I / O subsystem 106. Light sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. Light sensor 164 optionally works in conjunction with imaging module 143 (also called a camera module) to capture still images or video. In some embodiments, the light sensor is located on the back of device 100, as opposed to touchscreen display 112, which is on the front of the device, so that the touchscreen display is effectively used as a viewfinder for capturing still and / or video images. In some embodiments, the light sensor is located on the front of the device so that an image of the user is obtained, optionally for video conferencing, and the user sees other video conference participants on the touchscreen display. In some embodiments, the position of the light sensor 164 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that a single light sensor 164 is used for both video conferencing and capturing still and / or video images, along with the touchscreen display.
[0094] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment and creates a three-dimensional model of an object (e.g., a face) in a scene from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also referred to as a camera module), depth camera sensor 175 is optionally used to determine a depth map of various portions of an image captured by imaging module 143. In some embodiments, a depth camera sensor is located on the front of device 100 so that images of the user with depth information are optionally obtained for videoconferences and to capture selfie images with depth map data while the user views other videoconference participants on a touchscreen display. In some embodiments, depth camera sensor 175 is located on the back of the device or on both the back and front of device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that the depth camera sensor 175 is used for both video conferencing and capturing still and / or video images, along with a touchscreen display.
[0095] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor 165 receives contact intensity information (e.g., pressure information, or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to the touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.
[0096] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 optionally functions as described in U.S. patent application Ser. Nos. 11 / 241,839, "Proximity Detector In Handheld Device," 11 / 240,788, "Proximity Detector In Handheld Device," 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output," 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices," and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are incorporated herein by reference in their entireties. In some embodiments, the proximity sensor turns off and disables touchscreen 112 when the multifunction device is placed near the user's ear (e.g., when the user is on a phone call).
[0097] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows tactile output generators 167 coupled to haptic feedback controller 161 in I / O subsystem 106. Tactile output generator 167 optionally includes one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). Contact intensity sensor 165 receives tactile feedback generation instructions from haptic feedback module 133 and generates a tactile output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one tactile output generator is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and generates a tactile output, optionally by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.
[0098] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 within I / O subsystem 106. Accelerometer 168 optionally functions as described in U.S. Patent Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated herein by reference in their entireties. In some embodiments, information is displayed on the touchscreen display in portrait or landscape view based on analysis of data received from the one or more accelerometers. In addition to the accelerometer 168, the device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information about the location and orientation (e.g., vertical or horizontal) of the device 100.
[0099] In some embodiments, software components stored in memory 102 include operating system 126, communications module (or instruction set) 128, touch / motion module (or instruction set) 130, graphics module (or instruction set) 132, text input module (or instruction set) 134, Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction set) 136. Additionally, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores device / global internal state 157, as shown in FIGS. 1A and 3. Device / global internal state 157 includes one or more of: active application state indicating which applications, if any, are currently active; display state indicating which applications, views, or other information occupy various regions of touchscreen display 112; sensor state including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's position and / or orientation.
[0100] Operating system 126 (e.g., Darwin®, RTXC®, LINUX®, UNIX®, OS X®, iOS®, WINDOWS®, or an embedded operating system such as VxWorks®) includes various software components and / or drivers that control and manage common system tasks (e.g., memory management, storage device control, power management, etc.) and facilitate communication between various hardware and software components.
[0101] Communications module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE®, etc.) is adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.
[0102] Contact / motion module 130, optionally in conjunction with display controller 156, detects contact with touch screen 112 and other touch-sensing devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact occurs (e.g., detecting a finger-down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is contact movement and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether the contact has stopped (e.g., detecting a finger-up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact, as represented by the series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact. These actions are optionally applied to a single contact (e.g., a single finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on the touchpad.
[0103] In some embodiments, contact / motion module 130 uses a set of one or more intensity thresholds for determining whether an action has been performed by a user (e.g., for determining whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator, but can be adjusted without changing the physical hardware of device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of pre-defined thresholds without changing the trackpad or touchscreen display hardware. Additionally, in some implementations, a device user is provided with software settings to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or multiple intensity thresholds at once via a system-level click “intensity” parameter).
[0104] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting particular contact patterns. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same location (or substantially the same location) as the finger down event (e.g., the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by detecting a finger up (lift off) event.
[0105] Graphics module 132 includes various known software components that render and display graphics on touchscreen 112 or other display, including components that vary the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphic" includes any object that can be displayed to a user, including, but not limited to, characters, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.
[0106] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including coordinate data and other graphic characteristic data, as needed, from an application or the like, and then generates screen image data to output to display controller 156.
[0107] The tactile feedback module 133 includes various software components for generating instructions used by the tactile output generator(s) 167 to generate tactile outputs at one or more locations on the device 100 in response to user interaction with the device 100.
[0108] Text input module 134 is optionally a component of graphics module 132 and 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).
[0109] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for use in location-based dialing, to the camera 143 as photo / video metadata, and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map / navigation widgets).
[0110] Application 136 optionally includes the following modules (or sets of instructions), or a subset or superset thereof: • a contacts module 137 (sometimes called an address book or contact list); ●Telephone module 138, ●Videoconferencing module 139, ● an email client module 140; ● Instant messaging (IM) module 141, ●Training support module 142, a camera module 143 for still and / or video images, ● Image management module 144; ●Video player module, ●Music player module, ● Browser module 147, ●Calendar module 148, • A widget module 149 optionally including one or more of a weather widget 149-1, a stock price widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, and a user-created widget 149-6; a widget creation module 150 for creating user-created widgets 149-6; ● Search module 151, A video and music player module 152 that integrates a video player module and a music player module; ● Memo module 153, Map module 154, and / or ●Online video module 155.
[0111] 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 duplication.
[0112] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contacts module 137 is used to manage an address book or contact list (e.g., stored in memory 102 or in the application internal state 192 of contacts module 137 in memory 370), optionally including adding name(s) to the address book, deleting name(s) from the address book, associating phone number(s), email address(es), physical address(es), or other information with names, associating images with names, categorizing and sorting names, providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, videoconferencing module 139, email 140, or IM 141, etc.
[0113] Telephone module 138, in conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to enter character sequences corresponding to telephone numbers, access one or more telephone numbers in contacts module 137, modify entered telephone numbers, dial respective telephone numbers, conduct conversations, and terminate or hang up when the conversation is completed. As previously mentioned, wireless communication optionally uses any of a number of communication standards, protocols, and technologies.
[0114] In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, light sensor 164, light sensor controller 158, touch / motion module 130, graphics module 132, text input module 134, contacts module 137, and telephone module 138, videoconferencing module 139 includes executable instructions for initiating, conducting, and terminating a videoconference between a user and one or more other participants in accordance with user commands.
[0115] In cooperation with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, email client module 140 contains executable instructions for composing, sending, receiving, and managing emails in response to user commands. In cooperation with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.
[0116] In cooperation with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for entering character sequences corresponding to instant messages, modifying previously entered characters, sending respective instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephony-based instant messaging, or XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
[0117] In conjunction with the RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module, the training support module 142 includes executable instructions for creating workouts (e.g., with time, distance, and / or calorie burn goals), communicating with training sensors (sports devices), receiving training sensor data, calibrating sensors used to monitor workouts, selecting and playing music for workouts, and displaying, storing, and transmitting workout data.
[0118] In conjunction with touch screen 112, display controller 156, light sensor(s) 164, light sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, camera module 143 contains executable instructions for capturing and storing still images or video (including video streams) in memory 102, modifying characteristics of the still images or video, or deleting the still images or video from memory 102.
[0119] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143, image management module 144 contains executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing still and / or video images.
[0120] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, browser module 147 contains executable instructions for browsing the Internet according to user commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0121] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, calendar module 148 contains executable instructions for creating, displaying, modifying, and storing calendars and data associated with calendars (e.g., calendar items, to-do lists, etc.) in accordance with user instructions.
[0122] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, widget module 149 is optionally a mini-application downloaded and used by a user (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5), or a mini-application created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).
[0123] In conjunction with RF circuitry 108, touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, widget creator module 150 is optionally used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).
[0124] In cooperation with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, search module 151 includes executable instructions for searching for text, music, sound, images, video, and / or other files in memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user commands.
[0125] In conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 contains executable instructions that enable a user to download and play pre-recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing videos (e.g., on touchscreen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).
[0126] In conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the notes module 153 contains executable instructions for creating and managing notes, to-do lists, and the like according to user commands.
[0127] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 is used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other points of interest at or near a particular location, and other location-based data), optionally in accordance with user instructions.
[0128] In cooperation with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, online video module 155 contains instructions that enable a user to access, browse for, receive (e.g., by streaming and / or downloading), and play (e.g., on the touchscreen or on an external display connected via external port 124) particular online videos, send emails with links to particular online videos, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140. Additional description of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the contents of which are incorporated herein by reference in their entireties.
[0129] The above-identified modules and applications each correspond to a set of executable instructions that perform one or more of the functions previously described and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. For example, a video player module is optionally combined with a music player module into a single module (e.g., video and music player module 152 of FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.
[0130] In some embodiments, device 100 is a device in which operation of a predetermined set of functions on the device is performed solely via a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.
[0131] The set of predefined functions performed only through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, home menu, or root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.
[0132] 1B is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes event sorter 170 (e.g., within operating system 126) and a respective application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).
[0133] Event sorter 170 receives the event information and determines which application 136-1 to deliver the event information to and application view 191 of application 136-1. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view(s) that are displayed on touch-sensitive display 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) are currently active, and application internal state 192 is used by event sorter 170 to determine which application(s) are currently active, and application internal state 192 is used by event sorter 170 to determine which application(s) to deliver the event information to.
[0134] In some embodiments, application internal state 192 includes additional information such as one or more of resume information to be used when application 136-1 resumes execution, user interface state information indicating or ready to display information being displayed by application 136-1, state cues that allow the user to return to a previous state or view of application 136-1, and redo / undo cues of previous actions taken by the user.
[0135] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about a sub-event (e.g., a user touch on touch-sensitive display 112 as part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). Information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.
[0136] In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receipt of an input above a predetermined noise threshold and / or for more than a predetermined duration).
[0137] In some embodiments, event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .
[0138] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 displays more than one view. A view consists of the controls and other elements that a user can see on the display.
[0139] Another aspect of a user interface associated with an application is the 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 programmatic level within the application's programmatic or view hierarchy. For example, the lowest-level view in which the touch is detected is optionally referred to as the hit view, and the set of events that are recognized as suitable inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.
[0140] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized hierarchically, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest-level view in which an initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the hit view.
[0141] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive the particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive the particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-event are actively participating views, and therefore all actively participating views should receive the particular sequence of sub-events. In other embodiments, even if the touch sub-event is completely confined to the area associated with one particular view, views higher in the hierarchy still remain actively participating views.
[0142] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by each event receiver 182 in an event queue.
[0143] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In still other embodiments, event sorter 170 is a stand-alone module or is part of another module stored in memory 102, such as contact / motion module 130.
[0144] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each containing instructions for processing touch events that occur within a respective view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, each application view 191 includes multiple event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such as a user interface kit or a higher-level object from which application 136-1 inherits methods and other attributes. In some embodiments, each event handler 190 includes one or more of data updater 176, object updater 177, GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in each application view 191.
[0145] Each event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes an event receiver 182 and an event comparator 184. In some embodiments, event recognizer 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (optionally including sub-event delivery instructions).
[0146] Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, e.g., a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as the position of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also called the device's attitude).
[0147] The event comparator 184 compares the event information with predefined event or sub-event definitions and determines the event or sub-event, or determines or updates the state of the event or sub-event, based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a predefined sequence of sub-events), such as Event 1 (187-1) and Event 2 (187-2). In some embodiments, sub-events within Event 1 (187) include, for example, touch start, touch end, touch movement, touch cancellation, and multiple touches. In one example, the definition for Event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch on a displayed object relative to a predetermined stage (touch start), a first lift-off (touch end) relative to the predetermined stage, a second touch on a displayed object relative to the predetermined stage (touch start), and a second lift-off (touch end) relative to the predetermined stage. In another example, a definition of event 2 (187-2) is a drag on a displayed object. Drag includes, for example, a touch (or contact) on the displayed object to a predetermined stage, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information about one or more associated event handlers 190.
[0148] In some embodiments, event definition 187 includes a definition of the event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, when a touch is detected on touch-sensitive display 112 in an application view in which three user interface objects are displayed on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.
[0149] In some embodiments, each event 187 definition also includes a delay action that delays delivery of the event information until it is determined whether the sequence of sub-events corresponds to the event type of the event recognizer.
[0150] If 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-disabled, event-failed, or event-ended state and thereafter ignores the next sub-event of the touch-based gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
[0151] In some embodiments, each event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or how event recognizers are allowed to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in the view or programmatic hierarchy.
[0152] In some embodiments, each event recognizer 180 activates an event handler 190 associated with an event when one or more specific sub-events of the event are recognized. In some embodiments, each event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and postponing sending) sub-events to the respective hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with the flag captures the flag and performs a predetermined process.
[0153] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs predetermined processing.
[0154] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by a video player module. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.
[0155] In some embodiments, event handler(s) 190 include or have access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0156] It should be understood that the foregoing description of event processing of a user's touch on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 using input devices, not all of which are initiated on a touchscreen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple keyboard presses or holds, pen stylus input, device movement, verbal commands, detected eye movement, biometric input, and / or any combination thereof, are optionally utilized as inputs corresponding to sub-events that define the recognized event.
[0157] FIG. 2 illustrates portable multifunction device 100 having touchscreen 112, according to some embodiments. The touchscreen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as other embodiments described below, a user may select one or more of the graphics by performing a gesture on the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upward and / or downward), and / or rolling of a finger in contact with device 100 (right to left, left to right, upward and / or downward). In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon optionally does not select the corresponding application.
[0158] Device 100 also optionally includes one or more physical buttons, such as a "home" button or menu button 204. As previously mentioned, menu button 204 is optionally used to navigate to any application 136, optionally within a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on touchscreen 112.
[0159] In some embodiments, device 100 includes touchscreen 112, menu button 204, pushbuttons 206 for powering the device on / off and locking the device, volume control buttons 208, subscriber identity module (SIM) card slot 210, headset jack 212, and external docking / charging port 124. Pushbutton 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined time has elapsed, and / or to unlock the device or initiate the unlocking process. In alternative embodiments, device 100 also accepts verbal input via microphone 113 for activating or deactivating some functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on touchscreen 112 and / or one or more tactile output generators 167 for generating a tactile output for a user of device 100.
[0160] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interface 330, including display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350, a touchpad 355, a tactile output generator 357 (e.g., similar to tactile output generator 167 described above with reference to FIG. 1A ) that generates tactile output on device 300, and sensors 359 (e.g., light, acceleration, proximity, touch-sensing, and / or contact intensity sensors similar to contact intensity sensor 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(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A). Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, word processing module 384, website creation module 386, disc authoring module 388, and / or spreadsheet module 390, whereas memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store these modules.
[0161] Each of the above-identified elements of FIG. 3 is optionally stored in one or more of the memory devices mentioned above. Each of the above-identified modules corresponds to an instruction set that performs the function described above. The above-identified modules or programs (e.g., instruction sets) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. In some embodiments, memory 370 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 370 optionally stores additional modules and data structures not described above.
[0162] Attention is now directed to user interface embodiments, optionally implemented on portable multifunction device 100, for example.
[0163] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100 according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: signal strength indicator(s) 402 for wireless communication(s), such as cellular and Wi-Fi® signals; ●Time 404, ●Bluetooth (registered trademark) indicator 405, ● Battery status indicator 406, Tray 408 with icons of frequently used applications, such as: An icon 416 for the phone module 138, labeled "Phone," optionally including an indicator 414 of the number of missed calls or voicemail messages; icon 418 of the email client module 140, labeled "Mail," optionally including an indicator 410 of the number of unread emails; ○ An icon 420 for the browser module 147, labeled "Browser"; and ○ An icon 422 of the video and music player module 152, also called the iPod (trademark of Apple Inc.) module 152, labeled "iPod"; and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages"; ○ Icon 426 of the calendar module 148, labeled "Calendar" ○ Icon 428 of the image management module 144, labeled "Photos" ○ An icon 430 of the camera module 143, labeled "camera"; ○ Icon 432 of the online video module 155, labeled "Online Video"; Icon 434 of Stock Price Widget 149-2, labeled "Stock Price" ○ Icon 436 of the map module 154, labeled "Map" ○ Icon 438 of Weather widget 149-1, labeled "Weather" ○ Icon 440 of alarm clock widget 149-4, labeled "Clock" ○ Icon 442 of Training Support Module 142, labeled "Training Support"; ○ An icon 444 of the Notes module 153 labeled "Notes," and A settings application or module icon 446 labeled "Settings" that provides access to settings for the device 100 and its various applications 136.
[0164] 4A are merely exemplary. For example, icon 422 for video and music player module 152 may be labeled "Music" or "Music Player," although other labels are optionally used for the various application icons. In some embodiments, the label for each application icon includes the name of the application corresponding to the respective application icon. In some embodiments, the label for a particular application icon is different from the name of the application corresponding to that particular application icon.
[0165] 4B shows an example user interface on a device (e.g., device 300 of FIG. 3 ) that has touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3 ) that is separate from display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) that detect the intensity of a contact on touch-sensitive surface 451, and / or one or more tactile output generators 357 that generate a tactile output for a user of device 300.
[0166] Although some of the following examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display shown in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B ) has a primary axis (e.g., 452 in FIG. 4B ) that corresponds to a primary axis (e.g., 453 in FIG. 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B ) at locations that correspond to respective locations on the display (e.g., in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). In this way, user input (e.g., contacts 460 and 462 and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are optionally used for the other user interfaces described herein.
[0167] Additionally, while the following examples are given primarily with reference to finger input (e.g., finger contacts, finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a contact) followed by movement of a cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced with a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detecting a contact and subsequently ceasing contact detection). Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or a mouse and finger contacts are optionally used simultaneously.
[0168] FIG. 5A shows an exemplary personal electronic device 500. Device 500 includes a main body 502. In some embodiments, device 500 can include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter referred to as touchscreen 504. Alternatively, or in addition to touchscreen 504, device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touchscreen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of contact (e.g., touch) being applied. The one or more intensity sensors of touchscreen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. A user interface of device 500 can respond to a touch based on the intensity of the touch, meaning that touches of different intensities can invoke different user interface actions on device 500.
[0169] Exemplary techniques for detecting and processing touch intensity can be found, for example, in International Patent Application No. PCT / US2013 / 040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application," published as International Patent Application No. WO / 2013 / 169849, and related applications, including International Patent Application No. PCT / US2013 / 069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships," published as International Patent Application No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.
[0170] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, can be physical mechanisms. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, can allow device 500 to be attached to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow a user to wear device 500.
[0171] FIG. 5B illustrates an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 operably coupling an I / O section 514 to one or more computer processors 516 and memory 518. I / O section 514 can be connected to a display 504, which can have touch-sensing components 522 and, optionally, an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, I / O section 514 can be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near-field communication (NFC), cellular, and / or other wireless communication techniques. Device 500 can include input mechanisms 506 and / or 508. Input mechanism 506 is optionally a rotatable input device or a depressible and rotatable input device, for example. In some examples, input mechanism 508 is optionally a button.
[0172] In some examples, the input mechanism 508 is optionally a microphone. The personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which may be operably connected to the I / O section 514.
[0173] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, may cause the computer processors to perform the techniques described below, including processes 700, 900, 1100, 1300, and 1500 (FIGS. 7, 9, 11, 13, and 15). A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage medium is a transient computer-readable storage medium. In some embodiments, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic, optical, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and resident solid-state memory such as flash, solid-state drives, etc. Personal electronic device 500 is not limited to the components and configuration of Figure 5B and may include other or additional components in multiple configurations.
[0174] As used herein, the term "affordance" refers to a user-interactive graphical user interface object that is optionally displayed on the display screen of device 100, 300, and / or 500 (FIGS. 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each optionally constitute an affordance.
[0175] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations involving a cursor or other location marker, the cursor acts as the “focus selector,” such that when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 of FIG. 3 or touch-sensitive surface 451 of FIG. 4B) while the cursor is positioned over 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 involving a touchscreen display (e.g., touch-sensitive display system 112 of FIG. 1A or touchscreen 112 of FIG. 4A) that enables direct interaction with user interface elements on the touchscreen display, a detected contact on the touchscreen acts as the “focus selector,” such that when input (e.g., a press input by contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface without a corresponding cursor movement or contact movement on the touchscreen display (e.g., by using the tab key or arrow keys to move focus from one button to another), and in these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the particular form the focus selector takes, the focus selector is generally a user interface element (or contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface with which the user intends to interact).For example, while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of a focus selector (e.g., a cursor, touch, or selection box) over a corresponding button indicates that the user intends to activate that corresponding button (and not other user interface elements shown on the device's display).
[0176] As used herein and in the claims, the term "characteristic intensity" of a contact refers to a characteristic of that 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 predetermined number of intensity samples, i.e., a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detecting the contact, before detecting lift-off of the contact, before or after detecting the start of contact movement, before detecting the end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of the maximum intensity of the contact, the mean intensity of the contact, the average intensity of the contact, the top 10 percentile intensity of the contact, half the maximum intensity of the contact, 90 percent of the maximum intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action is performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact having a characteristic intensity that does not exceed the first threshold results in a first action, a contact having a characteristic intensity that exceeds the first intensity threshold but not the second intensity threshold results in a second action, and a contact having a characteristic intensity that exceeds the second threshold results in a third action. In some embodiments, the comparison between the characteristic intensity and the one or more thresholds is not used to determine whether the first action or the second action should be performed, but rather is used to determine whether one or more actions should be performed (e.g., whether to perform the respective action or to refrain from performing the respective action).
[0177] In some embodiments, a portion of the gesture is identified for purposes of determining the characteristic intensity. For example, the touch-sensitive surface optionally receives successive swipe contacts that transition from a start location to an end location, at which point the intensity of the contacts increases. In this example, the characteristic intensity of the contacts at the end location is optionally based on only a portion of the successive swipe contacts (e.g., only the portion of the swipe contacts at the end location) rather than the entire swipe contact. In some embodiments, a smoothing algorithm is optionally applied to the intensity of the swipe contacts before determining the characteristic intensity of the contacts. For example, the smoothing algorithm optionally includes one or more of an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some situations, these smoothing algorithms eliminate small increases or decreases in the intensity of the swipe contacts for purposes of determining the characteristic intensity.
[0178] The intensity of the contact on the touch-sensitive surface is optionally characterized with respect to one or more intensity thresholds, such as a contact-detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device performs an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device performs an action different from an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, when a contact is detected having a characteristic intensity below the light press intensity threshold (e.g., above a nominal contact-detection intensity threshold below which the contact is not detected), the device moves the focus selector in accordance with the movement of the contact on the touch-sensitive surface without performing an action associated with the light press intensity threshold or the deep press intensity threshold. In general, unless otherwise specified, these intensity thresholds are consistent across the various sets of user interface diagrams.
[0179] An increase in the characteristic intensity of a contact from an intensity below the light pressure intensity threshold to an intensity between the light pressure intensity threshold and the deep pressure intensity threshold may be referred to as inputting a "light press." An increase in the characteristic intensity of a contact from an intensity below the deep pressure intensity threshold to an intensity above the deep pressure intensity threshold may be referred to as inputting a "deep press." An increase in the characteristic intensity of a contact from an intensity below the contact-detection intensity threshold to an intensity between the contact-detection intensity threshold and the light pressure intensity threshold may be referred to as detecting a contact on the touch surface. A decrease in the characteristic intensity of a contact from an intensity above the contact-detection intensity threshold to an intensity below the contact-detection intensity threshold may be referred to as detecting a lift-off of the contact from the touch surface. In some embodiments, the contact-detection intensity threshold is zero. In some embodiments, the contact-detection intensity threshold is greater than zero.
[0180] In some embodiments described herein, one or more actions are performed in response to detecting a gesture including the respective pressure input or in response to detecting the respective pressure input performed by the respective contact(s), where the respective pressure inputs are detected based at least in part on detecting an increase in intensity of the contact(s) above a pressure input intensity threshold. In some embodiments, the respective actions are performed in response to detecting an increase in intensity of the respective contact(s) above a pressure input intensity threshold (e.g., a “downstroke” of the respective pressure input). In some embodiments, the pressure input includes an increase in intensity of the respective contact(s) above a pressure input intensity threshold followed by a decrease in intensity of the contact(s) below the pressure input intensity threshold, and the respective actions are performed in response to detecting a subsequent decrease in intensity of the respective contact(s) below the pressure input threshold (e.g., an “upstroke” of the respective pressure input).
[0181] In some embodiments, the device employs intensity hysteresis to avoid accidental input, sometimes referred to as “jitter,” and the device defines or selects a hysteresis intensity threshold that has a predetermined relationship to the pressure input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units below the pressure input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable percentage of the pressure input intensity threshold). Thus, in some embodiments, the pressure input includes an increase in the intensity of each contact above the pressure input intensity threshold followed by a decrease in the intensity of the contact below the hysteresis intensity threshold corresponding to the pressure input intensity threshold, and a respective action is performed in response to detecting a subsequent decrease in the intensity of each contact below the hysteresis intensity threshold (e.g., an “upstroke” of each pressure input). Similarly, in some embodiments, a pressure input is detected only when the device detects an increase in the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the pressure input intensity threshold, and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and a respective action is performed in response to detecting the pressure input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, as the case may be).
[0182] For ease of explanation, descriptions of operations performed in response to a pressure input associated with a pressure input intensity threshold, or a gesture including a pressure input, are optionally triggered in response to detecting any of: an increase in the intensity of the contact above the pressure input intensity threshold; an increase in the intensity of the contact from an intensity below a hysteresis intensity threshold to an intensity above the pressure input intensity threshold; a decrease in the intensity of the contact below the pressure input intensity threshold; and / or a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the pressure input intensity threshold. Further, in examples where an operation is described as being performed in response to detecting a decrease in the intensity of the contact below a pressure input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to and lower than the pressure input intensity threshold.
[0183] Attention is now directed to embodiments of user interfaces (“UIs”) and related processes implemented on an electronic device such as portable multifunction device 100, device 300, or device 500.
[0184] 6A-6EE show exemplary user interfaces for displaying personalized workout suggestions based on completed workouts, according to some embodiments. In some embodiments, the personalized workout suggestions represent workout content (e.g., audio and / or video) that prompts a user to perform a particular type of physical activity for a predetermined period of time. The user interfaces in these figures are used to illustrate processes described below, including the process of FIG. 7.
[0185] 6A shows electronic device 600, which is a smartphone, with display 602. Display 602 of electronic device 600 includes a touch-sensitive surface that enables electronic device 600 to detect user gestures (e.g., taps, swipes, and / or drags). In some embodiments, electronic device 600 includes one or more features of electronic devices 100, 300, and / or 500.
[0186] In FIG. 6A, while displaying home screen 604, electronic device 600 detects input 606B at a location corresponding to application icon 606A.
[0187] 6B, in response to detecting input 606B, electronic device 600 launches an activity (e.g., physical activity) application. Launching the activity application includes replacing the display of home screen 604 with a history user interface 608 of the activity application. Additionally, electronic device 600 displays multiple options near the bottom of display 602, including option 610A. While displaying history user interface 608, electronic device 600 detects input 610B at a location corresponding to option 610A.
[0188] In FIG. 6C , in response to detecting input 610B, electronic device 600 replaces the display of history user interface 608 with workout user interface 612. Workout user interface 612 includes options 614A-614D for filtering workouts based on exercise type (e.g., treadmill, cycling, rolling, core, high-intensity interval training (HIIT), yoga, etc.). Additionally, workout user interface 612 includes multiple workout suggestions for the user, where the workout suggestions are based on one or more workouts completed by the user. For example, workout suggestion 616A represents workouts that share one or more characteristics with a subset of workouts completed by the user (e.g., most recently completed workouts). Here, the user most recently completed a core workout with a different trainer, Emma. In response, electronic device 600 provides workout suggestion 616A representing workouts that share characteristics with the user's most recently completed workouts. Specifically, the workouts represented by workout suggestion 616A and the user's most recently completed workouts have the same exercise type (core). Examples of shared characteristics include exercise type, duration, music, and trainer. Workout suggestion 616C, similar to workout suggestion 616A, shares one or more characteristics with a subset of the user's completed workouts. In contrast to workout suggestion 616A, which is based on the most recently completed workout, workout suggestion 616C is based on one or more workouts completed over a predetermined time period (e.g., over the past 30, 60, or 90 days). For example, the user completed 10 workouts in the past 30 days, and the most common exercise type of the 10 workouts was HIIT. As a result, electronic device 600 displays workout suggestion 616C, which represents a workout of the HIIT exercise type (e.g., the most common exercise type among the user's completed workouts over a predetermined time period). While displaying workout user interface 612, electronic device 600 detects input 618 at a location corresponding to workout suggestion 616A.
[0189] 6D, in response to detecting input 618, electronic device 600 replaces the display of workout user interface 612 with detailed user interface 620. Detailed user interface 620 includes characteristics of the workout represented by workout suggestion 616A. For example, detailed user interface 620 includes exercise type 622A, trainer 622B, duration 622C, music 622D, required equipment 622E, and completion instructions 622F.
[0190] The detailed user interface 620 also includes an option 623A that may be selected by the user to play video content corresponding to the workout (e.g., a video showing the workout) and an option 623B that may be selected by the user to play a preview video corresponding to the workout. In some embodiments, the preview video differs from the video content corresponding to the workout. For example, the preview video may include a subset of the video content corresponding to the workout and may be shorter in duration than the video content corresponding to the workout.
[0191] The detailed user interface 620 also includes a music section 625 that identifies a music playlist containing one or more music tracks corresponding to a workout. For example, the music section 625 may identify a music playlist containing one or more music tracks to be played during a workout. The music section 625 includes an option 623C that the user can select to open the entire music playlist (e.g., all of the music tracks listed in the music section) in a separate music application. The music section 625 also includes options 623D, 623E that correspond to individual music tracks and are selectable by the user to open an individual music track in a separate music application (e.g., without opening other music tracks in the music playlist in the separate music application).
[0192] While displaying the detailed user interface 620, the electronic device 600 detects an input 624B at a location corresponding to option 624A.
[0193] 6E, in response to detecting input 624B, electronic device 600 replaces display of details user interface 620 with training user interface 612. While displaying details user interface 620, electronic device 600 detects input 626 involving a right-to-left movement in a location corresponding to training suggestion 616A.
[0194] 6F, in response to detecting input 626, electronic device 600 slides a portion of workout suggestion 616A off display 602 and slides workout suggestion 616B onto display 602. Additionally, electronic device 600 slides a portion of workout suggestion 616E onto display 602. In some embodiments, in response to detecting input 610B, electronic device 600 displays workout suggestion 616B in place of workout suggestion 616A (e.g., pursuant to a determination that the user has completed a workout that is part of a training program, or pursuant to a determination that the most recently completed workout is part of a training program (e.g., a predetermined sequence of workouts or a training series with multiple episodes)). For example, in contrast to FIG. 6C, electronic device 600 displays workout suggestion 616B (Episode 2: Treadmill) as the first personalized suggestion in place of workout suggestion 616A (Core with Amy). In some embodiments, electronic device 600 displays workout suggestion 616B (Episode 2: Treadmill) as the first personalized suggestion if the user has completed a workout that is part of a training program (Find Your Speed). Alternatively, as shown in FIG. 6C , electronic device 600 displays workout suggestion 616A as the first personalized suggestion if the user has not completed a workout that is part of a training program, in some embodiments. While displaying workout user interface 612, electronic device 600 detects input 628 at a location corresponding to workout suggestion 616B.
[0195] In FIG. 6G , in response to detecting input 628, electronic device 600 replaces the display of training user interface 612 with program user interface 630. Program user interface 630 includes a plurality of workout suggestions corresponding to a particular training program (e.g., find your speed). A training program consists of a plurality of workout content items ordered in a predetermined sequence. Following a determination that a workout of the training program is completed, electronic device 600 uses a boundary to visually highlight the workout suggestion corresponding to the next workout in the predetermined sequence of workouts of the training program. For example, electronic device 600 visually highlights workout suggestion 634 following a determination that the workout corresponding to workout suggestion 632A is completed. Suggestion 634 matches workout suggestion 632B and corresponds to the next workout in the sequence. Additionally, display 632AA indicates that the workout corresponding to workout suggestion 632A has been completed. Program user interface 630 also includes a user-selectable option 632BB to open and play a program introduction video. The program introduction video is separate and distinct from the workouts within the training program. In some embodiments, the program introduction video includes audio and / or visual clips (e.g., images or video clips) from some or all of the workouts in the training program. In some embodiments, selecting a particular workout suggestion 632A, 632B, 632C results in the display of a corresponding details user interface (similar to details user interface 620 of FIG. 6D ). In some embodiments, the details user interface for each workout includes a selectable option to play video content corresponding to the workout (e.g., play a video showing the workout) and a separate selectable option to play the program introduction video (e.g., similar to options 623A and 623B of FIG. 6D ).While displaying the program user interface 630, the electronic device 600 detects an input 624C at a location corresponding to option 624A.
[0196] 6H, in response to detecting input 624C, electronic device 600 replaces the display of program user interface 630 with training user interface 612. While displaying training user interface 612, electronic device 600 detects input 636 moving in an upward direction.
[0197] In FIG. 6I, in response to detecting input 636, electronic device 600 scrolls workout user interface 612. Scrolling workout user interface 612 includes sliding at least a portion of workout suggestions (e.g., 616A, 616B, and 616E) off display 602 (e.g., as shown in FIG. 6J). Scrolling workout user interface 612 includes changing workout suggestion 616B to occupy a smaller portion of display 602 compared to FIG. 6H. Scrolling workout user interface 612 includes sliding workout suggestions 616F-616I onto display 602. Workout suggestions 616F-616I represent workouts that have been recently available (e.g., for a predetermined amount of time (e.g., the past day, week, month)). Scrolling workout user interface 612 includes ceasing to display options 614A-614D). In some embodiments, the electronic device 600 maintains the display of options 614A-614D in response to detecting input 636. While displaying the training user interface 612, the electronic device 600 detects input 638 moving in an upward direction.
[0198] In FIG. 6J , in response to detecting input 638, electronic device 600 scrolls workout user interface 612. The scrolling of workout user interface 612 includes sliding workout suggestions 616J-616Q onto display 602. The workout suggestions 616J-616Q represent new workouts that the user has not completed. In some embodiments, the scrolling of workout user interface 612 includes displaying workouts complementary to the completed workout. In some embodiments, the workout complementary to the completed workout is a workout that balances the physical activity performed during the completed workout. For example, running requires physical activity that can shorten muscles. Accordingly, yoga is a complementary workout to running because yoga promotes muscle lengthening.
[0199] In some embodiments, the completed workout includes a workout that is not accessible through the workout user interface 612. For example, the electronic device 600 determines that the user has completed a running workout, and the running workout is not represented in the workout user interface 612. In some embodiments, in response to detecting the input 638, the electronic device 600 displays workout suggestions 616J based at least in part on a determination that the workout represented by the workout suggestions 616J is complementary to the completed workout (e.g., yoga is complementary to running). In some embodiments, the electronic device 600 displays a workout that does not share one or more characteristics with the completed workout. For example, the electronic device 600 determines that the user has completed a core exercise type workout. In some embodiments, in response to detecting input 638, electronic device 600 displays workout suggestion 616K based at least in part on a determination that the workout represented by workout suggestion 616K does not share one or more characteristics with the completed workout (e.g., a new trainer (e.g., Matt)) and / or shares one or more characteristics with the completed workout (e.g., the same exercise type (e.g., core)). Further, scrolling of workout user interface 612 includes sliding workout suggestions 616L-616Q across display 602. Workout suggestions 616L-616Q represent popular workouts frequently selected by a group of users. While displaying workout user interface 612, electronic device 600 detects input 640 moving in an upward direction.
[0200] 6K, in response to detecting input 640, electronic device 600 scrolls workout user interface 612. Scrolling workout user interface 612 includes sliding workout suggestions 616R-616U onto display 602. Workout suggestions 616R-616S represent audio content having durations corresponding to the length of time required to walk a predetermined distance (e.g., 1 mile, 2 miles, or 3 miles). Workout suggestions 616T-616U represent audio content corresponding to predetermined routes at or near one or more physical locations (e.g., a 5-kilometer route in Hackney). Further, scrolling workout user interface 612 includes displaying options 644A-644E for filtering workouts based on trainer. While displaying workout user interface 612, electronic device 600 detects input 642 moving in an upward direction.
[0201] In FIG. 6L , in response to detecting input 642, electronic device 600 scrolls through training user interface 612, resulting in the end of training user interface 612. Scrolling through training user interface 612 includes displaying a library of workouts previously saved by the user, including saved workouts 646A-646B. Training user interface 612 includes option 648A that, when selected, initiates the process of downloading the training content represented by saved workout 646A to electronic device 600. In addition, training user interface 612 includes indication 648B that the training content represented by saved workout 646B has already been downloaded to electronic device 600. Training user interface 612 also includes option 648C that, when selected, replaces the display of training user interface 612 with a different user interface displaying all workouts already downloaded to electronic device 600. While displaying training user interface 612, electronic device 600 detects input 650 at a location within a predetermined area near the top of display 602.
[0202] 6M, in response to detecting input 650, electronic device 600 scrolls to the top of training user interface 612, resulting in the display of options 614A-614D. While displaying training user interface 612, electronic device 600 detects input 652 at a location corresponding to option 614C.
[0203] 6N, in response to detecting input 652, electronic device 600 replaces display of workout user interface 612 with display of filter user interface 654. Filter user interface 654 includes filtered workout suggestions 660A-660D based on selected option 614C. Additionally, filter user interface 654 includes an indication 656 indicating a characteristic (e.g., rowing) that the filtered workout suggestions 660A-660D have in common. In the illustrated scenario, filtered workout suggestions 660A-660D all have a particular workout type (or training modality) in common (e.g., rowing). Filter user interface 654 includes a user-selectable option 660E to open and play a training modality introductory video. The training modality introductory video is separate and distinct from the workouts corresponding to the filtered workout suggestions 660A-660D. In some embodiments, the training modality introduction video may identify to the user any equipment required for the training modality (e.g., a rowing machine may be required for rowing training). While displaying the filter user interface 654, the electronic device 600 detects input 658B at a location corresponding to option 658A.
[0204] 6O , in response to detecting input 658B, electronic device 600 displays filter user interface 662 with additional options for filtering workouts (e.g., in addition to the exercise type currently filtered to rowing). For example, filter user interface 662 includes options 664A-664H for filtering workouts based on trainer, options 666A-666E for filtering workouts based on workout duration, and options 668A-668F for filtering workouts based on music genre. Electronic device 600 obscures (e.g., blurs) options 664A and 664H based at least in part on determining that the trainer represented by options 664A and 664H is not in the currently selected filter (e.g., neither Emma nor Joyce have any rowing workouts). While displaying filter user interface 662, electronic device 600 detects input 670 at a location corresponding to option 664E.
[0205] 6P, in response to detecting input 670, electronic device 600 visually highlights option 664E to indicate that option 664E has been selected. Additionally, in response to detecting input 670, electronic device 600 obscures (e.g., blurs) option 668A based, at least in part, on a determination that the genre of music represented by option 668A does not satisfy the currently selected filter (e.g., Joe does not have any workouts that use pop music). Similarly, in response to detecting input 670, electronic device 600 obscures (e.g., blurs) option 666E based, at least in part, on a determination that the duration represented by option 666E does not satisfy the currently selected filter (e.g., Joe does not have any workouts that are 40 minutes in duration). While displaying filter user interface 662, electronic device 600 detects input 672 at a location corresponding to option 664F.
[0206] 6Q, in response to detecting input 672, electronic device 600 visually highlights option 664F to indicate that option 664F has been selected. Additionally, in response to detecting input 670, electronic device 600 stops obscuring (e.g., obscuring) option 666E based at least in part on a determination that the duration represented by option 666E satisfies the currently selected filter (e.g., Gregg has at least one workout with a duration of 40 minutes). While displaying filter user interface 662, electronic device 600 detects input 674A at a location corresponding to option 666D, input 674B at a location corresponding to option 668D, and input 674C at a location corresponding to option 668F.
[0207] 6R, in response to detecting a set of inputs (e.g., 674A-674C), electronic device 600 visually highlights options 666D, 668D, and 668F to indicate that the respective options have been selected. While displaying filter user interface 662, electronic device 600 detects input 676 with movement in a downward direction.
[0208] 6S, in response to detecting input 676, electronic device 600 ceases displaying filter user interface 662 and displays filter user interface 654 with updates to the filtered workout suggestions based on the selection detected in filter user interface 662. Due to the filter selection, filter user interface 654 no longer includes filtered workout suggestions 660A-660C. Instead, filter user interface 654 has updated to include filtered workout suggestions 660D-660F. In addition, filter user interface 654 includes filter expressions 678A-678E, each corresponding to the filter option selected in filter user interface 662. While displaying filter user interface 654, electronic device 600 detects input 680 at a location corresponding to filter expression 678C.
[0209] 6T, in response to detecting input 680, electronic device 600 stops displaying filter representation 678C when the 30-minute filter is removed from the filter selection. Additionally, in response to detecting input 680, electronic device 600 updates the filtered workout suggestions based on the updated filter selection. With the updated filter selection, filter user interface 654 includes filtered workout suggestions 660G, which may be included with their 20-minute duration by removing the 30-minute filter.
[0210] In some embodiments, instead of detecting selection of option 614C for filtering based on exercise type, electronic device 600 detects selection of an option for filtering based on trainer. In some embodiments, electronic device 600 detects input at a location corresponding to option 644A of FIG. 6L. In FIG. 6U, in response to detecting the input, electronic device 600 displays filter user interface 682. Filter user interface 682 includes filtered workout suggestions 684A-684D based on the selected option 644A. Additionally, filter user interface 682 includes an indication 683 indicating a characteristic (e.g., Amy) that the filtered workout suggestions 684-684D have in common. While displaying filter user interface 682, electronic device 600 detects input 658C at a location corresponding to option 658A.
[0211] 6V, in response to detecting input 658C, electronic device 600 displays filter user interface 686 with additional options for filtering workouts (e.g., in addition to the trainers currently filtered for Amy). For example, filter user interface 686 includes options 688A-688F for filtering workouts based on exercise (e.g., workout) type, options 666A-666E for filtering workouts based on workout duration, and options 668A-668F for filtering workouts based on music genre.
[0212] FIG. 6W shows another example of a training user interface 612A that is similar to training user interface 612. Features described with reference to training user interface 612A can be incorporated into training user interface 612, and features described with reference to training user interface 612 can be incorporated into training user interface 612A. Identical features of training user interface 612A are labeled with the same reference numbers used in training user interface 612. Like training user interface 612, training user interface 612A includes options 614A-614D for filtering workouts based on exercise type, as well as workout suggestions 616C-616D selected based on the user's past workouts. Training user interface 612A includes a weekly rounding option 615A. Selecting the weekly rounding option 615A triggers playback of the weekly rounding video corresponding to the current week. For example, in some embodiments, a new weekly rounding video can be posted each week (e.g., each Sunday), and the weekly rounding video can introduce new workouts added to the workout application for that week. In FIG. 6W, the current date is August 16, 2020, and selecting the weekly rounding option 615A causes playback of the weekly rounding video corresponding to that week. In FIG. 6W1, the current date is August 23, 2020, and a new weekly rounding option 615B corresponding to a different weekly rounding video (e.g., the weekly rounding video corresponding to the week of August 23, 2020) is presented in the workout user interface 612A. In FIG. 6W1, while displaying the workout user interface 612A, the electronic device 600 detects an input 617 moved in an upward direction.
[0213] In FIG. 6X, in response to detecting input 617, electronic device 600 scrolls training user interface 612A. The scrolling of training user interface 612A includes sliding workout suggestions 616J, 616K, 616V, and 616W onto display 602. Workout suggestions 616J and 616K, such as workout suggestions 616J and 616K in FIG. 6J, are workout suggestions selected based on being complementary to previous workouts performed by the user. Workout suggestion 616V, such as workout suggestions 616F, 616H, 616G, and 616I in FIG. 6I, is a workout suggestion corresponding to a new workout added to the application within the last week. Workout suggestion 616W, such as workout suggestion 616B in FIG. 6H, is a workout suggestion corresponding to a training program including an ordered series of workouts. While displaying training user interface 612A, electronic device 600 detects input 619 moving in an upward direction.
[0214] In FIG. 6Y, in response to detecting input 619, electronic device 600 scrolls training user interface 612A. The scrolling of training user interface 612A includes sliding workout suggestions 616X, 616Y, and 616Z and options 644A-644E onto display 602. Workout suggestions 616X, 616Y, and 616Z, like workout suggestions 616L-616Q in FIG. 6J, are workout suggestions corresponding to workouts common to training applications. Options 644A-644E are identical to options 644A-644E in FIG. 6K and can be selected to filter workout suggestions based on trainer. While displaying training user interface 612A, electronic device 600 detects input 621 moving in an upward direction.
[0215] In FIG. 6Z, in response to detecting input 621, electronic device 600 scrolls training user interface 612A. The scrolling of training user interface 612A includes sliding workout suggestions 616AA and saved workouts 646A, 646B onto display 602. Workout suggestions 616AA are similar to workout suggestions 616R of FIG. 6K and are workout suggestions representing audio workouts. Saved workouts 646A, 646B are identical to saved workouts 646A, 646B of FIG. 6L. While displaying training user interface 623, electronic device 600 detects input 623 moving in a downward direction.
[0216] 6AA, in response to detecting input 623, electronic device 600 scrolls training user interface 612A to again reveal workout suggestions 616J, 616K, 616V, and 616W (as previously shown in FIG. 6X). While displaying training user interface 612A, electronic device 600 detects input 627 at a location corresponding to workout suggestion 616W.
[0217] In FIG. 6BB, in response to detecting input 627, electronic device 600 replaces the display of workout user interface 612A with program user interface 630A. Program user interface 630A is similar to program user interface 630 of FIG. 6G. Various features of program user interface 630A can be incorporated into program user interface 630, and various features of program user interface 630 can be incorporated into program user interface 630A. Program user interface 630A includes multiple workout suggestions corresponding to a particular training program (e.g., Yoga for Runners with Celebrity X). Scrolling through program user interface 630A (e.g., via user input 629) reveals multiple workout suggestions 635A-D of FIG. 6CC. A training program consists of multiple training content items ordered in a predetermined sequence. Following a determination that a workout of the training program is completed, electronic device 600 uses a border to visually highlight the workout suggestion corresponding to the next workout in the predetermined sequence of workouts of the training program. For example, electronic device 600 visually highlights workout suggestion 634A pursuant to a determination that the workout corresponding to workout suggestion 635A has been completed. Suggestion 634A corresponds to a workout that matches workout suggestion 635B and is next in the sequence of workouts. Program user interface 630 also includes a user-selectable option 634B to open and play a program introduction video. The program introduction video is separate and distinct from the workouts in the training program. In some embodiments, the program introduction video includes audio and / or visual clips (e.g., images or video clips) from some or all of the workouts in the training program.In some embodiments, selecting a particular workout suggestion 634A, 635A-635D results in the display of a corresponding detailed user interface (similar to detailed user interface 620 of FIG. 6D ). In some embodiments, the detailed user interface for each workout may include a selectable option to play video content corresponding to the workout, and a separate selectable option to play a program introduction video (e.g., similar to options 623A and 623B of FIG. 6D ).
[0218] FIG. 6DD displays a training modality user interface 654A. The training modality user interface 654A is similar to the filter user interface 654 of FIG. 6N. Various features of the training modality user interface 654A can be incorporated into the filter user interface 654, and various features of the filter user interface 654 can be incorporated into the training modality user interface 654A. In some embodiments (e.g., in FIG. 6W or FIG. 6M), the training modality user interface 654A can be displayed in response to a user input corresponding to 614B. The training modality user interface 654A includes filtered workout suggestions 660F-660H based on the selected option 614B. In the illustrated scenario, the filtered workout suggestions 660F-660H all have a particular workout type (e.g., cycling) (or training modality) in common. The training modality user interface 654A includes a user-selectable option 660I to open and play a training modality introductory video. The training modality introductory video is separate and distinct from the workouts corresponding to filtered workout suggestions 660F-660H. In some embodiments, the training modality introductory video may identify any equipment required for the training modality (e.g., a stationary bike may be required for cycling workouts). While displaying the training modality user interface 654A, the electronic device 600 detects input 661 at a location corresponding to option 660I.
[0219] In FIG. 6EE, in response to detecting input 661, electronic device 600 begins playing training modality introduction video 661A.
[0220] 7 is a flow diagram illustrating a method for navigating and displaying training suggestions using an electronic device, according to some embodiments. Method 700 is performed on an electronic device (e.g., 100, 300, 500, or 600) that includes a display (e.g., 602). Some operations of method 700 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0221] As described below, method 700 provides an intuitive way to navigate and display training suggestions. This method reduces the cognitive burden on the user of navigating and displaying training suggestions, thereby creating a more efficient human-machine interface. In the case of battery-operated computing devices, allowing users to navigate and display training suggestions faster and more efficiently conserves power and increases the time between battery charges.
[0222] In some embodiments, the electronic device (e.g., 100, 300, 500, 600, 800) is a computer system. The computer system is optionally in communication (e.g., wired communication, wireless communication) with a display generation component and one or more input devices. The display generation component is configured to provide visual output, such as display via a CRT display, display via an LED display, or display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. The one or more input devices are configured to receive input, such as a touch-sensitive surface that receives user input. In some embodiments, the one or more input devices are integrated with the computer system. In some embodiments, the one or more input devices are separate from the computer system. Thus, the computer system can transmit data (e.g., image data or video data) via a wired or wireless connection to an integrated or external display generation component to visually generate content (e.g., using a display device), and can receive input from the one or more input devices via a wired or wireless connection.
[0223] The electronic device displays (702) on a display (e.g., 602) a selectable user interface object (e.g., 610A affordance) for displaying workout suggestions. The electronic device detects (704) a user input (e.g., 610B) corresponding to the selectable user interface object for displaying workout suggestions (e.g., via a touch-sensitive display).
[0224] In response to detecting (706) a user input corresponding to a selectable user interface object for displaying training suggestions, the electronic device (708) displays a user interface (e.g., 612) for displaying training suggestions, including simultaneously displaying a plurality of selectable options (710) including a first option (e.g., 614A-614D, selectable user interface objects, affordances) that, when selected, causes the electronic device to begin a process for displaying training suggestions sharing a first common training parameter, and a second option (e.g., 614A-614D, selectable user interface objects, affordances) that, when selected, causes the electronic device to begin a process for displaying training suggestions sharing a second common training parameter; and a plurality of training suggestions (712) (e.g., 616A-616D), in which the plurality of training suggestions are selected for display based on the training history of the user of the electronic device. Simultaneously displaying multiple selectable options and multiple training suggestions allows a user to quickly gain access to a desired training, thereby reducing the number of inputs required to select a training. Improves usability of the device by reducing the number of inputs required to perform an action, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces power usage and improves the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0225] In some embodiments, the first common workout parameter and the second common workout parameter both correspond to a first type of workout parameter (e.g., exercise type, music type / genre, trainer, duration). In some embodiments, the workout suggestion corresponds to (e.g., represents) a workout (e.g., audio and / or video content that guides a user to perform a physical activity). In some embodiments, selecting a workout suggestion initiates a process for playing a workout corresponding to the workout suggestion.
[0226] In some embodiments, the plurality of workout suggestions (e.g., 616A-616D) includes (714) a first workout suggestion (e.g., 616A-616B, a graphical representation of a workout), where the first workout suggestion corresponds to a first subset of a collection of completed workouts (e.g., most recent / last completed workouts that are part of a program / series). In some embodiments, the first workout suggestion is selected for display based on a correspondence between the first workout suggestion and the first subset of the collection of completed workouts. In some embodiments, the collection of completed workouts is workouts (e.g., audio / video content for workouts) completed by a user of the electronic device. In some embodiments, the first workout suggestion (e.g., 616A) is displayed in an area of the display above an area occupied by the second workout suggestion (e.g., 616C). In some embodiments, a first workout suggestion (e.g., 616A) corresponds to the first subset when the first workout suggestion shares one or more characteristics (e.g., workout type, trainer, musical genre, duration, required equipment, series / program) with the last completed workout. For example, the first workout suggestion has the same workout type and trainer as the last workout the user completed. As another example, the user recently completed one of the workouts in a training series / program, and therefore the first workout suggestion (e.g., 616B) is the next workout in the series / program. Automatically suggesting workouts based on a collection of completed workouts improves the quality of suggestions to the user, thereby providing a means for the user to make selections. Otherwise, additional input is required to further specify the desired workout.Taking action when a set of conditions is met without requiring further user input enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.
[0227] In some embodiments, the first subset of the collection of completed workouts includes at least one workout in a predetermined sequence of workouts, and in some embodiments, the first workout suggestion (e.g., 616B) corresponds to the next uncompleted workout in the predetermined sequence of workouts (e.g., the workout that sequentially follows at least one workout in the first subset).
[0228] In some embodiments, the first subset of the collection of completed workouts excludes (e.g., does not include) at least one workout from the predetermined set of workouts. In some embodiments, the first workout suggestion (e.g., 616A) corresponds to a most recently completed workout. In some embodiments, the first workout suggestion corresponds to a most recently completed workout based on one or more of trainer, exercise type, workout duration, music, and required equipment.
[0229] In some embodiments, the electronic device detects a user input (e.g., 628) corresponding to a first workout suggestion (e.g., 616B) corresponding to a next workout in the predefined series of workouts that has not been completed. In some embodiments, in response to detecting a user input corresponding to a first workout suggestion corresponding to a next workout in the predefined series of workouts that has not been completed, the electronic device displays one or more workout suggestions (e.g., 634, 632A-632C) from the predefined series of workouts. In some embodiments, in response to detecting a user input corresponding to a first workout suggestion corresponding to a next workout in the predefined series of workouts that has not been completed, and following a determination that at least one workout in the predefined series of workouts has been completed, the electronic device visually highlights one or more workout suggestions (e.g., 634) from the predefined series of workouts without visually highlighting a different workout suggestion (e.g., 632A, 632C) from the one or more workout suggestions in the predefined series of workouts. By automatically visually highlighting the next workout in the predefined series of workouts when a workout in the predefined series is completed, a user can quickly select a desired workout. Taking action when a set of conditions is met without requiring further user input enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.
[0230] In some embodiments, the plurality of workout suggestions includes a second workout suggestion (e.g., 616C-616D, graphical workout representation), where the second workout suggestion corresponds to a second subset of the collection of completed workouts (e.g., workouts completed within a predetermined duration (e.g., the last 30, 60, or 90 days)), and the first subset is different from the second subset. In some embodiments, the second workout suggestion is selected for display based on the correspondence between the second workout suggestion and the second subset of the collection of completed workouts. In some embodiments, the second workout suggestion (e.g., 616C-616D) is displayed in an area of the display below the area occupied by the first workout suggestion (e.g., 616A-616B). In some embodiments, the second workout suggestion corresponds to the second subset in that the second workout suggestion shares one or more characteristics (e.g., workout type, trainer, music genre, duration, required equipment, series / program) with workouts completed in the last 30, 60, or 90 days. For example, the user completed 10 workouts in the past 30 days, and the second workout suggestion is a yoga workout because yoga is the most common workout type among the 10 workouts. As another example, the user completed 30 workouts in the past 90 days, and the second workout suggestion is a workout by a particular trainer because that particular trainer is the most common trainer among the 30 workouts. In some embodiments, the second workout suggestion is selected based on two or more characteristics (e.g., workout type and duration). Automatically suggesting workouts based on a collection of completed workouts improves the quality of suggestions to the user, thereby providing a means for the user to make selections. Otherwise, additional input is required to further specify the desired workout.Taking action when a set of conditions is met without requiring further user input enhances the usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces the device's power usage and improves battery life by allowing the user to use the device more quickly and efficiently.
[0231] In some embodiments, while displaying a plurality of selectable options (e.g., 614A-614D) and a plurality of workout suggestions (e.g., 616A-616D), the electronic device detects a first scrolling gesture (e.g., 636). In some embodiments, after (e.g., in response to) detecting the first scrolling gesture, the electronic device displays a third workout suggestion (e.g., 616J) on the display, where the third workout suggestion corresponds to a third subset of the collection of completed workouts (e.g., workouts of the most common exercise type performed by the user, a predetermined duration (e.g., last 30, 60, or 90 days), a most recent / last completed workout, all or a portion of the completed workouts). In some embodiments, the third workout suggestion is selected for display based on a third workout suggestion that does not share a third common workout parameter (e.g., trainer, exercise type, duration, etc.) with the third subset of the collection of completed workouts.
[0232] In some embodiments, the third workout suggestion (e.g., 616J) is also selected for display based on the third workout suggestion sharing a fourth common workout parameter with the third subset. In some embodiments, the third workout suggestion is also selected for display based on the third workout suggestion being complementary (e.g., having a default correspondence / connection) with the third subset of the collection of completed workouts. For example, the user has primarily completed running workouts, so the device suggests yoga as a complementary workout to running.
[0233] In some embodiments, while displaying the plurality of selectable options (e.g., 614A-614D) and the plurality of workout suggestions (e.g., 616A-616D), the electronic device detects a second scrolling gesture (e.g., 636). In some embodiments, after (e.g., in response to) detecting the second scrolling gesture, the electronic device displays a fourth workout suggestion (e.g., 616K) on the display, where the fourth workout suggestion corresponds to a fourth subset of the collection of completed workouts (e.g., a particular type of workout (e.g., no video / audio corresponding to the workout), a workout not selectable as part of the plurality of workout suggestions). In some embodiments, the fourth workout suggestion is selected for display based on a correspondence between the fourth workout suggestion and the fourth subset. In some embodiments, the fourth subset is different from the first, second, and / or third subset. In some embodiments, the fourth suggestion (e.g., 616K) is displayed instead of the third suggestion (e.g., 616J), or vice versa. In some embodiments, after detecting the second scrolling gesture (e.g., a vertical scrolling gesture), the electronic device detects a horizontal scrolling gesture at a location corresponding to the third training suggestion. In some embodiments, in response to detecting the horizontal scrolling gesture, the electronic device displays a fourth suggestion.
[0234] In some embodiments, the plurality of workout suggestions include workout suggestions (e.g., 616A-616U) for workouts (e.g., audio and / or video content that guides a user to perform a physical activity) that correspond to a predefined list of audio items (e.g., a music playlist (e.g., as shown in FIG. 6D )).
[0235] In some embodiments, the plurality of workout suggestions include workout suggestions (e.g., 616A-616Q) for workouts accompanied by metadata that cause output (e.g., at the electronic device and / or external device) of prompts (e.g., coaching, audio, or visual content that encourages the user to perform a particular action or attempt to achieve a goal) during playback of the workout.
[0236] In some embodiments, the plurality of workout suggestions include workout suggestions (e.g., 616A-616U) for workouts that, when selected for playback (e.g., starting video / audio content), cause an external device (e.g., a smartwatch, a heart rate monitor, and / or a fitness tracker) to record (e.g., via one or more sensors) one or more physical activity indicators. Automatically recording one or more physical activity indicators when a workout is selected for playback allows a user to track their physical activity without requiring additional input. Taking action when a set of conditions is met without requiring further user input enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0237] In some embodiments, the plurality of workout suggestions include workout suggestions (e.g., 616J) having physical activity types different from the physical activity types of completed workouts (e.g., the most common physical activity types among the completed workouts) (e.g., running, yoga, HIIT, etc.). In some embodiments, the workout suggestions have a predetermined correspondence (e.g., complementary relationship) with a fifth subset (e.g., the most common exercise type workouts performed by the user, a predetermined duration (e.g., the last 30, 60, or 90 days), the most recent / last completed workout, all or a portion of the completed workouts).
[0238] In some embodiments, while displaying the plurality of selectable options (e.g., 614A-614D) and the plurality of workout suggestions (e.g., 616A-616D), the electronic device detects one or more inputs (e.g., 652, 658B). In some embodiments, in response to detecting the one or more inputs, the electronic device stops displaying the plurality of selectable actions and the plurality of workout suggestions. In some embodiments, in response to detecting the one or more inputs, the electronic device displays on the display a third option (e.g., 664A-664H, 666A-666E, 668A-668F, selectable user interface object, affordance) that, when selected, configures the electronic device to display workout suggestions that share a third common workout parameter, and a fourth option (e.g., 664A-664H, 666A-666E, 668A-668F, selectable user interface object, affordance) that, when selected, configures the electronic device to display workout suggestions that share a fourth common workout parameter. In some embodiments, the third common training parameter corresponds to the second type of training parameter (e.g., exercise type, music type / genre, trainer, duration). In some embodiments, the fourth common training parameter corresponds to a third type of training parameter that is different from the second type of training parameter (e.g., exercise type, music type / genre, trainer, duration).
[0239] In some embodiments, the electronic device detects selection of a third option (e.g., 664E of FIG. 6O). In some embodiments, in response to detecting selection of the third option, the electronic device changes one or more visual characteristics (e.g., dims, grays out, or otherwise inhibits) of a fourth option (e.g., 666E, 668A of FIG. 6P).
[0240] In some embodiments, the electronic device detects a selection of a third option (e.g., 666D in FIG. 6Q). In some embodiments, after detecting the selection of the third option (e.g., other options are also selected), the electronic device displays one or more workout suggestions (e.g., 660D-660F in FIG. 6S) based on the detected selection of the third option, including a selectable user interface object (e.g., 678C) indicating that the third option was selected. In some embodiments, while displaying the one or more workout suggestions based on the detected selection of the third option, the electronic device detects a user input (e.g., 680) corresponding to the selectable user interface object indicating that the third option was selected. In some embodiments, in response to detecting a user input corresponding to the selectable user interface object indicating that the third option was selected, the electronic device displays one or more workout suggestions (e.g., 660G-660E in FIG. 6T) on the display that were not displayed prior to the detection of the user input corresponding to the selectable user interface object indicating that the third option was selected.
[0241] In some embodiments, the electronic device displays a fifth workout suggestion (e.g., 616L-616Q), where the fifth workout suggestion is selected for display based on how frequently (e.g., in the last 7 days, 14 days, 30 days) the fifth workout suggestion is selected by a group of users (e.g., users of the external electronic device). In some embodiments, the fifth workout suggestion corresponds to a popular or trending workout. In some embodiments, the fifth workout suggestion is displayed in response to (e.g., after) detecting a scroll gesture while the electronic device is displaying multiple selectable options and multiple workout suggestions.
[0242] In some embodiments, pursuant to a determination that the workout corresponding to the sixth workout suggestion (e.g., 616A, 616L) has been completed (e.g., pursuant to a determination that the user has viewed the workout (e.g., audio and / or video content of the workout)), the electronic device displays on the display an indication that the workout corresponding to the sixth workout suggestion has been completed (e.g., a check mark at 622F of FIG. 6D or 616L of FIG. 6J). In some embodiments, pursuant to a determination that the workout corresponding to the sixth workout suggestion has not been completed, the electronic device does not display an indication that the workout corresponding to the sixth workout suggestion has been completed. In some embodiments, the indication is displayed in response to detecting a user input (e.g., 618 of FIG. 6C) corresponding to the sixth workout suggestion. In some embodiments, the sixth workout suggestion is displayed in response to (e.g., after) detecting a scroll gesture while the electronic device is displaying the multiple selectable options and multiple workout suggestions.
[0243] In some embodiments, the indication that the workout corresponding to the sixth workout suggestion is completed is a visual checkmark superimposed on the sixth workout suggestion (e.g., checkmark 616L in FIG. 6J).
[0244] In some embodiments, the electronic device detects a user input (e.g., 618) corresponding to a seventh workout suggestion (e.g., 616A). In some embodiments, in response to detecting the user input corresponding to the seventh workout suggestion, the electronic device displays a detailed user interface (e.g., 620) for the seventh workout suggestion on the display, the detailed user interface including one or more workout characteristics selected from the group consisting of equipment (e.g., 622C), duration (e.g., 622B), music genre (e.g., 622D), exercise type (e.g., 622A), and the number of times the workout corresponding to the seventh workout suggestion has been completed (e.g., 622F). In some embodiments, the one or more workout characteristics are associated with the workout corresponding to the seventh workout suggestion. In some embodiments, the seventh workout suggestion is displayed in response to (e.g., after) detecting a scroll gesture while the electronic device is displaying the multiple selectable options and multiple workout suggestions.
[0245] In some embodiments, the electronic device detects user input (e.g., 618) corresponding to an eighth workout suggestion (e.g., 616A). In some embodiments, in response to detecting user input corresponding to the eighth workout suggestion, the electronic device displays on the display an audio selectable user interface object (e.g., "Listen to Music" in FIG. 6D ) that, when selected, initiates a process to cause playback of one or more audio items (e.g., music files) that are part of a default collection of audio items (e.g., a playlist) (e.g., launches a music application to play the audio items). In some embodiments, a default collection of audio items is associated with the workout corresponding to the eighth workout suggestion. In some embodiments, the electronic device detects user input corresponding to the audio selectable user interface object. In some embodiments, in response to detecting user input corresponding to the audio selectable user interface object, the electronic device launches a music application having a save option that, when selected, initiates a process to save the default collection of audio items to the user's library of the music application. In some embodiments, in response to detecting user input corresponding to the save option, the electronic device displays a download option that, when selected, initiates a process to store data corresponding to the default collection of audio items on the electronic device. In some embodiments, the eighth workout suggestion is displayed in response to (e.g., after) detecting a scroll gesture while the electronic device is displaying the multiple selectable options and multiple workout suggestions.
[0246] In some embodiments, the electronic device causes the external device to display a ninth workout suggestion. In some embodiments, the ninth workout suggestion is based on one or more physical activity indicators of a user of the electronic device. In some embodiments, the one or more physical activity indicators are captured via one or more sensors of the external device.
[0247] In some embodiments, the electronic device displays within the user interface for displaying the workout suggestions (e.g., 612, 612A) a fifth option (e.g., 615A, 615B) (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to begin a process for playing new content introduction media (e.g., audio and / or video) corresponding to multiple new (e.g., previously unavailable to the user) workouts made available to the user of the electronic device within a predetermined period of time (e.g., within yesterday, within the last week). In some embodiments, the new content video identifies each of the multiple new workout suggestions (e.g., by identifying the trainer, title, and / or workout type associated with the new workout suggestion). In some embodiments, the new content video includes one or more images and / or video clips from each of the multiple new workout suggestions. In some embodiments, the new content video object is displayed within the user interface simultaneously with the multiple selectable options and the multiple workout suggestions. Displaying an option that, when selected, causes the electronic device to begin a process for playing new content introduction media corresponding to multiple new workouts provides the user with feedback regarding the current state of the device and provides the user with feedback indicating what is needed to view the new content introduction media. Providing improved feedback to the user improves device usability, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and efficiently.
[0248] In some embodiments, the electronic device detects a user input corresponding to a tenth workout suggestion (e.g., 616A). In response to detecting the user input corresponding to the tenth workout suggestion, the electronic device displays on the display a first audio selectable user interface object (e.g., 623C) that, when selected, initiates a process (e.g., launches a music application to play the audio items) to cause playback of a plurality of audio items (e.g., a plurality of music files) that are part of a predefined collection of audio items (e.g., a music playlist), where the predefined collection of audio items includes the first audio selectable user interface object associated with the workout corresponding to the tenth workout suggestion, and a first audio selectable user interface object (e.g., 623D) that, when selected, initiates a process (e.g., launches a music application to play the audio items) to cause playback of other audio items of the predefined collection of audio items (e.g., a music playlist). The device simultaneously displays a second audio selectable user interface object (e.g., 623D) that initiates a process (e.g., launches a music application to play the audio item) that causes playback of a first audio item (e.g., a first music file) of the plurality of audio items (without causing playback of any other audio items of the plurality of audio items), and a third audio selectable user interface object (e.g., 623E) that, when selected, initiates a process (e.g., launches a music application to play the audio item) that causes playback of a second audio item (e.g., a second music file that is different from the first music file) of the plurality of audio items that is different from the first audio item (without causing playback of any other audio items of the plurality of audio items). The different selectable user interface objects, each allowing the user to play multiple audio items within a predefined collection of audio items or, alternatively, allowing the user to play an individual audio item (e.g., the first audio item or the second audio item), provide the user with feedback regarding the current state of the device and provide feedback to the user indicating what is needed to play the audio items within that collection or the entire predefined collection of individual audio items.Providing improved feedback to the user improves usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces power usage and improves the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0249] In some embodiments, a first option (e.g., 614A, 614B, 614C, 614D), when selected, causes the electronic device to begin a process of displaying workout suggestions that share a first common workout type (e.g., workout modality (e.g., HIIT, yoga, cycling, running, core, rowing, dance)) (e.g., FIGS. 6N, 6DD). In some embodiments, the electronic device detects a user input corresponding to the first option. In response to detecting user input corresponding to the first option, the electronic device simultaneously displays one or more workout suggestions that share the first common workout type (e.g., 660A-660D, 660F-660H) (e.g., without displaying workout suggestions that do not share the first common workout type) and a workout type introductory video (e.g., 660E, 660I) (e.g., selectable user interface object, affordance) that, when selected, causes the electronic device to begin a process for playing a workout type introductory video that corresponds to the first common workout type, where the workout type introductory video identifies one or more pieces of workout equipment (e.g., dumbbells, yoga mat, treadmill, stationary bicycle) required for the first common workout type.In some embodiments, the second option, when selected, causes the electronic device to initiate a process of displaying workout suggestions that share a second common workout type (e.g., a training modality (e.g., HIIT, yoga, cycling, running, core, rowing, dance)) that is different from the first common workout type, the method further including detecting user input corresponding to the second option, and in response to detecting the user input corresponding to the second option, simultaneously displaying one or more workout suggestions that share the second common workout type (e.g., without displaying workout suggestions that do not share the second common workout type) and a second workout type introduction video (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process for playing a second workout type introduction video (e.g., different from the workout type introduction video) that corresponds to the second common workout type, the second workout type introduction video identifying one or more pieces of workout equipment (e.g., dumbbells, yoga mat, treadmill, stationary bicycle) required for the second common workout type. Simultaneously displaying the workout type introduction object and one or more workout suggestions allows a user to quickly gain access to a desired workout, thereby reducing the number of inputs required to select a workout. Reducing the number of inputs required to perform an action improves device usability, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs and reducing user errors when operating / interacting with the device), and reduces power usage and improves device battery life by allowing the user to use the device more quickly and efficiently.
[0250] In some embodiments, the electronic device displays within the user interface displaying the training suggestions a sixth option (e.g., 616B, 616W) (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process of displaying training suggestions for a plurality of workouts in a predefined sequence of workouts (e.g., FIGS. 6G, 6BB, 6CC) (in some embodiments, a plurality of workouts in a predefined ordered sequence) (e.g., without displaying training suggestions for workouts that are not in the predefined sequence of workouts). The electronic device detects user input corresponding to the sixth option. In response to detecting user input corresponding to the sixth option, the electronic device simultaneously displays training suggestions for the plurality of workouts in the predefined sequence of workouts (e.g., without displaying training suggestions that do not correspond to the plurality of workouts in the predefined sequence of workouts) and a training series introduction object (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process for playing training series introduction media (e.g., audio and / or video) corresponding to the predefined sequence of workouts. In some embodiments, each workout in the predefined series of workouts corresponds to a unique training video, and the training series introductory video is different from the multiple training videos in the training series, hi some embodiments, the training series introductory video includes one or more video clips and / or one or more images from at least a subset of the predefined series of workouts.In some embodiments, the method further includes displaying within the user interface displaying the workout suggestions a seventh option (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process for displaying workout suggestions for a second plurality of workouts in the second pre-defined series of workouts (in some embodiments, the second plurality of workouts in a second pre-defined ordered sequence that is different from the plurality of workouts in the pre-defined ordered sequence) (e.g., without displaying workout suggestions that are not in the second pre-defined series of workouts), wherein the second plurality of workouts in the second pre-defined series of workouts are not in the pre-defined series of workouts. detect a user input corresponding to the seventh option; and in response to detecting a user input corresponding to the seventh option, simultaneously display training suggestions for the plurality of workouts of the second predefined sequence of workouts (e.g., without displaying training suggestions that do not correspond to the second plurality of workouts of the second predefined sequence of workouts) and a second training series introduction object (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process for playing a second training series introduction video (e.g., different from the training series introduction video) corresponding to the second predefined sequence of workouts. In some embodiments, each workout in the second predefined sequence of workouts corresponds to a unique training video, and the second training series introduction video is different from the plurality of training videos in the second training series. In some embodiments, the second training series introduction video includes one or more video clips and / or one or more images from at least a subset of the workouts in the second predefined sequence.The training series introduction object and the simultaneous display of multiple workouts within a predefined series of workouts allow a user to quickly gain access to a desired workout, thereby reducing the number of inputs required to select a workout. Reducing the number of inputs required to perform an action improves device usability, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs and reducing user errors when operating / interacting with the device), and also reduces power usage and improves device battery life by allowing the user to use the device more quickly and efficiently.
[0251] It should be noted that the processing details described above in connection with method 700 (e.g., FIG. 7) are applicable in a similar manner to the methods described below. For example, method 700 optionally includes one or more of the features of the various methods described below with reference to method 900. For example, the plurality of workout suggestions in method 700 optionally includes workout suggestions 616R-616U, as described with reference to method 900. For the sake of brevity, these details will not be repeated below.
[0252] 8A-8S show exemplary user interfaces for initiating audio-based training, according to some embodiments. The user interfaces in these figures are used to illustrate processes described below, including the process of FIG.
[0253] 8A shows electronic device 600, which is a smartphone, with display 602. Display 602 of electronic device 600 includes a touch-sensitive surface that enables electronic device 600 to detect user gestures (e.g., taps, swipes, drags). In some embodiments, electronic device 600 includes one or more features of electronic devices 100, 300, and / or 500.
[0254] In FIG. 8A , electronic device 600 displays workout user interface 612 with workout suggestions 616R-616U. Workout suggestions 616R-616S represent audio content (e.g., workout content) having durations corresponding to the amount of time required to walk a predetermined distance (e.g., 1 mile, 2 miles, or 3 miles). Workout suggestions 616T-616U represent audio content (e.g., workout content) corresponding to predetermined routes at or near one or more physical locations (e.g., a 5-kilometer route in Hackney). While displaying workout user interface 612, electronic device 600 detects input 802B at a location corresponding to option 802A. In some embodiments, electronic device 600 displays workout user interface 612 in response to an input (e.g., 640 in FIG. 6J ).
[0255] In FIG. 8B , in response to detecting input 802B, electronic device 600 replaces the display of workout user interface 612 with a display of library user interface 804. Library user interface 804 includes a plurality of workout suggestions (e.g., 806A-806D). Workout suggestions 806A-806D represent audio content (e.g., content having a duration corresponding to the length of time required to walk a predetermined distance (e.g., 1 mile, 2 miles, or 3 miles)). Workout suggestion 806A in FIG. 8B corresponds to workout suggestion 616R in FIG. 8A. In some embodiments, selection of workout suggestion 616R in FIG. 8A and selection of workout suggestion 806A in FIG. 8B both result in the display of the same user interface with details / information about the same workout. Similarly, workout suggestion 806B in FIG. 8B corresponds to workout suggestion 616S in FIG. 8A. While displaying the training user interface 612, the electronic device 600 detects an input 808 at a location corresponding to the training suggestion 806A.
[0256] 8C , in response to detecting input 808, electronic device 600 replaces the display of library user interface 804 with a display of details user interface 810. Details user interface 810 includes information about the selected workout corresponding to workout suggestion 806A. Details user interface 810 includes music item representations 814A-814E, which represent one or more music items in a playlist. In some embodiments, after completing playback of workout content (e.g., corresponding to workout suggestion 806A), electronic device 600 automatically begins playback of the playlist (e.g., audio output on an external device for playing audio). Details user interface 810 includes an add option 812A for storing (e.g., downloading) workout content to electronic device 800. While displaying details user interface 810, electronic device 600 detects input 812B at a location corresponding to add option 812A.
[0257] 8C1 , in response to detecting input 812B, electronic device 600 begins a process of storing training content (e.g., media) corresponding to workout suggestion 806A on electronic device 800. In response to detecting input 812B, electronic device 600 visually changes additional options 812A to indicate that the training content is queued for storage on electronic device 800 (e.g., queued for download). In some embodiments, the training content remains queued until electronic device 800 is connected to a charger and / or draws power from the charger.
[0258] 8D , electronic device 600 continues the process of causing electronic device 800 to store training content corresponding to workout suggestion 806A at electronic device 800. In response to detecting input 812B and / or following a determination that a set of download criteria has been met (e.g., following a determination that electronic device 800 is charging), electronic device 600 visually modifies add option 812A to indicate that training content is stored at electronic device 800. While displaying detailed user interface 810, electronic device 600 detects input 815 corresponding to an up swipe gesture.
[0259] In FIG. 8D1, in response to detecting input 815, electronic device 600 displays additional content in detailed user interface 810, including additional music item representations 814F-814K.
[0260] 8E-8Q illustrate techniques related to playing workout content on electronic device 800. Specifically, the played workout content is the same workout content selected on electronic device 600 of FIGS. 8A-8D (e.g., corresponding to workout suggestion 806A). FIG. 8E illustrates electronic device 800 as a smartwatch with display 801. Electronic device 800 is operably connected (e.g., wirelessly paired) to electronic device 600. For example, electronic device 600 is configured to wirelessly communicate with electronic device 800 and vice versa. In some embodiments, electronic device 600 and electronic device 800 are both signed into the same account (e.g., an account associated with a user that allows the user to access features / functionality that would otherwise be restricted without an account). Display 801 of electronic device 800 includes a touch-sensitive surface that enables electronic device 800 to detect user gestures (e.g., taps, swipes, and / or drags). In some embodiments, electronic device 800 includes one or more features of electronic devices 100 , 300 , and / or 500 .
[0261] 8E, electronic device 800 displays training user interface 816 having representation 818. Representation 818 represents audio training content (e.g., corresponding to training suggestion 806A). While displaying training user interface 816, electronic device 800 detects input 820 at a location corresponding to option 819.
[0262] In FIG. 8E1, in response to detecting input 820, electronic device 800 replaces the display of training user interface 816 with library user interface 821. Library user interface 821 includes training representations 823A-823C. Training representation 823A corresponds to representation 818 of FIG. 8E. In the illustrated example, library user interface 821 presents training representations 823A-823C that represent audio training content stored (e.g., downloaded) on electronic device 800. Library user interface 821 includes option 827 selectable by the user to view additional audio training content, including audio training content that is available but not stored (e.g., downloaded) on electronic device 800. While displaying library user interface 821, electronic device 800 detects input 829A corresponding to a leftward swipe gesture at a location corresponding to training representation 823C.
[0263] In FIG. 8E2, in response to detecting input 829A, electronic device 800 shifts training representation 823C horizontally to reveal delete option 831. Selection of delete option 831 deletes the audio training content represented by training representation 823C from electronic device 800 and removes training representation 823C from library user interface 821. In FIG. 8E2, electronic device 800 detects input 829B corresponding to a rightward swipe gesture at a location corresponding to training representation 823C.
[0264] 8E3, in response to detecting input 829B, electronic device 800 returns training representation 823C to its original position horizontally. While displaying library user interface 821, electronic device 800 detects input 829C at a location corresponding to training representation 823A.
[0265] In FIG. 8E4, in response to detecting input 829C, electronic device 800 replaces the display of library user interface 821 with detail user interface 833. Detail user interface 833 includes information about the selected workout corresponding to workout representation 823A. Detail user interface 833 includes a music item representation representing one or more music items of a playlist associated with the workout (e.g., an ordered list of songs selected to accompany the workout, such as songs selected by or in conjunction with selectability featured within the workout). In some embodiments, the playlist is a predetermined playlist (e.g., not a user-selected playlist). In some embodiments, after playing the workout content (e.g., corresponding to workout representation 823A), electronic device 800 automatically begins playing the playlist (e.g., providing audio output to an external device for playing audio). Detail user interface 833 includes a start option 835A for triggering playback of the training content (e.g., corresponding to workout representation 823A). The details user interface 833 also includes a download option 835B for storing training content corresponding to the training representation 823A on the electronic device 800. The details user interface 833 also includes an open playlist option 835C for generating a music playlist associated with the training representation 823A for initiating playback in a separate music application. While displaying the details user interface 833, the electronic device 800 detects an input 829D at a location corresponding to the start option 835A.
[0266] 8F , in response to detecting input 829D, electronic device 800 replaces display of details user interface 833 with media user interface 822. Media user interface 822 includes a set of playback controls including play / pause button 824A, skip back button 824B, skip forward button 824C, and title display 824D. Title display 824D provides an indication of audio content that is cued for playback or currently playing. Electronic device 800 does not initiate audio playback in response to detecting input 820, as indicated by the state of play / pause button 824A. In some embodiments, in response to detecting input 820, electronic device 800 automatically causes playback of audio of workout content and records physical activity metrics during playback of the workout content.
[0267] While displaying the media user interface 822, the electronic device 800 detects an input 825 at a location corresponding to the play / pause button 824A. In response to detecting the input 825, the electronic device 800 causes audio playback of the workout content and records physical activity metrics during playback of the workout content. Prior to detecting the input 825, one or more sensors (e.g., GPS, accelerometer, gyroscope, and / or heart rate) of the electronic device 800 are disabled. The one or more sensors are used to capture the user's physical activity. In response to detecting the input 825, the electronic device 800 enables the one or more sensors to improve accurate measurement of the user's physical activity during workouts.
[0268] In some embodiments, audio playback of the workout content occurs on an external device (e.g., speaker, headphones) in communication with electronic device 800. In some embodiments, physical activity metrics are recorded (e.g., captured) via one or more sensors of electronic device 800 (e.g., GPS, accelerometer, gyroscope, and / or heart rate).
[0269] In the media user interface 822 of FIG. 8G , in response to detecting an input 825, the electronic device 800 visually updates the play / pause button 824A to indicate that audio playback is occurring. Surrounding the play / pause button 824A is a playback progress indicator 824AA that visually indicates the progress of audio playback. While displaying the media user interface 822, the electronic device 800 detects an input 826 involving movement in a left-to-right direction. In response to detecting the input 826, the electronic device 800 replaces the display of the media user interface 822 with a display of a training user interface 830, as shown on the right side of FIG. 8G . The training user interface 830 includes a distance indicator 832A that indicates the distance the user has traveled since the start of the workout (e.g., the start of playback of the workout content). The training user interface 830 includes a time indicator 832B that indicates the amount of time that has elapsed since the start of the workout (e.g., the start of playback of the workout content). In some embodiments, while displaying training user interface 830, electronic device 800 detects input 828 with movement in a right-to-left direction. In response to detecting input 828, electronic device 800 replaces the display of training user interface 830 with a display of media user interface 822. In some embodiments, while displaying training user interface 830, if electronic device 800 detects input with movement in a left-to-right direction (as opposed to right-to-left input 828 shown in FIG. 8G ), electronic device 800 replaces the display of training user interface 830 with a training management user interface (not shown).The training management user interface may include a selectable pause / resume option to pause and / or resume a training session (e.g., pause and / or resume playing audio associated with the training, pause and / or resume recording of physical indicators associated with the training), and an end option selectable to end the training session (e.g., end playing audio associated with the training, end recording of physical indicators associated with the training). The training management user interface may also include a water lock option selectable to enable or disable a water lock feature. Enabling the water lock option disables the touchscreen display 801 to prevent accidental input on the touchscreen display 801 caused by moisture, while disabling the water lock option re-enables the touchscreen display 801.
[0270] 8H and 8J-8K show both media user interface 822 and training user interface 830, respectively, to illustrate how the user interfaces progress as training content continues to play. In some embodiments, electronic device 800 transitions between displaying media user interface 822 and training user interface 830 in response to inputs similar to inputs 826 and 828 described above.
[0271] 8H, electronic device 800 displays media user interface 822, or alternatively, workout user interface 830, after playback of a portion of the training content has occurred. Playback progress indicator 824AA indicates that the audio training content is approximately at the halfway point. In response to determining that a predetermined point (e.g., the halfway point) has been reached during playback of the audio content (e.g., corresponding to workout suggestion 616R), electronic device 800 causes an audio indication via an audio output device (e.g., speakers, headphones) that the halfway point in the audio content has been reached.
[0272] In FIG. 8I , in response to determining that a predetermined point in time has been reached during playback of the audio content (e.g., corresponding to workout suggestion 616R), electronic device 800 displays visual content 834 corresponding to the audio content of the workout. For example, electronic device 800 generates a portion of the audio playback, a narrator describes a physical location (e.g., a vinyl record), and displays visual content corresponding to the portion of the audio playback. In some embodiments, electronic device 800 displays visual content 834 based on metadata of the training content. For example, the metadata is configured to cause electronic device 800 to display visual content 834 at a particular time during playback of the training content. As shown in FIG. 8I , when media user interface 822 is displayed, visual content 834 replaces the display of media user interface 822. Alternatively, when training user interface 830 is displayed, visual content 834 replaces the display of training user interface 830. In some embodiments, when electronic device 800 displays visual content 834, electronic device 800 also generates an audio and / or tactile output that indicates to the user that visual content 834 is being displayed. Electronic device 800 also displays a done option 837 that is selectable by the user to cause electronic device 800 to replace the display of visual content 834 with media user interface 822 or training user interface 830.
[0273] In FIG. 8J , electronic device 800 displays media user interface 822, or alternatively, workout user interface 830, at the end of the workout (e.g., playback of the workout content has finished). Playback progress indicator 824AA indicates that playback of the audio training content is nearly complete. In FIG. 8K , in response to determining that the end of the training content has been reached, electronic device 800 performs playback of the audio of a playlist (e.g., one or more musical items (e.g., songs)) associated with the training content (e.g., the playlist is configured to automatically play after the training content has ended). In some embodiments, one or more musical items (e.g., represented by 814A-814E) are part of a playlist that automatically plays after the training content has ended. In response to determining that the end of the training content has been reached, electronic device 800 updates title display 824D to indicate a change from playing audio of the training content to playing audio of the playlist (e.g., one or more musical items). Playback progress indicator 824AA indicates that playback of the first musical item in the playlist has begun. While displaying the media user interface 822 , the electronic device 800 detects an input 838 at a location corresponding to the option 836 .
[0274] In FIG. 8L, in response to detecting input 838, electronic device 800 replaces the display of media user interface 822 with a display of library user interface 840. Library user interface 840 includes a plurality of workout suggestions (e.g., 842A-842C). Workout suggestions 842A, 842B, and 842C correspond to workout suggestions 806A, 806B, and 806C, respectively, of FIG. 8B. While displaying library user interface 840, electronic device 800 detects input 846 at a location corresponding to option 844.
[0275] 8M, in response to detecting input 846, electronic device 800 replaces the display of library user interface 840 with media user interface 822. While displaying media user interface 822, electronic device 800 detects input 850 at a location corresponding to option 848.
[0276] In the embodiment shown in FIGS. 8G-8M, playback progress indicator 824AA separately indicates the playback progress of individual content items, such as the audio training content and each music item in a playlist. Thus, in FIGS. 8J and 8K, as the audio training content ends and the first music item begins playing, playback progress indicator 824AA progresses from completely full (indicating the end of playback of the audio training content) to nearly empty (indicating the start of playback of the first music item). In some embodiments, playback progress indicator 824AA can indicate the playback progress for all of the audio content items corresponding to the audio training as if they were a single content item. For example, playback progress indicator 824AA can indicate the playback progress of the audio training content as well as all of the music tracks in a playlist. Such an embodiment is shown in FIGS. 8M1-8M3. In the illustrated scenario, the audio training content is 20 minutes in duration, while the music tracks a total of 23 minutes in duration (as shown in FIG. 8E4). In FIG. 8M1, the audio training content has reached its midpoint (e.g., approximately 10 minutes) (as in FIG. 8H). However, playback progress indicator 824AA indicates that playback of the content is approximately 25% complete. This is because playback progress indicator 824AA represents all of the audio content in the audio training. The audio content can include both audio training content and a music playlist, and in the scenario shown in FIGS. 8M1-8M3, the total runtime of all audio content is approximately 43 minutes. Similarly, in FIG. 8M2, the audio training content is nearing its end, and playback progress indicator 824AA indicates that playback of the content is approximately 50% complete; and in FIG. 8M3, the first music item in the playlist has begun, and playback progress indicator 824AA indicates that playback is approximately 60% complete.
[0277] 8N , in response to detecting input 850, electronic device 800 replaces the display of media user interface 822 with action user interface 854. Action user interface 854 includes options 852A-852C for performing respective actions based on the currently playing music item. In some embodiments, each action is performed on the currently playing music item without being performed on a different music item, and the currently playing music item and the different music item are part of the same playlist. In some embodiments, selection of option 852A favorites the currently playing music item (e.g., liking a music item may affect which music items are later suggested to the user). In some embodiments, selection of option 852B causes the currently playing music item to be added to a particular playlist (e.g., a library). In some embodiments, selection of option 852C results in the display of multiple representations corresponding to one or more music items. In some embodiments, while displaying action user interface 854, electronic device 800 detects an input and, in response, replaces the display of action user interface 854 with media user interface 822.
[0278] 8O, while displaying media user interface 822, electronic device 800 detects one or more inputs, including input 858 at input mechanism 856. In some embodiments, the input mechanism includes one or more features of input mechanism 506.
[0279] 8P, in response to detecting one or more inputs, electronic device 800 displays music user interface 860. Music user interface 860 includes representation 862 corresponding to a playlist that is not associated with workout content. While displaying music user interface 860, electronic device 800 detects input 864 at a location corresponding to representation 862.
[0280] 8Q , in response to detecting input 864, electronic device 800 displays prompt user interface 866 with instruction 868. Indication 868 indicates that proceeding to play one or more musical items from a playlist that are not associated with the workout content will end the current workout session (e.g., stop playing the currently playing audio content and stop recording one or more physical activity indicators via one or more sensors of electronic device 800). In some embodiments, electronic device 800 detects the input while displaying prompt user interface 866. In some embodiments, in response to detecting the input, and following a determination that the input corresponds to option 870, electronic device 800 continues playing the currently playing audio content without playing the one or more musical items from the playlist that are not associated with the workout content. In some embodiments, in response to detecting the input, following a determination that the input corresponds to option 872, electronic device 800 stops playing currently playing audio content, begins playing one or more music items in a playlist that are not associated with the workout content, and / or stops recording one or more physical activity indicators via one or more sensors of electronic device 800.
[0281] As described above with reference to FIG. 8K, in some embodiments, in response to determining that the end of the workout content has been reached, electronic device 800 performs audio playback of a playlist (e.g., one or more musical items (e.g., songs)) associated with the workout content (e.g., the playlist is configured to automatically play after the workout content has finished). In some embodiments, in response to determining that the end of the workout content has been reached and / or in response to determining that the end of the playlist has been reached, electronic device 800 causes the display of a summary user interface, as shown in FIG. 8Q1. In FIG. 8Q1, summary user interface 880 includes information 885 related to the user's measured physical activity during the workout (e.g., total workout time, distance walked during the workout, activity and total calories burned during the workout, total number of elevation changes, maximum and minimum elevation changes, average heart rate during the workout, average pace during the workout). Summary user interface 880 also includes visual content 882A, 882B associated with the workout. Visual content 882A, 882B may include visual content presented during the workout. For example, visual content 882A corresponds to visual content 834 of Figure 8I. Summary user interface 880 also includes a run option 884A to close summary user interface 880 and an add playlist option 884B to add a music playlist associated with the workout to a separate music application.
[0282] 8Q2, electronic device 600 displays summary user interface 886. Summary user interface 886 is substantially similar to summary user interface 880, but is displayed on electronic device 600 instead of electronic device 800. In some embodiments, electronic device 600 displays summary user interface 886 in response to determining that the end of the workout content has been reached on electronic device 600. Like summary user interface 880, summary user interface 886 includes information 887 about the user's measured physical activity during the workout and visual content items 888A, 888B associated with the workout.
[0283] 8R-8S illustrate the selection of different types of workouts (e.g., corresponding to workout suggestions 616T-616U) compared to the workout selections of FIGS. 8A-8C (e.g., corresponding to workout suggestions 616R-616S). While displaying the workout user interface 612, the electronic device 800 detects an input 874 at a location corresponding to workout suggestion 616T. As described above, workout suggestion 616T represents audio content (e.g., workout content) corresponding to a predetermined route at or near one or more physical locations (e.g., a 5-kilometer route in Hackney).
[0284] 8S, in response to detecting input 874, electronic device 800 displays a detailed user interface 876 having information about the selected workout. Detailed user interface 876 includes music item representations 878A-878D that represent one or more music items in the playlist. In some embodiments, after finishing playing the workout content (e.g., corresponding to workout suggestion 616T), electronic device 600 automatically begins playing one or more music items in the playlist (e.g., by causing an external device for playing audio to output audio).
[0285] 8E-8Q are similar to techniques that may be performed for workout content corresponding to workout suggestion 616T. For example, similar to FIG. 8I, in response to determining that a predetermined point in time has been reached during playback of audio content (e.g., corresponding to workout suggestion 616T), according to some embodiments, electronic device 800 displays visual content corresponding to the audio content of the workout. As another example, similar to FIG. 8L, electronic device 800 displays a user interface having multiple workout suggestions, including a workout suggestion corresponding to workout suggestion 616T.
[0286] 9 is a flow diagram illustrating a method for initiating audio-based training using an electronic device according to some embodiments. Method 900 is performed on an electronic device (e.g., 100, 300, 500, 600, or 800) that includes a display (e.g., 801). Some operations of method 900 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0287] As described below, method 900 provides an intuitive way to start an audio-based workout. This method reduces the cognitive burden on the user of starting an audio-based workout, thereby creating a more efficient human-machine interface. For battery-operated computing devices, allowing the user to start an audio-based workout conserves power and increases the time between battery charges.
[0288] In some embodiments, the electronic device (e.g., 100, 300, 500, 600, 800) is a computer system. The computer system is optionally in communication (e.g., wired communication, wireless communication) with a display generation component and one or more input devices. The display generation component is configured to provide visual output, such as display via a CRT display, display via an LED display, or display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. The one or more input devices are configured to receive input, such as a touch-sensitive surface that receives user input. In some embodiments, the one or more input devices are integrated with the computer system. In some embodiments, the one or more input devices are separate from the computer system. Thus, the computer system can transmit data (e.g., image data or video data) via a wired or wireless connection to an integrated or external display generation component to visually generate content (e.g., using a display device), and can receive input from the one or more input devices via a wired or wireless connection.
[0289] An electronic device (e.g., 800) displays (902) on a display (e.g., 801) a selectable user interface object (e.g., 824A, 818, affordance) for starting audio playback.
[0290] The electronic device detects (904) (e.g., via a touch-sensitive display) a user input corresponding to a selection of a selectable user interface object to initiate audio playback (e.g., 825, 820, a single user input, a single user input without intervening user input (e.g., an input detected after detecting a user input corresponding to a selectable user interface object to initiate audio playback and before causing audio playback).
[0291] In response to detecting 906 a user input corresponding to a selection of a selectable user interface object to initiate audio playback, the electronic device (e.g., 800) generates 908 a workout (e.g., physical activity performed by a user) on an audio output device in communication with the electronic device (e.g., an external device (e.g., headphones, speakers) at the electronic device).
[0292] In response to detecting 906 a user input corresponding to the selection of a selectable user interface object to initiate audio playback, the electronic device (e.g., 800) causes 912 the recording (e.g., tracking, logging, collecting) of physical activity metrics (e.g., calories, heart rate, distance traveled, and / or stairs climbed) corresponding to the workout (e.g., the physical activity metrics are recorded during playback of audio associated with the workout), where the physical activity metrics are recorded (e.g., captured) by one or more sensors monitoring the activity level of a user of the electronic device. By automatically performing two actions (e.g., causing audio playback and recording of physical activity metrics), users are enabled to track their physical activity during audio playback via a single input. Performing two actions in response to a single input improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs and reducing user error when operating / interacting with the device), as well as allowing users to use the device more quickly and efficiently, thereby reducing power usage and improving the device's battery life.
[0293] In some embodiments, the physical activity indicators are measured using one or more sensors (e.g., GPS, accelerometer, gyroscope, and / or heart rate) of the electronic device or an external device in communication with the electronic device. In some embodiments, the physical activity indicators were not recorded, or were recorded less frequently or with less precision, before (e.g., immediately before) detecting a user input (e.g., 825, 820) corresponding to selecting a selectable user interface object (e.g., 824A, 818) to start audio playback (e.g., the user's heart rate is detected multiple times per minute instead of once per minute or for a longer time threshold, or additional sensors are used to detect steps more precisely than detected before detecting a user input corresponding to selecting a selectable user interface object to start audio playback). In some embodiments, one or more sensors of the external device are enabled / activated in response to detecting a user input (e.g., 825, 820) to improve accurate measurement of the user during workouts. In some embodiments, the one or more sensors are not enabled / activated before detecting a user input (e.g., 825, 820). In some embodiments, a subset of the one or more sensors is enabled / activated based on the type of workout. In some embodiments, in accordance with determining that the workout is of a first type (e.g., exercise type), a first subset of the one or more sensors is enabled / activated based on the first type. In some embodiments, in accordance with determining that the workout is of a second type (e.g., exercise type), a second subset of the one or more sensors is enabled / activated based on the second type. Automatically enabling one or more sensors at the start of audio playback improves battery life of the device because the one or more sensors consume less power and / or battery life before audio playback begins. Enabling one or more sensors when a set of conditions is met enhances operability of the device.This in turn reduces power usage and improves the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0294] In some embodiments, the audio (910) associated with a workout (e.g., represented by 616R-616S) has a duration based on the length of time required to complete the workout (e.g., the length of time required to walk a predetermined distance (e.g., 1 mile, 3 miles, or 5 miles), the length of time required to complete the workout according to a narrator in the audio associated with the workout).
[0295] In some embodiments, the audio associated with the workout includes an audio indication configured to be output at an audio output device at a predetermined time (e.g., at the midpoint of the duration of the audio) during playback of the audio associated with the workout (e.g., as described above with respect to FIG. 8H). By outputting the audio indication, the user receives feedback regarding the current state of the device (e.g., playback of the audio file has reached the midpoint). Providing improved feedback to the user improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0296] In some embodiments, the audio associated with the training corresponds to one or more visual content items (e.g., 834) configured to be output (e.g., displayed) during playback of the audio associated with the training. In some embodiments, the one or more visual content items are displayed on the electronic device (e.g., 800) or an external device in communication with the electronic device. In some embodiments, the one or more visual content items are associated with metadata that determines when the one or more visual content items are output during playback of the audio associated with the training. For example, the one or more visual content items are configured to be output at specific points during playback.
[0297] In some embodiments, each visual content item of the one or more visual content items (e.g., 834, 882A, 882B) is configured to be output (e.g., displayed) at a respective predetermined time during playback of audio associated with the workout, including a first visual content item (e.g., 834) configured to be output at a first predetermined time during playback of audio associated with the workout (e.g., FIG. 8I). In some embodiments, the electronic device displays, via a display generation component, a workout summary user interface (e.g., 880) including one or more graphical representations (e.g., 882A, 882B) of the workout (e.g., non-textual representations, images of speakers (e.g., narrators) of the audio associated with the workout). In some embodiments, the workout summary user interface includes representations of physical activity metrics (e.g., walking route, active calories, total calories, total time, average heart rate, distance, average pace) based on the user's physical activity during the workout. In some embodiments, in response to a determination that a first visual content item was output (e.g., displayed) during playback of audio associated with a workout, the training summary user interface includes the first visual content item (e.g., 882A, 882B) (e.g., the first visual content item is displayed and / or accessible within the training summary user interface), and in response to a determination that the first visual content item was not output (e.g., displayed) during playback of audio associated with a workout (e.g., the user ends playback of audio associated with a workout before a first predetermined time associated with the first visual content item), the training summary user interface does not include the first visual content item (e.g., the first visual content item is not displayed and / or accessible within the training summary user interface).In some embodiments, the one or more visual content items include a second visual content item (e.g., different from the first visual content item) configured to be output at a second predetermined time (e.g., different from the first predetermined time) during playback of the audio associated with the training, and the method further includes, in response to a determination that the second visual content item has been output during playback of the audio associated with the training, the training summary user interface includes the second visual content item (e.g., the second visual content item is displayed and / or accessible within the training summary user interface), and in response to a determination that the second visual content item is not output (e.g., displayed) during playback of the audio associated with the training (e.g., the user finished playing the audio associated with the training before the second predetermined time associated with the second visual content item), the training summary user interface does not include the second visual content item (e.g., the second visual content item is not displayed and / or accessible within the training summary user interface). Displaying a workout summary user interface that includes one or more visual content items configured to be output during playback of audio associated with the workout provides the user with access to the visual content items presented during playback of the audio. Providing additional control of the device improves device usability, makes the user device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces device power usage and improves battery life by allowing the user to use the device more quickly and efficiently.
[0298] In some embodiments, while causing audio playback of the audio associated with the training, the electronic device (e.g., 800) displays one or more visual content items (e.g., 834) via a display generation component. In some embodiments, the electronic device generates a tactile output (e.g., several individual tactile outputs of a sequence), where the tactile output is provided simultaneously with the display of the one or more visual content items (e.g., FIG. 8I). In some embodiments, the tactile output is output by the computer system or an external device in communication with the computer system. In some embodiments, the tactile output is associated with metadata that determines when the tactile output is output during playback of the audio associated with the training. For example, the tactile output is configured to be output at a specific point during playback (e.g., the tactile output is configured to be output each time a visual content item of the one or more visual content items is output). In some embodiments, the one or more visual content items are presented full-screen on the computer system (e.g., displayed on the computer system without additional content) or presented full-screen on an external device in communication with the computer system. Generating a tactile output and providing the tactile output concurrently with the display of one or more visual content items provides feedback to the user regarding the current state of the device (e.g., informing the user that the device is displaying a visual content item). Providing improved feedback to the user improves usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate input when operating / interacting with the device and reducing user errors), and also reduces power usage and improves the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0299] In some embodiments, after the workout is completed (in some embodiments, after the audio associated with the workout is completed), the electronic device (e.g., 800), via a display generation component, displays a first workout summary user interface (e.g., 880 in FIG. 8Q1 ) including one or more visual content items (e.g., 882A, 882B) configured to be output during playback of the audio associated with the workout. In some embodiments, the workout summary user interface also includes physical activity metrics corresponding to the workout. Displaying the workout summary user interface including one or more visual content items configured to be output during playback of the audio associated with the workout provides the user with access to the visual content items presented during playback of the audio. Providing additional control of the device improves device usability and makes the user device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0300] In some embodiments, the audio associated with the workout corresponds to a predefined list of audio items (e.g., a music playlist) that includes a first audio item (e.g., a music file, represented by 824D in FIG. 8K) and a second audio item (e.g., a music file). In some embodiments, a speaker (e.g., a narrator) of the audio associated with the workout generated the predefined list of audio items (e.g., selected the audio items in the playlist).
[0301] In some embodiments, in accordance with determining that the audio playback of the audio associated with the workout is completed, the electronic device causes, at the audio output device, audio playback of a predefined list of audio items including the first audio item (e.g., represented by 824D in FIG. 8K) and the second audio item (e.g., a music playlist). In some embodiments, the predefined list of audio items (e.g., a music playlist) is played in response to the audio associated with the workout completion.
[0302] In some embodiments, in response to detecting a user input (e.g., 820) corresponding to a selection of a selectable user interface object (e.g., 818) to initiate audio playback, the electronic device (e.g., 800) displays on a display (e.g., 801) a first set of playback controls (e.g., 824A-824C, one or more selectable user interface objects) for modifying audio playback of the audio associated with the workout. In some embodiments, in response to detecting a selection of a representation (e.g., 818) of audio content, the electronic device displays the first set of playback controls for modifying audio playback of the audio associated with the workout. In some embodiments, in response to (e.g., after) causing the audio playback of the default list of audio items, the electronic device displays a second set of playback controls on the display (e.g., the skip back button 824B changes to a previous track button (displayed in the same location) as shown in the transition from FIGS. 8J-8K); the skip forward button 824C changes to a next track button (displayed in the same location) as shown in the transition from FIGS. 8J-8K), changing the audio playback of the default list of audio items, where the second set of playback controls differ from the first set of playback controls. In some embodiments, the electronic device replaces the display of the first set of playback controls with the second set of playback controls.
[0303] In some embodiments, after completing audio playback of the audio associated with a workout, the electronic device (e.g., 800) causes audio playback of a first audio item (e.g., represented by 824D in FIG. 8K) of a predefined list of audio items at an audio output device. In some embodiments, after (e.g., during) causing the audio playback of the first audio item, the electronic device detects one or more user inputs corresponding to the first audio item (e.g., inputs at 848 at locations corresponding to 842A, 842B, or 842C). In some embodiments, in response to detecting one or more user inputs corresponding to the first audio item, the electronic device performs an action on the first audio item (e.g., add to library (e.g., 852B), save, skip, play / pause) based on the detected one or more user inputs without performing an action on the second audio item.
[0304] In some embodiments, in response to detecting a user input corresponding to a selection of a selectable user interface object to initiate audio playback, the electronic device, via a display generation component, displays a training user interface (e.g., 822) including a playback progress indicator (e.g., 824AA), which visually indicates the progress of playback of audio content, including audio associated with the workout (e.g., as shown in FIG. 8E4) and a predefined list of audio items (e.g., a music playlist) (e.g., a music playlist that plays in response to audio associated with the completion of the workout). Displaying the training user interface including the playback progress indicator provides the user with feedback regarding the current state of the device (e.g., the current state of playback of the audio content). Providing improved feedback to the user improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0305] In some embodiments, in response to determining (914) that a detected user input (e.g., input at 864 in a location corresponding to option 872) resulted in audio playback of audio not associated with a workout, the electronic device stops (916) the audio playback of the audio associated with the workout to be stopped. In some embodiments, the detected user input corresponds to selecting a song, playlist, or music file in a music application. In some embodiments, in response to determining that a detected user input results in audio playback of audio not associated with a workout, the electronic device stops recording of physical activity indicators corresponding to the workout (e.g., disabling one or more sensors for recording the user's physical activity during the workout). By automatically causing recording of physical activity indicators to occur when playback of non-workout audio occurs, disabling one or more sensors for recording physical activity indicators improves device battery life. Disabling one or more sensors when a set of conditions is met enhances device operability. This further reduces power usage and improves device battery life by allowing a user to use the device more quickly and efficiently.
[0306] In some embodiments, a predetermined number (e.g., 3, 5, 7) of audio items of a first type (e.g., represented by 842A-842C) are stored on the electronic device, and the audio associated with a workout is of the first type (e.g., an audio program for an interval to follow when walking a predetermined distance (e.g., 1 mile, 3 miles, or 5 miles)). In some embodiments, the electronic device (e.g., smartwatch 800) detects a request to add (e.g., store) the predetermined number of audio items of the first type to the electronic device. In some embodiments, in response to detecting the request to add audio of the first type, the electronic device downloads (e.g., stores) the predetermined number of audio items of the first type to be stored on the electronic device. In some embodiments, an external device (e.g., smartphone 600) in communication with the electronic device (e.g., smartwatch) initiates the request to add the predetermined number of audio items to the electronic device.
[0307] In some embodiments, audio (e.g., music, voice) associated with a workout (e.g., represented by 616T-616U) corresponds to a predefined set of one or more physical locations (e.g., associated with a running route in physical locations (e.g., cities, landmarks)). In some embodiments, the audio associated with a workout corresponds to one or more visual content items (e.g., a defined route on a map, places of importance (e.g., landmarks)) configured to be output (e.g., displayed) during playback of the audio associated with the workout.
[0308] In some embodiments, after the workout is completed (in some embodiments, after the audio associated with the workout is completed), the electronic device (e.g., 800), via a display generation component, displays a second workout summary user interface (e.g., 880, 886) including one or more graphical representations (e.g., FIGS. 8Q1, 8Q2) of the workout (e.g., a non-textual representation, an image of a speaker (e.g., a narrator) of the audio associated with the workout). In some embodiments, the second workout summary user interface includes physical activity metrics (e.g., walking route, active calories, total calories, total time, average heart rate, distance, average pace) based on the user's physical activity during the workout. Displaying the workout summary user interface including one or more graphical representations of the workout provides the user with feedback regarding their physical activity. Providing improved feedback to the user improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0309] In some embodiments, the computer system is in communication with (e.g., paired with) a first external device (e.g., 600 in FIG. 8C ) (e.g., a smartphone), and the first external device is configured to output (e.g., display, cause a display generation component to display) a selectable user interface object (e.g., 812A) for adding a workout (e.g., adding a workout to the computer system (e.g., downloading the workout to the computer system and / or a different computer system)). In some embodiments, in response to determining that an input from the first external device (e.g., at the first external device, at one or more input devices in communication with the first external device) corresponding to the selection of the selectable user interface object (e.g., 812A) for adding a workout is detected, the electronic device initiates a process for adding the workout to the computer system (e.g., in response to determining that a sequence of one or more user inputs (e.g., 812B) is detected by the first external device), the electronic device initiates a process for downloading the workout to the computer system. In some embodiments, adding the workout to the computer system includes downloading and / or storing audio associated with the workout to the computer system. Automatically adding training to a computer system in response to a determination that a sequence of one or more user inputs has been detected by a first external device allows a ...
Claims
1. In an electronic device having a display, displaying on the display a selectable user interface object for displaying training suggestions; detecting a user input corresponding to the selectable user interface object for displaying workout suggestions; in response to detecting an input from the user corresponding to the selectable user interface object for displaying workout suggestions, on the display, a plurality of selectable options including a first option, when selected, that causes the electronic device to initiate a process for displaying workout suggestions that share a first common training parameter; and a second option, when selected, that causes the electronic device to initiate a process for displaying workout suggestions that share a second common training parameter; a plurality of workout suggestions selected for display based on a workout history of a user of the electronic device, the plurality of workout suggestions including a first workout suggestion selected for inclusion in the plurality of workout suggestions based on a first workout suggestion sharing one or more characteristics with a workout most recently completed by the user of the electronic device; displaying a user interface for displaying training suggestions, including simultaneously displaying A method comprising:
2. The plurality of training suggestions, The method of claim 1 , further comprising: a first training suggestion corresponding to a first subset of a collection of completed trainings.
3. the first subset of the collection of completed workouts includes at least one workout of a predefined sequence of workouts; The method of claim 2 , wherein the first workout suggestion corresponds to a next uncompleted workout in the predetermined series of workouts.
4. the first subset of the collection of completed workouts excludes at least one workout in a predefined sequence of workouts; The method of claim 2 or 3, wherein the first workout suggestion corresponds to a most recently completed workout.
5. detecting a user input corresponding to the first workout suggestion corresponding to the next workout that is not completed in the predetermined series of workouts; in response to detecting an input from the user corresponding to the first workout suggestion corresponding to the next workout that is not completed in the predetermined series of workouts; displaying one or more workout suggestions in the predefined sequence of workouts; in accordance with a determination that at least one of the predefined series of workouts is completed, visually highlighting a workout suggestion of the one or more workout suggestions in the predefined series of workouts without visually highlighting a workout suggestion that differs from the one or more workout suggestions in the predefined series of workouts; The method of claim 3 further comprising:
6. The plurality of training suggestions, The method of claim 2 , further comprising: second training suggestions corresponding to a second subset of the collection of completed workouts, the first subset being different from the second subset.
7. detecting a first scrolling gesture while displaying the plurality of selectable options and the plurality of workout suggestions; displaying third workout suggestions on the display after detecting the first scroll gesture, the third workout suggestions corresponding to a third subset of a collection of completed workouts; and The method of claim 1 , further comprising:
8. detecting a second scroll gesture while displaying the plurality of selectable options and the plurality of workout suggestions; displaying fourth workout suggestions on the display after detecting the second scroll gesture, the fourth workout suggestions corresponding to a fourth subset of a collection of completed workouts; and The method of claim 2 , further comprising:
9. The method of claim 1 , wherein the plurality of workout suggestions includes workout suggestions for workouts corresponding to a predefined list of audio items.
10. The method of claim 1 , wherein the plurality of workout suggestions includes workout suggestions for workouts accompanied by metadata that cause prompts to be issued during playback of the workout.
11. 11. The method of claim 1, wherein the plurality of workout suggestions includes a workout suggestion for a workout that, when selected for playback, causes recording of one or more physical activity indicators at an external device.
12. The method of claim 1 , wherein the plurality of workout suggestions includes workout suggestions having a different physical activity type than a physical activity type of a completed workout.
13. detecting one or more inputs while displaying the plurality of selectable options and the plurality of workout suggestions; in response to detecting the one or more inputs, ceasing display of the plurality of selectable options and the plurality of workout suggestions; and displaying on a display a third option, when selected, to configure the electronic device to display workout suggestions sharing a third common training parameter, and a fourth option, when selected, to configure the electronic device to display workout suggestions sharing a fourth common training parameter; The method of claim 1 , further comprising:
14. detecting a selection of the third option; and modifying one or more visual characteristics of the fourth option in response to detecting a selection of the third option; and The method of claim 13 further comprising:
15. detecting a selection of the third option; and after detecting a selection of the third option, displaying one or more workout suggestions based on the detected selection of the third option, the one or more workout suggestions including a selectable user interface object indicating that the third option has been selected; and detecting a user input corresponding to the selectable user interface object indicating that the third option has been selected while displaying the one or more workout suggestions based on the detected selection of the third option; in response to detecting the user's input corresponding to the selectable user interface object indicating that the third option was selected, displaying on the display one or more workout suggestions that were not displayed prior to detecting the user's input corresponding to the selectable user interface object indicating that the third option was selected; The method of claim 13 further comprising:
16. 16. The method of claim 1, further comprising displaying a fifth workout suggestion, the fifth workout suggestion being selected for display based on a frequency with which the fifth workout suggestion is selected by a group of users.
17. 17. The method of claim 1, further comprising, pursuant to determining that the training corresponding to a sixth training suggestion is completed, displaying on the display an indication that the training corresponding to the sixth training suggestion is completed.
18. 20. The method of claim 17, wherein the indication that the workout corresponding to the sixth training suggestion is completed is a visual checkmark superimposed on the sixth training suggestion.
19. Detecting a user input corresponding to a seventh training suggestion; in response to detecting the user's input corresponding to the seventh training suggestion, displaying on the display a detailed user interface for the seventh training suggestion, the detailed user interface including one or more training characteristics selected from the group consisting of equipment, duration, music genre, exercise type, and a number of times a workout corresponding to the seventh training suggestion has been completed; Further comprising: The method of claim 1 , wherein the one or more training characteristics are associated with the training that corresponds to the seventh training suggestion.
20. Detecting a user input corresponding to an eighth training suggestion; and in response to detecting a user input corresponding to the eighth training suggestion, displaying on the display an audio selectable user interface object that, when selected, initiates a process for playing one or more audio items that are part of a collection of predefined audio items, the collection of predefined audio items being associated with a workout corresponding to the eighth training suggestion; detecting a user input corresponding to the audio selectable user interface object; in response to detecting the user's input corresponding to the audio selectable user interface object, launching a music application having a save option that, when selected, initiates a process for saving the default collection of audio items to a library of the music application; 20. The method of any one of claims 1 to 19, further comprising:
21. causing an external device to display ninth workout suggestions, the ninth workout suggestions being based on one or more physical activity indicators of the user of the electronic device; 21. The method of any one of claims 1 to 20, further comprising:
22. displaying a fifth option within the user interface for displaying workout suggestions that, when selected, causes the electronic device to initiate a process for playing new content introduction media corresponding to a plurality of new workouts made available to the user of the electronic device within a predetermined period of time; 22. The method of any one of claims 1 to 21, further comprising:
23. Detecting a user input corresponding to a tenth training suggestion; and In response to detecting an input from the user corresponding to the tenth training suggestion, on the display: a first audio selectable user-interface object that, when selected, initiates a process for playing a plurality of audio items that are part of a predefined collection of audio items, the predefined collection of audio items being associated with a workout corresponding to the tenth workout suggestion; and a second audio selectable user interface object that, when selected, initiates a process for playing a first audio item of the plurality of audio items; a third audio selectable user interface object that, when selected, initiates a process for causing playback of a second audio item of the plurality of audio items, the second audio item being different from the first audio item; and 23. The method of any one of claims 1 to 22, further comprising:
24. The first option, when selected, causes the electronic device to initiate a process of displaying workout suggestions that share a first common workout type, the method comprising: detecting a user input corresponding to the first option; in response to detecting an input from the user corresponding to the first option; one or more workout suggestions sharing the first common workout type; a training type introduction object that, when selected, causes the electronic device to initiate a process for playing a training type introduction video corresponding to the first common training type, the training type introduction video identifying one or more pieces of training equipment required for the first common training type; and and 24. The method of any one of claims 1 to 23, further comprising:
25. displaying a sixth option within the user interface for displaying workout suggestions, which when selected causes the electronic device to initiate a process for displaying workout suggestions for a plurality of workouts in a predefined sequence of workouts; detecting a user input corresponding to the sixth option; in response to detecting an input from the user corresponding to the sixth option, training suggestions for the plurality of workouts in the predetermined sequence of workouts; a training series introduction object that, when selected, causes the electronic device to initiate a process for playing training series introduction media corresponding to the predefined series of workouts; and 25. The method of any one of claims 1 to 24, further comprising:
26. A computer program causing a computer to carry out the method according to any one of claims 1 to 25.
27. A memory for storing a computer program according to claim 26; one or more processors capable of executing the computer programs stored in the memory; A computer system comprising:
28. A computer system comprising means for causing the computer to carry out the method of any one of claims 1 to 25.
Citation Information
Patent Citations
Exercising aid control method and exercising aid apparatus
JP2003126291A
System and method for health care
JP2003216739A
Smart exercise apparatus
KR1020190081500A