Activity trends and training
Efficient methods and interfaces for presenting activity trends and managing workouts on electronic devices address the inefficiencies of existing techniques by optimizing user interaction and power consumption, improving user experience and device performance.
Patent Information
- Application Number
- JP2024217399
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-08-27
- Filing Date
- 2024-12-12
- Publication Date
- 2026-02-20
- Estimated Expiration
- 2040-03-31
AI Technical Summary
Existing techniques for presenting activity trends and managing workouts on electronic devices are cumbersome and inefficient, often requiring multiple key presses or keystrokes, wasting user time and device energy, particularly in battery-operated devices.
Faster and more efficient methods and interfaces for presenting activity trends and managing workouts, including displaying activity metrics in different portions of a user interface based on the relationship between activity data from different time periods, and providing coaching instructions and affordances for physical activity tracking.
These methods reduce cognitive burden on users, conserve power in battery-operated devices, and increase the time between battery charges while enhancing user satisfaction and efficiency.
Smart Images

Figure 0007818687000003 
Figure 0007818687000004 
Figure 0007818687000005
Abstract
Description
[Technical Field]
[0001] (CROSS-REFERENCE TO RELATED APPLICATIONS) This application claims priority to U.S. Provisional Patent Application No. 62 / 844,063, entitled "ACTIVITY TRENDS AND WORKOUTS," filed May 6, 2019, and Danish Patent Application No. PA201970532, entitled "ACTIVITY TRENDS AND WORKOUTS," filed August 27, 2019, the contents of each of which are incorporated herein by reference in their entirety for all purposes.
[0002] Technical Field TECHNICAL FIELD The present disclosure relates generally to computer user interfaces, and more particularly to techniques for presenting activity trends and managing workouts. [Background technology]
[0003] Users rely on portable multifunction devices for a variety of activities, including tracking activities, and may want to easily track activities and view details related to the activities. Summary of the Invention
[0004] However, some techniques for using electronic devices to present activity trends and manage workouts are generally cumbersome and inefficient. For example, some existing techniques use complex and time-consuming user interfaces that may involve multiple key presses or keystrokes. Existing techniques take more time than necessary, wasting the user's time and the device's energy. The latter problem is particularly acute in battery-operated devices.
[0005] Thus, the present technology provides electronic devices with faster, more efficient methods and interfaces for presenting activity trends and managing workouts. Such methods and interfaces optionally complement or replace other methods for presenting activity trends and managing workouts. Such methods and interfaces reduce the cognitive burden on users and create more efficient human-machine interfaces. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.
[0006] In some examples, a method is performed on an electronic device including a display device. The method includes receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period. The method further includes receiving a request to display a first user interface. In response to receiving the request, the method further includes displaying the first user interface via the display device, the first user interface including: displaying a representation of the first activity metric within a first portion of the first user interface in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and displaying a representation of the first activity metric within a second portion of the first user interface different from the first portion in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type.
[0007] In some embodiments, a non-transitory computer-readable storage medium is provided that stores one or more programs configured to be executed by one or more processors of an electronic device that includes a display device, wherein the one or more programs include instructions for performing the method described above.
[0008] In some embodiments, the electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, wherein the one or more programs include instructions for performing the method described above.
[0009] In some embodiments, an electronic device comprises a display device and means for performing the above-described methods.
[0010] In some examples, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided, wherein the one or more programs include instructions for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period, receiving a request to display a first user interface, and displaying the first user interface via the display device in response to receiving the request, the first user interface including: displaying a representation of the first activity metric within a first portion of the first user interface in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and displaying a representation of the first activity metric within a second portion of the first user interface different from the first portion in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type.
[0011] In some embodiments, a transient computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided, wherein the one or more programs include instructions for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period, receiving a request to display a first user interface, and displaying the first user interface via the display device in response to receiving the request, the first user interface including: displaying a representation of the first activity metric within a first portion of the first user interface in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and displaying a representation of the first activity metric within a second portion of the first user interface different from the first portion in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type.
[0012] In some embodiments, an electronic device comprises a display, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors. In some embodiments, the one or more programs include instructions for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period, receiving a request to display a first user interface, and displaying the first user interface via the display device in response to receiving the request, the first user interface including: displaying a representation of the first activity metric within a first portion of the first user interface in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and displaying a representation of the first activity metric within a second portion of the first user interface different from the first portion in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type.
[0013] In some embodiments, an electronic device is provided that includes a display, the electronic device including: means for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period; means for receiving a request to display a first user interface; and means for displaying the first user interface via the display device in response to receiving the request, the first user interface including: means for displaying a representation of the first activity metric within a first portion of the first user interface in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and means for displaying a representation of the first activity metric within a second portion of the first user interface different from the first portion in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type.
[0014] In some embodiments, a method is provided for performing a method on an electronic device including a display device, the method including receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period, the first time period being a subset of the second time period, receiving a request to display a first user interface, and in response to receiving the request, displaying the first user interface via the display device, the first user interface including a representation of the activity data corresponding to the first activity metric for the first time period, a representation of the activity data corresponding to the first activity metric for the second time period, and a representation of a comparison of the activity data corresponding to the first activity metric for the first time period and the second time period.
[0015] In some embodiments, a non-transitory computer-readable storage medium is provided that stores one or more programs configured to be executed by one or more processors of an electronic device that includes a display device, wherein the one or more programs include instructions for performing the method described above.
[0016] In some embodiments, the electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, wherein the one or more programs include instructions for performing the method described above.
[0017] In some embodiments, an electronic device comprises a display device and means for performing the above-described methods.
[0018] In some examples, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided. In some examples, the one or more programs include instructions for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period, the first time period being a subset of the second time period, receiving a request to display a first user interface, and displaying, via the display device, the first user interface in response to receiving the request, the first user interface including a representation of the activity data corresponding to the first activity metric for the first time period, a representation of the activity data corresponding to the first activity metric for the second time period, and a representation of a comparison of the activity data corresponding to the first activity metric for the first time period and the first activity metric for the second time period.
[0019] In some embodiments, a transient computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided, wherein the one or more programs include instructions for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period, the first time period being a subset of the second time period, receiving a request to display a first user interface, and displaying, via the display device, the first user interface in response to receiving the request, the first user interface including a representation of the activity data corresponding to the first activity metric for the first time period, a representation of the activity data corresponding to the first activity metric for the second time period, and a representation of a comparison of the activity data corresponding to the first activity metric for the first time period and the first activity metric for the second time period.
[0020] In some embodiments, an electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors. In some embodiments, the one or more programs include instructions for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period, the first time period being a subset of the second time period, receiving a request to display a first user interface, and displaying, via the display device, the first user interface in response to receiving the request, the first user interface including a representation of the activity data corresponding to the first activity metric for the first time period, a representation of the activity data corresponding to the first activity metric for the second time period, and a representation of a comparison of the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period.
[0021] In some embodiments, an electronic device is provided that includes a display device. In some embodiments, the electronic device includes: means for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period, the first time period being a subset of the second time period; means for receiving a request to display a first user interface; and means for displaying the first user interface via the display device in response to receiving the request, the first user interface including a representation of the activity data corresponding to the first activity metric for the first time period, a representation of the activity data corresponding to the first activity metric for the second time period, and a representation of a comparison of the activity data corresponding to the first activity metric for the first time period and the second time period.
[0022] In some embodiments, a method is provided that is executed on an electronic device including a display device. In some embodiments, the method includes receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period, receiving a request to display a first user interface, and in response to receiving the request, displaying, via the display device, the first user interface including a representation of the first activity metric, wherein the representation of the first activity metric includes, in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type, first coaching instructions including a prediction corresponding to when the relationship transitions from one of the first type to one of a second type different from the first type while maintaining a future level of activity for the first activity metric, and, in accordance with a determination that the relationship is of a third type different from the first type, second coaching instructions not including a prediction corresponding to when the relationship transitions from one of the third type to one of the second type.
[0023] In some embodiments, a non-transitory computer-readable storage medium is provided that stores one or more programs configured to be executed by one or more processors of an electronic device that includes a display device, wherein the one or more programs include instructions for performing the method described above.
[0024] In some embodiments, the electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, wherein the one or more programs include instructions for performing the method described above.
[0025] In some embodiments, an electronic device comprises a display device and means for performing the above-described methods.
[0026] In some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided. In some embodiments, the one or more programs include: receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period; and receiving a request to display a first user interface; and, in response to receiving the request, displaying, via the display device, the first user interface including a representation of the first activity metric, wherein the representation of the first activity metric includes: first coaching instructions, in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type, including a prediction corresponding to when the relationship transitions from one of the first type to one of a second type different from the first type while maintaining a future level of activity for the first activity metric; and second coaching instructions, in accordance with a determination that the relationship is of a third type different from the first type, not including a prediction corresponding to when the relationship transitions from one of the third type to one of the second type.
[0027] In some embodiments, a transient computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided. In some embodiments, the one or more programs include: receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period; and receiving a request to display a first user interface; and, in response to receiving the request, displaying, via the display device, the first user interface including a representation of the first activity metric, wherein the representation of the first activity metric includes: first coaching instructions, in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type, including a prediction corresponding to when the relationship transitions from one of the first type to one of a second type different from the first type while maintaining a future level of activity for the first activity metric; and second coaching instructions, in accordance with a determination that the relationship is of a third type different from the first type, not including a prediction corresponding to when the relationship transitions from one of the third type to one of the second type.
[0028] In some examples, an electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors. In some examples, the one or more programs include receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period and receiving a request to display a first user interface; and in response to receiving the request, displaying, via the display device, the first user interface including a representation of the first activity metric, wherein the representation of the first activity metric includes: first coaching instructions including a prediction corresponding to when the relationship transitions from one of the first type to one of a second type different from the first type while maintaining a future level of activity for the first activity metric in accordance with a determination that the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and second coaching instructions not including a prediction corresponding to when the relationship transitions from one of the third type to one of the second type in accordance with a determination that the relationship is of a third type different from the first type.
[0029] In some embodiments, an electronic device is provided that includes a display device. The electronic device includes: means for receiving activity data corresponding to a first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period different from the first time period; means for receiving a request to display a first user interface; and means for displaying, in response to receiving the request, via the display device, the first user interface including a representation of the first activity metric, wherein the representation of the first activity metric includes: first coaching instructions, in accordance with a determination that a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type, including a prediction corresponding to when the relationship transitions from one of the first type to one of a second type different from the first type while maintaining a future level of activity for the first activity metric; and second coaching instructions, in accordance with a determination that the relationship is of a third type different from the first type, including no prediction corresponding to when the relationship transitions from one of the third type to one of the second type.
[0030] In some embodiments, a method is provided that is executed on an electronic device including a display device, the method including: displaying, via the display device, a first instance of a first user interface including a first set of affordances associated with a physical activity tracking functionality, the first set of affordances including a first affordance associated with a first physical activity tracking functionality; receiving a user input while displaying the first instance of the first user interface; and activating the first physical activity tracking functionality in response to receiving the user input in accordance with a determination that the user input is detected at a first affordance of the first set of affordances; and activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a second affordance of the first set of affordances. displaying a second user interface including a third affordance associated with the second physical activity tracking feature in accordance with the determination; receiving a set of one or more inputs, the set of one or more inputs including an input corresponding to selection of the third affordance; and displaying a second example of the first user interface in response to receiving the set of one or more inputs, the second example of the first user interface including the first affordance and a fourth affordance associated with the second physical activity tracking feature, and the first example of the first user interface not including an affordance associated with the second physical activity tracking feature.
[0031] In some embodiments, a non-transitory computer-readable storage medium is provided that stores one or more programs configured to be executed by one or more processors of an electronic device that includes a display device, wherein the one or more programs include instructions for performing the method described above.
[0032] In some embodiments, the electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, wherein the one or more programs include instructions for performing the method described above.
[0033] In some embodiments, an electronic device comprises a display device and means for performing the above-described methods.
[0034] In some examples, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided, the one or more programs including instructions for displaying, via the display device, a first example of a first user interface including a first set of affordances associated with a physical activity tracking functionality, the first set of affordances including a first affordance associated with the first physical activity tracking functionality, receiving a user input while displaying the first example of the first user interface, and in response to receiving the user input, activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a first affordance of the first set of affordances, and activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a second affordance of the first set of affordances. displaying a second user interface including a third affordance associated with the second physical activity tracking feature in accordance with a determination that the second affordance has been selected; receiving a set of one or more inputs, the set of one or more inputs including an input corresponding to selection of the third affordance; and displaying a second instance of the first user interface in response to receiving the set of one or more inputs, the second instance of the first user interface including the first affordance and a fourth affordance associated with the second physical activity tracking feature, and the first instance of the first user interface not including an affordance associated with the second physical activity tracking feature.
[0035] In some examples, a transient computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device including a display device is provided, the one or more programs including instructions for displaying, via the display device, a first example of a first user interface including a first set of affordances associated with a physical activity tracking functionality, the first set of affordances including a first affordance associated with the first physical activity tracking functionality, receiving a user input while displaying the first example of the first user interface, and in response to receiving the user input, activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a first affordance of the first set of affordances, and activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a second affordance of the first set of affordances. displaying a second user interface including a third affordance associated with the second physical activity tracking feature in accordance with a determination that the second affordance has been selected; receiving a set of one or more inputs, the set of one or more inputs including an input corresponding to selection of the third affordance; and displaying a second instance of the first user interface in response to receiving the set of one or more inputs, the second instance of the first user interface including the first affordance and a fourth affordance associated with the second physical activity tracking feature, and the first instance of the first user interface not including an affordance associated with the second physical activity tracking feature.
[0036] In some examples, an electronic device comprises a display device, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for displaying, via the display device, a first example of a first user interface including a first set of affordances associated with a physical activity tracking functionality, the first set of affordances including a first affordance associated with the first physical activity tracking functionality, receiving a user input while displaying the first example of the first user interface, and in response to receiving the user input, activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a first affordance of the first set of affordances, and activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a second affordance of the first set of affordances. displaying a second user interface including a third affordance associated with the second physical activity tracking feature in accordance with a determination that the second affordance has been selected; receiving a set of one or more inputs, the set of one or more inputs including an input corresponding to selection of the third affordance; and displaying a second instance of the first user interface in response to receiving the set of one or more inputs, the second instance of the first user interface including the first affordance and a fourth affordance associated with the second physical activity tracking feature, and the first instance of the first user interface not including an affordance associated with the second physical activity tracking feature.
[0037] In some embodiments, an electronic device is provided that includes a display device, the electronic device including: means for displaying, via the display device, a first example of a first user interface including a first set of affordances associated with a physical activity tracking functionality, the first set of affordances including a first affordance associated with a first physical activity tracking functionality; means for receiving user input while displaying the first example of the first user interface; and means for activating the first physical activity tracking functionality in response to receiving the user input and in accordance with a determination that the user input is detected at a first affordance of the first set of affordances; and means for activating the first physical activity tracking functionality in accordance with a determination that the user input is detected at a second affordance of the first set of affordances. The device further includes means for displaying a second user interface including a third affordance associated with the second physical activity tracking function in accordance with a determination that the second affordance has been detected; means for receiving a set of one or more inputs; and means for displaying a second example of the first user interface in response to receiving the set of one or more inputs, the set of one or more inputs including an input corresponding to selection of the third affordance, wherein the second example of the first user interface includes the first affordance and a fourth affordance associated with the second physical activity tracking function, and the first example of the first user interface does not include an affordance associated with the second physical activity tracking function.
[0038] Executable instructions to perform these functions are optionally contained in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions to perform these functions are optionally contained in a transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.
[0039] This provides devices with faster, more efficient methods and interfaces for presenting activity trends and managing workouts, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces can complement or replace other methods for presenting activity trends and managing workouts. [Brief explanation of the drawings]
[0040] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout: [Figure 1A] 1 is a block diagram illustrating a portable multifunction device having a touch-sensitive display in accordance with some embodiments. [Figure 1B] FIG. 2 is a block diagram illustrating exemplary components for event processing according to some embodiments. [Figure 2] FIG. 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments. [Figure 3] FIG. 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments. [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments. [Figure 4B] 1A-1C illustrate exemplary user interfaces for a multifunction device having a touch-sensitive surface separate from a display in accordance with some embodiments. [Figure 5A] FIG. 1 illustrates a personal electronic device according to some embodiments. [Figure 5B] FIG. 1 is a block diagram illustrating a personal electronic device according to some embodiments. [Figure 6A] 1 illustrates an electronic device displaying a home user interface via a display device. [Figure 6B] 1 illustrates an electronic device displaying an information user interface for an activity application. [Figure 6C] 10 illustrates an electronic device displaying an example 90-day trend user interface via a display device when an insufficient amount of data is received for multiple activity metrics to identify trends. [Figure 6D] 1 illustrates an electronic device displaying an example of a 90-day trend user interface via a display device where all activity metrics have a negative trend within the last 90 days compared to the last 365 days. [Figure 6E] FIG. 1 illustrates an electronic device displaying an example 90-day trend user interface via a display device where some activity metrics have positive trends and other activity metrics have negative trends within the last 90 days compared to the last 365 days. [Figure 6F] 1 illustrates an electronic device displaying an example of a 90-day trend user interface via a display device where all activity metrics have a positive trend within the last 90 days compared to the last 365 days. [Figure 6G] 1 illustrates an electronic device displaying a detailed exercise user interface. [Figure 6H] 10 illustrates an electronic device displaying a user-ready user interface via a display device when the activity trends are ready to be viewed on a second device. [Figure 6I] 10 illustrates an electronic device displaying a monthly update user interface via a display device when activity trends are viewable on a second device. [Figure 7A] FIG. 1 is a flow diagram illustrating a method for presenting activity trends using an electronic device according to some embodiments. [Figure 7B] FIG. 1 is a flow diagram illustrating a method for presenting activity trends using an electronic device according to some embodiments. [Figure 8A]FIG. 1 is a flow diagram illustrating a method for presenting activity trends using an electronic device according to some embodiments. [Figure 8B] FIG. 1 is a flow diagram illustrating a method for presenting activity trends using an electronic device according to some embodiments. [Figure 9] FIG. 1 is a flow diagram illustrating a method for presenting activity trends using an electronic device according to some embodiments. [Figure 10A] 1 illustrates an electronic device displaying a clock face user interface via a display device. [Figure 10B] 1 illustrates an electronic device displaying a training platter user interface via a display device. [Figure 10C] 1 illustrates an electronic device displaying a gait user interface via a display device. [Figure 10D] 1 illustrates an electronic device displaying a control user interface via a display device. [Figure 10E] An electronic device is shown displaying a training platter user interface via a display device 1002 and performing a scrolling operation. [Figure 10F] 10 illustrates an electronic device receiving user input corresponding to a selection of more training affordances. [Figure 10G] 1 illustrates an electronic device displaying a workout list user interface via a display device. [Figure 10H] 10 illustrates an electronic device receiving user input corresponding to a selection of an AUS football affordance. [Figure 10I] 1 illustrates an electronic device displaying a training platter user interface via a display device. [Figure 10J] An electronic device is shown displaying an AUS Football user interface via a display device 1002. [Figure 10K] 1 illustrates an electronic device displaying a control user interface via a display device. [Figure 10L] 1 illustrates an electronic device displaying a training platter user interface via a display device. [Figure 10M] 1 shows an electronic device displaying a training platter user interface via a display device having an AUS football affordance moved to the left and a delete affordance displayed in a location at least partially covered by the AUS football affordance before it was moved to the left. [Figure 10N] 10 illustrates an electronic device displaying a training platter user interface via a display device without an AUS football affordance. [Figure 11A] FIG. 1 is a flow diagram illustrating a method for organizing training, according to some embodiments. [Figure 11B] FIG. 1 is a flow diagram illustrating a method for organizing training, according to some embodiments. [Figure 12A] An electronic device is shown displaying an activity application user interface via a display device 1002. [Figure 12B] 1 illustrates an electronic device displaying an activity user interface via a display device. [Figure 12C] 1 illustrates an electronic device displaying a friends user interface via a display device. [Figure 12D] 1 illustrates an electronic device displaying an awards user interface via a display device. [Figure 12E] 1 illustrates an electronic device displaying a non-award details user interface via a display device. [Figure 12F] 1 illustrates an electronic device displaying an award details user interface via a display device. DETAILED DESCRIPTION OF THE INVENTION
[0041] The following description sets forth example methods, parameters, etc. However, it should be recognized that such description is not intended as a limitation on the scope of the present disclosure, but rather is provided as a description of example embodiments.
[0042] There is a need for electronic devices that provide efficient methods and interfaces for presenting activity trends and managing workouts. Below, FIGS. 1A-1B, 2, 3, 4A-4B, and 5A-5B provide a description of an example device for performing the techniques for managing event notifications. FIGS. 6A-6I illustrate an example user interface for presenting activity trends. The user interfaces of FIGS. 6A-6I are used to illustrate the processes described below, including the processes of FIGS. 7A-7B, 8A-8B, and 9. FIGS. 7A-7B are flow diagrams illustrating a method for presenting activity trends, according to some embodiments. FIGS. 8A-8B are flow diagrams illustrating a method for presenting activity trends, according to some embodiments. FIG. 9 is a flow diagram illustrating a method for presenting activity trends, according to some embodiments. FIGS. 10A-10N illustrate example user interfaces for managing workouts. The user interfaces of FIGS. 10A-10N are used to illustrate the processes described below, including the processes of FIGS. 11A-11B. Figures 11A-11B are a flow diagram illustrating a method for organizing workouts according to some embodiments.Figures 12A-12F show exemplary user interfaces for displaying awards.
[0043] In the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first touch can be referred to as a second touch, and similarly, a second touch can be referred to as a first touch, without departing from the scope of the various embodiments described. Although a first touch and a second touch are both touches, they are not the same touch.
[0044] The terminology used in the description of various embodiments set forth herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments set forth and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. Also, as used herein, the term "and / or" should be understood to refer to and include any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0045] The term "if" is interpreted, optionally, depending on the context, to mean "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are interpreted, optionally, depending on the context, to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]."
[0046] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Optionally, other portable electronic devices, such as laptops or tablet computers having a touch-sensitive surface (e.g., a touchscreen display and / or touchpad), are also used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer having a touch-sensitive surface (e.g., a touchscreen display and / or touchpad).
[0047] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface. However, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.
[0048] The device typically supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.
[0049] Various applications running on the device optionally use at least one common physical user-interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within each application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications with user interfaces that are intuitive and transparent to the user.
[0050] Attention now turns to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating portable multifunction device 100 having touch-sensitive display system 112, according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a "touch screen" and may also be known or referred to as a "touch-sensitive display system." Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 that generate tactile output on device 100 (e.g., generate tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.
[0051] As used herein and in the claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure of the force or pressure of the contact is used directly to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measure). In some implementations, the surrogate measure of the contact force or pressure is converted to an estimate of the force or pressure, and the estimate of the force or pressure is used to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using contact intensity as an attribute of user input allows users to access additional device functionality (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons) that may not otherwise be accessible to users on devices of reduced size that have limited footprint for displaying affordances.
[0052] As used herein and in the claims, the term “tactile output” refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive surface of a user (e.g., the fingers, palm, or other part of the user's hand), the tactile output produced by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a “downclick” or “upclick” of a physical actuator button. In some cases, a user feels a tactile sensation such as a “downclick” or “upclick” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's action. As another example, movement of a touch-sensitive surface is optionally interpreted or perceived by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. While such user interpretation of touch depends on the user's personal sensory perception, there are many sensory perceptions of touch that are common to the majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "upclick," "downclick," "roughness"), unless otherwise specified, the generated tactile output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.
[0053] It should be understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of its components. The various components shown in Figure 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.
[0054] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.
[0055] Peripheral interface 118 may be used to couple input and output peripherals of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs and / or instruction sets stored in memory 102 to perform various functions and process data for device 100. In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0056] RF (radio frequency) circuitry 108 transmits and receives RF signals, also called electromagnetic signals. RF circuitry 108 converts electrical signals to electromagnetic signals and electromagnetic signals to communicate with communication networks and other communication devices via electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. RF circuitry 108 optionally communicates via wireless communication with networks, such as the Internet, also known as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices. RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by short-range radios. Wireless communication optionally includes, but is not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), Long Term Evolution (LTE), and other standards.evolution (LTE), near field communications (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX, protocols for email (e.g., Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol), The present invention may use any of a number of communication standards, protocols, and technologies, including the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (XMPP), the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.
[0057] Audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuit 110 receives audio data from peripherals interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves audible to humans. Audio circuit 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuit 110 converts the electrical signals into audio data and transmits the audio data to peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to memory 102 and / or RF circuit 108 by peripherals interface 118. In some embodiments, audio circuit 110 also includes a headset jack (e.g., 212 in FIG. 2 ). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral, such as an output-only headphone or a headset with both an output (e.g., mono or binaural headphones) and an input (e.g., a microphone).
[0058] I / O subsystem 106 couples input / output peripherals on device 100, such as touchscreen 112 and other input control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, light sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive / send electrical signals from / to other input control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2) optionally include up / down buttons for volume control of speaker 111 and / or microphone 113. The one or more buttons optionally include a push button (e.g., 206 in FIG. 2).
[0059] As described in U.S. Patent Application No. 11 / 322,549, filed December 23, 2005, "Unlocking a Device by Performing Gestures on an Unlock Image," U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety, a quick press of a push button optionally unlocks touchscreen 112 or, optionally, initiates the process of unlocking the device using gestures on the touchscreen. A longer press of a push button (e.g., 206) optionally turns power on or off to device 100. The functionality of one or more of the buttons is optionally customizable by the user. Touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.
[0060] Touch-sensitive display 112 provides an input and output interface between the device and a user. Display controller 156 receives and / or sends electrical signals to touchscreen 112. Touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, animation, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.
[0061] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detects contacts (and any movement or cessation of contact) on touchscreen 112 and translates the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.
[0062] Touchscreen 112 optionally uses LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touchscreen 112 and display controller 156 optionally use any of a number of now known or later developed touch sensing technologies to detect contact and any movement or disruption thereof, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with touchscreen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.
[0063] The touch-sensitive display in some embodiments of touchscreen 112 is optionally similar to the multi-touch-sensing touchpad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Application Publication No. 2002 / 0015024 A1, each of which is incorporated by reference herein in its entirety. However, touchscreen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.
[0064] Touch-sensitive displays in some embodiments of touchscreen 112 are described in the following applications: (1) U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller"; (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen"; (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices"; (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices"; (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input"; No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which are incorporated herein by reference in their entireties.
[0065] Touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user optionally contacts touchscreen 112 using any suitable object or accessory, such as a stylus, a finger, or the like. In some embodiments, the user interface is designed to operate primarily using finger-based contact and gestures, which may not be as precise as stylus-based input due to the larger contact area of a finger on the touchscreen. In some embodiments, the device translates the coarse finger input into precise pointer / cursor positions or commands to perform the action desired by the user.
[0066] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.
[0067] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with the generation, management, and distribution of electrical power within a portable device.
[0068] Device 100 also optionally includes one or more light sensors 164. FIG. 1A shows a light sensor coupled to light sensor controller 158 in I / O subsystem 106. Light sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. Light sensor 164 optionally works in conjunction with imaging module 143 (also called a camera module) to capture still images or video. In some embodiments, the light sensor is located on the back side of device 100 opposite touchscreen display 112 on the front of the device, so that the touchscreen display can be used as a viewfinder for capturing still images and / or video. In some embodiments, the light sensor is located on the front of the device so that an image of a user is optionally acquired for a videoconference while the user views other videoconference participants on the touchscreen display. In some embodiments, the position of the light sensor 164 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that a single light sensor 164 is used for both video conferencing and capturing still images and / or video, along with a touchscreen display.
[0069] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment and creates a three-dimensional model of an object (e.g., a face) in a scene from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also referred to as a camera module), depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by imaging module 143. In some embodiments, a depth camera sensor is located on the front of device 100 to obtain images of the user with depth information for videoconferences and to capture selfie images with depth map data while the user views other videoconference participants on a touchscreen display. In some embodiments, depth camera sensor 175 is located on the back of the device or on both the back and front of device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that the depth camera sensor 175 is used for both video conferencing and capturing still images and / or video, in conjunction with a touchscreen display.
[0070] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor 165 receives contact intensity information (e.g., pressure information, or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to the touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.
[0071] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 optionally functions as described in U.S. patent application Ser. Nos. 11 / 241,839, "Proximity Detector In Handheld Device," 11 / 240,788, "Proximity Detector In Handheld Device," 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output," 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices," and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are incorporated herein by reference in their entireties. In some embodiments, the proximity sensor turns off and disables touchscreen 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).
[0072] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows tactile output generators coupled to haptic feedback controller 161 in I / O subsystem 106. Tactile output generator 167 optionally includes one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). Contact intensity sensor 165 receives tactile feedback generation instructions from haptic feedback module 133 and generates a tactile output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one tactile output generator is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and generates a tactile output, optionally by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.
[0073] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 in I / O subsystem 106. Accelerometer 168 optionally functions as described in U.S. Patent Application Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Application Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated herein by reference in their entireties. In some embodiments, information is displayed on the touchscreen display in portrait or landscape orientation based on an analysis of data received from the one or more accelerometers. In addition to accelerometer(s) 168, device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information about the position and orientation (e.g., vertical or horizontal) of device 100.
[0074] In some embodiments, software components stored in memory 102 include operating system 126, communications module (or instruction set) 128, touch / motion module (or instruction set) 130, graphics module (or instruction set) 132, text input module (or instruction set) 134, Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction sets) 136. Additionally, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores device / global internal state 157, as shown in FIGS. 1A and 3. Device / global internal state 157 includes one or more of: active application state indicating which applications, if any, are currently active; display state indicating which applications, views, or other information occupy various regions of touchscreen display 112; sensor state including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's position and / or orientation.
[0075] Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, storage control, power management, etc.) and facilitate communication between various hardware and software components.
[0076] Communications module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) is adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.
[0077] Contact / motion module 130, optionally in cooperation with display controller 156, detects contact with touchscreen 112 and other touch-sensing devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact occurs (e.g., detecting a finger-down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is contact movement and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether the contact has stopped (e.g., detecting a finger-up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point, as represented by the series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These actions are optionally applied to a single contact (e.g., a single finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on the touchpad.
[0078] In some embodiments, contact / motion module 130 uses one or more sets of intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator, but can be adjusted without modifying the physical hardware of device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of pre-defined thresholds without modifying the trackpad or touchscreen display hardware. Additionally, in some implementations, a user of the device is provided with a software setting to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds at once via a system-level click “intensity” parameter).
[0079] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting particular contact patterns. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same location (or substantially the same location) as the finger down event (e.g., the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by detecting a finger up (lift off) event.
[0080] Graphics module 132 includes various known software components that render and display graphics on touchscreen 112 or other display, including components that vary the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphic" includes any object that can be displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects including soft keys), digital images, video, animation, etc.
[0081] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including coordinate data and other graphic characteristic data, as needed, from an application or the like, and then generates screen image data to output to display controller 156.
[0082] The tactile feedback module 133 includes various software components for generating instructions used by the tactile output generator 167, which generates tactile outputs at one or more locations on the device 100 in response to a user's interaction with the device 100.
[0083] Text input module 134 is optionally a component of graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).
[0084] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for use in location-based dialing, to the camera 143 as photo / video metadata, and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map / navigation widgets).
[0085] Application 136 optionally includes the following modules (or sets of instructions), or a subset or superset thereof: a contacts module 137 (sometimes called an address book or contact list); Telephone module 138, · Videoconferencing module 139, an email client module 140; Instant messaging (IM) module 141, · Training Support Module 142, camera module 143 for still images and / or video; Image management module 144, Video player module, Music player module, Browser module 147, · Calendar module 148, a widget module 149, optionally including one or more of a weather widget 149-1, a stocks widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, and a user-created widget 149-6; a widget creator module 150 for creating user-created widgets 149-6; · Search module 151, A video and music player module 152 that integrates a video player module and a music player module; · Memo module 153, a map module 154, and / or ·Online video module 155.
[0086] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice duplication.
[0087] Contacts module 137, in conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to manage an address book or contact list (e.g., stored in memory 102 or in the application internal state 192 of contacts module 137 in memory 370). These include adding a name to an address book, removing a name(s) from an address book, associating phone number(s), email address(es), physical address(es), or other information with a name, associating an image with a name, categorizing and sorting names, providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, video conferencing module 139, email 140, or IM 141, and the like.
[0088] Telephone module 138, in conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to enter character sequences corresponding to telephone numbers, access one or more telephone numbers in contacts module 137, modify entered telephone numbers, dial respective telephone numbers, place calls, and disconnect and hang up when the call is completed. As previously mentioned, wireless communication optionally uses any of a number of communication standards, protocols, and technologies.
[0089] Videoconferencing module 139 includes executable instructions to cooperate with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, light sensor 164, light sensor controller 158, contact / motion module 130, graphics module 132, text input module 134, contact module 137, and telephone module 138 to initiate, conduct, and end a videoconference between a user and one or more other participants according to the user's instructions.
[0090] Email client module 140, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for composing, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.
[0091] Instant messaging module 141 includes executable instructions, in cooperation with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, for entering character sequences corresponding to instant messages, modifying previously entered characters, sending respective instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephony-based instant messaging, or XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments, such as those supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
[0092] The training support module 142 includes executable instructions to cooperate with the RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module to create workouts (e.g., with time, distance, and / or calorie burn goals), communicate with training sensors (sports devices), receive training sensor data, calibrate sensors used to monitor workouts, select and play music for workouts, and display, store, and transmit workout data.
[0093] Camera module 143, in conjunction with touchscreen 112, display controller 156, light sensor 164, light sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, contains executable instructions for capturing and storing still images or video (including video streams) in memory 102, modifying the characteristics of the still images or video, or deleting the still images or video from memory 102.
[0094] Image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing still and / or video images in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143.
[0095] Browser module 147, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for browsing the Internet according to user directions, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0096] The calendar module 148 includes executable instructions to cooperate with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the email client module 140, and the browser module 147 to create, display, modify, and store calendars and data associated with the calendars (e.g., calendar items, to-do lists, etc.) according to user instructions.
[0097] Widget module 149, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, optionally provides mini-applications (e.g., weather widget 149-1, stocks widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) downloaded and used by a user, or mini-applications created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).
[0098] The widget creator module 150, in conjunction with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, is optionally used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).
[0099] The search module 151 includes executable instructions for working in conjunction with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to search for text, music, sound, images, video, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.
[0100] Video and music player module 152 includes executable instructions that, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, enable a user to download and play pre-recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing videos (e.g., on touchscreen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).
[0101] The notes module 153 includes executable instructions for working with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to create and manage notes, to-do lists, and the like as directed by a user.
[0102] Map module 154, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, is used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other points of interest at or near a particular location, and other location-based data), optionally in accordance with user instructions.
[0103] Online video module 155, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, contains instructions that enable a user to access, browse for, receive (e.g., by streaming and / or downloading), and play (e.g., on the touchscreen or on an external display connected via external port 124) particular online videos, send emails with links to particular online videos, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140. For additional description of online video applications, see U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the contents of which are incorporated herein by reference in their entireties.
[0104] The above-identified modules and applications each correspond to sets of executable instructions that perform one or more of the functions previously described and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. For example, a video player module is optionally combined with a music player module into a single module (e.g., video and music player module 152 of FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.
[0105] In some embodiments, device 100 is a device in which operation of a predetermined set of functions on the device is performed solely via a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.
[0106] The set of predefined functions performed only through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, home menu, or root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.
[0107] 1B is a block diagram illustrating exemplary components for event processing, according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes event sorter 170 (e.g., within operating system 126) and a respective application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).
[0108] Event sorter 170 receives the event information and determines which application 136-1 to deliver the event information to and application view 191 for application 136-1. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view that is displayed on touch-sensitive display 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) is currently active, and application internal state 192 is used by event sorter 170 to determine which application(s) is / are currently active, and application internal state 192 is used by event sorter 170 to determine which application view 191 to deliver the event information to.
[0109] In some embodiments, application internal state 192 includes additional information such as one or more of resume information to be used when application 136-1 resumes execution, user interface state information indicating or ready to display information being displayed by application 136-1, state cues that allow the user to return to a previous state or view of application 136-1, and redo / undo cues of previous actions taken by the user.
[0110] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user touch as part of a multi-touch gesture on touch-sensitive display 112). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). Information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.
[0111] In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receipt of an input above a predetermined noise threshold and / or for more than a predetermined duration).
[0112] In some embodiments, event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .
[0113] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 displays more than one view. A view consists of the controls and other elements that a user can see on the display.
[0114] Another aspect of a user interface associated with an application is the set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of the respective application) in which the touch is detected optionally corresponds to a programmatic level within the application's programmatic or view hierarchy. For example, the lowest-level view in which the touch is detected is optionally referred to as the hit view, and the set of events that are recognized as appropriate inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.
[0115] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized hierarchically, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest-level view in which an initiating sub-event occurs (e.g., the first sub-event in a sequence of sub-events that form an event or potential event). Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the touch or input source identified as the hit view.
[0116] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive the particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive the particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-event are actively participating views, and therefore all actively participating views should receive the particular sequence of sub-events. In other embodiments, even if the touch sub-event is completely confined to the area associated with one particular view, views higher in the hierarchy still remain actively participating views.
[0117] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by each event receiver 182 in an event queue.
[0118] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In still other embodiments, event sorter 170 is a stand-alone module or is part of another module stored in memory 102, such as contact / motion module 130.
[0119] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each containing instructions for processing touch events that occur within a respective view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, each application view 191 includes multiple event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such as a user interface kit or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, each event handler 190 includes one or more of data updater 176, object updater 177, GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in each application view 191.
[0120] Each event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes event receiver 182 and event comparator 184. In some embodiments, event recognizer 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (optionally including sub-event delivery instructions).
[0121] Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, e.g., a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as the position of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also called the device's attitude).
[0122] The event comparator 184 compares the event information with predefined event or sub-event definitions and determines the event or sub-event, or determines or updates the state of the event or sub-event, based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a predefined sequence of sub-events), such as Event 1 (187-1) and Event 2 (187-2). In some embodiments, sub-events within Event 1 (187) include, for example, touch start, touch end, touch movement, touch cancellation, and multiple touches. In one example, the definition for Event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch on a displayed object relative to a predetermined stage (touch start), a first lift-off (touch end) relative to the predetermined stage, a second touch on a displayed object relative to the predetermined stage (touch start), and a second lift-off (touch end) relative to the predetermined stage. In another example, a definition of event 2 (187-2) is a drag on a displayed object. Drag includes, for example, a touch (or contact) on the displayed object to a predetermined stage, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information about one or more associated event handlers 190.
[0123] In some embodiments, event definition 187 includes a definition of the event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, if a touch is detected on touch-sensitive display 112 in an application view in which three user interface objects are displayed on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.
[0124] In some embodiments, each event 187 definition also includes a delay action that delays transmission of the event information until it is determined whether the sequence of sub-events corresponds to the event type of the event recognizer.
[0125] If the respective event recognizer 180 determines that the sequence of sub-events does not match any of the events in the event definition 186, the respective event recognizer 180 enters an event-disabled, event-failed, or event-ended state and thereafter ignores the next sub-event of the touch-based gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
[0126] In some embodiments, each event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or how event recognizers are allowed to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in the view or programmatic hierarchy.
[0127] In some embodiments, each event recognizer 180 activates an event handler 190 associated with an event when one or more specific sub-events of the event are recognized. In some embodiments, each event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and postponing sending) sub-events to the respective hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with the flag captures the flag and performs a predetermined process.
[0128] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs predetermined processing.
[0129] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by a video player module. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.
[0130] In some embodiments, event handler(s) 190 include or have access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0131] It should be understood that the foregoing description of event processing of a user's touch on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 using input devices, although not all of them are initiated on a touchscreen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple keyboard presses or holds, pen stylus input, device movement, verbal commands, detected eye movement, biometric input, and / or any combination thereof, are optionally utilized as inputs corresponding to sub-events that define the recognized event.
[0132] FIG. 2 illustrates portable multifunction device 100 having touchscreen 112, according to some embodiments. The touchscreen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as other embodiments described below, a user may select one or more of the graphics by performing a gesture on the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upward and / or downward), and / or rolling (right to left, left to right, upward and / or downward) of a finger in contact with device 100. In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon optionally does not select the corresponding application.
[0133] Device 100 also optionally includes one or more physical buttons, such as a "home" button or menu button 204. As previously mentioned, menu button 204 is optionally used to navigate to any application 136 within a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on touchscreen 112.
[0134] In some embodiments, device 100 includes touchscreen 112, menu button 204, pushbuttons 206 for powering the device on / off and locking the device, volume control buttons 208, subscriber identity module (SIM) card slot 210, headset jack 212, and external docking / charging port 124. Pushbutton 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined time has elapsed, and / or to unlock the device or initiate the unlocking process. In alternative embodiments, device 100 also accepts verbal input via microphone 113 to activate or deactivate certain functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on touchscreen 112 and / or one or more tactile output generators 167 for generating a tactile output for a user of device 100.
[0135] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes called a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interface 330, including display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 that generates tactile output on device 300 (e.g., similar to tactile output generator 167 described above with reference to FIG. 1A ), and sensors 359 (e.g., light, acceleration, proximity, touch-sensing, and / or contact intensity sensors similar to contact intensity sensor 165 described above with reference to FIG. 1A ). Memory 370 includes high-speed random-access memory such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A). Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, word processing module 384, website creation module 386, disc authoring module 388, and / or spreadsheet module 390, whereas memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store these modules.
[0136] Each of the above-identified elements of FIG. 3 is optionally stored in one or more of the memory devices mentioned above. Each of the above-identified modules corresponds to an instruction set that performs the function described above. The above-identified modules or programs (e.g., instruction sets) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. In some embodiments, memory 370 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 370 optionally stores additional modules and data structures not described above.
[0137] Attention is now optionally directed to user interface embodiments, for example, as implemented on portable multifunction device 100.
[0138] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100, according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: signal strength indicator(s) 402 for wireless communication(s), such as cellular and Wi-Fi signals; ●Time 404, ●Bluetooth indicator 405, ● Battery status indicator 406, Tray 408 with icons of frequently used applications, such as: An icon 416 for the phone module 138, labeled "Phone," optionally including an indicator 414 of the number of missed calls or voicemail messages; icon 418 of the email client module 140, labeled "Mail," optionally including an indicator 410 of the number of unread emails; ○ An icon 420 for the browser module 147, labeled "Browser"; and o An icon 422 for the video and music player module 152, also called the iPod (trademark of Apple Inc.) module 152, labeled "iPod"; and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages" ○ Icon 426 of the calendar module 148, labeled "Calendar" ○ Icon 428 of the image management module 144, labeled "Photos" ○ An icon 430 of the camera module 143, labeled "camera"; ○ Icon 432 of the online video module 155, labeled "Online Video"; Icon 434 of Stocks widget 149-2, labeled "Stock Prices" ○ Icon 436 of the map module 154, labeled "Map" ○ Icon 438 of weather widget 149-1, labeled "Weather" ○ Icon 440 of alarm clock widget 149-4, labeled "Clock" ○ Icon 442 of Training Support Module 142, labeled "Training Support"; ○ An icon 444 of the Notes module 153 labeled "Notes," and A settings application or module icon 446 labeled "Settings" that provides access to settings for the device 100 and its various applications 136.
[0139] 4A are merely exemplary. For example, icon 422 of video and music player module 152 is labeled "music" or "music player," although other labels are optionally used for various application icons. In some embodiments, the label for each application icon includes the name of the application corresponding to the respective application icon. In some embodiments, the label for a particular application icon is different from the name of the application corresponding to that particular application icon.
[0140] 4B shows an example user interface on a device (e.g., device 300 of FIG. 3 ) that has touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3 ) that is separate from display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) that detect the intensity of a contact on touch-sensitive surface 451, and / or one or more tactile output generators 357 that generate a tactile output for a user of device 300.
[0141] Although some of the following examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, as shown in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B ) has a primary axis (e.g., 452 in FIG. 4B ) that corresponds to a primary axis (e.g., 453 in FIG. 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B ) at locations that correspond to respective locations on the display (e.g., in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). In this way, user input (e.g., contacts 460 and 462 and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are optionally used for the other user interfaces described herein.
[0142] Additionally, while the following examples are given primarily with reference to finger input (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 are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a contact) followed by movement of a cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced by a mouse click (e.g., instead of detecting a contact and then ceasing contact detection) while the cursor is located over the location of the tap gesture. Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or a mouse and finger contacts are optionally used simultaneously.
[0143] FIG. 5A shows an exemplary personal electronic device 500. Device 500 includes a main body 502. In some embodiments, device 500 can include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B ). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter touch screen 504. Alternatively, or in addition to touch screen 504, device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touch screen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of contact (e.g., touches) being applied. The one or more intensity sensors of touch screen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to touches based on their intensity, meaning that touches of different intensities can invoke different user interface actions on device 500.
[0144] For exemplary techniques for detecting and processing touch intensity, see, for example, related applications International Patent Application No. PCT / US2013 / 040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application," published as International Publication No. WO / 2013 / 169849, and International Patent Application No. PCT / US2013 / 069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships," published as International Publication No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.
[0145] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, may be physical. 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, may allow device 500 to be attached to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow device 500 to be worn by a user.
[0146] FIG. 5B illustrates an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 that operably couples an I / O section 514 to one or more computer processors 516 and a memory 518. I / O section 514 can be connected to a display 504, which can have touch-sensing components 522 and optionally an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, I / O section 514 can be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near-field communication (NFC), cellular, and / or other wireless communication technologies. Device 500 can include input mechanisms 506 and / or 508. Input mechanism 506 is optionally a rotatable input device or a depressible and rotatable input device, for example. In some examples, input mechanism 508 is optionally a button.
[0147] In some embodiments, the input mechanism 508 is optionally a microphone. The personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which may be operably connected to the I / O section 514.
[0148] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, may cause the computer processors to perform the techniques described below, including processes 700, 800, 900, and 1100 (FIGS. 7A, 7B, 8A, 8B, 9, 11A, and 11B). A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions used by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage medium is a transient computer-readable storage medium. In some embodiments, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic, optical, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and resident solid-state memory such as flash, solid-state drives, etc. Personal electronic device 500 is not limited to the components and configuration of Figure 5B and may include other or additional components in multiple configurations.
[0149] As used herein, the term "affordance" optionally refers to a user-interactive graphical user interface object displayed on a display screen of device 100, 300, and / or 500 (FIGS. 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each, optionally, constitute an affordance.
[0150] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations involving a cursor or other position marker, the cursor acts as the “focus selector,” such that when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 of FIG. 3 or touch-sensitive surface 451 of FIG. 4B) while the cursor is positioned over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations involving a touchscreen display (e.g., touch-sensitive display system 112 of FIG. 1A or touchscreen 112 of FIG. 4A) that allows direct interaction with user interface elements on the touchscreen display, a detected contact on the touchscreen acts as the “focus selector,” such that when input (e.g., a press input by contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface without a corresponding cursor movement or contact movement on the touchscreen display (e.g., by using the tab key or arrow keys to move focus from one button to another), and in these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the specific form the focus selector takes, the focus selector is generally a user interface element (or contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface through which the user intends to interact).For example, while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of a focus selector (e.g., a cursor, touch, or selection box) over a corresponding button indicates that the user intends to activate that corresponding button (and not other user interface elements shown on the device's display).
[0151] As used herein and in the claims, the term "characteristic intensity" of a contact refers to a characteristic of that contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predetermined number of intensity samples, i.e., a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detecting the contact, before detecting lift-off of the contact, before or after detecting the start of contact movement, before detecting the end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of the maximum intensity of the contact, the mean intensity of the contact, the average intensity of the contact, the top 10 percentile intensity of the contact, half the maximum intensity of the contact, 90 percent of the maximum intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action is performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact having a characteristic intensity that does not exceed the first threshold results in a first action, a contact having a characteristic intensity above the first intensity threshold but not above the second intensity threshold results in a second action, and a contact having a characteristic intensity above the second threshold results in a third action. In some embodiments, the comparison between the characteristic intensity and the one or more thresholds is not used to determine whether the first action or the second action should be performed, but rather is used to determine whether one or more actions should be performed (e.g., whether to perform the respective action or to forgo performing the respective action).
[0152] In some embodiments, a portion of the gesture is identified for purposes of determining the characteristic intensity. For example, the touch-sensitive surface optionally receives successive swipe contacts that transition from a start position to an end position, where the intensity of the contact increases. In this example, the characteristic intensity of the contact at the end position is optionally based on only a portion of the successive swipe contacts (e.g., only the portion of the swipe contact at the end position), rather than the entire swipe contact. In some embodiments, a smoothing algorithm is optionally 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 an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some situations, these smoothing algorithms eliminate narrow spikes or dips in the intensity of the swipe contact for purposes of determining the characteristic intensity.
[0153] The intensity of a contact on the touch-sensitive 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 corresponds to an intensity at which the device performs an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device performs an action different from an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, when a contact is detected having a characteristic intensity below the light press intensity threshold (e.g., and above a nominal contact-detection intensity threshold below which the contact is not detected), the device follows the movement of the contact on the touch-sensitive surface and moves the focus selector without performing an action associated with the light press intensity threshold or the deep press intensity threshold. In general, unless otherwise specified, these intensity thresholds are consistent across various sets of user interface values.
[0154] An increase in the characteristic intensity of a contact from an intensity below the light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold may be referred to as inputting a "light press." An increase in the characteristic intensity of a contact from an intensity below the deep press intensity threshold to an intensity above the deep press intensity threshold may be referred to as inputting a "deep press." An increase in the characteristic intensity of a contact from an intensity below the contact-detection intensity threshold to an intensity between the contact-detection intensity threshold and the light press intensity threshold may be referred to as detecting a contact on the touch surface. A decrease in the characteristic intensity of a contact from an intensity above the contact-detection intensity threshold to an intensity below the contact-detection intensity threshold may be referred to as detecting a lift-off of the contact from the touch surface. In some embodiments, the contact-detection intensity threshold is zero. In some embodiments, the contact-detection intensity threshold is greater than zero.
[0155] In some embodiments described herein, one or more actions are performed in response to detecting a gesture including a respective press input or in response to detecting a respective press input performed by a respective contact (or multiple contacts), where the respective press inputs are detected based at least in part on detecting an increase in intensity of the contact (or multiple contacts) above a press input intensity threshold. In some embodiments, the respective actions are performed in response to detecting an increase in intensity of the respective contact above the press input intensity threshold (e.g., a “downstroke” of the respective press input). In some embodiments, the press input includes an increase in intensity of the respective contact above the press input intensity threshold followed by a decrease in intensity of the contact below the press input intensity threshold, and the respective actions are performed in response to detecting a subsequent decrease in intensity of the respective contact below the press input threshold (e.g., an “upstroke” of the respective press input).
[0156] In some embodiments, the device employs intensity hysteresis to avoid accidental input, sometimes referred to as “jitter,” and the device defines or selects a hysteresis intensity threshold that has a predetermined relationship to the press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units below 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, the press input includes an increase in the intensity of each contact above the press input intensity threshold followed by a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold, and a respective action is performed in response to detecting a subsequent decrease in the intensity of each contact below the hysteresis intensity threshold (e.g., an “upstroke” of each press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and a respective action is performed in response to detecting the press input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, as the case may be).
[0157] For ease of explanation, descriptions of operations performed in response to a press input associated with a press input intensity threshold, or a gesture including a press input, are optionally triggered in response to detecting any of: an increase in the intensity of the contact above the press input intensity threshold; an increase in the intensity of the contact from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold; a decrease in the intensity of the contact below the press input intensity threshold; and / or a decrease in the intensity of the contact below a 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 the contact below a press input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold.
[0158] As used herein, the terms "open application" or "running application" refer to a software application that has retained state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or running application is, optionally, any one of the following types of application: the active application currently displayed on the display screen of the device on which the application is being used; Background applications (or background processes) that are not currently displayed, but for which one or more processes are being processed by one or more processors; and A suspended or hibernated application that is not running but has state information stored in memory (volatile and non-volatile, respectively) and that can be used to resume execution of the application.
[0159] As used herein, the term "closed application" refers to a software application that does not have retained state information (e.g., state information for a closed application is not stored in the device's memory). Thus, closing an application includes stopping and / or removing the application process for the application and removing state information for the application from the device's memory. Generally, opening a second application during a first application does not close the first application. When the second application is displayed and the first application is terminated, the first application becomes a background application.
[0160] Attention is now directed to embodiments of user interfaces (“UIs”) and related processes implemented on an electronic device such as portable multifunction device 100, device 300, or device 500.
[0161] Figures 6A-6I show exemplary user interfaces for presenting activity trends, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in Figures 7A, 7B, 8A, 8B, and 9.
[0162] 6A shows electronic device 600 displaying a home user interface 604 via display device 602. In some implementations, electronic device 600 includes one or more features of device 100, 300, or 500. Home user interface 604 includes multiple affordances, each affordance launching a different application. For example, the multiple affordances include activity affordance 606 for launching an activity application (e.g., an application corresponding to a physical activity performed by a user associated with electronic device 600).
[0163] 6A, electronic device 600 receives user input 607 corresponding to selection of activity affordance 606. User input 607 may include a touch gesture, such as a tap gesture, on activity affordance 606, which initiates an activity application (e.g., display of a user interface of the activity application, such as information user interface 608 (shown in FIG. 6B) or 90-day trend user interface 612 (shown in FIGS. 6C-6F)).
[0164] 6B shows electronic device 600 displaying informational user interface 608 for an activity application (e.g., the activity application described above with respect to FIG. 6A). Informational user interface 608 is an example of a first user interface displayed when starting the activity application. In some examples, informational user interface 608 is displayed the initial time a user navigates to the activity application after content for implementing activity trends (e.g., the techniques described in methods 700, 800, or 900) has been received by electronic device 600 (e.g., after an update or after installation of the activity application after content has been added to the activity application).
[0165] In some examples, informational user interface 608 is displayed in response to receiving user input (e.g., user input 607) corresponding to selecting an activity affordance (e.g., activity affordance 606). It should be appreciated that other user interfaces (e.g., 90-day trend user interface 612 as shown in FIG. 6C) may be displayed upon launching the activity application, such as when informational user interface 608 was previously hidden. In some examples, one or more user inputs must be received before informational user interface 608 and / or 90-day trend user interface 612 are displayed.
[0166] Informational user interface 608 provides information related to how activity trends work in the Activity application. For example, Figure 6B shows informational user interface 608 with text stating, "Close your rings daily to create trends using your activity data. See how the past 90 days compare to the past year."
[0167] The information user interface 608 includes a continuation affordance 610. Selection of the continuation affordance 610 hides the information user interface 608 and displays a different user interface (e.g., a 90-day trend user interface 612 as shown in FIG. 6C ). As shown in FIG. 6B , the electronic device 600 receives a user input 611 corresponding to the selection of the continuation affordance 610. The user input 611 can include a touch gesture, such as a tap gesture on the continuation affordance 610.
[0168] FIG. 6C shows electronic device 600 displaying an example 90-day trend user interface 612 via display device 602 when an insufficient amount of data is received for multiple activity metrics to identify a trend. As used herein, a trend corresponds to a comparison of data within a first time period (e.g., 90 days) and data within a second time period (e.g., 365 days), where the first time period is included within the second time period. In some examples, a trend may be identified for less than the entire time period. For example, instead of requiring 365 days of activity data for an activity metric, a trend for an activity metric may be identified if there are at least 180 days of activity data for the activity metric, where (1) the remaining days that do not contain activity data are ignored when identifying the trend, and (2) the shorter of the two time periods may be shortened to maintain a similar ratio between the two (e.g., if 180 days are received, the shorter of the two time periods may be 45). As shown, FIG. 6C is the user interface shown after four days of activity have been received for a user associated with electronic device 600. To clarify the examples described herein, a table is provided below to provide examples of different trend classifications for different scenarios. [Table 1]
[0169] An example 90-day trend user interface 612, as shown in FIG. 6C, includes an insufficient data portion 614 with a header portion 616 and a representation of multiple activity metrics, such as a movement representation 618. The header portion 616 includes a predicted amount of time before a sufficient amount of data is received. For example, the header portion 616 includes the text "Ready in 26 days." Such text indicates that the activity application estimates that it will have enough data to present activity trends via the 90-day trend user interface 612 after 26 days. The estimate can be calculated based on an expectation that enough information will be received each day over the next 26 days to satisfy the amount of activity data to provide activity trends after 26 days. The header portion 616 includes information about why it takes 26 days to prepare (e.g., "It takes 30 days of activity to start your trend").
[0170] As described above, the insufficient data portion 614 includes a movement representation 618. The movement representation 618 corresponds to activity data associated with a movement activity metric (e.g., a movement amount determined for a user). The movement representation 618 includes identification information 618a ("movement" text) indicating that the movement representation 618 is associated with a movement activity metric, an icon 618b (a circle around a "-") indicating that insufficient activity data was received for the movement activity metric to determine an activity trend for the movement activity metric, placeholder information 618c ("- / -cal average" text) indicating that an average value for the movement representation 618 is unavailable, and a description 618d ("This trend measures the active calories you burned" text). Other example representations of activity metrics shown in FIG. 6C include exercise, standing, and movement minutes. Each of the other example representations includes content similar to the movement representation 618.
[0171] 6D shows an electronic device 600 displaying an example of a 90-day trend user interface 612 via a display device 602 where all activity metrics have a negative trend within the last 90 days compared to the last 365 days. It should be appreciated that trends can span periods different from 90 days and 365 days (e.g., more or less than 90 days and / or more or less than 365 days). In some examples, the trend is based on a rolling period. In some examples, a rolling period means that as a new day is added to the period, the oldest day in the period is removed. For example, a 90-day rolling period means that on the 90th day, the rolling period is equal to day 1 through day 90, and on the 91st day, the rolling period is equal to day 2 through day 91.
[0172] 6D shows a 90-day trend user interface 612 at least 30 days after at least 30 days of activity data have been received. For example, the example 90-day trend user interface 612 shown in FIG. 6D may be displayed 26 days after the example 90-day trend user interface 612 shown in FIG. 6C was displayed. In some embodiments, the activity trends (e.g., movement representation 624) in the 90-day trend user interface 612 are refreshed daily so that the activity trends are updated daily. The example 90-day trend user interface 612 shown in FIG. 6D includes a negative trend portion 620 with an overall guidance portion 622 and a representation of multiple activity metrics, including the movement representation 624.
[0173] The overall instruction portion 622 includes text that provides a summary of the activity metrics included. For example, the overall instruction portion 622 includes text stating, "Watch your trends. John, you've got this!"
[0174] The multiple activity metric representations included in negative trend portion 620 are each associated with a different activity metric determined to have a negative trend (e.g., the average of the activity metric for the past 90 days is less than the average of the activity metric for the past 365 days). For example, negative trend portion 620 includes movement representation 624. Movement representation 624 corresponds to activity data associated with a movement activity metric (e.g., the amount of movement determined for the user). Movement representation 624 includes identification information 624a ("Movement" text) indicating that it is associated with a movement activity metric, an icon 624b (a circle around a "V") indicating that the movement activity metric is declining, an average value 624c ("400 cal average" text) indicating the average value of the movement activity metric for the last 90 days, a comparison value 624d ("-60") indicating the difference between the average value of the movement activity metric for the last 90 days and the average value of the movement activity metric for the last 365 days, and instructional instructions 624e ("Try to move around for an extra 10 minutes" text). 6D include exercise, standing, and movement. Each of the other example presentations includes content similar to movement representation 618, including its own instructional instructions (e.g., 626e, 628e, and 630e).
[0175] In some examples, coaching instructions are provided only for representations corresponding to activity metrics that have a negative trend over the last 90 days compared to the last 365 days, In such examples, the coaching instructions include a prediction for when the negative trend will transition to a neutral or positive trend.
[0176] In some examples, when predicting an estimated increase (e.g., 10% per day), the coaching instructions are modified based on the time it takes for the average of the corresponding activity metric to transition to a neutral or positive trend. In some examples, the estimated increase may be limited based on a threshold for the corresponding activity metric (e.g., an estimated increase in standing cannot result in a standing goal of more than 14 hours). In some examples, the amount of time affects how the coaching instructions are modified. For example, when the amount of time is less than one week, the coaching instructions include a prediction with the amount of time; when the amount of time is greater than one week but less than two weeks, the coaching instructions include a prediction with the amount of time rounded to one week; and when the amount of time is greater than two weeks, the coaching instructions do not include a prediction of time. In some examples, different activity metrics use different estimated increases.
[0177] In some examples, predicting includes simulating the estimated increase by: (1) forming a histogram associated with the activity data for each of a shorter period (e.g., the last 90 days) and a longer period (e.g., the last 365 days) (e.g., each bin in the histogram corresponds to the average of the activity data for a particular activity metric for a different day); (2) removing the oldest bin from the histogram; (3) adding a new bin to the histogram for the next day using the value of the activity data for the particular activity metric for the current day and a value corresponding to the estimated increase (e.g., if the value for the current day is 10 and the estimated increase is 1 (e.g., 10% of the value for the current day), the value for the new bin is 11 instead of 10); and (4) repeating steps 2 and 3 until the corresponding activity metric moves into a neutral or positive trend. In some embodiments, when repeating 3, the estimated increase may be the same for each additional day (e.g., based on the example above, if the estimated increase is 1 and the value for the previous day is 11, the value for the current day will be 12), may go to 0 after the first day (e.g., based on the example above, if the estimated increase is 9 after the first day and the value for the previous day is 11, the value for the current day will be 11 rather than continuing to increase to 12), or may change daily based on some function (e.g., f(x)=1 / x).
[0178] In some embodiments, the teaching instructions are modified based on recent trends within the last 90 days, e.g., within the last 15 days. In one embodiment, recent trends are determined using the Mann-Kendall (MK) test to examine data pairs within a given dataset to identify whether a monotonic trend exists.
[0179] To clarify the above example, the following table is provided to provide examples of different teaching instructions for different scenarios, with an explanation of what the teaching instructions might look like. [Table 2]
[0180] 6E shows an electronic device 600 displaying an example 90-day trend user interface 612 via a display device 602 when some activity metrics have a positive trend and other activity metrics have a negative trend within the last 90 days compared to the last 365 days. FIG. 6E shows the 90-day trend user interface 612 after at least 30 days of activity data have been received. The example 90-day trend user interface 612 shown in FIG. 6E includes a positive trend portion 632 and a negative trend portion 638, each with an overall coaching instruction for the respective portion (e.g., an overall coaching instruction 634 and an overall coaching instruction 640). In one example, the overall coaching instruction 634 for the positive trend portion 632 includes the text "Keep going," and the overall coaching instruction 640 for the negative trend portion 638 includes the text "Hang in there." 6E (or any example of the 90-day trend user interface 612) includes an insufficient data portion (not shown, but similar to the insufficient data portion 614 in the example 90-day trend user interface 612 shown in FIG. 6C) for one or more activity metrics that have an insufficient amount of corresponding data. In one example, the insufficient data portion is below the negative trend portion 638.
[0181] As described above, the instance of the 90-day trend user interface 612 shown in FIG. 6E includes a positive trend portion 632 having representations of multiple activity metrics, each determined to be trending upward or neutral (e.g., the average of the activity metric over the past 90 days is equal to or greater than the average of the activity metric over the past 365 days). For example, the positive trend portion 632 includes a movement representation 636. The movement representation 636 corresponds to activity data associated with a movement activity metric (e.g., an amount of movement determined for the user). The movement representation 636 includes identification 636a indicating that it is associated with a movement activity metric (the “movement” text), an icon 636b (“^” with a circle around it) indicating that the movement activity metric has had a positive trend over the last 90 days compared to the last 365 days, and an average value 636c (“460 cal average” text) indicating that the movement activity metric averaged 460 calories over the last 90 days.
[0182] It should be appreciated that the movement representation, when in the positive trend portion 632, does not include a comparison value indicating the difference between the average movement activity metric for the last 90 days and the average movement activity metric for the last 365 days, and / or coaching instructions, while both such content are provided for the activity metric in the negative trend portion 638. In some embodiments, merely providing the difference and / or coaching instructions in the negative trend portion 638 allows the system to not pressure the user into thinking that they need to continue to increase their trend. Similarly, classifying equals as positive allows the system to not pressure the user into thinking that they need to continue to increase their trend.
[0183] Other example representations of activity metrics in the positive trend portion 632 shown in FIG. 6E include exercise, minutes moved, walking speed, training intensity, and steps climbed. Each of the other example representations of activity metrics in the positive trend portion 632 includes similar content as the movement representation 636, but it should be appreciated that the different representations have different units of measurement. For example, the exercise activity representation as shown in FIG. 6E includes text indicating that the exercise activity metric averaged 36 minutes per day over the last 90 days.
[0184] 6E includes a negative trend portion 638 having representations of multiple activity metrics, each associated with a different activity metric determined to have a negative trend (e.g., the average of the activity metric for the past 90 days is less than the average of the activity metric for the past 365 days). For example, the negative trend portion 638 includes a standing representation 642. The standing representation 642 corresponds to activity data associated with the standing activity metric (e.g., the number of times per day the user determined they stood for at least one hour). The standing representation 642 includes identification information 642a indicating that it is associated with a standing activity metric ("Standing" text), an icon 642b (a "V" with a circle around it) indicating that the standing activity metric has a negative trend over the last 90 days compared to the last 365 days, an average value 642c ("10-hour average" text) indicating that the standing activity metric averaged 10 hours per day over the last 90 days, a comparison value 642d ("-2") indicating the difference between the average standing activity metric over the last 90 days and the average standing activity metric over the last 365 days, and instructional instructions 642e ("Remember to stand for one minute every hour throughout the day" text). Another example of a representation in the negative trend portion 638 shown in FIG. 6E is a distance walked representation 644. The distance walked representation 644 includes similar content as the standing representation 642 and includes its own instructional instructions (644e).
[0185] It should be appreciated that the order within each portion (e.g., positive trend portion 632 and negative trend portion 638) maintains the order of representations as provided in the example above. Representations not included in one of the portions continue the order in another portion. For example, the order in FIG. 6D is Move, Move, Stand, and Movement, and the order within positive trend portion 632 is Move, Move, and Movement, with Stand missing from positive trend portion 632 because Movement does not have a positive trend. In FIG. 6D, it can be seen that Stand is the first representation in negative trend portion 638.
[0186] In some embodiments, one or more icons (e.g., 636b) in the positive trend portion 632 (e.g., all of the icons in the positive trend portion 632, either sequentially or simultaneously, in some embodiments) are animated (e.g., bounce upward) in response to displaying the example 90-day trend user interface 612 shown in FIG. 6E. After a time threshold (e.g., greater than or equal to zero), in some embodiments, after animating one or more icons in the positive trend portion 632, one or more icons (e.g., 642b) in the negative trend portion 638 (e.g., all of the icons in the negative trend portion 638, either sequentially or simultaneously) are animated (e.g., bounce downward). By animating the icons associated with the negative trend portion 638 after animating the icons associated with the positive trend portion 632, the example 90-day trend user interface 612 as shown in FIG. 6E can emphasize the representations in the negative trend portion 638.
[0187] 6F shows the electronic device 600 displaying an example 90-day trend user interface 612 via the display device 602 when all activity metrics have a positive trend within the last 90 days compared to the last 365 days. FIG. 6F shows the 90-day trend user interface 612 at least 30 days after at least 30 days of activity data have been received. The example 90-day trend user interface 612 shown in FIG. 6F includes a positive trend portion 646 and an overall coaching instruction offering, "You're doing great!"
[0188] Positive trend portion 646 includes representations of multiple activity metrics, each determined to be neutral or positive (e.g., the average of the activity metric over the past 90 days is greater than or equal to the average of the activity metric over the past 365 days). For example, positive trend portion 646 includes exercise representation 648 and fitness level representation 650. Exercise representation 648 corresponds to activity data associated with an exercise activity metric (e.g., the amount of time the user detected exercising). Fitness level representation 650 corresponds to activity data associated with a different exercise metric (e.g., the user's determined training intensity). It should be appreciated that fitness level representation 650 is not displayed in other examples of 90-day trend user interface 612 described above. This illustrates that some representations may be displayed only if there is at least some activity data received for the respective activity metric or if there is enough activity data received for the respective activity metric to identify a trend (e.g., 37VO2max average). This allows frequently used metrics to always show some representation (e.g., a null value occasionally), while other metrics that are less frequently used (or require special equipment) only show when some activity data or enough activity data has been received to provide a trend.
[0189] 6F, the electronic device 600 receives a user input 649 corresponding to a selection of the athletic representation 648. The user input 649 may include a touch gesture, such as a tap gesture on the athletic representation 648, and may include a detailed activity metrics user interface corresponding to the athletic representation 648 (e.g., a detailed athletic user interface 652 as shown in FIG. 6G).
[0190] 6G , electronic device 600 displays detailed exercise user interface 652. In some examples, detailed exercise user interface 652 is displayed in response to receiving user input (e.g., user input 649) corresponding to selection of exercise representation 648. In some examples, one or more user inputs must be received before detailed exercise user interface 652 is displayed. It should be understood that when other activity metric representations are selected, other detailed activity metric user interfaces may be displayed, and the other detailed activity metric user interfaces correspond to whichever activity metric representation is selected.
[0191] The detailed exercise user interface 652 includes identification information 654 that indicates the activity metric to which the detailed exercise user interface 652 corresponds. For example, the identification information 654 indicates that the detailed exercise user interface 652 corresponds to an exercise activity metric.
[0192] The detailed athletic user interface 652 includes a summary portion 656. The summary portion 656 includes a text representation 656a indicating whether the athletic activity metric is trending downward (e.g., the average for the last 90 days is less than the average for the last 365 days) (the text representation would be “downward trending”), trending upward (e.g., the average for the last 90 days is greater than the average for the last 365 days) (the text representation would be “upward trending”), or in a neutral trend (e.g., the average for the last 90 days is equal to the average for the last 365 days) (the text representation would be “remain consistent”). It should be appreciated that neutral trends and upward trends can be grouped together so that the system does not distinguish between the two and instead uses upward trend when there is an upward or neutral trend. The summary portion 656 includes an icon 656b (“^” with a circle around it) indicating that the athletic activity metric has a positive trend over the last 90 days compared to the last 365 days. Summary portion 656 includes an average value 656c (the text "36-minute average") indicating that the athletic activity metric averaged 36 minutes per day over the last 90 days. Summary portion 656 includes a difference indicator 656d indicating the difference ("+3") between the average for the last 90 days and the average for the last 365 days. Summary portion 656 includes summary information 656e with text equivalent to icon 656b. Summary portion 656 includes coaching instructions 656f indicating suggestions for future athletic activity metrics. As shown in FIG. 6G, coaching instructions 656f suggest "Keep it up, John!", reflecting that the athletic activity metric is trending upward. Summary portion 656 may include a subset of those described above (e.g., summary portion 656 may not include text representation 656a).
[0193] The detailed athletic user interface 652 includes a weekly representation 658 to visually represent activity data for the athletic activity metric over the last 365 days. In some examples, such as shown in FIG. 6G , the weekly representation 658 is a bar graph where the x-axis corresponds to time (e.g., weeks over the last 365 days) and the y-axis corresponds to the average value of the athletic activity metric over either the last 90 days or the last 365 days. In such examples, the weekly representation 658 is divided into weeks using a bar per week (e.g., 52 bars). In some examples, the x-axis of the weekly representation 658 is labeled with months, and the y-axis ranges from 0 to the maximum average value over the last 365 days (e.g., 40 as shown in FIG. 6G ).
[0194] As shown in FIG. 6G in the weekly representation 658, bars associated with time periods of the last 90 days or less are visually distinguished (e.g., by a different pattern or color) from bars associated with time periods of the last 365 days or less. In one embodiment, the bars associated with the last 90 days are green, and the bars associated with the last 365 days are gray. If a week does not have any corresponding activity data, no bars for that week are displayed (e.g., 51 bars are displayed instead of 52). In some embodiments, the weekly representation 658 includes additional indications to separate the representation corresponding to the last 90 days from the representation corresponding to the last 365 days but not the last 90 days. For example, in FIG. 6G, a vertical line 658c is inserted to separate the two groups of bars.
[0195] The weekly representation 658 includes a 90-day average indication 658a and a 365-day average indication 658b, where the 90-day average indication 658a shows the average for the last 90 days and the 365-day average indication 658b shows the average for the last 365 days (including the last 90 days). As shown in FIG. 6G, the 90-day average indication 658a and the 365-day average indication 658b are each visually distinguishable lines at a vertical position corresponding to the corresponding average value (e.g., because the average for the last 90 days is greater than the average for the last 365 days, the 90-day average indication 658a is positioned at a higher vertical position than the 365-day average indication 658b). In some examples, the 90-day average indication 658a includes an indication as to whether the average for the last 90 days is greater than or equal to the average for the last 365 days. For example, as shown in FIG. 6G, the 90-day average indication 658a includes a "^" to indicate that the average for the last 90 days is greater than or equal to the average for the last 365 days. Similarly, if the average for the last 90 days is lower than the average for the last 365 days, the 90 day average representation 658a may include a "V."
[0196] The detailed athletic user interface 652 includes a daily average representation 660 for comparing activity data for athletic activity metrics to specific days of the week over the last 90 days and the last 365 days. In some examples, such as that shown in FIG. 6G , the daily average representation 660 includes a visual representation for comparing activity data (e.g., a bar graph where the x-axis corresponds to various days of the week and the y-axis corresponds to the average values of the athletic activity metrics over the last 90 days and the last 365 days). In such examples, the y-axis ranges from 0 to the maximum average value over the last 365 days (e.g., 40, as shown in FIG. 6G ).
[0197] As shown in FIG. 6G for daily average representation 660, bars associated with periods corresponding to the last 90 days are visually distinct (e.g., a different pattern or color) from bars associated with periods corresponding to the last 365 days. In one example, the bars corresponding to the last 90 days are green, and the bars corresponding to the last 365 days are gray. As shown in FIG. 6G for weekly representation 658, bars associated with periods within the last 90 days (e.g., days within a week or hours within a day) are paired with (e.g., adjacent with no intervening representation) bars associated with corresponding periods within the last 365 days (e.g., bars associated with Mondays within the last 90 days are paired with bars associated with Mondays within the last 365 days).
[0198] The daily average representation 660 includes a text representation (e.g., 660a and 660b) that corresponds to the visual representation. For example, as shown in FIG. 6A , the daily average representation 660 includes a table below the visual representation, where numbers corresponding to the bars, such as 32 and 38, are positioned to appear corresponding to the Monday section of the bar. In some embodiments, the numbers corresponding to the last 90 days are on the first row of the table, and the numbers corresponding to the last 365 days are on the second row below the first row. In some embodiments, the numbers corresponding to the last 90 days are visually different (e.g., a different pattern or a different color) from the numbers corresponding to the last 365 days. In one embodiment, the numbers for the last 90 days are green, and the numbers for the last 365 days are gray.
[0199] It should be appreciated that some detailed activity metric user interfaces may not include a daily average representation, such as a detailed activity metric user interface corresponding to an action that is not performed frequently daily (e.g., running speed). For example, an action related to exercise may include a representation for comparing activity data for the activity metric for specific periods (other than days of the week) over the past 90 days and the past 365 days (e.g., hours, weeks, or months) instead of a daily average representation.
[0200] The detailed athletic user interface 652 includes an athletic ring closure representation 662 for comparing activity metrics that are associated with, but different from, the athletic activity metric. For example, the athletic ring closure representation 662 relates to a closed athletic ring, where the athletic ring is an activity metric that corresponds to a pre-defined or user-defined threshold of daily activity. In one example, the closed athletic ring is associated with the athletic activity metric because the athletic ring closes based on the athletic activity metric exceeding the threshold on a given day.
[0201] The athletic ring closure representation 662 includes a 90-day representation 662a and a 365-day representation 662b. The 90-day representation 662a includes a textual representation of the number of days in the last 90 days that the user closed the athletic ring (e.g., "79 / 90 days") and the percentage of days in the last 90 days (e.g., "88%"). The 365-day representation 662b includes a textual representation of the number of days in the last 365 days that the user closed the athletic ring (e.g., "284 / 365 days") and the percentage of days in the last 365 days (e.g., "77%"). In some examples, the 90-day representation 662a is visually distinct from the 365-day representation 662b (e.g., the 90-day representation 662a is green and the 365-day representation 662b is gray).
[0202] FIG. 6H illustrates an electronic device 664 displaying a user-ready user interface 670 via a display device 668 when an activity trend (e.g., as shown in FIG. 6D ) is ready to be viewed on a second device (e.g., electronic device 600). In some embodiments, electronic device 664 includes one or more features of apparatus 100, 300, 500, or 600. In some embodiments, user-ready user interface 670 includes a positive trend portion 674 having displays of multiple representations for different activity metrics (e.g., movement representations or exercise representations). As shown in FIG. 6H , each representation includes an identification of the activity metric corresponding to the representation (e.g., “movement”), an icon (e.g., a “^” icon) corresponding to a comparison of the activity metric for the past 365 days compared to the activity metric for the past 90 days, and a value (e.g., “460 cal average”) corresponding to a summary of the activity metric for the past 90 days. In user-ready user interface 670 as shown in FIG. 6H , all activity metrics have a positive trend within the last 90 days compared to the last 365 days. It should be recognized that this is just one example and that other combinations of all negative trends, or a mixture of some positive and some negative trends, are possible.
[0203] 6I illustrates electronic device 664 displaying monthly update user interface 678 via display device 668 when activity trends (e.g., as shown in FIG. 6D ) are available for viewing on a second device (e.g., electronic device 600). In some implementations, monthly update user interface 678 is pushed (e.g., from electronic device 600) to be displayed via display device 668 every particular period (e.g., one month). However, it should be appreciated that monthly update user interface 678 may be displayed at a different rate.
[0204] In some embodiments, the monthly update user interface 678 includes a positive trend portion 682 and a negative trend portion 684, each having a display of multiple representations for different activity metrics (e.g., movement representations or exercise representations). As shown in FIG. 6I, each representation in the positive trend portion 682 includes an identification of the activity metric corresponding to the representation (e.g., "movement"), an icon (e.g., a "^" icon) corresponding to a comparison of the activity metric for the last 365 days compared to the activity metric for the last 90 days, and a value corresponding to the comparison (e.g., "460 cal average"). As shown in FIG. 6I, each representation in the negative trend portion 684 includes an identification of the activity metric corresponding to the representation (e.g., "movement minutes"), an icon (e.g., an icon with a "V") corresponding to a comparison of the activity metric for the last 365 days compared to the activity metric for the last 90 days, a value (e.g., "30 minute average") corresponding to a summary of the activity metric for the last 90 days, and the difference (e.g., ("-4")) between the activity metric summary for the last 90 days and the activity metric summary for the last 365 days.
[0205] In the monthly update user interface 678 as shown in Figure 6I, some activity metrics have a positive trend and other activity metrics have a negative trend within the last 90 days compared to the last 365 days. It should be recognized that this is merely an example and other combinations of all positive trends or all negative trends are possible.
[0206] 7A-7B are flow diagrams illustrating a method 700 for presenting activity trends (e.g., for organizing activity metrics by trends over time (e.g., upward / downward)) using an electronic device, according to some embodiments. Method 700 relates to displaying a user interface (e.g., a 90-day trend home page) having trend representation(s), each representing a different activity metric, and the arrangement of the trend representations based on whether the trend representation is currently determined to be in a first classification (e.g., no change or positive) or a second classification (e.g., negative). Method 700 is performed on a device (e.g., 100, 300, 500, 600, 664) having a display device. Some operations of method 700 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0207] As described below, method 700 provides an intuitive way to present activity trends. The method reduces the cognitive burden on the user to present activity trends, thereby creating a more efficient human-machine interface. For battery-powered computing devices, allowing users to more quickly and efficiently identify activity trends conserves power and increases the time between battery charges.
[0208] At 702, a device (e.g., 600, 664) receives activity data corresponding to a first activity metric (e.g., data corresponding to a measured activity level of a user of an electronic device (e.g., data of activities performed by the user while wearing the electronic device)) for a first time period (e.g., three months).
[0209] At 704, the device receives activity data corresponding to the first activity metric for a second time period (eg, one year) different from the first time period.
[0210] At 706, the device receives a request (eg, 607 or 611) to display a first user interface (eg, 612) (eg, a user interface including a comparison of activity data against multiple activity metrics).
[0211] At 708, in response to receiving the request, the device displays the first user interface via the display device.
[0212] At 710, the first user interface includes displaying a representation (e.g., 636) of the first activity metric (e.g., a graphic or textual indication of the first activity metric) in a first portion (e.g., 626) of the first user interface in accordance with a determination that the relationship (e.g., mathematical relationship, mathematical comparison) between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type (e.g., the activity data for the first time period (e.g., the average value of the activity data) does not reflect a change or positive change relative to the activity data for the second time period (e.g., the average value of the activity data)).
[0213] At 712, the first user interface displays a representation (e.g., 642) (e.g., an up arrow or a down arrow) of the first activity metric in a second portion (e.g., 636) of the first user interface distinct from the first portion in accordance with a determination that the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type (e.g., negative, where the activity data for the first time period reflects a negative change relative to the activity data for the second time period). (In some embodiments, representations determined to be of the first type are visually grouped in the user interface separately from representations determined to be of the second type.) Dynamically positioning a representation (e.g., in the first or second portion of the user interface) of the activity metric based on the relationship between the activity metric and associated activity data over different time periods provides the user with visual feedback regarding the current state of the activity metric and data stored on the device. For example, such positioning allows the user to quickly identify activity metrics for which the user has recently had a negative trend. Improved usability of the device by providing improved visual feedback to the user, making the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), and additionally reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0214] In some examples, the relationship between the activity data corresponding to the first activity metric for a first time period and the activity data corresponding to the first activity metric for a second time period is of a first type if an activity value (e.g., average, slope of a linear fit) determined (e.g., calculated) for the activity data corresponding to the first activity metric for a first time period is determined to be greater than or equal to an activity value determined for the activity data corresponding to the first activity metric for a second time period (e.g., the same activity value determined for the first time period). In some examples, the relationship between the activity data corresponding to the first activity metric for a first time period and the activity data corresponding to the first activity metric for a second time period is of a second type if the activity value determined for the activity data corresponding to the first activity metric for the first time period is less than the activity value determined for the activity data corresponding to the first activity metric for the second time period.
[0215] In some examples, the representation of the first activity metric includes a visual indication (e.g., a graphical indication (up or down arrow), a textual indication) (e.g., 636b) of whether the relationship is of the first type or the second type.
[0216] In some examples, displaying the first user interface includes animating the visual indication at a first time point (e.g., immediately on the display, 0.5 seconds after display) after initially displaying the first user interface (e.g., automatically upon display of the first user interface) in accordance with a determination that a representation of the first activity metric will be displayed within a first portion of the first user interface. In some examples, displaying the first user interface includes animating the visual indication at a second time point (e.g., 1 second, a time point selected to be after completion of the animation based on the first time point) after initially displaying the first user interface in accordance with a determination that a representation of the first activity metric will be displayed within a second portion of the first user interface. Animating the visual indication (associated with the activity metric) such that the visual indication associated with the first portion of the user interface animates after the visual indication associated with the second portion of the user interface (thereby highlighting such visual indication associated with the first behavior) provides visual feedback to the user regarding the current state of the activity metric. For example, animating in this manner may allow a user to quickly identify activity metrics that have recently had a negative trend. Providing improved visual feedback to the user may improve usability of the device, make the user-device interface more efficient (e.g., by helping the user identify the types of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), and additionally reduce power usage and improve the device's battery life by allowing the user to use the device more quickly and efficiently.
[0217] In some examples, displaying the first user interface includes ceasing to display a representation of the first activity metric in the first user interface (e.g., in the first portion and the second portion) in accordance with a determination that the activity data corresponding to the first activity metric meets a first set of data sufficiency criteria (e.g., no data is available for the first time period and / or the second time period), including criteria that are met when the first activity metric is of a first metric type (e.g., a metric that is provided infrequently to a percentage of users, a metric that is not directly measured by one or more sensors of the electronic device) and criteria that are met when the first activity data corresponding to the first activity metric falls below a data sufficiency threshold (e.g., data for the first and / or second time periods is not present or is present but does not meet a threshold amount requirement) (e.g., regardless of whether a relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type).
[0218] In some examples, displaying the first user interface includes displaying a second set of data sufficiency criteria (e.g., over the first time period and / or the second time period) that include criteria that are met when the activity data corresponding to the first activity metric is a second metric type (e.g., a metric that is frequently provided to a percentage of users, a metric that is not directly measured by one or more sensors of the electronic device) and criteria that are met when the activity data corresponding to the first activity metric falls below a data sufficiency threshold (e.g., data for the first and / or second time period is absent or present but does not meet a threshold amount requirement). 6E ) together with an indication (e.g., a graphical indication, a textual indication) that the activity data corresponding to the first activity metric is insufficient (e.g., regardless of whether the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type). Providing an indication of whether a sufficient amount of data has been received for the particular activity metric provides the user with visual feedback regarding the current state of the activity data stored on the device. Providing improved visual feedback to the user improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to change the user interface and reducing user errors when operating / interacting with the device), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0219] In some examples, displaying the representation of the first activity metric in the third portion of the user interface includes displaying an indication of a predicted length of time remaining for the first activity data corresponding to the first activity metric to satisfy a data sufficiency threshold (e.g., 616). (In some examples, the predicted length of time is based on an assumption that a sufficient amount of activity data for the second activity metric will be received over the length of time.) Indicating the predicted length of time needed to display a particular activity metric provides the user with visual feedback regarding the current state of the activity data stored on the device and instructions regarding how the user needs to use the device going forward so that the particular metric can be provided. Providing the user with improved visual feedback improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to change the user interface and reducing user errors when operating / interacting with the device), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0220] In some embodiments, the first period of time is a first predetermined period of time (e.g., the previous 90 days) before the current time (e.g., selected based on the current time (e.g., the current day / date)). In some embodiments, the second period of time is a second predetermined period of time before the current time that is different from the first predetermined period of time (e.g., the previous 365 days).
[0221] In some examples, displaying the representation of the first activity metric within a second portion (e.g., 642) of the first user interface includes displaying first instructional instructions (e.g., 642e) (e.g., “Walk one more mile each day”) including a prediction corresponding to when the relationship transitions from a second type (e.g., negative) to a first type (e.g., the same or positive trend) (e.g., over a time period (e.g., 1 day, 5 days, 2 weeks)) while maintaining a future level (e.g., predicted future level) of activity for the first activity metric (e.g., walking 10% more per day). In some examples, displaying the representation of the first activity metric within a first portion of the first user interface includes ceasing to display the first instructional instructions (in some examples, the representation displayed in the first portion includes a second instructional instruction (e.g., “Keep up!”) that is different from the first instructional instruction). Selectively providing a prediction regarding the user's activity level assists the user in performing a technical task of providing additional activity data, thereby providing the user with visual feedback regarding the current state of the activity data stored on the device. Improved usability of the device by providing improved visual feedback to the user, making the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), and additionally reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0222] In some examples, the electronic device includes a sensor device (e.g., an accelerometer, a GPS, a heart rate monitor), and in such examples, the activity data corresponding to the first activity metric includes activity data received (e.g., detected) via the sensor device.
[0223] In some examples, the activity data corresponding to the first activity metric includes activity data received from a second electronic device (eg, an external electronic device).
[0224] At 714, the device receives activity data corresponding to a third activity metric (e.g., data corresponding to a measured activity level of a user of the electronic device (e.g., data of activities performed by the user while wearing the electronic device)) for the first period (e.g., three months).
[0225] At 716, the device receives activity data corresponding to a third activity metric for a second time period (eg, one year).
[0226] At 718, displaying the first user interface includes displaying a representation of the third activity metric (e.g., a graphic or textual indication of the first activity metric) within a first portion of the first user interface in accordance with a determination that the relationship (e.g., a mathematical relationship, a mathematical comparison) between the activity data corresponding to the third activity metric for the first time period and the activity data corresponding to the third activity metric for the second time period is of a first type (e.g., no change or positive).
[0227] At 720, displaying the first user interface includes displaying a representation of the third activity metric (e.g., an up arrow or a down arrow) within a second portion of the first user interface in accordance with a determination that the relationship between the activity data corresponding to the third activity metric for the first time period and the activity data corresponding to the third activity metric for the second time period is of a second type (e.g., negative).
[0228] In some examples, the representation of the first activity metric includes an indication in a first unit of measurement (e.g., calories, steps), and in such examples, the representation of the third activity metric includes an indication in a second unit of measurement (e.g., minutes, miles) that is different from the first unit of measurement.
[0229] In some embodiments, the first period (eg, the previous 90 days) is a subset of the second period (eg, the previous 365 days).
[0230] In some examples, the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period includes a comparison of an average of the activity data corresponding to the first activity metric for the first time period and an average of the activity data corresponding to the first activity metric for the second time period.
[0231] In some examples, the activity data corresponding to the first activity metric for the first time period is selected from the group consisting of one or more of: the number of calories burned, the amount of time the user was detected exercising, the amount of time the user was detected standing for at least one minute, the amount of time the user moved, the amount of time the user stood up, walking speed, the user's identified fitness level for a given time, the number of stairs climbed, the distance walked, and the user's determined training intensity.
[0232] In some examples, the device displays a user interface with all positive trends (e.g., FIG. 6G) or all negative trends (e.g., FIG. 6D), where the user interface with all positive trends is different from the user interface with all negative trends and a mix of positive and negative trends (e.g., FIG. 6E), which is different from the user interface with a mix of positive and negative trends. In some examples, the order of the trend representation is consistent between different views (e.g., all positive, all negative, or different combinations of a mix of positive and negative). For example, in FIG. 6D, it can be seen that the order is movement, exercise, standing, movement minutes, and walking speed. Next, in FIG. 5E, while a portion of the representation of the activity metrics transitions from negative to positive, the order within positives and within negatives is maintained, such that the order of movement, exercise, standing, movement minutes, and walking speed of each activity metric represented in each portion is maintained (e.g., in the positive, the order is movement, exercise, and movement minutes, with standing missing because it is in the second portion). In some examples, the device displays a user interface with ten different trends: Movement, Exercise, Standing, Movement Minutes, Standing Minutes, Walking Speed, Fitness Level, Steps Climbed, Walking Distance, and Training Intensity. In some examples, negative trends include coaching information, while positive trends do not (e.g., 636 and 642).
[0233] It should be noted that the details of the processes described above with respect to method 700 (e.g., FIGS. 7A-7B) are also applicable in an analogous manner to the methods described below. For example, method 800 and method 900 optionally include one or more of the features of the various methods described above with reference to method 700. For example, selection of an activity representation in a first user interface described in method 700 can cause the display of the first user interface described in method 800. In another example, one or more instructional instructions described in method 900 can be included in the first user interface described in method 700. For the sake of brevity, these details will not be repeated below.
[0234] 8A-8B are flow diagrams illustrating a method 800 for presenting activity trends (e.g., comparing activity metrics over two different lengths of time) using an electronic device, according to some embodiments. Method 800 involves displaying a user interface (e.g., a details page) having an activity metric representation for a particular activity metric comparing a first amount of time (e.g., 90 days) with a second amount of time (e.g., 365 days). Method 800 is performed on a device (e.g., 100, 300, 500, 600, 664) having a display device. Some operations of method 800 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0235] As described below, method 800 provides an intuitive way to present activity trends. The method reduces the cognitive burden on the user to present activity trends, thereby creating a more efficient human-machine interface. For battery-powered computing devices, allowing users to more quickly and efficiently identify activity trends conserves power and increases the time between battery charges.
[0236] At 802, a device (e.g., 600) receives activity data corresponding to a first activity metric (e.g., data corresponding to a measured activity level of a user of an electronic device (e.g., data of activities performed by the user while wearing the electronic device)) for a first period (e.g., three months).
[0237] At 804, the device receives activity data corresponding to a first activity metric for a second time period (e.g., one year), where the first time period is a subset of the second time period (e.g., the second time period includes the first time period). In some examples, at least a portion of the activity data is detected by a sensor of the electronic device. For example, the device includes a sensor device (e.g., an accelerometer, a GPS, a heart rate monitor), and the activity data corresponding to the first activity metric includes activity data received (e.g., detected) via the sensor device. In some examples, the activity data is received from a second electronic device. For example, the activity data corresponding to the first activity metric includes activity data received from the second electronic device (e.g., an external electronic device).
[0238] At 806, the device receives a request to display a first user interface (eg, a user interface having details about a particular activity metric) (eg, 649).
[0239] At 808, in response to receiving the request, the device displays (eg, 652) the first user interface via the display device.
[0240] At 810, the first user interface includes a representation (e.g., the bar in 658 to the right of 658c) of activity data corresponding to a first activity metric for a first time period (e.g., a graphical or textual representation of numerical values) (in some embodiments, the representation is a bar graph showing user activity data for a particular activity metric for each day in the first time period).
[0241] At 812, the first user interface includes a representation (e.g., the bar in 658 to the left of 658c) of activity data corresponding to the first activity metric for the second time period (e.g., a graphical or textual representation of numerical values) (in some embodiments, the representation is a bar graph showing user activity data for a particular activity metric for each day in the second time period).
[0242] In some examples, the representation of the activity data corresponding to the first activity metric for the first time period is visually different from the representation of the activity data corresponding to the first activity metric for the second time period (e.g., lacks a visual characteristic (e.g., color, border, shape) that is not present in the representation for the second time period or that is present in the representation for the second time period).
[0243] At 814, the first user interface includes a representation (e.g., 656a, 656b, 656d, 656e, 658a) (e.g., a graphical or textual representation of a numerical value) of a comparison (e.g., a mathematical comparison) of activity data corresponding to the first activity metric for a first time period with activity data corresponding to the first activity metric for a second time period. Displaying the representation for the different activity metrics with a comparison of the activity data over different time periods provides the user with visual feedback regarding the current state of the activity data stored on the device. Providing the user with improved visual feedback improves device usability, makes the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to change the user interface and reducing user errors when operating / interacting with the device), and additionally reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and efficiently.
[0244] In some examples, displaying the first user interface at 816 includes displaying an indication (e.g., 658a) (e.g., text or graphic indication) of an average of activity data corresponding to the first activity metric for the first time period. In such examples, displaying the first user interface at 818 includes displaying an indication (e.g., 658b) (e.g., text or graphic indication) of an average of activity data corresponding to the first activity metric for the second time period.
[0245] In some examples, a representation of activity data corresponding to a first activity metric for a first time period is divided into a first number of representations (e.g., a number of representations corresponding to units of time period (e.g., days)). In such examples, a representation of activity data corresponding to a first activity metric for a second time period is divided into a second number of representations that is different from the first number of representations.
[0246] In some examples, the comparison representation indicates a difference between the activity data corresponding to the first activity metric for a first time period and the activity data corresponding to the first activity metric for a second time period (e.g., a difference (e.g., average, slope of a linear fit) between activity values determined (e.g., calculated) for the first and second time periods of activity data) (in some examples, the comparison representation indicates a difference only if the activity data for the first time period is less than the activity data for the second time period).
[0247] In some examples, at 820, displaying the first user interface includes displaying a plurality of first period representations (e.g., 660 empty bars) of the first period (e.g., a bar in the graph for each day of the week corresponding to a 90-day period), where a first first period representation (e.g., a bar for Monday in the 90-day period) corresponds to a length of time (e.g., 1 day), a second first period representation (e.g., a bar for Tuesday in the 90-day period) corresponds to a length of time, the first first period representation corresponds to a third period within the first period (e.g., each Monday in the 90-day period), and the second first period representation corresponds to a fourth period within the first period (e.g., each Tuesday in the 90-day period). In such an example, displaying 822 the first user interface includes displaying a plurality of second period representations (e.g., a bar for each day of the week corresponding to a 365-day period) for the second period (e.g., a bar with a 660 diagonal line), where a first second period representation (e.g., a bar for Monday in the 365-day period) corresponds to a length of time, a second second period representation (e.g., a bar for Tuesday in the 365-day period) corresponds to a length of time, and a third second period representation (e.g., a bar for Tuesday in the 365-day period) corresponds to a fifth period within the second period (e.g., the first first time period representation corresponds to a first Monday in a 365-day period), the second second time period representation corresponds to a sixth time period within the second time period (e.g., each Tuesday in a 365-day period), the third time period corresponds to a fifth time period (e.g., both Mondays within their respective periods), the fourth time period corresponds to a sixth time period, the first first time period representation being visually paired with the first second time period representation (e.g., displayed adjacently (e.g., with no other intervening representations)), and the second first time period representation being visually paired with the second second time period representation. By visually depicting the user's activity over time using a comparison of two different time periods, the user is provided with visual feedback regarding the current state of the activity data stored on the device and information about how the user is using the device over time.Improved usability of the device by providing improved visual feedback to the user, making the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), and additionally reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0248] In some examples, displaying 824 the first user interface includes displaying a representation (e.g., 662a) of the percentage of a particular length of time period of activity data corresponding to the first activity metric (e.g., calories burned) for (e.g.,) the first time period during which the first activity metric met a threshold activity level (e.g., 500 calories / day). (In some examples, the user interface includes the percentage of days in a 90-day period during which the value of the activity metric (e.g., calories burned) met the threshold (e.g., 85% of days recorded a calorie burn metric greater than 500 calories).) By linking the activity metric to a particular threshold and tracking the user's past ability to meet the threshold, visual feedback is provided to the user regarding how the user is using the device. Providing the user with improved visual feedback improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to change the user interface and reducing user errors when operating / interacting with the device), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0249] In some embodiments, in 824, displaying the first user interface includes displaying an icon (e.g., 656b) indicating whether the relationship (e.g., mathematical relationship, mathematical comparison) between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type (e.g., the activity data for the first time period (e.g., the average value of the activity data) does not reflect a change or a positive change relative to the activity data for the second time period (e.g., the average value of the activity data)) or a second type (e.g., the activity data for the first time period reflects a negative change relative to the activity data for the second time period).
[0250] It should be noted that the process details described above with respect to method 800 (e.g., FIGS. 8A-8B) apply equally to the methods described below. For example, method 700 and method 900 optionally include one or more of the features of the various methods described above with reference to method 800. For example, selection of a back affordance in a first user interface described in method 900 can result in the display of the first user interface described in method 700. In another example, one or more instructional instructions described in method 900 can be included in the first user interface described in method 800. For the sake of brevity, these details will not be repeated below.
[0251] 9 is a flow diagram illustrating a method 900 for presenting activity trends (e.g., providing different guidance depending on relationships between data over time periods). The guidance includes predicting when the relationships will change if a particular activity level is maintained using an electronic device according to some embodiments. Method 900 is performed on a device (e.g., 100, 300, 500, 600, 664) having a display device. Some operations of method 900 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0252] As described below, method 900 provides an intuitive way to present activity trends. The method reduces the cognitive burden on the user to present activity trends, thereby creating a more efficient human-machine interface. For battery-powered computing devices, allowing users to more quickly and efficiently identify activity trends conserves power and increases the time between battery charges.
[0253] At 902, a device (e.g., 600) receives activity data corresponding to a first activity metric (e.g., data corresponding to a measured activity level of a user of an electronic device (e.g., data of activities performed by the user while wearing the electronic device)) for a first period (e.g., three months).
[0254] At 904, the device receives activity data corresponding to the first activity metric for a second time period (eg, one year) different from the first time period.
[0255] At 906, the device receives a request (e.g., 607, 611, 649) to display a first user interface (e.g., 612, 652) (e.g., a user interface including a comparison of activity data against multiple activity metrics, or a user interface with details of a particular activity metric).
[0256] At 908, in response to receiving the request, a first user interface is displayed via a display device, the first user interface including a representation (e.g., 642 or 656) of the first activity metric (e.g., a graphical or textual indication of the first activity metric).
[0257] At 910, in accordance with a determination that the relationship between the activity data corresponding to the first activity metric for a first time period and the activity data corresponding to the first activity metric for a second time period is of a first type (e.g., a negative trend that can be corrected within one day), the representation of the first activity metric displays a first teaching instruction (e.g., 628e) (e.g., "Remember to stand up for one minute every hour throughout the day") that includes a prediction (e.g., "Day" 628) corresponding to when the relationship will transition from the first type to a second type (e.g., the same or a positive trend) different from the first type (e.g., a time period (e.g., one day, five days, two weeks)) while maintaining a future level of activity for the first activity metric (e.g., 10% or more walking per day).
[0258] In 912, the representation of the first activity metric includes second guidance instructions (e.g., 624e) (e.g., “try to move around for an extra 10 minutes”) that do not include a prediction corresponding to when the relationship will transition from the third type to the second type (e.g., a time period (e.g., 1 day, 5 days, 2 weeks)) in accordance with a determination that the relationship is of a third type different from the first type (e.g., a negative trend for more than 1 week but that can be corrected within 1 month). Dynamically modifying the activity-related information provided to the user based on classifying the user's activity provides the user with visual feedback regarding the current state of the activity data stored on the device. Providing the user with improved visual feedback improves device usability and makes the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0259] In some examples, the first type requires that the relationship between activity data corresponding to the first activity metric for a first time period and activity data corresponding to the first activity metric for a second time period (e.g., the relationship between activity values (e.g., mean, slope of a linear fit) determined (e.g., calculated) for activity data corresponding to the first activity metric for the first time period and the second time period) is negative (e.g., the mean value for the first time period is 50 calories burned / day and the mean value for the second time period is 75 calories burned / day, with a difference in values of −25 calories burned / day).
[0260] In some examples, the representation of the first activity metric may include providing a third coaching instruction (e.g., a third coaching instruction) pursuant to a determination that the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type (thus meaning the trend is negative), while the relationship between the activity data corresponding to the first activity metric for the second time period and the activity data corresponding to the first activity metric for a subset of the first time period (e.g., the last 7 days of a 90-day period) is of a fourth type (e.g., recently positive). For example, displaying a fourth instructional instruction different from the third instruction (e.g., "You've been improving recently, but to reach your yearly average, try walking another mile per day" (guidance instruction in addition to the first instruction), and displaying a fourth instructional instruction different from the third instruction (e.g., "You've been improving recently, but to reach your yearly average, try walking another mile per day") in accordance with a determination that the relationship between the activity data corresponding to the first activity metric for the second time period and the activity data corresponding to the first activity metric for a subset of the first time period (e.g., the last 7 days of a 90-day period) is of a fifth type (e.g., negative recently). Dynamically changing the activity-related information provided to the user based on the user's recent behavior compared to earlier behavior provides the user with visual feedback regarding the recent state of the activity data stored on the device. Improved usability of the device by providing improved visual feedback to the user, making the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), and additionally reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0261] In some examples, the representation of the first activity metric includes: displaying a fifth instructional instruction (e.g., an instructional instruction in addition to the first instructional instruction) in accordance with a determination that the prediction exceeds a first time threshold (e.g., >1 day) and is less than a second time threshold (e.g., <7 days) while the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type; and displaying a sixth instructional instruction (e.g., an instructional instruction in addition to the first instructional instruction) different from the fifth instruction in accordance with a determination that the prediction exceeds the second time threshold (e.g., >7 days). Dynamically modifying the activity-related information provided to the user based on the expected time link to the activity data provides the user with visual feedback regarding the current state of the activity data stored on the device. Improved usability of the device by providing improved visual feedback to the user, making the user-device interface more efficient (e.g., by assisting the user in identifying the type of data the user needs to provide to the device to modify the user interface and reducing user errors when operating / interacting with the device), and additionally reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0262] In some examples, at 914, pursuant to a determination that the prediction is of a first classification (e.g., requiring an activity level above a threshold (e.g., very high requirements)) while the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a first type (thus meaning the trend is negative), a fifth coaching instruction is displayed (e.g., "Try to improve") without a corresponding prediction when the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period becomes of a second type (e.g., the same or a positive trend) while maintaining a future level of activity for the first activity metric (e.g., 10% or more walking per day).
[0263] In some examples, the prediction is determined by removing old data from activity data corresponding to a first activity metric for a first time period; removing old data from activity data corresponding to the first activity metric for a second time period; adding predicted data to the activity data corresponding to the first activity metric for the first time period until the relationship between the activity data corresponding to the first activity metric for the first time period and the activity data corresponding to the first activity metric for the second time period is of a second type; and adding old data from the activity data corresponding to the first activity metric for the first time period to the activity data corresponding to the first activity metric for the second time period (in some examples, the trend reverses in one day, which simply requires taking the last 89 / 364 days of actual data and adding one predicted day).
[0264] It should be noted that the process details described above in connection with method 900 (e.g., FIG. 9) are also applicable in an analogous manner to the methods described below. For example, methods 700 and 800 optionally include one or more of the features of the various methods described above with reference to method 900.
[0265] 10A-10N show exemplary user interfaces for managing workouts, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 11A-11B.
[0266] 10A shows electronic device 1000 displaying clock face user interface 1004 via display device 1002. Electronic device 1000 includes various input mechanisms for receiving user input, such as rotatable input mechanism 1001 capable of receiving rotatable input (and in some embodiments, also capable of receiving push input). In some embodiments, first electronic device 1000 includes one or more features of devices 100, 300, or 500. Clock face user interface 604 includes workout affordance 1006 for initiating a workout application (e.g., an application that tracks workouts performed by a user associated with electronic device 1000).
[0267] 10A, electronic device 1000 receives user input 1007 corresponding to selection of training affordance 1006. User input 1007 may include a touch gesture, such as a tap gesture, on training affordance 1006, which initiates a training application (e.g., display of a user interface of the training application, such as training platter user interface 1008 as shown in FIG. 10B).
[0268] 10B shows electronic device 1000 displaying a training platter user interface 1008 via display device 1002. Training platter user interface 1008 includes a scrollable list of affordances 1010 associated with corresponding physical activity tracking features for physical activities. For example, the scrollable list of affordances 1010 includes a walking affordance 1012a, which corresponds to physical activity tracking features for outdoor walking.
[0269] Note that the scrollable list of affordances 1010 includes additional affordances corresponding to other physical activity tracking features that are not currently displayed but may be displayed in response to a scroll input (e.g., rotation of the rotation mechanism 1001). In some embodiments, the scrollable list of affordances 1010 includes more training affordances, which are described in more detail below (see at least FIG. 10F).
[0270] 10B, electronic device 1000 receives user input 1013 corresponding to selection of walking affordance 1012a. User input 1013 may include a touch gesture, such as a tap gesture, on walking affordance 1012a, which may activate physical activity tracking functionality associated with walking affordance 1012a (e.g., display of one or more user interfaces of a training application having a final user interface corresponding to the physical activity tracking functionality associated with walking affordance 1012a (e.g., walking user interface 1014 as shown in FIG. 10C ).
[0271] 10C shows electronic device 1000 displaying a walking user interface 1014 via display device 1002. Walking user interface 1014 displays a set of tracking metrics (e.g., "00:01.40," "0 active calories," "70 BPM," "15'11" average mileage," and "0 ft") tracked by a physical activity tracking feature associated with walking affordance 1012a.
[0272] In some embodiments, tracking of the set of tracking metrics is performed by one or more tracking sensors of the electronic device 1000. For example, the electronic device 1000 tracks physical activity by means of tracking sensors (or training sensors) that communicate with the training support module 142 (as shown in FIG. 3 ).
[0273] 10C, the electronic device 1000 receives a user input 1015 corresponding to a swipe gesture. The user input 1015 may include a touch gesture that causes a control user interface of a training application to be displayed (e.g., controlling user interface 1016 as shown in FIG. 10D).
[0274] 10D shows electronic device 1000 displaying control user interface 1016 via display device 1002. In some examples, device 1000 displays control interface 1016 in response to a user input (e.g., user input 1015) while displaying gait user interface 1014. Control user interface 1016 includes affordances for controlling various functions of the training application. For example, control user interface 1016 includes an end training affordance 1018 (configured to end a currently running workout when selected).
[0275] 10D, the electronic device 1000 receives a user input 1019 corresponding to a selection of an end training affordance 1018. The user input 1018 may include a touch gesture, such as a tap gesture on the end training affordance 1018, as shown in FIG. 10E, which ends the currently running workout (associated with outdoor walking) and causes the workout platter user interface 1008 to be displayed.
[0276] 10E shows electronic device 1000 again displaying training platter user interface 1008 via display device 1002 and performing a scrolling operation. For example, rotational input 1021 is received at rotatable input mechanism 1001. In response to rotational input 1021 as shown in FIG. 10F, the scrollable list of affordances 1010 is scrolled in an upward direction such that more training affordances 1022 are displayed.
[0277] 10F, electronic device 1000 receives user input 1023 corresponding to selection of more training affordance 1022. User input 1023 may include a touch gesture, such as a tap gesture, on more training affordance 1022, causing a user interface with a list of available workouts to be displayed (e.g., workout list user interface 1024 as shown in 10G).
[0278] 10G shows electronic device 1000 displaying workout list user interface 1024 via display device 1002. In some examples, workout list user interface 1024 includes a scrollable list of affordances for popular portion 1026 (as shown in FIG. 10G) and alphabet portion 1021 (as shown in FIG. 10H).
[0279] 10G , popular portion 1026 includes a plurality of training affordances, each training affordance determined to be most relevant (e.g., popular among users, most frequently used by users associated with electronic device 1000, etc.). For example, the plurality of training affordances in popular portion 1026 includes dance affordance 1028. Selection of a particular training affordance of the plurality of training affordances (1) adds a training affordance corresponding to the particular training affordance to training platter user interface 1008, enabling future selection of the training affordance when the user navigates to training platter user interface 1008, and / or (2) results in a physical activity tracking function corresponding to the training affordance being activated.
[0280] 10H , alphabet portion 1021 includes an alphabetically ordered list of training affordances, including AUS Football affordance 1030 (e.g., an affordance corresponding to functionality for tracking activity related to Australian rules of football). It should be appreciated that the list of training affordances can be ordered differently. Similar to popularity portion 1026, selection of a particular training affordance in the list of training affordances (1) adds a training affordance corresponding to the particular training affordance to training platter user interface 1008, enabling future selection of the training affordance when the user navigates to training platter user interface 1008, and / or (2) causes a physical activity tracking functionality corresponding to the training affordance to be activated.
[0281] 10E, FIG. 10F shows electronic device 1000 receiving rotational input 1029 at rotatable input mechanism 1001. In response to rotational input 1029, the scrollable list of affordances in training list user interface 1024 is scrolled upward to display more training affordances, such as other training affordances in popularity portion 1026 (not shown) or training affordances in alphabet portion 1021 (as shown in FIG. 10H).
[0282] 10H shows electronic device 1000 receiving user input 1031 corresponding to selection of AUS football affordance 1030. User input 1031 may include a touch gesture, such as a tap gesture on AUS football affordance 1030, and a training affordance corresponding to AUS football affordance 1030 may be added to training platter user interface 1008 (e.g., AUS football affordance 1034 as shown in FIG. 10I).
[0283] 10B-10D, FIGS. 10I-10K illustrate user interfaces involved in starting and ending a workout. For example, FIG. 10I illustrates electronic device 1000 displaying, via display device 1002, a workout platter user interface 1008. The workout platter user interface 1008 illustrated in FIG. 10I includes an AUS football affordance 1034, and the workout platter user interface 1008 illustrated in FIG. 10I is shown in a state after AUS football affordance 1034 has been added to workout platter user interface 1008 (e.g., after FIG. 10H) (see FIG. 10F, which does not include AUS football affordance 1034). AUS football affordance 1034 corresponds to the physical activity tracking feature of Australian football.
[0284] 10I, electronic device 1000 receives user input 1035 corresponding to selection of AUS football affordance 1034. User input 1035 may include a touch gesture, such as a tap gesture, on AUS affordance 1034, which may activate a physical activity tracking functionality associated with AUS affordance 1034 (e.g., display of one or more user interfaces of a training application having a final user interface corresponding to the physical activity tracking functionality associated with AUS affordance 1034 (e.g., AUS user interface 1036 as shown in FIG. 10J)).
[0285] 10J shows electronic device 1000 displaying, via display device 1002, an AUS football interface 1036. AUS football interface 1036 displays a set of tracking metrics (e.g., "00:01.29," "0 active calories," "0 total calories," "-BPM," etc.) (tracked by a physical activity tracking feature associated with AUS football affordance 1034).
[0286] In some embodiments, tracking of the set of tracking metrics is performed by one or more tracking sensors of the electronic device 1000. For example, the electronic device 1000 tracks physical activity by means of tracking sensors (or training sensors) that communicate with the training support module 142 (as shown in FIG. 3 ).
[0287] 10J, electronic device 1000 receives user input 1037 corresponding to a swipe gesture. User input 1037 may include a touch gesture that causes a control user interface of a training application to be displayed (e.g., controlling user interface 1038 as shown in FIG. 10K).
[0288] 10K shows electronic device 1000 displaying control user interface 1038 via display device 1002. User interface 1038 includes affordances that control various functions of the training application. For example, control user interface 1038 includes an end training affordance 1040 (configured to end a currently running workout when selected).
[0289] 10K, the electronic device 1000 receives user input 1041 corresponding to selection of the end training affordance 1040. The user input 1041 may include a touch gesture, such as a tap gesture on the end training affordance 1040, as shown in FIG. 10L, which ends the currently running workout (related to Australian football) and causes the training platter user interface 1008 to be displayed.
[0290] 10L illustrates electronic device 1000 displaying training platter user interface 1008 via display device 1002. Training platter user interface 1008 illustrated in FIG. 10L includes AUS football affordance 1034, and training platter user interface 1008 illustrated in FIG. 10L is shown in a state (e.g., after FIG. 10H) after AUS football affordance 1034 has been added to training platter user interface 1008 (see FIG. 10F, which does not include AUS football affordance 1034).
[0291] 10L, electronic device 1000 receives user input 1043 corresponding to a swipe gesture associated with (e.g., at least partially over) AUS football affordance 1034. User input 1043 may include a touch gesture that (1) moves AUS football affordance 1034 to the left and (2) removes affordance 1044 and causes it to appear in a location previously occupied at least partially by AUS football affordance 1034 before the movement (as shown in FIG. 10M).
[0292] FIG. 10M shows electronic device 1000 displaying training platter user interface 1008 via display device 1002 with AUS football affordance 1034 moved to the left and delete affordance 1044 displayed in a location at least partially covered by AUS football affordance 1034 before it was moved to the left. Referring to FIG. 10L, electronic device 1000 receives user input 1045 corresponding to selection of delete affordance 1040. User input 1041 may include a touch gesture, such as a tap gesture on end training affordance 1044, causing AUS football affordance 1034 to be removed from training platter user interface 1008 (as shown in FIG. 10N) until AUS football affordance 1034 is added again using the process described in FIGS. 10F-10H. FIG. 10N shows electronic device 1000 displaying training platter user interface 1008 via display device 1002 without AUS football affordance 1034.
[0293] 11A-11B are flow diagrams illustrating a method 1100 of managing workouts using an electronic device according to some embodiments (e.g., allowing a user to view a list of workouts to add to the workout platter, more workout options for the workout platter). Method 1100 is performed on a device (e.g., 100, 300, 500, 600, 664, 1000) having a display device. Some operations of method 1100 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0294] As described below, method 1100 provides an intuitive way to manage workouts. This method reduces the cognitive burden on the user when managing workouts, thereby creating a more efficient human-machine interface. For battery-operated computing devices, allowing users to more quickly and efficiently add and remove workout affordances associated with physical activity tracking functionality conserves power and increases the time between battery charges.
[0295] In 1102, a device (e.g., 1000) displays, via a display device, a first example of a first user interface (e.g., 1008 as shown in FIGS. 10B, 10E, and 10F) that includes a first set of affordances (e.g., 1012a, 1012b) (e.g., a training platter) associated with a physical activity tracking feature (in some embodiments, different affordances in the scrollable list of multiple affordances correspond to different physical activities), the first set of affordances including a first affordance (e.g., 1012a) associated with a first physical activity tracking feature.
[0296] At 1104, while displaying the first instance of the first user interface, the device receives a user input (eg, 1013) (eg, a tap in the user interface).
[0297] At 1106, in response to receiving the user input, in accordance with a determination that the user input is detected at a first affordance (e.g., a run option) within the first set of affordances, the device launches (e.g., activates, starts) a first physical activity tracking function (e.g., 1014) (e.g., running).
[0298] At 1108, further in response to receiving the user input, in accordance with a determination that the user input is detected at a second affordance (e.g., 1022) (e.g., a further training option) in the first set of affordances, the device displays a second user interface (e.g., 1024) (e.g., a further training interface) including a third affordance (e.g., 1030) associated with a second physical activity tracking function (e.g., a walking option).
[0299] At 1110, a set of one or more inputs (eg, 1031) is received, the set of one or more inputs including an input corresponding to a selection of the third affordance.
[0300] At 1112, in response to receiving the set of one or more inputs, the device displays a second instance of the first user interface (e.g., 1008 as shown in FIG. 10I), where the second instance of the first user interface includes the first affordance and a fourth affordance (e.g., 1034) associated with a second physical activity tracking function (e.g., an affordance that, when selected, activates the second physical activity tracking function), and the first instance of the first user interface does not include an affordance (e.g., any affordance) associated with the second physical activity tracking function. Updating the list of physical activity tracking functions shown to the user on the initial user interface helps the user avoid unintentionally performing a physical activity tracking function while providing the user with more control of the device by reducing the number of steps the user must take to reach a desired physical activity tracking function. Providing additional controls without cluttering the UI with the additional controls displayed enhances usability of the device, makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces power usage and improves the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0301] In some examples, the first set of affordances includes a fifth affordance (e.g., 1012b) associated with a third physical activity tracking function (e.g., a golf option) that is different from the first physical activity tracking function and the second physical activity tracking function.
[0302] In some examples, an input corresponding to a selection of the third affordance causes a second instance of the first user interface to be displayed (in some examples, the input corresponding to a selection of the third affordance is a terminal input (e.g., the only input) in a set of one or more inputs).
[0303] In some examples, the second instance of the first user interface includes a second affordance.
[0304] In some examples, at 1114, the device receives input (eg, 1031) corresponding to a selection of a second affordance within a second instance of the first user interface.
[0305] In some examples, in response to receiving, at 1116, an input corresponding to a selection of a second affordance in the second example of the first user interface, the device displays a second example of the second user interface (e.g., 1024) that does not include an affordance associated with the second physical activity tracking functionality (e.g., a further workout interface).
[0306] In some examples, at 1118, while displaying the second instance of the first user interface, the device receives a second set of one or more inputs, the second set of one or more inputs including inputs (e.g., 1043) corresponding to a fourth affordance associated with the second physical activity tracking functionality (e.g., an affordance corresponding to an activity tracking functionality previously added to the user interface) (e.g., a set of inputs corresponding to a request to remove the fourth affordance from the first user interface).
[0307] In some examples, in response to receiving the second set of one or more inputs, a third instance of the first user interface (e.g., 1008 as shown in FIG. 10N) is displayed, where the third instance of the first user interface does not include an affordance associated with the second physical activity tracking feature. Allowing a user to quickly and efficiently remove a physical activity tracking feature from the list of physical activity tracking features helps the user avoid unintentionally executing a physical activity tracking feature and, at the same time, provides the user with more control of the device by reducing the number of steps the user must take to reach a desired physical activity tracking feature. Providing additional control without cluttering the UI with displayed additional controls enhances device usability and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and efficiently.
[0308] In some examples, receiving the second set of one or more inputs includes receiving a swipe gesture (e.g., 1043) corresponding to the fourth affordance and a tap gesture (e.g., 1045) corresponding to a delete affordance (e.g., 1044) associated with the fourth affordance (e.g., a delete affordance displayed in response to receiving the swipe gesture).
[0309] It should be noted that the details of the processes described above with respect to method 1100 (e.g., FIGS. 7A-7B) are also applicable in an analogous manner to the methods described above. For example, methods 700, 800, and 900 optionally include one or more of the features of the various methods described above with reference to method 1100. For example, removal of representations as described in methods 700, 800, and 900 can be performed as described in method 1100.
[0310] 12A-12F show exemplary user interfaces for displaying prizes, according to some embodiments. Figure 12A shows electronic device 1000 displaying activity application user interface 1204 via display device 1002. Activity application user interface 1204 includes activity affordance 1206, friend affordance 1208, and prize affordance 1210.
[0311] Each of these affordances, when selected, is configured to cause electronic device 1000 to display a user interface corresponding to the respective affordance. For example, activity affordance 1206 corresponds to a user interface for displaying information related to activities of a user associated with electronic device 1000 (as shown in FIG. 12B). friend affordance 1208 corresponds to a user interface for managing friends of a user associated with electronic device 1000 (e.g., users who send and / or receive (e.g., share) data of the user associated with the electronic device) (as shown in FIG. 12C). award affordance 1210 corresponds to a user interface for displaying awards of a user associated with electronic device 1000 (as shown in FIG. 12D).
[0312] 12A , electronic device 1000 receives user input 1207 corresponding to selection of activity affordance 1206. User input 1207 may include a touch gesture, such as a tap gesture, on activity affordance 1206 and may include a user interface associated with activity affordance 1206 (e.g., activity user interface 1212).
[0313] 12B shows electronic device 1000 displaying activity user interface 1212 via display device 1002. Activity user interface 1212 includes information about the activity of a user associated with electronic device 1000 (e.g., three rings, each representing the amount of a different activity metric completed by the user during the current day).
[0314] 12B, the electronic device 1000 receives a user input 1213 corresponding to a swipe gesture. The user input 1213 may include a touch gesture that causes a user interface for managing friends to be displayed (e.g., a friends user interface 1216 as shown in FIG. 12C).
[0315] 12C shows electronic device 1000 displaying friends user interface 1216 via display device 1002. Friends user interface 1212 includes multiple affordances, each affordance corresponding to a user shared by the user associated with electronic device 1000.
[0316] 12C , the electronic device 1000 receives a user input 1217 corresponding to a swipe gesture. The user input 1217 can include a touch gesture that causes a user interface to display a prize to be displayed (e.g., a prize user interface 1218 as shown in FIG. 12D ). In some examples, the swipe gesture shown in FIG. 12C is determined to be in the same direction as the swipe gesture shown in FIG. 12B . In such examples, if the swipe gesture on the friends user interface 1216 is determined to be in the opposite direction to the swipe gesture shown in FIG. 12B , the swipe gesture causes the activity user interface 1212 to be displayed.
[0317] 12D shows electronic device 1000 displaying prize user interface 1218 via display device 1002. Prize user interface 1212 includes multiple sections (e.g., 1220a-1220d), each including one or more representations of prizes corresponding to the respective section. For example, recent section 1220a includes one or more representations (e.g., representation 1222a) of prizes recently received by the user of electronic device 1000. In another example, March Challenge section 1220b includes one or more representations (e.g., representation 1222b) of prizes associated with the March Challenge.
[0318] The representation of the prize may include one or more visual attributes that indicate that a prize has been awarded to the user of electronic device 1000. For example, representation 1222a may be a first set of one or more colors and representation 1222b may be a second set of one or more colors, where the first set of one or more colors indicates that the prize corresponding to representation 1222a has been awarded to the user and the second set of one or more colors indicates that the prize corresponding to representation 1222b has not been awarded to the user.
[0319] 12D, electronic device 1000 receives user input 1223 corresponding to selection of representation 1222b. User input 1223 may include a touch gesture, such as a tap gesture, on representation 1222b, causing a user interface (e.g., 1224 or 1228) associated with representation 1222b to be displayed.
[0320] 12E shows electronic device 1000 displaying non-winner details user interface 1224 via display device 1002. Non-winner details user interface 1224 corresponds to representation 1222b based on user input 1223 corresponding to selection of representation 1222b. Non-winner details user interface 1224 includes a representation of representation 1222b (e.g., representation 1226). In some implementations, representation 1226 is larger than representation 1222b (not shown). Non-winner details user interface 1224 includes text indicating how a user can win the prize corresponding to representation 1226 ("Earn this prize by exercising 1000 minutes this month").
[0321] 12F shows electronic device 1000 displaying award details user interface 1228 via display device 1002. When a prize is awarded to a user, a representation corresponding to the prize can change. For example, FIG. 12F shows representation 1230 that corresponds to representation 1226, except that the appearance of representation 1230 differs from representation 1226. In some examples, the different appearance corresponds to representation 1226 being a first set of one or more colors and representation 1230 being a second set of one or more colors that differ from the first set of one or more colors, the difference indicating that the prize corresponding to representation 1230 has been awarded and that the prize corresponding to representation 1226 has not been awarded.
[0322] The foregoing has been described with reference to specific embodiments for purposes of explanation. However, the exemplary discussion above is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments have been chosen and described in order to best explain the principles of the present technology and its practical application. This will enable others skilled in the art to best utilize the present technology and various embodiments with various modifications as suited to the particular applications intended.
[0323] Although the present disclosure and examples have been fully described with reference to the accompanying drawings, it should be noted that various changes and modifications will be apparent to those skilled in the art, and such changes and modifications are to be understood as being included within the scope of the present disclosure and examples, as defined by the claims.
[0324] As mentioned above, one aspect of the present technology is to collect and use available data from various sources to improve activity tracking and viewing of activity-related details. This disclosure contemplates that, in some examples, this collected data may include personal information data that uniquely identifies a particular person or that can be used to contact or locate a particular person. Such personal information data may include demographic data, location-based data, phone numbers, email addresses, Twitter IDs, home addresses, data or records regarding a user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), birth date, or any other identifying or personal information.
[0325] The present disclosure recognizes that the use of such personal information data in the present technology can be for the benefit of the user. For example, personal information data can be used to track activities and view details related to the activities. Thus, the use of such personal information data can improve activity tracking and the viewing of details related to the activities. Furthermore, other uses of personal information data that benefit the user are also contemplated by the present disclosure. For example, health and fitness data can be used to provide insight into the user's overall wellness, or can be used as proactive feedback to individuals using the technology in pursuit of wellness goals.
[0326] This disclosure contemplates that entities involved in the collection, analysis, disclosure, transmission, storage, or other use of such personal information data will adhere to robust privacy policies and / or privacy practices. Specifically, such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or government requirements for maintaining the strict confidentiality of personal information data. Such policies should be easily accessible to users and should be updated as data collection and / or use changes. Personal information from users should be collected for the entity's lawful and legitimate use and should not be shared or sold except for those lawful uses. Furthermore, such collection / sharing should be carried out after the user's informed consent is obtained. Furthermore, such entities should consider taking all necessary measures to protect and secure access to such personal information data and to ensure that others with access to that personal information data comply with their privacy policies and procedures. Furthermore, such entities may be able to undergo third-party assessments to demonstrate their adherence to widely accepted privacy policies and practices. Furthermore, policies and practices should be tailored to the specific types of personal data collected and / or accessed and should comply with applicable laws and standards, including jurisdiction-specific considerations. For example, in the United States, the collection of or access to certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA), while health data in other countries may be subject to other regulations and policies and should be addressed accordingly. Therefore, different privacy practices should be maintained in each country with respect to different types of personal data.
[0327] Notwithstanding the foregoing, the present disclosure also contemplates embodiments in which a user selectively blocks use of or access to personal information data. That is, the present disclosure contemplates that hardware and / or software elements may be provided to prevent or block access to such personal information data. For example, in the case of an activity service, the present technology may be configured to allow a user to “opt in” or “opt out” of participating in the collection of personal information data during registration for the service or at any time thereafter. In another example, a user may choose not to provide activity data for a target activity service's offers. In yet another example, a user may choose to limit the length of time activity data is maintained or to completely prohibit the development of trend data. In addition to providing “opt-in” and “opt-out” options, the present disclosure contemplates providing notifications regarding access or use of personal information. For example, a user may be notified upon downloading an app that will access the user's personal information data, and then again immediately before the app accesses the user's personal information data.
[0328] Furthermore, it is the intent of this disclosure that personal information data should be managed and processed in a manner that minimizes the risk of unintentional or unauthorized access or use. Risk can be minimized by limiting data collection and deleting data when it is no longer needed. Furthermore, where applicable, de-identification of data can be used to protect user privacy, including in certain health-related applications. De-identification can be facilitated where appropriate by removing certain identifiers (e.g., date of birth, etc.), controlling the amount or specificity of data stored (e.g., collecting location data at a city level rather than an address level), controlling how data is stored (e.g., aggregating data across users), and / or other methods.
[0329] Thus, while this disclosure broadly encompasses the use of personal information data to implement one or more various disclosed embodiments, this disclosure also contemplates that the various embodiments may be implemented without requiring access to such personal information data. That is, various embodiments of the present technology are not rendered inoperable by the absence of all or a portion of such personal information data. For example, activities may be tracked and details related to the activities may be viewed by inferring preferences based only on a minimal amount of non-personal information or personal information, such as content requested by devices associated with the user, other non-personal information available on activity services, or publicly available information.
Claims
1. 1. A method comprising: In an electronic device including a display device, displaying, via the display device, a first example of a first user interface including a first set of affordances associated with a physical activity tracking functionality, the first set of affordances including a first affordance associated with a first physical activity tracking functionality; receiving user input while displaying the first instance of the first user interface; In response to receiving the user input, activating the first physical activity tracking functionality in accordance with determining that the user input is detected at the first affordance of the first set of affordances; displaying a second user interface including a third affordance associated with a second physical activity tracking functionality in accordance with determining that the user input is detected at a second affordance of the first set of affordances; receiving a set of one or more inputs, the set of one or more inputs including an input corresponding to a selection of the third affordance; displaying a second example of the first user interface in response to receiving the set of one or more inputs; and Including, the second example of the first user interface includes the first affordance and a fourth affordance associated with the second physical activity tracking functionality; The method, wherein the first instance of the first user interface does not include an affordance associated with the second physical activity tracking functionality.
2. 2. The method of claim 1 , wherein the first set of affordances includes a fifth affordance associated with a third physical activity tracking function that is different from the first physical activity tracking function and the second physical activity tracking function.
3. The method of claim 1 or 2, wherein the input corresponding to a selection of the third affordance causes the second instance of the first user interface to be displayed.
4. the second instance of the first user interface includes the second affordance, and the method further comprises: receiving input corresponding to a selection of the second affordance within the second instance of the first user interface; In response to receiving the input corresponding to a selection of the second affordance in the second example of the first user interface, displaying a second example of the second user interface that does not include an affordance associated with the second physical activity tracking functionality. The method of claim 1 , further comprising:
5. receiving a second set of one or more inputs while displaying the second example of the first user interface, the second set of one or more inputs including an input corresponding to the fourth affordance associated with the second physical activity tracking functionality; displaying a third example of the first user interface in response to receiving the second set of one or more inputs, the third example of the first user interface not including an affordance associated with the second physical activity tracking functionality; The method of claim 1 , further comprising:
6. said receiving said second set of one or more inputs further comprising: receiving a swipe gesture corresponding to the fourth affordance; a tap gesture corresponding to a delete affordance associated with the fourth affordance; The method of claim 5 , comprising:
7. A computer program causing an electronic device, including a display device, to carry out the method of any one of claims 1 to 6.
8. a memory for storing the computer program according to claim 7; one or more processors capable of executing the computer programs stored in the memory; Equipped with the electronic device includes a display device; Electronic devices.
9. 7. A method for implementing a method according to any one of claims 1 to 6, Electronic devices.
Citation Information
Patent Citations
Physical Activity and Training Monitor
JP2017532069A
Device for providing workout outcome and method thereof
KR101646158B1
Sharing updatable graphical user interface elements
US20170274267A1