User interface for compass application
By displaying a compass user interface with direction and orientation indicators on an electronic device and combining it with a rotatable input mechanism, the operation of the compass application is simplified, solving the problem of complex and time-consuming interfaces in the prior art, improving efficiency and saving battery power.
Patent Information
- Application Number
- CN202411158521.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-01-08
- Filing Date
- 2020-03-30
- Publication Date
- 2025-10-14
- Estimated Expiration
- 2040-03-30
AI Technical Summary
The user interfaces for providing compass application features in existing electronic devices are often complex and time-consuming, resulting in wasted user time and device energy, which is particularly important in battery-powered devices.
The invention is adopted on an electronic device with a display device and a rotatable input mechanism, and detects the rotation of the rotatable input mechanism by displaying a compass user interface of a direction indicator and an orientation indicator, and adjusts the display position of the orientation indicator according to the rotation amount, thereby simplifying user operation.
Improves the operational efficiency of the compass application, reduces user cognitive burden, saves device power consumption, and extends battery life.
Smart Images

Figure CN119024929B_ABST
Abstract
Description
[0001] This application is a Continuation of International Application No. PCT / US2020 / 025682, International Filing Date March 30, 2020, entered into the National Stage in the United States on November 15, 2021, under U.S. Application No. 202080035979.X, entitled “USER INTERFACES FOR A COMPASS APPLICATION,” having a filing date of March 30, 2020.
[0002] CROSS-REFERENCE TO RELATED APPLICATIONS
[0003] This application claims priority to U.S. Patent Application Serial No. 16 / 737,044, entitled “USER INTERFACES FOR A COMPASS APPLICATION,” filed January 8, 2020; and U.S. Provisional Patent Application Serial No. 62 / 866,569, entitled “USER INTERFACES FOR A COMPASS APPLICATION,” filed June 25, 2019, the contents of each of which are hereby incorporated by reference in their entirety. TECHNICAL FIELD
[0004] The present disclosure relates generally to computer user interfaces, and more particularly to techniques for providing compass application features. BACKGROUND
[0005] Compasses can be used to guide users in navigating a physical environment. Some electronic devices provide compass application features to assist in such navigation. SUMMARY
[0006] However, some techniques for using electronic devices to provide compass application features are often cumbersome and inefficient. For example, some existing techniques use complex and time-consuming user interfaces that can include multiple button presses or keystrokes. Existing techniques require more time than is necessary, which results in wasted user time and device energy. This latter consideration is particularly important in battery-powered devices.
[0007] Accordingly, the present techniques provide faster, more efficient methods and interfaces for electronic devices to provide compass application features. Such methods and interfaces optionally supplement or replace other methods for providing compass application features. Such methods and interfaces reduce the cognitive burden on the user, and result in a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power, and increase the time between battery charges.
[0008] In some embodiments, the method includes: at an electronic device having a display device and a rotatable input mechanism: displaying, via the display device, a compass user interface having a direction indicator and a bearing indicator, wherein: the direction indicator provides an indication of a corresponding compass direction, wherein the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction; and the bearing indicator provides an indication of an offset from the corresponding compass direction; while displaying the bearing indicator, detecting a rotation of the rotatable input mechanism; and in response to detecting the rotation of the rotatable input mechanism, changing a display position of the bearing indicator from a first position to a second position, the amount of change being determined based on the rotation magnitude of the rotatable input mechanism.
[0009] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs that are configured to be executed by one or more processors of an electronic device having a display device and a rotatable input mechanism, the one or more programs including instructions for performing the following operations: displaying a compass user interface having a direction indicator and an orientation indicator via the display device, wherein: the direction indicator provides an indication of a corresponding compass direction, wherein the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction; and the orientation indicator provides an indication of an offset from the corresponding compass direction; while displaying the orientation indicator, detecting a rotation of the rotatable input mechanism; and in response to detecting the rotation of the rotatable input mechanism, changing a display position of the orientation indicator from a first position to a second position, the amount of change being determined based on the rotation magnitude of the rotatable input mechanism.
[0010] In some embodiments, a transient computer-readable storage medium stores one or more programs that are configured to be executed by one or more processors of an electronic device having a display device and a rotatable input mechanism, the one or more programs including instructions for performing the following operations: displaying a compass user interface having a direction indicator and an orientation indicator via the display device, wherein: the direction indicator provides an indication of a corresponding compass direction, wherein the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction; and the orientation indicator provides an indication of an offset from the corresponding compass direction; while displaying the orientation indicator, detecting a rotation of the rotatable input mechanism; and in response to detecting the rotation of the rotatable input mechanism, changing a display position of the orientation indicator from a first position to a second position, the amount of change being determined based on the rotation magnitude of the rotatable input mechanism.
[0011] In some embodiments, an electronic device includes: a display device; a rotatable input mechanism; one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the following operations: displaying a compass user interface having a direction indicator and an orientation indicator via the display device, wherein: the direction indicator provides an indication of a corresponding compass direction, wherein the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction; and the orientation indicator provides an indication of an offset from the corresponding compass direction; while displaying the orientation indicator, detecting a rotation of the rotatable input mechanism; and in response to detecting the rotation of the rotatable input mechanism, changing a display position of the orientation indicator from a first position to a second position, the amount of change being determined based on the rotation magnitude of the rotatable input mechanism.
[0012] In some embodiments, an electronic device includes: a display device; a rotatable input mechanism; a device for displaying a compass user interface having a direction indicator and an orientation indicator via the display device, wherein: the direction indicator provides an indication of a corresponding compass direction, wherein the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction; and the orientation indicator provides an indication of an offset from the corresponding compass direction; a device for detecting rotation of the rotatable input mechanism when displaying the orientation indicator; and a device for changing a display position of the orientation indicator from a first position to a second position in response to detecting rotation of the rotatable input mechanism, the amount of change being determined based on the amount of rotation of the rotatable input mechanism.
[0013] Executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions for performing these functions are optionally included in a transient computer-readable storage medium or other computer program product configured for execution by one or more processors.
[0014] Thus, a faster, more efficient method and interface is provided for devices for providing compass application features, thereby improving the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces may supplement or replace other methods for providing compass application features. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, wherein like reference numerals designate corresponding parts throughout the several views.
[0016] Figure 1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display according to some embodiments.
[0017] Figure 1B is a block diagram illustrating example components for event processing according to some embodiments.
[0018] Figure 2 A portable multifunction device with a touch screen according to some embodiments is shown.
[0019] Figure 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments.
[0020] Figure 4A An exemplary user interface for a menu of applications on a portable multifunction device is shown according to some embodiments.
[0021] Figure 4B An exemplary user interface is shown for a multifunction device having a touch-sensitive surface that is separate from the display according to some embodiments.
[0022] Figure 5A A personal electronic device according to some embodiments is shown.
[0023] Figure 5B is a block diagram illustrating a personal electronic device according to some embodiments.
[0024] Figures 5C to 5D Example components of a personal electronic device with a touch-sensitive display and an intensity sensor are shown according to some embodiments.
[0025] Figures 5E to 5H Exemplary components and user interfaces of a personal electronic device according to some embodiments are shown.
[0026] Figures 6A to 6X An exemplary user interface for a compass application is shown according to some embodiments.
[0027] Figure 7 is a flowchart illustrating an example process for a compass application according to some embodiments. DETAILED DESCRIPTION
[0028] The following description sets forth exemplary methods, parameters, etc. However, it should be recognized that such description is not intended to limit the scope of the present disclosure, but is provided as a description of exemplary embodiments.
[0029] There is a need for electronic devices that provide more efficient methods and interfaces for providing compass application features. For example, a user would benefit from being able to accurately set a bearing in a compass application displayed on a small display. As another example, a user would benefit from being able to set a bearing that prevents or is unaffected by accidental user input on the display. Such techniques can reduce the cognitive burden on users using compass application features, thereby increasing productivity. Furthermore, such techniques can reduce processor power and battery power that would otherwise be wasted on redundant user input.
[0030] under Figure 1A to Figure 1B 、 Figure 2 、 Figure 3 、 Figures 4A to 4B and Figures 5A to 5H A description of an exemplary device for performing techniques for management event notification is provided. Figures 6A to 6X An exemplary user interface for a compass application is shown according to some embodiments. Figure 7 is a flowchart illustrating an example process for a compass application according to some embodiments. Figures 6A to 6X The user interface in the figure is used to show the following description including Figure 7 The process of the process.
[0031] Although the following description uses the terms "first," "second," and the like to describe various elements, these elements should not be limited by these terms. These terms are merely used to distinguish one element from another. For example, a first touch may be named a second touch, and similarly, a second touch may be named a first touch, without departing from the scope of the various embodiments described. Both the first touch and the second touch are touches, but they are not the same touch.
[0032] The terms used in the description of the various embodiments described herein are only for the purpose of describing specific embodiments and are not intended to be limiting. As used in the description of the various embodiments described and in the appended claims, the singular forms "a" and "the" are intended to also include plural forms unless the context clearly indicates otherwise. It will also be understood that the terms "and / or" used herein refer to and encompass any and all possible combinations of one or more items in the associated listed items. It will also be understood that the terms "includes," "including," "comprises," and / or "comprising" when used in this specification specify the presence of stated features, integers, steps, operations, elements, and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts, and / or their groupings.
[0033] The term "if" is optionally interpreted to mean "when," "upon," or "in response to determining," or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined that," or "if [stated condition or event] is detected" are optionally interpreted to mean "upon determining," or "in response to determining that," or "upon detecting [stated condition or event]," or "in response to detecting [stated condition or event]," depending on the context.
[0034] Embodiments of electronic devices, user interfaces for such devices, and processes associated with using such devices are described herein. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as a PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the Apple Watch from Apple Inc. (Cupertino, California). Devices, iPod equipment, and Device. Other portable electronic devices, such as laptops or tablets with touch-sensitive surfaces (e.g., touch screen displays and / or trackpads), are optionally used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer with a touch-sensitive surface (e.g., touch screen displays and / or trackpads).
[0035] In the following discussion, an electronic device including a display and a touch-sensitive surface is described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices, such as a physical keyboard, mouse, and / or joystick.
[0036] The device typically supports a variety of applications, such as one or more of the following: a drawing application, a rendering application, a word processing application, a website creation application, a disk editing application, a spreadsheet application, a gaming application, a telephony application, a video conferencing application, an email application, an instant messaging application, a fitness support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.
[0037] Various applications executed on the 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 and corresponding information displayed on the device are optionally adjusted and / or varied for different applications and / or adjusted and / or varied within the respective applications. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports the various applications with a user interface that is intuitive and clear to the user.
[0038] Attention is now turned to embodiments of portable devices having touch-sensitive displays. Figure 1A 1 is a block diagram illustrating a portable multifunction device 100 with a touch-sensitive display system 112 according to some embodiments. Touch-sensitive display 112 is sometimes referred to as a "touch screen" for convenience, and is sometimes referred to as or referred to as a "touch-sensitive display system." Device 100 includes memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral device interface 118, RF circuitry 108, audio circuitry 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and external ports 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact force sensors 165 for detecting the intensity of contacts on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile output on device 100 (e.g., generating tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touch pad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.
[0039] As used in this specification and claims, the term "intensity" of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or to a surrogate (surrogate) for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four different values and more typically includes hundreds of different values (e.g., at least 256). The intensity of a contact is optionally determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure the force at different points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated contact force. Similarly, the pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and / or its change, the capacitance of the touch-sensitive surface near the contact and / or its change, and / or the resistance of the touch-sensitive surface near the contact and / or its change are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some embodiments, the surrogate measurement of the contact force or pressure is used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measurement). In some embodiments, the surrogate measurement of the contact force or pressure is converted into an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of the contact as an attribute of the user input allows the user to access additional device functionality that would otherwise be inaccessible to the user on a smaller device with limited real estate, which is used to display an indication (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls, such as knobs or buttons).
[0040] As used in this specification and claims, the term "tactile output" refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of a device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device that will be detected by a user using the user's sense of touch. For example, when a device or a component of the device is in contact with a surface that is touch-sensitive to a user (e.g., a finger, palm, or other part of the user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation that corresponds to a perceived change in a physical characteristic of the device or component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a "press click" or "release click" on a physical actuation button. In some cases, the user will feel a tactile sensation, such as a "press click" or "release click," even when the physical actuation button associated with the touch-sensitive surface that was physically pressed (e.g., displaced) by the user's movement does not move. As another example, even when the smoothness of the touch-sensitive surface does not change, movement of the touch-sensitive surface may optionally be interpreted or sensed by the user as "roughness" of the touch-sensitive surface. While such a user's interpretation of touch will be limited by the user's individualized sensory perceptions, many sensory perceptions of touch are common to most users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "press click," "release click," "roughness"), unless otherwise stated, the generated tactile output corresponds to a physical displacement of the device or a component thereof that would generate that sensory perception for a typical (or average) user.
[0041] It should be understood that device 100 is merely one example of a portable multifunction device and that device 100 optionally has more or fewer components than shown, optionally combines two or more components, or optionally has a different configuration or arrangement of the components. Figure 1A The various components shown in the EMBODIMENTS 100 are implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application specific integrated circuits.
[0042] Memory 102 optionally includes high-speed random access memory and optionally includes non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.
[0043] Peripherals interface 118 may be used to couple the device's input and output peripherals to CPU 120 and memory 102. One or more processors 120 run or execute various software programs and / or instruction sets stored in memory 102 to perform various functions of device 100 and process data. In some embodiments, peripherals 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.
[0044] RF (radio frequency) circuitry 108 receives and transmits RF signals, also known as electromagnetic signals. RF circuitry 108 converts electrical signals into / from electromagnetic signals and communicates with communication networks and other communication devices via the electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a codec chipset, a subscriber identity module (SIM) card, memory, and the like. RF circuitry 108 optionally communicates with networks and other devices via wireless communications, such as the Internet (also known as the World Wide Web (WWW)), intranets, and / or wireless networks (such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs)). RF circuitry 108 optionally includes well-known circuitry for detecting near-field communication (NFC) fields, such as via a short-range communication radio. The wireless communication optionally uses any of a variety of communication standards, protocols and technologies, including, but not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Evolution, 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 Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11d), IEEE 802.11e, IEEE 802.11f, IEEE 802.11g, IEEE 802.11g), IEEE 802.11f, IEEE 802.11g ... 11n and / or IEEE 802.11ac), Voice over Internet Protocol (VoIP), Wi-MAX, email protocols (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), instant messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.
[0045] Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuitry 110 receives audio data from peripherals interface 118, converts the audio data to an electrical signal, and transmits the electrical signal to speaker 111. Speaker 111 converts the electrical signal to human-audible sound waves. Audio circuitry 110 also receives electrical signals converted by microphone 113 from sound waves. Audio circuitry 110 converts the electrical signal to audio data and transmits the audio data to peripherals interface 118 for processing. Audio data is, optionally, retrieved from and / or transmitted to memory 102 and / or RF circuitry 108 by peripherals interface 118. In some embodiments, audio circuitry 110 also includes a headset jack (e.g., 212 in FIG. 2). The headset jack provides an interface between audio circuitry 110 and removable audio input / output peripherals, such as output-only headphones or a headset with both output (e.g., stereo Figure 2
[0046] I / O subsystem 106 couples input / output peripherals on device 100, such as touch screen 112 and other input control devices 116, with peripherals interface 118. I / O subsystem 106 optionally includes display controller 156, optical sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive and / or send electrical signals from / to 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, etc. In some alternate embodiments, input controller(s) 160 are, optionally, coupled with any (or none) of the following: a keyboard, infrared port, USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2) optionally include an up / down button for Figure 2 Figure 2
[0047] A quick press of the down button (206) optionally disengages a lock of touch screen (112) or optionally begins a process that uses a gesture on the touch screen (112) to unlock the device, as described in U.S. Patent Application 11 / 322,549 (now U.S. Patent No. 7,657,849), “Unlocking a Device by Performing Gestures on an Unlock Image,” filed on December 23, 2005, which is hereby incorporated by reference in its entirety. A longer press of the down button (206) optionally turns power to device 100 on or off. The user can customize a functionality of one or more of the buttons. Touch screen (112) is used to implement virtual or soft buttons and one or more soft keyboards.
[0048] Touch-sensitive display 112 provides an input interface and an output interface between device and user. Display controller 156 receives and / or sends electrical signals from / to touch screen 112. Touch screen 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively termed “graphics”). In some embodiments, some or all of the visual output optionally corresponds to user-interface objects.
[0049] Touch screen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from the user based on haptic and / or tactile contact. Touch screen 112 and display controller 156 (along with any associated modules and / or sets of instructions in memory 102) detect contact (and any movement or breaking of the contact) on touch screen 112 and convert the
[0050] Touch screen 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touch screen 112 and display controller 156 optionally use and iPod The technology used in
[0051] The touch-sensitive display in some embodiments of the touch screen 112 is optionally similar to the multi-touch-sensitive trackpad described in the following U.S. Patents: 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman et al.), and / or U.S. Patent Publication 2002 / 0015024A1, each of which is hereby incorporated by reference in its entirety. However, the touch screen 112 displays visual output from the device 100, whereas a touch-sensitive trackpad does not provide visual output.
[0052] In some embodiments, the touch-sensitive display of the touch screen 112 is as described in the following patent applications: (1) U.S. patent application No. 11 / 381,313, filed on May 2, 2006, entitled “Multipoint Touch Surface Controller”; (2) U.S. patent application No. 10 / 840,862, filed on May 6, 2004, entitled “Multipoint Touchscreen”; (3) U.S. patent application No. 10 / 903,964, filed on July 30, 2004, entitled “Gestures For Touch Sensitive Input Devices”; (4) U.S. patent application No. 11 / 048,264, filed on January 31, 2005, entitled “Gestures For Touch Sensitive Input Devices”; (5) U.S. patent application No. 11 / 050,264, filed on January 18, 2005, entitled “Mode-Based Graphical User Interfaces For Touch Sensitive and (9) U.S. patent application No. 11 / 367,749, filed on March 3, 2006, entitled “Multi-Functional Hand-Held Device.” All of these applications are hereby incorporated by reference in their entirety.
[0053] 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 uses any suitable object or appendage, such as a stylus, a finger, or the like, to contact the touch screen 112. In some embodiments, the user interface is designed to work primarily through finger-based contacts and gestures, which may not be as precise as stylus-based input due to the larger contact area of a finger on the touch screen. In some embodiments, the device converts rough finger-based input into precise pointer / cursor positions or commands for performing the user's desired action.
[0054] In some embodiments, in addition to the touch screen, device 100 optionally includes a touchpad for activating or deactivating specific functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike a touch screen, does not display visual output. The touchpad is optionally a touch-sensitive surface that is separate from touch screen 112 or an extension of the touch-sensitive surface formed by the touch screen.
[0055] Device 100 also includes a power system 162 for powering the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, power fault detection circuitry, a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)), and any other components associated with the generation, management, and distribution of power in a portable device.
[0056] Device 100 optionally also includes one or more optical sensors 164 . Figure 1AAn optical sensor coupled to optical sensor controller 158 in I / O subsystem 106 is shown. The optical sensor 164 optionally includes charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) photoreceptor(s). The optical sensor 164 receives light from the environment, projected through one or more lens, and converts the light to data representing an image. In conjunction with imaging module 143 (also called a camera module), the optical sensor 164 optionally captures still images or video. In some embodiments, an optical sensor is located on the back of device 100, opposite the touch screen display 112 on the front of the device, so that the touch screen display is enabled for use as a viewfinder for still image and / or video image acquisition. In some embodiments, an optical sensor is located on the front of the device so that the user’s image is, optionally, obtained for video conferencing while the user views the other video conference participants on the touch screen display. In some embodiments, the position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and the sensor in the device housing) so that a single optical sensor 164 is used together with the touch screen display for both video conferencing and still and / or video image acquisition.
[0057] Device 100 optionally also includes one or more depth camera sensors 175. Figure 1A A depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106 is shown. The depth camera sensor 175 receives data from the environment to create a 3-D model representing a physical, real-world environment in 3-D space from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also called a camera module), the depth camera sensor 175 optionally captures still images or video for use by the user. In some embodiments, the depth camera sensor is located on the front of device 100 so that the user’s image is, optionally, obtained for video conferencing while the user views the other video conference participants on the touch screen display, and to capture images with depth data for a selfie. In some embodiments, the depth camera sensor 175 is located on the back of device 100, or on the back and the front of the device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and the sensor in the device housing) so that the depth camera sensor 175 is used together with the touch screen display for both video conferencing and still and / or video image acquisition.
[0058] Device 100 optionally also includes one or more contact intensity sensors 165. Figure 1AA contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106 is shown. Contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor 165 receives contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is collocated with, or proximate to, a touch-sensitive surface (e.g., touch- sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touch screen display 112 which is located on the front of device 100.
[0059] Device 100 optionally also includes one or more proximity sensors 166. Figure 1A Proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 in I / O subsystem 106. Proximity sensor 166 optionally performs the contactless detection functions described in the following applications: No. 11 / 241,839, "Proximity Detector In Handheld Device"; No. 11 / 240,788, "Proximity Detector In Handheld Device"; No. 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output"; No. 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices"; and No. 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are hereby incorporated by reference in their entirety. In some embodiments, the proximity sensor turns off and disables touch screen 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).
[0060] Device 100 optionally also includes one or more tactile output generators 167. Figure 1AA tactile output generator coupled to tactile feedback controller 161 in I / O subsystem 106 is shown. Tactile output generator 167 optionally includes one or more electroacoustic devices such as speakers or other audio components and / or electromechanical devices such as a motor, a solenoid, an electroactive polymer, a piezoelectric actuator, an electrostatic actuator or other tactile output generating component (e.g., a component for converting electrical signals into tactile outputs on the device). Contact intensity sensor 165 receives tactile feedback generation instructions from haptic feedback module 133 and generates tactile outputs on device 100 that a user is able to feel. In some embodiments, at least one tactile output generator is co-located with a touch-sensitive surface (e.g., touch-sensitive display system 112), and, optionally, generates a tactile output by moving the touch-sensitive surface vertically (e.g., in / out of a surface of device 100) or laterally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the back of device 100, opposite touch screen display 112 located on the front of device 100.
[0061] Device 100 optionally also includes one or more accelerometers 168. Figure 1A An accelerometer 168 coupled to peripherals interface 118 is shown. Alternatively, accelerometer 168 is coupled to an input controller 160 in I / O subsystem 106. Accelerometer 168 optionally performs as described in U.S. Patent Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated by reference herein in their entirety. In some embodiments, information is displayed on the touch screen display in a portrait view or a landscape view, based on a determination of an orientation of device 100 using one or more accelerometers. Some embodiments include a magnetometer (e.g., a digital compass) and a GPS (or GLONASS or other global navigation system) receiver for obtaining information concerning the location and orientation (e.g., portrait or landscape) of device 100.
[0062] In some embodiments, software components stored in memory 102 include operating system 126, communication module (or set of instructions) 128, contact / motion module (or set of instructions) 130, graphics module (or set of instructions) 132, text input module (or set of instructions) 134, Global Positioning System (GPS) module (or set of instructions) 135, and applications (or sets of instructions) 136. Further, in some embodiments, memory 102 Figure 1A ) or 370 Figure 3 ) stores device / global internal state 157, as shown in Figure 1A and Figure 3 Device / global internal state 157 includes one or more of: active application state, indicating which applications, if any, are currently active; display state, indicating what, if anything, is currently on display; sensor state, including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's location and / or attitude.
[0063] Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates wireless
[0064] Communication module 128 facilitates communication with other devices over one or more external ports 124 and also includes various software components for handling data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) is adapted for coupling directly to other devices or indirectly over a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, or similar to, and / or compatible with, the 30-pin connector used on iPod® (trademark of Apple Inc.), iPhone® and iPad® (trademarks of Apple Inc.) devices. (Apple Inc. trademarks) devices.
[0065] Contact / motion module 130 optionally detects contact with touch screen 112 (in conjunction with display controller 156) and other touch- sensitive devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to detection of contact, such as determining if contact has occurred (e.g., detecting a finger-down event), determining an intensity of the contact (e.g., the force or pressure of the contact or a substitute for the force or pressure of the contact), determining if movement has occurred (e.g., detecting a finger-drag event), and determining if an object making contact has been moved (e.g., detecting a finger-lift event or a contact lift-off event) on the touch screen. Contact / motion module 130 receives contact data from the touch screen. Determining movement of the point of contact, optionally, includes determining speed (magnitude), velocity (magnitude and direction), and / or acceleration (a change in magnitude and / or direction) of the point of contact, as represented by a series of contact data points. These operations are, optionally, applied to single contact events (e.g., one finger events) or to multiple simultaneous contact events (e.g., "multitouch" events).
[0066] In some embodiments, contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an operation has been performed (e.g., whether a user has "clicked" an icon). In some embodiments, at least a subset of the intensity thresholds is determined based on software parameters (e.g., the intensity thresholds are not determined by activation thresholds of particular physical actuators and can be adjusted without changing the physical hardware of device 100). For example, without changing the touchpad or touch screen display hardware, a mouse "click" threshold of the touchpad or touch screen can be set to any of a range of pre-defined thresholds. Additionally, in some implementations, a user of 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 at once with a system-wide click on an "intensity" parameter).
[0067] Contact / motion module 130 optionally detects intensities of contacts (e.g., related to the strength, duration, and / or the movement of the contacts) on touch-sensitive surface 112, as well as other physical inputs (e.g., related to the movement, acceleration, and / or deceleration of device 100). Contact / motion module 130
[0068] Graphics module 132 includes various known software components for rendering and displaying graphics on touch screen 112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual property) of graphics that are displayed. As used herein, the term "graphics" includes any object that can be displayed to a user, including, without limitation, text, web pages, icons (such as user-interface objects including soft keys), digital images, videos, animations, and the like.
[0069] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives, from applications etc., one or more codes specifying graphics to be displayed, and then generates screen image data for a
[0070] Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator(s) 167 to produce tactile outputs at one or more locations on device 100 in response to user interactions with device 100.
[0071] Text input module 134, which is, optionally, a component of graphics module 132, provides soft keyboards for entering text in various applications (e.g., contacts 137, e-mail 140, IM 141, browser 147, and any other application that needs text input).
[0072] GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to telephone 138 for use in location-based dialing; to camera 143 as picture / video metadata; and to applications that provide location- based services such as weather, yellow page, and map / navigation services).
[0073] The application programs 136 optionally include the following modules (or sets of instructions) or a subset or superset thereof:
[0074] • a contacts module 137 (sometimes referred to as an address book or contact list);
[0075] • a telephone module 138;
[0076] • a video conferencing module 139;
[0077] • an e-mail client module 140;
[0078] • an instant messaging (IM) module 141;
[0079] • a workout support module 142;
[0080] • a camera module 143 for still and / or video images;
[0081] • an image management module 144;
[0082] • a video player module;
[0083] • a music player module;
[0084] • a browser module 147;
[0085] • a calendar module 148;
[0086] • a widget module 149 that optionally includes one or more of the following widgets: a weather widget 149-1, a stock widget 149-2, a calculator widget 149-3, a clock widget 149-4, a dictionary widget 149-5, and other widgets acquired by the user as well as user-created widgets 149-6;
[0087] • a widget creator module 150 for forming the user-created widgets 149-6;
[0088] • a search module 151;
[0089] • a video and music player module 152, which integrates a video player module and a music player module;
[0090] • a notepad module 153;
[0091] • a map module 154; and / or
[0092] • an online video module 155.
[0093] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, rendering applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice replication.
[0094] In combination with the touch screen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, the contacts module 137 is optionally used to manage an address book or contact list (e.g., stored in the application internal state 192 of the contacts module 137 in memory 102 or memory 370), including: adding one or more names to the address book; deleting names from the address book; associating phone numbers, email addresses, physical addresses, or other information with names; associating images with names; categorizing and classifying names; providing phone numbers or email addresses to initiate and / or facilitate communications via telephone 138, video conferencing module 139, email 140, or IM 141; and so on.
[0095] In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, phone module 138 is optionally used to enter a character sequence corresponding to a phone number, access one or more phone numbers in contacts module 137, modify an entered phone number, dial the corresponding phone number, conduct a conversation, and disconnect or hang up when the conversation is complete. As described above, wireless communication optionally uses any of a variety of communication standards, protocols, and technologies.
[0096] In combination with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the optical sensor 164, the optical sensor controller 158, the contact / motion module 130, the graphics module 132, the text input module 134, the contact module 137 and the telephone module 138, the video conferencing module 139 includes executable instructions for initiating, conducting and terminating a video conference between a user and one or more other participants in accordance with user instructions.
[0097] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 makes it very easy to create and send emails with still images or video images captured by camera module 143.
[0098] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134, the instant messaging module 141 includes executable instructions for entering a character sequence corresponding to an instant message, modifying previously entered characters, transmitting the corresponding instant message (e.g., using the Short Message Service (SMS) or Multimedia Messaging Service (MMS) protocol for phone-based instant messaging or using XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported in MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both phone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
[0099] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154, and the music player module, the fitness support module 142 includes executable instructions for creating a workout (e.g., with time, distance, and / or calorie burn goals); communicating with fitness sensors (sports equipment); receiving fitness sensor data; calibrating sensors for monitoring fitness; selecting and playing music for a workout; and displaying, storing, and transmitting fitness data.
[0100] In combination with the touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132 and image management module 144, the camera module 143 includes executable instructions for the following operations: capturing still images or videos (including video streams) and storing them in the memory 102, modifying the characteristics of the still images or videos, or deleting the still images or videos from the memory 102.
[0101] In conjunction with touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and camera module 143, image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing still images and / or video images.
[0102] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132 and the text input module 134, the browser module 147 includes executable instructions for browsing the Internet in accordance with user instructions, including searching for, linking to, receiving and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0103] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the email client module 140 and the browser module 147, the calendar module 148 includes executable instructions for creating, displaying, modifying and storing a calendar and data associated with the calendar (e.g., calendar entries, to-do items, etc.) in accordance with user instructions.
[0104] In conjunction with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, the desktop widget module 149 is a mini-application that is optionally downloaded and used by the user (e.g., the weather desktop widget 149-1, the stock desktop widget 149-2, the calculator desktop widget 149-3, the alarm desktop widget 149-4, and the dictionary desktop widget 149-5) or a mini-application created by the user (e.g., the user-created desktop widget 149-6). In some embodiments, the desktop widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, the desktop widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., the Yahoo! desktop widget).
[0105] In combination with the RF circuit 108, touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134 and browser module 147, the desktop widget creator module 150 is optionally used by a user to create a desktop widget (e.g., converting a user-specified portion of a web page into a desktop widget).
[0106] In combination with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132 and text input module 134, the search module 151 includes executable instructions for searching the memory 102 for text, music, sound, images, videos and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.
[0107] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions that allow a user to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing back video (e.g., on touch screen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (trademark of Apple Inc.).
[0108] In conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the notepad module 153 includes executable instructions for creating and managing notes, to-do lists, etc. according to user instructions.
[0109] In combination with the RF circuitry 108, touch screen 112, display controller 156, touch / motion module 130, graphics 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 relating to stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.
[0110] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, and browser module 147, online video module 155 includes instructions for allowing a user to access, browse, receive (e.g., by streaming and / or downloading), play back (e.g., on the touch screen or on an external display connected via external port 124), send an email with a link to a particular online video, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, instant messaging module 141 is used instead of email client module 140 to send a link to a particular online video. Additional descriptions of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed on June 20, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” and U.S. Patent Application No. 11 / 968,067, filed on December 31, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” the contents of which are hereby incorporated by reference in their entirety.
[0111] Each of the modules and applications described above corresponds to an executable instruction set for performing one or more of the functions described above and the methods described in this patent application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) do not have to be implemented as separate software programs, processes, or modules, and thus various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. For example, a video player module is optionally combined with a music player module into a single module (e.g., Figure 1A In some embodiments, the memory 102 optionally stores a subset of the above modules and data structures. In addition, the memory 102 optionally stores additional modules and data structures not described above.
[0112] In some embodiments, device 100 is a device in which operation of a predefined set of functions on the device is performed exclusively through a touch screen and / or a touchpad. By using a touch screen and / or a touchpad as the primary input control device for operating device 100, the number of physical input control devices (e.g., push buttons, dials, etc.) on device 100 is optionally reduced.
[0113] A predefined set of functions that are exclusively performed through the touch screen and / or trackpad optionally includes navigation between user interfaces. In some embodiments, the trackpad, when touched by the user, navigates the device 100 from any user interface displayed on the device 100 to a main menu, home menu, or root menu. In such embodiments, the trackpad is used to implement a "menu button." In some other embodiments, the menu button is a physical push button or other physical input control device, rather than a trackpad.
[0114] Figure 1B is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 ( Figure 1A ) or memory 370( Figure 3 ) includes an event classifier 170 (e.g., in the operating system 126) and a corresponding application 136-1 (e.g., any one of the aforementioned applications 137 to 151, 155, 380 to 390).
[0115] Event classifier 170 receives event information and determines the application 136-1 and the application view 191 of application 136-1 to which the event information is to be delivered. Event classifier 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, application 136-1 includes an application internal state 192 that indicates one or more current application views displayed on touch-sensitive display 112 when the application is active or executing. In some embodiments, device / global internal state 157 is used by event classifier 170 to determine which application(s) is currently active, and application internal state 192 is used by event classifier 170 to determine the application view 191 to which the event information is to be delivered.
[0116] In some embodiments, the application internal state 192 includes additional information, such as one or more of the following: resumption information to be used when the application 136-1 resumes execution, user interface state information indicating that information is being displayed or is ready to be displayed by the application 136-1, a state queue for enabling the user to return to a previous state or view of the application 136-1, and a redo / undo queue of previous actions taken by the user.
[0117] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user touch on touch-sensitive display 112 as part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, one or more accelerometers 168, and / or microphone 113 (via audio circuit 110). The information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.
[0118] In some embodiments, event monitor 171 sends requests to peripheral device interface 118 at predetermined intervals. In response, peripheral device interface 118 transmits event information. In other embodiments, peripheral device interface 118 transmits event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and / or receiving an input for more than a predetermined duration).
[0119] In some embodiments, the event classifier 170 also includes a hit view determination module 172 and / or an active event identifier determination module 173.
[0120] When the touch-sensitive display 112 displays more than one view, the hit view determination module 172 provides software procedures for determining where within one or more views a sub-event has occurred. A view consists of controls and other elements that a user can see on the display.
[0121] Another aspect of the user interface associated with an application is a set of views, sometimes also referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of the respective application) in which a touch is detected optionally correspond to programmatic levels within the application's programmatic or view hierarchy. For example, the lowest-level view in which a touch is detected is optionally referred to as a hit view, and the set of events recognized as correct input is optionally determined based at least in part on the hit view of the initial touch that started the touch-based gesture.
[0122] Hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy where the sub-events should be processed. In most cases, the hit view is the lowest-level view in which the initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.
[0123] Active event recognizer determination module 173 determines which view or views within the view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that include the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely confined to an area associated with one particular view, views higher in the hierarchy will still remain actively participating views.
[0124] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizer determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores the event information in an event queue, which is retrieved by corresponding event receiver 182.
[0125] In some embodiments, operating system 126 includes event classifier 170. Alternatively, application 136-1 includes event classifier 170. In yet another embodiment, event classifier 170 is a standalone module or part of another module stored in memory 102, such as contact / motion module 130.
[0126] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events that occur within a corresponding view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, a corresponding application view 191 includes multiple event recognizers 180. In other embodiments, one or more of event recognizers 180 is part of a separate module, such as a user interface toolkit or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, a corresponding event handler 190 includes one or more of the following: a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from an event classifier 170. Event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update the application's internal state 192. Alternatively, one or more of the application views in application view 191 include one or more corresponding event handlers 190. Additionally, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in the corresponding application view 191.
[0127] A corresponding event identifier 180 receives event information (e.g., event data 179) from event classifier 170 and identifies an event based on the event information. Event identifier 180 includes an event receiver 182 and an event comparator 184. In some embodiments, event identifier 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (which optionally include sub-event delivery instructions).
[0128] The event receiver 182 receives event information from the event classifier 170. The event information includes information about sub-events such as touches or touch movements. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event involves the movement of a touch, the event information optionally also includes the rate and direction of the sub-event. In some embodiments, the event includes the device rotating from one orientation to another (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device posture).
[0129] The event comparator 184 compares the event information with a predefined event or sub-event definition and determines the event or sub-event based on the comparison, or determines or updates the state of the event or sub-event. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes the definition of an event (e.g., a predefined sequence of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, the sub-events in event (187) include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition of event 1 (187-1) is a double-click on a displayed object. For example, a double-click includes a first touch (touch start) of a predetermined duration on the displayed object, a first lift-off (touch end) of a predetermined duration, a second touch (touch start) of a predetermined duration on the displayed object, and a second lift-off (touch end) of a predetermined duration. In another example, the definition of event 2 (187-2) is a drag on a displayed object. For example, dragging includes a touch (or contact) of a predetermined duration on a displayed object, movement of the touch on the touch-sensitive display 112, and lifting of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.
[0130] In some embodiments, event definition 187 includes definitions of events for corresponding user interface objects. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with a sub-event. For example, in an application view displaying three user interface objects on touch-sensitive display 112, when a touch is detected on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a corresponding event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler that is associated with the sub-event and the object that triggered the hit test.
[0131] In some embodiments, the definition of the corresponding event (187) also includes a delay action that delays the delivery of the event information until it has been determined that the sub-event sequence does or does not correspond to the event type of the event identifier.
[0132] When a corresponding event recognizer 180 determines that a sequence of sub-events does not match any event in event definitions 186, the corresponding event recognizer 180 enters the event impossible, event failed, or event ended state, after which subsequent sub-events of the touch-based gesture are ignored. In this case, other event recognizers (if any) that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
[0133] In some embodiments, corresponding event recognizers 180 include metadata 183 with configurable properties, flags, and / or lists that indicate how the event delivery system should perform sub-event delivery for actively participating event recognizers. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact or can interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate whether sub-events are delivered to different levels in a view or programmatic hierarchy.
[0134] In some embodiments, when one or more specific sub-events of an event are identified, the corresponding event recognizer 180 activates an event handler 190 associated with the event. In some embodiments, the corresponding event recognizer 180 delivers event information associated with the event to the event handler 190. Activating an event handler 190 is different from sending (and deferred sending) sub-events to the corresponding hit view. In some embodiments, the event recognizer 180 throws a flag associated with the identified event, and the event handler 190 associated with the flag obtains the flag and performs a predefined process.
[0135] In some embodiments, event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with the sub-event sequence or to an actively participating view. The event handler associated with the sub-event sequence or with the actively participating view receives the event information and performs a predetermined process.
[0136] In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates phone numbers used in contact module 137 or stores video files used in 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 location of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on a touch-sensitive display.
[0137] In some embodiments, event handler 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 the corresponding application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0138] It should be understood that the above discussion of event handling for user touches on a touch-sensitive display also applies to other forms of user input utilizing input devices to operate the multifunction device 100, and not all user input is initiated on a touch screen. For example, mouse movement and mouse button presses, optionally in conjunction with single or multiple keyboard presses or holddowns; contact movement on a trackpad, such as taps, drags, scrolls, etc.; stylus input; movement of the device; spoken commands; detected eye movement; biometric input; and / or any combination thereof, are optionally used as input corresponding to sub-events defining the event to be recognized.
[0139] Figure 2A portable multifunction device 100 with a touch screen 112 is shown according to some embodiments. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment and other embodiments described below, a user can select one or more of the graphics by, for example, making gestures on the graphics using one or more fingers 202 (not drawn to scale in the figure) or one or more styluses 203 (not drawn to scale in the figure). In some embodiments, selection of the one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (from left to right, from right to left, up and / or down), and / or rolling of a finger that has made contact with the device 100 (from right to left, from left to right, up and / or down). In some specific implementations or in some cases, inadvertent contact with a graphic does not select the graphic. For example, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.
[0140] The device 100 optionally also includes one or more physical buttons, such as a "home" or menu button 204. As previously described, the menu button 204 is optionally used to navigate to any application 136 in a set of applications that are optionally executed on the device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen 112.
[0141] In some embodiments, the device 100 includes a touch screen 112, a menu button 204, a push button 206 for turning the device on / off and for locking the device, one or more volume adjustment buttons 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and a docking / charging external port 124. The push button 206 is optionally used to turn the device on / off by pressing the button and holding it in the depressed state for a predefined time interval; to lock the device by pressing the button and releasing it before the predefined time interval has elapsed; and / or to unlock the device or initiate an unlocking process. In an alternative embodiment, the device 100 also accepts voice input for activating or deactivating certain functions via the microphone 113. The device 100 also optionally includes one or more contact force sensors 165 for detecting the intensity of contact on the touch screen 112, and / or one or more tactile output generators 167 for generating tactile output for the user of the device 100.
[0142] Figure 33 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments. The device 300 does not have to be portable. In some embodiments, the device 300 is a laptop, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a children's learning toy), a gaming system, or a control device (e.g., a home controller or an industrial controller). The device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, a memory 370, and one or more communication buses 320 for interconnecting these components. The communication bus 320 optionally includes circuits (sometimes referred to as a chipset) that interconnect system components and control communications between system components. The device 300 includes an input / output (I / O) interface 330 having a display 340, which is typically a touch screen display. The I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 for generating tactile output on the device 300 (e.g., similar to the above referenced device). Figure 1A The tactile output generator 167 described above), sensor 359 (e.g., optical sensor, acceleration sensor, proximity sensor, touch sensor and / or contact intensity sensor (similar to the above reference Figure 1A The memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid-state memory devices; and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. The memory 370 optionally includes one or more storage devices located remotely from the CPU 310. In some embodiments, the memory 370 stores data related to the portable multifunction device 100 ( Figure 1A ) or a subset thereof. In addition, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores a drawing module 380, a presentation module 382, a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while portable multifunction device 100( Figure 1A )'s memory 102 optionally does not store these modules.
[0143] Figure 3Each of the above identified elements can optionally be stored on one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above. The above identified modules or programs (i.e., set of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules can optionally be combined or otherwise re-arranged in various embodiments. In some embodiments, memory 370 optionally stores a subset of the modules and data structures identified above. Furthermore, memory 370 optionally stores additional modules and data structures not described above.
[0144] Attention is now directed towards embodiments of user interfaces that are optionally implemented on portable multifunction devices 100.
[0145] Figure 4A An exemplary user interface that includes an application menu on portable multifunction device 100 is shown. Similar user interfaces are optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof:
[0146] • Signal strength indicators 402 for wireless communications, such as cellular and Wi-Fi signals;
[0147] • Time 404;
[0148] • Bluetooth indicator 405;
[0149] • Battery status indicator 406;
[0150] • Tray 408 with icons for commonly used applications, such as:
[0151] • Icon 416 for telephone module 138 labeled "Phone," which optionally includes an indicator 414 of the number of missed calls or voice mails;
[0152] • Icon 418 for email client module 140 labeled "Mail," which optionally includes an indicator 410 of the number of unread emails;
[0153] • Icon 420 for browser module 147 labeled "Safari"; and
[0154] • Icon 422 for video and music player module 152, also referred to as iPod (trademark of Apple Inc.) module 152, labeled "iPod"; and
[0155] • Icons for other applications, such as:
[0156] o Icon 424 labeled "Messages" of the IM module 141;
[0157] o An icon 426 labeled “Calendar” of the calendar module 148;
[0158] o Icon 428 labeled "Photos" of the image management module 144;
[0159] o An icon 430 labeled “Camera” of the camera module 143;
[0160] ○ An icon 432 labeled “Online Video” of the online video module 155;
[0161] ○ Icon 434 labeled “Stock Market” of the Stock Market widget 149-2;
[0162] o An icon 436 labeled “Map” of the map module 154;
[0163] ○ Icon 438 labeled “Weather” of the weather widget 149-1;
[0164] ○ Icon 440 labeled “Clock” of the alarm clock widget 149-4;
[0165] o An icon 442 labeled “Fitness Support” of the fitness support module 142;
[0166] o An icon 444 labeled "Notepad" of the Notepad module 153; and
[0167] o An icon 446 of a settings application or module labeled “Settings” that provides access to settings for the device 100 and its various applications 136 .
[0168] It should be pointed out that Figure 4A The icon labels shown are exemplary only. For example, icon 422 for video and music player module 152 is labeled "Music" or "Music Player." Other labels are optionally used for various application icons. In some embodiments, the label of a respective 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.
[0169] Figure 4B A touch-sensitive surface 451 (eg, touch screen display 112) is shown having a touch-sensitive surface 451 (eg, touch screen display 112) that is separate from a display 450 (eg, touch screen display 112). Figure 3 tablet or trackpad 355) of the device (e.g., Figure 3Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting intensity of contacts on touch-sensitive surface 451 and / or one or more tactile output generators 357 for generating tactile output for a user of device 300.
[0170] Although some of the examples below will be given with reference to input on a touch screen display 112 (where the touch-sensitive surface and display are combined), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, such as Figure 4B In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a main axis (e.g., Figure 4B 453) corresponding to the main axis (for example, Figure 4B According to these embodiments, the device detects a position corresponding to a corresponding position on the display (e.g., Figure 4B , 460 corresponds to 468 and 462 corresponds to 470 ) at contact with touch-sensitive surface 451 (e.g., Figure 4B 460 and 462 in FIG. 4. Thus, when the touch-sensitive surface (e.g., Figure 4B 451) and a display of a multi-function device (e.g., Figure 4B When the user interface 450 in FIG. 1 is separated, the user input detected by the device on the touch-sensitive surface (e.g., contacts 460 and 462 and their movement) is used by the device to manipulate the user interface on the display. It should be understood that similar methods are optionally used for other user interfaces described herein.
[0171] In addition, although the following examples are primarily given with reference to finger inputs (e.g., finger contacts, single-finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of these finger inputs are replaced by input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of contact), followed by movement of the cursor along the path of the swipe (e.g., instead of movement of the contact). For another example, a tap gesture is optionally replaced by a mouse click when the cursor is over the location of the tap gesture (e.g., instead of detecting the contact, followed by ceasing to detect the contact). Similarly, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice are optionally used simultaneously, or mice and finger contacts are optionally used simultaneously.
[0172] Figure 5AAn exemplary personal electronic device 500 is shown. The device 500 includes a body 502. In some embodiments, the device 500 may include a body 502 relative to the devices 100 and 300 (e.g., Figures 1A to 4B ) some or all of the features described in . In some embodiments, device 500 has a touch-sensitive display screen 504, referred to hereinafter as touch screen 504. As an alternative to or in addition to touch screen 504, device 500 has a display and a touch-sensitive surface. As with devices 100 and 300, in some embodiments, touch screen 504 (or touch-sensitive surface) optionally includes one or more intensity sensors for detecting the intensity of applied contact (e.g., touch). The one or more intensity sensors of touch screen 504 (or touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to touches based on the intensity of the touch, which means that touches of different intensities can invoke different user interface operations on device 500.
[0173] Exemplary techniques for detecting and processing touch intensity are found, for example, in the following related patent applications: International Patent Application Serial No. PCT / US2013 / 040061, filed on May 8, 2013, entitled “Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application,” published as WIPO Patent Publication No. WO / 2013 / 169849; and International Patent Application Serial No. PCT / US2013 / 069483, filed on November 11, 2013, entitled “Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships,” published as WIPO Patent Publication No. WO / 2014 / 105276, each of which is hereby incorporated by reference in its entirety.
[0174] In some embodiments, the device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508 (if included) can be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, the device 500 has one or more attachment mechanisms. Such attachment mechanisms (if included) can allow the device 500 to be attached to, for example, hats, glasses, earrings, necklaces, shirts, jackets, bracelets, watchbands, bracelets, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow the user to wear the device 500.
[0175] Figure 5B An exemplary personal electronic device 500 is shown. In some embodiments, the device 500 may include a reference Figure 1A 、 Figure 1B and Figure 3 Some or all of the components described. Device 500 has a bus 512 that operatively couples an I / O portion 514 to one or more computer processors 516 and a memory 518. The I / O portion 514 can be connected to a display 504, which can have a touch-sensitive component 522 and optionally a strength sensor 524 (e.g., a contact strength sensor). In addition, the I / O portion 514 can 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 input mechanisms 506 and / or 508. For example, the input mechanism 506 is optionally a rotatable input device or a depressible input device and a rotatable input device. In some examples, the input mechanism 508 is optionally a button.
[0176] In some examples, input mechanism 508 is optionally a microphone. Personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which are operatively connected to I / O portion 514.
[0177] The memory 518 of the personal electronic device 500 can include one or more non-transitory computer-readable storage media that stores computer-executable instructions that, when executed by the one or more computer processors 516, for example, cause the computer processors to perform the techniques described below, including the method 700. The computer-readable storage media can be any media capable of Figure 5B storing computer-executable instructions for use by or in connection with an instruction execution system, apparatus, and device. In some examples, the storage media is a transitory computer-readable storage medium. In some examples, the storage media is a non-transitory computer-readable storage medium. The non-transitory computer-readable storage medium can include, but is not limited to, magnetic, optical, and / or semiconductor storages. Examples of such storage include magnetic disks, optical discs based on CD, DVD, or Blu-ray technologies, and persistent solid-state memory such as flash, solid-state drives, etc. The personal electronic device 500 is not limited to these examples, however, and can include other or additional components in multiple configurations.
[0178] As used herein, the term “affordance” refers to a user-interactive graphical user interface object that is optionally displayed on a display screen of the device 100, 300, and / or 500 Figure 1A , Figure 3 and Figures 5A to 5B . For example, an image (e.g., an icon), a button, and text (e.g., a hyperlink) each optionally comprise an affordance.
[0179] As used herein, the term “focus selector” refers to an input element that indicates a current portion of a user interface with which the user is interacting. In some implementations that include a cursor or other location marker, the cursor acts as an example of a focus selector, so that when an element is highlighted by the cursor, that element is the current Figure 3 that is adjusted in accordance with the detected input. In some implementations that include a touch screen display (e.g., the touch-sensitive display system 112 in Figure 4B or the touch-sensitive surface 451 in Figure 1A , the touch screen display itself acts as a focus selector, so that when an element is highlighted by a user’s touch input, that element is the current Figure 4AIn some implementations of the touch screen 112 in Figures 1A-1C, contacts detected on the touch screen act as a "focus selector," such that when an input (e.g., a press input by a contact) is detected on the touch screen display at a location of a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface without the corresponding movement of the cursor or movement of the contact on the touch screen display (e.g., by using the tab key or arrow keys to move focus from one button to another button); in these implementations, the focus selector moves according to the movement of focus between different regions of the user interface. Regardless of the particular form that the focus selector takes, the focus selector is generally user-controlled, such that the focus selector is moved on the user interface in accordance with user input (e.g., to place the focus selector on a desired element of the user interface that the user wishes to interact with). For example, when a press input is detected on the touch- sensitive surface (e.g., a touchpad or a touch screen), the location of the focus selector (e.g., a cursor, a contact, or a selection box) on the respective button at the time of the press input will indicate the element of the user interface that the user desires to activate (as opposed to other user interface elements displayed on the device display).
[0180] As used in the specification and claims, the term "characteristic intensity" of a contact refers to a characteristic of the contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples or a set of intensity samples collected during a predetermined time period (e.g., 0.05 seconds, 0.1 seconds, 0.2 seconds, 0.5 seconds, 1 second, 2 seconds, 5 seconds, 10 seconds) relative to a predefined event (e.g., after contact is detected, before contact is detected to be lifted off, before or after contact begins to move, before contact ends, before or after contact is detected to increase in intensity, and / or before or after contact is detected to decrease in intensity). The characteristic intensity of a contact is optionally based on one or more of the following: the maximum value of the intensity of the contact, the mean value of the intensity of the contact, the average value of the intensity of the contact, the value at the top 10% of the intensity of the contact, the half-maximum value of the intensity of the contact, the 90% maximum value of the intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is the average value of the intensity of the contact over time). In some embodiments, the feature strength is compared to a set of one or more strength thresholds to determine whether the user has performed an operation. 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 contact whose feature strength does not exceed the first threshold results in a first operation, a contact whose feature strength exceeds the first strength threshold but does not exceed the second strength threshold results in a second operation, and a contact whose feature strength exceeds the second threshold results in a third operation. In some embodiments, a comparison between the feature strength and one or more thresholds is used to determine whether to perform one or more operations (e.g., whether to perform the corresponding operation or to abandon the corresponding operation) rather than to determine whether to perform the first operation or the second operation.
[0181] Figure 5C Detecting multiple contacts 552A-552E on touch-sensitive display 504 using multiple intensity sensors 524A-524D is shown. Figure 5C Also included is an intensity graph that shows the current intensity measurements of intensity sensors 524A-524D relative to intensity units. In this example, the intensity measurements of intensity sensors 524A and 524D are both 9 intensity units, and the intensity measurements of intensity sensors 524B and 524C are both 7 intensity units. In some implementations, the cumulative intensity is the sum of the intensity measurements of multiple intensity sensors 524A-524D, which in this example is 32 intensity units. In some embodiments, each contact is assigned a corresponding intensity, which is a portion of the cumulative intensity. Figure 5D554. The cumulative strength assigned to contacts 552A-552E based on their distance from the center of force 554 is shown. In this example, each of contacts 552A, 552B, and 552E is assigned a strength of the contact of 8 strength units of the cumulative strength, and each of contacts 552C and 552D is assigned a strength of the contact of 4 strength units of the cumulative strength. More generally, in some embodiments, each contact j is assigned a corresponding strength Ij that is a portion of the cumulative strength A according to a predefined mathematical function Ij=A·(Dj / ΣDi), where Dj is the distance of the corresponding contact j from the center of force, and ΣDi is the sum of the distances of all corresponding contacts (e.g., i=1 to the last) from the center of force. The reference may be performed using an electronic device similar to or identical to device 100, 300, or 500. Figures 5C to 5D In some embodiments, the characteristic intensity of the contact is based on one or more intensities of the contact. In some embodiments, the intensity sensor is used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). It should be noted that the intensity map is not part of the displayed user interface, but is included in the Figures 5C to 5D To assist readers.
[0182] In some embodiments, a portion of a gesture is identified for determining the characteristic strength. For example, the touch-sensitive surface optionally receives a continuous swipe contact that transitions from a starting position and reaches an end position where the contact strength increases. In this example, the characteristic strength of the contact at the end position is optionally based only on a portion of the continuous swipe contact, rather than the entire swipe contact (e.g., only the portion of the swipe contact at the end position). In some embodiments, a smoothing algorithm is optionally applied to the intensity of the swipe contact before determining the characteristic strength of the contact. For example, the smoothing algorithm optionally includes one or more of the following: an unweighted sliding average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some cases, these smoothing algorithms eliminate narrow peaks or dips in the intensity of the swipe contact to achieve the purpose of determining the characteristic strength.
[0183] The intensity of the contact on the touch-sensitive surface is optionally characterized relative to one or more intensity thresholds, such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device will perform an operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device will perform an operation different from the operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, when a contact is detected with a characteristic intensity below the light press intensity threshold (e.g., and above a nominal contact detection intensity threshold, contacts below the nominal contact detection intensity threshold are no longer detected), the device will move the focus selector in accordance with the movement of the contact on the touch-sensitive surface, without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally speaking, unless otherwise stated, these intensity thresholds are consistent between different groups of user interface illustrations.
[0184] An increase in contact feature intensity from an intensity below a light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold is sometimes referred to as a "light press" input. An increase in contact feature intensity from an intensity below a deep press intensity threshold to an intensity above the deep press intensity threshold is sometimes referred to as a "deep press" input. An increase in contact feature intensity from an intensity below a contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light press intensity threshold is sometimes referred to as detecting a contact on the touch surface. A decrease in contact feature intensity from an intensity above the contact detection intensity threshold to an intensity below the contact detection intensity threshold is sometimes referred to as detecting a contact lifted from the touch surface. In some embodiments, the contact detection intensity threshold is zero. In some embodiments, the contact detection intensity threshold is greater than zero.
[0185] In some embodiments described herein, one or more operations are performed in response to detecting a gesture that includes a corresponding press input or in response to detecting a corresponding press input performed using a corresponding contact (or multiple contacts), wherein the corresponding press input is detected at least in part based on detecting an increase in the intensity of the contact (or multiple contacts) to above a press input intensity threshold. In some embodiments, the corresponding operation is performed in response to detecting an increase in the intensity of the corresponding contact to above the press input intensity threshold (e.g., a "down stroke" of the corresponding press input). In some embodiments, the press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below the press input intensity threshold, and the corresponding operation is performed in response to detecting a subsequent decrease in the intensity of the corresponding contact to below the press input threshold (e.g., an "up stroke" of the corresponding press input).
[0186] Figures 5E to 5HDetection of a gesture is shown, the gesture comprising contact 562 with an intensity from below Figure 5E Light press intensity threshold in L ”) increases to a value higher than Figure 5H The deep press intensity threshold in D ”). On the displayed user interface 570 including application icons 572A-572D displayed in the predefined area 574, when the cursor 576 is displayed over the application icon 572B corresponding to application 2, a gesture performed using the contact 562 is detected on the touch-sensitive surface 560. In some embodiments, the gesture is detected on the touch-sensitive display 504. The intensity sensor detects the intensity of the contact on the touch-sensitive surface 560. The device determines whether the intensity of the contact 562 is within the deep press intensity threshold (e.g., “IT D ”) reaches a peak above. Contact 562 is maintained on touch-sensitive surface 560. In response to detecting the gesture, and according to the intensity rising to the deep press intensity threshold (e.g., “IT D ”) above contact 562, displays scaled representations 578A-578C (e.g., thumbnails) of documents recently opened for Application 2, as shown in FIG. Figures 5F to 5H In some embodiments, the intensity is a characteristic intensity of the contact compared to one or more intensity thresholds. It should be noted that the intensity map for contact 562 is not part of the displayed user interface, but is included in the Figures 5E to 5H To assist readers.
[0187] In some embodiments, the display of representations 578A-578C includes animation. For example, representation 578A is initially displayed near application icon 572B, as shown in FIG. Figure 5F As the animation progresses, representation 578A moves upward and representation 578B is displayed near application icon 572B, as shown. Figure 5G Then, representation 578A moves upward, 578B moves upward toward representation 578A, and representation 578C is displayed near application icon 572B, as shown in FIG. Figure 5H . Indicators 578A-578C form an array above icon 572B. In some embodiments, the animation progresses according to the intensity of contact 562, such as Figures 5F to 5G , where representations 578A-578C appear and decrease as the intensity of contact 562 moves toward a deep press intensity threshold (e.g., “IT D In some embodiments, the intensity according to which the animation progresses is the characteristic intensity of the contact. The reference may be performed using an electronic device similar to or identical to device 100, 300, or 500. Figures 5E to 5H The operation described.
[0188] In some embodiments, the device employs intensity hysteresis to avoid unexpected inputs, sometimes referred to as "jitter," where the device defines or selects a hysteresis intensity threshold that has a predefined relationship to a 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 proportion of the press input intensity threshold). Thus, in some embodiments, a press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below a hysteresis intensity threshold corresponding to the press input intensity threshold, and a corresponding operation is performed in response to detecting that the intensity of the corresponding contact subsequently decreases to below the hysteresis intensity threshold (e.g., an "upstroke" of the corresponding press input). Similarly, in some embodiments, a press input is detected only when the device detects that the contact intensity increases from an intensity equal to or below the hysteresis intensity threshold to an intensity equal to or above the press input intensity threshold and, optionally, that the contact intensity subsequently decreases to an intensity equal to or below the hysteresis intensity, and a corresponding operation is performed in response to detecting the press input (e.g., an increase in contact intensity or a decrease in contact intensity, depending on the circumstances).
[0189] For ease of explanation, a description of an operation performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is optionally triggered in response to detecting any of the following: contact intensity increasing above the press input intensity threshold, contact intensity increasing from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold, contact intensity decreasing below the press input intensity threshold, and / or contact intensity decreasing below a hysteresis intensity threshold corresponding to the press input intensity threshold. Additionally, in examples where an operation is described as being performed in response to detecting that the intensity of the contact decreases below the press input intensity threshold, the operation is optionally performed in response to detecting that the intensity of the contact decreases below a hysteresis intensity threshold that corresponds to and is less than the press input intensity threshold.
[0190] Attention is now turned to an embodiment of a user interface ("UI") and associated processes implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.
[0191] Figures 6A to 6X An exemplary user interface for providing compass application features according to some embodiments is shown. The user interface in these figures is used to illustrate the following including Figure 7 The process of the process.
[0192] Figures 6A to 6X An exemplary user interface for a compass application according to some embodiments is shown. The user interface in these figures is used to illustrate the following description of the user interface including Figure 7The process of the process.
[0193] Figure 6A An electronic device 600 is shown displaying a home screen 606 on a display 602 (e.g., a touch-sensitive display). The home screen 606 includes a plurality of application icons for launching corresponding applications. In some embodiments, the electronic device 600 includes one or more features of the device 100, the device 300, or the device 500. Figure 6A In the embodiment shown, electronic device 600 includes a rotatable input mechanism 604 that is also depressible. In some embodiments, electronic device 600 includes one or more features of device 100, device 300, or device 500.
[0194] exist Figure 6A At , the user performs a tap gesture to launch the compass application. Thus, when displaying the home screen 606, the electronic device 600 detects an input 608 at a location corresponding to the compass icon 610.
[0195] exist Figure 6B At 608, in response to detecting input 608, electronic device 600 launches a compass application and replaces the display of home screen 606 with a display of a compass user interface 612 of the compass application. Compass user interface 612 provides an indication of the direction in which electronic device 600 is oriented (e.g., 0° N). In some embodiments, compass user interface 612 corresponds to a navigation mode for assisting a user in navigating a physical environment.
[0196] The compass user interface 612 includes a needle 614 and a dial 616. The needle 614 provides an indication of one or more predefined directions. Figure 6B As shown, needle 614 points to the north and south. Specifically, the side of needle 614 with a solid portion points to the north, while the side of needle 614 with a cross-hatched portion points to the south. Similarly, dial 616 provides an indication of one or more predefined directions. Figure 6B As shown, the dial 616 includes markings (e.g., scales) corresponding to 0 ° to 359 °. The dial 616 includes marks corresponding to the markings at specific intervals to provide indications of corresponding predefined directions. For example, the marking corresponding to 0 ° is marked as "N" to represent north. As another example, the marking corresponding to 240 ° is marked as "240". Therefore, the needle 614, the dial 616, or a combination thereof provides an indication of one or more predefined directions. In some embodiments, the movement of the needle 614 is fixed to the movement of the dial 616, or vice versa. Therefore, in some embodiments, the needle 614 does not move relative to the dial 616. In some embodiments, the dial 616 is displayed without the needle 614.
[0197] The compass user interface 612 also includes a direction of travel indicator 618 that provides an indication of the direction in which the electronic device 600 is oriented and / or the direction the user intends to travel. Additionally, the compass user interface 612 includes a ring 620 that includes altitude, inclination, latitude, and longitude.
[0198] like Figure 6B As shown, the electronic device 600 is oriented in the north direction. Therefore, the electronic device 600 displays a compass user interface 612 indicating that the electronic device 600 is oriented in the north direction. For example, the dial 616 is displayed so that the 0°N marking is aligned with the direction of travel indicator 618. For ease of explanation, Figure 6B The following figures illustrate a compass 624 and a north indicator 626, which help clarify the orientation of the electronic device 600 relative to north. For example, the compass 624 includes a device representation 624A that includes physical features (e.g., a representation of the rotatable input mechanism 604) to illustrate the orientation of the electronic device 600 relative to the compass 624. In addition, the north indicator 626 is located in the north direction relative to the electronic device 600.
[0199] As described below, Figures 6B to 6D 1 shows how the compass user interface 612 is updated when the electronic device 600 changes orientation relative to north. Figure 6B , assuming the user wishes to travel west, the user turns left to face west. Note that when the user turns, the electronic device 600 moves according to the user's movement because the electronic device 600 is worn on the user's wrist. Figure 6C , due to the user's rotation, the electronic device 600 rotates the dial 616 clockwise and updates the compass user interface 612 to reflect the new direction in which the electronic device 600 is oriented. Specifically, the compass user interface 612 provides an indication that the electronic device 600 is oriented in a northwest direction at 330°.
[0200] refer to Figure 6C , the user continues to turn left until the user is facing west. Figure 6D As the rotation continues, the electronic device 600 updates the compass user interface 612 to provide an indication that the electronic device 600 is oriented in the west direction at 270°.
[0201] In some embodiments, the precision of the dial 616 and its direction indication can vary. Figure 6B , the precision indicator 622 provides an indication of the precision of the scale 616 and its indication of direction. For example, a large number of scales (e.g., 5) in the precision indicator 622 provides an indication that the scale 616 has low precision. Therefore, although Figure 6BThe dial 616 in FIG. 6 provides an indication that the electronic device 600 is oriented along North, but the accuracy indicator 622 indicates that this may not be accurate. Figure 6C The accuracy of the dial 616 increases as the number of graduations in the accuracy indicator 622 decreases. Figure 6D As shown, the ticks in the accuracy indicator 622 stop displaying, thereby indicating the high accuracy of the dial 616. In some embodiments, the high accuracy of the dial 616 can also be indicated by the accuracy indicator 622 having a single tick. In some embodiments, after receiving additional input that enables a higher accuracy measurement of the direction (e.g., after achieving a movement that improves calibration), the number of ticks in the accuracy indicator decreases to indicate an increase in the accuracy of the measurement (or a decrease in the uncertainty). In some embodiments, after the device determines that the measurement of the direction has a reduced accuracy (e.g., due to movement of the device or interference with the device's sensors, such as a nearby magnetic field), the number of ticks in the accuracy indicator increases to indicate a decrease in the accuracy of the measurement (or an increase in the uncertainty).
[0202] refer to Figure 6D , the user is facing west and the compass user interface 612 has been updated accordingly, as described above. Figure 6D As shown, the user performs a deep press gesture to navigate to a menu for setting a heading. Thus, while displaying the compass user interface 612, the electronic device 600 detects input 628. In some embodiments, the heading represents the direction the user intends to travel, such as toward a landmark.
[0203] exist Figure 6E In response to detecting input 628 and based on determining that the intensity of input 628 exceeds the intensity threshold, electronic device 600 replaces display of compass user interface 612 with display of orientation menu 634. Orientation menu 634 includes affordance 630A, which, when selected, initiates a process for setting an orientation. In some embodiments, electronic device 600 replaces display of compass user interface 612 with display of orientation menu 634 regardless of the location at which input 628 was detected.
[0204] like Figure 6E As shown, the user selects affordance 630A via a tap gesture. Thus, when displaying orientation menu 634, electronic device 600 detects tap gesture 632 at a location corresponding to affordance 630A.
[0205] exist Figure 6FAt 6: 800, in response to detecting tap gesture 632, electronic device 600 replaces display of bearing menu 634 with display of modified compass user interface 637. Modified compass user interface 637 includes one or more features of compass user interface 612, including needle 614, dial 616, and direction of travel indicator 618. In addition, modified compass user interface 637 includes a completion enable indication 638A and a cancellation enable indication 638B. In some embodiments, modified compass user interface 637 corresponds to an edit mode for setting a bearing.
[0206] like Figure 6F As shown, the user begins rotating the rotatable input mechanism 604 counterclockwise to adjust the heading toward the landmark in the southwest direction at 240°. While displaying the modified compass user interface 637 , the electronic device 600 detects an input 636A having a magnitude and a direction component via the rotatable input mechanism 604 .
[0207] exist Figure 6G , in response to detecting input 636A, electronic device 600 displays orientation indicator 640, where the size of orientation indicator 640 is based on the magnitude of input 636A. In addition, the displayed position of orientation indicator 640 is based on the directional component of input 636A. For example, in some embodiments, if the directional component of input 636A is in the opposite direction, orientation indicator 640 will be displayed to the right of direction of travel indicator 618. For ease of explanation, Figure 6G Compass 624 is shown with bearing direction 624B. Bearing direction 624B shows the direction of the bearing (eg, 240°) relative to electronic device 600.
[0208] like Figure 6G As shown, the user continues to rotate the rotatable input mechanism 604 to adjust the orientation to 240° from north. Therefore, the electronic device 600 continues to detect input 636A via the rotatable input mechanism 604. Figure 6H In some embodiments, in response to continuing to detect input 636A, electronic device 600 increases the size of orientation indicator 640 based on the magnitude of input 636A. Specifically, the size of orientation indicator 640 increases so that orientation indicator 640 corresponds to 240° (e.g., the direction of the landmark that the user intends to travel). In some embodiments, orientation indicator 640 represents an offset from the current direction in which electronic device 600 is oriented.
[0209] like Figure 6H As shown, the user sets the orientation by selecting completion indicator 638A via a tap gesture. Thus, electronic device 600 detects input 642 at a location corresponding to completion indicator 638A. Figure 6IAt , in response to detecting input 642 , electronic device 600 replaces display of modified compass user interface 637 with display of compass user interface 612 . Figure 6I The compass user interface 612 in FIG. 6 includes a bearing indicator 640 representing a bearing set at 240°.
[0210] As described above, the bearing is set to be in the direction of the landmark at 240°, to which the user intends to travel. Figure 6I , the user is facing west, which is 270° from north. The bearing indicator 640 provides an indication that the user needs to turn left a certain amount in order to face 240°. The user begins to turn left to face the landmark at 240°.
[0211] like Figure 6J As shown, because the user turns left, the electronic device 600 updates the compass user interface 612 to reflect the new direction in which the electronic device 600 is oriented. Specifically, the compass user interface 612 provides an indication that the electronic device 600 is oriented in a southwest direction at 255° from north. Additionally, updating the compass user interface 612 includes changing the bearing indicator 640 based on the movement of the electronic device 600 relative to a predefined direction (e.g., north). Thus, as the electronic device 600 moves closer to the desired direction of 240°, the size of the bearing indicator 640 decreases. Figure 6J , the user continues to turn left to face 240°.
[0212] exist Figure 6K Due to continued rotation, electronic device 600 faces the direction of the 240° orientation. Therefore, electronic device 600 updates user interface 612 to provide an indication that electronic device 600 is oriented in the southwest direction at 240°. At this point, the user and electronic device 600 are facing the landmark at 240°, and the user can use compass user interface 612 as a guide to move toward the landmark.
[0213] like Figure 6K As shown, the user rotates the rotatable input mechanism 604 to scroll through the display of additional details. Thus, while the compass user interface 612 is displayed, the electronic device 600 detects input 636B. Figure 6L In response to detecting input 636B, electronic device 600 scrolls compass user interface 612 and displays additional information. The additional information includes an indication of the direction (e.g., 240°), tilt angle (e.g., 2°), bearing (e.g., 240°), altitude above ground (e.g., 2,850 feet), latitude (e.g., 89°59'59"N), and longitude (e.g., 179°59'59"W) that the electronic device 600 is oriented. Figures 6F to 6G The input of 636A is compared to the Figure 6KRotating the rotatable input mechanism 604 (eg, once the orientation has been set) does not change the orientation. Thus, the electronic device 600 does not respond to, for example, Figure 6K The size of the orientation indicator 640 changes by rotating the rotatable input mechanism 604 at .
[0214] return Figure 6L , the user rotates the rotatable input mechanism 604 to scroll to the top of the compass user interface 612. Thus, the electronic device 600 detects input 636C and, in response, returns to displaying the compass user interface 612, as shown. Figure 6M As shown. Figure 6M At , the user performs a deep press gesture to navigate back to orientation menu 634. Thus, while displaying compass user interface 612, electronic device 600 detects input 644.
[0215] exist Figure 6N At , in response to detecting input 644 and based on determining that the intensity of input 644 exceeds the intensity threshold, electronic device 600 replaces display of compass user interface 612 with display of orientation menu 634. Figure 6E Compared with the orientation menu 634, Figure 6N The orientation menu 634 in also includes an enable indication 630B that, when selected, clears the set orientation. In some embodiments, the electronic device 600 displays the enable indication 630B in response to detecting the input 644 and based on determining that the orientation has been set. In some embodiments, clearing the set orientation causes the orientation indicator 640 to stop being displayed in the compass user interface 612. For example, in response to detecting an input 648 (e.g., a tap gesture) at the enable indication 630B, the electronic device 600 replaces the display of the orientation menu 634 with the display of the compass user interface 612 without the orientation indicator 640. Thus, the electronic device 600 will return to displaying Figure 6B , except that the compass user interface 612 will reflect that the electronic device 600 is oriented at 240° (e.g., the 240° marking on the dial 616 will be aligned with the direction of travel indicator 618).
[0216] In some embodiments, the electronic device 600 detects input 646 at the enable indication 630A and, in response, the electronic device 600 uses Figure 6F Display of a modified compass user interface 637 replaces display of the orientation menu 634, except that the modified compass user interface 637 will reflect that the electronic device 600 is oriented at 240° (e.g., the 240° marking on the dial 616 will be aligned with the direction of travel indicator 618).
[0217] return Figure 6N, the user presses the rotatable input mechanism 604. Therefore, the electronic device 600 detects the input 650 via the rotatable input mechanism 604. Figure 6O At , in response to detecting input 650 , electronic device 600 returns to displaying compass user interface 612 . Figure 6N and previous figures such as Figure 6M A compass user interface 612 is shown with a horizontal indicator 613A. Figure 6M , the horizontal indicator 613A is substantially centered relative to the compass user interface 612 (e.g., the dial 616), which provides an indication that the electronic device 600 is substantially parallel to the ground. In contrast, Figure 6O 613A is substantially not centered, which provides an indication that the electronic device 600 is substantially not parallel to the ground. Note that the horizontal indicator 613A is used when the electronic device 600 is oriented within a threshold orientation range corresponding to the orientation of the measuring device relative to the ground.
[0218] Figure 6P A tilt indicator 613B is shown that is used when the electronic device 600 is oriented within a threshold orientation range corresponding to the orientation of the measuring device relative to the direction of gravity. Figure 6P At this point, the user raises their wrist so that the electronic device 600 is substantially parallel to the direction of gravity. The user then rotates the electronic device 600 to align the device with the tilt angle of the ground. Figure 6P As shown, the tilt indicator 613B points to 2° as the tilt angle, which provides an indication that the ground is generally flat. In some embodiments, when the electronic device 600 is oriented within a threshold orientation range for measuring the orientation of the device relative to the direction of gravity, the horizontal indicator 613A stops being displayed.
[0219] Figures 6Q to 6R The compass user interface 612 is shown when insufficient sensor data (e.g., not detected) is available for determining the orientation of the electronic device 600 relative to a predefined direction. When insufficient sensor data is available, the electronic device 600 does not provide a valid indication of the orientation of the electronic device 600 relative to the predefined direction. In some embodiments, in response to determining that insufficient sensor data is available, the electronic device 600 displays the compass user interface 612 with indicators 652 and 654, each of which provides an indication that insufficient sensor data is available. Figures 6Q to 6R As shown, the electronic device 600 displays the indicator 652 in an animated manner such that the indicator 652 moves around the dial 616 as time passes.
[0220] Figures 6S to 6X Shows a clock face that includes information from a compass application. Figure 6I, the user turns right to face 300° and performs one or more inputs to navigate to the clock face. Accordingly, in accordance with some embodiments, in response to detecting the one or more inputs, the electronic device 600 displays Figure 6S the clock face 656 in FIG. 6OlO. The clock face 656 includes an indication of the time and date. In addition, the clock face 1800 includes complex function blocks 656A-656D. In some embodiments, a complex function block refers to a clock face feature other than the hours and minutes used to indicate the time (e.g., clock hands or hour / minute indications). In some embodiments, a complex function block provides a user with a different type of information, such as data obtained from an application. In some embodiments, the information conveyed to the user by a complex function block is customizable. In some embodiments, a complex function block displayed at a particular location on the display can be configured to be displayed at a different location on the clock face. In some embodiments, a complex function block or a version thereof can be displayed at two different locations on the clock face. In some embodiments, in response to detecting an input (e.g., a tap gesture) at a complex function block, the electronic device 600 replaces the display of the clock face (e.g., 656) with a display of a user interface of an application corresponding to the selected complex function block (e.g., a compass application).
[0221] As shown in Figure 6S , the clock face 656 includes complex function blocks 656A and 656C, each of which provides an indication of the direction (e.g., 300°) in which the electronic device 600 is oriented relative to a predefined direction (e.g., north). The clock face 656 also includes a complex function block 656D, which provides an indication of the altitude of the electronic device 600. In addition, the clock face 656 includes a complex function block 656B, which also provides an indication of the direction in which the electronic device 600 is oriented relative to a predefined direction. In particular, the complex function block 656B includes a dial 656B-l that functions the same as the dial 616 in the compass user interface 612 and a bearing indicator 656B-2 that functions the same as the bearing indicator 640 in the compass user interface 612.
[0222] Figures 6S to 6U is shown how the complex function block 656B is updated as the orientation of the electronic device 600 changes relative to the predefined direction (e.g., north). In Figure 6S , the user turns left to face the direction of 240°. In Figure 6T , as a result of the user turning, the electronic device 600 updates the clock face 656 to reflect the new direction in which the electronic device 600 is oriented. Accordingly, the dial 656B-l slides to the right so that 270° is substantially centered, and the bearing indicator 656B-2 is reduced in size. In addition, the complex function blocks 656A and 656C change from 300° to 270°. Reference is made to Figure 6TThe user continues to turn left to face in the direction of a 240° azimuth. In Figure 6U , the electronic device 600 updates the clock face 656 and the appropriate complication (e.g., 656A-656C) to indicate that the electronic device 600 is now oriented at 240° due to the continued turning.
[0223] Figures 6V to 6X Another alternative clock face for displaying data from a compass application is shown. In Figure 6V , the electronic device 600 displays a clock face 658 that includes complication 658A-658G and 656D. Complications 658A-658B provide an indication of the latitude and longitude, respectively. For example, complications 658A-658B include numerical values for the latitude and longitude, as shown in Figure 6V . Complications 658C-658E and 658G provide an indication of the direction (e.g., 240°) that the electronic device 600 is oriented relative to a predefined direction (e.g., north). Additionally, complication 658F provides an indication of the altitude of the electronic device 600. In Figure 6W , the electronic device 600 displays a clock face 656 that has been configured to display a different arrangement of complications than Figure 6U . For example, Figure 6W , the clock face 656 does not include complication 656B of Figure 6U . Instead, the clock face 656 includes complication 656A in a new position compared to Figure 6U . Furthermore, the clock face 656 includes complication 656E that provides an indication of the direction that the electronic device 600 is oriented relative to a predefined direction. In Figure 6X , the electronic device 600 displays a clock face 660 with complication 660A that also provides an indication of the direction that the electronic device 600 is oriented relative to a predefined direction.
[0224] Figure 7 is a flow diagram illustrating an exemplary process for a compass application in accordance with some embodiments. The method 700 is performed at a device (e.g., 100, 300, 500, 600) with a display device and a rotatable input mechanism (e.g., a physical crown with a fixed shaft that rotates relative to the display device and the housing of the electronic device around the fixed shaft). Some operations in method 700 are, optionally, combined, the order of some operations is, optionally, changed, and some operations are, optionally, omitted.
[0225] As described below, method 700 provides an intuitive way to set a bearing in a compass application. This method reduces the cognitive burden on the user to set a bearing, thereby creating a more efficient human-computer interface. For battery-powered computing devices, enabling users to set a bearing more quickly and efficiently saves power and increases the time between battery charges.
[0226] An electronic device (e.g., 600) displays a compass user interface (e.g., 637) (702) (e.g., in edit mode) via a display device (e.g., 602) having a direction indicator (e.g., 614, 616) and a bearing indicator (e.g., 640), wherein: the direction indicator (e.g., a user interface element (e.g., a V-shaped line / needle / scale) pointing to a predefined compass direction such as north, wherein the user interface element rotates on the display device as the device is rotated so that the user interface element continues to point to north) provides an indication of a corresponding compass direction (e.g., a direction relative to the Earth's magnetic field, such as cardinal directions (e.g., north (e.g., true north, magnetic north), south, west, east)), wherein the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction; and the bearing indicator provides an indication of a deviation from the corresponding compass direction (e.g., a direction relative to the Earth's magnetic field) (e.g., the direction indicator and / or a travel direction indicator such as 618 are displayed simultaneously).
[0227] In some embodiments, the direction indicator (e.g., 614, 616) includes one or more of a numeric element (e.g., degrees), a text element (e.g., cardinal directions), a graphical dial (e.g., 616), and a graphical needle (e.g., 614). In some embodiments, the position / orientation of the direction indicator on the display device (e.g., 602) changes based on (e.g., in response to) a change in the orientation of the device relative to a particular direction (e.g., relative to a fixed point on the display device). In some embodiments, the compass user interface (e.g., 637) includes a direction of travel indicator (e.g., 618) that is displayed at a fixed position / orientation on the display of the electronic device, regardless of changes in the orientation of the electronic device. In some embodiments, the direction of travel indicator provides an indication of the orientation of the electronic device relative to the direction of the environment in which the user intends to travel (e.g., the direction in which the electronic device and, optionally, the user, is facing). In some embodiments, the position / orientation of the direction of travel indicator (on the display) does not change based on (e.g., in response to) a change in the orientation of the device relative to a particular direction.
[0228] In some embodiments, the direction indicator (e.g., 640) includes a first point at a position (e.g., 618) corresponding to a corresponding compass direction (e.g., the direction the device is currently facing / oriented toward) and / or a second point at a position corresponding to the direction of the direction indicator (e.g., the direction the user intends to travel). In some embodiments, the direction indicator includes a graphical arc between the first point and the second point. In some embodiments, the graphical arc changes size in response to the device (e.g., 600) detecting a rotation of the rotatable input mechanism (e.g., 604). In some embodiments, the user configures the direction indicator to set the direction to a landmark that the user wants to travel to. In some embodiments, displaying a compass user interface (e.g., 637) (in edit mode) includes changing the visual characteristics of a displayed element (e.g., 614, 616) (e.g., a direction indicator or portion thereof) on the display device (e.g., reducing opacity, dimming, blurring, stopping display).
[0229] While the orientation indicator (e.g., 640) is displayed (in edit mode), the electronic device (e.g., 600) detects rotation of the rotatable input mechanism (e.g., 604) (e.g., via input 636A) (and, optionally, simultaneously displays the orientation indicator and the direction indicator (e.g., 614, 616)) (704).
[0230] In response to detecting the rotation of the rotatable input mechanism (706), the electronic device (e.g., 600) changes the displayed position of the orientation indicator (e.g., 640) from a first position to a second position (e.g., relative to the position of the direction indicator) by an amount determined based on the magnitude (and optionally, direction) of the rotation of the rotatable input mechanism (e.g., 604) (e.g., via input 636A) (e.g., such that changing the position of the orientation indicator to the second position changes the offset of the orientation indicator from the corresponding compass direction) (708). Changing the displayed position of the orientation indicator via the rotatable input mechanism allows the user to accurately set the orientation when the compass user interface is displayed on the small display. Using the rotatable input mechanism enhances the operability of the device and makes the user-device interface more efficient (e.g., by helping the user more efficiently set the orientation in the compass application), which additionally reduces power usage and improves the battery life of the device by enabling the user to use the device more quickly and more efficiently.
[0231] In some embodiments, changing the display position of the orientation indicator includes rotating the orientation indicator (e.g., in the case where the orientation indicator is a needle similar to needle 614). In some embodiments, in response to detecting a rotation of the rotatable input mechanism (e.g., 604), a first point of the orientation indicator remains fixed, while a second point of the orientation indicator changes. In some embodiments, further detecting a rotation of the rotatable input mechanism causes the display position of the orientation indicator to change from the second position to a third position. In some embodiments, detecting further rotation of the rotatable input mechanism causes the display position of the orientation indicator to change from the third position to the first position. In some embodiments, the amount of change in the display position of the orientation indicator is based on the detected amount of rotation of the rotatable input mechanism (e.g., magnitude, speed, and / or duration). In some embodiments, the amount of change in the display position of the orientation indicator is proportional to the detected amount of rotation of the rotatable input mechanism.
[0232] In some embodiments, detecting a change in the orientation of the electronic device (e.g., 600) relative to a corresponding compass direction causes the display position of the bearing indicator (e.g., 640) to change in a first mode (e.g., non-editing mode, i.e., when the compass user interface 612 is displayed). In some embodiments, detecting a change in the orientation of the electronic device relative to a corresponding compass direction does not cause the display position of the bearing indicator to change in a second mode (e.g., editing mode, i.e., when the compass user interface 637 is displayed). In some embodiments, detecting a rotation of the rotatable input mechanism (e.g., 604) causes the display position of the bearing indicator to change in the second mode (e.g., editing mode, i.e., when the compass user interface 637 is displayed). In some embodiments, detecting a rotation of the rotatable input mechanism does not cause the display position of the bearing indicator to change in the first mode (e.g., non-editing mode, i.e., when the compass user interface 612 is displayed). In some embodiments, activating a "Done" button (e.g., 638A) (e.g., when in the second mode, i.e., editing mode) causes the bearing indicator to be set relative to north, as shown on the display (e.g., 602). In some embodiments, when in a second mode (e.g., editing mode, i.e., when the compass user interface 637 is displayed), the display position of the orientation indicator does not change in response to the electronic device detecting a change in the orientation of the electronic device relative to a corresponding compass direction.
[0233] In some embodiments, before displaying the compass user interface (e.g., 637), the electronic device (e.g., 600) displays a second compass user interface (e.g., 612, navigation mode, i.e., first mode) having a direction indicator (e.g., 614, 616) and an orientation indicator (e.g., 640) via a display device (e.g., 602). In some embodiments, the second compass user interface does not include an orientation indicator. In some embodiments, the direction indicator provides an indication of a corresponding compass direction (e.g., a direction relative to the Earth's magnetic field, such as a cardinal direction (e.g., north (e.g., true north, magnetic north), south, west, east)). In some embodiments, the appearance of the direction indicator is determined based on the orientation of the electronic device relative to the corresponding compass direction.
[0234] In some embodiments, the bearing indicator (e.g., 640) provides an indication of an offset from a corresponding compass direction (e.g., a direction relative to the Earth's magnetic field) (e.g., thereby providing an indication of the direction to a destination to which the user intends to travel) (e.g., while displaying a direction of travel indicator (e.g., 618)). In some embodiments, the user configures the bearing indicator to set a direction to a landmark to which the user wants to travel. In some embodiments, the bearing indicator is configured to indicate that there is no offset from the corresponding compass direction. In some embodiments, displaying the bearing setting user interface (e.g., 637) includes changing a visual feature of a display element (e.g., a direction indicator or portion thereof) on the display device (e.g., reducing opacity, dimming, blurring, stopping display). In some embodiments, the bearing indicator includes a first point at a position corresponding to a corresponding compass direction (e.g., the direction the device is currently facing / oriented toward) and / or a second point at a position corresponding to the direction of the bearing indicator (e.g., the direction the user intends to travel). In some embodiments, the bearing indicator includes a graphical arc between the first point and the second point. In some embodiments, the graphical arc changes size in response to the device detecting a change in orientation relative to a corresponding compass direction. Thus, when the graphical arc ceases to be displayed, the electronic device is oriented directly in the direction of the bearing indicator (e.g., the direction the user intends to travel). In some embodiments, the bearing indicator continues to be displayed even when the electronic device is oriented directly in the direction of the bearing indicator.
[0235] In some embodiments, while displaying an orientation indicator (e.g., 640) (in a first position, in a navigation mode that is different from an editing mode (e.g., when the compass user interface 612 is displayed)), the electronic device (e.g., 600) detects a rotation of a rotatable input mechanism (e.g., 604) (e.g., via input 636B) (and optionally, displays the orientation indicator and the direction indicator simultaneously). In some embodiments, in response to detecting the rotation of the rotatable input mechanism, the electronic device abandons changing (e.g., abandons rotating) the display position of the orientation indicator (e.g., 640) relative to the direction indicators (e.g., 614, 616) (e.g., thereby not changing the offset of the orientation indicator relative to the corresponding compass direction). Abandoning the change in display position in response to detecting the rotation of the rotatable input mechanism requires the user to enter editing mode to set the orientation. Because the user needs to enter editing mode to adjust the orientation using the rotatable input mechanism, accidentally changing a previously set orientation (e.g., the current orientation setting) while in navigation mode is avoided. Preventing the orientation of a setting from being inadvertently changed enhances the operability of the device and makes the user-device interface more efficient (e.g., by helping to avoid external input that would otherwise be required to correct the orientation of the setting). In addition, this reduces power usage and improves the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0236] In some embodiments, the electronic device (e.g., 600) displays a first representation of the first geographic information (e.g., as shown in FIG. 6 ) via a display device (e.g., 602) (along with a direction indicator and an orientation indicator). Figure 6B longitude shown by ring 620 of the electronic device, specifying geographic coordinates of the east-west position of the electronic device on the surface of the earth) and a second representation of the second geographic information of the electronic device (e.g., as shown in FIG. Figure 6B The latitude shown by the ring 620 in the figure specifies the geographical coordinates of the north-south position of the electronic device on the surface of the earth). Exemplary geographical information of the electronic device includes: the geographical coordinates (longitude, latitude) of the position of the electronic device, the altitude of the position of the electronic device (e.g., the altitude above or below a fixed reference point (such as the surface of the earth or sea level), Figure 6B 620) and the tilt of the orientation of the electronic device (e.g., as shown in FIG. Figure 6BIn some embodiments, the first representation of the first geographic information and the second representation of the second geographic information are arranged in a circle (e.g., 620) or an arc (small arc, large arc) of a circle. In some embodiments, the direction indicator (e.g., 614, 616) and / or the orientation indicator are configured to rotate using the center of the circle (e.g., 620) as a pivot point. In some embodiments, the first representation of the first geographic information and the second representation of the second geographic information are displayed in both an editing mode (e.g., when the compass user interface 637 is displayed) and a navigation mode (e.g., when the compass user interface 612 is displayed). In some embodiments, the display of the representation of the geographic information is updated in real time (e.g., continuously, periodically) based on information collected by the electronic device.
[0237] In some embodiments, when a first representation of first geographic information is displayed (e.g., as in a navigation mode) at a first size (and optionally at a first orientation (e.g., non-horizontal) on a display device), the first representation of the first geographic information is displayed (e.g., as in a navigation mode). Figure 6K longitude as shown by the ring 620 of FIG) and a second representation of the second geographic information at a second size (and optionally at a second orientation on the display device) (e.g., as shown in FIG). Figure 6K latitude shown by ring 620 of , the electronic device (e.g., 600) detects a scrolling input (e.g., 636B) that includes a directional component (e.g., an upward swipe input on the touch-sensitive surface, rotation of a rotatable input mechanism (e.g., 604)).
[0238] In some embodiments, in response to detecting a scroll input (e.g., 636B), the electronic device moves the compass user interface (e.g., 612) according to the directional component to: display a third representation of the first geographic information (e.g., as shown in FIG. 1 ) at a third size that is larger than the first size (and optionally at a third orientation (e.g., horizontal) that is different from the first orientation on the display device); Figure 6L and displaying a fourth representation of the second geographic information at a fourth size that is larger than the second size (e.g., and at a fourth orientation (e.g., horizontal) on the display device that is different from the second orientation). Figure 6L (the latitude information is shown in the bottom part of the ).
[0239] In some embodiments, detecting a scroll input (e.g., 636B) (when in navigation mode (e.g., when compass user interface 612 is displayed) causes the direction indicators (e.g., 614, 616) and the bearing indicator (e.g., 640) (or at least a portion thereof) to scroll off the display (e.g., 602) and causes the geographic information to scroll onto the display (e.g., as Figure 6LThe electronic device (e.g., 600) displays one or more (or all) of the following in response to detecting the scroll input (while in the navigation mode): a numeric heading angle (e.g., in degrees) based on the orientation of the electronic device, a numeric tilt (e.g., in degrees) based on the orientation of the electronic device, a numeric azimuth (e.g., in degrees) that is not based on the orientation of the electronic device, a numeric ground elevation (e.g., in feet) based on the geographic location of the electronic device, a numeric longitude and a numeric latitude (e.g., in degrees) based on the geographic location of the electronic device. In some embodiments, the third representation provides a more precise first geographic information value than the first representation, and the fourth representation provides a more precise second geographic information value than the second representation. In some embodiments, in response to detecting the scroll input, the electronic device displays one or more additional geographic information that is not displayed simultaneously with the first representation of the first geographic information. In some embodiments, in response to detecting the scroll input (e.g., 636B, detecting rotation of the rotatable input mechanism (e.g., 604)), the electronic device forgoes changing (e.g., forgoes rotating) a display position of the azimuth indicator (e.g., 640) relative to the directional indicators (e.g., 614, 616) (and thus does not change an amount of offset of the azimuth indicator relative to the respective compass directions).
[0240] In some embodiments, the electronic device (e.g., 600) updates (e.g., periodically, continuously, repeatedly) the third representation of the first geographic information and the fourth representation of the second geographic information (e.g., as shown in FIG. 6) to reflect an updated location or orientation of the electronic device. In some embodiments, the electronic device displays an amount of time (e.g., “7 minutes ago” as shown in FIG. 6) since the respective geographic information was last updated adjacent to the respective geographic information. In some embodiments, the electronic device updates (e.g., periodically, continuously, repeatedly) the first representation of the first geographic information and the second representation of the second geographic information to reflect an updated location or orientation of the electronic device. Figure 6L
[0241] In some embodiments, prior to displaying the compass user interface (e.g., 637), the electronic device (e.g., 600) displays, via the display device (e.g., 602), a second compass user interface (e.g., 612, navigation mode, i.e., first mode) with directional indicators (e.g., 614, 616) (and optionally without an azimuth indicator (e.g., 640)). In some embodiments, the directional indicators provide an indication of respective compass directions (e.g., relative to the direction of the Earth’s magnetic field, such as cardinal directions (e.g., north (e.g., true north, magnetic north), south, west, east)), where the appearance of the directional indicators is determined based on the orientation of the electronic device relative to the respective compass directions.
[0242] In some embodiments, the electronic device (e.g., 600) detects user input (e.g., 628, at a location corresponding to the second compass user interface (e.g., 612), at a location corresponding to a direction indicator (e.g., 614, 616)) via a touch-sensitive surface (e.g., of the display device 602). In some embodiments, in response to detecting the user input (e.g., 628): based on determining that a characteristic intensity of the user input exceeds an intensity threshold (e.g., a non-zero threshold), the electronic device displays an edit enable indication (e.g., 630A), which, when selected, causes the compass user interface (e.g., 637) (e.g., 637, edit mode, i.e., the second mode) to be displayed (and optionally independent of the location of the user input (e.g., 628) on the touch-sensitive surface). Requiring the user to enter edit mode to set the orientation prevents accidental changes to the set orientation while in navigation mode. Preventing the orientation of a setting from being inadvertently changed enhances the operability of the device and makes the user-device interface more efficient (e.g., by helping to avoid external input that would otherwise be required to correct the orientation of the setting). In addition, this reduces power usage and improves the battery life of the device by enabling the user to use the device more quickly and efficiently.
[0243] In some embodiments, in response to detecting user input (e.g., 628): based on determining that the second compass user interface (e.g., 612) includes an orientation indicator (e.g., 640) (e.g., based on determining that an orientation has been set for the device (e.g., via input 642)), the electronic device displays a clear enable indication (e.g., 630B) via the display device, which, when selected (e.g., via input 648), initiates a process for removing the orientation indicator from the second compass user interface (e.g., 612), wherein the clear enable indication is displayed simultaneously with the edit enable indication. In some embodiments, initiating the process includes displaying the second compass user interface (e.g., 612) without the orientation indicator (e.g., 640). In some embodiments, based on determining that the second compass user interface does not include an orientation indicator, the electronic device forgoes displaying the clear enable indication (e.g., 630B).
[0244] In some embodiments, displaying the compass user interface (e.g., 637) includes emphasizing the direction indicator (e.g., 640) while de-emphasizing one or more displayed visual objects (e.g., 614, 616). In some embodiments, displaying the compass user interface (e.g., 637) includes changing visual properties (e.g., opacity, brightness, color) of the direction indicator (e.g., dimming the direction indicator (e.g., 614, 616)) while maintaining visual properties of the direction indicator (e.g., not dimming the direction indicator (e.g., 640). In some embodiments, displaying the compass user interface (e.g., 637) includes visually changing (e.g., opacity, brightness, color, dimming) the direction indicator, the first representation of the first geographic information, and the second representation of the second geographic information while maintaining the direction indicator (e.g., not dimming the direction indicator), thereby emphasizing the direction indicator.
[0245] In some embodiments, in response to detecting the user input (e.g., 628): based on determining that the characteristic intensity of the user input does not exceed the intensity threshold (e.g., a non-zero threshold), the electronic device (e.g., 600) forgoes displaying the edit enable indication (e.g., 630A). In some embodiments, the edit enable indication is displayed as part of a menu user interface (e.g., 634) that includes options (e.g., edit enable indication 630A, clear enable indication 630B) for configuring the orientation indicator (e.g., 640).
[0246] In some embodiments, displaying the compass user interface (e.g., 637, in edit mode) includes displaying (e.g., simultaneously with the direction indicator and the orientation indicator) a completion enable indication (e.g., 638A). In some embodiments, after changing the display position of the orientation indicator from the first position to the second position, the electronic device receives a second user input (e.g., 642). In some embodiments, in response to receiving the second user input: based on determining that the second user input corresponds to activation of the completion enable indication, the electronic device transitions from the compass user interface (e.g., 637, in edit mode) to a second compass user interface (e.g., 612, in navigation mode) and changes the orientation indicator (e.g., Figures 6H to 6I The display position of 640) remains in the second position (e.g., relative to the position of the direction indicator).
[0247] In some embodiments, displaying the compass user interface (e.g., 637, in edit mode) also includes displaying (e.g., simultaneously with the direction indicator and the bearing indicator) a cancel affordance (e.g., 638B). In response to receiving the second user input: based on determining that the second user input corresponds to activation of the cancel affordance, the electronic device (e.g., 600) transitions from the compass user interface (e.g., 637, in edit mode) to a second compass user interface (e.g., 612, in navigation mode) without maintaining the display position of the bearing indicator (e.g., 640) at the second position relative to the position of the direction indicator (and optionally restoring the display position of the bearing indicator to the first position).
[0248] In some embodiments, while displaying a second compass user interface (e.g., 612, navigation mode, i.e., first mode) including a direction indicator (e.g., 614, 616), the electronic device (e.g., 600) detects a change in the orientation of the electronic device. In some embodiments, in response to detecting the change in the orientation of the electronic device, the electronic device displays an indication of the offset (e.g., 613A-613B) by which the electronic device is oriented relative to a fixed orientation (e.g., compared to horizontal or vertical) (and optionally stops displaying the direction indicator).
[0249] In some embodiments, displaying an indication of an offset by which the electronic device is oriented relative to a fixed orientation (e.g., 613A-613B) includes: based on determining that the electronic device is in a first orientation range (e.g., substantially parallel to the ground, within a threshold range of a predefined orientation (e.g., parallel to the ground)), simultaneously detecting a change in the orientation of the electronic device, the indication of the offset includes a first visual object (e.g., 613A, a bubble). In some embodiments, displaying an indication of an offset by which the electronic device is oriented relative to a fixed orientation includes: based on determining that the electronic device is in a second orientation range different from the first orientation range (e.g., substantially perpendicular to the ground, within a threshold range of a predefined orientation (e.g., perpendicular to the ground)), simultaneously detecting a change in the orientation of the electronic device, the indication of the offset includes a second visual object (e.g., 613B, an arrow) different from the first visual object.
[0250] In some embodiments, the first visual object (e.g., 613A) includes a bubble, and the bubble size increases as the electronic device becomes less parallel to the ground and decreases as the electronic device moves closer to parallel to the ground. In some embodiments, the electronic device displays an animation (e.g., flashing the bubble) indicating when the first criterion (e.g., within a threshold range of being parallel to the ground) is met. In some embodiments, the second visual object (e.g., 613B) includes an arrow pointing to a displayed number representing the tilt relative to the direction of gravity.
[0251] In some embodiments, displaying a direction indicator (e.g., 614, 616) includes displaying an indication of the accuracy of the direction indicator (e.g., 622). In some embodiments, based on determining that the accuracy of the direction indicator has a first degree of accuracy, the electronic device (e.g., 600) displays the indication of the accuracy with a first appearance. In some embodiments, based on determining that the accuracy of the direction indicator has a second degree of accuracy different from the first degree of accuracy, the electronic device displays the indication of the accuracy with a second appearance different from the first appearance. Thus, the indication of the accuracy of the direction indicator visually changes based on the electronic device determining that the accuracy of the direction indicator has changed. In some embodiments, the indication of the accuracy of the direction indicator includes an indication of a range (e.g., degrees). In some embodiments, the indication (e.g., 622) includes one or more tick marks along a circular path, wherein as the accuracy of the direction indicator decreases, the number of tick marks in the indication increases (e.g., 1 tick mark indicates high accuracy and 5 tick marks indicate low accuracy). In some embodiments, the tick marks are a predefined distance apart from each other. In some embodiments, the indication includes visually distinguishing (e.g., highlighting, changing color, enlarging) one or more scale marks (from multiple scale marks along the circular path), where the number of visually distinguished scale marks increases as the precision of the directional indicator decreases (e.g., 1 distinguished scale mark indicates high precision and 5 distinguished scale marks indicate low precision).
[0252] In some embodiments, before (and / or concurrently with) displaying a compass user interface (e.g., 637) (and optionally before (and / or concurrently with) displaying a second compass user interface (e.g., 612)), the electronic device (e.g., 600) initiates a process of detecting (e.g., using one or more sensors of the electronic device) sensor data (e.g., device location, device GPS data, device orientation data). In some embodiments, initiating the process causes the device to detect sufficient data for use. In some embodiments, initiating the process does not cause the device to detect sufficient data for use (e.g., no data is detected, the detected data is incomplete). In some embodiments, before (and / or while) displaying a compass user interface (and optionally before (and / or while) displaying a second compass user interface): based on failing to detect data that meets the data sufficiency criteria (e.g., insufficient GPS data, insufficient data about the orientation of the electronic device relative to the corresponding compass direction), the electronic device displays an indication (e.g., 652, 654) that the data sufficiency criteria have not been met (changing the visual appearance of the direction indicator (e.g., 614) (e.g., dimming, changing opacity, swinging back and forth, and / or rotating). In some embodiments, before (and / or while) displaying a compass user interface (and optionally before (and / or while) displaying a second compass user interface): based on detecting data that meets the data sufficiency criteria (e.g., sufficient GPS data, sufficient data about the orientation of the electronic device relative to the corresponding compass direction), the electronic device forgoes displaying an indication that the data sufficiency criteria have not been met.
[0253] In some embodiments, displaying an indication that the data sufficiency criteria have not been met includes one or more of: dimming a portion (or all) of the compass user interface (e.g., 612) (e.g., the directional indicator (e.g., 614, 616) or a portion thereof), animating the directional indicator (e.g., moving back and forth between two locations), and causing one or more user interface elements to flash / blink repeatedly.
[0254] In some embodiments, while displaying a direction indicator (e.g., 614, 616) (e.g., as part of a navigation mode or editing mode of a compass application, when the compass user interface 612 is displayed), the electronic device detects a third user input (e.g., a gesture to return to a predetermined clock face (e.g., 656, 658, 660)). In some embodiments, the third user input is one or more inputs (e.g., presses) of a rotatable input mechanism (e.g., 604). In some embodiments, in response to detecting the third user input, the electronic device (e.g., 600) displays a clock face (e.g., 656, 658, 660) indicating the current time, wherein the clock face also includes (currently displayed) a compass object (e.g., 656A-656E, 658A-658G, 660A). In some embodiments, while displaying a clock face indicating the current time and including a compass object, the electronic device detects activation of the compass object (e.g., a tap gesture at a location on the touch-sensitive surface corresponding to the location of the compass object). In some embodiments, in response to detecting activation of a compass object, the electronic device displays a second compass user interface (e.g., 612, in navigation mode, not editing mode) that includes direction indicators (e.g., 614, 616) that provide an indication of a corresponding compass direction, where the appearance of the direction indicators is determined based on the orientation of the electronic device relative to the corresponding compass direction (e.g., and stops displaying a clock face).
[0255] In some embodiments, the compass object (e.g., 656A-656E, 658A-658G, 660A) includes: a representation of third geographic information of the electronic device (e.g., 600) that is updated as the position or orientation of the electronic device changes (e.g., as shown in FIG. Figure 6V longitude as shown, geographic coordinates specifying the east-west position of the electronic device on the surface of the Earth), and a representation of fourth geographic information of the electronic device that is updated as the position or orientation of the electronic device changes (e.g., as shown in FIG. Figure 6V The latitude shown in FIG, specifies the geographic coordinates of the north-south position of the electronic device on the surface of the earth). Exemplary geographic information of the electronic device includes: the geographic coordinates (longitude, latitude) of the location of the electronic device, the altitude of the location of the electronic device (e.g., the altitude above or below a fixed reference point (such as the surface of the earth or sea level), Figures 6S to 6V ) and the tilt of the orientation of the electronic device (as shown Figure 6VThe angle relative to the horizontal as shown (e.g., 2°). In some embodiments, the electronic device simultaneously displays multiple complex function blocks (e.g., 656A-656E, 658A-658G, 660A) with different geographic information (e.g., complex function blocks received for the same compass application). In some embodiments, the electronic device detects input (e.g., a tap gesture) at a location corresponding to the complex function block (e.g., a representation of geographic information). In some embodiments, in response to detecting the input at the location corresponding to the complex function block, the electronic device launches the application corresponding to the complex function block. As a result, the electronic device displays a user interface (e.g., 612) of the application (e.g., a compass application).
[0256] In some embodiments, the compass object (e.g., 656B) includes a second orientation indicator (e.g., 656B-2) that provides an indication of an offset from a corresponding compass direction. In some embodiments, the visual appearance of the second orientation indicator changes as the orientation of the electronic device changes relative to a predefined direction, such as north. In some embodiments, the second orientation indicator is a representation of the direction in which the device is currently oriented (e.g., north). Figure 6S 300° from North) and a representation of the direction corresponding to the bearing indicator (e.g., Figure 6S In some embodiments, the clock face (e.g., 656) includes a complication (e.g., 656B) that includes a bearing indicator complication (e.g., 656B-2) that provides an indication of a deviation from a corresponding compass direction.
[0257] In some embodiments, the compass object (e.g., 656B) includes an orientation indicator (e.g., 656B-1, a dial, a needle sliding on a scale, a scale sliding past a needle) that moves laterally (e.g., does not rotate around a point on the display) on the display, where the orientation indicator provides an indication of the orientation of the electronic device (e.g., as the device detects changes in the orientation of the electronic device). In some embodiments, the clock face (e.g., 656) includes a complex function block (e.g., 656B) that includes a needle / dial (e.g., 656B-1) that moves laterally (e.g., rather than rotating) on the display when the orientation of the electronic device changes, where the needle / dial indicates the direction in which the electronic device (e.g., 600) is oriented (e.g., relative to the direction of the earth’s magnetic field, such as cardinal directions (e.g., north (e.g., true north, magnetic north), south, west, east)). Providing an indication of the orientation of the electronic device provides the user with visual feedback about the user’s orientation relative to the set bearing. Providing improved visual feedback to users enhances the operability of the device and makes the user / device interface more efficient (e.g., by helping to
[0258] After displaying the compass user interface (e.g., 637) (e.g., and after a bearing has been set (e.g., via input 642)), the electronic device (e.g., 600) displays, via the display device (e.g., 602), a third compass user interface (e.g., Figure 6I 612) (e.g., a navigation mode, i.e., a first mode), where the visual appearance of the bearing indicator changes as the orientation of the electronic device changes (710) (e.g., as shown in Figures 6I to 6K In some embodiments, while displaying the third compass user interface (e.g., 612), the visual appearance of the bearing indicator (e.g., 640) changes. Changing the visual appearance of the bearing indicator as the orientation of the electronic device changes provides the user with visual feedback about the orientation of the electronic device and the user relative to the set bearing. Providing improved visual feedback to users enhances the operability of the device and makes the user / device interface more efficient (e.g., by helping to
[0259] For the purpose of explanation, the foregoing description is described with reference to specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible based on the above teachings. These embodiments have been selected and described in order to best explain the principles of these techniques and their practical applications. Others skilled in the art will thus be able to best utilize these techniques and various embodiments with various modifications suitable for the specific purposes contemplated.
[0260] Although the present disclosure and examples have been fully described with reference to the accompanying drawings, it should be noted that various changes and modifications will become apparent to those skilled in the art. It should be understood that such changes and modifications are considered to be included within the scope of the present disclosure and examples defined by the claims.
[0261] As mentioned above, one aspect of the present technology is to collect and use data from various sources to provide certain compass application features. The present disclosure contemplates that, in some instances, such collected data may include personal information data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data may include demographic data, location-based data, phone number, email address, Twitter ID, home address, data or records related to the user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), date of birth, or any other identifying or personal information.
[0262] This disclosure recognizes that the use of such personal information data within the present technology can be used to benefit users. For example, personal information data can be used to enhance features in the Compass app. Thus, using such personal information data enables users to have a richer experience within the Compass app. Furthermore, this disclosure contemplates other uses of personal information data that can benefit users. For example, health and fitness data can be used to provide insights into a user's overall health or as positive feedback for individuals using technology to pursue health goals.
[0263] This disclosure contemplates that entities responsible for collecting, analyzing, disclosing, transmitting, storing, or otherwise using such personal information will adhere to established privacy policies and / or practices. Specifically, such entities should implement and adhere to privacy policies and practices that are recognized as meeting or exceeding industry or government requirements for maintaining the privacy and security of personal information. Such policies should be easily accessible to users and updated as the collection and / or use of data changes. Personal information collected from users should be used for the entity's legitimate and reasonable purposes and not shared or sold beyond those legitimate uses. Furthermore, such collection / sharing should be conducted with the user's informed consent. Furthermore, such entities should consider taking any necessary steps to safeguard and secure access to such personal information and ensure that others with access to the personal information adhere to their privacy policies and procedures. Furthermore, such entities may subject themselves to third-party assessments to demonstrate compliance with widely accepted privacy policies and practices. Furthermore, policies and practices should be tailored to the specific type of personal information collected and / or accessed and to applicable laws and standards, including jurisdictional considerations. For example, in the United States, the collection or access of certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); whereas health data in other countries may be subject to other regulations and policies and should be handled accordingly. Therefore, different privacy practices should be maintained for different types of personal data in each country.
[0264] Regardless of the foregoing, the present disclosure also contemplates implementation schemes in which users selectively block the use or access of personal information data. That is, the present disclosure contemplates providing hardware components and / or software components to prevent or block access to such personal information data. For example, with respect to the Compass application, the technology of the present invention may be configured to allow users to “opt in” or “opt out” of participating in the collection of personal information data at any time during or after registration for the service. In addition to providing “opt-in” and “opt-out” options, the present disclosure contemplates providing notifications related to the access or use of personal information. For example, users may be notified that their personal information data will be accessed when downloading an application, and then reminded again just before the personal information data is accessed by the application.
[0265] Furthermore, it is an object of the present disclosure that personal information data should be managed and processed to minimize the risk of unintentional or unauthorized access or use. Risk can be minimized by limiting data collection and deleting data once it is no longer needed. In addition, and when applicable, including in certain health-related applications, data de-identification can be used to protect the privacy of users. De-identification can be facilitated by removing specific identifiers (e.g., date of birth, etc.), controlling the amount or specificity of stored data (e.g., collecting location data at the city level rather than the address level), controlling how data is stored (e.g., aggregating data across users), and / or other methods, where appropriate.
[0266] Thus, while this disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, this disclosure also contemplates that various embodiments may be implemented without access to such personal information data. That is, various embodiments of the present technology will not be unable to function properly due to the absence of all or a portion of such personal information data. For example, location data may be inferred based on non-personal information data or an absolute minimum amount of personal information, other non-personal information available to a compass application, or publicly available information.
Claims
1. A method for operating an electronic device, the method comprising: At an electronic device having a display device and a rotatable input mechanism that is physically rotatable relative to a housing of the electronic device: displaying, via the display device, a compass user interface having a first representation of first geographic information of the electronic device and a second representation of second geographic information of the electronic device, wherein the first representation of the first geographic information corresponds to a first geographic value and the second representation of the second geographic information corresponds to a second geographic value that is different from the first geographic value; detecting a rotational input via the rotatable input mechanism while the first representation of the first geographic information is displayed at a first size and the second representation of the second geographic information is displayed at a second size; as well as In response to detecting the rotation input: ceasing to display a portion of the compass user interface; and A third representation of the first geographic information is displayed at a third size that is larger than the first size and a fourth representation of the second geographic information is displayed at a fourth size that is larger than the second size, wherein the third representation of the first geographic information corresponds to the first geographic value and the fourth representation of the second geographic information corresponds to the second geographic value. The method of claim 1 , wherein the first geographic information comprises at least one of longitude, latitude, and cardinal directions. The method of claim 1 , wherein the second geographic information comprises at least one of longitude, latitude, and cardinal directions. 4 . The method of claim 1 , wherein the first representation of the first geographic information is displayed in a first orientation, and wherein the third representation of the first geographic information is displayed in a second orientation different from the first orientation.
5. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of an electronic device having a display device and a rotatable input mechanism, wherein the rotatable input mechanism is physically rotatable relative to a housing of the electronic device, the one or more programs including instructions for executing the method according to any one of claims 1 to 4.
6. An electronic device, comprising: Display devices; a rotatable input mechanism that is physically rotatable relative to a housing of the electronic device; one or more processors; and A memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for executing the method according to any one of claims 1 to 4.
7. An electronic device, comprising: Display devices; a rotatable input mechanism that is physically rotatable relative to a housing of the electronic device; and Device for carrying out the method according to any one of claims 1 to 4.
8. A computer program product comprising one or more programs configured to be executed by one or more processors of an electronic device having a display device and a rotatable input mechanism, wherein the rotatable input mechanism is physically rotatable relative to a housing of the electronic device, the one or more programs comprising instructions for executing the method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Method and apparatus for integrating manual input
US20020015024A1
Acceleration-based theft detection system for portable electronic devices
US20050190059A1
Methods and apparatuses for operating a portable device based on an accelerometer
US20060017692A1
Gestures for touch sensitive input devices
US20060026521A1
Gestures for touch sensitive input devices
US20060026536A1