User Interface for Displaying and Improving the Current Location of an Electronic Device

Enhanced user interfaces with touch-sensitive surfaces and haptic feedback improve location accuracy and efficiency, addressing inefficiencies in existing user interfaces and reducing battery consumption.

JP7714581B2Active Publication Date: 2025-07-29APPLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2022570397
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-06-21
Filing Date
2021-05-18
Publication Date
2025-07-29
Estimated Expiration
2041-05-18

AI Technical Summary

Technical Problem

Existing user interfaces for electronic devices often lack accuracy in displaying and improving the current location, which can lead to inefficient user interaction and increased battery consumption.

Method used

Enhanced user interfaces that improve the accuracy of location determination and display methods, incorporating touch-sensitive surfaces and haptic feedback to enhance user interaction and reduce interaction time.

Benefits of technology

The enhanced user interfaces increase interaction efficiency and reduce battery consumption by improving location accuracy and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007714581000001
    Figure 0007714581000001
  • Figure 0007714581000002
    Figure 0007714581000002
  • Figure 0007714581000003
    Figure 0007714581000003
Patent Text Reader

Abstract

In some embodiments, the electronic device displays a map user interface including a representation of a map at a distinct zoom level and a location indicator that indicates a determined location of the electronic device on the representation of the map. In some embodiments, the location indicator includes a first location element and does not include a second location element. In some embodiments, the location indicator includes a second location element and does not include the first location element. In some embodiments, the electronic device displays a map user interface including a representation of a map and a location indicator that indicates a determined location of the electronic device on the representation of the map. In some embodiments, while displaying the map user interface, the electronic device displays selectable options that can be selected to initiate a process to refine the determined location of the electronic device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] [Cross - Reference to Related Applications] This application claims the benefit of U.S. Provisional Patent Application No. 62 / 843,976, filed on May 18, 2020, U.S. Provisional Patent Application No. 63 / 026,275, filed on June 10, 2019, and U.S. Provisional Patent Application No. 63 / 041,984, filed on June 21, 2020, the contents of which are hereby incorporated by reference in their entirety for all purposes.

[0002] [Technical Field] This application generally relates to user interfaces that enable a user to display and / or improve the current location of an electronic device.

Background Art

[0003] In recent years, user interaction with electronic devices has increased significantly. These devices can be devices such as computers, tablet computers, televisions, multimedia devices, mobile devices, etc.

[0004] In some situations, such devices display a map user interface. In some situations, the map user interface displays an indication of the device's current location.

Summary of the Invention

[0005] Some embodiments described in this disclosure relate to displaying an indication of the current location of an electronic device. Some embodiments described in this disclosure relate to improving the accuracy of the determined location of an electronic device.

[0006] Embodiments described in this disclosure enhance what a user can do to display and improve the current position of a device. By improving what a user can do to display and improve the current position of a device, the interaction between the user and the device is enhanced. Enhancing the user's interaction with the device improves the user experience with the device and reduces the time of user interaction, which is particularly important when the input device operates on battery power.

[0007] It should be fully understood that the use of personally identifiable information should comply with privacy policies and practices that are generally recognized as meeting or exceeding industry or government requirements for maintaining user privacy. In particular, personally identifiable information data should be managed and handled to minimize the risk of unintended or unauthorized access or use, and the nature of the permitted use should be clearly shown to the user.

[0008] It should be understood that the full description of these embodiments is set forth in the "Detailed Description of the Invention", and the above "Summary of the Invention" does not limit the scope of the present disclosure in any way.

Brief Description of the Drawings

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

[0010]

Figure 1A

[0011]

Figure 1B

[0012]

Figure 2

[0013]

Figure 3

[0014]

Figure 4

[0015]

Figure 5A

Figure 5B

[0016]

Figure 6A

Figure 6B

Figure 6C

Figure 6D

Figure 6E

Figure 6F

Figure 6G

Figure 6H

Figure 6I

Figure 6J

Figure 6K

Figure 6L

Figure 6M

Figure 6N

Figure 6O

Figure 6P

Figure 6Q

Figure 6R

Figure 6S

Figure 6T

[0017]

Figure 7

[0018]

Figure 8A

Figure 8B

Figure 8C

Figure 8D

Figure 8E

Figure 8F

Figure 8G

Figure 8H

Figure 8I

Figure 8J

Figure 8K

Figure 8L

Figure 8M

Figure 8N

Figure 8O

Figure 8P

Figure 8Q

Figure 8R

Figure 8S

[0019]

Figure 9

DETAILED DESCRIPTION OF THE INVENTION

[0020] In the following description of the embodiments, reference is made to the accompanying drawings that form a part of the embodiments, in which specific embodiments that are arbitrarily implemented are shown as examples. It should be understood that other embodiments can be arbitrarily used without departing from the scope of the disclosed embodiments, and structural changes can be arbitrarily implemented. Also, in the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of the various embodiments described, the first touch can also be called the second touch, and similarly, the second touch can also be called the first touch. The first touch and the second touch are both touches, but they are not the same touch.

[0021] The terms used in the description of the various embodiments described herein are for the purpose of describing only specific embodiments and are not intended to be limiting. In the description of the various embodiments described and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. Also, as used herein, the term "and / or" refers to any and all possible combinations of one or more of the associated listed items and includes the same. It should be understood that the terms "includes", "including", "comprises", and / or "comprising", when used herein, specify the presence of the stated function, integer, step, operation, element, and / or component, but do not preclude the presence or addition of one or more other functions, integers, steps, operations, elements, components, and / or groups thereof.

[0022] The term "if" is optionally interpreted, depending on the context, to mean "when" or "upon", or "in response to determining" or "in response to detecting". Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are optionally interpreted, depending on the context, to mean "upon determining" or "in response to determining", or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]". Exemplary device

[0023] Embodiments of electronic devices, user interfaces for such devices, and related processes for using such devices are described. In some embodiments, the device is a portable communication device such as a cellular phone that also includes other functions such as PDA functionality and / or music player functionality. Exemplary embodiments of portable multifunctional devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Other portable electronic devices such as laptop or tablet computers with a touch-sensitive surface (e.g., a touch screen display and / or a touch pad) may also optionally be used. Also, in some embodiments, it should be understood that the device is not a portable communication device, but rather a desktop computer or a television with a touch-sensitive surface (e.g., a touch screen display and / or a touch pad). In some embodiments, the device does not have a touch screen display and / or a touch pad, but rather can output display information (e.g., the user interface of the present disclosure) for display on another display device and can receive input information from another input device having one or more input mechanisms (e.g., one or more buttons, a touch screen display, and / or a touch pad). In some embodiments, the device has a display but can receive input information from another input device having one or more input mechanisms (e.g., one or more buttons, a touch screen display, and / or a touch pad).

[0024] In the following discussion, an electronic device including a display and a touch sensing surface will be described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices such as a physical keyboard, a mouse, and / or a joystick. Further, as described above, it should be understood that the electronic device, display, and touch sensing surface described are optionally distributed among two or more devices. Thus, as used in this disclosure, information displayed on or by an electronic device may optionally be used to describe information output by a display electronic device (touch sensing or non-touch sensing) on another display device. Similarly, as used in this disclosure, an input received on an electronic device (e.g., a touch input received on a touch sensing surface of the electronic device) may optionally be used to describe an input received on another input device. From this other input device, the electronic device receives input information.

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

[0026] 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, as well as the corresponding information displayed on the device, are optionally adjusted and / or changed for each application and / or within an individual application. In this way, the common physical architecture of the device (such as a touch-sensitive surface) optionally supports various applications with a user interface that is intuitive and transparent to the user.

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

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

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

[0030] Device 100 is merely an example of a portable or non - portable multifunctional device, and it should be understood that device 100 may optionally have more or fewer components than those shown, optionally combine two or more components, or optionally have different configurations or arrangements of components. The various components shown in FIG. 1A are implemented in the form of hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application - specific integrated circuits. Further, the various components shown in FIG. 1A may optionally be implemented across two or more devices, for example, an audio circuit on a display and a display device, a touch - sensing surface on an input device, and the remaining components on device 100. In such embodiments, device 100 optionally communicates with a display device and / or an input device, and the various components described herein related to the display and / or the remaining input within device 100 to facilitate the operation of the systems described in this disclosure, or is optionally included within the display and / or input device as needed.

[0031] Memory 102 optionally includes high - speed random - access memory and also optionally includes non - volatile memory such as one or more magnetic disk storage devices, flash memory devices, or other non - volatile solid - state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.

[0032] Peripheral interface 118 can be used to couple the input and output peripheral devices of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs and / or instruction sets stored in memory 102 to perform various functions for device 100 and process data.

[0033] In some embodiments, the peripheral device interface 118, the CPU 120, and the 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.

[0034] The RF (radio frequency) circuit 108 transmits and receives RF signals, also called electromagnetic signals. The RF circuit 108 converts electrical signals into electromagnetic signals or vice versa and communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 108 optionally includes well-known circuits for performing these functions, such as, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, and the like. The RF circuit 108 optionally communicates wirelessly with networks such as the Internet, also called the World Wide Web (WWW), an intranet, and / or wireless networks such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs), as well as with other devices. The RF circuit 108 optionally includes well-known circuits for detecting a near field communication (NFC) field, such as by a short-range communication radio. Wireless communication optionally includes, but is not limited to only, Global System for Mobile Communications (GSM) for mobile communication, Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), Long Termevolution, LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE802.11a, IEEE802.11b, IEEE802.11g, IEEE802.11n, and / or IEEE802.11ac), Voice over Internet Protocol (VoIP), Wi-MAX, Protocols for email (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), Instant Messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communication protocol including communication protocols not yet developed as of the filing date of this specification. Any one of a plurality of communication standards, protocols, and technologies is used.

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

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

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

[0038] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. As described above, since the touch-sensing operation and the display operation of the touch-sensitive display 112 are optionally separated from each other, the display device is used for display purposes and the touch-sensing surface (regardless of whether it is a display) is used for input detection purposes. Accordingly, the components and functions described are modified. However, for simplicity, the following description is provided with reference to a touch-sensitive display. The display controller 156 receives electrical signals from the touch screen 112 and / or transmits electrical signals to the touch screen 112. The touch screen 112 displays a visual output to the user. This visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output corresponds to user interface objects.

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

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

[0041] The touch-sensing display in some embodiments of touch screen 112 is optionally similar to a multi-touch sensing touch pad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Application Publication No. 2002 / 0015024 (A1), each of which is hereby incorporated by reference in its entirety. However, touch screen 112 displays visual output from device 100, whereas the touch-sensing touch pad does not provide visual output.

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

[0043] 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 touches the touch screen 112 using any suitable object or appendage such as a stylus, finger, etc. In some embodiments, the user interface is designed to operate primarily using finger-based contact and gestures, although this may be less accurate than stylus-based input due to the larger contact area of the finger on the touch screen. In some embodiments, the device converts rough input by a finger into an accurate pointer / cursor position or command for performing the action desired by the user.

[0044] In some embodiments, the device 100 is a portable computer system that communicates with a display generation component (e.g., via wired communication, via wireless communication). The display generation component is configured to provide visual output such as a display via a CRT display, a display via an LED display, or a display via image projection. In some embodiments, the display generation component (e.g., an integrated display, the touch screen 112, etc.) is integrated with the computer system. In some embodiments, the display generation component (e.g., an external monitor, a projection system, etc.) is separate from the computer system. As used herein, "displaying" content includes causing content (e.g., video data rendered or decoded by a display controller 156) to be displayed by sending data (e.g., image data or video data) to an integrated or external display generation component via a wired or wireless connection for visually generating the content.

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

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

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

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

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

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

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

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

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

[0054] The communication module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by the RF circuit 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) are adapted to couple directly or indirectly via a network (e.g., the Internet, a wireless LAN, etc.) to other devices. In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod (a trademark of Apple Inc.) devices.

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

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

[0057] The contact / motion module 130 optionally detects gesture inputs from the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., the detected movement, timing, and / or intensity of the contact is different). Thus, gestures are optionally detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger down event followed by detecting a finger up (lift off) event at the same position (or substantially the same position) (e.g., the position of the icon) as the finger down event. As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event followed by detecting one or more finger drag events, followed by detecting a finger up (lift off) event thereafter.

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

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

[0060] The tactile feedback module 133 includes various software components for generating the instructions used by the tactile output generator 167, and generates tactile output at one or more locations on the device 100 in response to the user's interaction with the device 100.

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

[0062] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for location-based phone calls, to the camera 143 as photo / video metadata, and to applications that provide location-based services such as a weather widget, a local yellow pages widget, and a map / navigation widget).

[0063] The application 136 optionally includes the following modules (or sets of instructions) or subsets or supersets thereof. · A contact module 137 (sometimes referred to as an address book or contact list), · A phone module 138, · A video conferencing module 139, · An email client module 140, · An instant messaging (IM) module 141, · A training support module 142, · A camera module 143 for still and / or video images, · An image management module 144, · A video player module, · A music player module, · A browser module 147, · A calendar module 148, · A widget module 149 that optionally includes one or more of a weather widget 149-1, a stock widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, as well as a user-created widget 149-6, · A widget creation module 150 for creating the user-created widget 149-6, · A search module 151, · A combined video and music player module 152 that integrates the video player module and the music player module, · Memory module 153, · Map module 154, and / or · Online video module 155.

[0064] Examples of other applications 136 optionally stored in the memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, Java-compatible applications, encryption, digital rights management, speech recognition, and speech reproduction.

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

[0066] The telephone module 138 is used, in cooperation with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134, optionally, for inputting a character sequence corresponding to a telephone number, accessing one or more telephone numbers in the contact module 137, modifying the input telephone number, dialing an individual telephone number, executing a call, and disconnecting and pausing the call at the end of the call. As described above, the wireless communication optionally uses any of a plurality of communication standards, protocols, and technologies.

[0067] The video conferencing module 139 includes executable instructions for starting, executing, and ending a video conference between the user and one or more other participants according to the user's instructions, in cooperation with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the optical sensor 164, the optical sensor controller 158, the contact / motion module 130, the graphic module 132, the text input module 134, the contact module 137, and the telephone module 138.

[0068] The email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to the user's instructions, in cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134. In cooperation with the image management module 144, the email client module 140 makes it very easy to create and send emails with still or moving images captured by the camera module 143.

[0069] The instant messaging module 141, in cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, includes executable instructions for inputting a character sequence corresponding to an instant message, modifying previously input characters, (e.g., using the Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for phone communication-based instant messages, or XMPP, SIMPLE, or IMPS for Internet-based instant messages) sending individual instant messages, receiving instant messages, and viewing received instant messages. In some embodiments, the instant messages sent and / or received optionally include graphics, photos, audio files, video files, and / or other attachment files as supported by 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).

[0070] The training support module 142, in cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, map module 154, and music player module, creates training (e.g., having time, distance, and / or calorie burn goals), communicates with a training sensor (sports device), receives training sensor data, calibrates sensors used to monitor the training, selects and plays music for the training, and includes executable instructions for displaying, storing, and transmitting training data.

[0071] The camera module 143, in cooperation with the touch screen 112, display controller 156, light sensor 164, light sensor controller 158, contact / motion module 130, graphic module 132, and image management module 144, includes executable instructions for capturing still images or videos (including video streams) and storing them in the memory 102, modifying the characteristics of still images or videos, or deleting still images or videos from the memory 102.

[0072] The image management module 144, in cooperation with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and camera module 143, includes executable instructions for arranging, modifying (e.g., editing), or otherwise operating on still images and / or videos, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing them.

[0073] The browser module 147 includes executable instructions for browsing the Internet according to user instructions, including searching for, linking to, receiving, and displaying a web page or a portion thereof, as well as attached files and other files linked to the web page, in cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134.

[0074] The calendar module 148 includes executable instructions for creating, displaying, modifying, and storing a calendar and data associated with the calendar (e.g., calendar items, to-do lists, etc.) according to user instructions, in cooperation with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, the text input module 134, the email client module 140, and the browser module 147.

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

[0076] The widget creator module 150 cooperates with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, the text input module 134, and the browser module 147, and is used by the user to optionally create a widget (e.g., make a user-specified portion of a web page into a widget).

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

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

[0079] The memo module 153, in cooperation with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, includes executable instructions for creating and managing memos, to-do lists, etc. according to user instructions.

[0080] The map module 154, in cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, and browser module 147, is optionally used to receive, display, modify, and store maps and data associated with the maps (e.g., driving routes, data regarding stores and other points of interest near a particular location or its vicinity, and other location-based data) according to user instructions.

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

[0082] The modules and applications identified above each correspond to a set of executable instructions that perform one or more of the functions described above and the methods described in this application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) need not be implemented as separate software programs, procedures, or modules, and thus, in various embodiments, various subsets of these modules may optionally be combined or otherwise reconfigured. For example, a video player module may optionally be combined with a music player module to form a single module (e.g., the video and music player module 152 of FIG. 1A). In some embodiments, the memory 102 optionally stores a subset of the modules and data structures identified above. Further, the memory 102 optionally stores additional modules and data structures not described above.

[0083] In some embodiments, the device 100 is a device in which the operation of a set of default functions in the device is performed only via a touch screen and / or a touch pad. By using the touch screen and / or the touch pad as the main input control device for the device 100 to operate, the number of physical input control devices (push buttons, dials, etc.) on the device 100 is optionally reduced.

[0084] The set of default functions that are performed only through the touch screen and / or the touch pad optionally includes navigation between user interfaces. In some embodiments, when touched by the user, the touch pad navigates the device 100 from any user interface displayed on the device 100 to the main menu, home menu, or root menu. In such embodiments, the "menu button" is implemented using the touch pad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touch pad.

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

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

[0087] In some embodiments, the application internal state 192 includes additional information such as resume information to be used when the application 136-1 resumes execution, user interface state information indicating or ready to display information displayed by the application 136-1, a state queue that enables the user to return to the previous state or view of the application 136-1, and a redo / undo queue of previous actions performed by the user, among one or more of these.

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

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

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

[0091] The hit view determination module 172 provides a software procedure for determining where in one or more views a sub-event occurs when the touch-sensitive display 112 is displaying two or more views. A view is composed of control devices and other elements that a user can see on the display.

[0092] Another aspect of the user interface associated with an application is a set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of an individual application) in which a touch is detected optionally corresponds to a program level within the program hierarchy or view hierarchy of the application. For example, the lowest level view in which a touch is detected is optionally referred to as the hit view, and the set of events recognized as appropriate input is optionally determined based at least in part on the hit view of the initial touch that initiates a touch-based gesture.

[0093] The hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has a plurality of hierarchically configured views, the hit view determination module 172 identifies the hit view as the lowest level view within the hierarchy in which the sub-event is to be processed. In most situations, the hit view is the lowest level view in which a start sub-event (e.g., the first sub-event in a sub-event sequence that forms an event or potential event) occurs. Once the hit view is identified by the hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the touch or input source identified as the hit view.

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

[0095] The event dispatcher module 174 dispatches event information to an event recognition unit (e.g., event recognition unit 180). In embodiments that include the active event recognition unit determination module 173, the event dispatcher module 174 dispatches event information to the event recognition unit determined by the active event recognition unit determination module 173. In some embodiments, the event dispatcher module 174 stores the event information obtained by the individual event receiver 182 in an event queue.

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

[0097] In some embodiments, application 136-1 includes a plurality of event processing units 190 and one or more application views 191, each including instructions for processing touch events that occur within respective views of the user interface of the application. Each application view 191 of application 136-1 includes one or more event recognition units 180. Typically, an individual application view 191 includes a plurality of event recognition units 180. In other embodiments, one or more of the event recognition units 180 are part of a separate module, such as a user interface kit (not shown) or a higher-level object from which application 136-1 inherits methods and other characteristics. In some embodiments, an individual event processing unit 190 includes one or more of event data 179 received from data update unit 176, object update unit 177, GUI update unit 178, and / or event sorting unit 170. The event processing unit 190 optionally utilizes or invokes the data update unit 176, object update unit 177, or GUI update unit 178 to update the internal state 192 of the application. Alternatively, one or more of the application views 191 include one or more individual event processing units 190. Also, in some embodiments, one or more of the data update unit 176, object update unit 177, and GUI update unit 178 are included in an individual application view 191.

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

[0099] The event receiving unit 182 receives event information from the event sorting unit 170. The event information includes sub-events, for example, information about a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information such as the position of the sub-event. When the sub-event is related to the movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the posture of the device).

[0100] The event comparison unit 184 compares the event information with the definition of a defined event or sub-event, and based on the comparison, determines an event or sub-event, or determines or updates the state of an event or sub-event. In some embodiments, the event comparison unit 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a sequence of predefined sub-events) such as event 1 (187-1) and event 2 (187-2). In some embodiments, the sub-events within an event (187) include, for example, the start of a touch, the end of a touch, the movement of a touch, the cancellation of a touch, and multiple touches. In one example, the definition of event 1 (187-1) is a double-tap on a displayed object. The double-tap includes, for example, a first touch (touch start) on the displayed object for a predetermined stage, a first lift-off (touch end) for a predetermined stage, a second touch (touch start) on the displayed object for a predetermined stage, and a second lift-off (touch end) for a predetermined stage. In another example, the definition of event 2 (187-2) is a drag on a displayed object. The drag includes, for example, a touch (or contact) on the displayed object for a predetermined stage, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information about one or more associated event processing units 190.

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

[0102] In some embodiments, the definition of an individual event 187 also includes a delay action that delays the transmission of event information until it is determined whether the sequence of sub-events corresponds to the event type of the event recognition unit.

[0103] If the individual event recognition unit 180 determines that a series of sub-events does not match any of the events in the event definition 186, the individual event recognition unit 180 enters a state of event impossible, event failure, or event end, and then ignores the next sub-event of the touch-based gesture. In this situation, if there is another event recognition unit that remains active for the hit view, that event recognition unit continues to track and process the sub-events of the touch-based gesture in progress.

[0104] In some embodiments, the individual event recognition unit 180 includes metadata 183 having configurable properties, flags, and / or lists indicating how the event delivery system should actively participate in the event recognition unit that executes sub - event delivery. In some embodiments, the metadata 183 includes configurable properties, flags, and / or lists indicating how event recognition units interact with each other or how they can interact with each other. In some embodiments, the metadata 183 includes configurable properties, flags, and / or lists indicating whether sub - events are distributed at various levels in the view hierarchy or program hierarchy.

[0105] In some embodiments, the individual event recognition unit 180 activates the event processing unit 190 associated with the event when one or more specific sub - events of the event are recognized. In some embodiments, the individual event recognition unit 180 distributes event information associated with the event to the event processing unit 190. Activating the event processing unit 190 is separate from sending (and deferring sending) sub - events to individual hit views. In some embodiments, the event recognition unit 180 sets a flag associated with the recognized event, and the event processing unit 190 associated with that flag catches the flag and executes a predefined process.

[0106] In some embodiments, the event delivery command 188 includes a sub - event delivery command that distributes event information about sub - events without activating the event processing unit. Instead, the sub - event delivery command distributes event information to the event processing unit associated with a series of sub - events or to the view actively involved. The event processing unit associated with a series of sub - events or the view actively involved receives the event information and executes a predetermined process.

[0107] In some embodiments, the data update unit 176 creates and updates data used in the application 136-1. For example, the data update unit 176 updates the phone numbers used in the contact module 137 or stores the video files used in the video player module. In some embodiments, the object update unit 177 creates and updates the objects used in the application 136-1. For example, the object update unit 177 creates a new user interface object or updates the position of the user interface object. The GUI update unit 178 updates the GUI. For example, the GUI update unit 178 prepares the display information and sends the display information to the graphic module 132 for display on the touch-sensitive display.

[0108] In some embodiments, the event processing unit(s) 190 includes or has access to the data update unit 176, the object update unit 177, and the GUI update unit 178. In some embodiments, the data update unit 176, the object update unit 177, and the GUI update unit 178 are included in a single module of the individual application 136-1 or the application view 191. In other embodiments, they are included in two or more software modules.

[0109] The foregoing description regarding event processing of a user's touch on the touch-sensitive display also applies to other forms of user input for operating the multifunctional device 100 using an input device, but it should be understood that not all of them are initiated on the touch screen. For example, the movement of the mouse and the pressing of the mouse button, the movement of the contact such as tapping, dragging, and scrolling on the touch pad, the pen stylus input, the movement of the device, the verbal command, the detected eye movement, the biometric input, and / or any combination thereof, optionally associated with the single or multiple pressing or holding of the keyboard, are used as input corresponding to sub-events that define events to be recognized optionally.

[0110] FIG. 2 shows a portable or non-portable multifunctional device 100 having a touch screen 112, according to some embodiments. As described above, the multifunctional device 100 is described as having various structures (e.g., touch screen 112, speaker 111, accelerometer 168, microphone 113, etc.) to be described. However, these structures are optionally understood to belong to another device. For example, display-related structures (e.g., display, speaker, etc.) and / or functions optionally belong to another display device, input-related structures (e.g., touch sensing surface, microphone, accelerometer, etc.) and / or functions optionally belong to another input device, and the remaining structures and / or functions optionally belong to the multifunctional device 100.

[0111] The touch screen 112 optionally displays one or more graphics within a user interface (UI) 200. In this embodiment, as well as in other embodiments described below, the user can select one or more of those graphics by performing gestures on the graphics using, for example, one or more fingers 202 (not drawn to scale in the figure) or one or more styli 203 (not drawn to scale in the figure). In some embodiments, the selection of one or more graphics is performed when the user interrupts contact with the one or more graphics. In some embodiments, the gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, upward and / or downward), and / or rolling of a finger in contact with the device 100 (from right to left, from left to right, upward and / or downward). In some implementation forms or situations, an unexpected contact with a graphic does not select that graphic. For example, if the gesture corresponding to the selection is a tap, a swipe gesture that sweeps over an application icon does not optionally select the corresponding application.

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

[0113] In one embodiment, device 100 includes touch screen 112, menu button 204, a push button 206 for turning the device on / off and locking the device, volume adjustment button(s) 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and a docking / charging external port 124. Push button 206 is optionally used to turn the device on / off by pressing and holding the button for a predetermined period, lock the device by pressing and releasing the button before a predetermined time has elapsed, and / or unlock the device or initiate an unlock process. In an alternative embodiment, device 100 also accepts verbal input via microphone 113 to activate or deactivate some functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of contact on touch screen 112 and / or one or more haptic output generators 167 for generating haptic output to the user of device 100.

[0114] FIG. 3 is a block diagram of an exemplary multifunctional device including a display and a touch sensing surface, in accordance with some embodiments. Device 300 need not include a display and a touch sensing surface as described above; rather, in some embodiments, it optionally communicates with a display and a touch sensing surface on another device. Additionally, device 300 need not be portable. In some embodiments, device 300 is a laptop computer, desktop computer, tablet computer, multimedia playback device (e.g., a television or set-top box), navigation device, educational device (such as a child's learning toy), gaming system, or control device (e.g., a home or industrial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more networks or other communication interfaces 360, memory 370, and one or more communication buses 320 for interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes called a chipset) for interconnecting and controlling communications between system components. Device 300 includes an input / output (I / O) interface 330 including a display 340, which is typically a touch screen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350, a touch pad 355, a haptic output generator 357 (such as haptic output generator 167 described above with reference to FIG. 1A) for generating haptic outputs on device 300, and sensors 359 (e.g., light sensors, acceleration sensors, proximity sensors, touch sensing sensors, and / or haptic intensity sensors similar to haptic intensity sensor 165 described above with reference to FIG. 1A). Memory 370 includes high-speed random access memory such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices.Memory 370 optionally includes one or more storage devices that are remotely located from the CPU(s) 310. In some embodiments, Memory 370 stores programs, modules, and data structures similar to, or subsets of, the programs, modules, and data structures stored in Memory 102 of the portable or non-portable multifunctional device 100 (FIG. 1A). Further, Memory 370 may store additional programs, modules, and data structures that do not exist within Memory 102 of the portable or non-portable multifunctional device 100. For example, the Memory 370 of device 300 optionally stores a rendering module 380, a presentation module 382, a document creation module 384, a website creation module 386, a disk authoring module 388, and / or a spreadsheet module 390, while the Memory 102 of the portable or non-portable multifunctional device 100 (FIG. 1A) does not optionally store these modules.

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

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

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

[0118] Furthermore, although the following examples are mainly described with reference to finger inputs (e.g., finger contact, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of those finger inputs may be replaced by inputs from another input device (e.g., mouse-based input, or stylus input). For example, a swipe gesture may optionally be replaced by a mouse click (e.g., instead of contact) followed by a movement of the cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture may optionally be replaced by a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detecting contact and subsequently ceasing to detect contact). Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice may optionally be used simultaneously, or a mouse and finger contact may optionally be used simultaneously.

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

[0120] As used in this specification and the claims, the term "characteristic strength" of a contact refers to the characteristics of that contact based on one or more strengths of the contact. In some embodiments, the characteristic strength is based on a plurality of strength samples. The characteristic strength is optionally based on a set of strength samples collected during a predetermined time (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined number of strength samples, i.e., a predetermined event (e.g., after detecting the contact, before detecting the lift-off of the contact, before or after detecting the start of movement of the contact, before detecting the end of the contact, before or after detecting an increase in the strength of the contact, and / or before or after detecting a decrease in the strength of the contact). The characteristic strength of the contact is optionally based on one or more of the maximum value of the strength of the contact, the mean value of the strength of the contact, the average value of the strength of the contact, the top 10 percentile value of the strength of the contact, the median value of the strength of the contact, the 90th percentile value of the strength of the contact, etc. In some embodiments, the duration of the contact is used when determining the characteristic strength (e.g., when the characteristic strength is the average of the strength of the contact over time). In some embodiments, the characteristic strength is compared to a set of one or more strength thresholds to determine whether an action has been performed by a user. For example, the set of one or more strength thresholds optionally includes a first strength threshold and a second strength threshold. In this example, a contact having a characteristic strength that does not exceed the first threshold results in a first action, a contact having a characteristic strength that exceeds the first strength threshold but does not exceed the second strength threshold results in a second action, and a contact having a characteristic strength that exceeds the second threshold results in a third action. In some embodiments, the comparison between the characteristic strength and one or more thresholds is not used to determine whether to perform a first action or a second action, but rather is used to determine whether to perform one or more actions (e.g., whether to perform an individual action or whether to defer performing an individual action).

[0121] In some embodiments described herein, in response to detecting a gesture that includes an individual pressing input, or in response to detecting an individual pressing input performed by an individual contact (or multiple contacts), one or more operations are performed, and the individual pressing input is detected based at least in part on detecting an increase in the intensity of a contact (or multiple contacts) that exceeds a pressing input intensity threshold. In some embodiments, the individual operation is performed in response to detecting an increase in the intensity of an individual contact that exceeds the pressing input intensity threshold (e.g., the "downstroke" of an individual pressing input). In some embodiments, the pressing input includes an increase in the intensity of an individual contact that exceeds the pressing input intensity threshold and a subsequent decrease in the intensity of the contact that is lower than the pressing input intensity threshold, and the individual operation is performed in response to detecting a subsequent decrease in the intensity of the individual contact that is lower than the pressing input threshold (e.g., the "upstroke" of an individual pressing input).

[0122] In some embodiments, the device employs intensity hysteresis to avoid spurious inputs sometimes referred to as "jitter", and the device defines or selects a hysteresis intensity threshold that has a predefined relationship to the pressing input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the pressing input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some other reasonable percentage of the pressing input intensity threshold). Thus, in some embodiments, the pressing input includes an increase in the intensity of an individual contact that exceeds the pressing input intensity threshold and a subsequent decrease in the intensity of the contact that is lower than the hysteresis intensity threshold corresponding to the pressing input intensity threshold, and the individual operation is performed in response to detecting a subsequent decrease in the intensity of the individual contact that is lower than the hysteresis intensity threshold (e.g., the "upstroke" of an individual pressing input). Similarly, in some embodiments, the pressing input is detected only when the device detects an increase in the intensity of a contact from an intensity below the hysteresis intensity threshold to an intensity above the pressing input intensity threshold and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and the individual operation is performed in response to detecting the pressing input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, depending on the situation).

[0123] For ease of explanation, the description of an operation performed in response to a pressing input associated with a pressing input strength threshold or in response to a gesture including the pressing input is optionally triggered in response to any detection of an increase in the intensity of contact exceeding the pressing input strength threshold, an increase in the intensity of contact from an intensity below the hysteresis strength threshold to an intensity exceeding the pressing input strength threshold, a decrease in the intensity of contact below the pressing input strength threshold, and / or a decrease in the intensity of contact below the hysteresis strength threshold corresponding to the pressing input strength threshold. Further, in an example where an operation is described to be performed in response to detecting a decrease in the intensity of contact below the pressing input strength threshold, the operation is optionally performed in response to detecting a decrease in the intensity of contact below a hysteresis strength threshold corresponding to and lower than the pressing input strength threshold.

[0124] FIG. 5A shows a block diagram of an exemplary architecture of a device 500 according to some embodiments of the present disclosure. In the embodiment of FIG. 5A, media or other content is optionally received by the device 500 via a network interface 502, which is optionally a wireless or wired connection. One or more processors 504 optionally execute any number of programs stored in a memory 506 or storage. The memory 506 or storage optionally includes instructions for executing one or more of the methods and / or processes described herein (e.g., methods 700 and 900).

[0125] In some embodiments, display controller 508 causes various user interfaces of the present disclosure to be displayed on display 514. Further, input to device 500 is optionally provided by remote control 510 via remote interface 512. Remote interface 512 is optionally a wireless or wired connection. In some embodiments, as described in more detail below, input to device 500 is provided by multifunctional device 511 (e.g., a smartphone), and a remote control application that constitutes the multifunctional device is executed to simulate a remote control function. In some embodiments, multifunctional device 511 corresponds to one or more of devices 100 of FIGS. 1A and 2 and device 300 of FIG. 3. The embodiment of FIG. 5A is not intended to limit the features of the devices of the present disclosure, and it is understood that other components for facilitating other features described in the present disclosure may also be optionally included in the architecture of FIG. 5A.In some embodiments, device 500 optionally corresponds to one or more of the multifunctional devices 100 of FIGS. 1A and 2 and device 300 of FIG. 3, network interface 502 optionally corresponds to one or more of the RF circuits 108, external port 124, and peripheral interface 118 of FIGS. 1A and 2 and network communication interface 360 of FIG. 3, processor 504 optionally corresponds to one or more of processor 120 of FIG. 1A and CPU 310 of FIG. 3, display controller 508 optionally corresponds to one or more of display controller 156 of FIG. 1A and I / O interface 330 of FIG. 3, memory 506 optionally corresponds to one or more of memory 102 of FIG. 1A and memory 370 of FIG. 3, remote interface 512 optionally corresponds to one or more of peripheral interface 118 and I / O subsystem 106 (and / or its components) of FIG. 1A and I / O interface 330 of FIG. 3, remote 512 optionally corresponds to or includes one or more of speaker 111, touch-sensitive display system 112, microphone 113, light sensor 164, contact intensity sensor 165, haptic output generator 167, other input control devices 116, accelerometer 168, proximity sensor 166, and I / O subsystem 106 of FIG. 1A, keyboard / mouse 350, touchpad 355, haptic output generator 357, and contact intensity sensor 359 of FIG. 3, and touch-sensitive surface 451 of FIG. 4, and display 514 optionally corresponds to one or more of touch-sensitive display systems 112 of FIGS. 1A and 2 and display 340 of FIG. 3.

[0126] FIG. 5B shows an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 532 that operably couples an I / O section 534 to one or more computer processors 536 and a memory 538. The I / O section 534 can be connected to a display 524, which can have a touch sensing component 522 and optionally an intensity sensor 544 (e.g., a contact intensity sensor). Additionally, the I / O section 534 can be connected to a communication unit 50 that receives application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular, and / or other wireless communication technologies. The device 500 can include input mechanisms 526 and / or 528. Input mechanism 526 is optionally, for example, a rotatable input device or a depressable and rotatable input device. In some examples, input mechanism 528 is optionally a button.

[0127] In some examples, input mechanism 528 is optionally a microphone. The personal electronic device 500 optionally includes various sensors such as a GPS sensor 552, an accelerometer 554, a direction sensor 560 (e.g., a compass), a gyroscope 556, a motion sensor 558, and / or combinations thereof, all of which can be operably connected to the I / O section 534.

[0128] The memory 538 of the personal electronic device 500 can include one or more non-transitory computer-readable storage media that store computer-executable instructions, which, when executed by one or more computer processors 536, can cause, for example, the computer processor to execute the techniques described below, including the processes described with reference to FIGS. 6-9. A computer-readable storage media can be any media that can tangibly contain or store computer-executable instructions used by or associated with an instruction execution system, apparatus, or device. In some embodiments, the storage media is a transitory computer-readable storage media. In some embodiments, the storage media is a non-transitory computer-readable storage media. Non-transitory computer-readable storage media can include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, CDs, DVDs, or optical disks based on Blu-ray technology, as well as persistent solid-state memories such as flash, solid-state drives. The personal electronic device 500 is not limited to the components and configuration of FIG. 5B and can include other or additional components of a plurality of configurations, such as those described above with respect to FIGS. 1-3 and 5A.

[0129] Also, in the method described herein where one or more steps are conditional upon one or more conditions being met, it should be understood that the aforementioned method can be repeated multiple times such that all the conditions of the conditional steps of the method are met within each of the various repetitions of the method. For example, for a method where a first step is to be performed if a condition is met and a second step is to be performed if the condition is not met, one of ordinary skill in the art would understand that the claimed steps can be repeated in any order until the condition is met and until it is no longer met. Thus, the method described for one or more steps that are conditional upon one or more conditions being met can be rewritten as a method that is repeated until each condition described in the method is met. However, this is not necessary for claims of a system or computer-readable medium that includes instructions to perform conditional operations based on one or more corresponding conditions being met, such that the system or computer-readable medium can determine whether the conditional matter is met without explicitly repeating the method steps until all the conditions upon which the method steps are conditional are met. One of ordinary skill in the art would also understand that, similar to the method with conditional steps, a system or computer-readable storage medium can repeat the method steps the number of times necessary to ensure that all conditional steps have been executed.

[0130] As used herein, the term "affordance" refers to a user interaction graphical user interface object that is optionally displayed on the display screen of devices 100, 300, 500, and / or 511 (FIGS. 1A, 3, and 5A - 5B). For example, an image (e.g., an icon), a button, and text (e.g., a hyperlink) each optionally constitutes an affordance.

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

[0132] As used herein, the terms "open application" or "running application" refer to a software application that has retained state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or running application is optionally any one of the following types of applications. · An active application that is currently displayed on the display screen of the device being used by the application, · A background application (or background process) for which one or more processes are being processed by one or more processors although not currently displayed, and · An application in an interrupted or paused state that is not running but is stored in memory (volatile and non-volatile, respectively) and has state information that can be used to resume execution of the application.

[0133] As used herein, the term "closed application" refers to a software application that does not have retained state information (e.g., state information for a closed application is not stored in the device's memory). Thus, closing an application includes stopping and / or removing the application process for the application and removing the state information for the application from the device's memory. Generally, opening a second application within a first application does not close the first application. When the second application is being displayed and the first application has its display terminated, the first application becomes a background application.

[0134] Next, attention is directed to embodiments of a user interface ("UI") and related processes implemented on an electronic device such as the portable multifunctional device 100, device 300, device 500, or device 511. User Interface and Related Processes User Interface for Displaying the Current Location of an Electronic Device

[0135] A user interacts with an electronic device in many different ways, including using the electronic device to display and discover geographical locations on a map. In some embodiments, a user can view the determined location of the electronic device on a map. The embodiments described below provide a way to display the determined location of an electronic device on a map, thereby providing a way to enhance the interaction between the user and the electronic device. By enhancing the two-way interaction with the device, the amount of time required by the user to perform an operation is reduced, and thus the power consumption of the device is reduced, increasing the battery life for a battery-powered device.

[0136] Figures 6A through 6T illustrate an exemplary method by which an electronic device indicates the current location of the electronic device, according to some embodiments of the present disclosure. The embodiments in these figures are used to illustrate the processes described below, including the process described with reference to FIG. 7.

[0137] FIG. 6A shows an electronic device 500 that displays a user interface 600 (e.g., via a display device, via a display generation component, etc.). In some embodiments, the user interface 600 is displayed via a display generation component. In some embodiments, the display generation component is a hardware component (e.g., including electrical components) that can receive display data and display a user interface. In some embodiments, examples of the display generation component include a touch screen display (e.g., touch screen 504), a monitor, a television, a projector, an integrated, individual, or external display device, or any other suitable display device that communicates with device 500.

[0138] In some embodiments, the user interface 600 is a user interface of a map application (e.g., an application by which a user can view a geographical location, search for a location, and / or request directions from one place to another). In some embodiments, the map application is an application installed on device 500.

[0139] In some embodiments, the map application can present maps, routes, location metadata, and / or images (e.g., captured photos) associated with various geographical locations, specific points, etc. The map application can obtain map data including data defining maps, objects, routes, specific points, images, etc. from a navigation server. For example, the map data can be received as map tiles including map data of geographical areas corresponding to respective map tiles. The map data can include, among other things, roads and / or road segments, metadata of specific points or other locations, 3D models of buildings, infrastructure, and other objects in various places, and / or images taken at various locations. The map application can request map data (e.g., map tiles) associated with places frequently visited by the device 500 from the navigation server via a network (e.g., local area network, cellular data network, wireless network, Internet, wide area network, etc.). The map application can store the map data in a map database. The map application can use the map data stored in the map database received from the device 500 and / or other map data to provide the navigation application features described herein (e.g., combining images to improve image quality and / or introducing virtual parallax to create a 3D effect, dynamic road scene overlay).

[0140] In some embodiments, the navigation server can be a software server configured to acquire, generate, and / or store map data. For example, the navigation server can acquire lidar-generated point clouds of various locations included in the map data (e.g., points defining the positions of the surfaces of objects near the image capture location). The navigation server can use the respective point clouds of the locations to generate a three-dimensional model (e.g., a three-dimensional mesh) for each of the various locations. The navigation server can acquire images captured at various locations (e.g., the capture location), use this image to add a texture to the three-dimensional model, thereby generating a realistic three-dimensional image representing the corresponding position. For example, the captured image (e.g., a photograph, a panoramic photograph, etc.) can be stretched on the surface of the three-dimensional model of a specific location to generate a realistic three-dimensional view of the specific location. The three-dimensional model and the texture (e.g., the captured image, the stretched image, the image applied to the three-dimensional model, etc.) can be stored in the map database on the navigation server and supplied to the user device (e.g., device 500) to provide the various features and functions described herein. The navigation server can be configured to acquire, generate, and / or store other map data within the map database.

[0141] In FIG. 6A, the user interface 600 includes a representation of a map corresponding to the determined current location of the electronic device. For example, in FIG. 6A, the user interface 600 displays a specific geographical location including representations such as roads, landmarks, companies, and / or buildings. In some embodiments, the user interface 600 includes a graphic representation of roads, buildings, specific locations, and / or other map data. In some embodiments, the user interface 600 can include a text field for entering search criteria for searching for a location or address. For example, the user can type the name of a location (e.g., a company, a landmark, etc.) or an address in the text input box to initiate a search for a user-specified location or address in the map application. For example, the map application can search through a map database for a location (e.g., a place) that matches the search criteria. The map application can send a request to a navigation server to have the navigation server search for a location that matches the search criteria. After obtaining the map data corresponding to the search criteria, the navigation application can present a list of locations that match the search criteria, and the user can select one of the locations to have that location (e.g., an address, a specific location, a landmark, etc.) presented on the user interface 600.

[0142] In FIG. 6A, the user interface 600 includes a position indicator indicating the position of the electronic device as determined by the electronic device. In some embodiments, the user interface 600 does not include a position indicator when the location service is disabled and / or when the device is unable to determine the current position of the device with sufficient accuracy (e.g., accuracy above a pre-set threshold).

[0143] In some embodiments, the electronic device includes one or more components for determining the location of the electronic device. In some embodiments, the electronic device includes a GPS receiver configured to receive signals from one or more GPS satellites and determine the location of the device based on the signals received from the GPS satellites. In some embodiments, the electronic device can receive signals from a cellular or WiFi network and determine the location of the device based on the signals received from the cellular or WiFi network. In some embodiments, other methods of determining the location of the device are possible. In some embodiments, device 500 can determine its current location using multiple methods (e.g., triangulation combining GPS satellites and cellular towers).

[0144] In some embodiments, the device can determine the location of the device according to a specific level of accuracy based on one or more methods of determining the location of the device. For example, if the device is receiving signals from only one GPS satellite, the location of the device that can be derived from the signals from one satellite is not very accurate and can only narrow down the location of the device to a large geographical area. Similarly, if the device is receiving signals from many satellites, the location of the device derived from multiple signals is more accurate and the device can narrow down the location of the device to a smaller geographical area. For example, by receiving signals from multiple GPS satellites, the device can triangulate the location of the device to a specific level of accuracy. Thus, the device can determine the geographical area in which the device is located based on the number of GPS satellites from which the device is receiving signals. In some embodiments, there is essentially an error in determining the location based on the number of GPS satellites from which the device is receiving signals (e.g., an error of 2 miles with two GPS satellites, an error of 1000 feet with two GPS satellites, an error of 200 feet with four GPS satellites, etc.). In some embodiments, the minimum number of satellites (e.g., three satellites, four satellites) required to determine the location at any level of certainty is necessary.

[0145] In some embodiments, the same error may exist in other methods of determining position accuracy. For example, when a device is communicating with three cellular towers, the device (and optionally, the cellular network) can triangulate the position of the device according to a specific accuracy. However, when the device is communicating with only one cellular tower, the error in the position of the device becomes larger.

[0146] In some embodiments, for example, in the presence of interference such as a high-rise building, when the location is a large flat field, or when the satellite signal strength is weak at that location, the accuracy of the determined position depends on the characteristics of the geographical location. Other environmental factors may affect the error (for example, altitude, ambient temperature, humidity, and / or other electromagnetic waves may affect the signal characteristics such as GPS satellite, cellular, and / or WiFi network signals). Therefore, in some embodiments, environmental factors may affect whether signals from cellular, WiFi, or GPS satellites can be used to determine the position. In some embodiments, signals may be available, but using degraded signals for position determination results in lower accuracy.

[0147] In some embodiments, the type of location indicator displayed on user interface 600 depends on the current zoom level of the map and the accuracy of the determined location. In some embodiments, the map application has several zoom levels, each individual zoom level having a respective threshold accuracy level and representing a portion of the map corresponding to that zoom level. In some embodiments, if the accuracy of the determined location of the device exceeds the individual threshold accuracy level of the current zoom level, the location indicator is displayed as a point indicator, such as a pinpoint, indicating a single location on the map where the device is determined to be. In some implementations, this location can be described in terms of a single location, for example, latitude and longitude, coordinates. In some embodiments, if the accuracy of the determined location is less than the respective threshold accuracy level of the current zoom level, the location indicator is displayed as a region indicator indicating a region on the map where the device is determined to be, without displaying a point indicator corresponding to the exact determined location of the electronic device. In some embodiments, the region indicator indicates a rough location and can be represented as a circle (e.g., location indicator 602). The radius of the circle represents the accuracy and / or error of the location determination (e.g., the radius of location indicator 602 is equal to the error of the location determination).

[0148] In FIG. 6A, the accuracy 606 of the determined position of the device is less than the threshold level 608 associated with the current zoom level. In some embodiments, since the accuracy 606 of the determined position of the device is less than the threshold level 608, the user interface 600 includes a region indicator. Thus, in FIG. 6A, the user interface 600 includes a position indicator 602. In some embodiments, the position indicator 602 is a region indicator and indicates the geographic region where the device is located (e.g., based on the accuracy of the determined position of the device). In FIG. 6A, the position indicator 602 is a circle that encompasses the geographic region corresponding to the geographic region where the device is determined to be. For example, if the position of the device 500 is determined with an accuracy of 500 feet (e.g., the error in position determination is 500 feet), the radius of the position indicator 602 corresponds to 500 feet (e.g., the device 500 can be located anywhere on the map inside the position indicator 602), but if the position of the device 500 is determined with an accuracy of 50 feet (e.g., the error in position determination is 50 feet), the radius of the position indicator 602 corresponds to 50 feet (e.g., the radius of the position indicator 602 has a size representing 50 feet based on the current scale of the map). In some embodiments, other shapes of the position indicator 602 (e.g., square, rectangle, polygon, etc.) are possible.

[0149] In some embodiments, as shown in FIG. 6A, the position indicator 602 is overlaid on an object within the user interface 600 and is partially transparent, thus enabling at least a partial view of the object within the map at the position of the position indicator 602. As described in more detail below, the transparency of the position indicator 602 optionally depends on the size and / or accuracy 608 of the position indicator at the determined position of the device relative to the threshold level 608. In some embodiments, the position indicator 602 displays a pulsating animation (e.g., temporarily enlarging and / or shrinking in size at a constant period, or expanding a circle within the position indicator 602 similar to a radar), thereby indicating that the position of the device is being continuously determined (optionally, the position of the device is determined periodically). In some embodiments, the position indicator 602 displays an animation in which the boundaries of the position indicator 602 periodically thicken and thin, indicating that the position determination of the device is being continuously performed (optionally, this animation is displayed on the position indicator 610, which is described in more detail below).

[0150] In FIG. 6A, the user interface 600 includes an orientation indicator 604 that indicates the orientation of the device. In some embodiments, the device 500 includes one or more components for determining the orientation of the device. In some embodiments, the device 500 includes a gyroscope and / or a compass and can determine the direction in which the device is facing, e.g., the orientation of the device. In some embodiments, the orientation indicator is displayed only when orientation information is available. As shown in FIG. 6A, the orientation indicator 604 is displayed as a halo along a portion of the outer boundary / periphery of the position indicator 602 (e.g., an arc of a circle). In some embodiments, the width of the orientation indicator 604 (e.g., the dimension of the orientation indicator 604 perpendicular to the center of the position indicator 602) is smaller than the radius of the position indicator 602. In some embodiments, the angular dimension of the orientation indicator 604 (e.g., the length of the orientation indicator 604 along the outer edge of the position indicator 602 relative to the full circumference of the position indicator 602) represents the accuracy of the determined orientation of the device. For example, if the device determines that it is facing a particular direction with an accuracy of 30 degrees (e.g., an error of 30 degrees), the position indicator 602 encompasses 30 degrees out of a total of 360 degrees of the outer edge of the position indicator 602 and is disposed at the portion of the boundary of the position indicator 602 corresponding to the determined orientation of the device. Thus, the length (e.g., arc length) of the orientation indicator 604 is optionally based on the radius of the position indicator 602 (as described above, based on the accuracy of the position of the device). In some embodiments, the length of the orientation indicator 604 is the product of the radius of the orientation indicator 604 and the angle of orientation accuracy. Thus, the dimensions of the orientation indicator 604 are optionally based on the position accuracy (e.g., defining the radius of the position indicator 602) relative to the orientation accuracy and the accuracy threshold of the current zoom level (e.g., defining the angular dimension).As will be described in more detail below, in some embodiments, the width (e.g., arc length) of the orientation indicator 604 changes in response to a change in the zoom level, while in other embodiments, the width of the orientation indicator 604 does not change in response to a change in the zoom level (e.g., based on which position indicator is being displayed).

[0151] FIG. 6B shows an embodiment in which the accuracy 606 of the determined position of the device exceeds a threshold 608 at the current zoom level (e.g., the same zoom as in FIG. 6A). In some embodiments, since the accuracy 606 of the determined position of the device exceeds the threshold 608 at the current zoom level, the user interface 600 includes a position indicator 610 instead of the position indicator 602. In some embodiments, the position indicator 610 is a point indicator (e.g., a filled dot) that indicates a single geographical location where the device is located (e.g., represented by a single position coordinate). In some embodiments, the geographical area in which the device is included is determined to encompass a sufficiently small area of the map at the current zoom level (e.g., the current scale of the map), and since the display of the area indicator provides minimal information to the user (e.g., otherwise the area indicator would appear as almost a single position), the position indicator 610 is displayed as a point indicator. In some embodiments, the position indicator 602 displays an outer pulsating animation (e.g., temporarily enlarging and / or shrinking in size at a regular interval, or expanding a circle outward from the position indicator 610 similar to a radar), thus indicating that the position of the device is continuously being determined (optionally, the position of the device is determined periodically).

[0152] In FIG. 6B, user interface 600 includes an orientation indicator 605 that indicates the orientation of the device. Similar to orientation indicator 604, orientation 605 has respective angular dimensions that represent the accuracy of the device's determined orientation. In some embodiments, as shown in FIG. 6B, orientation indicator 605 extends conically outward from position indicator 610. In some embodiments, the width of orientation indicator 605 (e.g., the dimension of orientation indicator 604 that is perpendicular to the center of position indicator 602) is greater than the radius of position indicator 610. In some embodiments, optionally, since position indicator 610 does not change size based on the current zoom level of the map, orientation indicator 605 does not change width based on the current zoom level of the map.

[0153] For example, in FIG. 6C, user input corresponding to the outward pinch gestures of contacts 603-1 and 603-2 is received. In some embodiments, the outward pinch gesture is a request to zoom in on the map (e.g., to expand the size of an object within the map). In some embodiments, other gestures or inputs correspond to a request to zoom in on the map. In FIG. 6C, in response to the request to zoom in on the map, the map expands and the accuracy threshold level, accuracy threshold level 608, increases (e.g., as compared to FIG. 6B). In some embodiments, due to the change in the scale of the map, the threshold level 608 at which the position indicator is displayed as a dot indicator becomes higher. Thus, a higher level of accuracy is required to display the position indicator as a dot indicator. In FIG. 6C, even though the threshold level 608 increases, the accuracy 606 remains higher than the threshold level 608. Therefore, the accuracy of the device's position is high enough to maintain the position indicator as a dot indicator. Therefore, in FIG. 6C, the position indicator 610 is shown. In some embodiments, even when the map is zoomed in, the position indicator 610 and the orientation indicator 605 do not change in size (e.g., in contrast to the position indicator 602 that changes in size in response to the user zooming in or out, the position indicator 610 maintains the same size as long as the accuracy 606 remains above the threshold level 608). In some embodiments, by maintaining the size of the position indicator 610 (e.g., by maintaining the position indicator 610 as a dot indicator), the user's confidence in the determined position of the device is maintained, thereby minimizing the time required for the user to view the device's position and reducing the number of inputs required for the user to verify the device's position).

[0154] In some embodiments, the threshold level 608 does not change in response to a change in the zoom level. For example, not every zoom level has a unique corresponding threshold level. In some embodiments, some or all zoom levels have the same threshold level. Thus, in some embodiments, a change (e.g., an increase or decrease) in the threshold level does not occur upon zooming in or out. Thus, in some embodiments, the position indicator changes not from a point indicator (e.g., position indicator 610) to a region indicator (e.g., position indicator 602) in response to zooming in or out, but rather changes based on an increase or decrease in the accuracy of the determined position (e.g., a change in environmental factors affecting the accuracy, and / or reception of signals from a greater or fewer number of GPS satellites).

[0155] In FIG. 6D, with the accuracy 606 remaining constant, a user input (e.g., a request to zoom in) corresponding to an outward pinch gesture of contacts 603-1 and contacts 603-2 is received. In some embodiments, as shown in FIG. 6D, in response to a request to zoom in on the map, the threshold level 608 further increases (e.g., compared to FIG. 6C). In FIG. 6D, the threshold level 608 is increasing beyond the accuracy 606. Currently, as a result of the accuracy 606 being less than the threshold 608, the position indicator is displayed as a region indicator. Thus, in FIG. 6D, the user interface 600 switches from a state including the position indicator 610 (e.g., a point indicator) to a state including the position indicator 602 (e.g., a region indicator). As shown in FIG. 6D, since the accuracy 606 is slightly less than the threshold 608, the size of the position indicator 602 is small (e.g., reflecting the geographic region where the device is determined to be, as described above with respect to FIG. 6A). As shown in FIG. 6D, the position indicator 602 has a first transparency level. In some embodiments, the transparency of the position indicator 602 is based on the size of the position indicator 602. Thus, in FIG. 6D, since the position indicator 602 is relatively small, the position indicator 602 is relatively opaque (e.g., a low transparency level).

[0156] In FIG. 6E, with accuracy 606 remaining constant, another user input corresponding to the outward pinch gestures of contacts 603-1 and 603-2 (e.g., a zoom-in request) is received. In some embodiments, as shown in FIG. 6E, in response to a request to zoom in on the map, the threshold level 608 further increases (e.g., as compared to FIG. 6D). In FIG. 6E, accuracy 606 remains the same, but the threshold level 608 is now far from accuracy 606. In some embodiments, as a result of accuracy 606 being far from the threshold accuracy 606, the position indicator 602 increases in size. In some embodiments, the increase in the size of the position indicator 602 reflects a change in the scale of the map with respect to the area determined to be where the device is located (e.g., the position indicator 602 in FIG. 6E represents the same geographical area as the position indicator 602 in FIG. 6D). As shown in FIG. 6E, since the position indicator 602 has increased in size, the position indicator 602 is now more transparent as compared to FIG. 6D. In some embodiments, due to the increase in the size of the position indicator 602, the angular dimension of the orientation indicator 604 remains the same and the width of the orientation indicator 604 (e.g., arc length) also increases (e.g., as compared to FIG. 6D, assuming the accuracy of the orientation has not changed).

[0157] In FIG. 6F, with accuracy 606 remaining constant, another user input corresponding to an outward pinch gesture of contacts 603-1 and 603-2 (e.g., a zoom-in request) is received. In some embodiments, as shown in FIG. 6F, in response to a request to zoom in on the map, the threshold level 608 further increases (e.g., compared to FIG. 6E). In FIG. 6F, accuracy 606 remains the same, but currently, the threshold level 608 is far from accuracy 606. In some embodiments, as a result of accuracy 606 being far from the threshold accuracy 606, the position indicator 602 further increases in size. In some embodiments, the increase in the size of the position indicator 602 reflects a change in the scale of the map with respect to the area in which the device is determined to be located (e.g., the position indicator 602 in FIG. 6F represents the same geographic area as the position indicator 602 in FIG. 6E). As shown in FIG. 6F, because the position indicator 602 has increased in size, currently, the position indicator 602 is more transparent compared to FIG. 6E. In some embodiments, because the size of the position indicator 602 has increased, the width of the orientation indicator 604 (e.g., arc length) has also increased (e.g., compared to FIG. 6E, assuming the orientation accuracy has not changed), but the angular dimension of the orientation indicator 604 remains the same.

[0158] In FIG. 6G, with accuracy 606 remaining constant, another user input corresponding to an outward pinch gesture of contact 603-1 and contact 603-2 (e.g., a zoom-in request) is received. In some embodiments, as shown in FIG. 6G, in response to a request to zoom in on the map, the threshold level 608 further increases (e.g., compared to FIG. 6F). In FIG. 6G, due to the increase in the size of the position indicator 602 in response to the increase in the threshold level 608, the transparency of the position indicator 602 is now 100%. Thus, the position indicator 602 is completely transparent and is no longer displayed on the user interface 600 (optionally, in some embodiments, even if the position indicator 602 is completely transparent, the boundary of the position indicator 602 continues to be displayed without changing the transparency). In some embodiments, the threshold size at which the position indicator 602 becomes completely transparent (e.g., stops being displayed) is the case where the position indicator 602 would otherwise encompass the entire display area of the touch screen 504. In some embodiments, when the position indicator 602 encompasses the entire display area of the touch screen 504, (e.g., also realized when the position indicator 602 is not displayed at all, but since the entire display area has the same shade), the display of the position indicator 602 provides a minimum value. In some embodiments, the threshold size is 50% of the display area, 66% of the display area, 75% of the display area, 90% of the display area, 95% of the display area, etc. In some embodiments, the threshold size at which the position indicator 602 becomes completely transparent (optionally excluding the boundary line) is when the position indicator 602 reaches the size of the smaller dimension of the map representation (e.g., the smaller of the width or height of the map representation). In some embodiments, the threshold size at which the position indicator 602 becomes completely transparent (optionally excluding the boundary line) is when the position indicator 602 reaches the size of the larger dimension of the map representation (e.g., the larger of the width or height of the map representation).

[0159] In FIG. 6H, with accuracy 606 remaining constant, a user input corresponding to the inward pinch gestures of contacts 603-1 and 603-2 (e.g., a request to zoom out) is received. In some embodiments, in response to a request to zoom out the map, the threshold level 608 decreases (e.g., compared to FIG. 6F). In some embodiments, in response to the decrease in the threshold level 608 with accuracy 606 remaining the same, the size of the position indicator 602 decreases and the transparency level decreases. In some embodiments, the width / arc length of the orientation indicator 604 decreases (e.g., compared to FIG. 6F).

[0160] In FIG. 6I, the device 500 detects that the orientation of the device 500 has changed. For example, in FIG. 6I, the device 500 changes from a northwest orientation to a northeast orientation. In some embodiments, in response to detecting a change in orientation, the orientation indicator 604 moves along the outer boundary of the position indicator 602 so as to face each respective orientation (e.g., face northeast), with the accuracy of the determined orientation remaining the same.

[0161] In FIG. 6J, with accuracy 606 remaining constant, a user input corresponding to the inward pinch gestures of contacts 603-1 and 603-2 (e.g., a request to zoom out) is received. In some embodiments, in response to a request to zoom out the map, the threshold level 608 decreases below the accuracy 606 (e.g., compared to FIG. 6I). In some embodiments, other gestures or inputs correspond to a request to zoom outwards on the map. In some embodiments, currently, in response to accuracy 606 being higher than the threshold 608, as shown in FIG. 6J, the device 600 switches from the display of the position indicator 602 to the display of the position indicator 610. In some embodiments, due to the display of the position indicator 610, the device 500 switches from the display of the orientation indicator 604 to the display of the orientation indicator 605. In some embodiments, the orientation indicator 605 faces the same direction as the orientation indicator 604 in FIG. 6I (assuming, for example, that the device 500 has not determined a change in orientation).

[0162] In FIG. 6J, the device 500 detects that the orientation of the device 500 has changed. For example, in FIG. 6K, the device 500 changes from a northeast orientation to a northwest orientation. In some embodiments, in response to detecting the orientation change, the orientation indicator 605 rotates from a northeast orientation to a northwest orientation.

[0163] In FIG. 6L, with the determined orientation of the device remaining constant, a user input corresponding to an outward pinch gesture of contacts 603-1 and 603-2 (e.g., a request to zoom in) is received. In some embodiments, in response to a request to zoom in on the map, the threshold level 608 increases beyond the accuracy 606. In some embodiments, currently, in response to the accuracy 606 being lower than the threshold 608, as shown in FIG. 6L, the device 600 switches from the display of the position indicator 610 to the display of the position indicator 602. In some embodiments, due to the display of the position indicator 602, the device 500 switches from the display of the orientation indicator 605 to the display of the orientation indicator 604. In some embodiments, the orientation indicator 604 is oriented in the same direction as the orientation indicator 605 in FIG. 6K (assuming, for example, that the device 500 has not determined a change in orientation).

[0164] FIG. 6M shows an embodiment in which the position indicator 610 and the direction indicator 605 are displayed while the user interface 600 is displaying route guidance from one position to another. In FIG. 6M, the accuracy 606 exceeds the threshold level 608, and thus the user interface 600 includes a point indicator (e.g., the position indicator 610). FIG. 6N shows an embodiment in which the position indicator 602 and the direction indicator 604 are displayed while the user interface 600 is displaying route guidance from one position to another. In FIG. 6N, the accuracy 606 is less than the threshold level 608, and thus the user interface 600 includes an area indicator (e.g., the position indicator 602). Thus, as described above, the device 500 can display the position indicator 602 or the position indicator 610, and / or the direction indicator 604 or the direction indicator 605 (optionally, as described above with respect to FIGS. 6A-6L) regardless of whether the user interface 600 is displaying a direction or not.

[0165] In FIG. 6O, while the position indicator 610 (e.g., a dot position indicator because the position accuracy is greater than the threshold 608) and the orientation indicator 604 on the position indicator 610 are being displayed, a user input 603o for selecting the position indicator 610 is received. In some embodiments, the selection of the position indicator 610 corresponds to a request to display information regarding the current position of the device 500. In some embodiments, in response to the user input 603o, the device 500 displays a user interface 616 as shown in FIG. 6P. In some embodiments, the user interface 616 is a user interface that includes information and / or options related to the determined position of the device 500. In FIG. 6P, the user interface 616 includes options 618, 620, and 622 (optionally, on the same line). In some embodiments, option 618 can be selected to mark the current position of the device 500 (e.g., save this position for future access). In some embodiments, option 620 can be selected to initiate a process to improve the determined position of the device, as described below with respect to method 900. In some embodiments, option 622 can be selected to share the current position of the device 500 for another use (e.g., send information regarding the current position of the device 500 to another device).

[0166] In some embodiments, in response to user input 603o, device 500 displays user icon 614. In some embodiments, user icon 614 is a representation of the user and can include text, an image, a graphic, or any other suitable representation of the user. In some embodiments, the visual characteristics of user icon 614 (e.g., an image, a graphic, text, etc.) are set by the user. In some embodiments, user icon 614 is similar or identical to the representation of the user displayed in other applications (e.g., applications other than the map application). For example, user icon 614 is optionally associated with the user's account (e.g., user profile), and this account can be used in a plurality of other applications (e.g., to log in). In some embodiments, user icon 614 includes an element (e.g., an arrow, a triangle, an element protruding from user icon 614, or any other suitable visual element associating user icon 614 with location indicator 610) pointing towards location indicator 610, indicating that the user has been determined to be at the location of location indicator 610. In some embodiments, as shown in FIG. 6P, when user icon 614 and / or user interface 616 are displayed, orientation indicator 604 is not displayed on location indicator 610. In some embodiments, the display of orientation indicator 604 is maintained on location indicator 610.

[0167] In FIG. 6Q, a user input corresponding to an outward pinch gesture of contacts 603q-1 and 603q-2 (e.g., a zoom-in request) is received. In some embodiments, in response to a request to zoom in on the map, the zoom-in of the map and the representation of the threshold level 608 increase beyond the level of accuracy 606, as shown in FIG. 6Q. As described above, in response to the zoom-in of the map representation (e.g., according to the determination that the accuracy 606 is less than the threshold level 608), the device 500 switches from the display of the position indicator 610 (e.g., a point indicator) to the display of the position indicator 602 (e.g., an area indicator). As described above, the size of the position indicator 602 is optionally determined by the accuracy of the determined position of the device 500 when compared to the threshold level. Thus, in FIG. 6Q, the position indicator 602 has a radius smaller than the size of the user icon 614. In such embodiments, the user icon 614 optionally overlays (e.g., superimposes) at least a portion of the position indicator 602. For example, if the size of the position indicator 602 is less than or equal to the size of the user icon 614, at least a portion of the user icon 614 is displayed on at least a portion of the position indicator 602, and at least a portion of the user icon 614 is not displayed on the position indicator 602. In some embodiments, the user icon 614 continues to include an element pointing to the position indicator 602, but as shown in FIG. 6Q, the user icon 614 is optionally arranged such that the element points to the center of the position indicator 602 (or another predefined position within or on the position indicator 602).

[0168] In FIG. 6Q, in response to a request to zoom in on the map, device 500 displays orientation indicator 604 on location indicator 604 (e.g., causes the display of orientation indicator 604, or in some cases, maintains the display of orientation indicator 604), and changes the visual appearance of orientation indicator 604 based on being displayed on location indicator 604. In some embodiments, based on the relative sizes of orientation indicator 604 and user icon 614, orientation indicator 604 is at least partially hidden by user icon 614 (e.g., in FIG. 6Q, orientation indicator 604 is completely hidden by user icon 614). Further details regarding how the visual appearance of orientation indicator 604 differs when it is displayed on location indicator 602 as compared to when it is displayed on location indicator 610 are described below with respect to FIG. 6R.

[0169] In FIG. 6R, another user input corresponding to the outward pinch gestures of contacts 603r-1 and 603r-2 (e.g., a zoom-in request) is received. In some embodiments, in response to a request to zoom in on the map, as shown in FIG. 6R, the zoom-in of the map and the representation of the threshold level 608 are further increased. In some embodiments, in response to the threshold level 608 far exceeding the accuracy 606, the size of the position indicator 602 increases accordingly (e.g., as described above with respect to FIGS. 6D-6G). In some embodiments, since the position indicator 602 is larger than the size of the user icon 614 (e.g., the radius of the position indicator 602 is optionally larger than the radius of the user icon 614 by a threshold amount such as 0.5 mm, 1 mm, 3 mm, 5 mm, 1 cm, etc.), as shown in FIG. 6R, the user icon 614 is located at the center of the position indicator 602 and is updated to no longer include an element pointing to the position indicator. Thus, in some embodiments, the user icon 614 is circular and does not include any element protruding from the boundary of the user icon 614. In some embodiments, the size of the user icon 614 is fixed and does not change in response to zooming in or out of the map representation.

[0170] FIG. 6R further shows an embodiment of the orientation indicator 604 that includes a portion outside the position indicator 602 and a portion inside the position indicator 602. As described above, when the orientation indicator 604 is displayed on the position indicator 610 (e.g., a dot indicator), the orientation indicator 604 is optionally displayed in a conical shape that extends outward from the boundary of the position indicator 610. Thus, the orientation indicator 604 optionally does not include a portion that is displayed inside the position indicator 610. However, when the device 500 is displaying the position indicator 602 (e.g., an area indicator), the orientation indicator 604 optionally includes an outer portion and an inner portion, as shown in FIG. 6R. In some embodiments, the outer portion of the orientation indicator 604 has a shape similar to a halo along the boundary of the position indicator 602, similar to the embodiment described above with respect to FIG. 6A. In some embodiments, as shown in FIG. 6R, an inner portion of the orientation indicator 604 having a conical shape that extends outward from the center of the position indicator 602 to the boundary of the position indicator 602 is displayed.

[0171] Accordingly, in some embodiments, the orientation indicator 604 has the same or a similar shape when the orientation indicator 604 is displayed on the position indicator 610 and when it is displayed on the position indicator 602, but is displayed at different locations relative to the position indicator and includes different portions of the shape. For example, the orientation indicator 604 displays different portions of the orientation indicator object based on whether the orientation indicator 604 is displayed on the position indicator 602 or on the position indicator 610. For example, while being displayed on the position indicator 610, the orientation indicator 604 reveals a portion that is outside the position indicator 610 but inside the orientation indicator object (e.g., 1 mm, 2 mm, 3 mm, 5 mm, 1 cm, etc. inside). While being displayed on the locator indicator 602, the orientation indicator 604 reveals an outer portion of the orientation indicator object (e.g., at the position of 1 mm, 2 mm, 3 mm, 5 mm, 1 cm, at the position of 3 mm, 5 mm, 1 cm, 2 cm, etc.). In some embodiments, as described above, the orientation indicator 604 straddles the boundary of the position indicator 602 when displayed on the position indicator 602, but is only displayed outside the position indicator 610 when displayed on the position indicator 610. Accordingly, in some embodiments, the size and shape of the orientation indicator 610 are determined by revealing and masking different portions of the orientation indicator object (e.g., an orientation indicator object having a conical shape extending outward from the center of each position indicator) based on whether the position indicator 602 is displayed or the position indicator 610 is displayed. In some embodiments, the portion of the orientation indicator object that is displayed when the orientation indicator is displayed on the position indicator 610 at least partially overlaps (optionally, these portions do not overlap) with the portion of the orientation indicator object that is displayed when the orientation indicator is displayed on the position indicator 602.

[0172] In some embodiments, certain portions of the orientation indicator 604 can have different levels of transparency. For example, in FIG. 6R, the transparency of the inner portion of the orientation indicator 604 increases as it approaches the center of the position indicator 602. In some embodiments, the transparency reaches 100% at the center of the position indicator 602 or in front of the center (e.g., such that the orientation indicator 604 appears not to have reached or touched the center of the position indicator 602).

[0173] In FIG. 6S, a user input 603s corresponding to a request to dismiss the user interface 616 (e.g., selection of a "close" or "x" affordance) is received. In some embodiments, in response to the user input 603s, the device 500 stops displaying the user interface 616 as shown in FIG. 6T. In some embodiments, in response to the user interface 616 no longer being displayed, the device 500 stops displaying the user icon 614. Thus, in some embodiments, the user icon 614 is displayed (e.g., only displayed) when the user interface 616 is displayed (and optionally not displayed when the user interface 616 is not displayed).

[0174] In some embodiments, receiving a user input that selects the location indicator 602 does not cause the display of the user icon 614 and / or the user interface 616 (e.g., the display of the user icon 614 and / or the user interface 616 is caused only by the selection of the location indicator 610). In some embodiments, receiving a user input that selects the location indicator 602 also causes the display of the user icon 614 and / or the user interface 616. In some embodiments, the user icon 614 and / or the user interface 616 are (e.g., only in the case where) displayed in response to the selection of the location indicator 602 when the size of the location indicator 602 is less than a threshold size (e.g., 25% of the display area, 50% of the display area, 60% of the display area, 90% of the display area). As described above, since the location indicator 602 can have a transparency that increases as the location indicator 602 gets larger, when the transparency of the location indicator 602 exceeds a threshold amount (e.g., 30% transparency, 50% transparency, 75% transparency, 90% transparency, 100% transparency, etc.), the selection of the location indicator 602 does not cause the display of the user icon 614 and / or the user interface 616.

[0175] In some embodiments, when the size of the position indicator 602 increases beyond a threshold size (e.g., a threshold size at which selection of the position indicator 602 does not cause the display of the user icon 614 and / or the user interface 616), if the user icon 614 and / or the user interface 616 is currently being displayed, the device 500 optionally maintains the display of the user icon 614 and / or the user interface 616. For example, if the position indicator 602 is displayed with a size less than the threshold size, in response to user input, the user icon 614 and the user interface 616 are displayed. Then, while the user icon 614 and the user interface 616 are being displayed, if the user zooms in on the map such that the size of the position indicator 602 becomes larger than the threshold size, optionally, the user icon 614 and the user interface 616 continue to be displayed on the user interface. However, at that point, if the user dismisses the display of the user icon 614 and / or the user interface 616 (e.g., by selecting a "close" or "x" affordance as in FIG. 6S), the user cannot optionally cause the display of the user icon 614 and / or the user interface 616 via selection of the position indicator 602 (e.g., without changing the size of the position indicator 602 to be less than the threshold size, such as by zooming out of the map).

[0176] FIG. 7 is a flow diagram illustrating a method 700 for indicating a current position of an electronic device, according to some embodiments of the present disclosure. Method 700 is optionally executed on an electronic device such as device 100, device 300, device 500, and device 511 as described above with reference to FIGS. 1A - 1B, FIGS. 2 - 3, FIGS. 4A - 4B, and FIGS. 5A - 5B. Some operations of method 700 are optionally combined, and / or the order of some operations is optionally changed.

[0177] As described below, method 700 indicates the current location of the electronic device. This method reduces the user's cognitive burden when interacting with the user interface of the device disclosed herein, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, by improving the efficiency of the user's interaction with the user interface, power is conserved and the interval between battery charges is increased.

[0178] In some embodiments, an electronic device 500 that communicates with a display generation component (e.g., a mobile device (e.g., a tablet, smartphone, media player, or wearable device), or a computer that optionally communicates with one or more input devices) displays (702) a map user interface, such as user interface 600 of FIG. 6A, via the display generation component (e.g., the map user interface is displayed in response to receiving user input corresponding to a request to display the map user interface). For example, the user input selects a map application from a home screen user interface or an application launch user interface.

[0179] In some embodiments, the one or more input devices include one or more of a mouse (e.g., external), a trackpad (optionally integrated or external), a touchpad (optionally integrated or external), a remote control device (e.g., external), another mobile device (e.g., separate from the electronic device), a handheld device (e.g., external), and / or a controller (e.g., external). In some embodiments, the display generation component is an external display such as a display integrated with the electronic device (optionally a touch screen display), a monitor, a projector, a television, or a hardware component (optionally integrated or external) for projecting the user interface or making the user interface visible to one or more users.

[0180] In some embodiments, the map user interface includes a representation (704) of a map at an individual zoom level, such as that of FIG. 6A (e.g., a map of an individual geographical location). In some embodiments, the map displays the user's geographical location and a location indicator indicating the determined position of the electronic device on a representation of the map (706), such as location indicator 602 of FIG. 6A and location indicator 610 of FIG. 6B (e.g., the representation of the map includes an indicator indicating the position of the electronic device within the map).

[0181] In some embodiments, the representation of the map is interactive for the user to view various geographical locations. In some embodiments, the representation of the map is interactive for the user to change the zoom level. In some embodiments, the representation of the map displays various levels of detail based on the zoom level. For example, at a first zoom level, the representation of the map includes representations of roads and highways, and at a second zoom level closer to (e.g., more zoomed in than) the first zoom level, the representation of the map includes representations of buildings, companies, and / or landmarks. In some embodiments, the indicator is displayed only if the location determination is enabled (e.g., GPS tracking is enabled). In some embodiments, the indicator indicates the estimated position of the electronic device based on the accuracy or reliability of the position of the electronic device. In some embodiments, the electronic device includes a GPS component capable of determining the position of the electronic device. In some embodiments, the device can determine the position of the electronic device at a particular accuracy level based on the number of satellites that the GPS component can lock onto (e.g., the more satellites, the higher the accuracy; the fewer satellites, the lower the accuracy). In some embodiments, the electronic device can communicate with a cellular provider and use data from the cellular provider (e.g., based on the cell tower(s) with which the electronic device is communicating) to determine the position of the electronic device. In some embodiments, the electronic device can determine its position based on other mechanisms.

[0182] In some embodiments, according to a determination that the accuracy of the determined position of the electronic device is less than an individual threshold for an individual zoom level (e.g., based on one or more position determination mechanisms, the accuracy of the determined position of the electronic device is less than the threshold (e.g., the determined position of the device is within a radius of 5 feet, 10 feet, 30 feet, 50 feet, 100 feet, 1 / 4 mile, half mile, 1 mile, or no position can be determined, etc.)), the position indicator includes a first position element (e.g., a circular indicator of a first size at each location on the map representation) such as the area indicator 602 (e.g., an indicator on the map representation that shows not a single position but an area of the electronic device within the map) rather than the position indicator 610 in FIG. 6A, and does not include a second position element (708).

[0183] In some embodiments, the electronic device cannot determine an exact location. In some embodiments, if the accuracy is less than the threshold, the electronic device instead determines that the electronic device is likely to be located within a particular area. In some embodiments, the threshold for the accuracy of the determined position is based on the zoom level of the map representation. For example, when the map is zoomed in to a first level, a first level of accuracy is required for the determined position to meet the threshold, but when the map is zoomed out to a second level (e.g., lower than the first level), a lower level of accuracy (e.g., a second zoom level threshold lower than the first zoom level threshold) is required for the determined position to meet the threshold.

[0184] In some embodiments, the circular indicator indicates that the determined area of the electronic device is a possible location of the device. In some embodiments, the size of the circular indicator indicates the accuracy of the determination. For example, if the accuracy is low, the indicator is of a large size (e.g., encompassing a larger area), and if the accuracy is medium, the indicator is of a medium size (e.g., encompassing a smaller area).

[0185] In some embodiments, in accordance with a determination that the accuracy of the determined position of the electronic device exceeds an individual threshold level for an individual zoom level (e.g., the accuracy of the determined position of the electronic device is greater than a threshold amount for the displayed zoom level), the position indicator includes a second position element and does not include a first position element (710), such as a position indicator 610 other than the position indicator 602 in FIG. 6B (e.g., a dot indicating a single location on the map where the electronic device is located).

[0186] In some embodiments, the determined position(s) of the electronic device is at a particular location on the map. In some embodiments, the electronic device is unable to determine an exact position, but as the map is zoomed out, the area determined to be where the device is likely to be located is small due to the zoom level of the map. In such embodiments, the accuracy of the determined position exceeds the threshold level for the current zoom level.

[0187] In some embodiments, if the accuracy exceeds a threshold, the map representation does not include a circular indicator that indicates an area on the map. In some embodiments, only one of the first and second position elements is continuously displayed at a time (optionally, neither element is displayed if location tracking is disabled or the map representation does not include the determined location of the device). In some embodiments, as described above, whether the map user interface includes the first and second position elements depends at least on the accuracy of the determination of the device's position and the zoom level of the map representation (e.g., the current view of the map). For example, if the device can determine with such accuracy that its position is somewhere within a block, and the map is zoomed in such that a large portion of the user interface (e.g., the block is larger than 20%, 30%, 50%, 60%, 75%, 90% etc. of the size of the map representation) displays the block, the accuracy is below the threshold required for that zoom level, and the first position element is displayed as a circular indicator that encompasses the block, thus indicating that the device is somewhere within the block. In another example, if the device determines that its position is somewhere within a block, but the user interface displays the entire area and the map is zoomed out such that individual blocks are only a small portion of the map representation (e.g., an area encompassing less than 0.25mm2, 0.5mm2, 1mm2, 2mm2, or less than 1%, 3%, 5%, 10%, 15% of the size of the map representation), the accuracy exceeds the threshold required for that zoom level, the first position element is not displayed, and instead the second position element is displayed, thus indicating that the device is at that location within the block. Thus, in some embodiments, the first position element is an area indicator and the second position element is a point indicator, and whether the user interface includes the first position element or the second position element is based on whether the determined potential location of the device should be represented as an area or a location based on the zoom level of the map.

[0188] (For example, by displaying either a region indicator or a point indicator according to the accuracy of the determined position and the zoom level of the map) The above method of displaying an indication of the determined position of the device provides information regarding the determined position of the device to the user quickly and efficiently, thereby (for example, not displaying a point indicator when a region indicator is more appropriate and vice versa, thereby reducing potential confusion regarding the accuracy of the determined position) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0189] In some embodiments, while the first position element is being displayed, according to the determination that the first position element occupies the first display area (for example, occupies the first display area of the display generation component, occupies the first display area of all the display areas generated by the display generation component, etc.), the first position element has a first opacity value as shown in FIG. 6A (for example, the opacity of the first position element is based on the size of the first position element).

[0190] In some embodiments, the size of the first position element is based on the determined position accuracy relative to a predetermined threshold of the current zoom level. For example, if the accuracy decreases at a particular zoom level (e.g., at a certain threshold), the size of the first position element increases. If the accuracy increases, the size of the first position element decreases. Similarly, when the user changes the zoom level of the map, at a certain accuracy level, when the predetermined threshold increases (e.g., as the user zooms in), the size of the first position element increases, but when the predetermined threshold decreases (e.g., as the user zooms out), the size of the first position element decreases. In some embodiments, the size of the first position element is the absolute size of the first position element. In some embodiments, the size of the first position element is the display area of the first position element relative to the entire display area of the map representation (optionally, based on the scale of the map representation or relative to the representation of other objects within the map representation).

[0191] In some embodiments, in accordance with the determination that the first position element occupies a second display area having a size different from the first display area (e.g., occupies the second display area of the display generation component, occupies the second display area among all the display areas generated by the display generation component, etc.), the first position element has a second opacity value different from the first opacity value, as shown in FIGS. 6D and 6F. For example, as the size of the first position element decreases, the opacity increases (the transparency of the element decreases).

[0192] In some embodiments, as the size of the first position element increases, the opacity decreases (the transparency of the element increases). For example, the more the first position element occupies of the display area, the more transparent the first position element becomes, enhancing the visibility of the elements of the map user interface overlaid by the first position element.

[0193] (For example, by decreasing the opacity of the position indicator as the size of the position indicator increases, and vice versa) The above-described method of changing the opacity of the position indicator provides information regarding the determined position of the device to the user quickly and efficiently without obstructing the view of the object on the map, thereby (without requiring the user to disable the display of the position indicator, for example, to prevent the position indicator from obscuring a part of the map) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during use of the device while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0194] In some embodiments, in accordance with a determination that the first position element occupies a display area larger than a predetermined size (for example, as the user zooms in or as the position accuracy decreases, the size of the first position element increases and encompasses more than a threshold amount of the display area (e.g., 80%, 85%, 90%, 95%, 99%, 100% of the entire display area, etc.)), the electronic device stops displaying the first position element (for example, the opacity of the first position element is decreased to an opacity value of zero), as shown in FIG. 6G.

[0195] For example, as the display area of the first position element increases, the opacity of the first position element decreases such that when the display area of the first position element reaches a predetermined size, the opacity becomes zero (e.g., completely transparent). In some embodiments, having an opacity level of zero means that the first position element is not visible within the user interface. In some embodiments, decreasing the opacity level to zero (optionally while maintaining the display of the first position element) is implemented by stopping the display of the first position element (and optionally stopping the display of the position indicator).

[0196] (For example, by stopping the display of the position indicator when the size of the position indicator reaches a predetermined threshold) The above-described method of changing the opacity of the position indicator, when the size of the position indicator provides the minimum information value (for example, when the position indicator encompasses the entire display area), quickly and efficiently removes the display of the position indicator, thereby simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0197] In some embodiments, while displaying the first position element, the electronic device receives user input via one or more input devices corresponding to a request to decrease the zoom level of the map representation, such as in FIG. 6J, to a first zoom level (for example, while displaying the first position element, receives user input to zoom out the map representation to display a larger geographic area). In some embodiments, the user input is an inward pinch gesture. In some embodiments, the user input is a selection of a zoom out affordance. In some embodiments, the user input is a downward swipe gesture following a double tap.

[0198] In some embodiments, in response to receiving the user input, the electronic device decreases the zoom level of the map representation (for example, decreases the zoom level according to the user input), and according to a determination that the accuracy of the device's determined position exceeds an individual threshold level of the first zoom level, the electronic device updates the position indicator to include the second position element as in FIG. 6J but not the first position element (for example, switches from the first position element to the second position element if the accuracy exceeds the threshold of the new zoom level of the map).

[0199] In some embodiments, when the user zooms in and out, the threshold accuracy level that determines the display of the first element or the second element changes (e.g., increases or decreases). For example, when the map representation is zoomed in, the threshold increases, and thus the accuracy required for the display of the second element rather than the first element becomes higher. Similarly, when the map representation is zoomed out, the threshold decreases, and thus the accuracy required for the display of the second element rather than the first element becomes lower. In some embodiments, (optionally, as a result of the threshold increase associated with zooming in on the map) if the user zooms in (e.g., by an outward pinch gesture) and the accuracy remains below the threshold, the device maintains the display of the first position element and does not display the second position element.

[0200] (For example, when the accuracy of the determined position exceeds the threshold due to zooming out, by switching from the display of the first position element to the display of the second position element) the above-described method of updating the position indicator (e.g., when the user zooms out sufficiently, by automatically switching to the second position element, minimizing the amount of the map that is hidden when the area indicator is not required) provides the user with relevant position information quickly and efficiently when the user interacts with the map, thereby (e.g., without requiring the user to perform additional input to switch from one type of indicator to another type of indicator and without confusing the accuracy of the determined position) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0201] In some embodiments, while displaying the first location element, the electronic device receives, via one or more input devices, user input corresponding to a request to increase the zoom level of the map representation, such as that shown in FIG. 6E, to a first zoom level (e.g., user input to zoom in on the map representation to display a smaller geographic area while the first location element is being displayed). In some embodiments, the user input is an outward pinch gesture. In some embodiments, the user input is a selection of a zoom-in affordance. In some embodiments, the user input is an upward swipe gesture following a double tap.

[0202] In some embodiments, in response to receiving the user input, the electronic device increases the zoom level of the map representation to the first zoom level (e.g., increases the zoom level in response to the user input), and according to a determination that the accuracy of the device's determined position is less than an individual threshold level of the first zoom level, the electronic device updates the size of the display area of the first location element on the display generation component according to the accuracy of the device's determined position while maintaining the display of the first location element as shown in FIG. 6E (e.g., if the accuracy remains below the threshold after the zoom function (e.g., because the threshold has increased as a result of zooming in), (optionally, with the second location element remaining hidden) maintain the display of the first location element).

[0203] In some embodiments, because the zoom level and the individual threshold level are changed while the first location element is being displayed, the first location element changes size according to the change in the threshold level (e.g., grows proportionally as the map scale increases). In some embodiments, (optionally, as a result of a threshold decrease associated with zooming out of the map) if the user zooms out (e.g., by an inward pinch gesture or the like) and the accuracy exceeds the threshold, the device replaces the display of the first location element with a second location element.

[0204] (For example, when the map is zoomed in or out while the accuracy of the determined position remains below the threshold, the display of the first position indicator is maintained, but the size of the first position indicator is updated.) The above method of updating the position indicator (automatically enlarges and reduces the size of the first position indicator based on, for example, the scale of the map, and thus provides the user with consistent information about a certain area of the device), quickly and efficiently provides the user with information regarding the accuracy of the determined position. Thereby, the interaction between the user and the electronic device is simplified, the operability of the electronic device is enhanced, the interface between the user and the device is made more efficient, and further, while reducing errors during device use, the user can use the electronic device more quickly and efficiently, thereby reducing power consumption and improving the battery life of the electronic device.)

[0205] In some embodiments, while the second position element is being displayed, the electronic device receives user input corresponding to a request to increase the zoom level of the map representation to a first zoom level via one or more input devices, as shown in FIG. 6D (for example, while the second position element is being displayed, receives user input to zoom in the map representation to display a smaller geographic area). In some embodiments, the user input is an outward pinch gesture. In some embodiments, the user input is a selection of a zoom-in affordance. In some embodiments, the user input is an upward swipe gesture following a double tap.

[0206] In some embodiments, in response to receiving user input, the electronic device increases the zoom level of the map representation to a first zoom level (e.g., increases the zoom level according to the user input), and according to a determination that the accuracy of the determined position of the device is less than an individual threshold level at the first zoom level, the electronic device updates the position indicator to include a first position element but not a second position element as shown in FIG. 6D (e.g., switches from displaying the second position element to displaying the first position element if the accuracy is less than the threshold for the new zoom level of the map).

[0207] Accordingly, in some embodiments, a change in the zoom level of the map causes a change in an individual threshold level such that the accuracy of the determined position of the device changes from a state where it exceeds the individual threshold level to a state where it is less than the individual threshold level. In such embodiments, as a result, the position indicator switches from a state that includes a second position element (displayed when the accuracy exceeds the threshold) to a state that includes a first position element (displayed when the accuracy is less than the threshold). In some embodiments, if the user zooms out (e.g., by an inward pinch gesture, optionally as a result of a threshold decrease associated with zooming out of the map) and the accuracy remains above the threshold, the device maintains the display of the second position element and does not display the first position element.

[0208] (For example, when the accuracy of the determined position becomes less than a threshold value due to zooming out, by switching from the display of the second position element to the display of the first position element) The above method of updating the position indicator, (for example, when the user zooms in sufficiently, by automatically switching to the first position element, by providing the user with information about the area where the device is located only when the map is zoomed in by a specific amount) provides the user with position information quickly and efficiently when the user interacts with the map, thereby, (for example, without requiring the user to perform additional input to switch from one type of indicator to another type of indicator) simplifies the interaction between the user and the electronic device, enhances the operability of the electronic device, streamlines the interface between the user and the device, and thereby further reduces errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption and improving the battery life of the electronic device.

[0209] In some embodiments, while displaying the representation of the map at an individual zoom level and the first position element, the electronic device determines that the accuracy of the determined position of the electronic device has increased beyond an individual threshold level for the individual zoom level, as shown in FIG. 6B (for example, without changing the zoom level of the map, the accuracy of the determined position has increased beyond the threshold level). In some embodiments, the accuracy has increased as a result of the device locking onto more GPS satellites. In some embodiments, the accuracy has increased as a result of a process for improving the accuracy of the determined position, as described below with respect to method 900.

[0210] In some embodiments, in response to a determination that the accuracy of the determined position of the electronic device has increased beyond an individual threshold level for an individual zoom level, the electronic device updates the position indicator to include a second position element and not include a first position element, as shown in FIG. 6B (e.g., in response to the accuracy increasing beyond the threshold, replacing the display of the first position element with the display of the second position element). In some embodiments, when the second position element is displayed (e.g., the accuracy is beyond the threshold) and the accuracy decreases below the threshold, the display of the second position element is replaced with the display of the first position element. Thus, in some embodiments, the device updates the position indicator based on a change in the accuracy of the determined position without changing the zoom level.

[0211] (For example, by switching from the display of the first position element to the display of the second position element when the accuracy of the determined position has increased beyond the threshold level) The above method of updating the position indicator (e.g., by automatically switching to the second position element when the position accuracy has increased) provides the user with position information quickly and efficiently when the determined position of the device is updated, thereby (e.g., without requiring the user to perform additional input to update the position indicator based on the updated data) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during device use while allowing the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0212] In some embodiments, in accordance with a determination that the determined orientation of the electronic device is valid, the position indicator includes an orientation indicator such as the orientation indicator 604 in FIG. 6A and the orientation indicator 605 in FIG. 6B (e.g., when the device has orientation information, displaying the orientation of the device on the position indicator).

[0213] For example, if the device has a sensor for determining the orientation of a device such as a compass, an orientation indicator is displayed. In some embodiments, the orientation indicator points in the direction the device is facing. In some embodiments, the orientation indicator is disposed at a position corresponding to the direction the device is facing of the position indicator. For example, if the device is facing north, the orientation indicator is disposed on the north side of the position indicator. In some embodiments, the size and / or shape of the orientation indicator varies based on the accuracy of the determined orientation. For example, the higher the accuracy of the determined orientation, the narrower the orientation indicator (e.g., a narrower width, a narrower angle), and the lower the accuracy of the determined orientation, the wider the orientation indicator (e.g., a wider width, a wider angle).

[0214] (For example, when there is orientation information, by displaying the orientation on the position indicator) The above-described method of displaying the orientation indicator provides the orientation information to the user quickly and efficiently, thereby simplifying the interaction between the user and the electronic device (e.g., without requiring the user to perform additional input to enable the display of the orientation indicator), enhancing the operability of the electronic device, streamlining the user-device interface, and further reducing errors during device use, enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0215] In some embodiments, while displaying a position indicator that includes an orientation indicator, according to the determination that the position indicator includes a first position element and does not include a second position element, an orientation indicator such as orientation indicator 604 in FIG. 6A is displayed on the boundary of the first position element (e.g., if the position indicator includes the first position element, the orientation indicator is displayed along the boundary of the first position element).

[0216] In some embodiments, displaying an orientation indicator on a first position element includes displaying an element (optionally mimicking a highlighting or halo effect) along the outer periphery of the first position element (e.g., the boundary of the first position element). In some embodiments, the shape of the orientation indicator conforms to the shape of the circumference of the first position element. In some embodiments, the angular size of the orientation indicator is based on the accuracy of the determined orientation. In some embodiments, the absolute width of the orientation indicator is based on the size (e.g., radius) of the first position indicator. For example, the angle of the orientation indicator is based on the accuracy of the determined orientation, and if the accuracy of the determined orientation remains constant, in response to a change in the size of the first position element (e.g., in response to a zoom-in or zoom-out input), the width of the orientation indicator increases or decreases while maintaining a constant angle so as to remain displayed on the boundary of the first position element.

[0217] In some embodiments, during the display of a position indicator that includes an orientation indicator, in accordance with the determination that the position indicator includes a second position element and does not include the first position element, an orientation indicator such as orientation indicator 605 in FIG. 6B is displayed on the boundary of the second position element (e.g., if the position indicator includes the second position element, the orientation indicator is displayed on the second position element).

[0218] In some embodiments, displaying an orientation indicator on a second position element includes displaying an element that extends outward from the circumference of the second position element (e.g., extends outward from the boundary of the second position element). In some embodiments, while the orientation indicator is displayed on the second position element, the orientation indicator does not change size in response to a zoom-in or zoom-out input (optionally because the second position element does not change size in response to a zoom-in or zoom-out input). In some embodiments, the orientation indicator changes size in response to a zoom-in or zoom-out input.

[0219] (For example, by displaying the orientation indicator on the second position element when the second position element is displayed, and on the first position element when the first position element is displayed) The above-described method of displaying the orientation indicator provides the user with orientation information that is independent of positional accuracy quickly and efficiently, thereby simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, thereby reducing power consumption and improving the battery life of the electronic device.

[0220] In some embodiments, while the orientation indicator is displayed on the first position element, the orientation indicator is a first orientation indicator having a first shape as shown in FIG. 6A (for example, the orientation indicator has a first visual feature). In some embodiments, the orientation indicator on the first position element has the shape of a halo along the boundary of the first position element. In some embodiments, the height of the orientation indicator (the size of the orientation indicator in the dimension perpendicular to the center of the first position element) is smaller than the radius of the first position element.

[0221] In some embodiments, while the orientation indicator is displayed on the second position element, the orientation indicator is a second orientation indicator having a second shape different from the first shape as shown in FIG. 6B (for example, the orientation indicator has a second visual feature different from the first visual feature).

[0222] In some embodiments, the orientation indicator on the second position element has a conical shape extending outward from the second position element. In some embodiments, the height of the orientation indicator is greater than the radius of the second position element. In some embodiments, the shape of the first orientation indicator is different from the shape of the second orientation indicator at a given zoom level. In some embodiments, the size / display area of the first orientation indicator is different from the size / display area of the second orientation indicator at a given zoom level.

[0223] (For example, by displaying the orientation indicator as the first orientation indicator when it is on the second position element or as the second orientation indicator when it is on the first position element), the above-described method of displaying the orientation indicator provides the user with orientation information that is independent of position accuracy quickly and efficiently, thereby (for example, without requiring the user to perform additional input to switch from the first orientation indicator to the second orientation indicator when the position indicator switches from one type of position indicator to another type of position indicator) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0224] In some embodiments, while displaying a position indicator that includes an orientation indicator, the electronic device receives user input corresponding to a request to change the zoom level of a map representation, such as that of FIG. 6E, to a first zoom level via one or more input devices (e.g., while displaying a first location element, receives user input to zoom out or zoom in on the map representation). In some embodiments, the user input is an inward or outward pinch gesture. In some embodiments, the user input is a selection of a zoom out affordance or a zoom in affordance. In some embodiments, the user input is a downward or upward swipe gesture following a double tap.

[0225] In some embodiments, in response to receiving the user input, the electronic device changes the zoom level of the map representation, such as that of FIG. 6E, to the first zoom level (e.g., decreases or increases the zoom level according to the user input). In some embodiments, according to a determination that the position indicator includes a first location element and does not include a second location element (e.g., according to a determination that the orientation indicator is displayed over the first location element), the electronic device changes the size of the direction indicator based on the change in the zoom level of the map representation, such as that of FIG. 6E (e.g., when the first location element is displayed and the display does not switch to the second location element, the width of the direction indicator changes when the size of the first location element changes (optionally, as a result of a zoom in or zoom out input)).

[0226] In some embodiments, the angular size of the orientation indicator is based on the accuracy of the determined orientation and remains constant in response to a zoom-in input or a zoom-out input. For example, if the angular width of the orientation indicator is 30 degrees (e.g., the device is determined to be oriented in a particular orientation with an accuracy within 30 degrees), the angular width remains 30 degrees in response to a zoom input (assuming the accuracy does not change during that time). On the other hand, the absolute width of the orientation indicator is based on the size (e.g., radius) of the first position indicator. For example, the angle of the orientation indicator is based on the accuracy of the determined orientation, and if the accuracy of the determined orientation remains constant, in response to a change in the size of the first position element (e.g., in response to a zoom-in or zoom-out input), the width of the orientation indicator increases or decreases while maintaining a constant angle in order to remain displayed at the boundary of the first position element. For example, if the radius of the first position element increases by 25%, the circumference of the first position element increases by 30%, and thus the width of the orientation indicator increases by 25% (e.g., following the increase in the circumference).

[0227] In some embodiments, in accordance with a determination that the position indicator includes a second position element and does not include a first position element (e.g., in accordance with a determination that the orientation indicator is displayed on the second position element), the electronic device does not perform a change in the size of the orientation indicator based on a change in the zoom level of a map representation as shown in FIG. 6C (e.g., if the second position element is displayed and there is no switch to the display of the first position element, the width of the orientation indicator does not change in response to a zoom-in or zoom-out input). In some embodiments, since the size of the second position element does not change in response to a zoom-in or zoom-out input, the size of the orientation indicator also does not change.

[0228] (For example, when it is displayed on the first position element but not on the second position element, by changing the size of the orientation indicator) The above-described method of displaying the orientation indicator quickly and efficiently provides appropriate orientation information that does not depend on positional accuracy to the user, thereby simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, thereby reducing power consumption and improving the battery life of the electronic device.

[0229] In some embodiments, while displaying the first position indicator, the electronic device receives user input corresponding to a request to change the zoom level of the map representation, such as in FIG. 6E, to a first zoom level via one or more input devices (e.g., while displaying the first and second position elements, receives user input to zoom out or zoom in the map representation).

[0230] In some embodiments, the user input is an inward or outward pinch gesture. In some embodiments, the user input is a selection of a zoom out affordance or a zoom in affordance. In some embodiments, the user input is a downward or upward swipe gesture following a double tap.

[0231] In some embodiments, in response to receiving the user input, the electronic device changes the zoom level of the map representation to the first zoom level, such as in FIG. 6E (e.g., decreases or increases the zoom level according to the user input). In some embodiments, according to the determination that the position indicator includes the first position element and does not include the second position element, the electronic device changes the size of the first position element based on the change in the zoom level of the map representation, such as in FIG. 6E (e.g., when the first position element is displayed and does not switch to the display of the second position element, the radius of the first position element changes with the zoom in or zoom out of the map representation).

[0232] In some embodiments, the radius of the orientation indicator is based on the accuracy of the determined position and is kept constant in response to a zoom-in input or a zoom-out input. For example, if the accuracy of the determined position is such that the geographical radius of the determined position is 300 meters, the radius of the first position element has a size representing 300 meters (e.g., based on the scale of the map representation and / or the zoom level). Thus, upon zooming in or out, the radius of the first position element changes and always continues to enclose a geographical radius of 300 meters.

[0233] In some embodiments, in accordance with the determination that the position indicator includes the second position element and does not include the first position element, the electronic device does not perform a size change of the second position element based on a change in the zoom level of the map representation as shown in FIG. 6C (e.g., the second position element does not change size in response to a change in the zoom level). In some embodiments, since the first position element is not displayed when the second position element is displayed, when the second position element is displayed, the elements of the position indicator do not change size based on a change in the zoom level.

[0234] The above method of displaying the position indicator while zooming (e.g., by changing the size of the area indicator but not the size of the point indicator) provides the user with relevant position information quickly and efficiently when the user interacts with the map (e.g., by automatically changing the size of the area indicator to encompass a certain area but not changing the size of the point indicator), thereby simplifying the interaction between the user and the electronic device (e.g., without causing confusion in the accuracy of the determined position during zooming in and out), enhancing the operability of the electronic device, streamlining the user-device interface, and further reducing errors during device use, enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0235] In some embodiments, while displaying the orientation indicator, in accordance with the determination that the position indicator includes the first position element and does not include the second position element, the orientation indicator is the first portion of the first shape as shown in FIG. 6R (e.g., while the position indicator includes the first position element (e.g., the area indicator), and while the orientation indicator is displayed on the first position element, the orientation indicator includes an outer portion (e.g., the portion outside the position indicator) and an inner portion (e.g., the portion outside the position indicator)).

[0236] For example, the orientation indicator is optionally a conical element extending outwardly from the center of the position indicator (e.g., optionally beyond the boundary of the position indicator). In some embodiments, based on whether the position indicator includes a first position element or a second position element, one or more portions of the orientation indicator are not displayed or fade out. Thus, the orientation indicator can have different sizes and / or shapes based on whether the position indicator includes a first position element or a second position element. For example, while displaying a first position element (e.g., a region indicator), the outer portion of the orientation indicator (e.g., the portion outside the first position element) is displayed like a halo around a portion of the boundary of the first position element. In some embodiments, the depth of the outer portion of the orientation indicator (e.g., the size of the orientation indicator in the outer direction) is small (e.g., smaller than the radius of the first position element). In some embodiments, the inner portion of the orientation indicator (e.g., the portion inside the first position element) fades out (e.g., becomes more transparent) the closer it is to the center of the first position element. For example, at a specific position within the first position element (e.g., the one-third point, the one-half point, the two-thirds point), the inner portion of the orientation indicator is completely transparent such that it is no longer displayed. In some embodiments, the inner portion of the orientation indicator gradually thins inwardly (e.g., gradually becomes more transparent) from the boundary of the first position indicator to a specific position of the first position element.

[0237] In some embodiments, in accordance with the determination that the position indicator includes a second position element and does not include a first position element, the orientation indicator is a second portion of a first shape that is different from the first portion of the first shape as shown in FIG. 6O (e.g., when the position indicator includes a second position element and does not include a first position element and the orientation indicator is displayed on the second position element, the orientation indicator includes an outer portion and does not include an inner portion).

[0238] Accordingly, in some embodiments, the orientation indicator is displayed as a conical element that extends outwardly from the boundary of the second position element. In some embodiments, the shape of the orientation indicator is the same as the shape of the position indicator when the position indicator includes the first position element, but different portions are displayed (e.g., as compared to when the orientation indicator is displayed on the first position element) and different portions are not displayed. For example, the outer portion of the orientation indicator extends outwardly from the boundary of the second position element in a similar manner as the inner portion of the orientation indicator extends outwardly from the center of the first position element. In some embodiments, the orientation indicator becomes less thin (e.g., more opaque) the closer it is to the boundary of the second position element. Thus, as described above, while the orientation indicator is displayed on the first position element, the portion of the orientation indicator that is closer to the center of the position indicator fades out (e.g., based on the entire radius of the first position element), and the portion of the orientation indicator that is farther from the center of the position indicator is displayed, but while the orientation indicator is displayed on the second position element, the portion of the orientation indicator that is closer to the center of the position indicator is displayed and the portion of the orientation indicator that is farther from the center of the position indicator is optionally not displayed (e.g., the total display “length” of the orientation indicator is predetermined and / or fixed and not based on the radius of the second position element). Thus, depending on whether the orientation indicator is displayed on the first position element or the second position element (and, optionally, the size of the first position element), various portions of the orientation indicator are displayed and other portions are not displayed (or, e.g., optionally fade out).

[0239] (For example, by displaying the orientation indicator together with the first part when it is displayed on the first position element and together with the second part when it is displayed on the second position element) The above method of displaying the orientation indicator provides the user with orientation information that is independent of positional accuracy quickly and efficiently (for example, by automatically adjusting the visual characteristics of the orientation indicator so as to maintain the visibility of the orientation indicator when the position indicator changes), thereby (for example, without requiring the user to perform an additional input for switching from one display style of the orientation indicator to another display style of the orientation indicator every time the position indicator changes) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0240] In some embodiments, the electronic device displays, together with the position indicator, a representation of the user of the electronic device, such as the user icon 614 of FIG. 6P (for example, the user's icon, graphic, or other suitable representation on a map representation).

[0241] In some embodiments, the representation is displayed at or near the location indicator. In some embodiments, the user's representation is a circular element. In some embodiments, the representation includes an indication (e.g., an arrow, an element pointing with the location indicator) indicating that the representation is associated with the location indicator. In some embodiments, the user's representation is displayed in response to a user input selecting the location indicator. In some embodiments, in response to a user input selecting the location indicator, a user interface associated with the current location of the device is displayed simultaneously with the user's representation. In some embodiments, the user interface associated with the current location of the device provides information about the determined current location of the device, such as an address, longitude and latitude values, and / or a photograph of the location. In some embodiments, the user interface associated with the current location of the device includes one or more options associated with the current location of the device, such as an option to mark the location (e.g., save the location for future access), an option to share the location with another user or device, and / or an option to improve the location of the electronic device (as described below with respect to method 900). In some embodiments, the user's representation is displayed only if the location indicator meets one or more criteria. For example, if the location indicator includes a second location element and does not include a first location element, selection of the location indicator causes the display of the user's representation (and optionally, the user interface associated with the current location of the device). However, if the location indicator includes a first location element and does not include a second location element, the value of the size and / or transparency of the first location element optionally determines whether selection of the location indicator causes the display of the user's representation (and optionally, the user interface associated with the current location of the device).For example, if the size of the first position indicator exceeds a threshold size and / or (e.g., because the size exceeds the threshold size) the transparency of the first position indicator exceeds a threshold transparency level, selection of the first position indicator does not cause display of the user's representation (and optionally does not cause display of the user interface associated with the current position of the device). On the other hand, if the size of the first position indicator is less than the threshold size and / or the transparency of the first position indicator is less than the threshold transparency level, selection of the first position indicator (e.g., any part of the first position indicator, the center of the first position indicator, etc.) causes display of the user's representation (and optionally the user interface associated with the current position of the device).

[0242] In some embodiments, according to a determination that the accuracy of the determined position of the electronic device exceeds an individual threshold level for an individual zoom level (e.g., the position indicator includes a second position element but not a first position element), the user's representation of the electronic device is displayed with an individual user interface element that associates the user's representation of the electronic device with an individual position on the map representation, such as a triangular element on user icon 614 that points toward position indicator 602 in FIG. 6P (e.g., the user's representation includes an element that associates the user's representation with the position indicator).

[0243] For example, the user's representation includes a portion that extends outward from the representation and points toward the position indicator (e.g., points toward the second position element). In some embodiments, the user's representation is displayed near (e.g., above, below, to the left, or to the right of) the position indicator.

[0244] In some embodiments, according to a determination that the accuracy of the determined position of the electronic device is less than an individual threshold level for an individual zoom level (e.g., the position indicator includes a first position element but does not include a second position element), the representation of the user of the electronic device is displayed without an individual user interface element, such as user icon 614 that does not include the triangular element of FIG. 6R (e.g., the representation of the user does not include an element that extends outwardly pointing toward the position indicator).

[0245] In some embodiments, the user representation is displayed inside the first position element. For example, the user representation is displayed at the center of the first position element. In some embodiments, in response to the position indicator changing from a state including the first element to a state including the second element, the user representation transitions from a state not including an individual user interface element (e.g., pointing towards the position indicator) to a state including an individual user interface element (and optionally, from a state displayed inside the position indicator to a state displayed outside and / or visually separated from the position indicator). In some embodiments, in response to the position indicator changing from a state including the second element to a state including the first element, the user representation transitions from a state including an individual user interface element to a state not including an individual user interface element (and optionally, from a state displayed outside and / or visually separated from the position indicator to a state displayed inside the position indicator). As described above, the position indicator transitions from a state including the first position element to a state including the second position element (or vice versa) in response to the user zooming in or out on the map representation. In some embodiments, when a request to zoom in or out on the map representation is received and the user representation is displayed, the display of the user representation is maintained. In some embodiments, the display of the user representation is maintained even if the map representation is zoomed such that the first position indicator exceeds a threshold size (e.g., selection of the first position indicator does not cause the display of the user representation). Thus, when the user representation is displayed, zooming in or out maintains the display of the user representation even if selection of the position indicator at an individual zoom level does not otherwise cause the display of the user representation.

[0246] (For example, using a position indicator and an element that associates an expression with the position indicator based on whether the position indicator includes a first position element or a second position element) The above-described method of displaying a user's expression (for example, when the position indicator changes from a state including a first position element or a state including a second position element, by automatically transitioning to include an element that associates the user's expression with the position indicator) quickly and efficiently indicates that the indicator represents the user's current position, thereby simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption and improving the battery life of the electronic device.

[0247] It should be understood that the specific order described for the operations in FIG. 7 is merely exemplary and is not intended to indicate that the described order is the only order in which the operations can be performed. Those skilled in the art will recognize various ways to reorder the operations described herein. Also, note that the details of the other processes described herein with respect to other methods (e.g., method 900) described herein are also applicable in a manner similar to method 700 described above with respect to FIG. 7. For example, the operations of the electronic device for indicating the current position of the electronic device described above with reference to method 700 optionally have one or more of the characteristics for improving the accuracy of the determined position of the electronic device described herein with reference to other methods (e.g., method 900) described herein. For the sake of brevity, those details are not repeated here.

[0248] The operations in the above-described information processing method are optionally implemented by executing one or more functional modules in an information processing apparatus such as a general-purpose processor or an application-specific chip (e.g., described with respect to FIGS. 1A-1B, 3, 5A-5B). Further, the operations described above with reference to FIG. 7 are optionally executed by the components shown in FIGS. 1A-1B. For example, the display operation 702 is optionally implemented by the event sorter 170, the event recognition unit 180, and the event processing unit 190. The event monitor 171 in the event sorter 170 detects a contact on the touch sensing surface 604, and the event dispatcher module 174 sends the event information to the application 136-1. Each event recognition unit 180 of the application 136-1 compares the event information with its respective event definition 186 and determines whether the first contact at the first position on the touch sensing surface corresponds to a predetermined event or sub-event such as the selection of an object on the user interface. When a corresponding predefined event or sub-event is detected, the event recognition unit 180 activates the event processing unit 190 associated with the detection of that event or sub-event. The event processing unit 190 optionally utilizes or invokes the data update unit 176 or the object update unit 177 to update the internal state 192 of the application. In some embodiments, the event processing unit 190 accesses the corresponding GUI update unit 178 to update what is displayed by the application. Similarly, it will be apparent to those skilled in the art how other processes may be implemented based on the components shown in FIGS. 1A-1B. Improvement in the accuracy of the determined position of the device

[0249] Users interact with an electronic device in many different ways, including using the electronic device to display and discover geographical locations on a map. In some embodiments, the user can view the determined location of the electronic device on a map. The embodiments described below provide ways to improve the accuracy of the determined location of the electronic device, thereby enhancing the interaction between the user and the electronic device. By enhancing the two-way interaction with the device, the amount of time required for the user to perform an operation is reduced, thus reducing the power consumption of the device and increasing the battery life for battery-powered devices.

[0250] Figures 8A - 8S illustrate exemplary methods for improving the accuracy of the determined location of an electronic device, according to some embodiments of the present disclosure. The embodiments in these figures are used to illustrate the processes described below, including the process described with reference to Figure 9.

[0251] Figure 8A shows an electronic device 500 that displays a user interface 800 (e.g., via a display device, via a display generation component, etc.). In some embodiments, the user interface 800 is displayed via a display generation component. In some embodiments, the display generation component is a hardware component (e.g., including electrical components) that can receive display data and display the user interface. In some embodiments, examples of the display generation component include a touch screen display, a monitor, a television, a projector, an integrated, individual, or external display device, or any other suitable display device that communicates with device 500.

[0252] In some embodiments, the user interface 800 is a user interface of a map application (e.g., an application similar to the map application described above with respect to FIG. 6A, where a user can view geographical locations, search for locations, and / or request directions from one place to another). In some embodiments, the map application is an application installed on the device 500.

[0253] In some embodiments, the user interface 800 includes a map representation that provides directions to the determined current location of the electronic device. In FIG. 8A, the accuracy 806 of the determined location of the device exceeds the current zoom level threshold 808, and thus the user interface 800 includes a location indicator 802 (e.g., the dot indicator described above with respect to method 700). As shown in FIG. 8A, since the user interface 800 is displaying a dot indicator (e.g., location indicator 802), the device 500 does not display affordances for improving the location accuracy of the device, as will be described in more detail below. In some embodiments, although the user interface 800 is not displaying a region indicator (e.g., location indicator 810), the device 500 displays an affordance. For example, instead of displaying the location indicator 802, the device 500 displays an affordance (e.g., affordance 812 described below with respect to FIG. 8B, etc.) at a location where the location indicator 802 is otherwise displayed (e.g., the affordance is displayed as and / or at the location of the location indicator).

[0254] FIG. 8B shows an embodiment where the position accuracy 806 is less than the threshold level 808 of the current zoom level of the map. In some embodiments, since the position accuracy 806 is less than the threshold level 808 of the current zoom level of the map, the device 500 displays a position indicator 810 corresponding to the area indicator (e.g., similar to the position indicator 602 described above with respect to FIG. 6A). Thus, as shown in FIG. 8B, the device 500 cannot determine the exact (e.g., single) position of the device 500 and can only determine that the device is within a particular geographic area based on the current determination accuracy. The aspects of the position indicator 810 and the orientation indicator 804 are optionally as described above with reference to FIGS. 6A-6T and method 700.

[0255] In FIG. 8B, the affordance 812 is displayed within (e.g., at the center of) the position indicator 810. In some embodiments, the affordance 812 can be selected to initiate a process to improve the determined position of the device, as described in more detail below. As shown in FIG. 8B, the affordance 812 is an arrow or arrowhead icon. In some embodiments, the affordance 812 is oriented in the determined orientation of the device (e.g., northwest in the embodiment shown in FIG. 8B). In some embodiments, the affordance 812 is a fixed graphic and does not change its orientation dynamically.

[0256] In some embodiments, the process to improve the determined position of the device initiated in response to the selection of the affordance 812 is a different process than the process used to initially determine the position of the device that resulted in the accuracy 806. Thus, the process to improve the determined position of the device initiated in response to the selection of the affordance 812 can improve the accuracy of the determined position and further narrow the determined position more than currently displayed.

[0257] In some embodiments, as will be described in further detail below, the process of improving the determined position of the device includes analyzing one or more images captured by one or more cameras of the device 500, identifying one or more elements (e.g., objects, buildings, signs, companies, landmarks, features (known in the field of computer vision), and / or any other specific locations), and comparing the list of identified elements with the list of identified elements in one or more previously captured images (e.g., the list of identified elements in one or more previously captured images is pre-generated or analyzed (prior to the display of affordance 812), verified by a device other than the device 500, and transmitted to the device 500 as part of the process of improving the determined position of the device 500). In some embodiments, the process of improving the determined position of the device additionally or alternatively includes comparing one or more images captured by one or more cameras of the device 500 with one or more previously captured images and determining whether the captured images match the previously captured images. In some embodiments, the process of first determining the position with accuracy 806 does not include such a comparison of the image or elements within the image (rather, it includes, for example, GPS and / or cellular and / or Wi-Fi based location determination techniques).

[0258] In some embodiments, affordance 812 is displayed in FIG. 8B only when one or more criteria are met. In some embodiments, the one or more criteria include the requirement that the accuracy 806 is less than a threshold level 808 of the current zoom level (e.g., as shown in FIG. 8B). In some embodiments, the threshold level 808 is the threshold level (e.g., the threshold level 608 described in FIGS. 6A - 6N) for determining whether to display a point indicator or an area indicator, as described above with respect to method 700. For example, the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level is met when the area indicator is displayed (e.g., when the accuracy is less than the threshold), and not met when the point indicator is displayed (e.g., when the accuracy exceeds the threshold). In some embodiments, the threshold level 808 is a different threshold level from the threshold level for determining whether to display a point indicator or an area indicator. For example, the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level may be met even when the point indicator is displayed, and the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level may not be met even when the area indicator is displayed.

[0259] In some embodiments, the one or more criteria include geographical criteria that are met when the device is determined to be located at or within a particular predetermined geographical location. For example, the predetermined geographical location optionally includes locations where photographic information (e.g., a list of identified elements as described above) is available for each location. In some embodiments, a map application (or map server) can utilize the photographic information if it has access to one or more images or photos taken by the camera in the past. In some embodiments, the images taken in the past are captured by a third party and stored on a server (e.g., external to device 500). The previously taken images are taken from roads and sidewalks and include images of roads, signs, buildings, companies, stores, and other recognizable landmarks.

[0260] In some embodiments, one or more criteria include the requirement that the camera clarity exceeds a predetermined level. For example, if one or more images captured by one or more cameras of device 500 exceed a predetermined clarity level (e.g., the ability to capture sufficient detail or sufficient quality), the camera clarity requirement is met. In some embodiments, the camera clarity criterion includes a time requirement (e.g., that the current date and time is within a predetermined time window). For example, the predetermined time window includes daylight hours and does not include nighttime hours (e.g., from sunrise to sunset). In some embodiments, the predetermined time window begins 30 minutes before sunrise and ends 30 minutes after sunset. In some embodiments, other time windows are possible.

[0261] In some embodiments, the camera clarity criterion includes the requirement that the amount of ambient light exceeds a threshold level. In some embodiments, by requiring a threshold amount of ambient light, it is ensured that an image captured by one or more cameras of device 500 includes sufficient detail of the objects surrounding device 500. In some embodiments, the determination of the amount of ambient light can be made using an ambient light sensor and / or by analyzing an image captured by one or more cameras of device 500 to determine whether there is sufficient brightness, contrast, detail, and / or clarity.

[0262] In some embodiments, the camera clarity requirement includes the requirement that the current weather contributes to clear camera imaging. For example, if the current weather includes thick fog or heavy cloud cover, an image captured by one or more cameras of device 500 may not provide sufficient clarity, and thus the camera clarity requirement is not met. Conversely, if the current weather includes clear skies, the camera clarity requirement is optionally met.

[0263] In some embodiments, the camera clarity criterion includes any one of the time requirement, the ambient light requirement, and the weather requirement, or any combination thereof (e.g., the time requirement, two of the three requirements, or all three requirements).

[0264] In some embodiments, if all three of the above criteria (e.g., geographical requirements, camera clarity requirements, and accuracy requirements) are met, one or more criteria are met. In some embodiments, if any of the three above criteria are not met, one or more criteria are not met. In some embodiments, one or more criteria can include more requirements or fewer requirements than those described herein.

[0265] As shown in FIG. 8B, the requirement that the accuracy 806 is less than the threshold level 808 is met, the geographical criterion is met, and the time criterion (or, as detailed below, for example, the ambient light criterion or the camera clarity requirement) is met. Accordingly, in response to one or more criteria being met, the user interface 800 includes an affordance 812 at the center of the position indicator 810. The position of the affordance 812 shown in FIG. 8B is merely exemplary, and it is understood that the affordance 812 can be placed anywhere within the user interface 800 (e.g., an affordance that is displayed simultaneously with the position indicator).

[0266] FIG. 8C shows an embodiment in which the time criterion is met and the requirement that the accuracy 806 is less than the threshold level 808 is met, but the geographical criterion is not met (e.g., because the device 500 is determined to be in a location where it does not have access to photographic information for use in the process of improving the determined location of the device, such as a list of identified elements of an individual location and / or previously taken images). In some embodiments, because the geographical criterion is not met, the affordance 812 is not displayed in the user interface 800 even though the geographical criterion and the requirement that the accuracy 806 is less than the threshold level 808 are met.

[0267] Figure 8D shows an embodiment where the geographical criterion is met and the requirement that the accuracy 806 is less than the threshold level 808 is met, but the time criterion is not met (for example, because the current time in device 500 is after sunset or before sunrise). In some embodiments, since the time criterion is not met, the affordance 812 is not displayed on the user interface 800 even though the geographical criterion and the requirement that the accuracy 806 is less than the threshold level 808 are met. Figure 8D shows a state where the non - fulfillment of the time criterion causes the non - display of the affordance 812. However, in some embodiments, instead of the time criterion, a camera clarity criterion (optionally including the time criterion in some embodiments) can be used. For example, if the clarity criterion is not met while the requirement that the accuracy 806 is less than the threshold level 808 is met, the affordance 812 is not displayed (also, the affordance 812 is displayed when all of the camera clarity criterion, the geographical criterion, and the requirement that the accuracy 806 is less than the threshold level 808 are met). Thus, in the embodiments shown in Figures 8C and 8D, the user interface 800 includes a position indicator 810 that does not include the affordance 812.

[0268] In Figure 8E, while the position indicator 810 and the affordance 812 are being displayed (for example, as in Figure 8B, where one or more criteria are met), a user input 803 (for example, a tap input at the position of the affordance 812 on the touch screen 504) for selecting the affordance 812 is received. In some embodiments, in response to receiving the user input 803, the device 500 starts a process to improve the determined position of the device 500 as shown in Figure 8F.

[0269] In FIG. 8F, device 500 displays user interface 814. In some embodiments, user interface 814 is overlaid on a portion of user interface 800 (e.g., the lower portion of user interface 800). In some embodiments, user interface 800, which still includes position indicator 810 and orientation indicator 804, is updated during the process described below to improve the position accuracy of device 500. In some embodiments, user interface 814 includes instructions for guiding the user through a process of improving the position accuracy of the device's map application. In some embodiments, user interface 814 includes an end affordance 816 that can be selected to dismiss user interface 814 and cancel the process of improving the position accuracy of the device's map application. In some embodiments, user interface 814 includes text instruction 818 and graphic 820. In some embodiments, graphic 820 is a still image or animation representing the instructions described by text instruction 818. In FIG. 8F, text instruction 818 instructs the user to scan buildings around device 500 (e.g., on the other side of the road), and graphic 820 is an animation of a phone moving horizontally across a street scene. In some embodiments, graphic 820 includes a pre-drawn representation of buildings or houses (e.g., a street scene). In some embodiments, the displayed graphic, e.g., graphic 820, is not a representation of the actual environment captured by one or more cameras of device 500. For example, graphic 820 may not include a live camera view. Thus, during the process of performing the process of improving the determined position of the device, in some embodiments, device 500 does not display a representation or view of an image captured by one or more cameras of device 500.

[0270] As described above, the process of improving the determined position of the device includes taking one or more images with one or more cameras of the device 500, analyzing the one or more images to identify one or more elements (e.g., objects, buildings, billboards, companies, landmarks, and / or any other specific locations), and comparing the list of identified elements with the list of identified elements in one or more previously taken images. In some embodiments, the list of identified elements in one or more previously taken images is pre-generated (e.g., by a server external to the device 500). In some embodiments, the one or more previously taken images are analyzed by the device 500 (or optionally, a server external to the device 500) as part of the process of improving the determined position of the device. In some embodiments, if a threshold number of elements in the list of identified elements (e.g., such as a 30%, 50%, 75%, 90%, 95%, 99% match of an object, etc.) match the objects in the previously taken image, the device 500 can determine that the device 500 is currently at the geographical location associated with that previously taken image. Thus, in some embodiments, if the elements in the identified element list match a sufficient amount of objects in the list of identified elements in the previously taken image, the device 500 can determine that the device 500 is at or near the encoded position in each of the previously taken image(s). In some embodiments, the more elements that match the elements in the previously taken image, the more the device 500 can narrow down the position of the device 500. As will be described later, if the device 500 can determine the position of the device with a confidence level above a threshold (e.g., 80% certainty, 90% certainty, 95% certainty, 99% certainty, etc.) within an area below a threshold (e.g., less than 100 square feet, less than 2,500 square feet, less than 10,000 square feet, less than 50,000 square feet, etc.), the process of improving the determined position of the device ends and the device 500 updates a position indicator (e.g., its type, its position on a map, etc.) to reflect the newly determined position.

[0271] In some embodiments, during the process, device 500 continuously captures images using one or more cameras of device 500. In some embodiments, device 500 captures images at a predetermined period (e.g., every 0.5 seconds, every 1 second, every 3 seconds, every 5 seconds, etc.).

[0272] In some embodiments, the process additionally or alternatively includes capturing one or more images and comparing this image to one or more previously captured images of the area around device 500. In some embodiments, device 500 analyzes the image and compares this image to the previously captured images to determine whether the captured image matches all or part of the previously captured images. In some embodiments, this comparison is performed on device 500. In some embodiments, device 500 downloads one or more previously captured images when the user starts a process to improve the determined position of the device. In some embodiments, device 500 downloaded the previously captured images before the user started the process. In some embodiments, the comparison is performed on a server or device external to device 500, and device 500 optionally transmits one or more captured images to the server or external device.

[0273] In some embodiments, based on the result of the comparison, device 500 can determine the location of device 500. For example, if the captured image matches previously captured images taken at individual geographical locations in a threshold amount (e.g., 2 images, 3 images, 5 images, etc.), device 500 determines that currently device 500 is at that individual geographical location. In some embodiments, the previously captured images are encoded with GPS coordinates (or optionally other types of location information). Thus, if the image captured by the camera of device 500 matches a sufficient amount of previously captured images, device 500 can determine that device 500 is at or near the encoded location within the individual previously captured image. In some embodiments, when multiple images match multiple previously captured images, device 500 can narrow down the location of device 500. As described below, when device 500 can determine the location of the device within an area less than a threshold (e.g., less than 100 square feet, less than 2500 square feet, less than 10,000 square feet, less than 50,000 square feet, etc.) with a confidence level greater than or equal to a threshold (e.g., 80% certain, 90% certain, 95% certain, 99% certain, etc.), the process of improving the determined location of the device ends and device 500 updates a location indicator (e.g., its type, its location on a map, etc.) to reflect the newly determined location.

[0274] As described herein, the process of improving the determined location of the device includes any of the above-described photo comparison process, the above-described element comparison process, or a combination of these two processes. In some embodiments, (e.g., in addition to or instead of the above processes) other methods are possible for determining whether one or more captured images by one or more cameras of device 500 are in a correlation relationship with one or more previously captured images. Similarly, any of the above processes can be performed by device 500, or by a server external to device 500, or a combination thereof.

[0275] FIG. 8G shows an animated graphic 820 to illustrate the representation of a mobile device moving across a graphic. In some embodiments, the animation of the graphic 820 gives visual instructions to the user (e.g., in addition to the text description 818). Thus, in some embodiments, the user is instructed to move or rotate the device 500 so that one or more cameras of the device 500 can take multiple pictures of the environment around the device 500. In some embodiments, the graphic 820 animates the moving device regardless of whether the device 500 is actually moving or rotating.

[0276] FIG. 8H shows the device 500 held up so that one or more cameras of the device 500 (e.g., optionally a front-facing camera) face the environment 822 in the vicinity of the device 500 (e.g., on the other side of the road). In some embodiments, the environment 822 includes one or more buildings as shown in FIG. 8H. In FIG. 8H, the user interface 800 includes an orientation indicator 804 (e.g., similar to the orientation indicator 604 described above with respect to FIG. 6A) that indicates the orientation of the device 500. In FIG. 8H, the orientation indicator 804 follows the orientation of the device 500 as the user moves the device 500 to scan the building and / or the environment. Thus, in FIG. 8H, the orientation indicator 804 is facing northwest. As shown in FIG. 8H, an image of the environment 822 is not displayed on the user interface 800 or the user interface 814.

[0277] FIG. 8I shows device 500 rotated (e.g., moved or rotated to the right to image a lower building within environment 822) to continue imaging a building or other landmark within environment 822. In some embodiments, in response to a determination that device 500 has been rotated or in response to a determination that the orientation of device 500 has changed, orientation indicator 804 is updated to reflect the change in orientation as shown in FIG. 8I. For example, in FIG. 8I, orientation indicator 804 is updated to indicate that device 500 is oriented northeast. As shown in FIG. 8I, an image of environment 822 is not displayed on user interface 800 or user interface 814.

[0278] Figures 8J - 8N show user interface 814 that updates text description 818 and / or graphic 820 to issue additional instructions to the user (e.g., based on the determined orientation and / or movement of device 500 during a process to improve the position). In Figure 8J, device 500 is facing downwards. In some embodiments, device 500 determines that it is facing downwards (e.g., the direction of the y - axis or pitch - axis of the device is lower than a threshold amount such as 10 degrees, 30 degrees, 45 degrees, etc. from the horizontal), and with one or more of its cameras, it cannot adequately capture landmarks in environment 822. In some embodiments, device 500 includes one or more sensors such as a gyroscope or compass to determine that device 500 is facing downwards. In some embodiments, device 500 analyzes an image captured by one or more of its cameras and determines that device 500 is facing downwards. In some embodiments, in response to the determination that device 500 is facing downwards, text instruction 818 is updated to instruct the user to lift device 500 so that it faces a building in environment 822, as shown in Figure 8J. In some embodiments, graphic 820 is updated to show an animation where the device is lifted within graphic 820 so that it faces the streetscape (e.g., the device within graphic 820 is facing downwards and moving upwards to face the streetscape). As shown in Figure 8J, an image of environment 822 is not displayed on user interface 800 or user interface 814.

[0279] In FIG. 8K, the device 500 is facing upward, and it is determined that the device is facing upward (e.g., the direction of the y-axis or pitch axis of the device is higher than a threshold amount such as 10 degrees, 30 degrees, 45 degrees, etc. from the horizontal). In some embodiments, in response to the determination that the device is facing upward, the text instruction 818 is updated to instruct the user to lower the device 500 so as to face the building within the environment 822 as shown in FIG. 8K. In some embodiments, the graphic 820 is updated to show an animation in which the device is lowered towards the street scene within the graphic 820 (e.g., the device within the graphic 820 is facing upward and is moving downward to face the street scene). As shown in FIG. 8K, the image of the environment 822 is not displayed on the user interface 800 or the user interface 814.

[0280] In FIG. 8L, the device 500 determines that the rotation or movement of the device 500 is too fast to properly capture an image of the environment 822 (e.g., the captured image is blurred, or the gyroscope within the device 500 determines that the movement of the device 500 is too fast). In some embodiments, in response to the determination that the rotation or movement of the device 500 is too fast, the text description 818 is updated to instruct the user to move the device 500 more slowly as shown in FIG. 8L. In some embodiments, the graphic 820 is updated such that the animation of the device 500 moves slowly across the screen, e.g., the displayed street scene. As shown in FIG. 8L, the image of the environment 822 is not displayed on the user interface 800 or the user interface 814.

[0281] In FIG. 8M, the device 500 determines that the device 500 is changing its position (e.g., x, y position), and thus, the device 500 does not identify a single position. In some embodiments, the device 500 can determine which position the device 500 is changing based on one or more motion sensors (e.g., accelerometer, gyroscope, compass, etc.) within the device 500, a position sensor (e.g., GPS, cellular, Wi-Fi) within the device 500, and / or results that provide the result of the change in position. In some embodiments, in response to the determination that the device 500 is changing its position, the text description 818 is updated and the user is instructed to remain stationary while one or more captures are being made, as shown in FIG. 8M. In some embodiments, the graphic 820 is updated to animate the device 500 that remains in one position and rotates left or right.

[0282] In some embodiments, when the device 500 determines that the device 500 is not being held steady enough to clearly capture the environment 822 (e.g., based on one or more motion sensors), the text description 818 is updated and the user is instructed to remain stationary while one or more captures are being made, as shown in FIG. 8M. Thus, in some embodiments, in response to a determination that the device is changing its position or making erratic movements, etc., the text description 818 and / or the graphic 820 issue an instruction to the user to remain stationary while the capture is being made. As shown in FIG. 8M, an image of the environment 822 is not displayed on the user interface 800 or the user interface 814.

[0283] In FIG. 8N, it is determined that the device 500 has captured an environment 822 that is insufficient for the device 500 to determine its position. In some embodiments, in response to the determination that an insufficient environment 822 has been captured, the text description 818 is updated, and feedback is provided to the user to determine the position of the vice, for example, by instructing the user to scan different buildings within the environment 822. In some embodiments, the graphic 820 is updated in response to the new view of the camera. For example, since the camera can include more buildings in its field of view, the graphic 820 can include more buildings in the street scene (optionally reducing the size of the street scene) and show the device moving across the newly added buildings. In some embodiments, the graphic 820 displays a street scene that is animated to include more buildings, regardless of whether the number of buildings the camera is capturing is large or small, or whether it is capturing a new view. As shown in FIG. 8N, the image of the environment 822 is not displayed on the user interface 800 or the user interface 814.

[0284] In some embodiments, in response to the determination that an insufficient environment 822 has been captured, instead of displaying the text description 818 described in FIG. 8N, after the instructions illustrated in FIG. 8I are displayed to the user for a threshold time, an instruction to scan various buildings within the environment 822 (e.g., like in FIG. 8N) is displayed until (e.g., according to the above criteria) optionally another instruction is provided to the user. (For example, the instructions shown in FIG. 8I are displayed for 2 seconds, 3 seconds, 5 seconds, 8 seconds, 10 seconds, etc., and then, regardless of whether a sufficient environment 822 has been captured, the instructions are replaced with those shown in FIG. 8N).

[0285] Accordingly, as described above, the device 500 can update the text instruction 818 and / or the graphic 820 to provide updated instructions based on the adjustments necessary to successfully complete the process of improving the determined position of the device 500. It is understood that text instructions other than those described above are possible based on the status of the image capture and / or comparison process. It is also understood that some or all of the text instructions described above are optional and need not be presented to the user. For example, the text instruction "stop" need not be presented to the user, and even if the device 500 determines that the user is changing position, the device 500 can optionally successfully execute the process of improving the determined position of the device 500 (e.g., without asking the user to stop movement or change a scan action). In some embodiments, in response to the successful completion of the process of improving the determined position of the device 500, the user interface 814 is deactivated and the position indicator switches from the position indicator 810 (e.g., a region indicator) to the position indicator 804 (e.g., a point indicator). In some embodiments, in response to the successful completion of the process of improving the determined position of the device 500, the position indicator switches to a user interface element different from the position indicator 810 or the position indicator 804 corresponding to the improved device position (e.g., optionally indicating that the position of the device has been determined using the process described above). As shown in FIG. 8O, the location of the position indicator 804 (more precisely determined by the process described with reference to FIGS. 8E-8N, for example) may not be at the center of the location where the position indicator 810 was previously displayed (e.g., based on the position determined by the process described above). In FIG. 8O, as a result of the process described above, the accuracy 806 increases to a high level (optionally exceeding the threshold level 808). This is, for example, the reason why the device 500 optionally switches from the display of the position indicator 810 to the display of the position indicator 802 (as described with reference to method 700, for example).In some embodiments, if the accuracy 806 does not increase beyond the threshold level 808 (e.g., when the map is very large and zoomed in), the device 500 may optionally maintain the display of the position indicator 810 (e.g., optionally, in a smaller size to reflect the increase in accuracy).

[0286] It is understood that the above process for improving the determined position of the device can additionally or alternatively improve the determined orientation of the device. For example, the device 500 can determine the orientation of the device based on a comparison and accordingly calibrate one or more orientation sensors to improve the accuracy of the device's orientation (and, for example, optionally reduce the angle of the orientation indicator accordingly).

[0287] Figures 8P - 8S illustrate embodiments where the process for improving the determined position of the device 500 is initiated even when the requirement 806 that the accuracy 806 is less than the threshold level 808 of the current zoom level is not met. In Figure 8P, the accuracy 806 is less than the threshold level 808 of the current zoom level. In some embodiments, in response to the accuracy 806 being less than the threshold level 808 of the current zoom level, the user interface includes an indicator 810 (e.g., as in Figure 6E). Thus, the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level is met. In Figure 8P, the geographic and time-of-day criteria are also met. In some embodiments, since the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level is met, the geographic criteria are met, and the time is met, an affordance 812 is displayed as shown in Figure 8P.

[0288] In FIG. 8Q, with the accuracy 806 remaining constant, a user input 803 corresponding to an inward pinch gesture (e.g., a zoom-out request) is received. In some embodiments, in response to a request to zoom out the map, the threshold level 808 decreases below the accuracy 806 (e.g., as compared to FIG. 8P). In some embodiments, in response to the accuracy 806 exceeding the threshold level 808, the device 500 replaces the position indicator 810 with the position indicator 802. In some embodiments, rather than zooming out the map, the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level is no longer satisfied. In response to the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level no longer being satisfied, as shown in FIG. 8Q, the affordance 812 is removed from the display within the user interface 800.

[0289] In FIG. 8R, a user input 803 that selects the position indicator 802 (e.g., a tap at the position of the position indicator 802 on the touch screen 504) is received. In some embodiments, in response to the user input 803, the device 500 displays a user interface 824, as shown in FIG. 8S. In some embodiments, the user interface 824 is overlaid or superposed on the user interface 800. In some embodiments, the user interface 824 displays information regarding the current position of the device. In some embodiments, the user interface 824 includes an address corresponding to the current position of the device. In some embodiments, the user interface 824 includes affordances 826 for marking the current position of the device and an affordance 828 for sharing the current position of the device with another user or device. In some embodiments, the user interface 824 includes an image 832 corresponding to a previously taken image of the current position of the device from the ground level or road level. In some embodiments, the user interface 824 includes an affordance 830 that can be selected to initiate a process for improving the determined position of the device (e.g., via the user input 803). Thus, although the requirement that the accuracy 806 is less than the threshold level 808 of the current zoom level is not met, the user can initiate a process for improving the determined position of the device via the affordance 830 displayed on the user interface 824 (e.g., as described with reference to FIGS. 8F-8N).

[0290] In some embodiments, even if all criteria are not met, other ways are possible to initiate a process to improve the determined position of the device. In some embodiments, certain criteria need to be met so that a user can initiate a process to improve the determined position of the device (e.g., affordance 812, affordance 830, or any other). For example, if either a geographic criterion or a time criterion is not met, the process to improve the determined position of the device may not be available by any means (affordance 830 may not be displayed on user interface 824 optionally).

[0291] FIG. 9 is a flowchart showing a method 900 for improving the accuracy of the determined position of an electronic device, according to some embodiments of the present disclosure. Method 900 may be executed, optionally, in an electronic device such as device 100, device 300, device 500, and device 511 as described above with reference to FIGS. 1A - 1B, FIGS. 2 - 3, FIGS. 4A - 4B, and FIGS. 5A - 5B. Some operations of method 900 may be optionally combined and / or the order of some operations may be optionally changed.

[0292] As described below, method 900 provides a method for improving the accuracy of the determined position of an electronic device. This method reduces the user's cognitive burden when interacting with the user interface of the device of the present disclosure, thereby creating a more efficient human - machine interface. For battery - operated electronic devices, by improving the efficiency of the user's interaction with the user interface, power is conserved and the interval between battery charges is increased.

[0293] In some embodiments, an electronic device 500 that communicates with the display generation component displays (902) a map user interface, such as the user interface 800 of FIG. 8A, via a computer that communicates with one or more of the display generation components (e.g., a mobile device (e.g., a tablet, smartphone, media player, or wearable device), or a mouse (e.g., external), trackpad (optionally integrated or external), touchpad (optionally integrated or external), remote control device (e.g., external), another mobile device (e.g., separate from the electronic device), handheld device (e.g., external), and / or a controller (e.g., external)).

[0294] In some embodiments, the display generation component is an external display, such as a display integrated with the electronic device (optionally a touchscreen display), a monitor, a projector, a television, or a hardware component (optionally integrated or external) for projecting the user interface or making the user interface visible to one or more users.

[0295] In some embodiments, the map user interface includes a map representation (904) (e.g., a map of individual geographical locations as described above with respect to method 700) and a position indicator (906) that indicates the determined position of the electronic device on the map representation, such as the position indicator 802 of FIG. 8A (e.g., the map representation includes an indicator that indicates the position of the electronic device).

[0296] In some embodiments, the map displays the user's geographical location. In some embodiments, the map representation is interactive for the user to view various geographical locations. In some embodiments, the map representation is interactive for the user to change the zoom level. In some embodiments, the map representation displays various levels of detail based on the zoom level. For example, at a first zoom level, the map representation includes representations of roads and highways, and at a second zoom level closer than the first zoom level, the map representation includes representations of buildings, companies, and / or landmarks.

[0297] In some embodiments, the indicator is displayed only when location determination is enabled (e.g., when GPS tracking is enabled). In some embodiments, the indicator indicates the estimated location of the electronic device based on the accuracy or reliability of the location of the electronic device. In some embodiments, the electronic device includes a GPS component capable of determining the location of the electronic device. In some embodiments, the device can determine the location of the electronic device at a specific accuracy level based on the number of satellites that the GPS component can lock onto (e.g., more satellites result in higher accuracy and fewer satellites result in lower accuracy). In some embodiments, the electronic device communicates with a cellular provider and uses data from the cellular provider (e.g., based on the cell tower(s) with which the electronic device is communicating) to determine the location of the electronic device. In some embodiments, the electronic device can determine its location based on other mechanisms. In some embodiments, when the accuracy of the determined location is less than the threshold level of the current zoom level, the location indicator includes a region indicator, and when the accuracy exceeds the threshold level, the location indicator includes the point indicator described above with respect to method 700.

[0298] In some embodiments, while displaying the map user interface (908), in accordance with a determination that one or more criteria are met, the electronic device displays (910) selectable options that can be selected to initiate a process for improving the accuracy of the determined position of the electronic device, such as the affordance 812 of FIG. 8B (e.g., a button or icon on or within a position indicator that can be selected to initiate a process for improving accuracy).

[0299] In some embodiments, selectable options are displayed at the center of the position indicator. In some embodiments, the process for improving the determined position includes performing one or more visual captures using one or more visible light sensors (e.g., a camera) of areas and / or landmarks around the electronic device. In some embodiments, one or more criteria include the requirement that the determined position of the electronic device is a position where there is visual data for a landmark at that position (e.g., for use in comparison with one or more visual captures). In some embodiments, one or more criteria include the requirement that the accuracy of the determined position is less than a threshold (e.g., the device is unable to determine a sufficiently accurate position and / or, as described with reference to method 700, the map user interface includes a region indicator that indicates a general area where the device is potentially located). In some embodiments, one or more criteria include the requirement that the current date and time are within a time window. For example, the time requirement is met when the current time is after sunrise and before sunset. In some embodiments, the time requirement is met if the current time is one hour after sunrise and one hour before sunset (optionally, 30 minutes after sunrise, 30 minutes before sunset, two hours after sunrise, two hours before sunset, etc.). In some embodiments, one or more criteria include the requirement that the ambient light sensor of the device determines that there is sufficient light (e.g., in addition to meeting the time requirement, to facilitate accurate and detailed camera captures).

[0300] (For example, by displaying an option on a map user interface when one or more criteria are met) The above-described method of improving the accuracy of the determined position of a device provides the user with a quick and efficient way to improve the determined position of the device, thereby (for example, performing an additional input, guiding to another user interface to start a process of improving the position of the device, without asking the user to physically move to another position) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0301] In some embodiments, in accordance with a determination that one or more criteria are not met, the electronic device does not perform (for example, does not display a button or icon) the display of selectable options that can be selected to initiate a process of improving the accuracy of the determined position of the electronic device, such as those shown in FIGS. 8A and 8C - 8D.

[0302] In some embodiments, even without a button or icon, the device provides the user with a way to initiate the process of improvement. For example, if the map user interface is displaying a point indicator (for example, indicating that the device is at a particular location on the map), the user can select the point indicator or another selectable user interface element to cause the user interface to display information about the position of the device, including selectable options for initiating a process of improving the accuracy of the determined position of the device. In some embodiments, the user can select a selectable option to manually initiate the determination of the position of the device, thereby optionally causing the accuracy to fall below a threshold and the selectable options to be displayed (optionally, only if other requirements of one or more criteria are met).

[0303] The above-described method that does not provide an option to improve the accuracy of the determined position of the device causes the device to quickly and efficiently avoid starting the position improvement process when inappropriate, thereby simplifying the interaction between the user and the electronic device (e.g., by saving unnecessary inputs to the device, such as an input that attempts to start the position improvement process), enhancing the operability of the electronic device, streamlining the user-device interface, and further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, thereby reducing power consumption and improving the battery life of the electronic device.

[0304] In some embodiments, one or more criteria include one or more of the requirement that the electronic device be in one or more predetermined positions such as in FIG. 8C (e.g., the device is located at a geographical location where pre-taken images of buildings and landmarks exist), the requirement that the current time be within a predetermined time window such as in FIG. 8D (e.g., the current time is after sunrise and before sunset), or the requirement that the accuracy of the determined position of the electronic device be less than an individual threshold level of the current zoom level of the map representation such as in FIG. 8A (e.g., the accuracy of the determined position is less than the threshold of the current zoom level such that the position indicator includes an area indicator such as the first position element described above with respect to method 700).

[0305] In some embodiments, the pre-taken images are images of buildings, roads, objects, and / or landmarks from the perspective of a pedestrian or vehicle. In some embodiments, the pre-taken images are from the same set of pre-taken images that the user can browse and view. For example, if the determined position of the device is in a location where there are no pre-taken images (e.g., rural areas, forests, narrow alleys, etc.), the device may not be able to execute a process to improve the accuracy of the device, and thus the device position criteria are not met.

[0306] In some embodiments, if the current time is one hour after sunrise and one hour before sunset (optionally, 30 minutes after sunrise, 30 minutes before sunset, two hours after sunrise, two hours before sunset, etc.), the time requirement is met. In some embodiments, if the current time is not within a predetermined time window, the time requirement is not met. In some embodiments, the time requirement ensures that there is sufficient light for proper camera shooting. In some embodiments, in addition to, or instead of, the time requirement, other requirements are used to ensure that there is sufficient light for proper camera shooting (e.g., ambient light sensor), weather data, etc.

[0307] In some embodiments, if the accuracy exceeds a threshold, the position indicator includes a point locator such as the second position element described above with respect to method 700, and the accuracy requirement is not met.

[0308] The above-described method of providing an option to improve the accuracy of the determined position of a device (e.g., when position requirements, time requirements, and / or position accuracy requirements are met) provides the user with a method of quickly and efficiently improving the determined position of the device (e.g., only when the requirements are met such that the process can be accurately performed), thereby simplifying the interaction between the user and the electronic device (e.g., without separately asking the user whether the process can be performed at the current time and without providing the user with options when the process cannot be properly executed with sufficient accuracy), enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0309] In some embodiments, while the electronic device is displaying a map user interface when one or more criteria are not met and no selectable options such as those of FIG. 8A are being displayed (e.g., when no selectable options are being displayed as a result of the criteria not being met), the electronic device receives, via one or more input devices, a user input (e.g., a user input to zoom in on the map) corresponding to a request to increase the current zoom level of the map representation to a first zoom level. In some embodiments, the user input is an outward pinch gesture. In some embodiments, the user input is a selection of a zoom-in affordance. In some embodiments, the user input is an upward swipe gesture following a double tap.

[0310] In some embodiments, in response to receiving the user input, the electronic device increases the current zoom level of the map representation to the first zoom level (e.g., increases the zoom level in accordance with the user input). In some embodiments, in accordance with a determination that the accuracy of the device's determined position is less than an individual threshold level for the first zoom level, the electronic device displays selectable options (e.g., displays selectable options that can be chosen to improve the accuracy of the device's determined position) as shown in FIG. 8B.

[0311] In some embodiments, when the accuracy becomes less than the threshold due to zooming in, the position indicator includes a region indicator such as the first position element described above with respect to method 700. In some embodiments, when the accuracy remains above the individual threshold, the non-display of selectable options continues. Thus, in some embodiments, the selectable options are displayed only when the accuracy is less than the threshold for the current zoom level (e.g., only when the region indicator is being displayed).

[0312] (For example, in response to a user zooming out the map user interface such that the accuracy becomes less than a threshold value) the above-described method of providing an option to improve the accuracy of the determined position of the device, (for example, by displaying the option when the user zooms the map user interface and it becomes apparent that the determined position of the device is not a single position but within an area) provides the user with a quick and efficient way to improve the determined position of the device, whereby, (for example, if the increased position accuracy does not provide the user with more useful position information due to the current zoom level, by not providing the option) the interaction between the user and the electronic device is simplified, the operability of the electronic device is enhanced, the interface between the user and the device is made more efficient, and further thereby, while reducing errors during use of the device, the user can use the electronic device more quickly and efficiently, reducing power consumption and improving the battery life of the electronic device.

[0313] In some embodiments, while displaying the selectable options, the electronic device receives user input via one or more input devices to select a selectable option such as that shown in FIG. 8E. In some embodiments, in response to receiving the user input, the electronic device begins a process of improving the determined position of the device using one or more images captured by the electronic device (such as that shown in FIG. 8F) (for example, the process of improving the determined position of the device includes performing multiple camera shots of buildings, roads, objects, and landmarks around the electronic device and comparing the multiple camera shots to pre-captured images of buildings, roads, objects, and landmarks at the determined position of the device).

[0314] In some embodiments, the process of improving the determined position of an electronic device includes performing multiple camera captures of a specific location (e.g., a billboard, a road, a building, a store, etc.), identifying the specific location within the camera, and comparing the identified points of interest with the specific location present in the previously captured image. In some embodiments, the electronic device performs the comparison(s) (e.g., in response to detecting the selection of a selectable option and / or before detecting the selection of a selectable option and in response to one or more criteria being met, the previously captured image is downloaded from the server to the device). In some embodiments, the electronic device uploads the capture to a server (external to the electronic device), and the server performs the comparison(s). In some embodiments, based on whether a match is found during the comparison(s) (e.g., whether one or more objects in the vicinity of the electronic device match the objects in the previously captured image), the device can determine the current position of the electronic device. In some embodiments, the device can determine the position based on the objects in the vicinity of the device and the angles of capture of each object.

[0315] The above-described method of improving the accuracy of the determined position of a device (e.g., by comparing one or more camera captures with one or more previously captured images) provides the user with a quick and efficient way to improve the determined position of the device, thereby simplifying the interaction between the user and the electronic device (e.g., without requiring the user to manually compare the previously captured image with the device's environment), enhancing the operability of the electronic device, streamlining the user-device interface, and further reducing errors during device use, enabling the user to use the electronic device more quickly and efficiently, thereby reducing power consumption and improving the battery life of the electronic device.

[0316] In some embodiments, the process of improving the accuracy of the determined position of an electronic device includes displaying, via a display generation component, a user interface with instructions for performing a process of improving the positional accuracy of the determined position of the electronic device, the instructions including instructions for orienting the electronic device, such as the user interface 814 of FIG. 8F (e.g., while one or more captures are being performed, the device displays a user interface that provides instructions on how to perform the capture).

[0317] For example, the user interface includes instructions to point the device's camera at a nearby building, raise the camera, lower the camera, stay still during capture, continue capture, or capture more buildings, move the device more slowly during capture (e.g., any of these are displayed while the device is capturing surrounding images for comparison and are independently displayed in response to detecting that the movement / orientation of the device should be changed to appropriately complete the position improvement process via the device's orientation / movement sensors). In some embodiments, the user interface is a pop-up user interface displayed at a predetermined position (e.g., bottom, top, left, or right) within the display area. In some embodiments, the user interface is displayed overlaid on a map representation.

[0318] The above-described method of providing instructions regarding how to improve the accuracy of the determined position of the device (e.g., by displaying instructions regarding how to orient the device) provides the user with a quick and efficient way to instruct the user on how to perform an appropriate capture, thereby simplifying the interaction between the user and the electronic device (e.g., by providing user feedback regarding how to capture an image), enhancing the operability of the electronic device, streamlining the user-device interface, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power usage and improving the battery life of the electronic device.

[0319] In some embodiments, the process of improving the determined position of an electronic device does not include displaying, via a display generation component, a representation of one or more images captured by the electronic device, such as a user interface 814 that does not display a representation of the environment 822 of FIG. 8H (e.g., camera capture and comparison with previously captured images are performed without displaying the capture within the user interface). In some embodiments, the process of improving position accuracy is not associated with a navigation mode or route guidance from one location to another. Thus, in some embodiments, a user can initiate the process of improving position accuracy while browsing or otherwise interacting with a map user interface. In some embodiments, an option for improving the position accuracy of the device is provided to the user without the user first requesting route guidance or a navigation mode.

[0320] The above-described method of improving the accuracy of the determined position of a device (e.g., by performing camera capture without displaying a representation of the capture) provides the user with a quick and efficient way to improve the determined position of the device (e.g., without leaving a map user interface that may be distracting or visually obstructive), thereby simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user-device interface, and further enabling the user to use the electronic device more quickly and efficiently while reducing errors during device use, thereby reducing power consumption and improving the battery life of the electronic device.

[0321] In some embodiments, the process of improving the determined position of the electronic device includes detecting a change in the orientation of the electronic device for taking one or more images, such as those shown in FIGS. 8H - 8I (e.g., during the execution of the capture, the orientation of the device changes as a result of the user rotating the device or otherwise changing the orientation of the device to capture various angles and various objects in the vicinity of the device).

[0322] In some embodiments, the electronic device displays an orientation indicator of the electronic device on the representation of the map via a display generation component. While detecting a change in the orientation of the electronic device, the electronic device changes the orientation of the orientation indicator, such as orientation indicator 804 that changes orientation to the orientations shown in FIGS. 8H - 8I, based on the orientation of the electronic device (e.g., the position indicator on the map optionally includes an orientation indicator, as described above with respect to method 700, and the orientation indicator follows the orientation of the device when the device is rotated to capture various angles and objects).

[0323] The above method of updating the orientation indicator while improving the determined position of the device (e.g., by displaying an orientation indicator on a position indicator that rotates according to the rotation of the device) provides the user with quick and efficient visual feedback that the individual direction of capture is being properly performed, thereby simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the user - device interface, and further reducing errors during device use, enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0324] In some embodiments, while one or more criteria are not met, the position indicator includes a first position element and does not include a second position element, such as position indicator 810 of FIG. 8B (e.g., as described above with respect to method 700, the position indicator includes a region indicator and does not include a point indicator).

[0325] In some embodiments, after performing a process to improve the accuracy of the determined position of the electronic device, the electronic device updates a position indicator, such as position indicator 802 of FIG. 8O, to include a second position element and not include a first element (e.g., after performing a process to improve the accuracy of the determined position of the device, a point indicator, such as the second position indicator described above with respect to method 700, is displayed in the user interface when the accuracy of the determined position exceeds a threshold), where the first position element indicates a region on the representation of the map where the electronic device is determined to be located (e.g., the first position element, such as the first position indicator described above with respect to method 700, is a circular element with a radius indicating a region where the electronic device is determined to be inside), and the second position element indicates the position on the representation of the map where the electronic device is determined to be located (e.g., the second position element, such as the second position element described above with respect to method 700, indicates a single position on the map where the device is determined to be).

[0326] (For example, by displaying the position indicator as a dot indicator after the process of improving the accuracy of the determined position of the device has been executed normally) The above method of improving the accuracy of the determined position of the device provides the user with a quick and efficient way to improve the determined position of the device, thereby (for example, after executing the process of updating the position indicator based on the updated position data, without requiring the user to execute additional input) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption and improving the battery life of the electronic device.

[0327] In some embodiments, the selectable option is displayed while the one or more route guides for moving from a first position to a second position within a map user interface, such as that of FIG. 8B, are not being displayed via the display generation component (for example, the process is executed while the selectable option is displayed without requesting a route guide from one position to another and without initiating a navigation mode for guiding from the current position to the destination).

[0328] In some embodiments, the process is executed when the selectable option is displayed and the user interface is not displaying any route guides. In some embodiments, the selectable option is displayed while a route guide is being displayed or during a navigation mode (optionally, navigation is paused while the process of improving accuracy is being executed, and / or optionally, navigation is updated if the determined position of the device differs from the previously determined position of the device due to the process of improving accuracy).

[0329] (For example, without asking the user for a route guidance request or the start of navigation) The above-described method for improving the accuracy of the determined position of the device provides the user with a quick and efficient way to improve the determined position of the device, thereby (for example, as a process separate from the process of obtaining route guidance or performing navigation to a destination, without asking the user to execute an additional input to start a process of requesting route guidance to improve position accuracy) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and thereby further reducing errors during device use while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0330] In some embodiments, the map user interface is displayed when one or more criteria are not met and no selectable options are being displayed (for example, when the lack of selectable options is a result of the criteria not being met). In some embodiments, when this criteria is not met, the position indicator includes a point indicator such as the second position indicator described above with respect to method 700, and the electronic device receives a first user input (for example, a user input of tapping on the position indicator and / or the point indicator) to select the position indicator as shown in FIG. 8R via one or more input devices.

[0331] In some embodiments, in response to receiving user input, an electronic device, via a display generation component, displays a user interface that includes information regarding the current location of the electronic device, such as user interface 824 of FIG. 8S that displays (e.g., one or more selectable options associated with an address, an image, and / or the current location of the device), and a second selectable option, such as affordance 830 of FIG. 8S, that can be selected to initiate a process to improve the accuracy of the determined location of the electronic device (e.g., the user interface elements include selectable options that can be selected to execute a process to improve the determined location of the electronic device even if one or more of one or more criteria are not met).

[0332] In some embodiments, the information is displayed on user interface elements overlaid on a map user interface. In some embodiments, even if the map user interface does not include selectable options because the accuracy of the determined location exceeds a threshold for the current zoom level, the user can select a second selectable option to initiate a process to improve the accuracy of the determined location. In some embodiments, if location or time requirements are not met, the user interface elements do not include selectable options (optionally, the selectable options are disabled and / or grayed out). Thus, in some embodiments, the user can initiate a process to improve the determined location even if the accuracy requirements are not met, but cannot initiate the process if the location requirements or time requirements are not met. In some embodiments, the process initiated in response to selection of the second selectable option is the same as the process initiated in response to selection of the selectable options described above.

[0333] (For example, on a user interface displayed in response to a user input selecting a location indicator) the above-described method of providing an option for improving the accuracy of the determined location of a device provides a quick and efficient way for a user to improve the determined location of the device (even if, for example, the accuracy requirement is not met and no selectable option is displayed), thereby (without, for example, requiring the user to perform additional input for zooming in so that the accuracy requirement is met and selectable options are displayed at the location indicator) simplifying the interaction between the user and the electronic device, enhancing the operability of the electronic device, streamlining the interface between the user and the device, and thereby further reducing errors during use of the device while enabling the user to use the electronic device more quickly and efficiently, reducing power consumption, and improving the battery life of the electronic device.

[0334] It should be understood that the specific order described for the operations in FIG. 9 is merely exemplary and is not intended to indicate that the described order is the only order in which the operations can be performed. One of ordinary skill in the art will recognize various ways to reorder the operations described herein. Also, note that the details of other processes described herein with respect to other methods (e.g., method 700) described herein are also applicable in a manner similar to method 900 described above with respect to FIG. 9. For example, the operations of the electronic device for improving the accuracy of the determined location of the electronic device described above with reference to method 900 optionally have one or more of the characteristics indicating the current location of the electronic device described herein with reference to other methods (e.g., method 700) described herein. For brevity, those details are not repeated here.

[0335] The operations in the above information processing method are optionally implemented by executing one or more functional modules in an information processing device such as a general-purpose processor or an application-specific chip (for example, as described with respect to FIGS. 1A-1B, 3, 5A-5B). Further, the operations described above with reference to FIG. 9 are optionally implemented by the components shown in FIGS. 1A-1B. For example, display operations 902 and 910 are optionally implemented by event sorter 170, event recognizer 180, and event processor 190. Event monitor 171 in event sorter 170 detects a contact on touch sensing surface 604, and event dispatcher module 174 sends event information to application 136-1. Each event recognizer 180 in application 136-1 compares the event information with its respective event definition 186 to determine whether a first contact at a first position on the touch sensing surface corresponds to a predetermined event or sub-event such as selection of an object on the user interface. When a corresponding predefined event or sub-event is detected, event recognizer 180 activates event processor 190 associated with the detection of that event or sub-event. Event processor 190 optionally utilizes or invokes data updater 176 or object updater 177 to update application internal state 192. In some embodiments, event processor 190 accesses corresponding GUI updater 178 to update what is displayed by the application. Similarly, it will be apparent to those skilled in the art how other processes may be implemented based on the components shown in FIGS. 1A-1B.

[0336] As described above, one aspect of the present technology is to collect and use data available from specific legitimate sources to improve the display of device location information to users. The present disclosure contemplates that, in some cases, this collected data may include personal information data that can be used to uniquely identify or identify a specific person. Such personal information data can include demographic data, location-based data, online identifiers, phone numbers, email addresses, home addresses, data or records regarding a user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), date of birth, or any other personal information.

[0337] The present disclosure recognizes that the use of such personal information data in the present technology can be a use that benefits the user. For example, personal information data can be used to display the user's current location or the location of the user's electronic device. Thus, by using such personal information data, the user can have more information regarding the location of the user or the device. Additionally, other uses regarding personal information data that benefit the user are also contemplated by the present disclosure.

[0338] In the present disclosure, it is contemplated that entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data comply with well-established privacy policies and / or privacy practices. Specifically, such entities are expected to implement and consistently apply privacy practices that meet or exceed industry or government requirements for maintaining user privacy. Such information regarding the use of personal data should be prominent, readily accessible to users, and updated as the data collection and / or use changes. Personal information from users should be collected only for legitimate uses. Further, such collection / sharing should occur after receiving user consent or based on other legitimate grounds specified in applicable laws. Moreover, such entities should consider taking all necessary measures to protect and secure access to such personal information data and to ensure that others with access rights to the personal information data faithfully adhere to their privacy policies and procedures. Additionally, such entities may subject themselves to third-party evaluations to demonstrate their compliance with widely accepted privacy policies and practices. In addition, the policies and practices should be tailored to the specific types of personal information data collected and / or accessed and should comply with applicable laws and standards, including jurisdiction-specific conside...

Claims

1. A method, performed by an electronic device communicating with a display generation component, wherein a map user interface is displayed via the display generation component, the map user interface including a representation of a map at an individual zoom level, and a position indicator indicating a determined position of the electronic device on the representation of the map, wherein, in accordance with a determination that the accuracy of the determined position of the electronic device is less than an individual threshold level of the individual zoom level, the position indicator includes a first position element and does not include a second position element, wherein, in accordance with a determination that the accuracy of the determined position of the electronic device exceeds the individual threshold level of the individual zoom level, the position indicator includes the second position element and does not include the first position element, wherein, in accordance with a determination that the individual zoom level is a first zoom level, the individual threshold level is a first threshold level, and in accordance with a determination that the individual zoom level is a second zoom level that is zoomed in from the first zoom level, the individual threshold level is a second threshold level greater than the first threshold level, comprising the method.

2. Ceasing to display the first position element in accordance with a determination that the first position element occupies a display area larger than a predetermined size, further comprising the method according to claim 1.

3. Receiving, while the first position element is being displayed, a user input via one or more input devices corresponding to a request to decrease a zoom level of the representation of the map to the first zoom level; In response to receiving the user input, Decreasing the zoom level of the representation of the map to the first zoom level; and Updating the position indicator to include the second position element and not include the first position element in accordance with a determination that the accuracy of the determined position of the electronic device exceeds an individual threshold level of the first zoom level, further comprising the method according to claim 1.

4. Receiving, while the first position element is being displayed, a user input via one or more input devices corresponding to a request to increase the zoom level of the representation of the map to the second zoom level; In response to receiving the user input, Increasing the zoom level of the representation of the map to the second zoom level; According to the determination that the accuracy of the determined position of the electronic device is less than the individual threshold level of the second zoom level, while maintaining the display of the first position element, updating the size of the display area of the first position element on the display generation component according to the accuracy of the determined position of the electronic device; The method according to claim 1, further comprising.

5. While displaying the second position element, receiving a user input corresponding to a request to increase the zoom level of the representation of the map to the second zoom level via one or more input devices; In response to receiving the user input, increasing the zoom level of the representation of the map to the second zoom level; According to the determination that the accuracy of the determined position of the electronic device is less than the individual threshold level of the second zoom level, updating the position indicator so as to include the first position element and not include the second position element; The method according to claim 1, further comprising.

6. While displaying the representation of the map at the individual zoom level and the first position element, determining that the accuracy of the determined position of the electronic device has increased beyond the individual threshold level of the individual zoom level; In response to the determination that the accuracy of the determined position of the electronic device has increased beyond the individual threshold level of the individual zoom level, updating the position indicator so as to include the second position element and not include the first position element; The method according to claim 1, further comprising.

7. According to the determination that the determined orientation of the electronic device is valid, the position indicator includes an orientation indicator, The method according to claim 1.

8. While displaying the position indicator including the orientation indicator, receiving a user input corresponding to a request to change the zoom level of the representation of the map to the first zoom level via one or more input devices; In response to receiving the user input, Changing the zoom level of the representation of the map to the first zoom level; changing the size of the orientation indicator based on a change in the zoom level of the representation of the map according to a determination that the position indicator includes the first position element and does not include the second position element; not performing changing the size of the orientation indicator based on a change in the zoom level of the representation of the map according to a determination that the position indicator includes the second position element and does not include the first position element; The method according to claim 7, further comprising.

9. while displaying the orientation indicator, according to a determination that the position indicator includes the first position element and does not include the second position element, the orientation indicator is a first portion of a first shape; according to a determination that the position indicator includes the second position element and does not include the first position element, the orientation indicator is a second portion of the first shape, different from the first portion of the first shape; The method according to claim 7.

10. receiving, via one or more input devices, a user input corresponding to a request to change the zoom level of the representation of the map to the first zoom level while the position indicator is being displayed; in response to receiving the user input, changing the zoom level of the representation of the map to the first zoom level; changing the size of the first position element based on the changing zoom level of the representation of the map according to a determination that the position indicator includes the first position element and does not include the second position element; not performing changing the size of the second position element based on a change in the zoom level of the representation of the map according to a determination that the position indicator includes the second position element and does not include the first position element; The method according to claim 1, further comprising.

11. further comprising displaying, with the position indicator, a representation of a user of the electronic device In accordance with the determination that the accuracy of the determined position of the electronic device exceeds the individual threshold level of the individual zoom level, the representation of the user of the electronic device is displayed together with an individual user interface element that associates the representation of the user of the electronic device with the representation of the map. In accordance with the determination that the accuracy of the determined position of the electronic device is less than the individual threshold level of the individual zoom level, the representation of the user of the electronic device is displayed without the individual user interface element. The method according to claim 1.

12. While displaying the first position element, In accordance with the determination that the first position element occupies a first display area, the first position element has a first opacity value. In accordance with the determination that the first position element occupies a second display area having a size different from that of the first display area, the first position element has a second opacity value different from the first opacity value. The method according to claim 1.

13. An electronic device, One or more processors, A memory, One or more programs, and the one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions for executing any one of the methods according to any one of claims 1 to 12. An electronic device.

14. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs including instructions which, when executed by one or more processors of an electronic device, cause the electronic device to execute the method according to any one of claims 1 to 12. A non-transitory computer-readable storage medium.