User Interface of Training Content
The electronic device addresses inefficiencies in training content navigation by using user interface objects and historical data to streamline content display and audio playback, improving user efficiency and conserving energy.
Patent Information
- Application Number
- JP2025033114
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-09-21
- Filing Date
- 2025-03-03
- Publication Date
- 2025-07-28
- Estimated Expiration
- 2040-09-24
AI Technical Summary
Existing techniques for navigating and outputting training content on electronic devices are cumbersome, inefficient, and time-consuming, particularly in battery-operated devices, leading to wasted user time and energy.
An electronic device with a display that includes selectable user interface objects for displaying training suggestions, detects user input, and displays training content based on shared parameters and user history, optionally with simultaneous audio playback and physical activity monitoring.
The method enhances user efficiency and reduces power consumption by providing a faster, more intuitive interface for navigating and outputting training content.
Smart Images

Figure 0007714146000001 
Figure 0007714146000002 
Figure 0007714146000003
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to computer user interfaces, and more particularly to techniques for navigating and outputting training content.
Background Art
[0002] Due to the wider use of electronic devices such as smartphones, their functions have grown beyond voice calls and text messages. Providing an efficient way to implement using various functions on these electronic devices can be complex and time-consuming.
Summary of the Invention
[0003] As used herein, training content refers to audio content and / or video content that guides a user to perform a physical activity. However, some techniques for navigating and outputting training content using an electronic device are generally cumbersome and inefficient. For example, in some existing techniques, a complex and time-consuming user interface that may involve multiple key presses or keystrokes is used. Existing techniques require more time than necessary, wasting the user's time and the device's energy. The latter problem is particularly significant in battery-operated devices. As another example, some existing techniques for adjusting the display of training content between multiple devices are not intuitive and thus lead to incorrect inputs or require multiple key presses or keystrokes. Existing techniques require more time than necessary, wasting the user's time and the device's energy. The latter problem is particularly significant in battery-operated devices.
[0004] Accordingly, the present technology provides an electronic device with a faster and more efficient method and interface for navigating and outputting training content. Such a method and interface optionally complement or replace other methods for navigating and outputting training content. Such a method and interface reduce the cognitive burden on the user and create a more efficient human-machine interface. In the case of a battery-operated computing device, such a method and interface conserve power and lengthen the battery charging intervals.
[0005] In some embodiments, the method includes, in an electronic device having a display, 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 user input corresponding to the selectable user interface objects for displaying training suggestions, when selected, causing the electronic device to start a process of displaying a training suggestion that shares a first common training parameter, a first option, and, when selected, causing the electronic device to start a process for displaying a training suggestion that shares a second common training parameter, a second option, a plurality of selectable options, and a plurality of training suggestions selected for display based on the training history of the user of the electronic device, and simultaneously displaying a user interface for displaying the training suggestions.
[0006] In some embodiments, the non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device comprising a display, the one or more programs including displaying, on the display, selectable user interface objects for displaying training proposals, detecting user input corresponding to the selectable user interface objects for displaying training proposals, and, in response to detecting user input corresponding to the selectable user interface objects for displaying training proposals, when selected, causing the electronic device to start a process of displaying a training proposal that shares a first common training parameter, and when selected, causing the electronic device to start a process for displaying a training proposal that shares a second common training parameter, a plurality of selectable options including the above, and a plurality of training proposals selected for display based on the training history of the user of the electronic device, and displaying, on the user interface for displaying the training proposals, the plurality of training proposals and the plurality of selectable options simultaneously, and including instructions for.
[0007] In some embodiments, the temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display, and the one or more programs cause the display to display selectable user interface objects for displaying training proposals, detect user input corresponding to the selectable user interface objects for displaying training proposals, and, in response to detecting user input corresponding to the selectable user interface objects for displaying training proposals, when selected, cause the electronic device to start a process of displaying a training proposal that shares a first common training parameter, a first option, and when selected, cause the electronic device to start a process for displaying a training proposal that shares a second common training parameter, a second option, a plurality of selectable options including, and based on the training history of the user of the electronic device, a plurality of training proposals are selected for display, and simultaneously display a user interface for displaying a training proposal including displaying a plurality of training proposals.
[0008] In some embodiments, an electronic device includes 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 including instructions to display, on the display, selectable user interface objects for presenting training suggestions, detect user input corresponding to the selectable user interface objects for presenting training suggestions, and, in response to detecting user input corresponding to the selectable user interface objects for presenting training suggestions, start, if selected, a process for presenting, on the electronic device, a training suggestion sharing a first common training parameter, and start, if selected, a process for presenting, on the electronic device, a training suggestion sharing a second common training parameter, the one or more programs further including instructions to simultaneously display a plurality of selectable options including the first and second options, and a plurality of training suggestions selected for presentation based on a training history of a user of the electronic device, the instructions further including instructions to display a user interface for presenting training suggestions.
[0009] In some embodiments, an electronic device includes a display, means for displaying a selectable user interface object on the display for presenting a training proposal, means for detecting a user input corresponding to the selectable user interface object for presenting the training proposal, and, in response to detecting the user input corresponding to the selectable user interface object for presenting the training proposal, a first option that, when selected, causes the electronic device to initiate a process for presenting a training proposal that shares a first common training parameter, and a second option that, when selected, causes the electronic device to initiate a process for presenting a training proposal that shares a second common training parameter, a plurality of selectable options including the above, and a plurality of training proposals selected for display based on the training history of the user of the electronic device, and means for displaying a user interface for presenting the training proposal, including simultaneously displaying the above.
[0010] In some embodiments, a method includes, in an electronic device including a display, displaying a selectable user interface object on the display for initiating audio playback, detecting a user input corresponding to the selection of the selectable user interface object for initiating audio playback, and, in response to detecting the user input corresponding to the selection of the selectable user interface object for initiating audio playback, causing an audio output device in communication with the electronic device to play audio associated with training, and causing a physical activity metric corresponding to the training to be recorded, where the physical activity metric is recorded by one or more sensors that monitor the activity level of the user of the electronic device.
[0011] In some embodiments, the 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, the selectable user interface object for starting audio playback; detecting a user input corresponding to a selection of the selectable user interface object for starting audio playback; in response to detecting the user input corresponding to the selection of the selectable user interface object for starting audio playback, causing an audio output device in communication with the electronic device to audio-play audio associated with training; and causing a body activity metric corresponding to the training to be recorded, the body activity metric being recorded by one or more sensors that monitor an activity level of a user of the electronic device.
[0012] In some embodiments, the 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, the selectable user interface object for starting audio playback; detecting a user input corresponding to a selection of the selectable user interface object for starting audio playback; in response to detecting the user input corresponding to the selection of the selectable user interface object for starting audio playback, causing an audio output device in communication with the electronic device to audio-play audio associated with training; and causing a body activity metric corresponding to the training to be recorded, the body activity metric 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 includes 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 include instructions for: displaying, on the display, a selectable user interface object for starting audio playback; detecting a user input corresponding to a selection of the selectable user interface object for starting audio playback; in response to detecting the user input corresponding to the selection of the selectable user interface object for starting audio playback, causing an audio output device in communication with the electronic device to audio-play audio associated with training; and recording a physical activity metric corresponding to the training, where the physical activity metric is recorded by one or more sensors that monitor the activity level of the 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 starting audio playback, means for detecting a user input corresponding to a selection of the selectable user interface object for starting audio playback, and means for, in response to detecting the user input corresponding to the selection of the selectable user interface object for starting audio playback, causing an audio output device in communication with the electronic device to audio-play audio associated with training, recording a physical activity metric corresponding to the training, where the physical activity metric is recorded by one or more sensors that monitor the activity level of the user of the electronic device.
[0015] In some embodiments, the method is to simultaneously display video content and one or more representations of physical activity indicators corresponding to a user via a display device in an electronic device, wherein the one or more representations of the physical activity indicators correspond to a predetermined length of time including a period before the playback of the content, and the one or more representations of the physical activity indicators are superimposed on the video content, and while continuing to display the video content, receive activity data based on the user's physical activity during the display of the video content, and in response to receiving the activity data, update the display of the one or more representations of the physical activity indicators based on the received activity data.
[0016] In some embodiments, the 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 video content and one or more representations of physical activity indicators corresponding to a user via a display device, wherein the one or more representations of the physical activity indicators correspond to a predetermined length of time including a period before the playback of the content, and the one or more representations of the physical activity indicators are superimposed on the video content, and while continuing to display the video content, receiving activity data based on the user's physical activity during the display of 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.
[0017] In some embodiments, the temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device, and the one or more programs cause, via a display device, video content and one or more representations of physical activity metrics corresponding to a user to be simultaneously displayed, wherein the one or more representations of the physical activity metrics correspond to a predetermined length of time including a period before the playback of the content, the one or more representations of the physical activity metrics are superimposed on the video content, receiving activity data based on the user's physical activity during the display of the video content while the display of the video content is continuing, and updating the display of the one or more representations of the physical activity metrics based on the received activity data in response to receiving the 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, and the one or more programs cause, via a display device, video content and one or more representations of physical activity metrics corresponding to a user to be simultaneously displayed, wherein the one or more representations of the physical activity metrics correspond to a predetermined length of time including a period before the playback of the content, the one or more representations of the physical activity metrics are superimposed on the video content, receiving activity data based on the user's physical activity during the display of the video content while the display of the video content is continuing, and updating the display of the one or more representations of the physical activity metrics based on the received activity data in response to receiving the activity data.
[0019] In some embodiments, the electronic device is a means for simultaneously displaying, via a display device, video content and one or more representations of physical activity metrics corresponding to a user, wherein the one or more representations of physical activity metrics correspond to a predetermined length of time including a period before the playback of the content, and the one or more representations of physical activity metrics are superimposed on the video content; and while the display of the video content is being continued, receiving activity data based on the user's physical activity during the display of the video content, and in response to receiving the activity data, updating the display of the one or more representations of physical activity metrics based on the received activity data.
[0020] In some embodiments, the method comprises, in an electronic device, simultaneously displaying, via a display device, video content, a training intensity representation that is a physical activity metric related to a user of the electronic device corresponding to a first playback position of the video content, and a training intensity representation having visual characteristics based on a comparison between the physical activity metric related to the user of the electronic device corresponding to the first playback position of the video content and the physical activity metrics for a group of users who participated in training while viewing the video content corresponding to the first playback position of the video content; after the video has advanced from the first playback position to the second playback position, receiving activity data corresponding to the physical activity metric of the user; and in response to receiving the activity data, via the display device, displaying a training intensity representation based on the received activity data and related to the visual characteristics of the training intensity representation that has changed based on a comparison between the physical activity metric related to the user of the electronic device corresponding to the second playback position of the video content and the physical activity metrics for the group of users corresponding to the second playback position of the video content.
[0021] In some embodiments, the non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device, and the one or more programs, via a display device, simultaneously display video content, a training intensity representation that is a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content, and a training intensity representation having a visual characteristic based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the first playback position of the video content and the physical activity indicator for a group of users who participated in training while watching the video content corresponding to the first playback position of the video content; receive activity data corresponding to the physical activity indicator of the user after the video has advanced from the first playback position to the second playback position; and in response to receiving the activity data, via the display device, display a training intensity representation related to the visual characteristic of the training intensity representation that has 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, the 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 being, via a display device, video content, a training intensity representation, a physical activity indicator for a user of the electronic device corresponding to a first playback position of the video content, and a visual characteristic based on a comparison between the physical activity indicator for the user of the electronic device corresponding to the first playback position of the video content and the physical activity indicator for a group of users who participated in training while viewing the video content corresponding to the first playback position of the video content, and simultaneously displaying the training intensity representation having the visual characteristic, receiving activity data corresponding to the physical activity indicator of the user after the video has advanced from the first playback position to the second playback position, and, in response to receiving the activity data, via the display device, based on the received activity data and also 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, displaying a training intensity representation regarding the visual characteristic of the training intensity representation that has changed.
[0023] In some embodiments, the electronic device includes 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 cause the electronic device to simultaneously display, via a display device, video content and a training intensity representation having visual characteristics based on a comparison between a physical activity indicator related to a user of the electronic device corresponding to a first playback position of the video content and a physical activity indicator related to a group of users who participated in training while watching the video content corresponding to the first playback position of the video content. After the video advances from the first playback position to the second playback position, receive activity data corresponding to the user's physical activity indicator, and in response to receiving the activity data, via the display device, based on the received activity data and also based on a comparison between a physical activity indicator related to a user of the electronic device corresponding to the second playback position of the video content and a physical activity indicator related to a group of users corresponding to the second playback position of the video content, display a training intensity representation related to visual characteristics of the training intensity representation that has changed.
[0024] In some embodiments, the electronic device simultaneously displays, via a display device, video content, a training intensity representation, a physical activity metric for the user of the electronic device corresponding to a first playback position of the video content, and a visual characteristic based on a comparison between the physical activity metric for the user group that participated in training while viewing the video content corresponding to the first playback position of the video content and the training intensity representation; means for receiving activity data corresponding to the physical activity metric of the user after the video has advanced from the first playback position to the second playback position; and means for displaying, via the display device, a training intensity representation related to a visual characteristic of the training intensity representation that has changed based on the received activity data and based on a comparison between the physical activity metric for the user of the electronic device corresponding to the second playback position of the video content and the physical activity metric for the user group corresponding to the second playback position of the video content, in response to receiving the activity data.
[0025] In some embodiments, the method is an electronic device comprising a display, wherein the electronic device is communicating with a first external device and a second external device. In the electronic device, displaying a user interface on the display of the electronic device, the user interface being a user interface corresponding to video content and including a first selectable user interface object for enabling display of an activity session user interface associated with video content on a display device communicating with the first external device; detecting a first sequence of inputs of one or more users, including selection of the first selectable user interface object; in response to detecting the first sequence of inputs of one or more users, including 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; while the display device is displaying the first graphical user interface associated with the activity session, causing a display device communicating with the second external device to display a second graphical user interface associated with the start of the activity session and different from the first graphical user interface, and causing a selection input directed to a portion of the second graphical user interface to cause the display device communicating with the first external device to display an activity session user interface associated with the video content.
[0026] In some embodiments, the non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including a display, and the one or more programs cause the electronic device to display, 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 video content on a display device communicating with a first external device, the electronic device communicating with a first external device and a second external device, detect a first sequence of inputs of one or more users including selection of the first selectable user interface object, in response to detecting the first sequence of inputs of one or more users including selection of the first selectable user interface object, cause a display device communicating with the first external device to display a first graphical user interface associated with the activity session, while the display device is displaying the first graphical user interface associated with the activity session, cause a display device communicating with the second external device to display a second graphical user interface associated with the start of the activity session and different from the first graphical user interface, and in response to a selection input directed to a portion of the second graphical user interface, cause the display device communicating with the first external device to display an activity session user interface associated with the video content, and include instructions for the above.
[0027] In some embodiments, the 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, and the one or more programs cause the electronic device to display, on the 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 video content on a display device communicating with a first external device, the electronic device communicating with a first external device and a second external device, detecting a first sequence of one or more users' inputs including selection of the first selectable user interface object, in response to detecting the first sequence of one or more users' inputs including selection of the first selectable user interface object, causing the display device communicating with the first external device to display a first graphical user interface associated with the activity session, while the display device is displaying the first graphical user interface associated with the activity session, causing the display device communicating with the second external device to display a second graphical user interface associated with the start of the activity session and different from the first graphical user interface, and causing a selection input directed to a portion of the second graphical user interface to cause the display device communicating with the first external device to display an activity session user interface associated with the video content.
[0028] In some embodiments, an electronic device includes 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 causing the electronic device to display, 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 active session user interface associated with video content on a display device communicating with a first external device, the electronic device communicating with a 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 the first sequence of one or more user inputs including selection of the first selectable user interface object, causing the display device communicating with the first external device to display a first graphical user interface associated with the active session, while the display device is displaying the first graphical user interface associated with the active session, causing the display device communicating with the second external device to display a second graphical user interface associated with the start of the active session and different from the first graphical user interface, and the selection input directed to a portion of the second graphical user interface includes an instruction for causing the display device communicating with the first external device to display an active session user interface associated with video content.
[0029] In some embodiments, the electronic device includes a display and means for displaying a user interface on the display of the electronic device, the user interface being a user interface corresponding to video content and including a first selectable user interface object that enables the display of an activity session user interface associated with the video content on a display device communicating with a first external device. The electronic device further includes means for communicating with a first external device and a second external device, means for detecting a first sequence of inputs from one or more users including the selection of the first selectable user interface object, means for causing a display device communicating 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 inputs from one or more users including the selection of the first selectable user interface object, and means for causing the display device communicating with the second external device to display a second graphical user interface associated with the start of the activity session and different from the first graphical user interface while the display device is displaying the first graphical user interface associated with the activity session, and for causing the electronic device communicating with the first external device to display an activity session user interface associated with the video content in response to a selection input directed to a portion of the second graphical user interface.
[0030] In some embodiments, the method is to cause a computer system in communication with a display generation component and one or more input devices to display a user interface via the display generation component, the user interface including a plurality of training proposals displayed in a first region of the user interface and one or more filtering options for filtering training proposals displayed simultaneously with the plurality of training proposals, and to detect, via the one or more input devices, a first user input directed to a first filtering option among the one or more filtering options, and 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, to stop displaying at least a portion of the plurality of training proposals within the first region of the user interface such that the first region of the user interface includes a first subset of training proposals from the plurality of training proposals associated with the first filtering option and does not include training proposals not associated with the first filtering option, and while the first subset of training proposals is displayed within the first region of the user interface, to detect, via the one or more input devices, a second user input corresponding to navigation to a first training proposal of the first subset of training proposals, and in response to detecting the second user input, to cause, via the display generation component, a visual indication that the input is directed to the first training proposal to be displayed while the display of the first subset of training proposals is maintained within the first region of the user interface.
[0031] In some embodiments, the 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 cause, via the display generation component, a user interface to be displayed, where the user interface includes a plurality of training proposals displayed in a first region of the user interface and one or more filtering options for filtering the training proposals, which are displayed simultaneously with the plurality of training proposals. The one or more programs further cause, via one or more input devices, detection of a first user input directed to a first filtering option among the one or more filtering options, and 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, to stop displaying at least a portion of the plurality of training proposals within the first region of the user interface, such that the first region of the user interface includes a first subset of training proposals from the plurality of training proposals associated with the first filtering option and does not include training proposals not associated with the first filtering option. While the first subset of training proposals is displayed within the first region of the user interface, the one or more programs further cause, via one or more input devices, detection of a second user input corresponding to navigation to a first training proposal of the first subset of training proposals, and in response to detecting the second user input, to cause, via the display generation component, a visual indication that the input is directed to the first training proposal to be displayed while the display of the first subset of training proposals is maintained within the first region of the user interface.
[0032] In some embodiments, the 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, a user interface to be displayed, 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, the one or more filtering options being 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; ceasing to display at least a portion of the plurality of training suggestions within 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, 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, via the 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 within the first region of the user interface; and causing, in response to detecting the second user input and via the display generation component, a visual indication that the input is directed to the first training suggestion to be displayed 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 that communicate with a display generation component and one or more input devices, and a memory that stores one or more programs configured to be executed by the one or more processors. The one or more programs cause the display generation component to display a user interface via the display generation component, where the user interface includes a plurality of training proposals displayed in a first region of the user interface and one or more filtering options for filtering training proposals displayed simultaneously with the plurality of training proposals. The one or more programs further cause the computer system to detect, 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 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, stop displaying at least a portion of the plurality of training proposals within the first region of the user interface, such that the first region of the user interface includes a first subset of training proposals from the plurality of training proposals associated with the first filtering option and does not include training proposals not associated with the first filtering option. While the first subset of training proposals is displayed within the first region of the user interface, the one or more programs further cause the computer system to detect, via the one or more input devices, a second user input corresponding to navigation to a first training proposal of the first subset of training proposals, and in response to detecting the second user input, cause the display generation component to display a visual indication that the input is directed to the first training proposal while the display of the first subset of training proposals is maintained within the first region of the user interface.
[0034] In some embodiments, a computer system is means for displaying a user interface via a display generation component, the user interface including a plurality of training proposals displayed in a first region of the user interface and one or more filtering options for filtering training proposals that are displayed concurrently with the plurality of training proposals; 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; means for stopping displaying at least a portion of the plurality of training proposals within the first region of the user interface and causing the first region of the user interface to include a first subset of training proposals from the plurality of training proposals associated with the first filtering option and not to include training proposals not associated with the first filtering option, 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; means for detecting, via one or more input devices, a second user input corresponding to navigation to a first training proposal of the first subset of training proposals while the first subset of training proposals is displayed within the first region of the user interface; and means for causing, via the display generation component, a visual indication that the input is directed to the first training proposal to be displayed while the display of the first subset of training proposals is maintained within the first region of the user interface in response to detecting the second user input.
[0035] In some embodiments, the method is in a computer system that communicates with a display generation component and one or more input devices, detecting 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, starting, via the display generation component, a process of displaying a first training proposed user interface according to a determination that the computer system meets a proximity criterion for a single external electronic device of a first type, wherein the first training proposed user interface displays one or more training proposals associated with the single external electronic device, starting, via the display generation component, a process of displaying an ambiguity removal user interface different from the first training proposed user interface according to a determination that the computer system meets 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, wherein the ambiguity removal user interface, when selected, starts a process for displaying a second training proposed user interface associated with the first external electronic device, the first selectable user interface object being a first selectable user interface object, wherein the second training proposed user interface displays one or more training proposals associated with the first external electronic device, and a second selectable user interface object that, when selected, starts a process different from the second training proposed user interface and for displaying a third training proposed user interface associated with the second external electronic device, wherein the third training proposed user interface displays one or more training proposals associated with the second external electronic device, including the above.
[0036] In some embodiments, the 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 being to detect, via the one or more input devices, user input in response to a request to display a training user interface, and, in response to the request to display the training user interface, for the computer system to initiate, via the display generation component, a process of displaying a first training proposed user interface in accordance with a determination that a proximity criterion for a first type of single external electronic device is satisfied, the first training proposed user interface displaying one or more training proposals associated with the single external electronic device, and for the computer system to initiate, via the display generation component, a process of displaying an ambiguity removal user interface different from the first training proposed user interface in accordance with a determination that 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 satisfied, the ambiguity removal user interface being a first selectable user interface object that, when selected, initiates a process for displaying a second training proposed user interface associated with the first external electronic device, the second training proposed user interface displaying one or more training proposals associated with the first external electronic device, and a second selectable user interface object that, when selected, initiates a process for displaying, different from the second training proposed user interface and associated with the second external electronic device, a third training proposed user interface, the third training proposed user interface displaying one or more training proposals associated with the second external electronic device, including instructions for.
[0037] In some embodiments, the 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 instructions for detecting, via the one or more input devices, user input corresponding to a request to display a training user interface, and, in response to the request to display the training user interface, causing the computer system to initiate, via the display generation component, a process of displaying a first training proposed user interface according to a determination that a proximity criterion for a first type of single external electronic device is satisfied, the first training proposed user interface displaying one or more training proposals associated with the single external electronic device; causing the computer system to initiate, via the display generation component, a process of displaying an ambiguity removal user interface different from the first training proposed user interface according to a determination that proximity criteria for at least a first external electronic device of the first type and a second external electronic device of the first type are satisfied, the ambiguity removal user interface being a first selectable user interface object that, when selected, initiates a process for displaying a second training proposed user interface associated with the first external electronic device, the second training proposed user interface displaying one or more training proposals associated with the first external electronic device; and a second selectable user interface object that, when selected, initiates a process different from the process for displaying the second training proposed user interface and for displaying a third training proposed user interface associated with the second external electronic device, the third training proposed user interface displaying one or more training proposals associated with the second external electronic device.
[0038] In some embodiments, a computer system comprises: one or more processors that communicate 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 are configured to detect 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, start, via the display generation component, a process of displaying a first training proposed user interface according to a determination that a proximity criterion for a single external electronic device of a first type is met, the first training proposed user interface displaying one or more training proposals associated with the single external electronic device; and start, via the display generation component, a process of displaying an ambiguity removal user interface different from the first training proposed user interface according to a determination that 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, and the ambiguity removal user interface, when selected, starts a process of displaying a second training proposed user interface associated with the first external electronic device, the first selectable user interface object, the second training proposed user interface displaying one or more training proposals associated with the first external electronic device; and a second selectable user interface object that, when selected, starts a process of displaying a third training proposed user interface different from the second training proposed user interface and associated with the second external electronic device, the third training proposed user interface displaying one or more training proposals associated with the second external electronic device.and includes instructions for.
[0039] In some embodiments, the computer system includes means for detecting user input corresponding to a request to display a training user interface via one or more input devices, and means for starting a process for the computer system to display a first proposed training user interface via a display generation component according to a determination that the computer system meets a proximity criterion for a single external electronic device of a first type, wherein the first proposed training user interface displays one or more training proposals associated with the single external electronic device, and means for the computer system to start a process for displaying an ambiguity removal user interface different from the first proposed training user interface via the display generation component according to a determination that the computer system meets 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, wherein the ambiguity removal user interface, when selected, starts a process for displaying a second proposed training user interface associated with the first external electronic device, the first selectable user interface object being a first selectable user interface object for displaying a second proposed training user interface associated with the first external electronic device, and a second selectable user interface object that, when selected, starts a process for displaying a third proposed training user interface different from the second proposed training user interface and associated with the second external electronic device, the third proposed training user interface displaying one or more training proposals associated with the second external electronic device, and.
[0040] The executable instructions for performing these functions are optionally included within a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors. The executable instructions for performing these functions are optionally included within a transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.
[0041] As a result, the device is provided with a faster and more efficient method and interface for navigating and outputting training content, thereby increasing the effectiveness, efficiency, and user satisfaction of such a device. Such a method and interface can complement or replace other methods for navigating and outputting training content.
Brief Description of the Drawings
[0042] To better understand the various embodiments described, the following "Modes for Carrying Out the Invention" should be referred to in conjunction with the following drawings, and like reference numerals refer to corresponding parts throughout the following figures.
[0043]
Figure 1A
[0044]
Figure 1B
[0045]
Figure 2
[0046]
Figure 3
[0047]
Figure 4A
[0048]
Figure 4B
[0049]
Figure 5A
[0050]
Figure 5B
[0051]
Figure 6A
Figure 6B
Figure 6C
Figure 6D
Figure 6E
Figure 6F
Figure 6G
Figure 6H
Figure 6I
Figure 6J
Figure 6K
Figure 6L
Figure 6M
Figure 6N
Figure 6O
Figure 6P
Figure 6Q
Figure 6R
Figure 6S
Figure 6T
Figure 6U
Figure 6V
Figure 6W
Figure 6W1
Figure 6X
Figure 6Y
Figure 6Z
Figure 6AA
Figure 6BB
Figure 6CC
Figure 6DD
Figure 6EE
[0052]
Figure 7
[0053]
Figure 8A
Figure 8B
Figure 8C
Figure 8C1
Figure 8D
Figure 8D1
Figure 8E
Figure 8E1
Figure 8E2
Figure 8E3
Figure 8E4
Figure 8F
Figure 8G
Figure 8H
Figure 8I
Figure 8J
Figure 8K
Figure 8L
Figure 8M
Figure 8M1
Figure 8M2
Figure 8M3
Figure 8N
Figure 8O
Figure 8P
Figure 8Q
Figure 8Q1
Figure 8Q2
Figure 8R
Figure 8S
[0054]
Figure 9
[0055]
Figure 10A
Figure 10B
Figure 10C
Figure 10D
Figure 10E
Figure 10F
Figure 10G
Figure 10G1
Figure 10G2
Figure 10G3
Figure 10H
Figure 10I
Figure 10J
Figure 10K
Figure 10L
Figure 10M
Figure 10M1
Figure 10M2
Figure 10M3
Figure 10M4
Figure 10N
Figure 10O
Figure 10P
Figure 10Q
Figure 10R
Figure 10S
Figure 10T
Figure 10U
Figure 10V
[0056]
Figure 11
[0057]
Figure 12A
Figure 12B
Figure 12C
Figure 12D
Figure 12E
Figure 12F
Figure 12G
Figure 12H
Figure 12I
Figure 12J
Figure 12K
Figure 12L
Figure 12M
Figure 12N
Figure 12O
[0058]
Figure 13
[0059]
Figure 14A
Figure 14B
Figure 14C
Figure 14D
Figure 14E
Figure 14F
Figure 14G
Figure 14H
Figure 14I
Figure 14J
Figure 14K
Figure 14L
Figure 14M
Figure 14N
Figure 14O
Figure 14P
Figure 14Q
Figure 14R
[0060]
Figure 15
[0061]
Figure 16A
Figure 16B
Figure 16C
Figure 16D
Figure 16E
Figure 16F
Figure 16G
Figure 16H
Figure 16I
Figure 16J
Figure 16K
Figure 16L
Figure 16M
Figure 16N
Figure 16O
Figure 16P
Figure 16Q
Figure 16R
[0062]
Figure 17A
Figure 17B
[0063]
Figure 18A
Figure 18B
Figure 18C
Figure 18D
Figure 18E
Figure 18F
Figure 18G
Figure 18H
Figure 18I
Figure 18J
Figure 18K
Figure 18L
Figure 18M
Figure 18N
Figure 18O
Figure 18P
Figure 18Q
Figure 18R
Figure 18S
Figure 18T
Figure 18U
Figure 18V
[0064]
Figure 19A
Figure 19B
Figure 19C
DETAILED DESCRIPTION OF THE INVENTION
[0065] The following description describes exemplary methods, parameters, etc. However, it should be recognized that such descriptions are not intended as limitations on the scope of the present disclosure, but rather are provided as descriptions of exemplary embodiments.
[0066] There is a need for an electronic device that provides an efficient method and interface for navigating and outputting training content. For example, a user can benefit by presenting a proposal for a specific training corresponding to a completed training. As another example, a user will benefit from presenting specific training metrics while the training content is being output. Such techniques can reduce the cognitive burden on the user for navigating and outputting training content, thereby improving productivity. Further, such techniques can reduce processor and battery power that would otherwise be wasted on redundant user input.
[0067] The following, FIGS. 1A - 1B, FIGS. 2, 3, FIGS. 4A - 4B, and FIGS. 5A - 5B provide an illustration of exemplary devices for performing techniques for managing event notifications. FIGS. 6A - 6EE show exemplary user interfaces for displaying personalized training proposals based on completed training. FIG. 7 is a flowchart showing an exemplary process for displaying personalized training proposals based on completed training according to some embodiments. The user interfaces of FIGS. 6A - 6EE are used to illustrate the processes described later, including the process of FIG. 7. FIGS. 8A - 8S show exemplary user interfaces for initiating audio - based training. FIG. 9 is a flowchart showing an exemplary process for initiating audio - based training according to some embodiments. The user interfaces of FIGS. 8A - 8S are used to illustrate the processes described later, including the process of FIG. 9. FIGS. 10A - 10V show exemplary user interfaces for displaying training information. FIG. 11 is a flowchart showing an exemplary process for displaying training information according to some embodiments. The user interfaces of FIGS. 10A - 10V are used to illustrate the processes described later, including the process of FIG. 11. FIGS. 12A - 12O show exemplary user interfaces for displaying training information. FIG. 13 is a flowchart showing an exemplary process for displaying training information according to some embodiments. The user interfaces of FIGS. 12A - 12O are used to illustrate the processes described later, including the process of FIG. 13. FIGS. 14A - 14R show exemplary user interfaces for adjusting the display of training content among multiple devices. FIG. 15 is a flowchart showing an exemplary process for adjusting the display of training content among multiple devices according to some embodiments. The user interfaces of FIGS. 14A - 14R are used to illustrate the processes described later, including the process of FIG. 15. FIGS. 16A - 16R show exemplary user interfaces for displaying training information. FIGS. 17A - 17B are flowcharts showing an exemplary process for displaying training information according to some embodiments.The user interfaces of FIGS. 16A to 16R are used to illustrate the processes described below, including the processes of FIGS. 17A to 17B. FIGS. 18A to 18V show exemplary user interfaces for displaying training information. FIGS. 19A to 19C are flowcharts showing exemplary processes for illustrating a method of displaying training information according to some embodiments. The user interfaces of FIGS. 18A to 18V are used to illustrate the processes described below, including the processes of FIGS. 19A to 19C.
[0068] In the following description, terms such as "first", "second", etc. are used to describe various elements, but these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of the various embodiments described, the first touch can be referred to as the second touch, and similarly, the second touch can be referred to as the first touch. Both the first touch and the second touch are touches, but they are not the same touch.
[0069] The terms used in the description of the various embodiments described herein are for the purpose of describing particular embodiments only and are not intended to be limiting. In the description of the various embodiments described and 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" refers to any and all combinations of one or more of the associated listed items and is to be understood to include the same. The terms "includes", "including", "comprises", and / or "comprising", when used herein, specify the presence of the stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0070] The term "if ~" is optionally interpreted, depending on the context, to mean "when ~", "upon ~", "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 optionally interpreted, depending on the context, to mean "upon determining ~", "in response to determining ~", "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 related processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a cellular phone, that also includes other functions, such as PDA functionality and / or music player functionality. Exemplary embodiments of portable multifunctional 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 laptop or tablet computers having a touch-sensitive surface (e.g., a touch screen display and / or a touch pad), are also used. Also, in some embodiments, it should be understood that the device is not a portable communication device, but a desktop computer having a touch-sensitive surface (e.g., a touch screen display and / or a touch pad). In some embodiments, the electronic device is a computer system that communicates with a display generation component (e.g., via wired communication or via wireless communication). 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 sending data (e.g., image data or video data) to an integrated or external display generation component via a wired or wireless connection to visually generate the content (e.g., video data rendered or decoded by a display controller 156) in order to display the content.
[0072] In the following discussion, an electronic device including a display and a touch sensing surface will be described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices such as a physical keyboard, a mouse, and / or a joystick.
[0073] The device typically corresponds to various applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disk authoring application, a spreadsheet application, a game application, a phone 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] The various applications executed on the device optionally use at least one common physical user interface device such as a touch sensing surface. One or more functions of the touch sensing surface, as well as the corresponding information displayed on the device, are optionally adjusted and / or changed for each application and / or within each respective application. Thus, the common physical architecture of the device (such as the touch sensing surface) optionally supports various applications with a user interface that is intuitive and transparent to the user.
[0075] Attention is now directed to an embodiment of a portable device having a touch-sensing display. FIG. 1A is a block diagram showing a portable multifunctional device 100 having a touch-sensing display system 112 according to some embodiments. The touch-sensing display 112 may be referred to as a "touch screen" for convenience and may be known or referred to as a "touch-sensing display system". The device 100 includes a memory 102 (optionally including one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral device interface 118, an RF circuit 108, an audio circuit 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and an external port 124. The device 100 optionally includes one or more light sensors 164. The device 100 optionally includes one or more contact intensity sensors 165 (e.g., a touch-sensing surface such as the touch-sensing display system 112 of the device 100) for detecting the intensity of contact on the device 100. The device 100 optionally includes one or more haptic output generators 167 for generating haptic output on the device 100 (e.g., generating haptic output on a touch-sensing surface such as the touch-sensing display system 112 of the device 100 or the touch pad 355 of the 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 sensing surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch sensing surface, or a proxy for the force or pressure of the contact on the touch sensing surface. The intensity of the contact has a range of values that includes at least four distinct values, and more typically, hundreds (e.g., at least 256) of distinct values. The intensity of the contact is optionally determined (or measured) using a variety of techniques and a variety of sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch sensing surface are optionally used to measure the force at various points on the touch sensing surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average) to determine the 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 sensing surface. Alternatively, the size and / or change in size of the contact area detected on the touch sensing surface, the capacitance and / or change in capacitance of the touch sensing surface proximate to the contact, and / or the resistance and / or change in resistance of the touch sensing surface proximate to the contact are optionally used as an alternative to the force or pressure of the contact on the touch sensing surface. In some implementations, the alternative measurement for the force or pressure of the contact is used directly to determine whether it exceeds an intensity threshold (e.g., the intensity threshold is described in units corresponding to the alternative measurement). In some implementations, the proxy measurement 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 it exceeds an intensity threshold (e.g., the intensity threshold is a pressure threshold measured in units of pressure). By using the intensity of the contact as an attribute of a user input, a user can access additional device functions that would normally be inaccessible to the user on a device of reduced size with a limited area for displaying affordances (e.g., on a touch sensing display) and / or receiving user input (e.g., via a touch sensing display, a touch sensing surface, or a physical / mechanical control such as a knob or button).
[0077] As used in this specification and the claims, the term "haptic output" refers to the physical displacement of the device relative to its previous position, the physical displacement of a component of the device (e.g., a touch-sensing surface) relative to another component of the device (e.g., the housing), or the displacement of a component relative to the center of mass of the device, which is to be detected by the user's sense of touch. For example, in a situation where the device or a component of the device is in contact with a touch-sensitive surface of the user (e.g., the finger, palm, or other part of the user's hand), the haptic output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in the physical characteristics of the device or the component of the device. For example, the movement of a touch-sensing surface (e.g., a touch-sensing display or a trackpad) may optionally be interpreted by the user as a "down click" or "up click" of a physical actuator button. In some cases, even when there is no movement of the physical actuator button associated with the touch-sensing surface physically pushed (e.g., displaced) by the user's action, the user may feel a tactile sensation such as a "down click" or "up click". As another example, the movement of a touch-sensing surface may optionally be interpreted or sensed by the user as the "roughness" of the touch-sensing surface, even if there is no change in the smoothness of the touch-sensing surface. Such interpretation of touch by the user depends on the user's individual sensory perception, but there are many sensory perceptions of touch that are common to a majority of users. Therefore, when the haptic output is described as corresponding to a particular sensory perception of the user (e.g., "up click", "down click", "roughness"), unless otherwise stated, the generated haptic output corresponds to the physical displacement of the device or a component of the device that generates the described sensory perception of a typical (or average) user.
[0078] Device 100 is merely an example of a portable multifunctional device, and it should be understood that device 100 may optionally have more or fewer components than those shown, may optionally combine two or more components, or may optionally have different configurations or arrangements of those components. The various components shown in FIG. 1A are implemented in a combination of hardware, software, or 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 also 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 can be used to couple the input and output peripheral devices 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 for device 100 and process data. In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0081] The RF (radio frequency) circuit 108 transmits and receives RF signals, also called electromagnetic signals. The RF circuit 108 converts electrical signals into electromagnetic signals or vice versa and communicates with a communication network and other communication devices via electromagnetic signals. The RF circuit 108 optionally includes well-known circuits for performing these functions, such as, 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. The RF circuit 108 optionally communicates wirelessly with networks such as the Internet, also called the World Wide Web (WWW), an intranet, and / or wireless networks such as a cellular telephone network, a wireless local area network (LAN) and / or a metropolitan area network (MAN), and with other devices. The RF circuit 108 optionally includes well-known circuits for detecting a near field Communication (NFC) field, such as by a short-range communication radio. Wireless communication optionally includes, but is not limited to only, Global System for Mobile Communications (GSM) for mobile communication, Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), Long Termevolution, LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth (registered trademark), Bluetooth Low Energy (BTLE (registered trademark)), Wireless Fidelity (Wi-Fi (registered trademark)) (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 (registered trademark), 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 (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communication protocol including communication protocols not yet developed as of the filing date of this specification.
[0082] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between the user and the device 100. The audio circuit 110 receives audio data from the peripheral device interface 118, converts this audio data into an electrical signal, and transmits this electrical signal to the speaker 111. The speaker 111 converts the electrical signal into human audible sound waves. Also, the audio circuit 110 receives the electrical signal converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signal into audio data and transmits this audio data to the peripheral device interface 118 for processing. The audio data is optionally obtained from and / or transmitted to the memory 102 and / or the RF circuit 108 by the peripheral device interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., 212 of FIG. 2). The headset jack provides an interface between the audio circuit 110 and a detachable audio input / output peripheral device such as an output-only headset or a headset with both output (e.g., mono or stereo headphones) and input (e.g., microphone).
[0083] The I / O subsystem 106 couples input / output peripheral devices on the device 100, such as the touch screen 112 and other input control devices 116, to the peripheral device interface 118. The I / O subsystem 106 optionally includes a display controller 156, a light sensor controller 158, a depth camera controller 169, an intensity sensor controller 159, a haptic feedback controller 161, and one or more input controllers 160 for other input devices or control devices. The one or more input controllers 160 receive electrical signals from and transmit electrical signals to the other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and the like. In some alternative embodiments, the input controller(s) 160 are optionally coupled to (or not coupled to any of) a keyboard, an infrared port, a USB port, and pointer devices such as a mouse. One or more buttons (e.g., 208 in FIG. 2) optionally include up and down buttons for volume control of the speaker 111 and / or the microphone 113. One or more buttons optionally include push buttons (e.g., 206 in FIG. 2). In some embodiments, the electronic device is a computer system that communicates with one or more input devices (e.g., via wired communication or via wireless communication). In some embodiments, the one or more input devices include a touch-sensing surface (e.g., a trackpad as part of a touch-sensing 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) for tracking a user's gesture (e.g., a hand gesture) as an 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", and U.S. Patent No. 7,657,849, which are hereby incorporated by reference in their entirety, a quick press of a push button optionally engages or disengages the lock of the touch screen 112, or optionally starts a process of unlocking the device using gestures on the touch screen. A longer press of the push button (e.g., 206) optionally turns the power to the device 100 on or off. The functionality of one or more of the buttons can optionally be customized by the user. The touch screen 112 is used to implement virtual or soft buttons and one or more soft keyboards.
[0085] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives electrical signals from the touch screen 112 and / or transmits electrical signals to the touch screen 112. The touch screen 112 displays a visual output to the user. This visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.
[0086] The touch screen 112 has a touch sensing surface, sensor, or set of sensors that accepts input from a user based on tactile and / or haptic contact. The touch screen 112 and the display controller 156 (along with any associated modules and / or instruction sets within the memory 102) detect contact (and any movement or interruption of the contact) on the touch screen 112 and convert the detected contact into an interaction with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch screen 112. In an exemplary embodiment, the point of contact between the touch screen 112 and the user corresponds to the user's finger.
[0087] The touch screen 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although in other embodiments other display technologies are also used. The touch screen 112 and the display controller 156 optionally use any of a plurality of touch sensing technologies, now known or hereafter developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch screen 112, to detect contact and any movement or interruption thereof. In an exemplary embodiment, projected mutual capacitance sensing technology, such as that found in the iPhone (registered trademark) and iPod Touch (registered trademark) from Apple Inc. of Cupertino, California, is used.
[0088] The touch-sensitive display in some embodiments of touch screen 112 is optionally similar to a multi-touch sensitive touch pad as 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 hereby incorporated by reference in its entirety. However, while touch screen 112 displays visual output from device 100, the touch-sensitive touch pad does not provide visual output.
[0089] Touch sensing displays in some embodiments of the touch screen 112 are described in (1) U.S. Patent Application No. 11 / 381,313, filed May 2, 2006, "Multipoint Touch Surface Controller"; (2) U.S. Patent Application No. 10 / 840,862, filed May 6, 2004, "Multipoint Touchscreen"; (3) U.S. Patent Application No. 10 / 903,964, filed Jul. 30, 2004, "Gestures For Touch Sensitive Input Devices"; (4) U.S. Patent Application No. 11 / 048,264, filed Jan. 31, 2005, "Gestures For Touch Sensitive Input Devices"; (5) U.S. Patent Application No. 11 / 038,590, filed Jan. 18, 2005, "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices"; (6) U.S. Patent Application No. 11 / 228,758, filed Sep. 16, 2005, "Virtual Input Device Placement On A Touch Screen User Interface"; (7) U.S. Patent Application No. 11 / 228,700, filed Sep. 16, 2005, "Operation Of A Computer With A Touch Screen Interface"; (8) U.S. Patent Application No. 11 / 228,737, filed Sep. 16, 2005, "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard"; and (9) U.S. Patent Application No. 11 / 367,749, filed Mar. 3, 2006, "Multi-Functional Hand-Held Device". All of these applications are hereby incorporated by reference in their entirety.
[0090] The touch screen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touch screen has a video resolution of about 160 dpi. The user optionally touches the touch screen 112 using any suitable object or appendage such as a stylus, finger, etc. In some embodiments, the user interface is designed to primarily handle finger-based contact and gestures, which may not be as precise as stylus-based input due to the larger contact area of the finger on the touch screen. In some embodiments, the device converts rough input by the finger into an accurate pointer / cursor position or command for performing the action desired by the user.
[0091] In some embodiments, in addition to the touch screen, the device 100 optionally includes a touch pad for activating or deactivating certain functions. In some embodiments, the touch pad, unlike the touch screen, is a touch-sensing area of the device that does not display a visual output. The touch pad is optionally a touch-sensing surface separate from the touch screen 112 or an extension of the touch-sensing surface formed by the touch screen.
[0092] The device 100 also includes a power system 162 that supplies power to various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharge system, a power outage detection circuit, a power converter or inverter, a power status indicator (e.g., light-emitting diode (LED)), and any other components associated with the generation, management, and distribution of power within a portable device.
[0093] Device 100 also optionally includes one or more light sensors 164. FIG. 1A shows a light sensor coupled to a light sensor controller 158 within I / O subsystem 106. The light sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. The light sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. The light sensor 164 cooperates with an imaging module 143 (also called a camera module) to optionally capture a still image or video. In some embodiments, the light sensor is located on the back of device 100, opposite touch screen display 112 on the front of the device, and thus the touch screen display can be effectively used as a viewfinder for obtaining still and / or video images. In some embodiments, the light sensor is located on the front of the device, and thus an image of the user is optionally obtained for a video conference, and the user views other video conference participants on the touch screen 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), and thus a single light sensor 164 can be used for both video conferencing and obtaining still and / or video images together with the touch screen display.
[0094] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to a depth camera controller 169 within the I / O subsystem 106. The depth camera sensor 175 receives data from the environment and creates a three-dimensional model of an object (e.g., a face) within a scene from a viewpoint (e.g., the depth camera sensor). In some embodiments, in cooperation with the imaging module 143 (also referred to as the camera module), the depth camera sensor 175 is optionally used to determine depth maps of various portions of an image captured by the imaging module 143. In some embodiments, while a user is viewing other video conference participants on a touch screen display, an image of the user with depth information is optionally acquired for video conferencing and a self-portrait image with depth map data is captured, a depth camera sensor is disposed on the front face of device 100. In some embodiments, the depth camera sensor 175 is disposed on the back of the device, or on both the back and front faces 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), such that the depth camera sensor 175 is used for both video conferencing and for the acquisition of still and / or video images with the touch screen display.
[0095] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to an intensity sensor controller 159 within I / O subsystem 106. The contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electro-force sensors, piezoelectric force sensors, optical force sensors, capacitive touch sensing surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of contact on a touch sensing surface). The 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 in proximity to, a touch sensing surface (e.g., touch sensing display system 112). In some embodiments, at least one contact intensity sensor is disposed on the back of device 100, opposite a touch screen display 112 disposed on the front of device 100.
[0096] Device 100 also optionally includes one or more proximity sensors 166. FIG. 1A shows proximity sensor 166 coupled to peripheral device interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 functions as described in U.S. Patent Application 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 hereby incorporated by reference in their entirety. In some embodiments, when a multifunctional device is placed near the user's ear (e.g., when the user is on a phone call), the proximity sensor turns off and disables touch screen 112.
[0097] Device 100 also optionally includes one or more haptic output generators 167. FIG. 1A shows a haptic output generator coupled to a haptic feedback controller 161 within I / O subsystem 106. The haptic output generator 167 optionally includes one or more electroacoustic devices such as speakers or other audio components, and / or electromechanical devices that convert energy such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other haptic output generating components (e.g., components that convert an electrical signal into a haptic output) into linear movement. The contact intensity sensor 165 receives haptic feedback generation instructions from the haptic feedback module 133 and generates haptic output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one haptic output generator is juxtaposed with or proximate to a touch sensing surface (e.g., touch sensing display system 112) and optionally generates haptic output by moving the touch sensing surface in a vertical direction (e.g., in / out of the surface of device 100) or a horizontal direction (e.g., back and forth within the same plane as the surface of device 100). In some embodiments, at least one haptic output generator sensor is disposed on the back of device 100, on the opposite side of touch screen display 112 disposed on the front of device 100.
[0098] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows an accelerometer 168 coupled to the peripheral device interface 118. Alternatively, the accelerometer 168 is optionally coupled to an input controller 160 within the I / O subsystem 106. The accelerometer 168 functions as described, for example, 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 hereby incorporated by reference in their entirety. In some embodiments, information is displayed on the touch screen display in portrait or landscape view based on an analysis of data received from one or more accelerometers. In addition to the accelerometer 168, device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information regarding the location and orientation (e.g., portrait or landscape) of device 100.
[0099] In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a touch / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and an application (or instruction set) 136. Further, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores a device / global internal state 157, as shown in FIGS. 1A and 3. The device / global internal state 157 includes one or more of an active application state indicating which application is active if there is a currently active application, a display state indicating which application, view, or other information occupies various regions of the touch screen display 112, a sensor state including information obtained from various sensors and input control devices 116 of the device, and position information regarding the position and / or orientation of the device.
[0100] The operating system 126 (e.g., an embedded operating system such as Darwin (registered trademark), RTXC (registered trademark), LINUX (registered trademark), UNIX (registered trademark), OS X (registered trademark), iOS (registered trademark), WINDOWS (registered trademark), or VxWorks (registered trademark)) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, control of storage devices, power management, etc.) and facilitate communication between various hardware components and software components.
[0101] The communication module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by the RF circuit 108 and / or the external port 124. The external port 124 (e.g., Universal Serial Bus (USB), FIREWIRE (registered trademark), etc.) is adapted to couple to other devices either directly or indirectly via a network (e.g., the Internet, a wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as or similar to and / or compatible with the 30-pin connector used on iPod (registered trademark) devices (a trademark of Apple Inc.).
[0102] The contact / motion module 130 optionally detects contact with the touch screen 112 (in cooperation with the display controller 156) and other touch sensing devices (e.g., a touch pad or a physical click wheel). The contact / motion module 130 performs various software components for performing various operations related to the detection of contact, such as determining whether contact has occurred (e.g., detecting an event of a finger being lowered), determining the intensity of the contact (e.g., the force or pressure of the contact, or an alternative to the force or pressure of the contact), determining whether there is movement of the contact, tracking movement across the touch sensing surface (e.g., detecting one or more events of a finger being dragged), and determining whether the contact has stopped (e.g., detecting an event of a finger being raised or an interruption of the contact). The contact / motion module 130 receives contact data from the touch sensing surface. Determining the movement of the contact point represented by a 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 point. These operations are optionally applied to a single contact (e.g., contact with one finger) or multiple simultaneous contacts (e.g., "multi-touch" / contact with multiple fingers). In some embodiments, the contact / motion module 130 and the display controller 156 detect contact on the touch pad.
[0103] In some embodiments, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by the user (e.g., to determine whether the user has "clicked" on an icon). In some embodiments, at least one subset of the intensity thresholds is determined according to software parameters (e.g., the intensity thresholds can be adjusted without changing the physical hardware of the device 100, rather than being determined by the activation thresholds of specific physical actuators). For example, the mouse "click" threshold of a trackpad or touch screen display can be set to any of a wide range of default thresholds without changing the trackpad or touch screen display hardware. Additionally, in some implementations, the user of the device 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 adjusting multiple intensity thresholds at once with a system-level click "intensity" parameter).
[0104] The contact / motion module 130 optionally detects gesture inputs by the user. Different gestures on the touch-sensing surface have different contact patterns (e.g., the detected movement, timing, and / or intensity of the contact is different). Thus, gestures are optionally detected by detecting a specific contact pattern. For example, detecting a finger tap gesture includes detecting a finger down event followed by a finger up (lift off) event at the same position (or substantially the same position) as the finger down event (e.g., the position of the icon). As another example, detecting a finger swipe gesture on the touch-sensing surface includes detecting a finger down event followed by one or more finger drag events and then a subsequent finger up (lift off) event.
[0105] The graphic module 132 includes various known software components for rendering and displaying graphics on the touch screen 112 or other display, including components that vary the visual impact of the displayed graphics (e.g., brightness, transparency, saturation, contrast, or other visual characteristics). As used herein, the term "graphic" includes, but is not limited to, any object that can be displayed to a user, including letters, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, and the like.
[0106] In some embodiments, the graphic module 132 stores data representing the graphics that will be used. Each graphic is optionally assigned a corresponding code. The graphic module 132 receives, from an application or the like, one or more codes that specify the graphics to be displayed, along with coordinate data and other graphic characteristic data as needed, and then generates the image data for the screen to be output to the display controller 156.
[0107] The haptic feedback module 133 includes various software components for generating instructions to be used by the haptic output generator(s) 167 to generate haptic output at one or more locations on the device 100 in response to user interaction with the device 100.
[0108] The text input module 134 is optionally a component of the graphic 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 that requires 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 location-based dialing, to the camera 143 as metadata for photos / videos, and to applications that provide location-based services such as weather widgets, local yellow page widgets, and map / navigation widgets).
[0110] The application 136 optionally includes one or more of the following modules (or sets of instructions) or subsets or supersets thereof. ● Contact module 137 (also sometimes referred to as an address book or contact list), ● Phone module 138, ● Video conferencing module 139, ● Email client module 140, ● Instant messaging (IM) module 141, ● Training support module 142, ● 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, ● Widget module 149 that optionally includes one or more of weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, and other widgets obtained by the user, as well as user-created widget 149-6, ● Widget creation module 150 for creating user-created widget 149-6, ● Search module 151, ● A video and music player module 152 that integrates a video player module and a music player module. ● A memo module 153. ● A map module 154, and / or ● An online video module 155.
[0111] Examples of other applications 136 that are optionally stored in the memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA (registered trademark)-compatible applications, encryption, digital rights management, voice recognition, and voice replication.
[0112] In cooperation with the touch screen 112, the display controller 156, the touch / motion module 130, the graphic module 132, and the text input module 134, the contact module 137 can optionally add names (singular or plural) to the address book, delete names (singular or plural) from the address book, associate phone numbers (singular or plural), email addresses (singular or plural), actual addresses (singular or plural), or other information with names, associate images with names, classify and sort names, provide phone numbers or email addresses to initiate and / or facilitate communication by phone 138, video conferencing module 139, email 140, or IM 141, etc., for managing the address book or contact list (e.g., stored in the internal application state 192 of the contact module 137 in the memory 102 or memory 370).
[0113] In cooperation with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134, the telephone module 138 is optionally used for input of a character sequence corresponding to a telephone number, access to one or more telephone numbers in the contact module 137, modification of the input telephone number, dialing of each telephone number, conducting a conversation, and call termination or hang-up when the conversation ends. As described above, the wireless communication optionally uses any of a plurality of communication standards, protocols, and technologies.
[0114] In cooperation with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the optical sensor 164, the optical sensor controller 158, the contact / motion module 130, the graphic module 132, the text input module 134, the contact module 137, and the telephone module 138, the videoconference module 139 includes executable instructions for starting, executing, and ending a videoconference between the user and one or more other participants according to a user command.
[0115] In cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134, the email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user commands. In cooperation with the image management module 144, the email client module 140 greatly facilitates the creation and sending of emails with still images or video images captured by the camera module 143.
[0116] In cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphic module 132, and the text input module 134, the instant messaging module 141 includes executable instructions for inputting a character sequence corresponding to an instant message, modifying previously input characters, sending each instant message (e.g., using the Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for phone communication-based instant messages, or using XMPP, SIMPLE, or IMPS for Internet-based instant messages), receiving instant messages, and viewing received instant messages. In some embodiments, the instant messages sent and / or received optionally include graphics, photos, audio files, video files, and / or other attached files supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both phone communication-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 cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, map module 154, and music player module, the training support module 142 creates training (e.g., having time, distance, and / or calorie burn goals), communicates with a training sensor (sports device), receives training sensor data, calibrates sensors used to monitor the training, selects and plays music for the training, and includes executable instructions for displaying, storing, and transmitting training data.
[0118] In cooperation with the touch screen 112, display controller 156, light sensor(s) 164, light sensor controller 158, contact / motion module 130, graphic module 132, and image management module 144, the camera module 143 includes executable instructions for capturing a still image or video (including a video stream) and storing it in the memory 102, modifying the characteristics of a still image or video, or deleting a still image or video from the memory 102.
[0119] In cooperation with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and camera module 143, the image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise operating on still images and / or video images, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing them.
[0120] In cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134, the browser module 147 includes executable instructions for browsing the Internet according to user instructions, including searching for, linking to, receiving, and displaying a web page or a portion thereof, as well as attached files and other files linked to the web page.
[0121] In cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, the text input module 134, the email client module 140, and the browser module 147, the calendar module 148 includes executable instructions for creating, displaying, modifying, and storing a calendar and data associated with the calendar (e.g., calendar items, to do lists, etc.) according to user instructions.
[0122] In cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and browser module 147, the widget module 149 is a mini-application (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) that is optionally downloaded and used by the user, or a mini-application (e.g., user-created widget 149-6) created by the user. In some embodiments, the widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, the widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! widget).
[0123] In cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and browser module 147, the widget creator module 150 is used by the user to optionally create a widget (e.g., make a user-specified portion of a web page into a widget).
[0124] In cooperation with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, the search module 151 includes executable instructions for searching for characters, music, sound, images, videos, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) according to a user command.
[0125] In cooperation with touch screen 112, display controller 156, contact / motion module 130, graphic module 132, audio circuit 110, speaker 111, RF circuit 108, and browser module 147, video and music player module 152 includes executable instructions that enable a user to download and play 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 touch screen 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 (trademark of Apple Inc.).
[0126] In cooperation with touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, memo module 153 includes executable instructions for creating and managing memos, to-do lists, etc. according to user instructions.
[0127] In cooperation with RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, and browser module 147, map module 154 is optionally used to receive, display, modify, and store maps and map-related data (e.g., driving directions, data regarding stores and other target locations near a particular location, and other location-based data) according to user instructions.
[0128] In cooperation with the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the audio circuit 110, the speaker 111, the RF circuit 108, the text input module 134, the email client module 140, and the browser module 147, the online video module 155 includes instructions that enable a user to access a particular online video, browse a particular online video, receive (e.g., by streaming and / or downloading), play (e.g., on the touch screen or on an external display connected via the external port 124), send an email having a link to a particular online video, and perform other management of online videos in one or more file formats such as H.264. In some embodiments, instead of the email client module 140, the instant messaging module 141 is used to send a link to a particular online video. Additional description of the online video application can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed Jun. 20, 2007, "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos", and U.S. Patent Application No. 11 / 968,067, filed Dec. 31, 2007, "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos", the contents of which are hereby incorporated by reference in their entirety.
[0129] The modules and applications identified above each correspond to a set of executable instructions that perform one or more of the functions described above and the methods described in this application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) need not be implemented as separate software programs, procedures, or modules, and thus, in various embodiments, various subsets of these modules may optionally be combined or otherwise reconfigured. For example, a video player module may optionally be combined with a music player module to form a single module (e.g., the video and music player module 152 of FIG. 1A). In some embodiments, the memory 102 optionally stores a subset of the modules and data structures identified above. Further, the memory 102 optionally stores additional modules and data structures not described above.
[0130] In some embodiments, the device 100 is a device in which the operation of a set of default functions in the device is performed only via a touch screen and / or a touch pad. By using the touch screen and / or the touch pad as the main input control device for the device 100 to operate, optionally, the number of physical input control devices (push buttons, dials, etc.) on the device 100 is reduced.
[0131] The set of default functions that are performed only through the touch screen and / or the touch pad optionally includes navigation between user interfaces. In some embodiments, when touched by the user, the touch pad navigates the device 100 from any user interface displayed on the device 100 to the main menu, home menu, or root menu. In such embodiments, the "menu button" is implemented using the touch pad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touch pad.
[0132] FIG. 1B is a block diagram showing exemplary components for event processing according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes an event sorter 170 (e.g., within operating system 126) and respective applications 136-1 (e.g., any of the aforementioned applications 137-151, 155, 380-390).
[0133] The event sorter 170 receives event information and determines the application 136-1 to which the event information is to be delivered and the application view 191 of the application 136-1. The event sorter 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, the application 136-1 includes an application internal state 192 that indicates the current application view(s) displayed on the touch-sensitive display 112 when the application is active or running. In some embodiments, the device / global internal state 157 is used by the event sorter 170 to determine which application(s) is / are currently active, and the application internal state 192 is used by the event sorter 170 to determine the application view 191 to which the event information is to be delivered.
[0134] In some embodiments, the application internal state 192 includes additional information such as resume information to be used when the application 136-1 resumes execution, user interface state information indicating or ready to display the information being displayed by the application 136-1, a state queue that enables the user to return to the previous state or view of the application 136-1, and a redo / undo queue of previous actions performed by the user.
[0135] The event monitor 171 receives event information from the peripheral device interface 118. The event information includes information regarding sub-events (e.g., a user touch on the touch-sensitive display 112 as part of a multi-touch gesture). The peripheral device interface 118 transmits information received from sensors such as the I / O subsystem 106, or the proximity sensor 166, the accelerometer(s) 168, and / or the microphone 113 (via the audio circuit 110). The information that the peripheral device interface 118 receives from the I / O subsystem 106 includes information from the touch-sensitive display 112 or the touch-sensitive surface.
[0136] In some embodiments, the event monitor 171 transmits requests to the peripheral device interface 118 at predetermined intervals. In response, the peripheral device interface 118 transmits event information. In other embodiments, the peripheral device interface 118 transmits event information only when there is an important event (e.g., receipt of an input that exceeds a predetermined noise threshold and / or exceeds a predetermined duration).
[0137] In some embodiments, the event sorter 170 also includes a hit view determination module 172 and / or an active event recognition unit determination module 173.
[0138] The hit view determination module 172 provides software procedures for determining where within one or more views a sub-event occurs when the touch-sensitive display 112 displays two or more views. A view is composed of control devices and other elements that a user can view on the display.
[0139] Another aspect of the user interface associated with an application is a set of views, sometimes referred to herein as an application view or a user interface window, in which information is displayed and touch-based gestures occur. The application view (for each application) where a touch is detected optionally corresponds to a program level within the program hierarchy or view hierarchy of the application. For example, the lowest-level view where a touch is detected is optionally referred to as the hit view, and the set of events recognized as appropriate input is optionally determined at least in part based on the hit view of the initial touch that initiates a touch-based gesture.
[0140] The hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has a plurality of hierarchically structured views, the hit view determination module 172 identifies the hit view as the lowest-level view within the hierarchy in which the sub-event is to be processed. In most situations, the hit view is the lowest-level view where the start sub-event (e.g., the first sub-event in a sub-event sequence that forms an event or potential event) occurs. Once the hit view is identified by the hit view determination module 172, this hit view typically receives all sub-events related to the same touch or input source that was identified as the hit view.
[0141] The active event recognition unit determination module 173 determines which view(s) within the view hierarchy should receive a particular sequence of sub-events. In some embodiments, the active event recognition unit determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, the active event recognition unit determination module 173 determines that all views including the physical location of the sub-event are views that are actively involved, and thus determines that all views that are actively involved should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely limited to an area associated with one particular view, the upper-level views within the hierarchy will still continue to be views that are actively involved.
[0142] The event dispatcher module 174 dispatches event information to the event recognition unit (e.g., event recognition unit 180). In embodiments that include the active event recognition unit determination module 173, the event dispatcher module 174 distributes event information to the event recognition unit determined by the active event recognition unit determination module 173. In some embodiments, the event dispatcher module 174 stores the event information obtained by each event receiver 182 in the event queue.
[0143] In some embodiments, the operating system 126 includes the event sorter 170. Alternatively, the application 136-1 includes the event sorter 170. In still other embodiments, the event sorter 170 is an independent module or a part of another module stored in the memory 102 such as the touch / motion module 130.
[0144] In some embodiments, application 136-1 includes a plurality of event processors 190 and one or more application views 191, each including instructions for processing touch events occurring within respective views of the user interface of the application. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, each application view 191 includes a plurality of event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a separate module, 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 processor 190 includes one or more of event data 179 received from data updater 176, object updater 177, GUI updater 178, and / or event sorter 170. The event processor 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update the internal state 192 of the application. Alternatively, one or more of the application views 191 include one or more respective event processors 190. Also, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in respective application views 191.
[0145] Each event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from this event information. The event recognizer 180 includes an event receiver 182 and an event comparer 184. In some embodiments, the event recognizer 180 also includes at least a subset of metadata 183 and event delivery instructions 188 (optionally including sub-event delivery instructions).
[0146] The event receiving unit 182 receives event information from the event sorter 170. The event information includes sub-events, for example, information about 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 is related to the 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 referred to as the posture of the device).
[0147] The event comparison unit 184 compares the event information with the definition of a defined event or sub-event, and based on the comparison, determines an event or sub-event, or determines or updates the state of an event or sub-event. In some embodiments, the event comparison unit 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a sequence of predefined sub-events) such as event 1 (187-1) and event 2 (187-2). In some embodiments, the sub-events within an event (187) include, for example, a start of a touch, an end of a touch, a movement of a touch, a cancellation of a touch, and multiple touches. In one example, the definition of event 1 (187-1) is a double-tap on a displayed object. The double-tap includes, for example, a first touch (touch start) on the displayed object for a predetermined stage, a first lift-off (touch end) for the predetermined stage, a second touch (touch start) on the displayed object for the predetermined stage, and a second lift-off (touch end) for the predetermined stage. In another example, the definition of event 2 (187-2) is a drag on a displayed object. The drag includes, for example, a touch (or contact) on the displayed object for 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 processing units 190.
[0148] In some embodiments, event definition 187 includes the definition of events for each user interface object. In some embodiments, event comparison unit 184 performs a hit test to determine which user interface object is associated with the sub - event. For example, within an application view where three user interface objects are displayed on touch - sensitive display 112, when a touch is detected on touch - sensitive display 112, event comparison unit 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 processing unit 190, the event comparison unit uses the result of the hit test to determine which event processing unit 190 should be activated. For example, event comparison unit 184 selects the event processing unit associated with the sub - event and object that triggered the hit test.
[0149] In some embodiments, the definition of each event 187 also includes a delay action that delays the delivery of event information until it is determined whether the sequence of sub - events corresponds to the event type of the event recognition unit.
[0150] If each event recognition unit 180 determines that a series of sub - events does not match any of the events of event definition 186, each event recognition unit 180 enters a state of event impossible, event failure, or event end, and then ignores the next sub - event of the touch - based gesture. In this situation, if there are other event recognition units that remain active for the hit view, that event recognition unit continues to track and process the sub - events of the ongoing touch - based gesture.
[0151] In some embodiments, each event recognition unit 180 includes metadata 183 having configurable properties, flags, and / or lists indicating how the event distribution system should actively participate in the event recognition unit for executing sub-event distribution. In some embodiments, the metadata 183 includes configurable properties, flags, and / or lists indicating how the event recognition units interact with each other or how they can interact with each other. In some embodiments, the metadata 183 includes configurable properties, flags, and / or lists indicating whether sub-events are distributed at various levels in the view hierarchy or program hierarchy.
[0152] In some embodiments, each event recognition unit 180 activates an event processing unit 190 associated with the event when one or more specific sub-events of the event are recognized. In some embodiments, each event recognition unit 180 distributes event information associated with the event to the event processing unit 190. Activating the event processing unit 190 is separate from sending (and deferring sending) sub-events to each hit view. In some embodiments, the event recognition unit 180 sets a flag associated with the recognized event, and the event processing unit 190 associated with the flag catches the flag and executes a predefined process.
[0153] In some embodiments, the event distribution command 188 includes a sub-event distribution command that distributes event information about sub-events without activating the event processing unit. Instead, the sub-event distribution command distributes event information to an event processing unit associated with a series of sub-events or to a view actively involved. The event processing unit associated with a series of sub-events or an actively involved view receives the event information and executes a predetermined process.
[0154] In some embodiments, the data update unit 176 creates and updates data used in the application 136-1. For example, the data update unit 176 updates the phone numbers used in the contact module 137 or stores video files used in the video player module. In some embodiments, the object update unit 177 creates and updates objects used in the application 136-1. For example, the object update unit 177 creates a new user interface object or updates the position of a user interface object. The GUI update unit 178 updates the GUI. For example, the GUI update unit 178 prepares display information and sends the display information to the graphic module 132 for display on the touch-sensitive display.
[0155] In some embodiments, the event processing unit(s) 190 includes or has access to the data update unit 176, the object update unit 177, and the GUI update unit 178. In some embodiments, the data update unit 176, the object update unit 177, and the GUI update unit 178 are included in a single module of their 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 regarding event processing of a user's touch on the touch-sensitive display also applies to other forms of user input for operating the multifunctional device 100 using an input device, although not all of them are initiated on the touch screen. For example, the movement of a mouse and the pressing of a mouse button, the movement of a contact such as a tap, drag, or scroll on a touch pad, a pen stylus input, the movement of the device, a spoken command, a detected eye movement, a biometric input, and / or any combination thereof, optionally in association with a single or multiple presses or holds of a keyboard, are utilized as inputs corresponding to sub-events that define events to be optionally recognized.
[0157] FIG. 2 shows a portable multifunctional device 100 having a touch screen 112 according to some embodiments. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment, as well as in other embodiments described below, the user can select one or more of those graphics by performing gestures on the graphics using, for example, one or more fingers 202 (not drawn to scale in the figure) or one or more styli 203 (not drawn to scale in the figure). In some embodiments, the selection of one or more graphics is performed when the user interrupts contact with the one or more graphics. In some embodiments, the gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, upward and / or downward), and / or rolling of a finger in contact with the device 100 (from right to left, from left to right, upward and / or downward). In some implementations or situations, an accidental contact with a graphic does not select the graphic. For example, if the gesture corresponding to the selection is a tap, a swipe gesture that sweeps over an application icon does not optionally select the corresponding application.
[0158] The device 100 also optionally includes one or more physical buttons, such as a "home" button or a menu button 204. As described above, the menu button 204 is optionally used to navigate to any application 136 within a set of applications optionally running on the device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on the touch screen 112.
[0159] In some embodiments, device 100 includes a touch screen 112, a menu button 204, a push button 206 for turning the device on / off and locking the device, volume adjustment buttons 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and a docking / charging external port 124. The push button 206 is optionally used to turn the device on / off by pressing the button and holding it in the pressed state for a predefined period, to lock the device by pressing the button and releasing it before a predefined time has elapsed, and / or to unlock the device or initiate an unlock process. In an alternative embodiment, device 100 also accepts voice input via a microphone 113 to activate or deactivate some functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of contacts on the touch screen 112, and / or one or more haptic output generators 167 for generating haptic output to the user of device 100.
[0160] Figure 3 is a block diagram of an exemplary multifunctional device having a display and a touch sensing surface, in accordance with some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, desktop computer, tablet computer, multimedia player device, navigation device, educational device (such as a child's learning toy), gaming system, or a control device (e.g., a home or industrial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more networks or other communication interfaces 360, memory 370, and one or more communication buses 320 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes called a chipset) that interconnects and controls communication between system components. Device 300 includes an input / output (I / O) interface 330 including a display 340, which is typically a touch screen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350, a touch pad 355, a haptic output generator 357 that generates haptic output on device 300 (e.g., similar to haptic output generator 167 described above with reference to FIG. 1A), and a sensor 359 (e.g., an optical, acceleration, proximity, touch sensing, and / or contact intensity sensor 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 the CPU(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, the programs, modules, and data structures stored in memory 102 of portable multifunctional device 100 (FIG. 1A). Further, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunctional device 100. For example, memory 370 of device 300 optionally stores a drawing module 380, a presentation module 382, a word processing module 384, a website creation module 386, a disk authoring module 388, and / or a spreadsheet module 390, whereas memory 102 of portable multifunctional device 100 (FIG. 1A) optionally does not store these modules.
[0161] Each of the elements identified above in FIG. 3 is optionally stored in one or more of the memory devices described above. Each of the modules identified above corresponds to a set of instructions for performing the functions described above. The modules or programs (e.g., sets of instructions) identified above need not be implemented as separate software programs, procedures, or modules, and 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 modules and data structures identified above. Further, memory 370 optionally stores additional modules and data structures not described above.
[0162] Next, attention is optionally directed to embodiments of a user interface, for example, implemented on portable multifunctional device 100.
[0163] Figure 4A shows an exemplary user interface of a menu of applications on a portable multifunctional device 100 according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, the user interface 400 includes the following elements, or a subset or superset thereof. ● Signal strength indicator(s) 402 for wireless communication(s) such as cellular signal and Wi-Fi® signal, ● Time 404, ● Bluetooth® indicator 405, ● Battery status indicator 406, ● A tray 408 having icons of frequently used applications such as ○ An icon 416 of the phone module 138 labeled "Phone", optionally including an indicator 414 of the number of missed calls or voice mail messages, ○ An icon 418 of the email client module 140 labeled "Mail", optionally including an indicator 410 of the number of unread emails, ○ An icon 420 of the browser module 147 labeled "Browser", and ○ An icon 422 of the video and music player module 152, also referred to as the iPod (trademark of Apple Inc.) module 152, labeled "iPod", and ● Icons of other applications such as ○ An icon 424 of the IM module 141 labeled "Message", ○ An icon 426 of the calendar module 148 labeled "Calendar", ○ An icon 428 of the image management module 144 labeled "Photos", ○ An icon 430 of the camera module 143 labeled "Camera", ○ An icon 432 of the online video module 155 labeled "Online Video", ○ The icon 434 of the stock price widget 149-2, labeled with "Stock Price", ○ The icon 436 of the map module 154, labeled with "Map", ○ The icon 438 of the weather widget 149-1, labeled with "Weather", ○ The icon 440 of the alarm clock widget 149-4, labeled with "Clock", ○ The icon 442 of the training support module 142, labeled with "Training Support", ○ The icon 444 of the memo module 153, labeled with "Memo", and ○ The icon 446 of the settings application or module, labeled with "Settings", which provides access to the settings for the device 100 and its various applications 136.
[0164] Note that the icon labels shown in FIG. 4A are merely illustrative. For example, other labels such as "Music" or "Music Player" for the icon 422 for the video and music player module 152 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 that 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] FIG. 4B shows an exemplary user interface on a device (e.g., device 300 of FIG. 3) having a touch sensing surface 451 (e.g., the tablet or touch pad 355 of FIG. 3) separate from the display 450 (e.g., touch screen display 112). The device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of the sensors 359) for detecting the intensity of contact on the touch sensing surface 451, and / or one or more haptic output generators 357 for generating haptic output to the user of the device 300.
[0166] Some of the following examples are given with reference to inputs on touch screen display 112 (where the touch sensing surface and the display are combined), but in some embodiments, the device detects inputs on a touch sensing surface separate from the display shown in FIG. 4B. In some embodiments, the touch sensing surface (e.g., 451 in FIG. 4B) has a primary axis (e.g., 452 in FIG. 4B) corresponding to the primary axis (e.g., 453 in FIG. 4B) on the display (e.g., 450). According to these embodiments, the device detects contact (e.g., 460 and 462 in FIG. 4B) with the touch sensing surface 451 at locations (e.g., in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470) corresponding to each location on the display. In this way, user input (e.g., contacts 460 and 462 and their movements) detected by the device on the touch sensing surface (e.g., 451 in FIG. 4B) is used by the device to operate the user interface on the display (e.g., 450 in FIG. 4B) of the multifunctional device when the touch sensing surface is separate from the display. It should be understood that a similar method is optionally used for other user interfaces described herein.
[0167] In addition, although the following examples are given mainly with reference to finger inputs (e.g., finger contact, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of the finger inputs may be replaced by inputs from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture may optionally be replaced by the movement of a cursor along a swipe path followed by a mouse click (e.g., instead of contact movement). As another example, a tap gesture may optionally be replaced by a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detecting contact and then stopping detection of the contact). Similarly, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice may optionally be used simultaneously, or mouse and finger contact may optionally be used simultaneously.
[0168] FIG. 5A shows an exemplary personal electronic device 500. The device 500 includes a body 502. In some embodiments, the 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, the device 500 has a touch-sensitive display screen 504, hereinafter the touch screen 504. Alternatively, or in addition to the touch screen 504, the device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, the touch screen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of an applied contact (e.g., a touch). One or more intensity sensors of the touch screen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of the device 500 can respond to the touch based on the intensity of the touch, which means that touches of different intensities can call different user interface operations on the device 500.
[0169] Exemplary techniques for detecting and processing touch intensity can be found in related applications such as International Patent Application No. PCT / US2013 / 040061, filed on May 8, 2013, published as International Patent No. WO / 2013 / 169849, "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application", and International Patent Application No. PCT / US2013 / 069483, filed on November 11, 2013, published as International Patent No. WO / 2014 / 105276, "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships", 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 enable 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 enable the user to wear device 500.
[0171] FIG. 5B shows 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 that operably couples an I / O section 514 to one or more computer processors 516 and a memory 518. The I / O section 514 can be connected to a display 504, which can have a touch sensing component 522 and optionally an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, the 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. The device 500 can include an input mechanism 506 and / or 508. The input mechanism 506 can optionally be, for example, a rotatable input device or a pushable and rotatable input device. In some examples, the input mechanism 508 can optionally be a button.
[0172] In some examples, the input mechanism 508 can optionally be a microphone. The personal electronic device 500 can optionally include various sensors such as a GPS sensor 532, an accelerometer 534, a direction sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which can be operably connected to the I / O section 514.
[0173] The memory 518 of the personal electronic device 500 can 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, can cause the computer processor to perform, for example, the techniques described below including processes 700, 900, 1100, 1300, and 1500 (FIGS. 7, 9, 11, 13, and 15). A computer-readable storage media can be any media that tangibly contains or stores computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage media is a transitory computer-readable storage media. In some embodiments, the storage media is a non-transitory computer-readable storage media. Non-transitory computer-readable storage media can include, but is not limited to, magnetic, optical, and / or semiconductor memory devices. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and persistent solid-state memories such as flash, solid-state drives. The personal electronic device 500 is not limited to the components and configurations of FIG. 5B and can include other or additional components in a plurality of configurations.
[0174] As used herein, the term "affordance" optionally refers to user interaction graphical user interface objects that are displayed on the display screen of devices 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 part of the user interface with which the user is interacting. In some implementations that include a cursor or other location marker, the cursor acts as the "focus selector," and thus when an 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 that include a touch screen display (e.g., touch-sensitive display system 112 of FIG. 1A or touch screen 112 of FIG. 4A) that enables direct interaction with user interface elements on the touch screen display, the detected contact on the touch screen acts as the "focus selector," and thus when an 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 touch screen display, the particular user interface element is adjusted according to the detected input. In some implementations, the focus is moved from one area of the user interface to another area of the user interface without movement of a corresponding cursor or movement of the contact on the touch screen display (e.g., by using the tab key or arrow keys to move the focus from one button to another), and in these implementations, the focus selector moves in accordance with the movement of the focus between various areas of the user interface. Regardless of the particular form the focus selector takes, the focus selector is generally a user interface element (or a contact on the touch screen display) that is controlled by the user (e.g., by indicating to the device the element of the user interface with which the user intends to interact) so that the user's intended interaction is communicated by the user interface.For example, while a press input is detected on a touch sensing surface (e.g., a touch pad or a touch screen), the position of a focus selector (e.g., a cursor, a contact, or a selection box) over the corresponding button indicates that the user intends to activate that corresponding button (rather than other user interface elements shown on the display of the device).
[0176] As used herein and in the claims, the term "characteristic strength" of a contact refers to the characteristics of that contact based on one or more strengths of the contact. In some embodiments, the characteristic strength is based on a plurality of strength samples. The characteristic strength is optionally based on a set of strength 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 number of strength samples, i.e., a predetermined event (e.g., after detecting a contact, before detecting lift-off of the contact, before or after detecting the start of movement of the contact, before detecting the end of the contact, before or after detecting an increase in the strength of the contact, and / or before or after detecting a decrease in the strength of the contact). The characteristic strength of a contact is optionally based on one or more of the maximum value of the strength of the contact, the mean value of the strength of the contact, the average value of the strength of the contact, the top 10 percentile value of the strength of the contact, the median value of the strength of the contact, the top 90 percent value of the strength of the contact, etc. In some embodiments, the duration of the contact is used when determining the characteristic strength (e.g., when the characteristic strength is the average of the strength of the contact over time). In some embodiments, the characteristic strength is compared to a set of one or more strength thresholds to determine whether an action has been performed by a user. For example, a set of one or more strength thresholds optionally includes a first strength threshold and a second strength threshold. In this example, a contact having a characteristic strength that does not exceed the first threshold results in a first action, a contact having a characteristic strength that exceeds the first threshold but does not exceed the second threshold results in a second action, and a contact having a characteristic strength that exceeds the second threshold results in a third action. In some embodiments, the comparison between the characteristic strength and one or more thresholds is not used to determine whether to perform a first action or a second action, but is used to determine whether to perform one or more actions (e.g., whether to perform each action or whether to refrain from performing each action).
[0177] In some embodiments, for the purpose of determining characteristic intensity, a portion of a gesture is specified. For example, the touch sensing surface optionally receives continuous swipe contacts that transition from a starting location to reach an ending location, and at that point the intensity of the contact increases. In this example, the characteristic intensity of the contact at the ending location is optionally based on only a portion of the continuous swipe contact (e.g., only the portion of the swipe contact at the ending location) rather than the entire swipe contact. In some embodiments, optionally, a smoothing algorithm is applied to the intensity of the swipe contact before determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of a non-weighted 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 minor increases or decreases in the intensity of the swipe contact for the purpose of determining characteristic intensity.
[0178] The intensity of a contact on the touch sensing surface is optionally characterized relative 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 typically corresponds to the intensity at which the device performs an operation associated with clicking a button or trackpad of a physical mouse. In some embodiments, the deep press intensity threshold typically corresponds to the intensity at which the device performs an operation different from the operation associated with clicking a button or trackpad of a physical mouse. 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 sensing surface without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally, unless otherwise specified, these intensity thresholds are consistent across various sets of user interface figures.
[0179] An increase in the characteristic strength of a contact from a strength below a light press strength threshold to a strength between the light press strength threshold and a deep press strength threshold may be referred to as an input of "light press". An increase in the characteristic strength of a contact from a strength below a deep press strength threshold to a strength above the deep press strength threshold may be referred to as an input of "deep press". An increase in the characteristic strength of a contact from a strength below a contact detection strength threshold to a strength between the contact detection strength threshold and the light press strength threshold may be referred to as a detection of a contact on the touch surface. A decrease in the characteristic strength of a contact from a strength above the contact detection strength threshold to a strength below the contact detection strength threshold may be referred to as a detection of a lift-off of the contact from the touch surface. In some embodiments, the contact detection strength threshold is zero. In some embodiments, the contact detection strength threshold is greater than zero.
[0180] In some embodiments described herein, in response to detecting a gesture that includes each press input, or in response to detecting each press input performed by each contact (or contacts), one or more operations are performed, and each press input is detected based at least in part on detecting an increase in the strength of a contact (or contacts) above a press input strength threshold. In some embodiments, each operation is performed in response to detecting an increase in the strength of each contact above the press input strength threshold (e.g., the "downstroke" of each press input). In some embodiments, the press input includes an increase in the strength of each contact above the press input strength threshold and a subsequent decrease in the strength of the contact below the press input strength threshold, and each operation is performed in response to detecting a subsequent decrease in the strength of each contact below the press input threshold (e.g., the "upstroke" of each press input).
[0181] In some embodiments, the device employs intensity hysteresis to avoid spurious inputs sometimes referred to as "jitter", and the device defines or selects a hysteresis intensity threshold having a predefined relationship to the press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable percentage of the press input intensity threshold). Thus, in some embodiments, a press input includes an increase in the intensity of each contact above the press input intensity threshold and a subsequent decrease in the intensity of the contact below the hysteresis intensity threshold corresponding to the press input intensity threshold, and each operation is performed in response to detecting a subsequent decrease in the intensity of each contact below the hysteresis intensity threshold (e.g., the "upstroke" of each press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in the intensity of a contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and each operation is performed in response to detecting the press input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, depending on the situation).
[0182] For ease of explanation, the description of an operation performed in response to a press input associated with a press input intensity threshold or a gesture including a press input is optionally triggered in response to detecting any of an increase in the intensity of a contact above the press input intensity threshold, an increase in the intensity of a contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, a decrease in the intensity of a contact below the press input intensity threshold, and / or a decrease in the intensity of a contact below the hysteresis intensity threshold corresponding to the press input intensity threshold. Further, in examples where an operation is described as being performed in response to detecting a decrease in the intensity of a contact below the press input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of a contact corresponding to and below a hysteresis intensity threshold lower than the press input intensity threshold.
[0183] Next, attention is directed to embodiments of a user interface (“UI”) and related processes implemented on an electronic device such as the portable multifunctional device 100, device 300, or device 500.
[0184] Figures 6A - 6EE illustrate exemplary user interfaces for presenting suggestions for personalized training based on completed training, according to some embodiments. In some embodiments, the suggestions for personalized training represent training content (e.g., audio and / or video) that prompts the user to perform a particular type of physical activity over a given period of time. The user interfaces of these figures are used to illustrate the processes described below, including the process of FIG. 7.
[0185] FIG. 6A shows an electronic device 600, which is a smartphone having a display 602. The display 602 of the electronic device 600 includes a touch - sensitive surface on which the electronic device 600 can detect user gestures (e.g., taps, swipes, and / or drags). In some embodiments, the electronic device 600 includes one or more features of the electronic devices 100, 300, and / or 500.
[0186] In FIG. 6A, while the home screen 604 is being displayed, the electronic device 600 detects an input 606B at a location corresponding to the application icon 606A.
[0187] In FIG. 6B, in response to detecting the input 606B, the electronic device 600 launches an activity (e.g., physical activity) application. Launching the activity application includes replacing the display of the home screen 604 with the history user interface 608 of the activity application. Further, the electronic device 600 displays a plurality of options near the bottom of the display 602 that includes an option 610A. While the history user interface 608 is being displayed, the electronic device 600 detects an input 610B at a location corresponding to the option 610A.
[0188] In FIG. 6C, in response to detecting input 610B, electronic device 600 replaces the display of history user interface 608 with training user interface 612. Training user interface 612 includes options 614A - 614D for filtering training based on the type of exercise (e.g., treadmill, cycling, rowing, core, high-intensity interval training (HIIT), yoga, etc.). Additionally, training user interface 612 includes a plurality of training suggestions for the user, and the training suggestions are based on one or more trainings completed by the user. For example, training suggestion 616A represents a training that shares one or more characteristics with a subset of the trainings completed by the user (e.g., the most recently completed training). Here, the user recently completed core training with a different trainer, Emma. Accordingly, electronic device 600 represents a training that has characteristics shared with the user's most recently completed training and provides training suggestion 616A. Specifically, the training represented by training suggestion 616A and the user's most recently completed training have the same exercise type (core). Examples of shared characteristics include exercise type, duration, music, and trainer. Training suggestion 616C, similar to training suggestion 616A, shares one or more characteristics with a subset of the trainings completed by the user. In contrast to training suggestion 616A, which is based on the most recently completed training, training suggestion 616C is based on one or more trainings completed over a predetermined time period (e.g., more than the past 30, 60, or 90 days). For example, the user completed 10 trainings in the past 30 days, and the most common exercise type among the 10 trainings is HIIT. As a result, electronic device 600 displays training suggestion 616C, which represents a training of the HIIT exercise type (e.g., the most common exercise type among the user's completed trainings over a given period). While displaying training user interface 612, electronic device 600 detects input 618 at the location corresponding to training suggestion 616A.
[0189] In FIG. 6D, in response to detecting the input 618, the electronic device 600 replaces the display of the training user interface 612 with the detailed user interface 620. The detailed user interface 620 includes the training characteristics represented by the training proposal 616A. For example, the detailed user interface 620 includes an exercise type 622A, a trainer 622B, a duration 622C, music 622D, essential equipment 622E, and a completion instruction 622F.
[0190] The detailed user interface 620 also includes an option 623A that can be selected by the user to play video content corresponding to the training (e.g., a video showing the training), and an option 623B that can be selected by the user to play a preview video corresponding to the training. In some embodiments, the preview video is different from the video content corresponding to the training. For example, the preview video can include a subset of the video content corresponding to the training and may have a shorter duration than the video content corresponding to the training.
[0191] The detailed user interface 620 also includes a music section 625 that identifies a music playlist that includes one or more music tracks corresponding to the training. For example, the music section 625 can identify a music playback playlist that includes one or more music tracks to be played during the training. The music section 625 includes an option 623C that can be selected by the user 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 corresponding to individual music tracks and can be selected 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 of 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 the option 624A.
[0193] In FIG. 6E, in response to detecting the input 624B, the electronic device 600 replaces the display of the detailed user interface 620 with the training user interface 612. While displaying the detailed user interface 620, the electronic device 600 detects an input 626 with a right-to-left movement at a location corresponding to the training suggestion 616A.
[0194] In FIG. 6F, in response to detecting input 626, electronic device 600 slides a portion of training suggestion 616A from display 602 and slides training suggestion 616B onto display 602. Additionally, electronic device 600 slides a portion of training suggestion 616E onto display 602. In some embodiments, in response to detecting input 610B, electronic device 600 displays training suggestion 616B instead of training suggestion 616A (e.g., in accordance with a determination that the user has completed a training that is part of a training program, such as a training series with a predetermined sequence of trainings or multiple episodes, where the most recently completed training is part of the training program). For example, in contrast to FIG. 6C, electronic device 600 displays training suggestion 616B (Episode 2: Treadmill) as a first personalized suggestion instead of training suggestion 616A (Core with Amy). In some embodiments, electronic device 600 displays training suggestion 616B (Episode 2: Treadmill) as a first personalized suggestion when the user has completed a training that is part of a training program (find your pace). Alternatively, as shown in FIG. 6C, in some embodiments, when the user has not completed a training that is part of a training program, electronic device 600 displays training suggestion 616A as a first personalized suggestion. While displaying training user interface 612, electronic device 600 detects input 628 at a location corresponding to training suggestion 616B.
[0195] In FIG. 6G, in response to the detection of 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 training suggestions corresponding to a specific training program (e.g., finding one's own speed). The training program consists of a plurality of items of training content ordered in a predetermined sequence. In accordance with the determination that the training of the training program is complete, electronic device 600 visually emphasizes, using a boundary, the training suggestion corresponding to the training that comes next in the predetermined sequence of training of the training program. For example, electronic device 600 visually emphasizes training suggestion 634 in accordance with the determination that the training corresponding to training suggestion 632A is complete. Suggestion 634 matches training suggestion 632B and corresponds to the training that is next in the sequence of training. In addition, display 632AA indicates that the training corresponding to training suggestion 632A is complete. Program user interface 630 also includes an option 632BB selectable by the user to open and play a program introduction video. The program introduction video is separate and different from the training within the training program. In some embodiments, the program introduction video includes audio and / or visual clips (e.g., image or video clips) from some or all of the training of the training program. In some embodiments, selecting a particular training suggestion 632A, 632B, 632C results in the display of a corresponding detailed user interface (similar to detailed user interface 620 in FIG. 6D). In some embodiments, the detailed user interface for each training can include selectable options (e.g., play a video showing the training) for playing video content corresponding to the training, and a separate selectable option (e.g., similar to options 623A and 623B in FIG. 6D) for playing the program introduction video.While displaying the program user interface 630, the electronic device 600 detects an input 624C at a location corresponding to option 624A.
[0196] In FIG. 6H, in response to detecting the input 624C, the electronic device 600 replaces the display of the program user interface 630 with a training user interface 612. While displaying the training user interface 612, the electronic device 600 moves the input 636 in an upward direction and detects it.
[0197] In FIG. 6I, in response to detecting the input 636, the electronic device 600 scrolls the training user interface 612. The scrolling of the training user interface 612 includes sliding at least a portion of the training suggestions (e.g., 616A, 616B, and 616E) from the display 602 (as shown in FIG. 6J, for example). The scrolling of the training user interface 612 includes changing the training suggestion 616B so as to occupy a smaller portion of the display 602 as compared to FIG. 6H. The scrolling of the training user interface 612 includes sliding the training suggestions 616F - 616I onto the display 602. The training suggestions 616F - 616I represent the most recently available training (e.g., for a predetermined length of time (e.g., past day, week, month)). The scrolling of the training user interface 612 includes stopping the display of options 614A - 614D. In some embodiments, the electronic device 600 maintains the display of options 614A - 614D in response to detecting the input 636. While displaying the training user interface 612, the electronic device 600 moves the input 638 in an upward direction and detects it.
[0198] In FIG. 6J, in response to detecting input 638, electronic device 600 scrolls training user interface 612. The scrolling of training user interface 612 includes the sliding of training suggestions 616J - 616Q to display 602. Training suggestions 616J - 616Q represent new training that the user has not completed. In some embodiments, the scrolling of training user interface 612 includes displaying training complementary to the completed training. In some embodiments, the training complementary to the completed training is training that balances the physical activities performed during the completed training. For example, running requires physical activities that can shorten muscles. Accordingly, yoga is complementary training for running because yoga promotes muscle elongation.
[0199] In some embodiments, the completed training includes training that is not accessible via the training user interface 612. For example, the electronic device 600 determines that the user has completed the training being executed, and the training being executed is not presented in the training user interface 612. In some embodiments, in response to detecting the input 638, the electronic device 600 displays the training proposal 616J based at least in part on a determination that the training represented by the training proposal 616J is complementary to the completed training (e.g., yoga is complementary to execution). In some embodiments, the electronic device 600 displays training that does not share one or more characteristics with the completed training. For example, the electronic device 600 determines that the user has completed training in a core exercise type. In some embodiments, in response to detecting the input 638, the electronic device 600 determines that the training represented by the training proposal 616K does not share one or more characteristics with the completed training (e.g., a new trainer (e.g., Matt)), and / or is based at least in part on a determination that it shares one or more characteristics with the completed training (e.g., the same exercise type (e.g., core)), and displays the training proposal 616K. Further, the scroll of the training user interface 612 includes a slide of the training proposals 616L - 616Q to the display 602. The training proposals 616L - 616Q represent popular trainings frequently selected by a group of users. While displaying the training user interface 612, the electronic device 600 detects the input 640 moving in the upward direction.
[0200] In FIG. 6K, in response to detecting input 640, electronic device 600 scrolls training user interface 612. The scrolling of training user interface 612 includes sliding training suggestions 616R - 616U to display 602. Training suggestions 616R - 616S represent audio 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). Training suggestions 616T - 616U represent audio content corresponding to a predetermined route that is at or near one or more physical locations (e.g., a 5 - kilometer route in Hackney). Further, the scrolling of training user interface 612 includes displaying options 644A - 644E for filtering training based on the trainer. While displaying training user interface 612, electronic device 600 detects input 642 by moving it in the upward direction.
[0201] In FIG. 6L, in response to detecting input 642, electronic device 600 scrolls training user interface 612, resulting in reaching the end of training user interface 612. The scrolling of training user interface 612 includes displaying a library of previously saved training by the user, including saved trainings 646A - 646B. Training user interface 612 includes option 648A which, when selected, initiates the process of downloading the training content represented by saved training 646A to electronic device 600. Additionally, training user interface 612 includes display 648B indicating that the training content represented by saved training 646B has already been downloaded to electronic device 600. Training user interface 612 also includes option 648C which, when selected, replaces the display of training user interface 612 with a different user interface that displays all the trainings already downloaded to electronic device 600. While training user interface 612 is being displayed, electronic device 600 detects input 650 at a location within a predetermined area near the top of display 602.
[0202] In FIG. 6M, in response to detecting input 650, electronic device 600 scrolls up to the top of training user interface 612, resulting in the display of options 614A - 614D. While training user interface 612 is being displayed, electronic device 600 detects input 652 at the location corresponding to option 614C.
[0203] In FIG. 6N, in response to detecting input 652, electronic device 600 replaces the display of training user interface 612 with the display of filter user interface 654. Filter user interface 654 includes filtered training proposals 660A - 660D based on selected option 614C. Additionally, filter user interface 654 includes a display 656 indicating a characteristic (e.g., rowing) common to filtered training proposals 660A - 660D. In the illustrated scenario, filtered training proposals 660A - 660D all have a common specific (e.g., rowing) training type (or training modality). Filter user interface 654 includes an option 660E selectable by the user to open and play a training modality introduction video. The training modality introduction video is separate and different from the training corresponding to filtered training proposals 660A - 660D. In some embodiments, the training modality introduction video can identify to the user any equipment required for the training modality (e.g., may require a rowing machine for rowing training). While displaying filter user interface 654, electronic device 600 detects input 658B at a location corresponding to option 658A.
[0204] In FIG. 6O, in response to detecting input 658B, electronic device 600 displays a filter user interface 662 with additional options for filtering training (e.g., in addition to the exercise types currently being filtered for rowing). For example, filter user interface 662 includes options 664A - 664H for filtering training based on the trainer, options 666A - 666E for filtering training based on the duration of the training, and options 668A - 668F for filtering training based on the genre of the music. Electronic device 600 obscures (e.g., makes unclear) options 664A and 664H based at least in part on the determination that the filters represented by options 664A and 664H do not currently have any selected trainers (e.g., neither Emma nor Joyce has any rowing training). While displaying filter user interface 662, electronic device 600 detects input 670 at the location corresponding to option 664E.
[0205] In FIG. 6P, in response to detecting input 670, electronic device 600 visually emphasizes option 664E to indicate that option 664E has been selected. Additionally, in response to detecting input 670, electronic device 600 obscures (e.g., makes unclear) option 668A based at least in part on the determination that the filter represented by option 668A is not currently satisfied (e.g., Joe has no training using pop music). Similarly, in response to detecting input 670, electronic device 600 obscures (e.g., makes unclear) option 666E based at least in part on the determination that the filter represented by option 666E is not currently satisfied (e.g., Joe has no training with a duration of 40 minutes). While displaying filter user interface 662, electronic device 600 detects input 672 at the location corresponding to option 664F.
[0206] In FIG. 6Q, in response to detecting input 672, electronic device 600 visually emphasizes option 664F to indicate that option 664F has been selected. Additionally, in response to detecting input 670, electronic device 600 stops obscuring (e.g., making unclear) option 666E, at least in part based on the determination that the duration represented by option 666E meets the currently selected filter (e.g., Gregg has at least one training with a 40-minute duration). While displaying filter user interface 662, electronic device 600 detects input 674A at the location corresponding to option 666D, input 674B at the location corresponding to option 668D, and input 674C at the location corresponding to option 668F.
[0207] In FIG. 6R, in response to detecting a set of inputs (e.g., 674A - 674C), electronic device 600 visually emphasizes options 666D, 668D, and 668F to indicate that each option has been selected. While displaying filter user interface 662, electronic device 600 detects input 676 with movement in the downward direction.
[0208] In FIG. 6S, in response to detecting input 676, electronic device 600 stops displaying filter user interface 662 and displays filter user interface 654 with an update to the proposed filtered training based on the selection detected in filter user interface 662. Due to the filter selection, filter user interface 654 no longer includes proposed filtered trainings 660A - 660C. Instead, filter user interface 654 is updated to include proposed filtered trainings 660D - 660F. Additionally, filter user interface 654 includes filter representations 678A - 678E, each filter representation corresponding to the filter option selected in filter user interface 662. While displaying filter user interface 654, electronic device 600 detects input 680 at the location corresponding to filter representation 678C.
[0209] In FIG. 6T, in response to detecting input 680, electronic device 600 stops displaying filter representation 678C when a 30 - minute filter is removed from the filter selection. Additionally, in response to detecting input 680, electronic device 600 updates the proposed filtered training based on the updated filter selection. Due to the updated filter selection, filter user interface 654 includes proposed filtered training 660G, which may be included with its 20 - minute duration by removing the 30 - minute filter.
[0210] In some embodiments, instead of detecting a selection of option 614C for a filter based on the exercise type, the electronic device 600 detects a selection of a filtering option based on the trainer. In some embodiments, the electronic device 600 detects an input at a location corresponding to option 644A in FIG. 6L. In FIG. 6U, in response to detecting the input, the electronic device 600 displays a filter user interface 682. The filter user interface 682 includes filtered training proposals 684A-684D based on the selected option 644A. Additionally, the filter user interface 682 includes a display 683 indicating a characteristic (e.g., Amy) that the filtered training proposals 684-684D have in common. While displaying the filter user interface 682, the electronic device 600 detects an input 658C at a location corresponding to option 658A.
[0211] In FIG. 6V, in response to detecting the input 658C, the electronic device 600 displays a filter user interface 686 with additional options for filtering the training (e.g., in addition to the trainer currently being filtered by Amy). For example, the filter user interface 686 includes options 688A-688F for filtering the training based on the exercise (e.g., training) type, options 666A-666E for filtering the training based on the duration of the training, and options 668A-668F for filtering the training based on the genre of the music.
[0212] Figure 6W shows another example of a training user interface 612A similar to the training user interface 612. The features described with reference to the training user interface 612A can be incorporated into the training user interface 612, and the features described with reference to the training user interface 612 can be incorporated into the training user interface 612A. The same features of the training user interface 612A are labeled with the same reference numbers as those used in the training user interface 612. Similar to the training user interface 612, the training user interface 612A includes options 614A - 614D for filtering training based on exercise type, and training suggestions 616C - 616D selected based on the user's past training. The training user interface 612A includes a once - a - week rounding option 615A. Selecting the once - a - week rounding option 615A causes the playback of a one - week rounded video corresponding to the current week. For example, in some embodiments, new weekly rounded videos can be posted every week (e.g., on Sundays each week), and new training added to the training application that week can be introduced in the weekly rounded video. In Figure 6W, the current date is August 16, 2020, and selecting the once - a - week rounding option 615A causes the playback of a one - week rounded video corresponding to that week. In Figure 6W1, the current date is August 23, 2020, and a new once - a - week rounding option 615B corresponding to a different once - a - week rounded video (e.g., the weekly rounded video corresponding to the week of August 23, 2020) is presented in the training user interface 612A. In Figure 6W1, while displaying the training user interface 612A, the electronic device 600 detects the input 617 moving in the 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 the sliding of training suggestions 616J, 616K, 616V, 616W to display 602. Training suggestions 616J and 616K, such as the training suggestions 616J and 616K in FIG. 6J, are training suggestions selected based on being complementary to previous training performed by the user. Training suggestions 616V, such as the training suggestions 616F, 616H, 616G, and 616I in FIG. 6I, are training suggestions corresponding to new training added to the application within the last week. Training suggestions 616W, such as the training suggestion 616B in FIG. 6H, are training suggestions corresponding to a training program that includes an ordered series of training. While displaying training user interface 612A, electronic device 600 detects input 619 by moving it in the 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 the sliding of training suggestions 616X, 616Y, and 616Z, and options 644A - 644E to display 602. Training suggestions 616X, 616Y, and 616Z, such as the training suggestions 616L - 616Q in FIG. 6J, are training suggestions corresponding to training common to training applications. Options 644A - 644E are the same as options 644A - 644E in FIG. 6K and can be selected to filter training suggestions based on the trainer. While displaying training user interface 612A, electronic device 600 detects input 621 by moving it in the 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 a slide of training proposal 616AA and saved trainings 646A, 646B to display 602. Training proposal 616AA is similar to training proposal 616R in FIG. 6K and is a training proposal representing audio training. Saved trainings 646A, 646B are identical to saved trainings 646A, 646B in FIG. 6L. While displaying training user interface 623, electronic device 600 detects input 623 by moving it in a downward direction.
[0216] In FIG. 6AA, in response to detecting input 623, electronic device 600 scrolls training user interface 612A (as previously shown in FIG. 6X) to again reveal training proposals 616J, 616K, 616V, and 616W. While displaying training user interface 612A, electronic device 600 detects input 627 at the location corresponding to training proposal 616W.
[0217] In FIG. 6BB, in response to detecting input 627, electronic device 600 replaces the display of training 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 a plurality of training suggestions corresponding to a particular training program (e.g., yoga for a runner with Celebrity X). By scrolling in program user interface 630A (e.g., via user input 629), a plurality of training suggestions 635A - D of FIG. 6CC are revealed. A training program consists of a plurality of items of training content ordered in a predetermined sequence. In accordance with a determination that training of a training program has been completed, electronic device 600 visually emphasizes, using a border, a training suggestion corresponding to the next training in the predetermined sequence of training of the training program. For example, electronic device 600 visually emphasizes training suggestion 634A in accordance with a determination that the training corresponding to training suggestion 635A has been completed. Suggestion 634A matches training suggestion 635B and corresponds to the next training in the sequence of training. Program user interface 630 also includes an option 634B selectable by the user to open and play a program introduction video. The program introduction video is separate and different from the training within the training program. In some embodiments, the program introduction video includes audio and / or visual clips (e.g., image or video clips) from some or all of the training of the training program.In some embodiments, selecting a particular training proposal 634A, 635A - 635D results in the display of a corresponding detailed user interface (similar to the detailed user interface 620 of FIG. 6D). In some embodiments, the detailed user interface for each training can include selectable options for playing video content corresponding to the training, and a separate selectable option for playing a program introduction video (e.g., similar to options 623A and 623B of FIG. 6D).
[0218] Figure 6DD shows the training modality user interface 654A. The training modality user interface 654A is similar to the filter user interface 654 of Figure 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 Figure 6W or Figure 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 training proposals 660F - 660H based on the selected option 614B. In the illustrated scenario, all of the filtered training proposals 660F - 660H have a common specific training type (e.g., cycling) (or training modality). The training modality user interface 654A includes an option 660I that can be selected by the user to open and play a training modality introduction video. The training modality introduction video is separate and different from the training corresponding to the filtered training proposals 660F - 660H. In some embodiments, the training modality introduction video can identify any equipment required for the training modality (e.g., a stationary bike may be required for cycling training). While the training modality user interface 654A is being displayed, the electronic device 600 detects an input 661 at the location corresponding to the option 660I.
[0219] In Figure 6EE, in response to detecting the input 661, the electronic device 600 starts playing the training modality introduction video 661A.
[0220] FIG. 7 is a flow diagram showing a method for navigating and displaying a training proposal using an electronic device according to some embodiments. Method 700 is executed in an electronic device (e.g., 100, 300, 500, or 600) having 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 for navigating and displaying training proposals. This method reduces the cognitive burden on the user for navigating and displaying training proposals, thereby creating a more efficient human-machine interface. In the case of a battery-operated computing device, enabling the user to navigate and display training proposals faster and more efficiently saves 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 optionally is a communication (e.g., wired communication, wireless communication) between a display generation component and one or more input devices. 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. 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) to an integrated or external display generation component via a wired or wireless connection 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) a selectable user interface object (e.g., 610A affordance) for displaying a training proposal on a display (e.g., 602). The electronic device detects (704) a user input (e.g., 610B) corresponding to the selectable user interface object for displaying the training proposal (e.g., via a touch-sensitive display).
[0224] In response to detecting user input corresponding to a selectable user interface object for displaying training suggestions, an electronic device (708) includes, when selected, a first option (e.g., 614A - 614D, selectable user interface object, affordance) that causes the electronic device to initiate a process of displaying a training suggestion that shares a first common training parameter, and a second option (e.g., 614A - 614D, selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process for displaying a training suggestion that shares a second common training parameter, a plurality of selectable options (710); and displays a user interface (e.g., 612) for displaying training suggestions, including simultaneously displaying a plurality of training suggestions (712) (e.g., 616A - 616D) selected for display based on the training history of the user of the electronic device. By simultaneously displaying the plurality of selectable options and the plurality of training suggestions, the user can quickly gain access to the desired training, thereby reducing the number of inputs required to select a training. By reducing the number of inputs required to perform an operation, the operability of the device is improved, (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), making the user - device interface more efficient, and in addition, reducing power usage and improving the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0225] In some embodiments, both the first common training parameter and the second common training parameter correspond to a first type of training parameter (e.g., type of exercise, type / genre of music, trainer, duration). In some embodiments, the training suggestion corresponds to (e.g., represents) a training (e.g., audio content and / or video content that induces the user to perform a physical activity). In some embodiments, selecting a training suggestion initiates a process for playing a training corresponding to the training suggestion.
[0226] In some embodiments, a plurality of training proposals (e.g., 616A - 616D) includes (714) a first training proposal (e.g., 616A - 616B, a graphical representation of the training), and the first training proposal corresponds to a first subset of the collection of completed trainings (e.g., the most recent / last completed trainings that are part of a program / series). In some embodiments, the first training proposal is selected for display based on the correspondence between the first training proposal and the first subset of the collection of completed trainings. In some embodiments, the collection of completed trainings is the training (e.g., audio / video content for training) completed by the user of the electronic device. In some embodiments, the first training proposal (e.g., 616A) is displayed in a region of the display above the region occupied by a second training proposal (e.g., 616C). In some embodiments, the first training proposal (e.g., 616A) corresponds to the first subset when the first training proposal shares one or more characteristics (e.g., training type, trainer, music genre, duration, required equipment, series / program) with the last completed training. For example, the first training proposal has the same training type and trainer as the last training completed by the user. As another example, the user recently completed one of the trainings within a training series / program, and thus, the first training proposal (e.g., 616B) is the next training in the series / program. Automatically proposing training based on the collection of completed trainings improves the quality of the proposals to the user, thereby providing a means for the user to select. Otherwise, additional input is required to further specify the desired training.By performing an operation when a set of conditions is met without requiring further user input, the operability of the device is enhanced, the user-device interface is made more efficient (e.g., by assisting the user to provide appropriate input when operating / interacting with the device and reducing user errors), and in addition, the power consumption of the device is suppressed and the battery life is improved by enabling the user to use the device more quickly and efficiently.
[0227] In some embodiments, the first subset of the collection of completed trainings includes at least one training of a predefined series of trainings. In some embodiments, the proposal for the first training (e.g., 616B) corresponds to the next training that has not been completed in the predefined sequence of trainings (e.g., the training that sequentially follows at least one training within the first subset).
[0228] In some embodiments, the first subset of the collection of completed trainings excludes (e.g., does not include) at least one training of a predefined series of trainings. In some embodiments, the proposal for the first training (e.g., 616A) corresponds to the most recently completed training. In some embodiments, the proposal for the first training corresponds to the most recently completed training based on one or more of the trainer, type of exercise, duration of the training, music, and essential equipment.
[0229] In some embodiments, the electronic device detects a user input (e.g., 628) corresponding to a first training proposal (e.g., 616B) for the next training that is not completed in a given series of trainings. In some embodiments, in response to detecting a user input corresponding to a first training proposal for the next training that is not completed in a given series of trainings, the electronic device displays one or more training proposals (e.g., 634, 632A - 632C) of the given series of trainings. In some embodiments, in response to detecting a user input corresponding to a first training proposal for the next training that is not completed in a given series of trainings, according to a determination that at least one training of the given series of trainings is completed, the electronic device visually emphasizes one or more training proposals (e.g., 634) of the given series of trainings without visually emphasizing different training proposals (e.g., 632A, 632C) of one or more training proposals of the given series of trainings. When a training in the given series is completed, by automatically visually emphasizing the next training of the given series of trainings, the user can quickly select the desired training. By performing an operation when a set of conditions is met without requiring further user input, the operability of the device is enhanced, the user - device interface is made more efficient (e.g., by assisting the user to provide appropriate input when operating / interacting with the device and reducing user errors), and in addition, by enabling the user to use the device more quickly and efficiently, the power consumption of the device is reduced and the battery life is improved.
[0230] In some embodiments, the plurality of training suggestions includes a second training suggestion (e.g., 616C - 616D, graphical display of training), where the second training suggestion corresponds to a second subset of the collection of completed trainings (e.g., trainings completed during a predefined 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 training suggestion is selected for display based on the correspondence between the second training suggestion and the second subset of the collection of completed trainings. In some embodiments, the second training suggestion (e.g., 616C - 616D) is displayed in a region of the display below the region occupied by the first training suggestion (e.g., 616A - 616B). In some embodiments, the second training suggestion corresponds to the second subset in that the second training suggestion shares one or more characteristics (e.g., training type, trainer, music genre, duration, required equipment, series / program) with the trainings completed on the last 30th, 60th, or 90th day. For example, the user has completed 10 trainings in the past 30 days, and the second training suggestion is a yoga training because yoga is the most common training type among the 10 trainings. As another example, the user has completed 30 trainings in the past 90 days, and the second training suggestion is a training by a specific trainer because that specific trainer is the most common trainer among the 30 trainings. In some embodiments, the second training suggestion is selected based on two or more characteristics (e.g., training type and duration). Automatically suggesting trainings based on the collection of completed trainings improves the quality of the suggestions to the user, thereby providing a means for the user to make a selection. Otherwise, additional input would be required to further specify the desired training.By performing an operation when a set of conditions is met without requiring further user input, the operability of the device is enhanced, the user-device interface is made more efficient (e.g., by assisting the user to provide appropriate input when operating the device / interacting with the device and reducing user errors), and in addition, the power consumption of the device is suppressed and the battery life is improved by enabling 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 training suggestions (e.g., 616A - 616D), the electronic device detects a first scroll gesture (e.g., 636). In some embodiments, after detecting the first scroll gesture (e.g., in response to detecting it), the electronic device displays a third training suggestion (e.g., 616J) on the display, and the third training suggestion corresponds to a third subset of the collection of completed trainings (e.g., trainings of the most common exercise types performed by the user, a predetermined duration (e.g., the last 30 days, 60 days, or 90 days), the most recent / last completed training, all or a part of the completed trainings). In some embodiments, the third training suggestion is selected for display based on a third training suggestion that does not share a third common training parameter (e.g., trainer, exercise type, duration, etc.) with the third subset of the collection of completed trainings.
[0232] In some embodiments, the third training suggestion (e.g., 616J) is also selected for display based on a third training suggestion that shares third and fourth common training parameters. In some embodiments, the third training suggestion is also selected for display based on a third training suggestion that is complementary to (e.g., has a predefined correspondence / connection with) a third subset of the collection of completed trainings. For example, the user has mainly completed running training, and thus the device suggests yoga as complementary training to running.
[0233] In some embodiments, while displaying a plurality of selectable options (e.g., 614A - 614D) and a plurality of training suggestions (e.g., 616A - 616D), the electronic device detects a second scroll gesture (e.g., 636). In some embodiments, after detecting the second scroll gesture (e.g., in response to detecting it), the electronic device displays a fourth training suggestion (e.g., 616K) on the display, and the fourth training suggestion corresponds to a fourth subset of the collection of completed trainings (e.g., a particular type of training (e.g., training without corresponding video / audio), training that is not selectable as part of a plurality of training suggestions). In some embodiments, the fourth training suggestion is selected for display based on the correspondence between the fourth training suggestion and the fourth subset. In some embodiments, the fourth subset is different from the first, second, and / or third subsets. 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 scroll gesture (e.g., a vertical scroll gesture), the electronic device detects a horizontal scroll gesture at a location corresponding to the third training suggestion. In some embodiments, in response to detecting the horizontal scroll gesture, the electronic device displays the fourth suggestion.
[0234] In some embodiments, the plurality of training proposals include training proposals (e.g., 616A - 616U) for training corresponding to a default list of audio items (e.g., a music playback list (such as shown in FIG. 6D)), for example, audio and / or video content that induces the user to perform a physical activity.
[0235] In some embodiments, the plurality of training proposals include training proposals (e.g., 616A - 616Q) for training with metadata that causes an output of a prompt (e.g., coaching, audio or visual content that prompts the user to perform a specific action or attempt to achieve a goal) during playback of the training (e.g., on an electronic device and / or an external device).
[0236] In some embodiments, the plurality of training proposals include training proposals (e.g., 616A - 616U) for training that cause one or more physical activity metrics of an external device (e.g., a smartwatch, a heart rate monitor, and / or a fitness tracker) to be recorded (e.g., via one or more sensors) when selected for playback (e.g., the start of video / audio content). By automatically recording one or more physical activity metrics when a training is selected for playback, the user can track their physical activity without the need for additional input. By performing an operation when a set of conditions is met without the need for further user input, the operability of the device is enhanced, the user - device interface is made more efficient (e.g., by assisting the user to provide appropriate input when operating / interacting with the device and reducing user errors), and in addition, the power consumption of the device is reduced and the battery life is improved by enabling the user to use the device more quickly and efficiently.
[0237] In some embodiments, the plurality of training suggestions include suggestions for training having a type of physical activity different from the type of physical activity of the completed training (e.g., the most common type of physical activity among the completed trainings), such as a type of physical activity (e.g., running, yoga, HIIT, etc.). In some embodiments, the training suggestions have a predefined correspondence (e.g., a complementary relationship) with a fifth subset (e.g., training of the most common type of exercise performed by the user, a predetermined duration (e.g., the most recent 30, 60, or 90 days), the most recent / last completed training, all or a part of the completed training).
[0238] In some embodiments, while displaying a plurality of selectable options (e.g., 614A - 614D) and a plurality of training suggestions (e.g., 616A - 616D), the electronic device detects one or more inputs (e.g., 652, 658B). In some embodiments, in response to detecting one or more inputs, the electronic device stops displaying the plurality of selectable actions and the plurality of training suggestions. In some embodiments, in response to detecting one or more inputs, the electronic device configures the electronic device to display, on the display, a third option (e.g., 664A - 664H, 666A - 666E, 668A - 668F, selectable user interface object, affordance) that, when selected, displays a training suggestion that shares a third common training parameter, and a fourth option (e.g., 664A - 664H, 666A - 666E, 668A - 668F, selectable user interface object, affordance) that, when selected, displays a training suggestion that shares a fourth common training parameter. In some embodiments, the third common training parameter corresponds to a second type of training parameter (e.g., type of exercise, type / genre of music, 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., type of exercise, type / genre of music, trainer, duration).
[0239] In some embodiments, the electronic device detects a selection of a third option (e.g., 664E in FIG. 6O). In some embodiments, in response to detecting the selection of the third option, the electronic device changes one or more visual characteristics (e.g., obscured, grayed out, or otherwise suppressed) of a fourth option (e.g., 666E, 668A in FIG. 6P).
[0240] In some embodiments, the electronic device detects the 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 training proposals (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 has been selected. In some embodiments, while displaying one or more training proposals 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 has been selected. In some embodiments, in response to detecting a user input corresponding to the selectable user interface object indicating that the third option has been selected, the electronic device displays on the display one or more training proposals (e.g., 660G-660E in FIG. 6T) that were not displayed before the detection of the user input corresponding to the selectable user interface object indicating that the third option has been selected.
[0241] In some embodiments, the electronic device displays a fifth training proposal (e.g., 616L-616Q), and the fifth training proposal is selected for display based on the frequency (e.g., in the most recent 7 days, 14 days, 30 days) with which the fifth training proposal is selected by a group of users (e.g., users of external electronic devices). In some embodiments, the fifth training proposal corresponds to popular or trending training. In some embodiments, the fifth training proposal is displayed in response to detecting a scroll gesture (e.g., thereafter) while the electronic device is displaying a plurality of selectable options and a plurality of training proposals.
[0242] In some embodiments, in accordance with a determination that training corresponding to a sixth training proposal (e.g., 616A, 616L) has been completed (e.g., the user has viewed training (e.g., training audio and / or video content)), the electronic device displays on the display a indication that the training corresponding to the sixth training proposal has been completed (e.g., the checkmark 622F of FIG. 6D, the checkmark 616L of FIG. 6J). In some embodiments, in accordance with a determination that the training corresponding to the sixth training proposal has not been completed, the electronic device does not display an indication that the training corresponding to the sixth training proposal has been completed. In some embodiments, the indication is displayed in response to detecting a user input corresponding to the sixth training proposal (e.g., 618 of FIG. 6C). In some embodiments, the sixth training proposal is displayed in response to detecting a scroll gesture (e.g., thereafter) while the electronic device is displaying a plurality of selectable options and a plurality of training proposals.
[0243] In some embodiments, the indication that the training corresponding to the sixth training proposal has been completed is a visual checkmark superimposed on the sixth training proposal (e.g., the checkmark 616L of FIG. 6J).
[0244] In some embodiments, the electronic device detects a user input (e.g., 618) corresponding to a seventh training proposal (e.g., 616A). In some embodiments, in response to detecting a user input corresponding to the seventh training proposal, the electronic device displays a detailed user interface (e.g., 620) for the seventh training proposal on a display, the detailed user interface including one or more training characteristics selected from the group consisting of a device (e.g., 622C), a duration (e.g., 622B), a music genre (e.g., 622D), a type of exercise (e.g., 622A), and a number of times the training corresponding to the seventh training proposal has been completed (e.g., 622F). In some embodiments, the one or more training characteristics are associated with the training corresponding to the seventh training proposal. In some embodiments, the seventh training proposal is displayed in response to (e.g., subsequent to) detecting a scroll gesture while the electronic device is displaying a plurality of selectable options and a plurality of training proposals.
[0245] In some embodiments, the electronic device detects a user input (e.g., 618) corresponding to an eighth training proposal (e.g., 616A). In some embodiments, in response to detecting a user input corresponding to the eighth training proposal, 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 (e.g., launches a music application for playing the audio item) to cause playback of one or more audio items (e.g., music files) that are part of a predefined collection of audio items (e.g., a playlist). In some embodiments, the predefined collection of audio items is associated with a training corresponding to the eighth training proposal. In some embodiments, the electronic device detects a user input corresponding to the audio-selectable user interface object. In some embodiments, in response to detecting a 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 predefined collection of audio items to the user library of the music application. In some embodiments, in response to detecting a 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 predefined collection of audio items in the electronic device. In some embodiments, the eighth training proposal is displayed in response to (e.g., subsequent to) detecting a scroll gesture while the electronic device is displaying a plurality of selectable options and a plurality of training proposals.
[0246] In some embodiments, the electronic device causes an external device to display a ninth training proposal. In some embodiments, the ninth training proposal is based on one or more physical activity metrics of a user of the electronic device. In some embodiments, the one or more physical activity metrics are captured via one or more sensors of the external device.
[0247] In some embodiments, the electronic device displays, within a user interface for presenting training 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 initiate a process for playing new (e.g., previously unavailable to the user) content introduction media (e.g., audio and / or video) corresponding to a plurality of trainings made available to the user of the electronic device within a predefined period (e.g., within yesterday, during the last week). In some embodiments, the new content video identifies each of the plurality of new training suggestions (e.g., by identifying the trainer, title, and / or training type associated with the new training suggestion). In some embodiments, the new content video includes one or more images and / or video clips from each of the plurality of new training suggestions. In some embodiments, the new content video object is displayed within the user interface simultaneously with the plurality of selectable options and the plurality of training suggestions. Displaying an option that, when selected, causes the electronic device to initiate a process for playing new content introduction media corresponding to a plurality of new trainings provides the user with feedback regarding the current state of the device and provides the user with feedback indicating what is required to view the new content introduction media. By providing the user with improved feedback, the operability of the device is enhanced, the user-device interface is made more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and in addition, the power consumption is reduced and the battery life of the device is improved by enabling 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 training proposal (e.g., 616A). In response to detecting a user input corresponding to the tenth training proposal, the electronic device presents on the display a first audio-selectable user interface object (e.g., 623C) that, when selected, initiates a process 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 is associated with training corresponding to the tenth training proposal; a second audio-selectable user interface object (e.g., 623D) that, when selected, initiates a process to cause playback of a first audio item (e.g., a first music file) of the plurality of audio items (e.g., without causing playback of 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 to cause playback of a second audio item (e.g., a second music file different from the first music file) of the plurality of audio items that is different from the first audio item (e.g., without causing playback of other audio items of the plurality of audio items). Each of the different selectable user interface objects that enable the user to play a plurality of audio items within the predefined collection of audio items, or alternatively enable the user to play an individual audio item (e.g., the first audio item or the second audio item), provides the user with feedback regarding the current state of the device and indicates to the user what is required to play the audio items within that collection or the entire predefined collection of individual audio items.By providing improved feedback to the user, the operability of the device is enhanced, (e.g., assisting the user to provide appropriate input when operating the device / interacting with the device and reducing user errors), making the user-device interface more efficient, and in addition, reducing power consumption and improving the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0249] In some embodiments, when a first option (e.g., 614A, 614B, 614C, 614D) is selected, it causes the electronic device to initiate a process of displaying a training suggestion that shares a first common training type (e.g., training 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 the user input corresponding to the first option, the electronic device simultaneously displays one or more training suggestions that share a first common training type (e.g., 660A - 660D, 660F - 660H) (e.g., without displaying training suggestions that do not share the first common training type) and a training type introduction video (e.g., 660E, 660I) (e.g., selectable user interface object, affordance) that, when selected, causes the electronic device to initiate a process for playing an introduction video of the training type corresponding to the first common training type, and the training type introduction video identifies one or more training devices (e.g., dumbbells, yoga mat, treadmill, stationary bike) required for the first common training type.In some embodiments, the second option, when selected, causes the electronic device to initiate a process of displaying a training suggestion that shares a second common training type (e.g., training modality (e.g., HIIT, yoga, cycling, running, core, rowing, dance)) different from the first common training type, the method further including detecting a 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 training suggestions that share the second common training type (e.g., without displaying training suggestions that do not share the second common training type) and a second training type introduction video (e.g., different from the training type introduction video) for playing on the electronic device a second training type introduction video corresponding to the second common training type, the second training type introduction video identifying one or more training devices (e.g., dumbbells, yoga mat, treadmill, stationary bike) required for the second common training type. By simultaneously displaying the training type introduction object and the one or more training suggestions, the user is enabled to quickly access the desired training, thereby reducing the number of inputs required to select a training. By reducing the number of inputs required to perform an operation, the device's operability is improved, the user-device interface is made more efficient (e.g., by assisting the user in providing appropriate inputs and reducing user errors when operating / interacting with the device), and in addition, power usage is reduced and the device's battery life is improved by enabling the user to use the device more quickly and efficiently.
[0250] In some embodiments, when selected, the electronic device causes the electronic device to start a process of displaying training proposals for a plurality of trainings of a predefined sequence of trainings (e.g., FIGS. 6G, 6BB, 6CC) (in some embodiments, a plurality of trainings of a predefined ordered sequence) (e.g., without displaying training proposals for trainings not in the predefined sequence of trainings), and a sixth option (e.g., 616B, 616W) (e.g., a selectable user interface object, affordance) is displayed within a user interface for displaying training proposals. The electronic device detects a user input corresponding to the sixth option. In response to detecting the user input corresponding to the sixth option, the electronic device simultaneously displays a training proposal for a plurality of trainings of a predefined series of trainings (e.g., without displaying training proposals for trainings not corresponding to the predefined series of trainings), and a training series introduction object (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to start a process for playing training series introduction media (e.g., audio and / or video) corresponding to the predefined series of trainings. In some embodiments, each training within a predefined series of trainings corresponds to a unique training video, and the training series introduction video is different from the plurality of training videos within the training series. In some embodiments, the training series introduction video includes one or more video clips and / or one or more images from at least a subset of a predefined series of trainings.In some embodiments, the method, when selected, causes the electronic device to start a process for displaying a training suggestion for a second plurality of trainings within a second predefined series of trainings (in some embodiments, a second plurality of trainings in a second predefined ordered sequence different from the plurality of trainings in the predefined ordered sequence) (e.g., without displaying a training suggestion not in the second predefined series of trainings), by displaying a seventh option (e.g., a selectable user interface object, affordance) within the user interface for displaying training suggestions, wherein the second plurality of trainings within the second predefined series of trainings are different from the plurality of training videos within the predefined series of trainings; detects a user input corresponding to the seventh option; in response to detecting the user input corresponding to the seventh option, simultaneously displays a training suggestion for the plurality of trainings within the second predefined series of trainings (e.g., without displaying a training suggestion not corresponding to the second plurality of trainings within the second predefined series of trainings), and a second training series introduction object (e.g., a selectable user interface object, affordance) that, when selected, causes the electronic device to start a process for playing a second training series introduction video (e.g., different from the training series introduction video) corresponding to the second predefined series of trainings. In some embodiments, each training within the second predefined series of trainings corresponds to a unique training video, and the second training series introduction video is different from the plurality of training videos within 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 second predefined series of trainings.By introducing training series objects and simultaneously displaying multiple trainings within a predefined series of trainings, the user can quickly access the desired training, thereby reducing the number of inputs required to select a training. By reducing the number of inputs required to perform an operation, the operability of the device is improved, (e.g., by assisting the user to provide appropriate inputs when operating / interacting with the device and reducing user errors) making the user-device interface more efficient. Additionally, by enabling the user to use the device more quickly and efficiently, power consumption is reduced and the battery life of the device is improved.
[0251] Note that the details of the processing described above in relation to method 700 (e.g., FIG. 7) are also applicable in a similar manner to the methods described later. For example, method 700 optionally includes one or more of the characteristics of the various methods described later with reference to method 900. For example, the proposal of multiple trainings in method 700 optionally includes training proposals 616R to 616U as described with reference to method 900. For the sake of brevity, these details are not repeated below.
[0252] Figures 8A - 8S show exemplary user interfaces for starting audio-based training according to some embodiments. The user interfaces of these figures are used to illustrate the processes described later, including the process of FIG. 9.
[0253] Figure 8A shows an electronic device 600, which is a smartphone equipped with a display 602. The display 602 of the electronic device 600 includes a touch-sensitive surface capable of detecting user gestures (e.g., taps, swipes, drags). In some embodiments, the electronic device 600 includes one or more features of the electronic devices 100, 300, and / or 500.
[0254] In FIG. 8A, the electronic device 600 displays a training user interface 612 with training proposals 616R - 616U. The training proposals 616R - 616S represent audio content (e.g., training content) having a duration corresponding to the length of time required to walk a predefined distance (e.g., 1 mile, 2 miles, or 3 miles). The training proposals 616T - 616U represent audio content (e.g., training content) corresponding to a predefined route that is at or near one or more physical locations (e.g., a 5 - kilometer route in Hackney). While displaying the training user interface 612, the electronic device 600 detects an input 802B at a location corresponding to option 802A. In some embodiments, the electronic device 600 displays the training user interface 612 in response to an input (e.g., 640 in FIG. 6J).
[0255] In FIG. 8B, in response to detecting the input 802B, the electronic device 600 replaces the display of the training user interface 612 with the display of a library user interface 804. The library user interface 804 includes a plurality of training proposals (e.g., 806A - 806D). The training proposals 806A - 806D represent audio content (e.g., content having a duration corresponding to the length of time required to walk a predefined distance (e.g., 1 mile, 2 miles, or 3 miles)). The training proposal 806A in FIG. 8B corresponds to the training proposal 616R in FIG. 8A. In some embodiments, the selection of the training proposal 616R in FIG. 8A and the selection of the training proposal 806A in FIG. 8B both result in the display of the same user interface with the same details / information regarding the same training. Similarly, the training proposal 806B in FIG. 8B corresponds to the training proposal 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 proposal 806A.
[0256] In FIG. 8C, in response to detecting input 808, electronic device 600 replaces the display of library user interface 804 with the display of detailed user interface 810. Detailed user interface 810 includes information regarding the selected training corresponding to training proposal 806A. Detailed user interface 810 includes music item representations 814A - 814E representing one or more music items of a playlist. In some embodiments, after the end of the playback of training content (e.g., corresponding to training proposal 806A), electronic device 600 automatically starts the playback of the playlist (e.g., with the audio output to an external device for playing audio). Detailed user interface 810 includes additional option 812A for causing the electronic device 800 to store (e.g., download) the training content. While displaying detailed user interface 810, electronic device 600 detects input 812B at the location corresponding to additional option 812A.
[0257] In FIG. 8C1, in response to detecting input 812B, electronic device 600 starts a process of storing (e.g., media) the training content corresponding to training proposal 806A in electronic device 800. In response to detecting input 812B, electronic device 600 visually changes additional option 812A to indicate that the training content is queued to be stored in electronic device 800 (e.g., queued for download). In some embodiments, the training content remains in the queued state until electronic device 800 is connected to a charger and / or draws power from the charger.
[0258] In FIG. 8D, the electronic device 600 continues the process of causing the electronic device 800 to store training content corresponding to the training proposal 806A in the electronic device 800. In response to detecting the input 812B and / or according to a determination that a set of download criteria is satisfied (e.g., according to a determination that the electronic device 800 is charged), the electronic device 600 visually modifies the additional option 812A to indicate that the training content is stored in the electronic device 800. While displaying the detailed user interface 810, the electronic device 600 detects an input 815 corresponding to an upward swipe gesture.
[0259] In FIG. 8D1, in response to detecting the input 815, the electronic device 600 displays additional content on the detailed user interface 810, including additional music item representations 814F-814K.
[0260] FIGS. 8E-8Q illustrate techniques related to the playback of training content on the electronic device 800. Specifically, the training content to be played back is the same training content selected in the electronic device 600 in FIGS. 8A-8D (e.g., corresponding to the training proposal 806A). FIG. 8E shows the electronic device 800, which is a smartwatch having a display 801. The electronic device 800 is operably connected to the electronic device 600 (e.g., wirelessly paired). For example, the electronic device 600 is configured to communicate wirelessly with the electronic device 800 and vice versa. In some embodiments, both the electronic device 600 and the electronic device 800 are signed into the same account (e.g., an account associated with a user that enables the user to access features / functions restricted in other ways without an account). The display 801 of the electronic device 800 includes a touch-sensing surface on which the electronic device 800 can detect user gestures (e.g., taps, swipes, and / or drags). In some embodiments, the electronic device 800 includes one or more features of the electronic devices 100, 300, and / or 500.
[0261] In FIG. 8E, the electronic device 800 displays a training user interface 816 having a representation 818. The representation 818 represents audio training content (e.g., corresponding to the training suggestion 806A). While displaying the training user interface 816, the electronic device 800 detects an input 820 at a location corresponding to the option 819.
[0262] In FIG. 8E1, in response to the detection of the input 820, the electronic device 800 replaces the display of the training user interface 816 with a library user interface 821. The library user interface 821 includes training representations 823A-823C. The training representation 823A corresponds to the representation 818 of FIG. 8E. In the illustrated example, the library user interface 821 presents training representations 823A-823C that represent audio training content stored (e.g., downloaded) on the electronic device 800. The library user interface 821 includes an option 827 that is selectable by the user to browse additional audio training content that includes audio training content that is available but not stored (e.g., downloaded) on the electronic device 800. While displaying the library user interface 821, the electronic device 800 detects an input 829A corresponding to a leftward swipe gesture at a location corresponding to the training representation 823C.
[0263] In FIG. 8E2, in response to detecting input 829A, the electronic device 800 horizontally shifts the training representation 823C to reveal the deletion option 831. Selection of the deletion option 831 deletes the audio training content represented by the training representation 823C from the electronic device 800 and removes the training representation 823C from the library user interface 821. In FIG. 8E2, the electronic device 800 detects input 829B corresponding to a rightward swipe gesture at the location corresponding to the training representation 823C.
[0264] In FIG. 8E3, in response to detecting input 829B, the electronic device 800 horizontally returns the training representation 823C to its original position. While displaying the library user interface 821, the electronic device 800 detects input 829C at the location corresponding to the 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 detailed user interface 833. Detailed user interface 833 includes information about the selected training corresponding to training representation 823A. Detailed user interface 833 includes a music item representation representing one or more music items of a playlist associated with the training (e.g., an ordered list of songs selected to accompany the training such as by a celebrity characterized within the training or negotiated with it). In some embodiments, the playlist is a predetermined playlist (e.g., not a playlist selected by the user). In some embodiments, after playing the training content (e.g., corresponding to training representation 823A) and upon completion, electronic device 800 automatically starts playing the playlist (e.g., directing the audio output to an external device for playing the audio). Detailed user interface 833 includes start option 835A for causing the playing of training content (e.g., corresponding to training representation 823A). Detailed user interface 833 also includes download option 835B for storing the training content corresponding to training representation 823A on electronic device 800. Detailed user interface 833 also includes open playlist option 835C for generating a music playlist associated with training representation 823A to start playing in a separate music application. While displaying detailed user interface 833, electronic device 800 detects input 829D at the location corresponding to start option 835A.
[0266] In FIG. 8F, in response to detecting input 829D, electronic device 800 replaces the display of detailed 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 a display of the audio content that is queued for playback or is currently being played. 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 the audio of training content to be played and records body activity metrics during the playback of the training content.
[0267] While displaying media user interface 822, electronic device 800 detects input 825 at the location corresponding to play / pause button 824A. In response to detecting input 825, electronic device 800 causes the audio of training content to be played and records body activity metrics during the playback of the training content. Prior to detecting input 825, one or more sensors of electronic device 800 (e.g., GPS, accelerometer, gyroscope, and / or heart rate) are disabled. The one or more sensors are used to capture the user's body activity. In response to detecting input 825, electronic device 800 enables one or more sensors to improve the accurate measurement of the user's body activity during training.
[0268] In some embodiments, the playback of the audio of the training content occurs on an external device (e.g., speaker, headphones) that is communicating with electronic device 800. In some embodiments, the body 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. The surrounding 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 the display of a training user interface 830, as shown on the right side of FIG. 8G. The training user interface 830 includes a distance display 832A indicating the distance the user has moved since the start of the training (e.g., the start of playback of training content). The training user interface 830 includes a time display 832B indicating the length of time elapsed since the start of the training (e.g., the start of playback of training content). In some embodiments, while displaying the training user interface 830, the electronic device 800 detects an input 828 involving movement in a right-to-left direction. In response to detecting the input 828, the electronic device 800 replaces the display of the training user interface 830 with the display of the media user interface 822. In some embodiments, while displaying the training user interface 830 when the electronic device 800 detects an input (not the right-to-left input 828 shown in FIG. 8G) involving movement in a left-to-right direction, the electronic device 800 replaces the display of the training user interface 830 with the display of a training management user interface (not shown).The training management user interface may include a pause / resume option (e.g., pausing and / or resuming the playback of audio associated with the training, pausing and / or resuming the recording of physical metrics associated with the training) selectable to pause and / or resume the training, and an end option (e.g., ending the playback of audio associated with the training, ending the recording of physical metrics associated with the training) selectable to end the training. The training management user interface may also include a water lock option selectable to enable or disable the water lock feature. Enabling the water lock option disables the touch screen display 801 to prevent accidental input on the touch screen display 801 caused by moisture, while disabling the water lock option re-enables the touch screen display 801.
[0270] FIG. 8H and FIGS. 8J - 8K show both the media user interface 822 and the training user interface 830 to illustrate how the user interface progresses while the training content playback continues. In some embodiments, the electronic device 800 transitions between the display of the media user interface 822 and the display of the training user interface 830 in response to inputs similar to the inputs 826 and 828 described above.
[0271] In FIG. 8H, after a portion of the training content has been played, the electronic device 800 displays the media user interface 822, or alternatively, the training user interface 830. The playback progress indicator 824AA indicates that the audio training content is at approximately the midpoint. In response to a determination that a predetermined time point (e.g., the midpoint) has been reached during the playback of the audio content (e.g., corresponding to the training suggestion 616R), the electronic device 800 audibly indicates via an audio output device (e.g., speakers, headphones) that the midpoint within the audio content has been reached.
[0272] In FIG. 8I, in response to a determination that a predetermined time point has been reached during the playback of audio content (e.g., corresponding to training proposal 616R), the electronic device 800 displays visual content 834 corresponding to the training audio content. For example, the electronic device 800 causes a portion of the audio playback to occur, where the narrator describes a physical location (e.g., vinyl), and visual content corresponding to the portion of the audio playback is displayed. In some embodiments, the electronic device 800 displays visual content 834 based on the metadata of the training content. For example, the metadata is configured to cause the electronic device 800 to display visual content 834 at a specific time during the playback of the training content. As shown in FIG. 8I, when the media user interface 822 is displayed, the visual content 834 replaces the display of the media user interface 822. Alternatively, when the training user interface 830 is displayed, the visual content 834 replaces the display of the training user interface 830. In some embodiments, when the electronic device 800 displays the visual content 834, the electronic device 800 also generates an audio output and / or a tactile output indicating to the user that the visual content 834 is being displayed. The electronic device 800 also displays executed options 837 selectable by the user to cause the electronic device 800 to replace the display of the visual content 834 with the media user interface 822 or the training user interface 830.
[0273] In FIG. 8J, the electronic device 800 displays a media user interface 822, or alternatively, a training user interface 830 at the end of training (e.g., when the playback of training content ends). The playback progress indicator 824AA indicates that the playback of the audio training content is almost complete. In FIG. 8K, in response to determining that the end of the training content has been reached, the electronic device 800 performs the playback of the audio of a playlist associated with the training content (e.g., one or more music items (e.g., songs)) (e.g., the playlist is configured to automatically play after the end of the training content). In some embodiments, one or more music items (e.g., represented by 814A - 814E) are part of a playlist that is automatically played after the end of the training content. In response to determining that the end of the training content has been reached, the electronic device 800 updates the title display 824D to indicate the change from the playback of the audio of the training content to the playback of the audio of the playlist (e.g., one or more music items). The playback progress indicator 824AA indicates that the playback of the first music item in the playlist has started. While the media user interface 822 is being displayed, the electronic device 800 detects an input 838 at a location corresponding to the option 836.
[0274] In FIG. 8L, in response to detecting the input 838, the electronic device 800 replaces the display of the media user interface 822 with the display of a library user interface 840. The library user interface 840 includes a plurality of training suggestions (e.g., 842A - 842C). The training suggestions 842A, 842B, and 842C respectively correspond to the training suggestions 806A, 806B, and 806C in FIG. 8B. While the library user interface 840 is being displayed, the electronic device 800 detects an input 846 at a location corresponding to the option 844.
[0275] In FIG. 8M, in response to the detection of input 846, electronic device 800 replaces the display of library user interface 840 with media user interface 822. While media user interface 822 is being displayed, electronic device 800 detects input 850 at the location corresponding to option 848.
[0276] In the embodiments shown in FIGS. 8G - 8M, the playback progress indicator 824AA separately indicates the playback progress of individual content items such as audio training content and each music item in the playlist. Thus, in FIGS. 8J and 8K, when the audio training content ends and the first music item starts playing, the playback progress indicator 824AA progresses from fully full (indicating the end of the playback of the audio training content) to almost empty (indicating the start of the playback of the first music item). In some embodiments, the playback progress indicator 824AA can indicate the progress of playback for all audio content items corresponding to the audio training as if they were a single content item. For example, the playback progress indicator 824AA can indicate the progress of playback of the audio training content as well as all of the music tracks in the playlist. Such embodiments are shown in FIGS. 8M1 - 8M3. In the illustrated scenario, the audio training content has a duration of 20 minutes, but the music tracks a total duration of 23 minutes (as shown in FIG. 8E4). In FIG. 8M1, the audio training content has reached its midpoint (e.g., about 10 minutes) (similar to the case of FIG. 8H). However, the playback progress indicator 824AA indicates that the playback of the content is approximately 25% complete. This is because the playback progress indicator 824AA represents all of the audio content during the audio training. The audio content can include both the audio training content and the music playlist, and in the scenario shown in FIGS. 8M1 - 8M3, the total runtime of all the audio content is about 43 minutes. Similarly, in FIG. 8M2, the audio training content is approaching its end, and the playback progress indicator 824AA indicates that the playback of the content is about 50% complete, and in FIG. 8M3, the first music item in the playlist starts, and the playback progress indicator 824AA indicates that the playback is approximately 60% complete.
[0277] In FIG. 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 operations based on the currently playing music item. In some embodiments, each operation is performed on the currently playing music item without being performed on different music items, and the currently playing music item and the different music items are part of the same playlist. In some embodiments, selection of option 852A favorites the currently playing music item (e.g., the favorite of a music item can affect which music items are later proposed 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] In FIG. 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] In FIG. 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 not associated with training content. While displaying music user interface 860, electronic device 800 detects input 864 at the location corresponding to representation 862.
[0280] In FIG. 8Q, in response to detecting input 864, electronic device 800 displays a prompt user interface 866 having an instruction 868. Instruction 868 indicates that proceeding to play one or more music items of a playlist not associated with the training content will end the current training session (e.g., stop playing the currently playing audio content and stop recording one or more physical activity metrics via one or more sensors of electronic device 800). In some embodiments, while displaying prompt user interface 866, electronic device 800 detects an input. In some embodiments, in response to detecting an input, according to a determination that the input corresponds to option 870, electronic device 800 continues playing the currently playing audio content without playing one or more music items of a playlist not associated with the training content. In some embodiments, in response to detecting an input, according to a determination that the input corresponds to option 872, electronic device 800 stops playing the currently playing audio content, starts playing one or more music items of a playlist not associated with the training content, and / or stops recording one or more physical activity metrics via one or more sensors of electronic device 800.
[0281] As described above with reference to FIG. 8K, in some embodiments, in response to a determination that the end of the training content has been reached, the electronic device 800 executes the playback of the audio of a playlist associated with the training content (e.g., one or more music items (e.g., songs)) (e.g., the playlist is configured to automatically play after the end of the training content). In some embodiments, in response to a determination that the end of the training content has been reached and / or in response to a determination that the end of the playlist has been reached, the electronic device 800 causes the display of the summary user interface as shown in FIG. 8Q1. In FIG. 8Q1, the summary user interface 880 includes information 885 related to the measured physical activity of the user during training (e.g., the total time of training, the distance walked during training, the activities and total calories burned during training, the total number of ascents and descents, the maximum and minimum of ascents and descents, the average heart rate during training, the average pace during training). The summary user interface 880 also includes visual content 882A, 882B associated with the training. The visual content 882A, 882B can include the visual content presented during the training. For example, the visual content 882A corresponds to the visual content 834 in FIG. 8I. The summary user interface 880 also includes execution options 884A for providing an option 884A to close the summary user interface 880 and a playlist option 884B for adding the music playlist associated with the training to a separate music application.
[0282] In FIG. 8Q2, the electronic device 600 displays a summary user interface 886. The summary user interface 886 is substantially similar to the summary user interface 880, but is displayed on the electronic device 600 instead of the electronic device 800. In some embodiments, the electronic device 600 displays the summary user interface 886 in response to a determination that the end of the training content has been reached on the electronic device 600. Similar to the summary user interface 880, the summary user interface 886 includes information 887 regarding the user's measured physical activity between the training and visual content items 888A, 888B associated with the training.
[0283] FIGS. 8R - 8S show the selection of different types of training (e.g., corresponding to training suggestions 616T - 616U) compared to the training selections of FIGS. 8A - 8C (e.g., corresponding to training suggestions 616R - 616S). While displaying the training user interface 612, the electronic device 800 detects an input 874 at a location corresponding to the training suggestion 616T. As described above, the training suggestion 616T represents audio content (e.g., training content) corresponding to a predefined route that is at or near one or more physical locations (e.g., a 5 - kilometer route in Hackney).
[0284] In FIG. 8S, in response to detecting the input 874, the electronic device 800 displays a detailed user interface 876 having information regarding the selected training. The detailed user interface 876 includes music item representations 878A - 878D that represent one or more music items of a playlist. In some embodiments, after the playback of the training content (e.g., corresponding to the training suggestion 616T) ends, the electronic device 600 automatically starts the playback of one or more music items of the playlist (e.g., causes audio to be output by an external device for playing the audio).
[0285] In some embodiments, the techniques described above with respect to FIGS. 8E-8Q are similar to techniques that can be performed on training content corresponding to training proposal 616T. For example, similar to FIG. 8I, in some embodiments, in response to a determination that a predetermined time point (e.g., corresponding to training proposal 616T) has been reached during playback of audio content, electronic device 800 displays visual content corresponding to the training audio content. As another example, similar to FIG. 8L, electronic device 800 displays a user interface having a plurality of training proposals including the training proposal corresponding to training proposal 616T.
[0286] FIG. 9 is a flowchart illustrating a method for starting audio-based training using an electronic device according to some embodiments. Method 900 is executed on an electronic device (e.g., 100, 300, 500, 600, or 800) having 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 audio-based training. This method reduces the cognitive burden on the user to start audio-based training, thereby creating a more efficient human-machine interface. In the case of a battery-operated computing device, enabling the user to start audio-based training saves power and increases the battery charging interval.
[0288] In some embodiments, the electronic device (e.g., 100, 300, 500, 600, 800) is a computer system. The computer system optionally includes communication (e.g., wired communication, wireless communication) between a display generation component and one or more input devices. 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. The one or more input devices are configured to receive input, such as a touch-sensing surface for receiving 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) to an integrated or external display generation component via a wired or wireless connection 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] The electronic device (e.g., 800) displays (902) a selectable user interface object (e.g., 824A, 818, affordance) on a display (e.g., 801) to initiate audio playback.
[0290] The electronic device detects (904) a user input (e.g., 825, 820, a single user input, a single user input without intervening in the user input (e.g., an input detected after detection of a user input corresponding to a selectable user interface object for initiating audio playback and before audio playback occurs)) corresponding to selection of the selectable user interface object for initiating audio playback (e.g., via a touch-sensing display).
[0291] In response to detecting a user input corresponding to the selection of a selectable user interface object to start audio playback (906), an electronic device (e.g., 800) causes a training (e.g., a physical activity performed by the user) to occur (908) at an audio output device that is in communication with the electronic device (e.g., in the electronic device, in an external device such as headphones, speakers).
[0292] In response to detecting a user input corresponding to the selection of a selectable user interface object to start audio playback (906), an electronic device (e.g., 800) causes the recording (e.g., tracking, logging, collecting) of physical activity metrics corresponding to the training (e.g., calories, heart rate, distance traveled and / or stairs climbed) (912) (e.g., the physical activity metrics are recorded during the audio playback of the audio associated with the training), wherein the physical activity metrics are recorded (e.g., captured) by one or more sensors that monitor the activity level of the user of the electronic device. By automatically performing two operations (e.g., causing the audio playback to occur and causing the recording of the physical activity metrics), the user is able to track those physical activities during the audio playback via a single input. By performing two operations in response to a single input, the operability of the device is improved, (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors) making the user-device interface more efficient, and in addition, reducing power usage and improving the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0293] In some embodiments, the physical activity metric is measured using one or more sensors of the electronic device (e.g., GPS, accelerometer, gyroscope, and / or heart rate) or an external device that communicates with the electronic device. In some embodiments, the physical activity metric is recorded before (e.g., immediately before) detecting a user input (e.g., 825, 820) corresponding to the selection of a selectable user interface object (e.g., 824A, 818) to initiate audio playback, or was not recorded or was recorded at a lower frequency or lower accuracy (e.g., the user's heart rate is detected once per minute, or instead of a longer time threshold, is detected multiple times per minute, or an additional sensor is used to more accurately detect steps than was detected before detecting a user input corresponding to the selection of a selectable user interface object to initiate audio playback). In some embodiments, in response to detecting a user input (e.g., 825, 820), one or more sensors of an external device are enabled / activated to improve accurate measurement of the user during training. 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 training. In some embodiments, in accordance with a determination that the training is of a first type (e.g., a type of exercise), a first subset of the one or more sensors is enabled / activated based on the first type. In some embodiments, in accordance with a determination that the training is of a second type (e.g., a type of exercise), 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 the battery life of the device because the one or more sensors consume less power and / or battery life before the start of audio playback. Enabling one or more sensors when a set of conditions are met enhances the operability of the device.This further reduces power consumption and improves the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0294] In some embodiments, the audio (910) associated with the training (e.g., represented by 616R - 616S) has a duration based on the length of time required to complete the training (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 training by the narrator of the audio associated with the training).
[0295] In some embodiments, the audio associated with the training includes an audio display configured to be output at a predetermined time (e.g., the midpoint of the duration of the audio) in the audio output device during playback of the audio associated with the training (e.g., as described above with respect to FIG. 8H). By outputting the audio display, the user obtains feedback regarding the current state of the device (e.g., the playback of the audio file has reached the midpoint). By providing the user with improved feedback, the operability of the device is enhanced, (e.g., assisting the user to provide appropriate inputs when operating / interacting with the device and reducing user errors), making the user - device interface more efficient, and in addition, reducing power consumption and improving the battery life of the device by enabling 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 an electronic device (e.g., 800) or an external device communicating with the electronic device. In some embodiments, the one or more visual content items are associated with metadata that determines the time at which the one or more visual content items are output during playback of the audio associated with the training. For example, the visual content items of the one or more visual content items are configured to be output at a particular point in time during playback.
[0297] In some embodiments, each visual content item of one or more visual content items (e.g., 834, 882A, 882B) is configured to be output (e.g., displayed) at each respective predetermined time during the playback of audio associated with the training, and includes a first visual content item (e.g., 834) configured to be output at a first predetermined time during the playback of audio associated with the training (e.g., FIG. 8I). In some embodiments, the electronic device displays a training summary user interface (e.g., 880) that includes one or more graphic representations of the training (e.g., 882A, 882B) (e.g., non-textual representations, images of speakers (e.g., narrators) of audio associated with the training) via a display generation component. In some embodiments, the training summary user interface includes a representation of physical activity metrics (e.g., walking route, activity calories, total calories, total time, average heart rate, distance, average pace) based on the user's physical activity during the training. In some embodiments, according to a determination that the first visual content item was output (e.g., displayed) during the playback of the audio associated with the training, the training summary user interface includes the first visual content item (e.g., 882A, 882B) (e.g., the first visual content item is displayed within and / or accessible within the training summary user interface), and according to a determination that the first visual content item was not output (e.g., displayed) during the playback of the audio associated with the training (e.g., the user ends the playback of the audio associated with the training before the 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 within and / or not accessible within the training summary user interface).In some embodiments, 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 the playback of audio associated with the training. Also, the method is such that, in accordance with a determination that the second visual content item was output during the playback of 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 accordance with a determination that the second visual content item was not output (e.g., displayed) during the playback of audio associated with the training (e.g., the user ended the playback of 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 within and / or not accessible within the training summary user interface). Displaying a training summary user interface that includes one or more visual content items configured to be output during the playback of audio associated with the training provides the user with access to the visual content items presented during the audio playback. By providing additional control of the device, the operability of the device is improved, the user device interface is made more efficient (e.g., by assisting the user in providing appropriate input when operating / interacting with the device and reducing user errors), and in addition, the power consumption of the device is reduced and the battery life is improved by enabling the user to use the device more quickly and efficiently.
[0298] In some embodiments, while causing the playback of audio associated with training, an 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 haptic output (e.g., some individual haptic outputs of a sequence), and the haptic output is provided simultaneously with the display of one or more visual content items (e.g., FIG. 8I). In some embodiments, the haptic output is output by a computer system or an external device communicating with the computer system. In some embodiments, the haptic output is associated with metadata that determines the time at which the haptic output is output during the playback of audio associated with training. For example, the haptic output is configured to be output at a particular point during playback (e.g., the haptic output is configured to be output each time a visual content item of one or more visual content items is output). In some embodiments, one or more visual content items are presented full screen on a computer system (e.g., displayed on a computer system without additional content), or presented full screen on an external device communicating with the computer system. Generating haptic output and providing the haptic output simultaneously with the display of one or more visual content items provides feedback to the user regarding the current state of the device (e.g., notifies the user that the device is displaying a visual content item). By providing improved feedback to the user, the operability of the device is improved, (e.g., assisting the user to provide appropriate input when operating / interacting with the device and reducing user errors), making the user-device interface more efficient, and in addition, reducing power consumption and improving the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0299] In some embodiments, after training is complete (in some embodiments, after the audio associated with the training is complete), the electronic device (e.g., 800) displays, via a display generation component, a first training summary user interface (e.g., 880 of FIG. 8Q1) that includes one or more visual content items (e.g., 882A, 882B) configured to be output during playback of the audio associated with the training. In some embodiments, the training summary user interface also includes physical activity metrics corresponding to the training. Displaying a training summary user interface that includes one or more visual content items configured to be output during playback of the audio associated with the training provides the user with access to the visual content items presented during the audio playback. By providing additional control of the device, the operability of the device is improved, the user device interface is made more efficient (e.g., by assisting the user in providing appropriate input when operating / interacting with the device and reducing user errors), and in addition, the power consumption of the device is reduced and the battery life is improved by enabling the user to use the device more quickly and efficiently.
[0300] In some embodiments, the audio associated with the training corresponds to a default list of audio items (e.g., a music playlist) that includes a first audio item (e.g., a music file represented by 824D of FIG. 8K) and a second audio item (e.g., a music file). In some embodiments, the speaker (e.g., the narrator) of the audio associated with the training generated (e.g., selected the audio items within the playlist) the default list of audio items.
[0301] In some embodiments, in accordance with a determination that playback of the audio associated with training has been completed, the electronic device causes playback of audio of a default list of audio items (e.g., represented by 824D in FIG. 8K) including a first audio item (e.g.,) and a second audio item (e.g., a music playlist) on the audio output device. In some embodiments, the default list of audio items (e.g., a music playlist) is played in response to the audio associated with the end of training.
[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 playback of audio, the electronic device (e.g., 800) displays on the display (e.g., 801) a first set of playback controls (e.g., 824A-824C, one or more selectable user interface objects) for changing the playback of the audio associated with training. In some embodiments, the electronic device displays a first set of playback controls for changing the playback of the audio associated with training in response to detecting a selection of a representation of the audio content (e.g., 818). In some embodiments, in response to causing playback of the audio of the default list of audio items (e.g., thereafter), the electronic device displays, as shown transitioning from FIGS. 8J-8K, a second set of playback controls on the display (e.g., the skip back button 824B is changed to the previous track button (displayed in the same location); as shown transitioning from FIGS. 8J-8K, the skip forward button 824C is changed to the next track button (displayed in the same location)), changes the playback of the audio of the default list of audio items, and the second set of playback controls is different 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 the playback of the audio associated with the training is completed, the electronic device (e.g., 800) causes the playback of the audio of the first audio item (e.g., represented by 824D in FIG. 8K) of the default list of audio items in the audio output device. In some embodiments, after (e.g., during) causing the playback of the audio of the first audio item, the electronic device detects one or more user inputs (e.g., the input of 848 at a location corresponding to 842A, 842B, or 842C) corresponding to the first audio item. In some embodiments, in response to detecting one or more user inputs corresponding to the first audio item, the electronic device performs the operations of the first audio item (e.g., adding to a library (e.g., 852B), saving, skipping, playing / pausing) based on the detected one or more user inputs without performing the operations of the second audio item.
[0304] In some embodiments, in response to detecting a user input corresponding to the selection of a selectable user interface object to initiate audio playback, the electronic device displays, via a display generation component, a training user interface (e.g., 822) that includes a playback progress indicator (e.g., 824AA), where the playback progress indicator visually indicates the progress of the playback of audio content, and the audio content includes a default list of audio and audio items associated with the training (e.g., a music playlist) (e.g., a music playlist that is played in response to the audio associated with the end of the training) (e.g., as shown in FIG. 8E4). Displaying a training user interface that includes a playback progress indicator provides feedback to the user regarding the current state of the device (e.g., the current state of the playback of the audio content). By providing improved feedback to the user, the operability of the device is enhanced, (e.g., assisting the user to provide appropriate input when operating / interacting with the device and reducing user errors), making the user-device interface more efficient, and in addition, reducing power consumption and improving the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0305] In some embodiments, in response to a determination (914) that detected user input (e.g., an input of 864 at a location corresponding to option 872) resulted in audio playback of audio not associated with training, the electronic device stops (916) the audio playback of audio associated with training to be stopped. In some embodiments, the detected user input corresponds to a selection of a song, playlist, or music file in a music application. In some embodiments, in accordance with a determination that detected user input results in audio playback of audio not associated with training, the recording of physical activity metrics corresponding to training is stopped (e.g., disabling one or more sensors for recording the user's physical activity during training). By automatically causing the re...
Claims
1. A computer system comprising: One or more processors, wherein the computer system communicates with a display generation component and one or more input devices; A memory storing one or more programs configured to be executed by the one or more processors; A computer system, wherein the one or more programs: Cause a user interface to be displayed via the display generation component, the user interface including: A plurality of training suggestions displayed within a first region of the user interface; One or more filtering options for filtering the training suggestions, the one or more filtering options being displayed simultaneously with the plurality of training suggestions; Detect a first user input directed to a first filtering option among the one or more filtering options via the one or more input devices; 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: Stop displaying 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; While the first subset of training suggestions is displayed within the first region of the user interface, detect a second user input corresponding to navigation to a first training suggestion among the first subset of training suggestions via the one or more input devices; In response to detecting the second user input, while the display of the first subset of training suggestions is maintained within the first region of the user interface, cause a visual indication that the second user input is directed to the first training suggestion to be displayed via the display generation component; A computer system comprising instructions for the above.
2. The computer system according to claim 1, wherein the one or more programs further while displaying a first subset of the training proposals in the first region of the user interface, detecting, via the one or more input devices, a third user input directed to a second filtering option among the one or more filtering options; in accordance with a determination that the third user input directed to the second filtering option has been maintained for at least a second predetermined period; stopping displaying at least a portion of the first subset of the training proposals, such that the first region of the user interface includes a second subset of the training proposals from the plurality of training proposals associated with the second filtering option and does not include training proposals not associated with the second filtering option; A computer system comprising instructions for.
3. The computer system according to claim 1, wherein the one or more filtering options are grouped into a first filtering category; the first filtering category is one of a plurality of filtering categories; A computer system, wherein the first filtering category includes a plurality of filtering options, and a second filtering category among the plurality of filtering categories includes a plurality of filtering options.
4. The computer system according to claim 3, wherein the one or more programs further while displaying the one or more filtering options of the first filtering category within the user interface, detecting a fourth user input; in response to detecting the fourth user input; stopping displaying the one or more filtering options of the first filtering category; displaying, via the display generation component, the plurality of filtering categories including the first filtering category; detecting a fifth user input corresponding to a selection of a second filtering category from the plurality of filtering categories; In response to detecting the fifth user input, expanding the second filtering category so that a second plurality of filtering options among the second filtering categories are displayed; A computer system including instructions for. **Claim 5** The computer system according to claim 4, wherein the fourth user input corresponds to a selection of the first filtering option among the one or more filtering options. **Claim 6** The computer system according to claim 5, wherein the one or more programs further maintain the display of the one or more filtering options among the first filtering categories in response to the first user input, A computer system including instructions for. **Claim 7** The computer system according to claim 5, wherein the one or more programs further in response to detecting the fifth user input and according to a determination that a third filtering option among the second plurality of filtering options is incompatible with the currently applied set of filtering options, while the second plurality of filtering options among the second filtering categories are being displayed, cause a visual indication that the third filtering option is incompatible with the currently applied set of filtering options to be displayed via the display generation component; A computer system including instructions for. **Claim 8** The computer system according to claim 5, wherein the one or more programs further in response to detecting the fourth user input, cause a selectable user interface object indicating that the first filtering option has been selected and applied to be displayed via the display generation component, wherein the selectable user interface object, when selected, removes the application of the first filtering option; A computer system including instructions for. **Claim 9** The computer system according to claim 1, wherein the one or more programs further After detecting the first user input and in accordance with a determination that the first user input directed to the first filtering option has not been maintained for at least the predetermined period, maintaining, via the display generation component, the display of the plurality of training suggestions within the first region of the user interface, A computer system including instructions for **Claim 10** The computer system according to claim 1, wherein each filtering option of the one or more filtering options is associated with a respective training trainer of one or more training trainers, the first filtering option is associated with a first training trainer of the one or more training trainers, Stopping displaying at least a portion of the plurality of training suggestions within the first region of the user interface includes stopping displaying training suggestions not associated with the first training trainer 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 training trainer and does not include training suggestions not associated with the first training trainer. A computer system. **Claim 11** While maintaining the display of the first subset of the training suggestions within the first region of the user interface, it is possible to display a visual indication that the second user input is directed to the first training suggestion. While maintaining the display of the first subset of the training suggestions within the first region of the user interface, including displaying a preview video associated with the first training suggestion via the display generation component. A computer system. **Claim 12** The computer system according to claim 1, wherein the user interface further includes a second selectable user interface object that, when selected, removes one or more applied filtering options. **Claim 13** A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs comprise causing, via the display generation component, a user interface to be displayed, the user interface comprising a plurality of training proposals displayed within a first region of the user interface, and one or more filtering options for filtering the training proposals, displayed concurrently with the plurality of training proposals; 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; 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, stopping displaying at least a portion of the plurality of training proposals within the first region of the user interface such that the first region of the user interface comprises a first subset of training proposals from the plurality of training proposals associated with the first filtering option and does not include training proposals not associated with the first filtering option; while the first subset of training proposals is displayed within the first region of the user interface, detecting, via the one or more input devices, a second user input corresponding to navigation to a first training proposal of the first subset of training proposals; in response to detecting the second user input, while the display of the first subset of training proposals is maintained within the first region of the user interface, causing, via the display generation component, a visual indication that the second user input is directed to the first training proposal to be displayed; A non-transitory computer-readable storage medium comprising instructions for Claim 14 The non-transitory computer-readable storage medium according to claim 13, wherein the one or more programs further comprise While displaying a first subset of the training proposals within the first region of the user interface, detecting, via the one or more input devices, a third user input directed to a second filtering option among the one or more filtering options; In accordance with a determination that the third user input directed to the second filtering option has been maintained for at least a second predetermined period; Stopping displaying at least a portion of the first subset of the training proposals, such that the first region of the user interface includes a second subset of the training proposals from the plurality of training proposals associated with the second filtering option and does not include training proposals not associated with the second filtering option; A non-transitory computer-readable storage medium including instructions therefor.
15. The non-transitory computer-readable storage medium according to claim 13, wherein the one or more filtering options are grouped into a first filtering category; the first filtering category is one of a plurality of filtering categories; A non-transitory computer-readable storage medium, wherein the first filtering category includes a plurality of filtering options, and a second filtering category among the plurality of filtering categories includes a plurality of filtering options.
16. The non-transitory computer-readable storage medium according to claim 15, wherein the one or more programs further while displaying the one or more filtering options among the first filtering categories within the user interface, detecting a fourth user input; in response to detecting the fourth user input; stopping displaying the one or more filtering options among the first filtering categories; displaying, via the display generation component, the plurality of filtering categories including the first filtering category; detecting a fifth user input corresponding to a selection of a second filtering category from the plurality of filtering categories; In response to detecting the fifth user input, expanding the second filtering category so that a second plurality of filtering options among the second filtering categories are displayed. A non-transitory computer-readable storage medium including instructions for **Claim 17** The non-transitory computer-readable storage medium according to claim 16, wherein the fourth user input corresponds to a selection of the first filtering option among the one or more filtering options. **Claim 18** The non-transitory computer-readable storage medium according to claim 17, wherein the one or more programs further maintain the display of the one or more filtering options among the first filtering categories in response to the first user input. A non-transitory computer-readable storage medium including instructions for **Claim 19** The non-transitory computer-readable storage medium according to claim 17, wherein the one or more programs further in response to detecting the fifth user input and according to a determination that a third filtering option among the second plurality of filtering options is incompatible with a currently applied set of filtering options, while the second plurality of filtering options among the second filtering categories are being displayed, cause a visual indication that the third filtering option is incompatible with the currently applied set of filtering options to be displayed via the display generation component. A non-transitory computer-readable storage medium including instructions for **Claim 20** The non-transitory computer-readable storage medium according to claim 17, wherein the one or more programs further in response to detecting the fourth user input, cause a selectable user interface object indicating that the first filtering option has been selected and applied to be displayed via the display generation component, wherein when the selectable user interface object is selected, the application of the first filtering option is removed. A non-transitory computer-readable storage medium including instructions for **Claim 21** A non-transitory computer-readable storage medium according to claim 13, wherein the one or more programs further After detecting the first user input and in accordance with a determination that the first user input directed to the first filtering option has not been maintained for at least the predetermined period, Maintaining, via the display generation component, the display of the plurality of training proposals within the first region of the user interface, A non-transitory computer-readable storage medium comprising instructions for.
22. A non-transitory computer-readable storage medium according to claim 13, Each filtering option of the one or more filtering options is associated with a respective training trainer of one or more training trainers, The first filtering option is associated with a first training trainer of the one or more training trainers, Stopping displaying at least a portion of the plurality of training proposals within the first region of the user interface includes stopping displaying training proposals not associated with the first training trainer so that the first region of the user interface includes a first subset of training proposals from the plurality of training proposals associated with the first training trainer and does not include training proposals not associated with the first training trainer. A non-transitory computer-readable storage medium.
23. A non-transitory computer-readable storage medium according to claim 13, wherein while maintaining the display of the first subset of the training proposals within the first region of the user interface, it is possible to display a visual indication that the second user input is directed to the first training proposal, A non-transitory computer-readable storage medium according to claim 13, wherein while maintaining the display of the first subset of the training proposals within the first region of the user interface, a preview video associated with the first training proposal is displayed via the display generation component.
24. A non-transitory computer-readable storage medium according to claim 13, wherein the user interface further includes a second selectable user interface object that, when selected, removes one or more applied filtering options.
25. In a computer system in communication with a display generation component and one or more input devices, displaying a user interface via the display generation component, wherein the user interface includes a plurality of training proposals displayed within a first region of the user interface; and one or more filtering options for filtering the training proposals, displayed simultaneously with the plurality of training proposals; 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; 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, stopping displaying at least a portion of the plurality of training proposals within the first region of the user interface such that the first region of the user interface includes a first subset of training proposals from the plurality of training proposals associated with the first filtering option and does not include training proposals not associated with the first filtering option; while the first subset of training proposals is displayed within the first region of the user interface, detecting, via the one or more input devices, a second user input corresponding to navigation to a first training proposal of the first subset of training proposals; in response to detecting the second user input, while the display of the first subset of training proposals is maintained within the first region of the user interface, displaying, via the display generation component, a visual indication that the second user input is directed to the first training proposal; A method comprising.
26. The method according to claim 25, further comprising While displaying a first subset of the training proposals within the first region of the user interface, detecting, via the one or more input devices, a third user input directed to a second filtering option among the one or more filtering options; In accordance with a determination that the third user input directed to the second filtering option has been maintained for at least a second predetermined period; Stopping displaying at least a portion of the first subset of the training proposals such that the first region of the user interface includes a second subset of the training proposals from the plurality of training proposals associated with the second filtering option and does not include training proposals not associated with the second filtering option; A method comprising.
27. The method according to claim 25, wherein The one or more filtering options are grouped into a first filtering category, The first filtering category is one of a plurality of filtering categories, The first filtering category includes a plurality of filtering options, and a second filtering category among the plurality of filtering categories includes a plurality of filtering options.
28. The method according to claim 27, further comprising While displaying the one or more filtering options among the first filtering categories within the user interface, detecting a fourth user input; In response to detecting the fourth user input, Stopping displaying the one or more filtering options among the first filtering categories; Displaying the plurality of filtering categories including the first filtering category via the display generation component; Detecting a fifth user input corresponding to a selection of a second filtering category from the plurality of filtering categories; In response to detecting the fifth user input, expanding the second filtering category such that a second plurality of filtering options among the second filtering categories are displayed; A method comprising.
29. The method according to claim 28, wherein the fourth user input corresponds to a selection of the first filtering option among the one or more filtering options.
30. The method according to claim 29, further comprising: maintaining a display of the one or more filtering options among the first filtering categories in response to the first user input.
31. The method according to claim 29, further comprising: in response to detecting the fifth user input and in accordance with a determination that a third filtering option among the second plurality of filtering options is incompatible with a currently applied set of filtering options, while the second plurality of filtering options among the second filtering categories are being displayed, causing a visual indication that the third filtering option is incompatible with the currently applied set of filtering options to be displayed via the display generation component.
32. The method according to claim 29, further comprising: in response to detecting the fourth user input, causing a selectable user interface object indicating that the first filtering option has been selected and applied to be displayed via the display generation component, wherein selecting the selectable user interface object removes the application of the first filtering option.
33. The method according to claim 25, further comprising: after detecting the first user input and in accordance with a determination that the first user input directed to the first filtering option has not been maintained for at least the predetermined period, maintaining a display of the plurality of training proposals within the first region of the user interface via the display generation component.
34. The method according to claim 25, wherein each filtering option among the one or more filtering options is associated with a respective training trainer among one or more training trainers. The first filtering option is associated with a first training trainer among the one or more training trainers, Stopping displaying at least a portion of the plurality of training proposals within the first region of the user interface stops displaying training proposals not associated with the first training trainer, so that the first region of the user interface includes a first subset of training proposals from the plurality of training proposals associated with the first training trainer and does not include training proposals not associated with the first training trainer. A method.
35. A method according to claim 25, wherein while maintaining the display of the first subset of the training proposals within the first region of the user interface, a visual indication that the second user input is directed to the first training proposal is displayed. A method comprising displaying a preview video associated with the first training proposal via the display generation component while maintaining the display of the first subset of the training proposals within the first region of the user interface.
36. A method according to claim 25, wherein the user interface further includes a second selectable user interface object that, when selected, removes one or more applied filtering options.
Citation Information
Patent Citations
Information processing device and program
JP2015069430A
Retrieval device, retrieval method, recording medium, and program
WO2017013770A1