Physical Activity and Training Monitor

A system for monitoring and displaying physical activity attributes addresses the challenge of sedentary lifestyles by encouraging increased physical activity, thereby reducing the risk of chronic health conditions.

JP7689939B2Active Publication Date: 2025-06-09APPLE INC
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2022130087
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2015-03-07
Filing Date
2022-08-17
Publication Date
2025-06-09
Estimated Expiration
2035-08-27

AI Technical Summary

Technical Problem

The increasing prevalence of chronic health conditions in the US population, particularly due to sedentary lifestyles, necessitates effective monitoring and encouragement of physical activity to mitigate associated health risks.

Method used

A system and process for monitoring attributes of a user's physical activity or inactivity, generating a user interface to display these attributes, and providing notifications during training sessions to inform users of important events.

Benefits of technology

The system effectively monitors and displays physical activity attributes, encouraging users to engage in more physical activity, thereby potentially reducing the risk of chronic health conditions and improving overall health outcomes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007689939000001
    Figure 0007689939000001
  • Figure 0007689939000002
    Figure 0007689939000002
  • Figure 0007689939000003
    Figure 0007689939000003
Patent Text Reader

Abstract

A device and process for monitoring attributes of a user's physical activity (e.g., training) or inactivity, providing a user interface (e.g., activity indicator) for displaying attributes of the user's physical activity (e.g., training) or inactivity. [Solution] A device (physical activity tracking interface) determines whether physical activity corresponds to a first type based on a first set of criteria and determines whether physical activity corresponds to a second type based on a second set of criteria. The device controls an inactivity timer that measures a user's inactivity. The device displays a first visual representation of an attribute or amount of the first type of physical activity and a second visual representation of an attribute or amount of the second type of activity. The device displays a third visual representation of an attribute or amount of a third type of activity. The third visual representation corresponds to the user's inactivity.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The following disclosure generally relates to health monitors, and more particularly to physical activity and workout monitors.

[0002] [Cross - Reference to Related Applications] This application claims priority to U.S. Provisional Patent Application No. 62 / 044,990, filed on September 2, 2014, and U.S. Provisional Patent Application No. 62 / 129,828, filed on March 7, 2015, both of which have the invention name "PHYSICAL ACTIVITY AND WORKOUT MONITOR", and the contents of these applications are hereby incorporated by reference in their entirety for all purposes.

Background Art

[0003] Approximately 133 million Americans are currently in at least one chronic health condition. This number is expected to increase to approximately 165 million by 2020. Many of these health deteriorations are likely due to a sedentary lifestyle with little or no physical activity. For example, lack of sufficient physical activity can increase the risk of diabetes, high blood pressure, colon cancer, depression and anxiety, obesity, and the progression of muscle and bone weakness. In addition, recent research has shown that long periods of inactivity (e.g., sitting at a desk) can cause serious health risks such as an increased risk of heart attack.

Summary of the Invention

[0004] The present disclosure relates to a system and process for monitoring attributes of a user's physical activity or inactivity and generating a user interface for displaying the attributes of the user's physical activity or inactivity. An exemplary user interface may include a first indicator of a first type representing an attribute of the user's physical activity and a second indicator of a second type representing an attribute of the user's physical activity. The first type of physical activity may be physical activity that meets a first set of criteria, and the second type of physical activity may be physical activity that meets a second set of criteria. The user interface may further include a third indicator representing an attribute of the user's inactivity, which may include that the user is not performing a particular type of physical activity or is not performing physical activity that meets a third set of criteria.

[0005] The present disclosure also relates to a system and process for monitoring a user's training and generating a user interface for displaying the user's training. An exemplary process may include monitoring the user's physical activity during training (e.g., a session of physical activity or exercise) using an activity sensor selected based on the type of training. The process may further include generating a user interface for displaying one or more attributes of the training. An exemplary user interface may include a first indicator (e.g., a visual representation) representing a first attribute of the training and a second indicator (e.g., a visual representation) representing a second attribute of the training. The process may further include providing a notification during training to notify the user of important events associated with the training.

[0006] In some embodiments, the electronic device includes a sensor configured to detect an operation associated with the electronic device and generate activity data based on the detected operation, a display, and a non-transitory computer-readable storage medium that determines, based on the activity data received from the sensor, that physical activity has been performed by a user wearing the electronic device, determines whether the physical activity corresponds to a first type based on a first set of criteria, and determines whether the physical activity corresponds to a second type based on a second set of criteria, updates a first value stored in the memory based on the activity data in response to determining that the physical activity corresponds to the first type, updates a second value stored in the memory based on the activity data in response to determining that the physical activity corresponds to the second type, displays a first indicator representing the first value, which is the first value representing the total amount of the first type of physical activity detected by the sensor over a period of time, and displays a second indicator representing the second value, which is the second value representing the total amount of the second type of physical activity detected by the sensor over that period of time, and one or more processors operably coupled to the sensor, the non-transitory computer-readable storage medium, and the display, the one or more processors being capable of executing the instructions of the non-transitory computer-readable storage medium.

[0007] In some embodiments, a method performed by a computer uses one or more processors to determine, based on activity data generated by sensors of an electronic device, that physical activity has been performed by a user wearing the electronic device; determine whether the physical activity corresponds to a first type based on a first set of criteria, and determine whether the physical activity corresponds to a second type based on a second set of criteria; update a first value stored in a memory device based on the activity data in response to determining that the physical activity corresponds to the first type; update a second value stored in the memory device in response to determining that the physical activity corresponds to the second type; display a first value representing a total amount of physical activity of the first type detected from the sensors over a period of time, and display a second value representing a total amount of physical activity of the second type detected from the sensors over that period of time.

[0008] In some embodiments, an electronic device includes means for determining, based on activity data generated by sensors of the electronic device, that physical activity has been performed by a user wearing the electronic device; means for determining whether the physical activity corresponds to a first type based on a first set of criteria, and determining whether the physical activity corresponds to a second type based on a second set of criteria; means for updating a first value stored in a memory device based on the activity data in response to determining that the physical activity corresponds to the first type; means for updating a second value stored in the memory device in response to determining that the physical activity corresponds to the second type; means for displaying a first value representing a total amount of physical activity of the first type detected from the sensors over a period of time, and displaying a second value representing a total amount of physical activity of the second type detected from the sensors over that period of time.

[0009] In some embodiments, the electronic device includes a sensor unit configured to detect an operation associated with the electronic device and generate activity data based on the detected operation, a memory unit configured to store values, a display unit configured to display graphic objects, and a processing unit coupled to the sensor unit, the memory unit, and the display unit. The processing unit determines, based on the activity data generated by the sensor unit, whether the physical activity has been performed by a user wearing the electronic device, determines whether the physical activity corresponds to a first type based on a first set of criteria, and determines whether the physical activity corresponds to a second type based on a second set of criteria. In response to determining that the physical activity corresponds to the first type, the processing unit updates a first value stored in the memory unit based on the activity data. In response to determining that the physical activity corresponds to the second type, the processing unit updates a second value stored in the memory unit. The processing unit enables the display on the display unit of a first value representing the total amount of the first type of physical activity detected from the sensor unit over a period of time, and enables the display on the display unit of a second value representing the total amount of the second type of physical activity detected from the sensor unit over that period of time.

[0010] In some embodiments, the electronic device includes one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs use the one or more processors to determine, based on activity data generated by sensors of the electronic device, that physical activity has been performed by a user wearing the electronic device, determine whether the physical activity corresponds to a first type based on a first set of criteria, and determine whether the physical activity corresponds to a second type based on a second set of criteria. In response to determining that the physical activity corresponds to the first type, update a first value stored in a memory device based on the activity data, and in response to determining that the physical activity corresponds to the second type, update a second value stored in the memory device. The one or more programs further include instructions to display a first value representing the total amount of the first type of physical activity detected by the sensors over a period of time, and to display a second value representing the total amount of the second type of physical activity detected by the sensors over that period of time.

[0011] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs that, when executed by one or more processors of an electronic device, cause the device to determine, based on activity data generated by sensors of the electronic device, that physical activity has been performed by a user wearing the electronic device, determine whether the physical activity corresponds to a first type based on a first set of criteria, and determine whether the physical activity corresponds to a second type based on a second set of criteria. In response to determining that the physical activity corresponds to the first type, cause a first value stored in a memory device to be updated based on the activity data, and in response to determining that the physical activity corresponds to the second type, cause a second value stored in the memory device to be updated. The one or more programs further cause the device to display a first value representing the total amount of the first type of physical activity detected by the sensors over a period of time, and to display a second value representing the total amount of the second type of physical activity detected by the sensors over that period of time.

[0012] In some embodiments, the temporary computer-readable storage medium stores one or more programs that, when executed by one or more processors of an electronic device, cause the device to determine, based on activity data generated by a sensor of the electronic device, that physical activity has been performed by a user wearing the electronic device; determine whether the physical activity corresponds to a first type based on a first set of criteria; and determine whether the physical activity corresponds to a second type based on a second set of criteria; update a first value stored in a memory device based on the activity data in response to determining that the physical activity corresponds to the first type; update a second value stored in the memory device in response to determining that the physical activity corresponds to the second type; display a first value representing the total amount of the first type of physical activity detected from the sensor over a period of time; and display a second value representing the total amount of the second type of physical activity detected from the sensor over that period of time.

[0013] In some embodiments, a method executed by a computer includes receiving, from a sensor, activity data representing physical activity performed by a user detected by the sensor; controlling an inactivity timer that measures the length of time the user has been inactive based on the activity data, where controlling the inactivity timer includes resetting the value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity; and displaying an inactivity tracking interface that includes a visual representation of the value of the inactivity timer.

[0014] In some embodiments, the electronic device includes means for receiving, from a sensor, activity data representing physical activity performed by a user detected by the sensor, means for controlling an inactivity timer that measures a length of time during which the user is not active based on the activity data, where controlling the inactivity timer includes resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, and means for displaying an inactivity tracking interface, where the inactivity tracking interface includes a visual representation of the value of the inactivity timer.

[0015] In some embodiments, the electronic device comprises a sensor unit configured to detect an operation associated with the electronic device and generate activity data based on the detected operation, a display unit configured to display a graphic object, and a processing unit coupled to the sensor unit and the display unit, where the processing unit receives, from the sensor unit, activity data representing physical activity performed by a user detected by the sensor unit, controls an inactivity timer that measures a length of time during which the user is not active based on the activity data, where controlling the inactivity timer includes resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, and is configured to enable display of an inactivity tracking interface on the display unit, where the inactivity tracking interface includes a visual representation of the value of the inactivity timer.

[0016] In some embodiments, an electronic device includes one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions to receive, from a sensor, activity data representing physical activity performed by a user detected by the sensor, and based on the activity data, control an inactivity timer that measures a length of time the user has been inactive, including resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, and display an inactivity tracking interface that includes a visual representation of the value of the inactivity timer.

[0017] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs that, when executed by one or more processors of an electronic device, cause the device to receive, from a sensor, activity data representing physical activity performed by a user detected by the sensor, and based on the activity data, control an inactivity timer that measures a length of time the user has been inactive, including resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, and display an inactivity tracking interface that includes a visual representation of the value of the inactivity timer.

[0018] In some embodiments, the temporary computer-readable storage medium stores one or more programs, which, when executed by one or more processors of the electronic device, cause the device to receive, from a sensor, activity data representing physical activity performed by a user detected by the sensor, and based on the activity data, control an inactivity timer that measures a length of time the user has been inactive, including resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, and cause the inactivity timer that measures the length of time the user has been inactive based on the activity data to be controlled and an inactivity tracking interface to be displayed, the inactivity tracking interface including a visual representation of the value of the inactivity timer.

[0019] In some embodiments, a method performed by a computer uses one or more processors to determine, based on activity data generated by sensors of an electronic device, that physical activity has been performed by a user wearing the electronic device, determine whether the physical activity corresponds to a first type based on a first set of criteria, and determine whether the physical activity corresponds to a second type based on a second set of criteria, update a first value stored in a memory device based on the activity data in response to determining that the physical activity corresponds to the first type, update a second value stored in the memory device based on the activity data in response to determining that the physical activity corresponds to the second type, and control an inactivity timer that measures a length of time the user is inactive based on the activity data, wherein controlling the inactivity timer includes resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, incrementing a value of an inactivity counter in response to a value of the inactivity timer reaching an inactivity threshold, and resetting the value of the inactivity timer in response to the value of the inactivity timer reaching the inactivity threshold, and displaying a first indicator representing the first value, which represents a total amount of physical activity of the first type detected from the sensors over a period of time, a second indicator representing the second value, which represents a total amount of physical activity of the second type detected from the sensors over that period of time, and a third indicator representing a value of the inactivity counter.

[0020] In some embodiments, the electronic device uses one or more processors to determine, based on activity data generated by sensors of the electronic device, that physical activity has been performed by a user wearing the electronic device; determine whether the physical activity corresponds to a first type based on a first set of criteria, and determine whether the physical activity corresponds to a second type based on a second set of criteria; update, based on the activity data, a first value stored in a memory device in response to determining that the physical activity corresponds to the first type; update, based on the activity data, a second value stored in the memory device in response to determining that the physical activity corresponds to the second type; control an inactivity timer that measures a length of time the user has been inactive based on the activity data, wherein controlling the inactivity timer includes resetting the value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity; incrementing the value of an inactivity counter in response to the value of the inactivity timer reaching an inactivity threshold; and resetting the value of the inactivity timer in response to the value of the inactivity timer reaching the inactivity threshold; and display a first indicator representing a first value that represents a total amount of physical activity of the first type detected from the sensors over a period of time, a second indicator representing a second value that represents a total amount of physical activity of the second type detected from the sensors over that period of time, and a third indicator representing the value of the inactivity counter.

[0021] In some embodiments, an electronic device includes a sensor unit configured to detect an operation associated with the electronic device and generate activity data based on the detected operation, a memory unit configured to store values, a display unit configured to display graphic objects, and a processing unit coupled to the sensor unit, the memory unit, and the display unit. The processing unit determines, based on the activity data generated by the sensor unit, whether a physical activity has been performed by a user wearing the electronic device, determines whether the physical activity corresponds to a first type based on a first set of criteria, and determines whether the physical activity corresponds to a second type based on a second set of criteria. In response to determining that the physical activity corresponds to the first type, the processing unit updates a first value stored in the memory unit based on the activity data. In response to determining that the physical activity corresponds to the second type, the processing unit updates a second value stored in the memory unit based on the activity data. Controlling an inactivity timer includes resetting a value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, incrementing a value of an inactivity counter in response to a value of the inactivity timer reaching an inactivity threshold, and resetting the value of the inactivity timer in response to the value of the inactivity timer reaching the inactivity threshold. Based on the activity data, the processing unit controls the inactivity timer to measure a length of time during which the user has been inactive, and enables the display on the display unit of a first indicator representing a first value that represents a total amount of the first type of physical activity detected from the sensor over a period of time, a second indicator representing a second value that represents a total amount of the second type of physical activity detected from the sensor over that period of time, and a third indicator representing a value of the inactivity counter.

[0022] In some embodiments, the electronic device includes one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs are configured to determine, based on activity data generated by sensors of the electronic device, that physical activity has been performed by a user wearing the electronic device, determine whether the physical activity corresponds to a first type based on a first set of criteria, and determine whether the physical activity corresponds to a second type based on a second set of criteria. In response to determining that the physical activity corresponds to the first type, update a first value stored in a memory device based on the activity data. In response to determining that the physical activity corresponds to the second type, update a second value stored in the memory device based on the activity data. Controlling an inactivity timer includes resetting the value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity, incrementing the value of an inactivity counter in response to the value of the inactivity timer reaching an inactivity threshold, and resetting the value of the inactivity timer in response to the value of the inactivity timer reaching the inactivity threshold. Based on the activity data, control an inactivity timer that measures the length of time the user has been inactive, and include instructions to display a first indicator representing the first value, which represents the total amount of physical activity of the first type detected from the sensors over a period of time, a second indicator representing the second value, which represents the total amount of physical activity of the second type detected from the sensors over that period of time, and a third indicator representing the value of the inactivity counter.

[0023] In some embodiments, the non-transitory computer-readable storage medium stores one or more programs, and when the one or more programs are executed by one or more processors of the electronic device, the device is caused to determine, based on activity data generated by a sensor of the electronic device, that physical activity has been performed by a user wearing the electronic device; determine whether the physical activity corresponds to a first type based on a first set of criteria; and determine whether the physical activity corresponds to a second type based on a second set of criteria; update, based on the activity data, a first value stored in the memory device in response to determining that the physical activity corresponds to the first type; update, based on the activity data, a second value stored in the memory device in response to determining that the physical activity corresponds to the second type; control an inactivity timer that measures the length of time the user has been inactive based on the activity data, including resetting the value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity; incrementing the value of an inactivity counter in response to the value of the inactivity timer reaching an inactivity threshold; and resetting the value of the inactivity timer in response to the value of the inactivity timer reaching the inactivity threshold; and include instructions to display a first indicator representing a first value that represents the total amount of physical activity of the first type detected from the sensor over a period of time, a second indicator representing a second value that represents the total amount of physical activity of the second type detected from the sensor over that period of time, and a third indicator representing the value of the inactivity counter.

[0024] In some embodiments, the temporary computer-readable storage medium stores one or more programs that, when executed by one or more processors of an electronic device, cause the device to determine, based on activity data generated by a sensor of the electronic device, that physical activity has been performed by a user wearing the electronic device; determine whether the physical activity corresponds to a first type based on a first set of criteria; and determine whether the physical activity corresponds to a second type based on a second set of criteria; update a first value stored in a memory device based on the activity data in response to determining that the physical activity corresponds to the first type; update a second value stored in the memory device based on the activity data in response to determining that the physical activity corresponds to the second type; control an inactivity timer that measures a length of time during which the user is not active based on the activity data, including resetting the value of the inactivity timer in response to determining, based on the activity data, that the user has performed a threshold amount of activity; incrementing the value of an inactivity counter in response to the value of the inactivity timer reaching an inactivity threshold; and resetting the value of the inactivity timer in response to the value of the inactivity timer reaching the inactivity threshold; and cause to be displayed a first indicator representing the first value, which is the total amount of the first type of physical activity detected from the sensor over a period of time; a second indicator representing the second value, which is the total amount of the second type of physical activity detected from the sensor over that period of time; and a third indicator representing the value of the inactivity counter.

[0025] In some embodiments, a method executed by a computer includes, at one or more processors of an electronic device, displaying activity indicators, the activity indicators including a first indicator representing a total amount of a first type of physical activity performed by a user over a period of time, a second indicator representing a total amount of a second type of physical activity performed by the user over a period of time, and a third indicator representing a total amount of a third type of physical activity performed by the user over a period of time, receiving, from sensors of the electronic device, activity data representing actions associated with the electronic device, and updating the total amount of the first type of physical activity, the total amount of the second type of physical activity, and the total amount of the third type of physical activity based on the activity data.

[0026] In some embodiments, a system includes means for displaying activity indicators, the activity indicators including a first indicator representing a total amount of a first type of physical activity performed by a user over a period of time, a second indicator representing a total amount of a second type of physical activity performed by the user over a period of time, and a third indicator representing a total amount of a third type of physical activity performed by the user over a period of time, means for receiving, from sensors of the electronic device, activity data representing actions associated with the electronic device, and means for updating the total amount of the first type of physical activity, the total amount of the second type of physical activity, and the total amount of the third type of physical activity based on the activity data.

[0027] In some embodiments, the electronic device includes a sensor unit configured to detect operations associated with the electronic device and generate activity data based on the detected operations, a display unit configured to display graphic objects, and a processing unit coupled to the sensor unit and the display unit. The processing unit enables the display of an activity indicator on the display unit, the activity indicator including a first indicator representing the total amount of a first type of physical activity performed by the user over a period of time, a second indicator representing the total amount of a second type of physical activity performed by the user over a period of time, and a third indicator representing the total amount of a third type of physical activity performed by the user over a period of time. The processing unit receives activity data representing operations associated with the electronic device from the sensor unit and is configured to update the total amount of the first type of physical activity, the total amount of the second type of physical activity, and the total amount of the third type of physical activity based on the activity data.

[0028] In some embodiments, the electronic device includes one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions to display an activity indicator including a first indicator representing the total amount of a first type of physical activity performed by the user over a period of time, a second indicator representing the total amount of a second type of physical activity performed by the user over a period of time, and a third indicator representing the total amount of a third type of physical activity performed by the user over a period of time, receive activity data representing operations associated with the electronic device from a sensor of the electronic device, and update the total amount of the first type of physical activity, the total amount of the second type of physical activity, and the total amount of the third type of physical activity based on the activity data.

[0029] In some embodiments, the non-transitory computer-readable storage medium stores one or more programs, which, when executed by one or more processors of an electronic device, cause the device to display an activity indicator including a first indicator representing the total amount of a first type of physical activity performed by a user over a period of time, a second indicator representing the total amount of a second type of physical activity performed by the user over a period of time, and a third indicator representing the total amount of a third type of physical activity performed by the user over a period of time, receive activity data representing an action associated with the electronic device from a sensor of the electronic device, and update the total amount of the first type of physical activity, the total amount of the second type of physical activity, and the total amount of the third type of physical activity based on the activity data.

[0030] In some embodiments, the transitory computer-readable storage medium stores one or more programs, which, when executed by one or more processors of an electronic device, cause the device to display an activity indicator including a first indicator representing the total amount of a first type of physical activity performed by a user over a period of time, a second indicator representing the total amount of a second type of physical activity performed by the user over a period of time, and a third indicator representing the total amount of a third type of physical activity performed by the user over a period of time, receive activity data representing an action associated with the electronic device from a sensor of the electronic device, and update the total amount of the first type of physical activity, the total amount of the second type of physical activity, and the total amount of the third type of physical activity based on the activity data.

[0031] In some embodiments, an electronic device includes one or more activity sensors configured to detect an operation associated with the electronic device and generate activity data based on the detected operation, a display, and a non-transitory computer-readable storage medium that receives an identification of a type of training being performed, the type of training being associated with a plurality of training attributes, and receives a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute, determines a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from at least a portion of the one or more activity sensors, and includes instructions to display a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute and a second indicator representing the current value of the second training attribute. The electronic device further includes one or more processors operably coupled to the one or more activity sensors, the non-transitory computer-readable storage medium, and the display, and the one or more processors are capable of executing the instructions of the non-transitory computer-readable storage medium.

[0032] In some embodiments, a method executed by a computer includes receiving an identification of a type of training being performed, the type of training being associated with a plurality of training attributes, receiving a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute, determining a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from one or more activity sensors, displaying a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute, and displaying a second indicator representing the current value of the second training attribute.

[0033] In some embodiments, the electronic device includes means for receiving an identification of a type of training being performed, the type of training being associated with a plurality of training attributes; means for receiving a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute; means for determining a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from one or more activity sensors; means for displaying a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute; and means for displaying a second indicator representing the current value of the second training attribute.

[0034] In some embodiments, the electronic device comprises one or more activity sensor units configured to detect activity and generate activity data based on the detected activity, a display unit configured to display a graphic object, and a processing unit coupled to the one or more sensor units and the display unit. The processing unit is configured to receive an identification of a type of training being performed, the type of training being associated with a plurality of training attributes; receive a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute; determine a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from the one or more activity sensor units; enable the display on the display unit of a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute; and enable the display on the display unit of a second indicator representing the current value of the second training attribute.

[0035] In some embodiments, an electronic device includes one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs are configured to receive an identification of a type of training being performed, the type of training being associated with a plurality of training attributes, receive a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute, determine a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from one or more activity sensors, display a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute, and display a second indicator representing the current value of the second training attribute.

[0036] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs that, when executed by one or more processors of an electronic device, cause the device to receive an identification of a type of training being performed, the type of training being associated with a plurality of training attributes, receive a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute, determine a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from one or more activity sensors, display a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute, and display a second indicator representing the current value of the second training attribute.

[0037] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs, which, when executed by one or more processors of an electronic device, cause the device to receive an identification of a type of training being performed, the type of training being associated with a plurality of training attributes; receive a goal for the type of training, the goal including an identification of a first training attribute of the plurality of training attributes and a goal value for the first training attribute; determine a current value of the first training attribute and a current value of a second training attribute of the plurality of training attributes based on activity data from one or more activity sensors; display a first indicator representing the current value of the first training attribute relative to the goal value for the first training attribute; and display a second indicator representing the current value of the second training attribute.

[0038] In some embodiments, a method executed by a computer includes receiving, by one or more processors of an electronic device, historical activity data representing physical activity performed by a user, and displaying an aggregated view of the historical activity data, the aggregated view including activity indicators including a first indicator representing a total amount of a first type of physical activity performed by the user during a period, a second indicator representing a total amount of a second type of physical activity performed by the user during the period, and a third indicator representing a total amount of a third type of physical activity performed by the user during the period, and one or more sections associated with the first type of physical activity, the second type of physical activity, or the third type of physical activity.

[0039] In some embodiments, the electronic device includes means for receiving historical activity data representing physical activity performed by a user, and means for displaying an aggregated view of the historical activity data, the aggregated view including an activity indicator including a first indicator representing the total amount of a first type of physical activity performed by the user during a period, a second indicator representing the total amount of a second type of physical activity performed by the user during that period, and a third indicator representing the total amount of a third type of physical activity performed by the user during that period, and one or more sections associated with the first type of physical activity, the second type of physical activity, or the third type of physical activity.

[0040] In some embodiments, the electronic device comprises a display unit configured to display a graphic object, and a processing unit coupled to the display unit, the processing unit receiving historical activity data representing physical activity performed by the user and configured to enable the display of an aggregated view of the historical activity data on the display unit, the aggregated view including an activity indicator including a first indicator representing the total amount of a first type of physical activity performed by the user during a period, a second indicator representing the total amount of a second type of physical activity performed by the user during that period, and a third indicator representing the total amount of a third type of physical activity performed by the user during that period, and one or more sections associated with the first type of physical activity, the second type of physical activity, or the third type of physical activity.

[0041] In some embodiments, an electronic device includes one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions to receive historical activity data representing physical activities performed by a user and to display an aggregated view of the historical activity data. The aggregated view includes an activity indicator that includes a first indicator representing the total amount of a first type of physical activity performed by the user during a period, a second indicator representing the total amount of a second type of physical activity performed by the user during that period, and a third indicator representing the total amount of a third type of physical activity performed by the user during that period, and one or more sections associated with the first type of physical activity, the second type of physical activity, or the third type of physical activity.

[0042] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs that, when executed by one or more processors of an electronic device, cause the device to receive historical activity data representing physical activities performed by a user and to display an aggregated view of the historical activity data. The aggregated view includes an activity indicator that includes a first indicator representing the total amount of a first type of physical activity performed by the user during a period, a second indicator representing the total amount of a second type of physical activity performed by the user during that period, and a third indicator representing the total amount of a third type of physical activity performed by the user during that period, and one or more sections associated with the first type of physical activity, the second type of physical activity, or the third type of physical activity.

[0043] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs, which, when executed by one or more processors of an electronic device, cause the device to receive historical activity data representing physical activities performed by a user and display an aggregated view of the historical activity data, the aggregated view including an activity indicator that includes a first indicator representing a total amount of a first type of physical activity performed by the user during a period, a second indicator representing a total amount of a second type of physical activity performed by the user during the period, and a third indicator representing a total amount of a third type of physical activity performed by the user during the period, and one or more sections associated with the first type of physical activity, the second type of physical activity, or the third type of physical activity.

[0044] The executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors. The executable instructions for performing these functions are optionally included in a transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.

Brief Description of the Drawings

[0045] For a better understanding of the various embodiments described, reference is made to the following "Description of Embodiments" in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout the figures.

[0046]

Figure 1A

[0047]

Figure 1B

[0048]

Figure 2

[0049]

Figure 3

[0050]

Figure 4A

Figure 4B

[0051]

Figure 5A

[0052]

Figure 5B

[0053]

Figure 5C

Figure 5D

[0054]

Figure 5E

Figure 5F

Figure 5G

Figure 5H

[0055]

Figure 6

[0056]

Figure 7

[0057]

Figure 8

[0058]

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

[0059]

Figure 15

[0060]

Figure 16

[0061]

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

[0062]

Figure 22

[0063]

Figure 23

[0064]

Figure 24

[0065]

Figure 25

Figure 26

Figure 27

Figure 28

Figure 29

Figure 30

Figure 31

Figure 32

Figure 33

Figure 34

Figure 35

Figure 36

Figure 37

Figure 38

Figure 39

[0066]

Figure 40

[0067]

Figure 41

[0068]

Figure 42

Figure 43

Figure 44

Figure 45

Figure 46

Figure 47

[0069]

Figure 48

[0070]

Figure 49

[0071]

Figure 50

[0072]

Figure 51

Figure 52

Figure 53

Figure 54

Figure 55

[0073]

Figure 56

Figure 57

Figure 58

Figure 59

[0074]

Figure 60

Figure 61

Figure 62

Figure 63

Figure 64

Figure 65

[0075]

Figure 66

Figure 67

Figure 68

Figure 69

[0076]

Figure 70

Figure 71

[0077]

Figure 72

[0078]

Figure 73

Figure 74

Figure 75

[0079]

Figure 76

[0080]

Figure 77

[0081]

Figure 78

[0082]

Figure 79

[0083]

Figure 80

Figure 81

Figure 82

Figure 83

Figure 84

Figure 85

[0084]

Figure 86

[0085]

Figure 87

Figure 88

[0086]

Figure 89

[0087]

Figure 90

Figure 91

[0088]

Figure 92

[0089]

Figure 93

Figure 94

[0090]

Figure 95

[0091]

Figure 96

[0092]

Figure 97

Figure 98

Figure 99

Figure 100

Figure 101

Figure 102

DETAILED DESCRIPTION OF THE INVENTION

[0093] In the following description, exemplary methods, parameters, etc. are described. However, it should be understood that the purpose of such description is not to limit the scope of the present disclosure, but to provide an explanation of exemplary embodiments.

[0094] The present disclosure relates to a device for monitoring a user's physical activity or inactivity and generating a user interface for displaying the user's physical activity or inactivity. The device may monitor various attributes of the user's physical activity and may generate a user interface for displaying some or all of the monitored attributes. An exemplary user interface may include a first indicator (e.g., a visual representation) of a first type that represents one or more attributes of the user's physical activity and a second indicator (e.g., a visual representation) of a second type that represents one or more attributes of the user's physical activity. The first type of physical activity may be physical activity that meets a first set of criteria, and the second type of physical activity may be physical activity that meets a second set of criteria. In some embodiments, the second set of criteria may include the first set of criteria, and the second type of physical activity may be a subset of the first type of physical activity. The user interface may further include a third indicator (e.g., a visual representation) that represents one or more attributes of the user's inactivity, which may include that the user is not performing a particular type of physical activity or that the user is not performing physical activity that meets a third set of criteria.

[0095] The present disclosure also relates to a device for monitoring a user's training and generating a user interface for displaying the user's training. The device may monitor the user's physical activity during training (e.g., a session of physical activity or exercise) using an activity sensor selected based on the type of training. The device may further generate a user interface for displaying one or more attributes of the training. An exemplary user interface may include a first indicator (e.g., a visual representation) that represents a first attribute of the training and a second indicator (e.g., a visual representation) that represents a second attribute of the training. The device may further provide notifications during training to notify the user of important events associated with the training. Electronic device

[0096] Figures 1A - 1B, 2, 3, 4A - 4B, and 5A - 5B provide an illustration of an exemplary device for monitoring a user's physical activity. Figures 8 - 14, 17 - 21, 23, 25 - 39, 41 - 47, 49 - 78, 80 - 85, 87 - 88, 90 - 91, and 93 - 95 show exemplary user interfaces that may be displayed on these exemplary devices. The user interfaces in the figures are also used to illustrate the processes described below, including the processes in Figures 15, 16, 22, 24, 40, 48, 79, 86, 89, and 92.

[0097] In the following description, terms such as "first", "second", etc. are used to describe various elements, but these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of the various embodiments described, the first touch may be referred to as the second touch, and similarly, the second touch may be referred to as the first touch. The first touch and the second touch are both touches, but they are not the same touch.

[0098] The terminology used in the description of the various embodiments described herein is for the purpose of describing particular embodiments only and is not intended to be limiting. When used in the description of the various embodiments described and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the term "and / or" is to be understood to mean any and all possible combinations of one or more of the associated listed items, and to include the same. Further, the terms "includes", "including", "comprises", and / or "comprising", when used herein, specify the presence of the stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0099] The term "if (in the case of ~)" is optionally interpreted, depending on the context, to mean "when (at the time of ~)", "upon (~ing)", "in response to determining (in response to determining that ~)", or "in response to detecting (in response to detecting ~)". Similarly, the phrase "if it is determined (if ~ is determined)" or "if (a stated condition or event) is detected (if (the stated condition or event) is detected)" is optionally interpreted, depending on the context, to mean "upon determining (upon determining that ~)", or "in response to determining (in response to determining that ~)", or "upon detecting (the stated condition or event) (upon detecting (the stated condition or event))", or "in response to detecting (the stated condition or event) (in response to detecting (the stated condition or event))".

[0100] Embodiments of an electronic device, a user interface for such a device, and related processes for using such a device 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 functionality and / or music playback functionality. Exemplary embodiments of portable multifunctional devices include, without limitation, the iPhone®, iPod Touch®, and iPad® devices of Apple Inc. of Cupertino, California. Other portable electronic devices such as laptop or tablet computers with a touch-sensitive surface (e.g., a touch screen display and / or a touch pad) can also optionally be used. Also, in some embodiments, it should be understood that the device is not a portable communication device but a desktop computer with a touch-sensitive surface (e.g., a touch screen display and / or a touch pad).

[0101] In the following discussion, an electronic device with a display and a touch-sensitive surface is described. However, it should be understood that the electronic device can optionally include one or more other physical user interface devices such as a physical keyboard, a mouse, and / or a joystick.

[0102] The device generally supports various applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disk authoring application, a spreadsheet application, a game application, a phone application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music playback application, and / or a digital video playback application.

[0103] The various applications executed on this device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface, as well as the corresponding information displayed on the device, are optionally adjusted and / or changed from one application to the next and / or within the corresponding applications. In this way, the common (such as touch-sensitive surface) physical architecture of the device optionally supports various applications having a user interface that is intuitive and transparent to the user.

[0104] Attention is now directed to an embodiment of a portable device having a touch-sensing display. FIG. 1A is a block diagram showing a portable multifunctional device 100 having a touch-sensing display system 112 according to some embodiments. The touch-sensing display 112 is sometimes referred to as a "touch screen" for convenience and may also be known or referred to as a "touch-sensing display system". Device 100 includes a memory 102 (optionally including one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral device interface 118, an RF circuit 108, an audio circuit 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and an external port 124. Device 100 optionally includes one or more light sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on the device 100 (e.g., on a touch-sensing surface such as the touch-sensing display system 112 of device 100). Device 100 optionally includes one or more haptic output generators 167 for generating haptic output on the device 100 (e.g., generating haptic output on a touch-sensing surface such as the touch-sensing display system 112 of device 100 or the touch pad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0105] As used in this specification and the claims, the term "intensity" of a contact on a touch sensing surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch sensing surface, or an alternative (substitute) for the force or pressure of a contact on the touch sensing surface. The intensity of a contact has a range of values that includes at least four different values, and more typically includes hundreds or more different values (e.g., at least 256). The intensity of a contact is optionally determined (or measured) using a variety of methods and a variety of sensors, or combinations of sensors. For example, one or more sensors disposed under or adjacent to the touch sensing surface are optionally used to measure the force at various points on the touch sensing surface. In some implementations, the force measurements of multiple force sensors are combined (e.g., weighted average) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch sensing surface. As another method, the size and / or change thereof of the contact area detected on the touch sensing surface, the capacitance and / or change thereof of the touch sensing surface proximate to the contact, and / or the resistance and / or change thereof of the touch sensing surface proximate to the contact are optionally used as a substitute for the force or pressure of a contact on the touch sensing surface. In some implementations, the alternative measurements of the force or pressure of a contact are used directly to determine whether the intensity threshold is exceeded (e.g., the intensity threshold is described in units corresponding to the alternative measurements). In some implementations, the alternative measurements of the force or pressure of a contact are converted to an estimated force or pressure, and this estimated force or pressure is used to determine whether the intensity threshold is exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of a contact as an attribute of user input enables user access to additional device functions that may otherwise be inaccessible to the user in a device of reduced size with a limited area for displaying affordances (e.g., on a touch sensing display) and / or receiving user input (e.g., via a touch sensing display, a touch sensing surface, or a physical / mechanical control such as a knob or button).

[0106] As used in this specification and the claims, the term "haptic output" refers to a physical displacement of a device relative to its previous position, a physical displacement of a component of the device (e.g., a touch-sensing surface) relative to another component of the device (e.g., the housing), or a displacement of a component relative to the center of mass of the device that is to be detected by a user's sense of touch. For example, in a situation where a device or a component of the device is in contact with a surface of a user that is sensitive to touch (e.g., a finger, palm, or other part of the user's hand), the haptic output generated by the physical displacement corresponds to a tactile sensation that is interpreted by the user as a perceived change in the physical characteristics of the device or the component of the device. For example, movement of a touch-sensing surface (e.g., a touch-sensing display or a trackpad) is optionally interpreted by the user as a "down click" or an "up click" of a physical actuator button. In some cases, even when there is no movement of a physical actuator button associated with a touch-sensing surface that has been physically pushed (e.g., displaced) by the movement of the user, the user feels a tactile sensation such as a "down click" or an "up click". As another example, movement of a touch-sensing surface is optionally interpreted or felt by the user as "roughness" of the touch-sensing surface, even when there is no change in the smoothness of the touch-sensing surface. Such interpretation of touch by the user depends on the individual sensory perception of the user, but there are many sensory perceptions of touch that are common to most users. Thus, when a haptic output is described as corresponding to a particular sensory perception of the user (e.g., "up click", "down click", "roughness"), unless otherwise stated, the generated haptic output corresponds to a physical displacement of a device, or a component of the device, that produces the described sensory perception of a typical (or average) user.

[0107] Device 100 is merely an example of a portable multifunctional device, and it should be understood that device 100 may optionally have more or fewer components than those shown, optionally combine two or more components, or optionally have different configurations or arrangements of components. The various components shown in FIG. 1A are implemented in the form of hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.

[0108] Memory 102 optionally includes one or more computer-readable storage media. The computer-readable storage media are optionally tangible and non-transitory. The computer-readable storage media are optionally transitory. Memory 102 optionally includes high-speed random access memory and also optionally includes non-volatile memory such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile semiconductor memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.

[0109] The input and output peripheral devices of this device can be connected to CPU 120 and memory 102 using peripheral device interface 118. One or more processors 120 run or execute various software programs and / or instruction sets stored in memory 102 to perform various functions for device 100 and to process data. In some embodiments, peripheral device 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.

[0110] The RF (radio frequency) circuit 108 transmits and receives RF signals, also called electromagnetic signals. The RF circuit 108 converts electrical signals into electromagnetic signals or vice versa and communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 108 optionally includes well-known circuits for performing the above 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. The RF circuit 108 optionally communicates wirelessly with networks such as the Internet, also called the World Wide Web (WWW), intranets such as cellular telephone networks, and / or wireless networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and other devices. The RF circuit 108 optionally includes well-known circuits for detecting near-field communication (NFC) fields, such as short-range communication wireless. Wireless communication optionally uses any of a plurality of communication standards, communication protocols, and communication technologies, including Global System for Mobile Communications (GSM (registered trademark)) for mobile communication, Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), near field communication (NFC), wideband code division multiple access (W-CDMA), code divisionmultiple access, CDMA), time division multiple access (TDMA), Bluetooth (registered trademark), Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (registered trademark) (for example, 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 (for example, Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (for example, extensible messaging and presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communication protocol including communication protocols not yet developed as of the filing date of this document, but not limited thereto.

[0111] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between the user and the device 100. The audio circuit 110 receives audio data from the peripheral interface 118, converts the audio data into an electrical signal, and transmits the electrical signal to the speaker 111. The speaker 111 converts the electrical signal into human audible sound waves. The audio circuit 110 also receives the electrical signal converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signal into audio data and transmits the audio data to the peripheral interface 118 for processing. The audio data is optionally fetched from and / or transmitted to the memory 102 and / or the RF circuit 108 by the peripheral interface 118. In some embodiments, the audio circuit 110 further includes a headset jack (e.g., 212 in FIG. 2). The headset jack provides an interface between the audio circuit 110 and a removable audio input / output peripheral device such as an output-only headset or a headset having both an output (e.g., headphones for one or both ears) and an input (e.g., a microphone).

[0112] The I / O subsystem 106 couples the input / output peripheral devices of the device 100, such as the touch screen 112 and other input control devices 116, to the peripheral device interface 118. The I / O subsystem 106 optionally includes a display controller 156, a light sensor controller 158, an intensity sensor controller 159, a haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive / transmit electrical signals from / to the other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and the like. In some alternative embodiments, the input controller(s) 160 are optionally coupled to (or not coupled to) any of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. One or more buttons (e.g., 208 in FIG. 2) optionally include up / down buttons for adjusting the volume of the speaker 111 and / or the microphone 113. One or more buttons optionally include push buttons (e.g., 206 in FIG. 2).

[0113] As described in U.S. Patent Application No. 11 / 322,549, entitled "Unlocking a Device by Performing Gestures on an Unlock Image," filed on December 23, 2005, and issued as U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety, a quick press of a push button (e.g., 206) optionally unlocks the touch screen 112 or, optionally, initiates a process of unlocking the device using gestures on the touch screen. A longer press of the push button (e.g., 206) optionally powers on or powers off the device 100. The functionality of one or more buttons is optionally customizable by the user. The touch screen 112 is used to implement virtual or soft buttons and one or more soft keyboards.

[0114] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives and / or transmits electrical signals to / from the touch screen 112. The touch screen 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively referred to as "graphics"). In some embodiments, optionally, some or all of these visual outputs correspond to user interface objects.

[0115] The touch screen 112 has a touch sensing surface, sensor, or set of sensors that receives input from a user based on tactile and / or haptic contact. The touch screen 112 and the display controller 156 (along with any associated modules and / or instruction sets within the memory 102) detect contact (and any movement or interruption of the contact) on the touch screen 112 and convert the detected contact into an interaction with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch screen 112. In one exemplary embodiment, the contact between the touch screen 112 and the user corresponds to the user's finger.

[0116] The touch screen 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although in other embodiments other display technologies are used. The touch screen 112 and the display controller 156 use any of a plurality of currently known or later developed touch sensing technologies, including but not limited to capacitive technology, resistive technology, infrared technology, and surface acoustic wave technology, and other proximity sensor arrays or other elements for determining one or more points of contact with the touch screen 112 to optionally detect contact and any movement or interruption thereof. In one exemplary embodiment, projected mutual capacitive sensing technology such as that found in the iPhone (registered trademark) and iPod Touch (registered trademark) from Apple Inc. of Cupertino, California is used.

[0117] The touch-sensitive displays in some embodiments of touch screen 112 are optionally similar to the multi-touch sensitive touch pads described in the following U.S. Patents: U.S. Patent No. 6,323,846 (Westerman et al.), U.S. Patent No. 6,570,557 (Westerman et al.), and / or U.S. Patent No. 6,677,932 (Westerman), and / or U.S. Patent Publication No. 2002 / 0015024A1. Each of these documents is hereby incorporated by reference in its entirety. However, while touch screen 112 displays visual output from device 100, the touch-sensitive touch pad does not provide visual output.

[0118] Touch sensing displays in some embodiments of the touch screen 112 are described in the following applications. (1) U.S. Patent Application No. 11 / 381,313, "Multipoint Touch Surface Controller", filed May 2, 2006, (2) U.S. Patent Application No. 10 / 840,862, "Multipoint Touchscreen", filed May 6, 2004, (3) U.S. Patent Application No. 10 / 903,964, "Gestures For Touch Sensitive Input Devices", filed Jul. 30, 2004, (4) U.S. Patent Application No. 11 / 048,264, "Gestures For Touch Sensitive Input Devices", filed Jan. 31, 2005, (5) U.S. Patent Application No. 11 / 038,590, "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices", filed Jan. 18, 2005, (6) U.S. Patent Application No. 11 / 228,758, "Virtual Input Device Placement On A Touch Screen User Interface", filed Sep. 16, 2005, (7) U.S. Patent Application No. 11 / 228,700, "Operation Of A Computer With A Touch Screen Interface", filed Sep. 16, 2005, (8) U.S. Patent Application No. 11 / 228,737, "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard", filed Sep. 16, 2005, and (9) U.S. Patent Publication No. 11 / 367,749, "Multi-Functional Hand-Held Device", filed Mar. 3, 2006. All of these applications are hereby incorporated by reference in their entirety.

[0119] The touch screen 112 optionally has a video resolution exceeding 100 dpi. In some embodiments, the touch screen has a video resolution of about 160 dpi. The user optionally contacts the touch screen 112 using any suitable object or accessory such as a stylus, finger, etc. In some embodiments, the user interface is designed to function primarily based on finger-based contact and gestures, and due to the large contact area of the finger on the touch screen, it may be less accurate than stylus-based input. In some embodiments, the device converts input based on a thick finger into an accurate pointer / cursor position or a command to perform the user-desired action.

[0120] In some embodiments, in addition to the touch screen, the device 100 optionally includes a touch pad (not shown) for activating or deactivating certain functions. In some embodiments, unlike the touch screen, the touch pad is a touch-sensitive area of the device that does not display a visual output. The touch pad is optionally a separate touch-sensitive surface from the touch screen 112 or an extension of the touch-sensitive surface formed by the touch screen.

[0121] The device 100 also includes a power system 162 for powering various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharge system, a power outage detection circuit, a power converter or inverter, a power status indicator (e.g., light-emitting diode (LED)), and any other components associated with the generation, management, and distribution of power within a portable device.

[0122] Device 100 also optionally includes one or more optical sensors 164. FIG. 1A shows an optical sensor coupled to an optical sensor controller 158 within I / O subsystem 106. Optical sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Optical sensor 164 receives light from the environment projected through one or more lenses and converts that light into data representing an image. In connection with imaging module 143 (also referred to as a camera module), optical sensor 164 optionally captures a still image or video. In some embodiments, the optical sensor is disposed on the back of device 100, which is opposite touch screen display 112 on the front of the device, such that the touch screen display is enabled as a viewfinder for obtaining still images and / or video. In some embodiments, the optical sensor is disposed on the front of the device such that a user's image is optionally obtained for a video conference while the user is viewing other video conference participants on the touch screen display. In some embodiments, the position of optical sensor 164 can be changed by the user (e.g., by rotating lenses and sensors within the device housing), thereby enabling a single optical sensor 164 to be used for both video conferencing and for obtaining still images and / or video images with the touch screen display.

[0123] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to an intensity sensor controller 159 within I / O subsystem 106. The contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electro-force sensors, piezoelectric force sensors, optical force sensors, capacitive touch sensing surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of contact on a touch sensing surface). The contact intensity sensor 165 receives contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is collocated with or proximal to a touch sensing surface (e.g., touch sensing display system 112). In some embodiments, at least one contact intensity sensor is disposed on the back of device 100, on the opposite side of touch screen display 112 disposed on the front of device 100.

[0124] Device 100 also optionally includes one or more proximity sensors 166. FIG. 1A shows a proximity sensor 166 coupled to the peripheral device interface 118. Alternatively, optionally, the proximity sensor 166 is coupled to the input controller 160 within the I / O subsystem 106. The proximity sensor 166 operates, optionally, as described in U.S. Patent Application Nos. 11 / 241,839, "Proximity Detector In Handheld Device", 11 / 240,788, "Proximity Detector In Handheld Device", 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output", 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices", and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals", the entire disclosures of which are incorporated herein by reference. In some embodiments, when this multifunctional device is placed near the user's ear (e.g., when the user is on a phone call), the proximity sensor turns off and disables the touch screen 112.

[0125] Device 100 also optionally includes one or more haptic output generators 167. FIG. 1A shows a haptic output generator coupled to a haptic feedback controller 161 within I / O subsystem 106. The haptic output generator 167 optionally includes one or more electroacoustic devices, such as a speaker or other audio component, and / or an electromechanical device that converts energy to linear motion, such as a motor, solenoid, electroactive polymer, piezoelectric actuator, electrostatic actuator, or other haptic output component (e.g., a component that converts an electrical signal into a haptic output on the device). The contact intensity sensor 165 receives haptic feedback generation instructions from the haptic feedback module 133 and generates a haptic output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one haptic output generator is collocated with or proximate to a touch sensing surface (e.g., touch sensing display system 112) and optionally generates a haptic output by moving the touch sensing surface in a vertical direction (e.g., in / out of the surface of device 100) or a lateral direction (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one haptic output generator sensor is disposed on the back of device 100, which is opposite the touch screen display 112 disposed on the front of device 100.

[0126] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows an accelerometer 168 coupled to the peripheral device interface 118. Alternatively, the accelerometer 168 is optionally coupled to an input controller 160 within the I / O subsystem 106. The accelerometer 168 operates, optionally, as described in U.S. Patent Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer." Both of these documents are hereby incorporated by reference in their entirety. In some embodiments, information is displayed on the touch screen display in portrait view or landscape view based on analysis of data received from one or more accelerometers. Device 100 optionally includes, in addition to the accelerometer(s) 168 as needed, a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information regarding the position and orientation (e.g., portrait or landscape) of the device 100.

[0127] In some embodiments, the software components stored in the memory 102 include an operating system 126, a communication module (or instruction set) 128, a touch / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and an application (instruction set) 136. Further, in some embodiments, as shown in FIGS. 1A and 3, the memory 102 (FIG. 1A) or the memory 370 (FIG. 3) stores a device / global internal state 157. The device / global internal state 157 includes one or more of the following. An active application state indicating which application is active, if there is a currently active application; a display state indicating which application, view, or other information occupies various regions of the touch screen display 112; a sensor state including information obtained from various sensors of the device and input control devices 116; and position information regarding the position and / or orientation of the device.

[0128] The operating system 126 (e.g., an embedded operating system such as Darwin (registered trademark), RTXC (registered trademark), LINUX (registered trademark), UNIX (registered trademark), OS X (registered trademark), iOS, WINDOWS (registered trademark), or VxWorks (registered trademark)) includes various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.), and facilitates communication between various hardware and software components.

[0129] The communication module 128 facilitates communication with other devices via one or more external ports 124 and includes various software components for processing data received by the RF circuit 108 and / or the external port 124. The external port 124 (e.g., Universal Serial Bus (USB), FIREWIRE (registered trademark), etc.) is adapted to connect directly or indirectly via a network (e.g., the Internet, a wireless LAN, etc.) to other devices. 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 (registered trademark) (a trademark of Apple Inc.) devices.

[0130] The contact / motion module 130 optionally detects contact with the touch screen 112 (in relation to the display controller 156) and contact with other touch-sensing devices (e.g., a touch pad or a physical click wheel). The contact / motion module 130 includes various software components for performing various operations related to the detection of contact, such as determining whether contact has occurred (e.g., detecting the event of a finger being lowered), determining the intensity of the contact (e.g., the force or pressure of the contact, or a proxy for the force or pressure of the contact), determining whether there is movement of the contact and tracking of movement across the touch-sensing surface (e.g., detecting one or more finger-drag events), and determining whether the contact has ceased (e.g., detecting the event of a finger being raised or the interruption of contact). The contact / motion module 130 receives contact data from the touch-sensing surface. Determining the movement of the contact point represented by a series of contact data optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These operations are optionally applied to a single contact (e.g., contact with one finger) or multiple simultaneous contacts (e.g., "multi-touch" / contact with multiple fingers). In some embodiments, the contact / motion module 130 and the display controller 156 detect contact on the touch pad.

[0131] In some embodiments, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by the user (e.g., to determine whether the user has "clicked" on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of specific physical actuators and can be adjusted without changing the physical hardware of the device 100). For example, the mouse "click" threshold of a trackpad or touch screen display can be set to any of a wide range of predefined thresholds without changing the trackpad or touch screen display hardware. Additionally, in some implementations, the user of the device is provided with software settings for adjusting one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds immediately after a system-level click of the "intensity" parameter).

[0132] The contact / motion module 130 optionally detects gesture inputs by the user. Different gestures on the touch-sensing surface have different contact patterns (e.g., different motions, timings, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting a specific contact pattern. For example, detecting a finger tap gesture includes detecting an event of a finger being lowered and subsequently detecting an event of the finger being raised (lifted off) at the same position (or substantially the same position) as the event of the finger being lowered (e.g., at the position of an icon). As another example, detecting a finger swipe gesture on the touch-sensing surface includes detecting an event of a finger being lowered, subsequently detecting one or more finger drag events, and then detecting an event of the finger being raised (lifted off).

[0133] The graphic module 132 includes various known software components for rendering and displaying graphics on the touch screen 112 or other display, including components for changing the visual effects of the displayed graphics (e.g., brightness, transparency, saturation, contrast, or other visual characteristics). As used herein, the term "graphic" includes any object that can be displayed to a user, and examples of such objects include text, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc., but are not limited thereto.

[0134] In some embodiments, the graphic module 132 stores data representing the graphics used. Each graphic is optionally assigned a corresponding code. The graphic module 132 receives one or more codes specifying the graphics to be displayed, along with coordinate data and other graphic property data as needed, from an application or the like, and generates screen image data to output to the display controller 156.

[0135] The tactile feedback module 133 includes various software components for generating instructions to be used by the tactile output generator(s) 167 to generate tactile output at one or more locations on the device 100 in response to user interaction with the device 100.

[0136] The text input module 134 is optionally a component of the graphic module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application that requires text input).

[0137] 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 making location-based calls, to the camera 143 as photo / video metadata, and to applications that provide location-based services such as weather widgets, local yellow page widgets, and map / navigation widgets).

[0138] The application 136 optionally includes the following modules (or sets of instructions), or subsets or supersets thereof. ● Contact module 137 (sometimes also referred to as an address book or contact list), ● Phone module 138, ● Video conferencing module 139, ● Email client module 140, ● Instant messaging (IM) module 141, ● Training support module 142, ● Camera module 143 for still images and / or videos, ● Image management module 144, ● Video player module, ● Music player module, ● Browser module 147, ● Calendar module 148, ● Widget module 149 that optionally includes one or more of weather widget 149-1, stock widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, and other widgets acquired by the user, as well as user-created widget 149-6, ● Widget creator module 150 for creating user-created widget 149-6, ● Search module 151, ● Video and music player module 152 that integrates the video player module and the music player module ● Memory module 153, ● Map module 154, and / or ● Online video module 155.

[0139] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA (registered trademark)-compatible applications, encryption, digital rights management, speech recognition, and speech reproduction.

[0140] In connection with touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, contact module 137 is optionally used to manage an address book or contact list (e.g., stored in the application internal state 192 of contact module 137 in memory 102 or memory 370), which includes adding name(s) to the address book, deleting name(s) from the address book, associating a phone number(s), email address(es), address(es), or other information with a name, associating an image with a name, sorting and classifying names, providing a phone number or email address to initiate and / or facilitate communication by phone 138, video conferencing module 139, email 140, or IM 141, etc.

[0141] In relation to the RF circuit 108, audio circuit 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, the telephone module 138 is optionally used to input a series of characters corresponding to a telephone number, access one or more telephone numbers in the contact module 137, modify the input telephone number, dial the corresponding telephone number, conduct a conversation, and disconnect the connection or hang up the phone when the conversation is completed. As described above, wireless communication optionally uses any of a plurality of communication standards, protocols, and technologies.

[0142] In relation to the RF circuit 108, audio circuit 110, speaker 111, microphone 113, touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphic module 132, text input module 134, contact module 137, and telephone module 138, the videoconference module 139 includes executable instructions to start, conduct, and end a video conference between the user and one or more other participants according to the user's instructions.

[0143] In relation to the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, the email client module 140 includes executable instructions to create, send, receive, and manage emails according to the user's instructions. In relation to the image management module 144, the email client module 140 makes it very easy to create and send emails with still or video images captured by the camera module 143.

[0144] In connection with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, instant messaging module 141 includes executable instructions to input a sequence of characters corresponding to an instant message, modify input characters, transmit each instant message (e.g., using the Short Message Service (SMS) or Multimedia Messaging Service (MMS) protocol for phone-based instant messages or using XMPP, SIMPLE, or IMPS for Internet-based instant messages), receive an instant message, and display the received instant message. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments, as supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both phone-based messages (e.g., messages transmitted using SMS or MMS) and Internet-based messages (e.g., messages transmitted using XMPP, SIMPLE, or IMPS).

[0145] In connection with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, map module 154, and music player module, training support module 142 includes executable instructions to generate a training (e.g., having time, distance, and / or calorie burn goals), communicate with a training sensor (sports device), receive training sensor data, calibrate sensors used to monitor the training, select and play music for the training, and display, store, and transmit training data.

[0146] In connection with the touch screen 112, the display controller 156, the light sensor(s) 164, the light sensor controller 158, the touch / motion module 130, the graphic module 132, and the image management module 144, the camera module 143 includes executable instructions to capture still images or video (including video streams), store them in the memory 102, modify the characteristics of the still images or video, or delete the still images or video from the memory 102.

[0147] In connection with the touch screen 112, the display controller 156, the touch / motion module 130, the graphic module 132, the text input module 134, and the camera module 143, the image management module 144 includes executable instructions to arrange, modify (e.g., edit) and otherwise manipulate, label, delete, present (e.g., in a digital slide show or album), and store still images and / or video.

[0148] In connection with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphic module 132, and the text input module 134, the browser module 147 includes executable instructions to browse the Internet according to user instructions, including searching for, linking to, receiving, and displaying web pages or portions thereof, and attached and other files linked to the web pages.

[0149] In connection with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphic module 132, the text input module 134, the email client module 140, and the browser module 147, the calendar module 148 includes executable instructions to create, display, modify, and store a calendar and data associated with the calendar (e.g., calendar entries, to-do lists, etc.) according to user instructions.

[0150] In connection with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and browser module 147, the widget module 149 is a mini-application (e.g., weather widget 149-1, stock widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) that is optionally downloaded and used by the user, or a mini-application created by the user (e.g., user-created widget 149-6). In some embodiments, the widget includes an HTML (HyperText Markup Language) file, a CSS (Cascading Style Sheet) file, and a JavaScript file. In some embodiments, the widget includes an XML (Extensible Markup Language) file and a JavaScript (registered trademark) file (e.g., Yahoo! (registered trademark) widget).

[0151] In connection with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and browser module 147, the widget creator module 150 is optionally used by the user to create a widget (e.g., change a user-specified location on a web page to a widget).

[0152] In connection with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, the search module 151 includes executable instructions to search for text, music, sounds, images, videos, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) according to the user's instructions.

[0153] In connection with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, audio circuit 110, speaker 111, RF circuit 108, and browser module 147, the video and music player module 152 includes executable instructions that enable a user to download and play recorded music or other sound files stored in one or more file formats such as MP3 or AAC files, and executable instructions to display, present, or otherwise play videos (on the touch screen 112 or on an external display connected via the external port 124). In some embodiments, the device 100 optionally includes the functionality of an MP3 player such as an iPod (registered trademark of Apple Inc.).

[0154] In conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, the memo module 153 includes executable instructions for creating and managing memos, ToDo lists, etc. in accordance with user instructions.

[0155] In conjunction with the RF circuit mechanism 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, and browser module 147, the map module 154 is optionally used to receive, display, modify, and store maps and data associated with the maps (e.g., driving directions, data about stores and other points of interest near or at a particular location, and other location-based data) in accordance with user instructions.

[0156] In connection with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, online video module 155 includes instructions to enable a user to access, browse, receive (e.g., by streaming and / or downloading), play (e.g., on the touch screen or on an external display connected via external port 124), send emails that include links to particular online videos, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, instead of email client module 140, instant message module 141 is used to send links to particular online videos. Additional description of the online video application can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed Jun. 20, 2007, "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos", and U.S. Patent Application No. 11 / 968,067, filed Dec. 31, 2007, "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos". The contents of these applications are hereby incorporated by reference in their entirety.

[0157] Each of the modules and applications identified above corresponds to a set of executable instructions that perform one or more of the above functions and to the methods described in this application (e.g., methods performed by a computer 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, and thus, in various embodiments, various subsets of these modules may be optionally combined or otherwise rearranged. For example, a video player module may optionally be combined with a music player module into a single module (e.g., video and music player module 152, FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the identified modules and data structures described above. Further, memory 102 optionally stores additional modules and data structures not described above.

[0158] In some embodiments, device 100 is a device in which the operation of a defined set of functions on the device is performed exclusively via a touch screen and / or a touch pad. By using a touch screen and / or a touch pad as the primary input control device for the operation of device 100, the number of physical input control devices (such as push buttons, dials, and the like) on device 100 can be optionally reduced.

[0159] A defined set of functions that are executed exclusively via a touch screen and / or a touch pad optionally includes navigation between user interfaces. In some embodiments, when the touch pad is touched by a user, the device 100 is navigated from any user interface displayed on the device 100 to the main menu, home menu, or root menu. In such embodiments, the "menu button" is implemented using the touch pad. In some other embodiments, the menu button is a physical push button or other physical input control device instead of the touch pad.

[0160] FIG. 1B is a block diagram showing exemplary components for event processing according to some embodiments. In some embodiments, the memory 102 (FIG. 1A) or the memory 370 (FIG. 3) includes an event sorter 170 (e.g., within the operating system 126) and a corresponding application 136-1 (e.g., any of the applications 137 to 151, application 155, and applications 380 to 390 described above).

[0161] The event sorter 170 receives event information and determines an application 136-1 that distributes the event information and an application view 191 of the application 136-1. The event sorter 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, the application 136-1 includes an application internal state 192 that indicates the current application view(s) displayed on the touch-sensitive display 112 when the application is active or running. In some embodiments, the device / global internal state 157 is used by the event sorter 170 to determine whether any application(s) is currently active, and the application internal state 192 is used by the event sorter 170 to determine the application view 191 to which the event information is to be distributed.

[0162] In some embodiments, the application internal state 192 includes additional information such as resume information used when application 136-1 resumes execution, user interface state information indicating whether information is being displayed or is ready for display by application 136-1, a state queue for allowing the user to return to a previous state or view of application 136-1, and one or more of a redo / undo queue of the user's previous actions.

[0163] The event monitor 171 receives event information from the peripheral device interface 118. The event information includes information about sub-events (e.g., a user touch on the touch-sensitive display 112 as part of a multi-touch gesture). The peripheral device interface 118 transmits information received from sensors such as the I / O subsystem 106 or the proximity sensor 166, the accelerometer(s) 168, and / or the microphone 113 (via the audio circuitry 110). The information that the peripheral device interface 118 receives from the I / O subsystem 106 includes information from the touch-sensitive display 112 or a touch-sensitive surface.

[0164] In some embodiments, the event monitor 171 sends requests to the peripheral device interface 118 at predetermined intervals. In response, the peripheral device interface 118 transmits event information. In other embodiments, the peripheral device interface 118 transmits event information only when there is an important event (e.g., receiving an input that exceeds a predetermined noise threshold and / or is longer than a predetermined duration).

[0165] In some embodiments, the event sorter 170 also includes a hit view determination module 172 and / or an active event recognition unit determination module 173.

[0166] The hit view determination module 172 provides a software procedure for determining where in one or more views a sub - event has occurred when the touch - sensitive display 112 displays one or more views. A view is composed of a control unit and other elements that are visible to the user on the display.

[0167] Another aspect of the user interface associated with an application is, in this specification, a set of views, sometimes referred to as application views or user interface windows, within which information is displayed and touch - based gestures are performed. The application views (for each application) where touches are detected optionally correspond to a program level within the program hierarchy or view hierarchy of the application. For example, the lowest - level view where a touch is detected is optionally called a hit view, and the set of events recognized as appropriate inputs is optionally determined, at least in part, based on the hit view of the first touch that initiates a touch - based gesture.

[0168] The hit view determination module 172 receives information associated with sub - events of touch - based gestures. When an application has a plurality of views organized as a hierarchy, the hit view determination module 172 identifies the hit view as the lowest - level view within the hierarchy in which the sub - event should be processed. In many situations, the hit view is the lowest - level view where the first sub - event (e.g., the first sub - event in a sequence of sub - events that form an event or potential event) occurs. Once the hit view is identified by the hit view determination module 172, the hit view typically receives all sub - events related to the same touch or input source for which it was identified as the hit view.

[0169] The active event recognition unit determination module 173 determines which view(s) within the view hierarchy should receive a particular sequence of sub-events. In some embodiments, the active event recognition unit determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, the active event recognition unit determination module 173 determines that all views including the physical location of the sub-event are views that are actively involved, and thus, all views that are actively involved should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely limited to an area associated with a particular view, the upper-level views in the hierarchy will remain views that are actively involved.

[0170] The event dispatcher module 174 sends event information to the event recognition unit (e.g., event recognition unit 180). In embodiments including the active event identification unit determination module 173, the event dispatcher module 174 distributes the event information to the event recognition unit determined by the active event recognition unit determination module 173. In some embodiments, the event dispatcher module 174 stores the event information obtained by each event receiver 182 in the event queue.

[0171] In some embodiments, the operating system 126 includes the event sorter 170. Alternatively, the application 136-1 includes the event sorter 170. In still other embodiments, the event sorter 170 is a stand-alone module or part of another module stored in the memory 102 such as the touch / motion module 130.

[0172] In some embodiments, Application 136-1 includes a plurality of event handlers 190 and one or more application views 191, each including instructions for handling touch events that occur within each view of the user interface of that application. Each application view 191 of Application 136-1 includes one or more event recognition units 180. Typically, each application view 191 includes a plurality of event recognition units 180. In other embodiments, one or more of the event recognition units 180 are part of a separate module, such as a user interface kit (not shown) 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 event data 179 received from data updater 176, object updater 177, GUI updater 178, and / or event sorter 170. The event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update the 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 data updater 176, object updater 177, and GUI updater 178 are included within each application view 191.

[0173] Each event recognition unit 180 receives event information (e.g., event data 179) from the event sorter 170 and identifies an event from that event information. The event recognition unit 180 includes an event receiving unit 182 and an event comparing unit 184. In some embodiments, the event recognition unit 180 also includes at least a subset of metadata 183 and event distribution instructions 188 (optionally including sub-event distribution instructions).

[0174] The event receiver 182 receives event information from the event sorter 170. The event information includes information on sub-events such as, for example, a touch or a movement of a touch. Depending on the sub-event, the event information may also include additional information such as the position of the sub-event. When the sub-event relates to the movement of a touch, the event information optionally further 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 orientation to landscape orientation or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the posture of the device).

[0175] The event comparator 184 compares the event information with the definition of a defined event or sub-event, and based on the comparison, determines an event or sub-event, or determines or updates the state of an event or sub-event. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes, for example, definitions of events (e.g., a predefined sequence of sub-events) such as event 1 (187-1), event 2 (187-2), etc. In some embodiments, the sub-events within an event (187) include, for example, touch start, touch end, touch movement, touch cancellation, and multiple touches. In one example, the definition of event 1 (187-1) is a double-tap on a displayed object. The double-tap includes, for example, a first touch (touch start) at a predefined stage on the displayed object, a first lift-off (touch end) at a predefined stage, a second touch (touch start) at a predefined stage on the displayed object, and a second lift-off (touch end) at a predefined stage. In another example, the definition of event 2 (187-2) is a drag on a displayed object. The dragging includes, for example, a touch (or contact) at a predefined stage on the displayed object, 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.

[0176] In some embodiments, the event definition 187 includes the definition of events for each user interface object. In some embodiments, the event comparison unit 184 performs a hit test to determine the user interface object associated with the sub - event. For example, in an application view where three user interface objects are displayed on the touch - sensitive display 112, when a touch is detected on the touch - sensitive display 112, the event comparison unit 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub - event). If each of the displayed objects is associated with a respective event handler 190, the event comparison unit uses the result of the hit test to determine the event handler 190 that needs to be activated. For example, the event comparison unit 184 selects the event handler associated with the sub - event and the object that triggers the hit test.

[0177] In some embodiments, the definition for each event (187) also includes a delaying action that delays the sending of event information until it is determined whether the sequence of sub - events corresponds to the event type of the event recognition unit.

[0178] If each event recognition unit 180 determines that a series of sub - events does not match any of the events in the event definition 186, each event recognition unit 180 enters a state of event - impossible, event - failed, or event - ended, and then ignores the next sub - event of the touch - based gesture. In this situation, if any, other event recognition units that remain active for the hit view continue to track and process the sub - events of the ongoing touch - based gesture.

[0179] In some embodiments, each event recognition unit 180 includes metadata 183 having configurable properties, flags, and / or a list indicating how the event distribution system executes sub-event distribution for the event recognition unit that is actively involved. In some embodiments, the metadata 183 includes configurable properties, flags, and / or a list indicating how event recognition units can interact with each other. In some embodiments, the metadata 183 includes configurable properties, flags, and / or a list indicating whether sub-events are distributed to various levels within the view hierarchy or program hierarchy.

[0180] In some embodiments, each event recognition unit 180 activates an event handler 190 associated with the event when one or more specific sub-events of the event are recognized. In some embodiments, each event recognition unit 180 distributes event information associated with the event to the event handler 190. Activating the event handler 190 is distinguished from sending (and deferring sending) sub-events to each hit view. In some embodiments, the event recognition unit 180 throws a flag associated with the recognized event, and the event handler 190 associated with the flag catches the flag and executes a defined process.

[0181] In some embodiments, the event distribution command 188 includes a sub-event distribution command that distributes event information regarding sub-events without activating an event handler. Instead, the sub-event distribution command distributes event information to an event handler associated with a series of sub-events or to a view that is actively involved. The event handler associated with a series of sub-events or a view that is actively involved receives the event information and executes a predetermined process.

[0182] In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates the phone numbers used in contact module 137 or stores video files used in a video player module. In some embodiments, object updater 177 creates and updates objects used in 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 graphic module 132 for display on a touch-sensitive display.

[0183] In some embodiments, event handler(s) 190 includes or has 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 their respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.

[0184] The foregoing discussion regarding event handling of a user's touch on a touch-sensitive display also applies to other forms of user input for operating the multifunctional device 100 using an input device, although it will be understood that not all of them are initiated on the touch screen. For example, mouse movement and mouse button presses optionally in conjunction with pressing or holding a single or multiple keyboards, contact movements such as taps, drags, scrolls on a touch pad, pen stylus input, device movement, verbal commands, detected eye movements, biometric input, and / or any combination thereof are optionally utilized as input corresponding to sub-events that define the event to be recognized.

[0185] FIG. 2 shows a portable multifunctional device 100 having a touch screen 112 according to some embodiments. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In the embodiments described below as well as in this embodiment, the user can select one or more of the graphics by performing gestures on the graphics using, for example, one or more fingers 202 (not drawn to an exact scale in the figure) or one or more styli 203 (not drawn to an exact scale in the figure). In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, upward, and / or downward), and / or rolling of a finger in contact with the device 100 (from right to left, from left to right, upward, and / or downward). In some implementations or situations, an accidental contact with a graphic does not select the graphic. For example, a swipe gesture that swipes over an application icon does not optionally select the corresponding application if the gesture corresponding to selection is a tap.

[0186] Device 100 also optionally includes one or more physical buttons, such as a "home" or menu button 204. As described above, menu button 204 is optionally used on device 100 to navigate to any application 136 within a set of applications to be executed. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on touch screen 112.

[0187] In some embodiments, device 100 includes touch screen 112, menu button 204, a push button 206 for turning the device on / off and locking the device, volume adjustment button(s) 208, a Subscriber Identity Module (SIM) card slot 210, a headset jack 212, and a docking / charging external port 124. Push button 206 is optionally used to turn the power on / off on the device by pressing the button and holding it in the pressed state for a defined time interval, to lock the device by pressing the button and releasing it before a defined time interval has elapsed, and / or to unlock the device or initiate an unlock process. In an alternative embodiment, device 100 also receives verbal input through microphone 113 to activate or deactivate some functions. Also, device 100 optionally includes one or more contact intensity sensors 165 for detecting the intensity of contact with touch screen 112 and / or one or more tactile output generators 167 for generating a tactile output for a user of device 100.

[0188] FIG. 3 is a block diagram of an exemplary multi-functional device including a display and a touch sensing surface, according to some embodiments. Device 300 may 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 industrial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more networks or other communication interfaces 360, memory 370, and one or more communication buses 320 for interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes an input / output (I / O) interface 330 that includes a display 340, typically a touch screen display. I / O interface 330 also optionally includes a keyboard and / or a mouse (or other pointing device) 350, a touch pad 355, a haptic output generator 357 (similar to, e.g., haptic output generator(s) 167 described above with reference to FIG. 1A) for generating haptic output on device 300, and sensors 359 (e.g., light sensors, acceleration sensors, proximity sensors, touch sensing sensors, and / or haptic intensity sensors similar to haptic intensity sensor(s) 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 semiconductor memory devices, and also 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 semiconductor memory devices. Memory 370 optionally includes one or more storage devices located remotely from the CPU(s) 310.In some embodiments, the memory 370 stores programs, modules, and data structures, programs, modules, and data structures, or subsets thereof, stored in the memory 102 of the portable multifunctional device 100 (FIG. 1A). Further, the memory 370 may store additional programs, modules, and data structures that do not exist within the memory 102 of the portable multifunctional device 100. For example, the memory 370 of the device 300 optionally stores a drawing module 380, a display module 382, a word processing module 384, a website creation module 386, a disk authoring module 388, and / or a spreadsheet module 390, while the memory 102 of the portable multifunctional device 100 (FIG. 1) does not optionally store these modules.

[0189] Each of the specifically identified elements of FIG. 3 above is optionally stored in one or more of the aforementioned memory devices. Each of the identified modules above corresponds to a set of instructions for performing the functions described above. The identified modules or programs (e.g., sets of instructions) above need not be implemented as separate software programs, procedures, or modules, and thus, in various embodiments, various subsets of these modules are optionally combined or otherwise rearranged. In some embodiments, the memory 370 optionally stores a subset of the identified modules and data structures above. Further, the memory 370 optionally stores additional modules and data structures not described above.

[0190] Now, for example, attention is directed to embodiments of a user interface optionally implemented on the portable multifunctional device 100.

[0191] FIG. 4A shows an exemplary user interface for a menu of applications on a portable multifunctional device 100, according to some embodiments. A similar user interface may optionally be 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 including icons for frequently used applications, such as the following, ○ Icon 416 for phone module 138, labeled "Phone", optionally including an indicator 414 of the number of missed calls or voicemail messages, ○ Icon 418 for email client module 140, labeled "Mail", optionally including an indicator 410 of the number of unread emails, ○ Icon 420 for browser module 147, labeled "Browser", and ○ Icon 422 for video and music player module 152, also referred to as the iPod (trademark of Apple Inc.) module 152, labeled "iPod", and ● Icons for other applications, such as the following, ○ Icon 424 for IM module 141, labeled "Message", ○ Icon 426 for calendar module 148, labeled "Calendar", ○ Icon 428 for image management module 144, labeled "Photos", ○ Icon 430 for camera module 143, labeled "Camera", ○ Icon 432 for online video module 155, labeled "Online Video", ○ An icon 434 for the stock widget 149-2 labeled as "Stock". ○ An icon 436 for the map module 154 labeled as "Map". ○ An icon 438 for the weather widget 149-1 labeled as "Weather". ○ An icon 440 for the alarm clock widget 149-4 labeled as "Clock". ○ An icon 442 for the training support module 142 labeled as "Training Support". ○ An icon 444 for the memo module 153 labeled as "Memo", and ○ An icon 446 for the settings application or module that provides access to the settings related to the device 100 and its various applications 136, labeled as "Settings".

[0192] Note that the labels of the icons shown in FIG. 4A are merely illustrative. For example, the icon 422 for the video and music player module 152 is labeled as "Music" or "Music Player". Other labels may optionally be used for the various application icons. In some embodiments, the label for each application icon includes the name of the application corresponding to the respective application icon. In some embodiments, the label of a particular application icon is different from the name of the application corresponding to the particular application icon.

[0193] FIG. 4B shows an exemplary user interface on a device (e.g., device 300 of FIG. 3) that includes a touch sensing surface 451 (e.g., the tablet or touch pad 355 of FIG. 3) separate from the display 450 (e.g., touch screen display 112). The device 300 also includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting the intensity of contact on the touch sensing surface 451 and / or one or more haptic output generators 357 for generating haptic output to the user of the device 300.

[0194] Some of the following examples are described with reference to input on the touch screen display 112 (when the touch sensing surface and the display are combined), but in some embodiments, the device detects input on a touch sensing surface separate from the display, as shown in FIG. 4B. In some embodiments, this touch sensing surface (e.g., 451 in FIG. 4B) has a major axis (e.g., 452 in FIG. 4B) that corresponds to the major axis (e.g., 453 in FIG. 4B) on the display (e.g., 450). According to these embodiments, the device detects contact (e.g., 460 and 462 in FIG. 4B) with the touch sensing surface 451 at locations (e.g., in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470) that correspond to respective locations on the display. In this way, when the touch sensing surface is separate from the display, user input (e.g., contacts 460 and 462 and their movement) detected by the device on the touch sensing surface (e.g., 451 in FIG. 4B) is used by the device to operate the user interface on the display (e.g., 450 in FIG. 4B) of the multifunctional device. It should be understood that a similar method is optionally used for other user interfaces described herein.

[0195] Additionally, although the following description mainly refers to finger inputs (e.g., finger contact, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of these finger inputs may be replaced by inputs from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture may optionally be replaced by a mouse click (e.g., instead of a contact), and then the cursor is moved along the path of the swipe (e.g., instead of the movement of a contact). As another example, a tap gesture may optionally be replaced by a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detecting the end of a contact following the detection of a contact). Similarly, it will be understood that when multiple user inputs are detected simultaneously, multiple computer mice may be optionally used simultaneously, or a mouse and finger contact may be used simultaneously.

[0196] FIG. 5A shows an exemplary personal electronic device 500. The device 500 includes a body 502. In some embodiments, the device 500 may include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B). In some embodiments, the device 500 has a touch-sensitive display screen 504, which will hereinafter be referred to as the touch screen 504. Alternatively, or in addition to the touch screen 504, the device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, the touch screen 504 (or touch-sensitive surface) optionally has one or more intensity sensors for detecting the intensity of an applied contact (e.g., a touch). One or more intensity sensors of the touch screen 504 (or touch-sensitive surface) may provide output data representing the intensity of the touch. The user interface of the device 500 may respond to the touch based on the intensity of the touch, which means that touches of different intensities may invoke different user interface operations on the device 500.

[0197] The personal electronic device 500 can be used to detect and monitor various attributes of a user's physical activity, such as the amount of activity, intensity level, duration, progress towards a set value, trends over a time period, etc., and can generate a user interface for displaying them. The device 500 can further be used to monitor a user's inactivity, and if the device 500 detects that the user is not engaged in physical activity that meets a predetermined criterion, the user can be classified as being inactive. For example, inactivity can be characterized by the user not engaging in physical activity that meets a threshold intensity (e.g., an action that consumes a threshold number of calories per unit time, an action that exceeds a threshold distance per unit time, etc.), the user not engaging in a particular type of activity (e.g., standing, walking, running, swimming, climbing stairs, etc.), or a combination thereof. As will be described in further detail below, the device 500 can include various activity sensors for detecting a user's activity and inactivity, can generate an interface on the device's display, and can provide the user with information associated with their activity or inactivity.

[0198] Exemplary techniques for detecting and processing touch intensity are described, for example, in the 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," 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," the contents of which are hereby incorporated by reference in their entirety.

[0199] In some embodiments, device 500 has one or more input mechanisms 506 and input mechanism 508. The input mechanisms 506 and 508, if included, can 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, can enable attachment of device 500 to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms can allow device 500 to be worn by a user.

[0200] In some examples, device 500 can further include an attachment mechanism (not shown) coupled to body 502 to enable device 500 to be worn by a user. The attachment mechanism can include a strap that enables device 500 to be worn around a user's wrist. However, it should be understood that the attachment mechanism can include other types of attachment mechanisms. For example, in some examples, attachment mechanisms can include strings, clips, clasps, metal loops, toggles, buttons, snaps, hooks, interlocking parts, soldering parts, etc. that can be attached to or integrated with hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, hair bands, arm bands, any other clothing, jewelry, or wearable accessories. In yet other examples, attachment mechanisms can include adhesives, welding metals, polymers, glues, etc. that can directly secure device 500 to a user's body part such as the wrist, finger, toe, neck, head, arm, limb, ankle, waist, etc.

[0201] Device 500 may further include one or more activity sensors for detecting a user's physical activity. The activity sensors may include one or more of a Global Positioning System (GPS) sensor, a pedometer, an accelerometer, a biometric sensor, a gyroscope sensor, a motion sensor, a timer sensor, a clock sensor, etc., and may be operable to output activity data representing various attributes of the user's detected activity.

[0202] FIG. 5B shows an exemplary personal electronic device 500. In some embodiments, device 500 may include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 that operably couples an I / O section 514 to one or more computer processors 516 and a memory 518. The I / O section 514 may be connected to a display 504 that has a touch sensing component 522 and optionally a force sensor 524 (e.g., a contact force sensor). Further, the I / O section 514 may be connected to a communication unit 530 for receiving application and operating system data using Wi-Fi, Bluetooth®, near field communication (“NFC”), cellular, and / or other wireless communication technologies. Device 500 may include an input mechanism 506 and / or an input mechanism 508. Input mechanism 506 may optionally be, for example, a rotatable input device, or a pressable and rotatable input device. Input mechanism 508 may optionally be a button in some embodiments.

[0203] In some embodiments, the input mechanism 508 is optionally a microphone. The personal electronic device 500 optionally includes various activity sensors 520 for detecting the activities of the user of the device 500. The activity sensors 520 include one or more of any desired type of sensors such as a GPS sensor 532, an accelerometer 534, a direction sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, other sensor(s) 541, and / or combinations thereof, all of which can be operably coupled to the I / O section 514. Although not shown, other sensor(s) 541 can include any of a pedometer, a passive infrared sensor, an ultrasonic sensor, a microwave sensor, a tomographic motion detector, a camera, a biosensor, an optical sensor, a timer, etc.

[0204] In some embodiments, the biosensor can include one or more health-related optical sensors, capacitance sensors, thermal sensors, electric field (e-field) sensors, and / or ultrasonic sensors such as a photoelectric fingertip photoplethysmogram (PPG) sensor, an electrocardiogram recording (ECG) sensor, and / or a galvanic skin response (GSR) sensor. These sensors can generate data that provides health-related information associated with the user. For example, a PPG sensor can provide information regarding the user's respiratory rate, blood pressure, and / or oxygen saturation. An ECG sensor can provide information regarding the user's heart beat. A GSR sensor can provide information regarding the moisture of the user's skin indicating sweating, and can prioritize a thermostat application for determining the user's body temperature. Using one or more of these sensors, the device 500 can determine the user's physiological characteristics such as the user's heart beat associated with the detected activity while the user is performing the detected activity, the user's average body temperature detected during the detected activity, either a normal or abnormal health condition associated with the detected activity, etc.

[0205] In some embodiments, the GPS sensor 532 can be used to determine the user's location and movement, as well as the amount of displacement of the user's movement. The accelerometer 534, the direction sensor 540, and the gyroscope 536 can further generate activity data that can be used to determine whether the user of the device 500 is engaged in an activity, is inactive, or is performing a gesture. The device 500 can further include a timer that can be used to add time dimensions, such as, for example, the duration of the user's physical activity or inactivity, the time(s) of day when the activity was or was not detected, etc., to the various attributes of the detected physical activity.

[0206] The activity sensor 520 can be embedded within the body 502 of the device 500, can be disposed near the bottom surface of the body 502 of the device 500, or can be disposed at any other desired location. In some embodiments, different activity sensors 520 can be disposed at different locations inside or on the surface of the device 500. For example, some can be disposed within the body 502, some can be attached to an attachment mechanism, etc. In other embodiments, the activity sensor 520 can be worn by the user separately from the device 500. In such a case, the sensor can be configured to communicate with the device 500 using a wired or wireless technology (e.g., via the communication unit 531). In some embodiments, the activity sensors 520 can be configured to communicate with each other and / or share data collected from one or more sensors. In some other embodiments, the device 500 can be waterproof so that the sensors can detect the user's activity underwater.

[0207] The memory 518 of the personal electronic device 500 can be a non-transitory computer-readable storage medium for storing computer-executable instructions, which, when executed by one or more computer processors 516, can cause, for example, the computer processor to execute the techniques described above, including processes 1500, 1600, 2200, 2400, 4000, 4800, 7900, 8600, 8900, and 9200 (Figs. 15, 16, 22, 24, 40, 48, 79, 86, and 89). The computer-executable instructions can also be stored and / or transmitted to any non-transitory computer-readable storage medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, a system including a processor, or another system that can fetch and execute the instructions. For the purposes of this specification, a "non-transitory computer-readable storage medium" can be any medium that can tangibly contain or store computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. The non-transitory computer-readable storage medium can include, but is not limited to, magnetic, optical, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, CDs, DVDs, or optical disks based on Blu-ray (registered trademark) technology, and persistent solid-state memories such as flash memory and solid-state drives. The personal electronic device 500 is not limited to the components and configurations of Fig. 5B and can include other components or additional components in multiple configurations.

[0208] Device 500 may further include one or more computer processors 516 coupled to memory unit 518 via bus 512. I / O unit 514 may be coupled to bus 512 to cause processors 516 and memory 518 to transmit and receive data from other components of device 500. For example, processor 516 may be coupled to provide instructions to activity sensor 520 via I / O unit 514 and may be coupled to receive activity data from activity sensor 520 via I / O unit 514.

[0209] Processor 516 may be configured to process the activity data and determine whether the body activity data represents a body activity or gesture being performed by the user, where the body activity may generally refer to any bodily movement that may improve or maintain motor ability as well as overall health and wellness. Additionally, processor 516 may be configured to identify the type of body activity represented by the activity data, such as whether the detected activity is standing, bicycling, jogging, walking, running, swimming, jumping, climbing stairs, intense body movements such as wrestling, etc. Examples of gestures recognizable by device 500 include, but are not limited to, waving both hands, moving fingers such as typing, etc. In some embodiments, processor 516 may determine the user's body activity based on one or more body activity recognition algorithms. Some algorithms may instruct processor 516 to recognize the operation of device 500 as being related to a gesture if the detected movement does not have an intensity level above a body activity threshold. The body activity threshold may be represented as any one or more of the distance traveled, the number of calories burned, the number of steps taken, etc., calculated per unit time. Algorithms for storing such instructions for one or more processors 516 may be stored within memory unit 518.

[0210] In addition, the processor 516 can determine various attributes of the detected physical activity based on the physical activity data received from the sensor. The attributes of the detected physical activity can include physical, biological, physiological, or environmental characteristics associated with the detected physical activity. Examples of attributes that can be determined by the device 500 when detecting physical activity include the duration of the detected physical activity, the time(s) of day when the user performed the detected physical activity, the amount of calories burned by the user of the device during the detected physical activity, the distance traveled by the user of the device during the detected physical activity, the number of steps taken by the user of the device during the detected physical activity, the height climbed by the user of the device during the detected physical activity, the maximum speed / minimum speed / average speed of the user of the device during the detected physical activity, the maximum heart rate / minimum heart rate / average heart rate of the user of the device during the detected physical activity, the maximum body temperature / minimum body temperature / average body temperature of the user of the device during the detected physical activity, etc., but are not limited thereto. For example, when the device 500 classifies the detected physical activity as walking, the device 500 can further determine one or more attributes of the detected walking, such as the length of time of the ongoing walking, the maximum speed / minimum speed / average speed of the user during walking, the amount of calories burned from the detected walking, etc. In some embodiments, the device 500 can further determine the time dimension associated with one or more attributes, such as the time(s) of day when the physical activity was detected, the time(s) of day when the most intense / least intense physical activity was detected, the time(s) of day when a specific amount of calories was burned, etc., using the clock sensor / timer sensor.

[0211] In some embodiments, processor 516 combined with activity sensor 520 of device 500 can detect when the system is placed in a viewing position. For example, accelerometer 534, motion sensor 538, and / or gyroscope 536 can detect when device 500 is lifted, lowered, and shaken. These sensors can also detect rotations of the wrist in the forward and backward directions. In some embodiments, lifting device 500 can be interpreted as the device being placed in a viewing position. In other embodiments, lifting and rotating device 500 can be interpreted as the device being placed in a viewing position. In yet other embodiments, lifting and rotating device 500 within a threshold duration can be interpreted as the device being placed in a viewing position. When placed in a viewing position, device 500 can adjust the displayed image according to the viewing position and viewing angle, and / or update the displayed image to reflect the latest data related to the user's physical activity. In some embodiments, when device 500 is moving at a speed exceeding a threshold (e.g., 10 mph, 20 mph, 25 mph, 30 mph, 40 mph, 50 mph, 55 mph, 60 mph, 65 mph, etc.), it can be determined that the user of the device is commuting and the actions associated with the user are not due to the user's body movements or exercise results. In other embodiments, device 500 can receive input from the user indicating that the user is engaged in a particular type of activity that should be interpreted as the associated actions being due to exercise results (e.g., cycling) that cause movement at a speed exceeding the above-mentioned threshold.

[0212] In some other embodiments, the device 500 may be comprehensively powered off in response to a global power on / off signal. For example, when comprehensively powered off, the device 500 may stop detecting and monitoring the user's physical activities. This conveniently saves power when the user intends not to use the device 500 for a period of time. In some embodiments, the global power off signal may be directly input by the user of the device 500 using the input mechanism of the device 500. The user may set a period during which the power of the device 500 is turned off and then the power of the device 500 is automatically turned on. In other embodiments, the signal to turn off the power of the device 500 may be automatically generated by the processor in response to determining that the device 100 is not worn by the user based on a contact temperature or other condition detectable by the sensor.

[0213] Device 500 can track a user's physical activity over different lengths of time. For example, when device 500 monitors a user's daytime activity, device 500 can track one or more attributes of the user's physical activity performed on the same day, store the values of those attributes, and reset them the next day. For example, in some cases, device 500 can monitor the total amount of daytime physical activity performed by the user, and this total amount can be updated in real time throughout the 24 hours of a day as further activity is detected. After 24 hours have elapsed, the total amount can be stored and reset. Device 500 can be configured to reset the attribute values at a specified time adjustable by the user. In other embodiments, device 500 can operate over different lengths of time, such as half a day, two days, one week, two weeks, one month, etc., adjustable by the user of device 500. Further, in some embodiments where device 500 monitors a user's physical activity over a relatively extended length of time, device 500 need not have sufficient memory capacity to track and store all of the attributes of the user's physical activity over such an extended length of time. Instead, device 500 can be configured to offload some or all of the data collected from the sensors onto an external device (e.g., a remote server) remote from device 500. The external device can be configured to communicate with multiple devices 500 and store the data collected from those devices. The external device can be further configured to execute computer instructions on the data and communicate the results to one or more of these devices 500.

[0214] As used herein, the term "affordance" refers to user-interactive graphical user interface objects optionally displayed on the display screen of device 100, device 300, and / or device 500 (FIGS. 1, 3, and 5). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each optionally constitute an affordance.

[0215] As used herein, the term "focus selector" refers to an input element that indicates the current part of the user interface with which the user is interacting. In implementations that include a cursor or other location marker, while the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g., the touchpad 355 of FIG. 3, or the touch-sensitive surface 451 of FIG. 4B), the cursor functions as a "focus selector" to cause the particular user interface element to be adjusted according to the detected input. In some implementations that include a touch screen display (e.g., the touch-sensitive display system 112 of FIG. 1A, or the touch screen 112 of FIG. 4A) that enables direct interaction with the user interface on the touch screen, a detected contact on the touch screen functions as a "focus selector" when the input (e.g., a press input by the contact) is detected at the location of a particular user interface element (e.g., a button, window, or other user interface element) on the touch screen, to cause the particular user interface element to be adjusted according to the detected input. In some implementations, the focus is moved from one area of the user interface to another area of the user interface without a corresponding movement of the cursor or movement of the contact on the touch screen (e.g., by moving the focus from one button to another button using a tab key or arrow keys). In these implementations, the focus selector moves in accordance with the movement of the focus between different areas of the user interface. Regardless of the particular form the focus selector takes, the focus selector is generally a user interface element (or a contact on the touch screen display) that is controlled by the user to convey the user's intended (e.g., by indicating to the device the user interface element the user wishes to interact with) interaction with the user interface.For example, when a press input is detected on a touch sensing surface (e.g., a touch pad or a touch screen), the position of a focus selector (e.g., a cursor, a contact, or a selection box) over each button indicates that the user is attempting to activate each button (as opposed to other user interface elements shown on the device's display).

[0216] As used in the specification and claims, the term "characteristic strength" of a contact refers to a characteristic of the contact based on one or more strengths of the contact. In some embodiments, the characteristic strength is based on a plurality of strength samples. The characteristic strength is optionally based on a defined number of strength samples, or a defined event (e.g., after detecting a contact, before detecting a lift-off of the contact, before or after detecting a start of movement of the contact, before detecting an end of the contact, before or after detecting an increase in the strength of the contact, and / or before or after detecting a decrease in the strength of the contact) within a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) of a set of strength samples collected. The characteristic strength of a contact is optionally based on one or more of a maximum value of the strength of the contact, an average value (mean) of the strength of the contact, an average value (average) of the strength of the contact, a top 10 percentile value of the strength of the contact, a value that is half of the maximum value of the strength of the contact, a value that is 90 percent of the maximum value of the strength of the contact, etc. In some embodiments, the duration of the contact is used to determine the characteristic strength (e.g., when the characteristic strength is an average of the strength of the contact over time). In some embodiments, the characteristic strength is compared to a set of one or more strength thresholds to determine whether an operation has been performed by a user. For example, the set of one or more strength thresholds optionally includes a first strength threshold and a second strength threshold. In this example, a first operation is performed as a result of a contact having a characteristic strength that does not exceed the first threshold, a second operation is performed as a result of a contact having a characteristic strength that exceeds the first threshold and does not exceed the second threshold, and a third operation is performed as a result of a contact having a characteristic strength that exceeds the second threshold. In some embodiments, the comparison between the characteristic strength and one or more thresholds is not used to determine whether to perform either a first operation or a second operation, but is used to determine whether to perform one or more operations (e.g., whether to perform each operation or omit the performance of each operation).

[0217] FIG. 5C shows detecting a plurality of contacts 552A-552E on a touch sensing display screen 504 with a plurality of intensity sensors 524A-intensity sensor 524D. FIG. 5C further includes an intensity diagram showing current intensity measurements of intensity sensors 524A-intensity sensor 524D in terms of units of intensity. In this example, the intensity measurements of intensity sensor 524A and intensity sensor 524D are each 9 units of intensity, and the intensity measurements of intensity sensor 524B and intensity sensor 524C are each 7 units of intensity. In some implementations, the total intensity is the sum of the intensity measurements of the plurality of intensity sensors 524A-intensity sensor 524D, which in this example is 32 intensity units. In some embodiments, each contact is assigned an intensity that is a part of the total intensity. FIG. 5D shows assigning the total intensity to contacts 552A-552E based on their distances from the center of force 554. In this example, each of contacts 552A, 552B, and 552E is assigned a contact intensity of 8 intensity units of the total intensity, and each of contacts 552C and 552D is assigned a contact intensity of 4 intensity units of the total intensity. More generally, in some implementations, each contact j is assigned an intensity Ij that is part of A of the total intensity according to the defined mathematical function Ij = A(Dj / ΣDi). Here, Dj is the distance of each contact j to the center of force, and ΣDi is the sum of all distances of each contact (e.g., from i = 1 to the end) to the center of force. The operations described with reference to FIGS. 5C-5D can be performed using an electronic device similar to device 100, device 300, or device 500. In some embodiments, the characteristic intensity of a contact is based on one or more intensities of the contact. In some embodiments, intensity sensors are used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). Note that the intensity diagram is included in FIGS. 5C-5D to assist the reader and is not part of the displayed user interface.

[0218] In some embodiments, for the purpose of determining characteristic intensity, a part of the gesture is specified. For example, the touch sensing surface optionally receives a continuous swipe contact that transitions from a starting position and reaches an ending position where the intensity of the contact increases. In this example, optionally, the characteristic intensity of the contact at the ending position is based only on a part of the swipe contact (e.g., only the part of the swipe contact at the ending position), rather than the entire continuous swipe contact. In some embodiments, optionally, a smoothing algorithm is applied to the intensity of the swipe contact before determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of a non - weighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some situations, these smoothing algorithms exclude small increases or decreases in the intensity of the swipe contact for the purpose of determining characteristic intensity.

[0219] The intensity of a contact on the touch sensing surface is optionally characterized relative to one or more intensity thresholds, such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to the intensity at which the device will perform an operation typically associated with pressing a button of a physical mouse or clicking a trackpad. In some embodiments, the deep press intensity threshold corresponds to the intensity at which the device will perform an operation different from the operation typically associated with pressing a button of a physical mouse or clicking a trackpad. In some embodiments, if a contact is detected with a characteristic intensity below the light press intensity threshold (e.g., and above a slight contact detection intensity threshold below which the contact is no longer detected), the device will move the focus selector as the contact on the touch sensing surface moves, without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally, unless otherwise specified, these intensity thresholds are consistent across different sets of user interface figures.

[0220] An increase in the characteristic strength of a contact from a strength below a light pressing strength threshold to a strength between the light pressing strength threshold and a deep pressing strength threshold may be referred to as a "light press" input. An increase in the characteristic strength of a contact from a strength below a deep pressing strength threshold to a strength above the deep pressing strength threshold may be referred to as a "deep press" input. An increase in the characteristic strength of a contact from a strength below a contact detection strength threshold to a strength between the contact detection strength threshold and the light pressing strength threshold may be referred to as the detection of a contact on the touch surface. A decrease in the characteristic strength of a contact from a strength above the contact detection strength threshold to a strength below the contact detection strength threshold may be referred to as the detection of a lift-off of the contact from the touch surface. In some embodiments, the contact detection strength threshold is zero. In some embodiments, the contact detection strength threshold is greater than zero.

[0221] In some embodiments described herein, one or more operations are performed in response to detecting a gesture that includes respective pressing inputs, or in response to detecting respective pressing inputs that are performed at respective contacts (or a plurality of contacts), and those respective pressing inputs are detected based at least in part on detecting an increase in the strength of a contact (or a plurality of contacts) above a pressing input strength threshold. In some embodiments, each operation is performed in response to detecting an increase in the strength of a respective contact (e.g., the "downstroke" of a respective pressing input) above a pressing input strength threshold. In some embodiments, a pressing input includes an increase in the strength of a respective contact above a pressing input strength threshold and a subsequent decrease in the strength of the contact below the pressing input strength threshold, and each operation is performed in response to detecting a subsequent decrease in the strength of a respective contact (e.g., the "upstroke" of a respective pressing input) below the pressing input threshold.

[0222] Figures 5E through 5H show, in Figure 5E, from a strength below a light pressing strength threshold (e.g., "IT L "), to, in Figure 5H, a deep pressing strength threshold (e.g., "IT Dshows detection of a gesture that includes a pressing input corresponding to an increase in the intensity of contact 562 to an intensity exceeding 」). The gesture performed with contact 562 is detected on the touch sensing surface 560 while a cursor 576 is displayed on the application icon 572B corresponding to App2 on the displayed user interface 570, which includes application icons 572A - 572D of the applications displayed within the defined region 574. In some embodiments, the gesture is detected on the touch sensing display 504. The intensity sensor detects the intensity of the contact on the touch sensing surface 560. The device determines that the intensity of the contact 562 exceeds a deep - press intensity threshold (e.g., 「IT D 」). The contact 562 is maintained on the touch sensing surface 560. In response to detecting the gesture, reduced representations 578A - 578C (e.g., thumbnails) of the most recently opened documents for App2 are displayed as shown in FIGS. 5F - 5H in response to contact 562 having an intensity exceeding a deep - press intensity threshold (e.g., 「IT D 」) during the gesture. In some embodiments, the intensity compared to one or more intensity thresholds is the characteristic intensity of the contact. It should be noted that the intensity plot for contact 562 is included in FIGS. 5E - 5H to assist the reader and is not part of the displayed user interface.

[0223] In some embodiments, the display of representations 578A - 578C includes an animation. For example, representation 578A is initially displayed proximate to application icon 572B as shown in FIG. 5F. As the animation progresses as shown in FIG. 5G, representation 578A moves upward and representation 578B is displayed proximate to application icon 572B. Subsequently, as shown in FIG. 5H, representation 578A moves upward, representation 578B moves upward towards representation 578A, and representation 578C is displayed proximate to application icon 572B. Representations 578A - 578C form an array on icon 572B. In some embodiments, as shown in FIGS. 5F - 5G, the animation progresses according to contact strength 562, and representations 578A - 578C appear and move upward as contact strength 562 increases towards a deep - press strength threshold (e.g., " D IT

[0224] "). In some embodiments, the strength based on the animation progress is the characteristic strength of the contact. The operations described with reference to FIGS. 5E - 5H can be performed using an electronic device similar to device 100, device 300, or device 500.In some embodiments, the device employs intensity hysteresis to avoid spurious inputs sometimes referred to as "jitter", and the device defines or selects a hysteresis intensity threshold having a defined relationship to the press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable ratio of the press input intensity threshold). Thus, in some embodiments, a press input includes an increase in the intensity of each contact above the press input intensity threshold and a subsequent decrease in the intensity of the contact below the hysteresis intensity threshold corresponding to the press input intensity threshold, and each operation is performed in response to detecting a subsequent decrease in the intensity of each contact below its hysteresis intensity threshold (e.g., the "upstroke" of each press input). Similarly, in some embodiments, a press input is detected only if the device detects an increase in the intensity of a contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and each operation is performed in response to detecting that press input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, depending on the situation).

[0225] For ease of explanation, the description of an operation performed in response to a press input associated with or including such press input in a gesture is optionally triggered in response to detecting any of an increase in the intensity of a contact above the press input intensity threshold, an increase in the intensity of a contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, a decrease in the intensity of a contact below the press input intensity threshold, and / or a decrease in the intensity of a contact below the hysteresis intensity threshold corresponding to the press input intensity threshold. Additionally, in examples described as performing an operation in response to detecting a decrease in the intensity of a contact below the press input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of a contact below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold.

[0226] As used herein, an "installed application" refers to a software application that has been downloaded onto an electronic device (e.g., device 100, device 300, and / or device 500) and is in a state where it can be launched (e.g., opened) on the device. In some embodiments, the downloaded application becomes an installed application through an installation program that extracts the program portion from the downloaded package and integrates the extracted portion with the operating system of the computer system.

[0227] As used herein, the terms "opened application" or "executing application" refer to a software application for which state information is maintained (e.g., as part of device / global internal state 157 and / or application internal state 192). An opened or executing application is optionally any one of the following types of applications. ● An active application that is currently displayed on the display screen of the device on which the application is being used, and ● A background application (or background process) for which one or more processes of the application are being processed by one or more processors, although it is not currently displayed, and ● A stopped or suspended application that is not being executed but has state information stored in memory (both volatile and non-volatile) and can be used to resume execution of the application.

[0228] As used herein, the term "closed application" refers to a software application in which state information is not retained (e.g., state information regarding the closed application is not stored in the device's memory). Thus, closing an application includes terminating the application process of the application and / or removing it from the device's memory, as well as removing the application state information from the device's memory. Generally, opening a second application during a first application does not cause the first application to be closed. When the second application is displayed and the display of the first application ends, the first application becomes a background application. Overview of the System

[0229] FIG. 6 shows an exemplary system 600 for collecting wellness data and other types of data. Wellness data can include, but is not limited to, any type of data associated with a person's health, such as physical activity data, training data, weight, heart rate, blood pressure, blood glucose level, medication compliance, etc. System 600 can be used to collect wellness data associated with a user, store the wellness data, present the wellness data in a useful manner to the user, and selectively share the user's wellness data with other users or entities based on permissions set by the user. Additionally, in some embodiments, system 600 can be further used to collect non-wellness data associated with the wellness data, associate the non-wellness data with the wellness data, and display the non-wellness data together with the wellness data.

[0230] System 600 may include one or more user devices 610, which may include any type of electronic device such as a mobile phone, tablet computer, desktop computer, laptop computer, PDA, etc. In some embodiments, user device 610 may include a device similar to device 100, device 300, or device 500 as described above. User device 610 includes an operating system and a wellness database 611 (e.g., memory 102, memory 370, or memory 518) for securely storing wellness data or non-wellness data along with associated metadata such as the time the data was recorded, the type of data, the device used to record the data, the user associated with the data, etc. User device 610 may further include an application programming interface (API) with access control for storing data in wellness database 611 and accessing data stored in wellness database 611.

[0231] The user device 610 can be configured to receive wellness data or non-wellness data from various sources and can store the received data in the wellness database 611. For example, the user device 610 can be configured to receive wellness data or non-wellness data from sensors 602, 604, 606, and 608. These sensors can include any type of sensor capable of acquiring wellness data, such as biosensors, activity trackers, and the like. For example, sensors 602, 604, 606, and 608 can include, but are not limited to, scales, blood pressure cuffs, blood glucose monitors, electrocardiograms, step counters, gyroscopes, accelerometers, SpO2 sensors, respiratory sensors, posture sensors, stress sensors, photoplethysmograms, galvanic skin response sensors, temperature sensors, and the like. Sensors 602, 604, 606, and 608 can also include other types of sensors for acquiring non-wellness data, such as audio sensors, ambient light sensors, electromagnetic sensors, touch sensors, capacitance sensors, and the like, such as situation data, temporary data, personal data, contact data, and the like. In some embodiments, each sensor can be an individual device, while in other embodiments, any combination of two or more sensors can be included within a single device. For example, a gyroscope, an accelerometer, a photoplethysmogram, a galvanic skin response sensor, and a temperature sensor can be included within a wearable electronic device such as a smartwatch, while a scale, a blood pressure cuff, a blood glucose monitor, an SpO2 sensor, a respiratory sensor, a posture sensor, a stress sensor, and an asthma inhaler can each be an individual device. While specific examples are provided, it should be understood that other sensors can be used and other combinations of sensors can be combined within a single device.

[0232] Sensors 602, 604, 606, and 608 can be used to measure wellness data or non-wellness data continuously, intermittently, periodically, or at any other desired frequency or time interval. For example, sensors 602, 604, 606, and 608 can be used to obtain a single measurement or multiple measurements over a period of time. Sensors 602, 604, 606, and 608 can be configured to measure wellness data or non-wellness data at the same time intervals, or can be configured to measure wellness data or non-wellness data at different time intervals. These intervals may be set by the user or may be default settings for each sensor. Additionally, sensors 602, 604, 606, 608 can be used to measure wellness data or non-wellness data at any time or location desired by the user. Further, sensors 602, 604, 606, and 608 can be used with or without the monitoring of a healthcare provider. For example, a user can use sensors 602, 604, 606, and 608 to obtain sensor measurements at home without the monitoring of a medical professional.

[0233] In some embodiments, the user device 610 interfaces with sensors and includes software sensor applications 613 (e.g., third - party applications) associated with each of sensors 602, 604, 606, and 608 to receive wellness data or non - wellness data on the user device 610. In these embodiments, the application 613 may use the device's API to store wellness data or non - wellness data in the wellness database 611 of the user device 610. In some embodiments, the device 610 can be a smartphone, a tablet computer, etc., and the software sensor application 613 may include software applications downloadable on the device 610. It should be understood that "third - party" can correspond to an entity different from the manufacturer of the device 610 and / or an entity that created and / or maintains the operating system of the device 610. In these examples, the third - party applications and their corresponding sensors can communicate and function within the operating system of the device 610 according to a defined device protocol associated with the device 610.

[0234] The application 613 can similarly use the device's API to access data stored in the wellness database 611. In other embodiments, the user device 610 is configured to share one or more communication formats with sensors 602, 604, 606, and 608 to receive and understand wellness data or non - wellness data from the sensors on the user device 610. The received data can then be stored in the wellness database 611 of the user device 610.

[0235] The user device 610 can further receive wellness data or non-wellness data from its own wellness data or non-wellness data sensors 620 (e.g., sensor 168, sensor 359, and sensor 520), from a user interacting with the user device 610, from another entity such as a physician, or from other non-sensor sources. For example, using the device's API, wellness data or non-wellness data can be received from applications 617 (third-party applications or first-party applications) on the user device 610 such as a clock application, a calendar application, a game application, an application from a healthcare provider, a messaging application, a physical activity application, a training application, etc. Wellness data or non-wellness data from application 617 can be derived from sensor 620, a user interacting with the application, a remote database (e.g., a database for a medical website), a healthcare provider association (e.g., via the association's application 617), etc.In these embodiments, the use of the application 617 (e.g., the time the user played in a video game application, when the user played a video game, the number of interactions in a stock application, the number of interactions in a social networking application, the length of time of interaction in a social networking application, etc.), the use of the user device 610 (e.g., the length of call time or the number of text messages sent as determined from a phone payment application, the time spent browsing the Internet as determined from the device's browser, etc.), the time spent listening to music as determined from a music or streaming radio application, the time spent using a remote application for controlling a television, the time or payment amount spent on a shopping website, weather data from a weather application (e.g., for determining how the weather affects the user's health), the types of events occurring in the user's life as determined from a calendar (e.g., meetings, birthdays, holidays, etc.), the interactions with specific people as determined from a contact list and / or a calendar application and / or a messaging application and / or the phone of the user device 610, etc., can be received by the user device 610 and stored in the wellness database 611.

[0236] In some embodiments, default settings, or settings selected by the user, may be provided, and access to the wellness database 611 of the user device 610 (for both storage and retrieval purposes), and to the sensor data generated by the sensors 620 within the user device 610, and / or to the sensor data generated by the sensors 602, 604, 606, and 608, is restricted for at least one application (e.g., at least one of application 613 and application 617) on the user device 610. For example, an application for tracking a user's running session may be permitted access to data generated by the GPS sensor of the user device 610, but may be prevented from accessing the user's blood pressure data stored in the wellness database 611. In some embodiments, entities other than the owner of the user device 610 may set permission settings for various applications on the user device 610. For example, the manufacturer of the user device 610, and / or the entity that created and / or maintains the operating system of the user device 610, may evaluate the application and determine whether to permit access to the user's wellness data and / or sensor data generated or received by the user device 610. In some embodiments, these settings may be overridden by the user. The user device 610 may further include a display for displaying stored wellness data or non-wellness data.

[0237] FIG. 7 shows a system 700 for sharing user wellness data. System 700 may include a user server 714 communicatively coupled to a user device 610 via a network 712 that may include the Internet, an intranet, or any other wired or wireless, public or private network. The user device 610 may be configured to securely transmit to the user server 714 the collected wellness data or non-wellness data and associated metadata stored on the device for storage within a user database 716. In some embodiments, the wellness data or non-wellness data and associated metadata may be transmitted to the user server 714 for storage within the user database 716 in response to an explicit request for such transmission by the user of the device 610, while in other embodiments, the wellness data or non-wellness data may be synchronized with the data within the user database 716 continuously, periodically, intermittently, or at any desired frequency. In still other embodiments, the user's wellness data or non-wellness data may be stored only on the user device 610 and need not be stored in an external database.

[0238] In some embodiments, the user server 714 and the user database 716 may be configured to securely store the user's wellness data or non-wellness data using a public / private key system that permits data decryption only to the owner of the wellness data or non-wellness data. Additionally, the wellness data or non-wellness data stored within the user database 716 may be stored anonymously (e.g., without identification and / or personal information about the user such as official name data, username data, time data, and location data, etc.). In this way, other users, hackers, and the owner / operator of the user database 716 cannot discern the identification information of the user associated with the data stored within the database 716. In some embodiments, the user may access their wellness data or non-wellness data stored within the user database 716 from a user device different from the one used to upload the wellness data or non-wellness data to the user server 714. In these examples, the user may need to provide login credentials to access their wellness data or non-wellness data. The user server 714 may be configured to perform an authorization process to restrict access to the data within the user database 716.

[0239] System 700 may further include any number of other user devices 722 and user device 724 connected to network 712. In some embodiments, user devices 722 and user device 724 may be operated by the same user as the user of user device 610. In these examples, the user may access their wellness data or non-wellness data stored in user database 716 by providing appropriate credentials to user server 714. In some embodiments, the wellness data and non-wellness data may be synchronized between user database 716 and one or more of user device 610, user device 722, and user device 724. In other embodiments, the users of user devices 722 and user device 724 may be different persons than the user of user device 610. In these embodiments, the users of devices 722 and 724 may not access the wellness data or non-wellness data of the user of user device 610 without the permission of the user of user device 610. When permission is granted, the wellness data or non-wellness data may be shared with the users of user devices 722 and user device 724.

[0240] In some embodiments, any of the above-described sources of wellness data or non-wellness data may be configured to measure, generate, or receive wellness data or non-wellness data continuously, intermittently, periodically, or at any other desired frequency or time interval. As such, the wellness data or non-wellness data may be similarly stored or updated in wellness database 611 or user database 716 continuously, intermittently, periodically, or at any other desired frequency or time interval. The frequency and length of time used to measure, generate, receive, or store wellness or non-wellness data may be the same or different. Additionally, these frequencies and intervals may be default values or may be set by the user to provide updated wellness data or non-wellness data within a desired length of time.

[0241] Although not shown, it should be understood that many other user devices can be connected to the user server 714 through the network 712 to collect and store wellness data or non-wellness data for other users in a manner similar to the above. Activity monitor

[0242] FIG. 8 shows an exemplary interface 800 for displaying an application menu on an electronic device such as device 100, device 300, device 500, or device 610. As shown, interface 800 includes a plurality of application icons 802 that, when selected by the user, cause the associated application to be opened on the electronic device. For example, in response to a user selection of an application icon 802 corresponding to an application for monitoring the user's physical activity, an interface similar to interface 900 shown in FIG. 9 may be displayed. As shown, interface 900 may include an explanation of the physical activity application and a page indicator 902 indicating that the page is viewable. In response to a user selection for viewing another page, such as a swipe gesture from the right to the left of the display, interface 1000 shown in FIG. 10 may be displayed. As shown, interface 1000 may include an explanation of the first goal of the physical activity application and the page indicator 902. In response to a user selection for viewing another page, such as a swipe gesture from the right to the left of the display, interface 1100 shown in FIG. 11 may be displayed. As shown, interface 1100 may include an explanation of the second goal of the physical activity application and the page indicator 902. In response to a user selection for viewing another page, such as a swipe gesture from the right to the left of the display, interface 1200 shown in FIG. 12 may be displayed. As shown, interface 1200 may include an explanation of the third goal of the physical activity application and the page indicator 902. In response to a user selection for viewing another page, such as a swipe gesture from the right to the left of the display, interface 1300 shown in FIG. 13 may be displayed. As shown, interface 1300 may include a summary explanation of the three goals of the physical activity application and the page indicator 902.

[0243] In some embodiments, in response to a user selection of the "Get Started" option of interface 1300, an interface similar to interface 1400 shown in FIG. 14 may be displayed. As shown, interface 1400 may include selectable attribute elements 1402 for entering various user attributes such as the user's gender, age, weight, and height. In response to the selection of any of the elements 1402, the electronic device may display an interface that enables the user to enter a desired attribute value. The interface may include any type of input mechanism such as a text box, a list of values, a pull-down menu, etc. In response to the user entering a specific attribute value, the electronic device may store the entered information in the device's memory and / or in a remote database.

[0244] In some embodiments, the interfaces shown in FIGS. 9-13 may be displayed each time the physical activity application is opened. In other embodiments, the interfaces shown in FIGS. 9-13 may be displayed only when the physical activity application is first opened. In some embodiments, the electronic device may determine whether user attributes (e.g., gender, age, weight, and height) are available on the electronic device or an accessible remote database before displaying interface 1400. If it is determined that the user attributes are available, the electronic device may not need to display interface 1400. Instead, if it is determined that some or all of the user attributes are not available, the electronic device may display interface 1400. Since the electronic device may store the user attributes entered using interface 1400, interface 1400 may be displayed only when the physical activity application is first opened.

[0245] In some embodiments, after some or all of the interfaces shown in FIGS. 9-13 are displayed (or, if the interfaces shown in FIGS. 9-13 are not displayed, immediately after interface 800 is displayed), the electronic device may execute process 1500 shown in FIG. 15 to generate and update a physical activity tracking interface. Process 1500 may be executed using a device similar to device 100, device 300, device 500, or device 610, detecting an operation associated with the device, recognizing that the operation is associated with a physical activity performed by a user using the device, monitoring various attributes of the detected physical activity, and displaying one or more attributes of the physical activity on a display of the device. Some operations of process 1500 may be combined, some operations may be reordered, and some operations may be omitted.

[0246] As described below, process 1500 provides an intuitive way to monitor attributes of a user's physical activity or inactivity and generate a user interface for displaying the attributes of the user's physical activity or inactivity. This process reduces the user's cognitive load when monitoring the attributes of the user's physical activity or inactivity and creates a more efficient human-machine interface. For battery-operated computing devices, the user can monitor the attributes of the user's physical activity or inactivity faster and more efficiently and generate a user interface for displaying the attributes of the user's physical activity or inactivity, thereby saving power and extending the time until the battery needs to be charged.

[0247] In block 1502, one or more processors of the device may cause a display of a physical activity tracking interface on the device's display. The physical activity tracking interface may include any number of indicators representing any number of monitored attributes of the user's physical activity. The indicators of the physical activity tracking interface may be updated in real time in response to updates to the values of the monitored attributes of the physical activity. In this way, the device's display may provide real-time information about the user's monitored physical activity. The indicators may include text, images, or combinations thereof. For example, an animated image may be used to indicate progress, or the state of a monitored attribute may change. In some embodiments, block 1502 further includes displaying additional indicators for providing further information about the monitored attributes, such as a goal value for each of the monitored values, a progress measurement of the monitored value compared to each goal value, etc., and automatically adjusting the goal value based on the passage of time (e.g., adjusted stepwise to increase a percentage over time, such as 10% of the total morning goal value, etc.), the history of past physical activity (e.g., over one month, one week, two days, yesterday, highest / lowest, or daily average, etc.), any of the above information associated with other users (e.g., highest / lowest, or daily average amount of physical activity performed by other users different from the user of the device), etc. Information associated with other users wearing devices other than the device executing process 1500 may be collected through an external server configured to communicate with such devices. Figures 17-21, described in further detail below, show exemplary physical activity tracking interfaces that may be displayed at block 1502 of process 1500.

[0248] At block 1504, one or more processors of the device may receive activity data from an activity sensor that represents the user's sensed physical activity (e.g., sensor 168, sensor 359, and sensor 520). At block 1506, the one or more processors may process the received activity data and determine whether the activity data indicates that the physical activity was performed by the user of the device, as opposed to a gesture. In some embodiments, the occurrence of physical activity by the user may be determined by analyzing the activity data and determining whether the activity data reflects one or more characteristics associated with a user who performs physical activity while wearing the device. Such characteristics may include a minimum displacement amount per unit time, speed, rate of change of body temperature, etc.

[0249] After determining that body activity has been performed by the user, the processor(s) may determine the type of detected body activity at block 1508. This determination may be based at least on the activity data and a set of predetermined criteria for a particular type of activity. The device may classify the detected body activity into any number of classifications (e.g., one or more) and monitor different attributes for each classification. For example, the device may classify the detected body activity of the device's user into two classifications, namely, a first type and a second type. In some embodiments, the first type of body activity may refer to all detected body activity of the device's user. The second type of body activity may refer to body activity that meets certain required conditions, which may include, for example, having an activity intensity above a threshold intensity. Alternatively, the second type of body activity may refer to body activity having an intensity below the threshold intensity. The threshold intensity may be expressed as, for example, the distance traveled, the number of calories burned, the number of steps taken, any one or more of these attributes calculated per unit time, etc. In some embodiments, the device may adjust the threshold for one or more classifications of the activity based on the identified type of detected body activity. For example, the device may classify the activity as being of the second type if it has an activity intensity above the threshold intensity (e.g., high intensity, intensity corresponding to walking fast, etc.). This threshold intensity may vary depending on whether the detected activity is a walking activity (in which case the threshold may be expressed as the minimum number of steps taken per unit time), a running activity (in which case the threshold may be expressed as the minimum distance traveled per unit time), or any other type of activity (in which case the threshold may be expressed as the minimum number of calories burned per unit time). It should be understood that conditions other than intensity level, such as the time(s) of day when the body activity was detected (e.g., a classification for morning activity, a different classification for daytime activity, or a different classification for evening activity, etc.), a predetermined type(s) of body activity (e.g., a classification for standing activity, walking activity, running activity, etc.), etc., may be used to classify the body activity.One or more conditions can be used alone or in combination to define a classification or type of physical activity.

[0250] In some examples, the first type of activity may refer to activities that meet a first set of criteria, the second type of activity may refer to activities that meet a second set of criteria, the third type of activity may refer to activities that meet a third set of criteria, and so on. In the determination process, the processor(s) of the device may determine whether the associated physical activity meets the first set of criteria, the second set of criteria, and / or the third set of criteria (or other set of criteria) as indicated by the activity data. The criteria may include any information detectable by the activity sensor, such as a speed above a threshold, a minimum number of steps taken per unit of time, a minimum amount of calories burned per unit of time, etc. In some examples, different sets of criteria may be nested such that the third type of activity is a subset of the second type, which may be a subset of the first type. In other examples, different sets of criteria may mutually exclude each type of activity. In yet other examples, different sets of criteria may partially overlap each type of activity.

[0251] In some embodiments, the processor(s) may classify a user's activity as being of a first type that represents all forms of physical activity, or as being of a second type that represents physical activity at or above (alternatively, below) a threshold intensity. In such cases, the first set of criteria for the first type may simply require that the activity be physical activity (as opposed to a gesture), and the second set of criteria for the second type may require that the activity have an intensity at or above (alternatively, below) the threshold intensity. Intensity may be measured using any number of attributes of the activity, including but not limited to distance traveled, speed, number of calories burned, number of steps taken, one or more of these attributes calculated per unit time, etc. Intensity may also be associated with biological conditions detectable by a biosensor, including but not limited to heart rate, heat, or rate of change in any of the foregoing conditions, etc. In some embodiments, the threshold intensity of the second set of criteria may correspond to walking briskly, or to the intensity of a 3 metabolic equivalent of tasks (MET) task. According to the Centers for Disease Control and Prevention (CDC), walking briskly is walking at 3 to 3.5 miles per hour, or at approximately 20 minutes per mile. This corresponds to approximately 5 kilometers per hour, or 12 minutes per kilometer. Although exemplary types of physical activity have been provided above, it should be understood that other types of physical activity may be used (e.g., standing, running, climbing, etc.).

[0252] In some embodiments, the criteria used by the device to determine the type(s) of activity may be pre-set within the device. In other embodiments, the criteria may be directly input by the user so that the user can customize the activities that are monitored separately from others. In still other embodiments, the criteria may be automatically calculated by the device based on the user's health information. The user's health information may be input by the user and may refer to the user's age, weight, gender, body mass index (BMI), average heart rate, average blood pressure, etc. Alternatively, the user's health information may be stored in an external device configured to communicate with the device, enabling the device to receive the data and generate customized criteria for the device's user. In other embodiments, the external device may determine customized criteria for the device's user and transmit the determined criteria to the device.

[0253] At block 1510, the processor(s) may update the monitored attributes of the detected physical activity. The monitored attributes of the detected activity may be represented in any standard, arbitrary, or other unit of measurement, such as calories burned, time spent, distance traveled, number of steps, etc. The monitored attributes of different types of physical activity may be the same or different. Additionally, the monitored attributes may be stored as values in a memory or storage device, and updating the monitored attributes at block 1510 may include updating these stored values. For example, if the detected operation of the device corresponds to a first type of physical activity and not any other type, the stored value representing the total amount of the first type of activity may be updated at block 1510, and other stored values representing other types of activity may not need to be updated. The update process may be executed in real time in response to detecting any new physical activity to the extent that the detected physical activity has the attributes being monitored by the device.

[0254] Blocks 1502, 1504, 1506, 1508, and 1510 may be repeated any number of times and at any desired time intervals to detect a user's physical activity and, accordingly, update the display of the physical activity tracking interface. Additionally, while blocks 1502, 1504, 1506, 1508, and 1510 are shown in a particular order, it should be understood that blocks 1502, 1504, 1506, 1508, and 1510 may be executed in any order or simultaneously, or some of the blocks may be omitted. For example, the physical activity tracking interface may be repeatedly updated at block 1502, while activity data is received at block 1504 and processed at blocks 1506, 1508, and 1510 to update the monitored attributes to provide the user with current or real-time physical activity information. In another example, while the physical activity application is running in the background of the device or while the device display is inactive, block 1502 may be omitted and blocks 1504, 1506, 1508, and 1510 may be repeated to monitor the user's physical activity, update the monitored attributes, and, when the physical activity application is resumed or the device display becomes active, provide the user with an accurate display of the attributes at a later time.

[0255] Note that the details of the process (e.g., FIG. 15) described above with respect to method 1500 are also applicable in a similar manner to the methods described below. For example, method 1600, method 2200, method 2400, method 4000, method 4800, method 7900, method 8600, and method 9200 may include one or more of the various method characteristics described above with reference to method 1500. For example, the activity data, activity types, displayed values, and other elements described above with reference to method 1500 may optionally have one or more of the characteristics of the activity data, activity types, displayed values, and other elements described herein (e.g., method 1600, method 2200, method 2400, method 4000, method 4800, method 7900, method 8600, and method 9200). For the sake of brevity, these details are not repeated below.

[0256] FIG. 16 shows an exemplary process 1600 for determining a type of physical activity and updating a monitored attribute of the type of physical activity. Process 1600 may be executed using a device similar to device 100, device 300, device 500, or device 610, and may be used to execute blocks 1604, 1608, and 1612 of process 1600. In the example shown here, process 1600 may be used to determine whether a physical activity corresponds to a type of physical activity, i.e., one or both of a first type and a second type. The first type of physical activity may be a physical activity that meets a first set of criteria, and the second type of physical activity may be a physical activity that meets a second set of criteria. In some embodiments, the first type of activity may be a physical activity detectable by the device, and the second type of activity may be a physical activity having an intensity above a threshold intensity. Some of the operations of process 1600 may be combined, some may be reordered, and some may be omitted.

[0257] As described below, process 1600 provides an intuitive way to monitor the attributes of a user's physical activity or inactivity and generate a user interface for displaying the attributes of the user's physical activity or inactivity. This process reduces the user's cognitive load when monitoring the attributes of the user's physical activity or inactivity and creates a more efficient human-machine interface. For battery-operated computing devices, the user can monitor the attributes of the user's physical activity or inactivity faster and more efficiently, and generate a user interface for displaying the attributes of the user's physical activity or inactivity, thereby saving power and extending the time until the battery needs to be recharged.

[0258] At block 1602, the activity data received at block 1504 of process 1500 can be used to determine whether the physical activity represented by this activity data corresponds to a first type, based on a set of predetermined first criteria. This can include determining whether the physical activity meets each of the criteria in the set of first criteria. For example, the set of first criteria may simply require that the physical activity is a certain physical activity (as opposed to a gesture). In this embodiment, block 1602 may include determining whether the activity data represents physical activity rather than a gesture. If it is determined that the physical activity represented by the activity data meets the set of first criteria, process 1600 may proceed to block 1604. Alternatively, if at block 1602 it is determined that the physical activity represented by the activity data does not meet the set of first criteria, process 1600 may bypass the update of the first value at block 1604.

[0259] At block 1604, a first value representing an attribute of a first type of activity can be updated. The attribute can include any desired attribute, such as the amount of activity, intensity level, duration, progress towards a set value, trend over a time period, etc. For example, the first value can represent the total amount of active and / or sedentary calories consumed by the user during the performance of a first type of activity over a predetermined period (e.g., one day). In this example, the update process executed at block 1604 can include adding to the previously stored first value (representing the previously measured calories consumed by the user) a value calculated from activity data representing the amount of calories consumed by the user during the most recently detected physical activity.

[0260] Before, during, and after executing blocks 1602 and 1604, block 1606 can be executed to determine whether the physical activity represented by this activity data corresponds to a second type based on a predetermined set of second criteria. Block 1606 can be similar to block 1602, except that block 1606 can include determining whether the physical activity meets each criterion of the set of second criteria. In some embodiments, the set of second criteria can mutually exclude the second type of physical activity from the first type of physical activity. In other embodiments, the set of second criteria can partially overlap the second type of physical activity with the first type of physical activity. In still other embodiments, the set of second criteria includes the set of first criteria such that the second type of physical activity can be a subset of the first type of physical activity. For example, the set of second criteria can require that the physical activity has an intensity above a threshold intensity (e.g., 3 MET, a threshold movement speed of 3.5 miles per hour, or walking briskly, etc.). In this embodiment, block 1606 can include determining whether the activity data represents a user moving at a speed of 3.5 miles per hour or more. When it is determined that the physical activity represented by the activity data meets the set of second criteria, process 1600 can proceed to block 1608. Alternatively, if at block 1606 it is determined that the physical activity represented by the activity data does not meet the set of second criteria, process 1600 can bypass the update of the second value at block 1608.

[0261] At block 1608, a second value representing an attribute of a second type of activity may be updated. The attribute may include any desired attribute such as the amount of activity, intensity level, duration, progress towards a set value, trend over a time period, etc. For example, the second value may represent the duration that a user has been performing a second type of activity over a predetermined period (e.g., one day). In this example, the update process executed at block 1608 may include adding to the previously stored second value (representing the previously measured duration that the user was performing a second type of activity) a value calculated from activity data representing the duration that the user was engaged in the second type of activity while performing the most recently detected physical activity.

[0262] The attributes monitored and updated for each type of activity may be the same or different. For example, the monitored attribute for both a first type of activity and a second type of activity may be the calories consumed. Alternatively, the monitored attribute for the first type of activity may be the calories consumed, while the monitored attribute for the second type of activity may be the duration of performing the second type of activity. In addition, the periods during which the first type of activity and the second type of activity are monitored may be the same or different. For example, if different periods are used, the amount of a first type of physical activity may be collected over one day, while the amount of a second type of physical activity may be collected over two days. It should be understood that many other different periods may be used to monitor each of the attributes.

[0263] In some embodiments, process 1600 may include an additional determination path (e.g., a third determination path represented by the dotted path added to blocks 1610 and 1612) to determine whether the physical activity corresponds to other types of activities. For example, block 1610 may be executed before, during, or after executing blocks 1602, 1604, 1606, and / or 1608, and may include determining whether the physical activity represented by the activity data corresponds to a third type based on a predetermined set of third criteria. In some embodiments, the set of third criteria may include both the set of first criteria and the set of second criteria, and may make the third type of physical activity a subset of the second type and a subset of the first type of physical activity. In other embodiments, the set of third criteria may only partially overlap with the set of second criteria and / or the set of first criteria, or may be entirely mutually exclusive with respect to both or either set. For example, the set of first criteria, the set of second criteria, and the set of third criteria may be configured such that the first type includes physical activities that are detectable by the device (and recognizable as physical activities rather than gestures), the second type includes only physical activities having an intensity equal to or greater than a first threshold intensity (or activities where the user is standing), and the third type includes only physical activities having an intensity less than a second threshold intensity. It should be understood that there may be many other ways to configure the criteria.

[0264] While FIG. 16 shows the detection of only three types of activities, it should be understood that process 1600 can be used to determine any number of types of physical activities and update the monitored attributes for these types of physical activities. For example, process 1600 can continue to determine whether the physical activity corresponds to a fourth type, a fifth type, a sixth type, etc., and each of their respective update processes can follow, similar to the processes of the illustrated embodiments. Additionally, while each block of process 1600 is shown and described in a particular order, it should be understood that each block can be executed in other orders or simultaneously. For example, the activity data can be used at each of block 1602, block 1606, and block 1610, simultaneously or in any sequential order, to determine whether the physical activity corresponds to a first type, a second type, and a third type.

[0265] Referring back to FIG. 15, after performing process 1600 at blocks 1508 and 1510, process 1500 may return to block 1502. At block 1502, the processor(s) may cause an updated display of indicators representing each of the monitored values, e.g., a first value, a second value, and a third value (if present), on the device's display. In some embodiments, the indicators may include a first indicator representing the attributes of only the first value, a second indicator representing the attributes of only the second value, and a third indicator representing the attributes of only the third value. The first indicator, the second indicator, and the third indicator may be displayed simultaneously or alternately on the display. Each of the indicators may include one or more of a graphic image, an animation, text, or other visual representation. In some other embodiments, the indicators may include an acoustic effect, a tactile effect, or any other non-visual effect. Further, one or more of the indicators may be used to alert the user about the occurrence of certain conditions, such as the user's continuous inactivity over a particular length of time, detection of new physical activity, or achievement of a daily goal, etc. These indicators conveniently provide an overview of their physical activity to the user who looks at the indicators.

[0266] Note that the details of the process described above with respect to method 1600 (e.g., FIG. 16) are also applicable in a similar manner to other methods described herein. For example, method 1500, method 2200, method 2400, method 4000, method 4800, method 7900, method 8600, and method 9200 may include one or more of the characteristics of the various methods described above with reference to method 1600. For example, the activity data, activity types, displayed values, and other elements described above with reference to method 1600 may optionally have one or more of the characteristics of the activity data, activity types, displayed values, and other elements described herein (e.g., method 1500, method 2200, method 2400, method 4000, method 4800, method 7900, method 8600, and method 9200). For the sake of brevity, these details are not repeated.

[0267] FIGS. 17-21 show different exemplary interfaces that may be displayed on a device at block 1502 of process 1500. In these examples, the device is assumed to be a daily activity monitor that classifies a user's physical activity into a first type (based on a first set of criteria) and a second type (based on a second set of criteria), and monitors the daily total of each type of the user's activity. The first type may include physical activity detectable by the device (e.g., as opposed to gestures, recognizable as physical activity), and the second type may include physical activity having an intensity above a threshold intensity. While specific exemplary parameters are described below, it should be understood that different parameters may be used to configure the device. For example, the device may monitor the user's activity over different periods (e.g., 5 hours, 6 hours, 12 hours, 48 hours, 1 week, etc.), monitor different numbers (e.g., 1, 3, 4, etc.) of types of activity, and / or monitor different types of activity. Further, the device may monitor attributes other than the total amount for each of the monitored types, such as the average amount over a period, the frequency of the activity, the maximum or minimum amount, etc.

[0268] FIG. 17 shows an exemplary physical activity tracking interface 1700 that may be displayed at block 1502 of process 1500. The interface 1700 can be updated in real time or at any other desired time interval to reflect the current values of the monitored attributes of the user's physical activity that were updated at block 1510 of process 1500. In some embodiments, the interface 1700 refers to blocks 1508 and 1510 of process 1500 as described above, is stored in memory, and is updated in response to detecting any new physical activity, and can reflect values representing the daily total amounts of a first type of physical activity and a second type of physical activity.

[0269] In the embodiment shown in FIG. 17, the interface 1700 may include a first indicator representing the daily total amount of a first type of physical activity that includes all physical activities detected from the user, and a second indicator representing the daily total amount of a second type of activity that includes only physical activities above a threshold intensity. The first indicator may include both a graphic / image representation 1702 and a text representation 1706. Similarly, the second indicator may include both a graphic / image representation 1704 and a text representation 1708. The first indicator and the second indicator can be updated in real time or at any other desired time interval in response to updates to the corresponding values stored in memory as described above with reference to blocks 1508 and 1510 of process 1500.

[0270] In some embodiments, the memory of the device may store a first goal value representing a daily goal amount for a first type, and a second goal value representing a daily goal amount for a second type of physical activity. In some embodiments, the first goal value may be represented in the same measurement metric used to quantify the first type, and the second goal value may be represented in the same measurement metric used to quantify the second type of physical activity. In the embodiments shown herein, the amount of the first type of activity is represented using the amount of calories burned, and thus the numerical value of the first goal value stored in the memory represents the goal amount of calories to be burned by the user each day (e.g., 300 calories, 500 calories, 1000 calories, 2000 calories, etc.). On the other hand, the amount of the second type of activity may be represented using the time spent performing the second type of physical activity, and thus the numerical value of the second goal value stored in the memory represents the goal amount of time to be spent by the user each day performing high-intensity activity (e.g., 30 minutes, 40 minutes, 60 minutes, etc.).

[0271] In some embodiments, when the total amounts of the first type of activity and the second type of activity are updated, one or more processors compare these updated total amounts with each goal value stored in the memory and can cause a display of the result of the comparison on the display. For example, the graphic representation 1702 can represent the first goal value and / or the user's progress towards reaching this goal. The size of the graphic representation 1702 can be scaled such that its size represents the first goal amount, a portion of the graphic representation 1702 can be marked, and this marked portion is made to represent the actual amount of the first type of activity performed by the user. Alternatively, or in addition, the graphic representation 1702 can include a first portion (e.g., portion 1702a) that represents the total amount of the first type of activity (e.g., all activities) performed by the user, and a second portion (e.g., portion 1702b) that represents the difference between the total amount of the first type of activity and the first goal value. In other words, portion 1702a indicates what the user has achieved, and portion 1702b indicates to the user what is needed for them to reach and complete their goal. As shown, the first portion can be given a color or shading different from that of the second portion. In some embodiments, the tip of the completed portion 1702a of the ring can be displayed with a different appearance or texture than the subsequent part of the completed portion 1702a of the ring. For example, the tip of the completed portion 1702a of the ring (e.g., the tip as the completed portion moves in a clockwise direction around the ring) can be displayed in a lighter shade of a certain color, while the subsequent part of the completed portion of the ring can be displayed in a darker shade of the same color. This allows the user to more easily see their progress towards the goal. Additionally, in some embodiments, when the current value of the value represented by portion 1702a exceeds the goal value, the tip of the completed portion 1702a of the ring can continue to move and overlap the previous completed portion of the ring. By using different shades or textures to display the tip, the user can distinguish the tip from the previous completed portion of the ring.Furthermore, the ratio between the size of the first part and the size of the second part can be equal to the ratio between the total amount of the first type of activity performed by the user and the difference between the total amount of the first type of activity performed by the user and the first goal value.

[0272] In some embodiments, the graphic representation 1704 may also represent a second goal value and / or the user's progress towards reaching this goal. The size of the graphic representation 1704 may be scaled such that its size represents the second goal amount, and a portion of the graphic representation 1704 may be marked, with this marked portion representing the actual amount of the second type of activity performed by the user. Alternatively, or in addition, the graphic representation 1704 may include a third portion (e.g., portion 1704a) representing the total amount of the second type of activity (e.g., activity exceeding a threshold intensity) performed by the user, and a fourth portion (e.g., portion 1704b) representing the difference between the total amount of the second type of activity and the second goal value. In other words, portion 1704a indicates what the user has achieved, and portion 1704b indicates to the user what is required for them to reach and complete their goal. In some embodiments, the tip of the completed portion 1704a of the ring may be displayed with a different appearance or texture than the subsequent portion of the completed portion 1704a of the ring. For example, the tip of the completed portion 1704a of the ring (e.g., the tip as the completed portion moves clockwise around the ring) may be displayed in a lighter shade of a color, while the subsequent portion of the completed portion of the ring may be displayed in a darker shade of the same color. This allows the user to more easily see their progress towards the goal. Additionally, in some embodiments, when the current value of the value represented by portion 1704a exceeds the goal value, the tip of the completed portion 1704a of the ring may continue to move and overlap the previous completed portion of the ring. By using different shades or textures to display the tip, the user can distinguish the tip from the previous completed portion of the ring. Further, the ratio between the size of the third portion and the size of the fourth portion may be equal to the ratio between the total amount of the second type of activity performed by the user and the difference between the total amount of the second type of activity performed by the user and the second goal value.

[0273] In the embodiment shown in FIG. 17, the graphic representation 1702 is an outer ring, and the graphic representation 1704 is an inner ring concentric with the outer ring. Each ring has two visually distinguishable parts. The outer ring has a visually distinguishable part 1702a and a visually distinguishable part 1702b, and the inner ring has a visually distinguishable part 1704a and a visually distinguishable part 1704b. These parts can be scaled to visually indicate the relative progress measurements of the total amount of the first type of activity and the second type of activity compared to their respective goal values. In the embodiment shown here, the outer ring 1702 can be scaled such that the total length of its perimeter (1702a + 1702b) represents the daily goal (the first goal value) for all activities. The ring portion 1702a can be configured to represent the actual amount of activity performed by the user (e.g., the first value updated at block 1604), and the second portion 1702b can be configured to represent the amount of remaining activity to be completed by the user to achieve the goal. The sizes of the portion 1702a and the portion 1702b are updated in real time to reflect the most recent progress measurement of the total amount of all activities compared to the first goal value. For example, as additional activity is detected, the size of the portion 1702a can increase, the size of the portion 1702b can decrease, and the tip of the portion 1702a can appear to move clockwise along the outer ring 1702. The ring portion 1702a and the ring portion 1702b can be scaled such that the ratio between the entire circumference of the ring 1702 and the ring portion 1702a is equal to the ratio between the first goal value and the total amount of activity performed by the user.

[0274] Similarly, the inner ring 1704 can be scaled such that its overall perimeter (1704a + 1704b) represents a second goal value (e.g., a daily goal amount for activity exceeding a threshold intensity). The portion 1704a of the ring can represent the actual amount of activity exceeding the threshold intensity performed by the user, while the second portion 1704b can represent the remaining amount of activity exceeding the threshold intensity to be completed by the user to achieve the second goal value. The size of each of portion 1704a and portion 1704b is updated in real-time to reflect the user's most recent progress measurement of the total amount of activity exceeding the threshold intensity compared to the second goal value. For example, as additional activity exceeding the threshold intensity is detected and monitored by the device at blocks 1504, 1506, 1508, and 1510 of process 1500, the size of portion 1704a can increase while the size of portion 1704b can decrease, giving the appearance that the tip of portion 1704a moves clockwise along inner ring 1704. Ring portion 1704a and ring portion 1704b can be scaled such that the ratio between the entire perimeter of ring 1704 and ring portion 1704a is equal to the ratio between the second goal value and the total amount of activity exceeding the threshold intensity performed by the user.

[0275] In the embodiment shown in FIG. 17, the first goal value can be 1000 calories and the second goal value can be 40 minutes. In other words, the user's goal is to burn at least 1000 calories per day, regardless of the type of physical activity performed, and to perform exercise or activities exceeding the threshold intensity for at least 40 minutes per day. The text indicator 1706 indicates that the user has burned a total of 750 calories by 6:15 pm, which is the time indicated by the time indicator 1712. There may be another text indicator for showing the actual value of the first goal, or a text indicator for showing the remaining amount of the first type of activity (e.g., 250 calories in this embodiment) before achieving the first goal. The text indicator 1708 indicates that the user has spent a total of 20 minutes by 6:15 pm doing exercise or performing activities exceeding the threshold intensity. There may be another text indicator for showing the actual value of the second goal, or a text indicator for showing the remaining amount of the second type of activity (e.g., 20 minutes in this embodiment) before achieving the second goal. Since the user has completed 3 / 4 of the first goal for all activities (e.g., burned 750 calories for a 1000-calorie goal), the portion 1702a can be configured to occupy approximately 3 / 4 of the entire circumference of the ring 1702. Similarly, since the user has completed half of the second goal for activities having an intensity above the threshold intensity (e.g., spent 20 minutes for a 40-minute goal), the portion 1704a can be configured to occupy approximately half of the entire circumference of the ring 1704. With further activities or activities having an intensity above the threshold intensity, the portion 1702a / portion 1704a can be animated to increase in size, while the portion 1702b / portion 1704b can be animated to decrease in size.

[0276] With the visual identification parts of ring 1702 and ring 1704, the user of the device can easily recognize the relative progress measurements of the monitored activities. The visual distinction is, in the example shown here, the solid area (e.g., part 1702a and part 1704a) and the hollow area (e.g., part 1702b and part 1704b). However, it should be noted that different effects may be used to create the visual distinction. Examples of such effects include, but are not limited to, applying different colors, color tones, shapes, images, animations, intensities, brightnesses, or other effects of the same kind. Further, as shown in the example, interface 1700 may include text indicator 1706, text indicator 1708, and text indicator 1712. The font, size, and position of the text indicator may vary depending on the display specification and any other desired visual configuration.

[0277] Goal values (e.g., a first goal value and a second goal value) may be directly input by the user of the device before starting the monitor. In other examples, the goal values may be stored in the device or in an external device configured to communicate with the device, and may be automatically set by the device based at least on the user's health data (e.g., received using interface 1400). The health data may include information regarding the user's age, weight, gender, BMI, blood pressure, heart rate, or any other health condition. The device and / or the external device may execute certain computing instructions (e.g., algorithms) on any part of the user's health data to automatically determine the goal values. The goal values may be determined based on the user's progress over a specific period and / or the training level selected by the user. Further, the goal may be recalculated periodically based on the user's achievements over each previous period. An exemplary process that may be used to calculate the goal values is described below with respect to FIG. 96.

[0278] In some embodiments, these can be additional goal values, such as time-based goals, stored in the device's memory, and one or more processors can compare the total amounts of a first type of activity and a second type of activity performed by the user to such goal values and cause a display of the comparison on the display. For example, interface 1700 can further include one or more additional reference indicators that represent supplementary information regarding the user's activity. In the embodiments shown herein, the additional reference indicators are shown as caret 1718 and caret 1728 provided along the ring. Examples of supplementary information that can additionally be provided on the display include, non-exclusively, time-based goals that are adjusted over time (e.g., a particular percentage(s) of a goal scheduled to be completed by a particular time(s) of day, e.g., 10% (scheduled to be completed by 10:00 am), 80% (scheduled to be completed by 9:00 pm), etc., such that indicators move along the ring throughout the day and indicate the percentage of the goal scheduled to be completed as a function of the time of day), the history of the user's past activity (e.g., the activity performed by the user of the device on a particular day of the week, the maximum / minimum or daily average amount of a particular classification of activity performed by the user of the device over a month, a week, two days, yesterday, etc.), activity data of other users different from the user of the device (e.g., the maximum / minimum or daily average amount of a particular classification of activity performed by other users different from the user of the device, the average amount of a particular classification of activity performed by other users at a predetermined time during the day, etc.), etc. An indicator representing information about the total amount of all of the user's activity is provided on ring 1702, and an indicator representing information about the total amount of the user's activity that exceeds a threshold intensity is provided on ring 1704.

[0279] In some embodiments, the device may obtain activity data of other users from an external device configured to communicate with a plurality of monitors that monitor the activities of other users. Examples of information that the device may obtain from an external storage device include, but are not limited to, the maximum / minimum / average amount of activities performed by other users over a specific period, the specific percentile amount of activities performed by other users, an average progress measurement of the amount of activities performed by other users that may be updated over time, etc. In some other embodiments, the device 100 may request to receive data associated only with a specific group of users having common conditions (e.g., health status), as the user of the device 100, or other groups known or unknown to the user.

[0280] Referring to the embodiment of FIG. 17, the caret 1718 provided on the outer ring 1702 may represent a global average progress measurement of the total amount of activities performed by a group of users. Since the caret 1718 is disposed inside the portion 1702a, the user of the device can see that they have burned more calories than other users in the group, on average, by 6:15 pm. Similarly, the caret 1728 may also be provided on the inner ring 1704 and represent a global average progress measurement of the total amount of high-intensity activities performed by a group of users. Since the caret 1728 is disposed outside the portion 1704a, the user of the device can see that other users in the group have spent more than 20 minutes on average exercising or on activities exceeding a threshold intensity by 6:15 pm. Providing such information may motivate the user of the device to engage more in activities and exercise. As described above, the display may display either or both of the indicator 1718 and the indicator 1728.

[0281] The device may display some or all of indicator 1702, indicator 1704, indicator 1706, indicator 1708, indicator 1712, indicator 1718, and indicator 1728. In some embodiments, the device may determine which indicators the display is to show based on signals input by a user of the device. Upon receiving a first input signal, the display may show ring 1702 and ring 1704. Upon receiving a second input signal, the display may further show text 1706 and text 1708. Upon receiving a third input signal, the display may further show reference indicator 1718 and reference indicator 1728, etc. The input signals may be triggered by a user of the device using various input mechanisms of the device, such as pressing a mechanical button of the device, detecting the operation of a rotatable input mechanism, touching the touch-sensitive display of the device, any combination of input mechanisms, etc. In other embodiments, the display may show only indicators related to one of the monitored features, such as the total amount of all activities, and may show indicator 1702, indicator 1706, and indicator 1718. Subsequently, upon receiving a trigger signal from the user of the device, the display may further show indicators related to activities that exceed a threshold intensity. Without departing from the core of the present disclosure, any other variations in the display configuration may be employed.

[0282] In some embodiments, the device may provide a reward to the user of the device when the user achieves one or more goals. Examples of rewards include visual rewards such as animations, lit or flashing graphics, 3D images, lighting effects, badges, etc., alerts, ringtones, music, voice, etc., acoustic rewards, vibrations, or any combination of these rewards, but are not limited thereto. The visual reward may be displayed on an indicator as a composite composition with the desired information (e.g., a small display within a large interface). As used herein, consistent with its meaning as accepted in the prior art, a composite composition may refer to any characteristic of the face of a clock other than those used to indicate hours and minutes of time (e.g., clock hands, or hour / minute indication). The composite composition may provide the user with different types of information, such as data obtained from an application, etc., and the information delivered to the user by the composite composition may be customizable. Alternatively, the indicator itself may be displayed as a composite composition placed on another visual display. For example, the indicator may be displayed within a circular icon displayed on a conventional mobile clock display indicating the date and time. In the embodiment shown in FIG. 17, when completed by the user, rings 1702 and 1704 may begin to light and / or flash. Depending on whether one of rings 1702 and 1704 is completed at additional time, the same visual effect or a different visual effect may be displayed to the user. For example, with each subsequent completion of the ring, a brighter lighting effect or flashing effect may be displayed to the user. Further, in some embodiments, different types of rewards may be used to reward different levels of achievement. When the user achieves the first goal without achieving the second goal (e.g., when ring 1702 is completed without completing ring 1704), the display may provide a first effect. When the user achieves the second goal without achieving the first goal (e.g., when ring 1704 is completed without completing ring 1702), the display may provide a second effect that is the same as or different from the first effect.When the user achieves both the first goal and the second goal (e.g., when both ring 1702 and ring 1704 are completed), the display may provide a third effect that is the same as the first effect and the second effect, or different from the first effect and the second effect. By providing rewards that stimulate feedback to the user, the user of the device can be motivated to engage in further activities and exercises.

[0283] FIG. 18 shows another exemplary physical activity tracking interface 1800 that may be displayed at block 1502 of process 1500. Interface 1800 is similar to interface 1700 except that it uses the same measurement metrics to measure the first type of physical activity and the second type of physical activity. As will be apparent to those skilled in the art, different metrics, non-exclusively, such as time spent, distance traveled, number of steps taken, etc., may be used. In the example shown in FIG. 18, the goal values (e.g., the first goal value and the second goal value) represent both using the same measurement metric, i.e., the amount of calories burned, and have the same numerical value of 1000 calories. However, in other embodiments, the first goal value and the second goal value may have different numerical values.

[0284] In the example shown in FIG. 18, interface 1800 includes a first indicator representing the daily total amount of all activities and a second indicator representing the daily total amount of activities exceeding a threshold intensity. The first indicator includes a graphic representation 1802 and a text representation 1806, each representing the daily total amount of activities performed by the user. The second indicator includes a graphic representation 1804 and a text representation 1808, each representing the daily total amount of activities performed by the same user that exceed the threshold intensity. Optionally, interface 1800 may further include indicator 1818 and indicator 1828. The configuration, function, and possible variations of interface 1800 are similar to those of interface 1700 described with reference to FIG. 17, and thus, duplicate descriptions are omitted herein.

[0285] Similar to the embodiment shown in FIG. 17, the rings 1802 and 1804 are configured to represent respective progress measurements of the total amount of all activities performed by the user compared to a first goal value and the total amount of activities performed by the user that exceed a threshold intensity compared to a second goal value. The indicators 1802 and 1812 indicate that the user has completed 3 / 4 of the daily goal amount (first goal value) for all activities by 6:15 pm. The indicators 1804 and 1812 indicate that the user has completed half of the daily goal amount (second goal value) for activities that exceed the threshold intensity by 6:15 pm. As further activities are detected, the size of portion 1802a can increase and the size of portion 1802b can decrease, and as further activities that exceed the threshold intensity are detected, the size of portion 1804a can increase and the size of portion 1804b can decrease. In a particular embodiment, the ring portions 1802a and 1802b of the ring 1802 can be scaled such that the ratio of the solid portion 1802a to the entire circumference of the ring 1802 matches the ratio of the first goal value to the actual amount of all activities performed by the user. Similarly, the ring portions 1804a and 1804b of the ring 1804 can be scaled such that the ratio of the solid portion 1804a to the entire circumference of the ring 1804 matches the ratio of the second goal value to the actual amount of activities performed by the user that exceed the threshold intensity.

[0286] If the amount of all activities and the amount of activities exceeding the threshold intensity are measured using the same metric unit (e.g., the unit of calories burned), as shown in the embodiments, the user can see how much each type of activity contributes to the others. Referring to FIG. 18, the user can see that in total, 750 calories were burned by 6:15 pm, and 500 of these were burned from exercising or activities exceeding the threshold intensity. Further, as in the case of the embodiment of FIG. 18, if the first goal value and the second goal value are the same (e.g., 1000 calories), when the user achieves the second goal, the user can always achieve the first goal (e.g., complete the outer ring 1802). If the first goal value and the second goal value are different, when the user achieves the second goal, it does not necessarily have to be true that the user automatically achieves the first goal.

[0287] In some embodiments, the amount of one type of activity can be measured using more than one measurement metric. For example, the amount of activities exceeding the threshold intensity can be measured using a first metric and a second metric. In such a case, the display of the device can alternately display an indicator representing the amount measured in the first metric and another indicator representing the amount measured in the second metric. For example, if the activities exceeding the threshold intensity are measured using both the amount of calories burned and the time spent performing the activities, the display can alternately display indicator 1800 and indicator 1700.

[0288] Note that indicators 1700 and 1800, which disclose two concentric rings, are provided merely as examples. As will be apparent to those skilled in the art, many other visual representations, such as, but not limited to, two parallel lines, two vertical bars, two line graphs, adjacent circles, etc., may be used instead. FIGS. 19-21 show such embodiments.

[0289] FIG. 19 shows an exemplary physical activity tracking interface 1900 having two parallel lines that may be displayed at block 1502 of process 1500. In the example shown herein, line 1902 represents an attribute of a first type of activity, such as the total amount of all activities performed by a user of the device, and line 1904 represents an attribute of a second type of activity, such as the total amount of activities performed by the same user that exceed a threshold intensity. Line 1902 has a full length that represents the goal amount (first goal value) of all activities, while the solid portion 1902a may be scaled to represent the actual amount of activities performed by the user. The hollow portion 1902b represents the amount of remaining activities to be performed by the user to achieve the goal. As additional activities are detected, the size of the solid portion 1902a may increase and the size of the hollow portion 1902b may decrease. Similarly, line 1904 has a full length that represents the goal amount (second goal value) for activities that exceed the threshold intensity, while the solid portion 1904a may be scaled to represent the actual amount of activities performed by the user that exceed the threshold intensity. The hollow portion 1904b represents the amount of activities to be performed by the user that exceed the threshold intensity to achieve the goal. As additional activities that exceed the threshold intensity are detected, the size of the solid portion 1904a may increase and the size of the hollow portion 1904b may decrease. Thus, lines 1902 and 1904 may represent progress measurements of the total amount of all activities and the total amount of activities performed by the user that exceed the threshold intensity. In a particular embodiment, lines 1902 and 1904 may be scaled such that the ratio of the solid portion to the full length of the line matches the ratio of the goal value to the actual amount performed by the user. Optionally, text 1906 and text 1908 and / or caret 1918 and caret 1928, which have a similar configuration, function, and possible variations as text 1706 and text 1708 and / or caret 1718 and caret 1728, and are described above with reference to the embodiment of FIG. 17, may be provided.

[0290] FIG. 20 shows another exemplary physical activity tracking interface 2000 having two vertical bars that may be displayed at block 1502 of process 1500. Bar 2002 having portions 2002a and 2002b, and bar 2004 having portions 2004a and 2004b may be configured and displayed in a manner similar to line 1902 having portions 1902a and 1902b, and line 1904 having portions 1904a and 1904b, respectively, of FIG. 19. Similar to FIG. 19, text 2006 and text 2008 and / or caret 2018 and caret 2028 may optionally be provided.

[0291] FIG. 21 shows another exemplary physical activity tracking interface 2100 having two non-concentric rings that may be displayed at block 1502 of process 1500. In the example shown herein, two adjacent rings 2102 and 2104 are provided. Left ring 2102 having portions 2102a and 2102b, and right ring 2104 having portions 2104a and 2104b may be configured and displayed in a manner similar to ring 1702 having portions 1702a and 1702b, and ring 1704 having portions 1704a and 1704b, respectively, of FIG. 17. Text 2106 and text 2108 and / or caret 2118 and caret 2128, which may have a configuration, function, and possible variations similar to text 1706 and text 1708 and / or caret 1718 and caret 1728, described above with reference to the embodiment of FIG. 17, may be provided. As will be apparent to those skilled in the art, the embodiments shown in FIGS. 19-21 are not exhaustive, and various modifications may be implemented, for example, with respect to shape, visual effects, font, size, position of each element on the display, graph dimensions, color effects, intensity, brightness, etc.

[0292] In some embodiments, after some or all of the interfaces shown in FIGS. 9-13 are displayed (or, if the interfaces shown in FIGS. 9-13 are not displayed, immediately after interface 800 is displayed), the electronic device may execute processes 2200 and / or 2400 shown in FIGS. 22 and 24 to generate and update an inactivity tracking interface. Processes 2200 and 2400 may be executed using a device similar to device 100, device 300, device 500, or device 610, and may be executed simultaneously with, or at a different time than, process 1500. Some operations of processes 2200 and / or 2400 may be combined, some operations may be reordered, and some operations may be omitted.

[0293] As described below, processes 2200 and / or 2400 provide an intuitive way to monitor the attributes of a user's physical activity or inactivity and generate a user interface for displaying the attributes of the user's physical activity or inactivity. This process reduces the user's cognitive load when monitoring the attributes of the user's physical activity or inactivity and creates a more efficient human-machine interface. For battery-operated computing devices, this enables the user to more quickly and efficiently monitor the attributes of the user's physical activity or inactivity and generate a user interface for displaying the attributes of the user's physical activity or inactivity, thereby saving power and extending the time until the battery needs to be recharged.

[0294] At block 2202, an inactivity tracking interface may be displayed. As described above, as the inactivity period lengthens (e.g., sitting in front of a desk), recent research has shown that it can cause serious health risks such as an increased risk of cardiac arrest. Some healthcare providers recommend exercising (e.g., standing up from a chair and walking, or standing) at least once every hour. The inactivity tracking interface can track the number of one-hour segments (or segments of other lengths) during which the user is inactive and can be used to prompt the user to be active before one hour (or other time length) has elapsed. To do so, the inactivity tracking interface may include a visual representation of the amount of the user's inactivity (e.g., the length of time the user has been inactive as measured by an inactivity timer), the amount of detected user activity (e.g., the length of time the user has been active, the number of steps taken by the user, the number of calories consumed, etc.), or a combination of these. When the device detects that the user is not engaged in physical activity that meets a predetermined criterion, the user may be classified as being inactive. For example, inactivity may be characterized by the user not engaging in physical activity that meets a threshold intensity (e.g., an action that consumes a threshold number of calories per unit time, an action that exceeds a threshold distance per unit time, etc.), the user not engaging in a particular type of activity (e.g., standing, walking, running, swimming, climbing stairs, etc.), or a combination of these.

[0295] FIG. 23 shows an exemplary inactivity tracking interface 2300 that may be displayed at block 2202 of process 2200. Interface 2300 may include a first visual representation of the amount of the user's inactivity in the form of a first inactivity indicator 2302, a second visual representation of the user's inactivity in the form of a second inactivity indicator 2306, and a third visual representation of the user's inactivity in the form of an inactivity counter 2308.

[0296] The first inactivity indicator 2302 may include a numerical representation of the length of time that a user has been inactive (e.g., indicated by a timer of the device). For example, in the embodiment shown herein, the first inactivity indicator 2302 indicates that the user has been inactive for 52 minutes and 34 seconds. The second inactivity indicator 2306 may include a graphical representation of the length of time that the user has been inactive (e.g., a graphical representation of the numerical value of the first inactivity indicator 2302).

[0297] In some embodiments, the first inactivity indicator 2302 and the second inactivity indicator 2306 may represent the length of time that the user has been inactive up to an inactivity threshold duration. When the inactivity threshold duration is reached, the values represented by the first inactivity indicator 2302 and the second inactivity indicator 2306 may be reset (e.g., to zero), and the value represented by an inactivity counter 2308 (which may include a numerical value representing the number of cycles of inactivity of the user during the inactivity threshold duration) may be incremented. The inactivity threshold duration may have any predetermined value or user-selectable value, such as 10 minutes, 20 minutes, 30 minutes, 1 hour, etc. In this way, the first inactivity indicator 2302 and the second inactivity indicator 2306 may display the length of time that the user has been inactive, and the inactivity counter 2308 may indicate the number of times that the user has been inactive over a length of time equal to the inactivity threshold duration.

[0298] In some embodiments, as shown in FIG. 23, the second inactivity indicator 2306 may include a ring that may include a completed first portion 2306a representing the length of time the user has been inactive, and an incomplete second portion 2306b representing the difference between the inactivity threshold duration and the length of time the user has been inactive. For example, if the user is not inactive (e.g., inactive for a length of time equal to zero), the ring may be entirely incomplete and may not be displayed on the display. As the length of inactivity extends, the outline of the ring darkens and can start at a point along the ring (e.g., the apex of the ring) and proceed clockwise around the ring, giving the appearance that the ring is being drawn on the display. The percentage of the completed ring may be equal to the length of time the user has been inactive divided by the inactivity threshold duration. For example, if the user has been inactive for 30 minutes and the inactivity threshold duration is 1 hour, half of the ring may be completed. In other embodiments, the second inactivity indicator 2306 may include other visual representations such as a line, bar, rectangle, etc., and a portion of the visual representation displayed may represent the length of time the user has been inactive. In still other embodiments, the second portion 2306b may instead represent the frequency that the user remains inactive over a continuous segment of time equal to the inactivity threshold duration, and the first portion 2306a may instead represent the difference between the frequency that the user remains inactive over a continuous segment of time equal to the inactivity threshold and the length of time the inactivity is being monitored (e.g., the elapsed time of the day or the elapsed time of another period).

[0299] The interface 2300 may further include an activity indicator 2310, which may include a numerical representation of the amount of ongoing activity up to an activity threshold (e.g., activity performed without interruption for a threshold length of time). When the activity threshold is reached, the value represented by the activity indicator 2310 may be reset (e.g., to zero), and the values represented by the first inactivity indicator 2302 and the second inactivity indicator 2306 may also be reset (e.g., to zero). The activity threshold may have any predetermined value or user-selectable value represented in any desired unit of measurement, such as 50 steps, 75 steps, 100 steps, 1 calorie, 5 calories, 30 seconds, 60 seconds, etc. In some embodiments, as shown in FIG. 23, the activity indicator 2310 may include a numerical value of the amount of activity performed by the user (e.g., duration of standing, number of steps taken, length of activity time, etc.). In other embodiments, the activity indicator 2310 may include a graphical representation of the amount of detected activity relative to the activity threshold. The graphical representation may include a ring similar to the ring used for the second inactivity indicator 2306, concentric with the ring of the second inactivity indicator 2306, or any other graphical representation such as a line, bar, rectangle, etc. In this way, the activity indicator 2310 may display the amount of detected activity performed by the user and may indicate the user's progress towards reaching the activity threshold required to reset the first inactivity indicator 2302 and the second inactivity indicator 2306. In particular, the completed portion of the ring may represent the amount of detected activity, and the hollow portion of the ring may represent the difference between the activity threshold and the amount of detected activity. In other embodiments, such as when the activity threshold is relatively small (e.g., 25 steps, 60 seconds, etc.), the activity counter 2310 may not need to be included within the inactivity tracking interface.

[0300] Interface 2300 may further include a time 2304 that includes a numerical or graphical representation of a time period. For example, the time 2304 within interface 2300 indicates that the time is 1:27 am. In other embodiments, the time 2304 may be excluded from interface 2300 and may be displayed within another interface.

[0301] While interface 2300 is shown as occupying a majority of the display, interface 2300, as a composite composition, may likewise be displayed on another interface display with different levels of information. Consistent with its meaning as accepted in the prior art, as described above, a composite composition may refer to any clock face feature other than those used to indicate the hours and minutes of time (e.g., clock hands, or hour / minute indication). A composite composition may provide the user with different types of information, such as data obtained from an application, and the information delivered to the user by the composite composition may be customizable. For example, the user may select an option for a smaller version of interface 2300 to be displayed as a composite composition on the display of the face of a conventional wristwatch that shows the date and time. As a result of occupying a smaller portion of the display, some of the elements of interface 2300, such as time 2304 or activity indicator 2310, are erased from the interface to allow other elements to be displayed in a size sufficient for viewing by the user.

[0302] Returning to FIG. 22 and referring thereto, at block 2204, activity data representing a user's sensed physical activity may be received from activity sensors (e.g., sensor 168, sensor 359, and sensor 520). For example, a device's processor(s) may receive activity data from the activity sensors, process this data, and determine whether the user is active (e.g., standing, bicycling, jogging, walking, running, side-stepping, swimming, jumping, climbing stairs, performing strenuous physical movements such as wrestling, etc., etc., performing physical activity), whether the user is inactive, or whether the user is performing a gesture (e.g., waving both hands, moving fingers such as typing, etc.). The processor(s) may further or alternatively determine the duration of the detected activity, the time(s) of day the detected activity was performed by the user, the amount of calories burned by the user of the device while performing the detected activity, the distance the user of the device moved while performing the detected activity, the number of steps the user of the device took while performing the detected activity, the height the user of the device climbed while performing the detected activity, the maximum speed / minimum speed / average speed of the user of the device while performing the detected activity, the maximum heart rate / minimum heart rate / average heart rate of the user of the device while performing the detected activity, the maximum body temperature / minimum body temperature / average body temperature of the user of the device while performing the detected activity, other context information (to quantify whether it is activity data or not), etc., etc., attributes of the detected physical activity.

[0303] At block 2206, an activity timer that measures the length of time the user is inactive can be controlled based on the activity data received at block 2204. For example, the device's processor(s) is configured to control the timer such that the timer starts in response to received activity data indicating that the user is inactive, pauses in response to received activity data indicating that the user is active, and is reset in response to received activity data indicating that the user has performed an amount of activity that reaches an inactivity threshold value or an activity threshold amount. The value of the inactivity timer can be the length of time the user is inactive, represented by the first inactivity indicator 2302 and the second inactivity indicator 2306 of the inactivity tracking interface 2300.

[0304] Blocks 2202, 2204, and 2206 can be repeated any number of times and at any desired time intervals to detect the user's activity / inactivity and, accordingly, update the display of the inactivity tracking interface. Additionally, while blocks 2202, 2204, and 2206 are shown in a particular order, it should be understood that blocks 2202, 2204, and 2206 can be executed in any order or simultaneously. For example, the inactivity tracking interface can be repeatedly updated at block 2202, while activity data is received at block 2204 and processed at block 1006 to control the inactivity timer and provide the user with current or real-time inactivity information. In some embodiments, while the physical activity application is running in the background of the device or while the device's display is made inactive, block 2202 is omitted and blocks 2204 and 2206 are repeatedly performed to monitor the user's activity, control the activity timer, and ensure that an accurate display of the attributes can be provided to the user later when the physical activity application is resumed or the device's display becomes active.

[0305] FIG. 24 shows an exemplary process 2400 that may be used to execute block 2206 of process 2200. The operations of the blocks of processes 2200 and 2400 will be described below with reference to the exemplary inactivity tracking interface shown in FIGS. 25-39.

[0306] At block 2202 of process 2200, a device similar to device 100, device 300, device 500, or device 610 may cause a display of an inactivity tracking interface similar to interface 2300 shown in FIG. 25. As shown, interface 2300 includes a first inactivity indicator 2302 indicating that the user has been inactive for a length of time equal to zero, and a time indicator 2304 indicating that the current time is 12:00 pm. Additionally, inactivity indicator 2306 may include only a second portion 2306b indicating that the user has been inactive for a length of time equal to zero. At block 2204 of process 2200, activity data representing the physical activity of the user of the device may be received in the same manner as other data.

[0307] When proceeding to block 2402 of process 2400, it can be determined whether the activity data received at block 2204 indicates that the user is active (e.g., performing an activity). In some embodiments, the determination made at block 2402 can include determining whether the user is performing a defined type of activity (e.g., standing, walking, running, swimming, etc.), or any type of activity with an intensity exceeding a threshold amount (e.g., performing an activity that consumes more than a threshold number of calories per minute, moving at a speed exceeding a threshold amount, etc.). For purposes of illustration, the determination made at block 2402 is described herein as determining whether the user is walking. However, it should be understood that any other criteria, such as whether the user is standing, jumping, climbing, performing a physical activity that meets a threshold intensity, etc., can be used similarly. When it is determined from the activity data from an activity sensor such as an accelerometer that the user is walking or has stepped within a threshold length of time (e.g., 5 - 10 seconds), the process can return to block 2402 and the activity data can be continuously monitored to detect when the user becomes inactive. Alternatively, when it is determined that the user is not walking or has not stepped within the threshold length of time, the process can proceed to block 2404. In some embodiments, the absence of data from the activity sensor can cause a negative determination at block 2402 and cause the process to proceed to block 2404.

[0308] At block 2404, an inactivity timer can be started to measure the length of time the user is inactive. For example, the device's processor(s) can start the timer to begin recording the length of time the user is inactive. The value of the inactivity timer can represent the length of time the user is inactive and can be visually represented by a first inactivity indicator 2302 and a second inactivity indicator 2306 within the inactivity tracking interface 2300.

[0309] At block 2406, updated activity data can be received at block 2204, and it can be determined whether the activity data indicates that the user is performing an activity. This determination can be similar to the determination made at block 2402. If it is determined that the user is not performing an activity (or is not performing a defined type of activity), or has not performed an activity within a threshold length of time, the process can proceed to block 2408. In some embodiments, the absence of data from the activity sensor can cause a negative determination at block 2406 and cause the process to proceed to block 2408.

[0310] At block 2408, it can be determined whether the value of the inactivity timer has reached the inactivity threshold. As described above, the inactivity threshold can have any predetermined value or user-selectable value such as 10 minutes, 20 minutes, 30 minutes, 1 hour, etc. If it is determined that the value of the inactivity timer has not reached the inactivity threshold, the process can return to block 2406. While the user remains inactive, blocks 2406 and 2408 can be repeated, and the inactivity timer can be continuously counted. For example, FIG. 26 shows an exemplary view of interface 2300 after the user has remained inactive for 15 minutes after the interface 2300 of FIG. 25 is displayed. As shown, the first inactivity indicator 2302 indicates that the length of time the user has been inactive (e.g., determined by the inactivity timer) is 15 minutes. Similarly, 1 / 4 of the ring of the second inactivity indicator 2306 (e.g., 1 / 4 of indicator 2306 is the first portion 2306a and 3 / 4 of indicator 2306 is the second portion 2306b) is completed, indicating that the user has been inactive for 1 / 4 of the 60-minute inactivity threshold. FIG. 27 shows interface 2300 after the user has remained inactive for 20 minutes and 13 seconds. As shown, the first inactivity indicator 2302 is updated with the length of inactivity (e.g., determined by the inactivity timer), and the second inactivity indicator 2306 is animated to include more portions of the ring (e.g., approximately 1 / 3 of indicator 2306 is the first portion 2306a and 2 / 3 of indicator 2306 is the second portion 2306b), and the completed portion of the ring represents the length of inactivity relative to the inactivity threshold. FIG. 28 shows interface 2300 after the user has remained inactive for 45 minutes. As shown, the first inactivity indicator 2302 is updated with the length of inactivity (e.g., determined by the inactivity timer), and the second inactivity indicator 2306 is animated to cause more portions of the ring to occupy the first portion 2306a and fewer portions of the ring to occupy the second portion 2306b, and the completed portion of the ring (e.g., the first portion 2306a) represents the length of inactivity relative to the inactivity threshold.Figure 29 shows interface 2300 after the user has remained inactive for 52 minutes and 34 seconds. As shown, the first inactivity indicator 2302 is updated with the length of inactivity (e.g., as determined by an inactivity timer), and the second inactivity indicator 2306 is animated to cause the first portion 2306a to occupy more of the ring and the second portion 2306b to occupy less of the ring, with the completed portion of the ring (e.g., the first portion 2306a) representing the length of inactivity relative to the inactivity threshold.

[0311] Referring back to FIG. 24, when the inactivity timer reaches the inactivity threshold, an affirmative determination may be made at block 2408 and the process may proceed to block 2410. At block 2410, the value of the inactivity counter may be incremented. The inactivity counter may be used to track the number of times the user has remained inactive over successive segments of time equal to the inactivity threshold. The value of the inactivity counter may be visually represented within the inactivity tracking interface by inactivity counter 2308. Process 2400 may then proceed to block 2412, where the inactivity timer may be reset to a value of zero. For illustration, FIG. 30 shows an exemplary view of interface 2300 after the user has remained inactive for 60 minutes after the interface 2300 of FIG. 25 was displayed. As shown, the inactivity counter 2308 indicates that the user has missed one segment of time as a result of block 2410 being performed in response to the user remaining continuously inactive for 60 minutes. Additionally, the first inactivity indicator 2302 indicates that the length of time the user has been inactive (e.g., as determined by the inactivity timer) is zero minutes as a result of the inactivity timer being reset at block 2412. Similarly, indicator 2306 has been changed to include only the second portion 1106b, indicating that the user has been inactive for zero minutes of the 60-minute inactivity threshold.

[0312] After the inactivity timer is reset at block 2412, process 2400 may return to block 2402, updated activity data may be received at block 2204, and it may be determined whether that activity data indicates that the user is active (e.g., by performing an activity). If it is determined that the user is active or has been active within a threshold length of time (e.g., 5 - 10 seconds), the process may return to block 2402 and the activity data may continue to be monitored to detect when the user becomes inactive. Alternatively, if it is determined that the user is not active (or is not performing a defined type of activity) or has not been active within the threshold length of time, the process may proceed to block 2404. When the inactivity timer is reset at block 2412 and it is determined that the user is not active again, instead of using process 2400 to identify segments of a defined one-hour period (e.g., segments from 1 pm - 2 pm, 2 pm - 3 pm, etc.) during which the user is not active, segments of a one-hour period (or any other desired duration) of time during which the user is not active (e.g., segments that can start at any time) are identified by starting the inactivity timer at block 2404.

[0313] At block 2404, the inactivity timer can be restarted. While the user remains inactive, as described above, process 2400 can proceed and repeat blocks 2406 and 2408. For illustration, FIG. 31 shows an exemplary view of interface 2300 after the user has remained inactive for 12 minutes and 25 seconds (and 72 minutes and 25 seconds after interface 2300 of FIG. 25 was displayed). As shown, the inactivity counter 2308 indicates that the user has missed one time segment by remaining continuously inactive for 60 minutes. Additionally, the first inactivity indicator 2302 shows the length of time the user has been inactive within the current time segment (e.g., as determined by the inactivity timer) of 12 minutes and 25 seconds. Similarly, the ring of the second inactivity indicator 2306 is animated to occupy more of the ring in the first portion 2306a and less of the ring in the second portion 2306b, and the completed ring portion (e.g., the first portion 2306a) represents the 12 minutes and 25 seconds that the user has been inactive.

[0314] At block 2406, instead, if it is determined that the user is performing an activity or is performing an activity within a threshold length of time (e.g., 5 - 10 seconds), the process may proceed to block 2414. For example, as determined by an activity sensor, in response to the user taking steps, at block 2406, it may be determined that the user is performing an activity and is active. At block 2414, the inactivity timer may be paused. For example, the device's processor(s) may pause the timer and keep the value of the timer constant. Process 2400 may then proceed to block 2416, and the activity detected at block 2406 may be used to update the amount of activity detected. The amount of activity detected may represent the physical activity performed by the user using any desired metric such as calories consumed, number of steps taken, distance traveled, etc., and may be visually represented within the inactivity tracking interface by activity indicator 2310. Continuing with the above example where walking is used as the activity detected at blocks 2402 and 2406, the amount of activity detected may be measured using the number of steps taken. Thus, the amount of activity detected may be updated to include the number of steps taken by the user as indicated by the activity data received from the activity sensor. By way of illustration, FIG. 32 shows an exemplary view of interface 2300 after the user has taken one step after interface 2300 of FIG. 31 is displayed. As shown, the values of inactivity counter 2308, first inactivity indicator 2302, and second inactivity indicator 2306 have not changed from the values shown in FIG. 31 as a result of the inactivity timer being paused at block 2414. However, activity indicator 2310 is displayed within interface 2300, indicating that the user has taken one step (e.g., based on the value of the amount of activity detected updated at block 2416).

[0315] At block 2418, it can be determined whether the detected amount of activity updated at block 2416 has reached the activity threshold. As described above, the activity threshold can have any predetermined value or user-selectable value expressed in any desired unit of measurement, such as calories consumed, number of steps taken, distance traveled, etc. For example, the activity threshold can have a value of 100 steps. Since the user has only taken one step, at block 2418, it can be determined that the detected amount of activity has not reached the activity threshold. As a result, the process can proceed to block 2420.

[0316] At block 2420, updated activity data can be received at block 2204, and it can be determined whether the activity data indicates that the user is performing an activity. This determination can be similar to the determinations made at blocks 2402 and 2406. If it is determined that the user is performing an activity (or is performing a defined type of activity), or has performed an activity within a threshold length of time, the process can return to block 2416. While the user continues to perform physical activity (e.g., walking), or continues to perform physical activity without interruption for a threshold length of time (e.g., 5 - 10 seconds), and while the amount of physical activity remains below the activity threshold, blocks 2416, 2418, and 2420 can be repeated to detect the physical activity and record the physical activity using the value of the detected amount of activity. For illustration, FIG. 33 shows an exemplary view of interface 2300 after the user has taken two steps after the interface 2300 of FIG. 31 is displayed. As shown, the values of the inactivity counter 2308, the first inactivity indicator 2302, and the second inactivity indicator 2306 have not changed from the values shown in FIGS. 31 and 32 as a result of the inactivity timer paused at block 2414. However, the activity indicator 2310 has been updated to indicate that the user has taken two steps (e.g., based on the value of the detected amount of activity updated at block 2416). FIG. 34 shows an exemplary view of interface 2300 after the user has taken 99 steps after the interface 2300 of FIG. 31 is displayed. As shown, the values of the inactivity counter 2308, the first inactivity indicator 2302, and the second inactivity indicator 2306 have not changed from the values shown in FIGS. 31, 32, and 33 as a result of the inactivity timer paused at block 2414. However, the activity indicator 2310 has been updated to indicate that the user has taken 99 steps (e.g., based on the value of the detected amount of activity updated at block 2416).

[0317] At block 2418, instead, if it is determined that the detected amount of activity has reached the activity threshold, the process may proceed to block 2422. At block 2422, the detected amount of activity may be reset to zero, the process may proceed to block 2412, and the inactivity timer may also be reset to zero. For example, the device's processor(s) may reset the value of the detected amount of activity and reset the timer to a zero value. For illustration, FIG. 35 shows an exemplary view of interface 2300 after the user has taken 100 steps after the interface 2300 of FIG. 31 is displayed. As a result of performing an amount of activity above the activity threshold, the inactivity timer is reset at block 2412, and the first inactivity indicator 2302 is caused to indicate that the length of time the user has been inactive (e.g., as determined by the inactivity timer) is zero minutes. Similarly, the ring of the second inactivity indicator 2306 is animated to include only the second portion 2306b, indicating that the user has been inactive for zero minutes of the 60-minute inactivity threshold. Additionally, in response to the detected amount of activity being reset at block 2422, the activity indicator 2310 is removed from the display.

[0318] After the inactivity timer is reset at block 2412, process 2400 may return to block 2402, updated activity data may be received at block 2204, and it may be determined whether the activity data indicates that the user is performing an activity. If it is determined that the user is performing an activity or has performed an activity within a threshold length of time (e.g., 5 - 10 seconds), the process may return to block 2402, the activity data may continue to be monitored, and the time when the user becomes inactive may be detected. Alternatively, if it is determined that the user is not performing an activity (or not performing a defined type of activity) or has not performed an activity within the threshold length of time, the process may proceed to block 2404. At block 2404, the inactivity timer may be started again. While the user remains inactive, as described above, process 2400 may proceed and repeat blocks 2406 and 2408. For illustration, FIG. 36 shows an exemplary view of interface 2300 after the user has remained inactive for 12 minutes after interface 2300 of FIG. 35 is displayed. As shown, the inactivity counter 2308 indicates that the user has missed one time segment by being continuously inactive for 60 minutes. In addition, the first inactivity indicator 2302 indicates that the length of time the user has not been active (e.g., as determined by the inactivity timer) is 12 minutes in the current time segment. Similarly, the ring of the second inactivity indicator 2306 is animated to cause more of the ring to occupy the first portion 2306a and less of the ring to occupy the second portion 2306b, and the completed portion of the ring (e.g., the first portion 2306a) represents the 12 minutes that the user has not been active.

[0319] As described above, when the user starts an activity such as walking in five steps, an affirmative determination can be made at block 2406 and the process can proceed to block 2414. At block 2414, the activity timer can be paused, and at block 2416, the amount of detected activity can be updated to include the number of five steps taken by the user. For illustration, FIG. 37 shows an exemplary view of the interface 2300 after the user has taken five steps after the interface 2300 of FIG. 36 is displayed. As shown, the values of the inactivity counter 2308, the first inactivity indicator 2302, and the second inactivity indicator 2306 have not changed from the values shown in FIG. 36 as a result of the inactivity timer being paused at block 2414. However, the activity indicator 2310 is displayed within the interface 2300, indicating that the user has taken five steps (e.g., based on the value of the amount of detected activity updated at block 2416).

[0320] Since the number of steps of the five steps taken by the user is less than the activity threshold of 100 steps, a negative determination can be made at block 2418, and the process can proceed to block 2420. At block 2420, if the user stops performing physical activity or stops performing physical activity for longer than a threshold length of time (e.g., 5 - 10 seconds), a negative determination can be made at block 2420, and the process can proceed to block 2424. In some embodiments, the absence of data from the activity sensor can cause a negative determination at block 2420 and cause the process to proceed to block 2424. At block 2424, the detected amount of activity can be reset without resetting the inactivity timer in a manner similar to block 2422. For illustration, FIG. 38 shows an exemplary view of interface 2300 after the user has stopped walking or stopped walking for longer than the threshold length of time after the interface 2300 of FIG. 37 was displayed. As a result of stopping the physical activity, at block 2424, the detected amount of activity is reset and the activity indicator 2310 is erased from the display. In addition, since the activity timer has not been reset, the values of the first inactivity indicator 2302 and the second inactivity indicator 2306 have not changed from the values shown in FIG. 37.

[0321] If the user remains inactive, blocks 2402, 2404, 2406, and 2408 are executed to continue to record the time the user is inactive using the inactivity timer. For illustration, FIG. 39 shows an exemplary view of interface 2300 one minute after the interface 2300 of FIG. 38 was displayed. As shown, the first inactivity indicator 2302 and the second inactivity indicator 2306 are updated to reflect the value of the 13 - minute inactivity timer caused by the result of the activity timer started at block 2404.

[0322] In some embodiments, process 2400 may further include resetting the value of the inactivity counter periodically or at a predetermined time (e.g., once a day, once a week, once a month, etc.). In these embodiments, the value of the inactivity counter is stored before being reset and tracks the number of times the user has remained continuously inactive over the entire length of time equal to the inactivity threshold. For example, the value of the inactivity counter may be stored and then reset at the end of each day (e.g., in the middle of the night). Based on the recorded value of the inactivity counter, the user can view the number of times they have remained continuously inactive over a 60-minute period for that day.

[0323] In some embodiments, process 2200 or process 2400 may further include generating a notification in response to the inactivity timer reaching a value that is a threshold length of time less than the inactivity threshold. This notification may include any desired visual, audible, tactile, or other notification to indicate to the user that the inactivity threshold is about to expire. For example, when the inactivity timer reaches a value of 50 minutes (10 minutes before the 60-minute inactivity threshold), a text notification may be displayed on the device's display. This allows the user to conveniently preemptively rise before the inactivity threshold duration has elapsed.

[0324] In some embodiments, process 2200 or process 2400 may further include generating, on a display of the device, an image (e.g., a badge), such as reducing, by a threshold amount, the number of times the user has been continuously inactive for a length of time equal to the inactivity threshold (e.g., the recorded value of the inactivity counter) that represents the achievement reached by the user, reducing the number of times the user has been continuously inactive for a length of time equal to the inactivity threshold (e.g., the recorded value of the inactivity counter) to less than a defined number, etc. Other rewards including visual rewards such as animations, lit graphics or flashing graphics, 3D images, lighting effects, badges, etc., alerts, ringtones, music, voice, etc., acoustic rewards, vibrations, or any combination of these rewards may be provided to the user for other tasks completed by the user. For example, the reward may be given in response to the inactivity timer being reset, the time period ending, and the user having an inactivity counter value less than the threshold amount, etc.

[0325] In some embodiments, before resetting the inactivity timer at block 2412, the value of the inactivity timer may be added to the total length of the inactivity value representing the total time the user has been inactive. The total length of inactivity may be stored and reset at a predetermined time (e.g., once a day, once a week, once a month, etc.). For example, the total length of inactivity may be stored and subsequently reset at the end of each day (e.g., late at night). The recorded value of the total length of inactivity allows the user to view (not or in addition to the number of times the user has remained continuously inactive over 60 minutes) the length of time the user has been inactive on that day.

[0326] While each block of processes 2200 and 2400 is shown and described in a particular order, it should be understood that each block of these processes can be executed in a different order or simultaneously. For example, while controlling an inactivity timer using process 2400, additional activity data can be received at block 2204 of process 2200, and the inactivity tracking interface can be repeatedly updated at block 2202.

[0327] Note that the details of the processes described above with respect to processes 2200 and 2400 (e.g., FIGS. 22 and 24) are also applicable in a similar manner to other processes described herein. For example, processes 1500, 1600, 4000, 4800, 7900, 8600, and...

Claims

Claim 1 An electronic device, comprising: a touch-sensing display; one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; wherein the one or more programs are configured to: receive activity data corresponding to physical activity performed by a user of the electronic device; display, on the touch-sensing display, a user interface, the user interface including: a first plurality of training indicators, including a first training indicator corresponding to a first day of a current week and a second training indicator corresponding to a second day of the current week, the first training indicator and the second training indicator being displayed in a first size, the first training indicator indicating an amount of activity that occurred on the first day of the current week in relation to an activity threshold, and the second training indicator indicating an amount of activity that occurred on the second day of the current week in relation to the activity threshold; an achievement area including a first achievement user interface object corresponding to a first achievement of the user and a second achievement user interface object corresponding to a second achievement of the user, the first achievement and the second achievement of the user being based on the activity data; additional information affordances displayed together with the first plurality of training indicators; wherein displaying the first plurality of training indicators together includes: displaying the first training indicator in a first visual representation according to a determination that the activity data indicates that at least a first amount of activity occurred on the first day of the current week in relation to the activity threshold; and displaying the first training indicator in a second visual representation different from the first visual representation according to a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the current week in relation to the activity threshold. ​ displaying the second training indicator in the first visual representation according to a determination that the activity data indicates that at least the first amount of activity has occurred on the second day of the current week in relation to the activity threshold; displaying the second training indicator in the second visual representation according to a determination that the activity data indicates that at least the first amount of activity has not occurred on the second day of the current week in relation to the activity threshold; including displaying; detecting user input to the additional information affordance; in response to detecting user input to the additional information affordance; on the touch-sensitive display; a second plurality of training indicators including a third training indicator corresponding to the first day of the current week, a fourth training indicator corresponding to the second day of the current week, a fifth training indicator corresponding to the first day of the previous week, and a sixth training indicator corresponding to the first day of the week two weeks ago, wherein the third training indicator, the fourth training indicator, the fifth training indicator, and the sixth training indicator are displayed in a second size, the third training indicator indicates the amount of activity that occurred on the first day of the current week in relation to the activity threshold, the fourth training indicator indicates the amount of activity that occurred on the second day of the current week in relation to the activity threshold, the fifth training indicator indicates the amount of activity that occurred on the first day of the previous week in relation to the activity threshold, and the sixth training indicator indicates the amount of activity that occurred on the first day of the week two weeks ago in relation to the activity threshold; the second plurality of training indicators; a first weekly goal corresponding to the current week and a second weekly goal corresponding to one of the previous week and the week two weeks ago; displaying both; displaying the second plurality of training indicators together; In accordance with a determination that the activity data indicates that at least the first amount of activity has occurred on the first day of the current week in relation to the activity amount threshold, displaying the third training indicator in a third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has not occurred on the first day of the current week in relation to the activity amount threshold, displaying the third training indicator in a fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has occurred on the second day of the current week in relation to the activity amount threshold, displaying the fourth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has not occurred on the second day of the current week in relation to the activity amount threshold, displaying the fourth training indicator in the fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has occurred on the first day of the previous week in relation to the activity amount threshold, displaying the fifth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has not occurred on the first day of the previous week in relation to the activity amount threshold, displaying the fifth training indicator in the fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has occurred on the first day of the week two weeks ago in relation to the activity amount threshold, displaying the sixth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity has not occurred on the first day of the week two weeks ago in relation to the activity amount threshold, displaying the sixth training indicator in the fourth visual representation different from the third visual representation, including displaying; An electronic device including a set of instructions for performing the above. Claim 2 The first training indicator includes a first ring, and the second training indicator includes a second ring. The first visual representation includes the first ring having a first filled area, the second visual representation includes the second ring having a second filled area, and the first filled area is larger than the second filled area. The electronic device according to claim 1.

3. Displaying the achievement area including the first achievement user interface object corresponding to the first achievement of the user According to the determination that the activity data indicates that the user has completed the first achievement, displaying the first achievement user interface object that visually displays that the user has completed the first achievement According to the determination that the activity data indicates that the user has not completed the first achievement, not displaying the first achievement user interface object to be visually displayed. The electronic device according to claim 1.

4. Displaying the user interface on the touch-sensitive display The first plurality of training indicators The achievement area And an achievement menu user interface object Including the display of The one or more programs Detecting a user input corresponding to the selection of the achievement menu user interface object In response to the detection of the user input Stopping the display of the user interface Displaying a second user interface including the first achievement user interface object and the second achievement user interface object on the touch-sensitive display The electronic device according to claim 1, comprising a set of instructions for performing

5. A computer program configured to be executed by one or more processors of an electronic device having a touch-sensitive display, the computer program Receiving activity data corresponding to physical activity performed by a user of the electronic device Displaying a user interface on the touch-sensitive display, the user interface A first training indicator corresponding to the first day of the current week and a second training indicator corresponding to the second day of the current week, wherein the first training indicator and the second training indicator are a first plurality of training indicators displayed in a first size, the first training indicator indicating the amount of activity that occurred on the first day of the current week in relation to an activity threshold, and the second training indicator indicating the amount of activity that occurred on the second day of the current week in relation to the activity threshold, the first plurality of training indicators, A first achievement user interface object corresponding to the first achievement of the user and a second achievement user interface object corresponding to the second achievement of the user, wherein the first achievement of the user and the second achievement of the user are based on the activity data, an achievement area, Additional information affordance displayed together with the first plurality of training indicators, Together include, Displaying the first plurality of training indicators together, According to a determination that the activity data indicates that at least a first amount of activity occurred on the first day of the current week in relation to the activity threshold, displaying the first training indicator in a first visual representation, According to a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the current week in relation to the activity threshold, displaying the first training indicator in a second visual representation different from the first visual representation, According to a determination that the activity data indicates that at least the first amount of activity occurred on the second day of the current week in relation to the activity threshold, displaying the second training indicator in the first visual representation, According to a determination that the activity data indicates that at least the first amount of activity did not occur on the second day of the current week in relation to the activity threshold, displaying the second training indicator in the second visual representation, including displaying, Detecting user input for the additional information affordance, In response to detecting user input for the additional information affordance, on the touch-sensitive display, a second plurality of training indicators including a third training indicator corresponding to the first day of the current week, a fourth training indicator corresponding to the second day of the current week, a fifth training indicator corresponding to the first day of the previous week, and a sixth training indicator corresponding to the first day of the week two weeks ago, wherein the third training indicator, the fourth training indicator, the fifth training indicator, and the sixth training indicator are displayed in a second size, the third training indicator indicates the amount of activity that occurred on the first day of the current week in relation to the activity threshold, the fourth training indicator indicates the amount of activity that occurred on the second day of the current week in relation to the activity threshold, the fifth training indicator indicates the amount of activity that occurred on the first day of the previous week in relation to the activity threshold, and the sixth training indicator indicates the amount of activity that occurred on the first day of the week two weeks ago in relation to the activity threshold, the second plurality of training indicators; a first weekly goal corresponding to the current week and a second weekly goal corresponding to one of the previous week and the week two weeks ago; to display both; displaying the second plurality of training indicators together; displaying the third training indicator in a third visual representation according to a determination that the activity data indicates that at least the first amount of activity occurred on the first day of the current week in relation to the activity threshold; displaying the third training indicator in a fourth visual representation different from the third visual representation according to a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the current week in relation to the activity threshold; displaying the fourth training indicator in the third visual representation according to a determination that the activity data indicates that at least the first amount of activity occurred on the second day of the current week in relation to the activity threshold; In accordance with a determination that the activity data indicates that at least the first amount of activity did not occur on the second day of the current week in relation to the activity amount threshold, displaying the fourth training indicator in the fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity occurred on the first day of the previous week in relation to the activity amount threshold, displaying the fifth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the previous week in relation to the activity amount threshold, displaying the fifth training indicator in the fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity occurred on the first day of the week two weeks ago in relation to the activity amount threshold, displaying the sixth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the week two weeks ago in relation to the activity amount threshold, displaying the sixth training indicator in the fourth visual representation different from the third visual representation, including displaying; A computer program comprising a set of instructions for performing.

6. The first training indicator includes a first ring, and the second training indicator includes a second ring. The first visual representation includes the first ring having a first filled area, the second visual representation includes the second ring having a second filled area, and the first filled area is larger than the second filled area. The computer program according to claim 5.

7. Displaying the achievement area including the first achievement user interface object corresponding to the first achievement of the user is In accordance with a determination that the activity data indicates that the user has completed the first achievement, displaying the first achievement user interface object that visually indicates that the user has completed the first achievement; In accordance with a determination that the activity data indicates that the user has not completed the first achievement, not displaying the first achievement user interface object to be visually displayed, the computer program according to claim 5, comprising:

8. Displaying the user interface on the touch-sensitive display includes: The first plurality of training indicators; The achievement area; And a display of an achievement menu user interface object Including, The one or more programs Detecting user input corresponding to a selection of the achievement menu user interface object; In response to detecting the user input Stopping the display of the user interface; Displaying a second user interface including the first achievement user interface object and the second achievement user interface object on the touch-sensitive display The computer program according to claim 5, comprising a set of instructions for performing.

9. A method, comprising: In an electronic device having a touch-sensitive display, Receiving activity data corresponding to physical activity performed by a user of the electronic device; Displaying a user interface on the touch-sensitive display, the user interface including: A first training indicator corresponding to a first day of the current week and a second training indicator corresponding to a second day of the current week, the first training indicator and the second training indicator being a first plurality of training indicators displayed in a first size, the first training indicator indicating the amount of activity that occurred on the first day of the current week in relation to an activity amount threshold, and the second training indicator indicating the amount of activity that occurred on the second day of the current week in relation to the activity amount threshold; A first achievement user interface object corresponding to the first achievement of the user and a second achievement user interface object corresponding to the second achievement of the user, wherein the first achievement of the user and the second achievement of the user are based on the activity data, an achievement area, and additional information affordance displayed together with the first plurality of training indicators, both included, Displaying the first plurality of training indicators together, According to a determination that the activity data indicates that at least a first amount of activity has occurred on the first day of the current week in relation to the activity amount threshold, displaying the first training indicator in a first visual representation; According to a determination that the activity data indicates that at least the first amount of activity has not occurred on the first day of the current week in relation to the activity amount threshold, displaying the first training indicator in a second visual representation different from the first visual representation; According to a determination that the activity data indicates that at least the first amount of activity has occurred on the second day of the current week in relation to the activity amount threshold, displaying the second training indicator in the first visual representation; According to a determination that the activity data indicates that at least the first amount of activity has not occurred on the second day of the current week in relation to the activity amount threshold, displaying the second training indicator in the second visual representation, including displaying; Detecting user input for the additional information affordance, In response to detecting user input for the additional information affordance, On the touch-sensitive display, A second plurality of training indicators including a third training indicator corresponding to the first day of the current week, a fourth training indicator corresponding to the second day of the current week, a fifth training indicator corresponding to the first day of the previous week, and a sixth training indicator corresponding to the first day of the week two weeks ago, wherein the third training indicator, the fourth training indicator, the fifth training indicator, and the sixth training indicator are displayed in a second size, the third training indicator indicates the amount of activity that occurred on the first day of the current week in relation to the activity threshold, the fourth training indicator indicates the amount of activity that occurred on the second day of the current week in relation to the activity threshold, the fifth training indicator indicates the amount of activity that occurred on the first day of the previous week in relation to the activity threshold, and the sixth training indicator indicates the amount of activity that occurred on the first day of the week two weeks ago in relation to the activity threshold, the second plurality of training indicators; A first weekly goal corresponding to the current week and a second weekly goal corresponding to one of the previous week and the week two weeks ago; Both are to be displayed; Displaying the second plurality of training indicators together; According to the determination that the activity data indicates that at least the first amount of activity occurred on the first day of the current week in relation to the activity threshold, displaying the third training indicator in a third visual representation; According to the determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the current week in relation to the activity threshold, displaying the third training indicator in a fourth visual representation different from the third visual representation; According to the determination that the activity data indicates that at least the first amount of activity occurred on the second day of the current week in relation to the activity threshold, displaying the fourth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity did not occur on the second day of the current week in relation to the activity amount threshold, displaying the fourth training indicator in the fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity occurred on the first day of the previous week in relation to the activity amount threshold, displaying the fifth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the previous week in relation to the activity amount threshold, displaying the fifth training indicator in the fourth visual representation different from the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity occurred on the first day of the week two weeks ago in relation to the activity amount threshold, displaying the sixth training indicator in the third visual representation; In accordance with a determination that the activity data indicates that at least the first amount of activity did not occur on the first day of the week two weeks ago in relation to the activity amount threshold, displaying the sixth training indicator in the fourth visual representation different from the third visual representation, including displaying; A method including.

10. The first training indicator includes a first ring, and the second training indicator includes a second ring. The method according to claim 9, wherein the first visual representation includes the first ring having a first filled area, the second visual representation includes the second ring having a second filled area, and the first filled area is larger than the second filled area.

11. Displaying the achievement area including the first achievement user interface object corresponding to the first achievement of the user includes In accordance with a determination that the activity data indicates that the user has completed the first achievement, displaying the first achievement user interface object that visually displays that the user has completed the first achievement. The method according to claim 9, comprising: not displaying the first achievement user interface object to be visually displayed in accordance with a determination that the activity data indicates that the user has not completed the first achievement.

12. Displaying the user interface on the touch-sensitive display includes displaying the first plurality of training indicators, the achievement area, and an achievement menu user interface object, The method further includes detecting user input corresponding to a selection of the achievement menu user interface object, in response to detecting the user input stopping the display of the user interface, and displaying a second user interface including the first achievement user interface object and the second achievement user interface object on the touch-sensitive display. The method according to claim 9, further comprising.

Citation Information

Patent Citations

  • Momentum-measuring device

    JP1996126632A

  • Interactive exercise training log

    JP2011514192A

  • Wearable device assembly with athletic function

    JP2013544140A

  • Rehabilitation information processing system, information processor, and information management device

    JP2014104139A

  • Activity monitoring, tracking and synchronization

    JP2014168685A