User interface for tracking and searching items
By implementing a user interface for tracking and finding items on electronic devices, the problem of difficult to track items in the prior art is solved, interactive efficiency and privacy protection are improved, and device power consumption is reduced.
Patent Information
- Application Number
- CN202411900742.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-06-01
- Filing Date
- 2020-04-16
- Publication Date
- 2025-04-18
AI Technical Summary
The prior art is difficult to effectively track and find items on electronic devices, and there are risks of user privacy and data security.
By implementing a user interface on an electronic device for initializing a remote locator object and providing notifications when the object is separated from the user, and also providing notifications when an unknown object is tracking the user, the user can look up the object through a map or short-distance locator interface.
It improves the interaction efficiency between users and devices, reduces the cognitive burden of user input and the power consumption of devices, and ensures the protection of user privacy.
Smart Images

Figure CN119854730A_ABST
Abstract
Description
[0001] This application is a divisional application of the patent application with application number 202080044002.4, application date April 16, 2020, and invention name “User interface for tracking and finding items”. Technical Field
[0002] The present disclosure generally relates to user interfaces that enable users to track and find items on electronic devices. Background Art
[0003] In recent years, users' interactions with electronic devices have increased significantly. These devices can be devices such as televisions, multimedia devices, mobile devices, computers, tablets, etc.
[0004] In some cases, users may want to use such devices to track items. Enhancing user interaction with the device improves the user's experience with the device and reduces user interaction time, which is especially important when the input device is battery-powered.
[0005] It is understood that personally identifiable information (PII) should be managed and processed to minimize the risk of unintended or unauthorized access or use, and the nature of authorized use should be clearly stated to users. In particular, use of PII should be subject to privacy policies and practices recognized to meet or exceed industry or government requirements for maintaining user privacy. Summary of the Invention
[0006] Some embodiments described in this disclosure relate to one or more electronic devices that present a user interface for initializing a remote locator object. Some embodiments described in this disclosure relate to one or more electronic devices that present a notification when a remote locator object is separated from a user. Some embodiments described in this disclosure relate to one or more electronic devices that present a notification when an unknown remote locator object is tracking a user. Some embodiments described in this disclosure relate to a user interface for a short-range locator user interface for finding a remote locator object. Some embodiments described in this disclosure relate to one or more electronic devices that present a user interface for finding a remote locator object using a map user interface or using a short-range locator user interface. A comprehensive description of the embodiments is provided in the accompanying drawings and detailed description, and it should be understood that the invention summary provided above does not limit the scope of this disclosure in any way. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, in which like reference numerals designate corresponding parts throughout the several views.
[0008] Figure 1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display according to some embodiments.
[0009] Figure 1B is a block diagram illustrating example components for event processing according to some embodiments.
[0010] Figure 2 A portable multifunction device with a touch screen according to some embodiments is shown.
[0011] Figure 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments.
[0012] Figure 4A An exemplary user interface for an application menu on a portable multifunction device according to some embodiments is shown.
[0013] Figure 4B An exemplary user interface is shown for a multifunction device having a touch-sensitive surface separate from the display according to some embodiments.
[0014] Figure 5A A personal electronic device according to some embodiments is shown.
[0015] Figure 5B is a block diagram illustrating a personal electronic device according to some embodiments.
[0016] Figures 5C to 5D Example components of a personal electronic device with a touch-sensitive display and an intensity sensor are shown according to some embodiments.
[0017] Figures 5E to 5H Exemplary components and user interfaces of a personal electronic device according to some embodiments are shown.
[0018] Figures 5I to 5N A set of sample tactile output patterns are provided that can be used individually or in combination, as is or through one or more transformations (e.g., modulation, amplification, truncation, etc.) to form suitable tactile feedback in various scenarios and for various purposes (such as those described above and those described for the user interfaces and methods discussed herein).
[0019] 6A to 6T An exemplary manner in which an electronic device initializes a remote locator object according to some embodiments of the present disclosure is shown.
[0020] 7A to 7D is a flow chart illustrating a method of initializing a remote locator object according to some embodiments of the present disclosure.
[0021] Figures 8A to 8PAn exemplary manner in which an electronic device displays a notification separate from a remote locator object according to some embodiments of the present disclosure is shown.
[0022] Figures 9A to 9G is a flow chart illustrating a method of displaying a notification separate from a remote locator object according to some embodiments of the present disclosure.
[0023] Figures 10A to 10R An exemplary manner in which an electronic device displays a notification that it is being tracked by an unknown remote locator object according to some embodiments of the present disclosure is shown.
[0024] Figures 11A to 11E is a flow chart illustrating a method of displaying a notification that an object is being tracked by an unknown remote locator, according to some embodiments of the present disclosure.
[0025] Figures 12A to 12FF An exemplary manner in which an electronic device presents a user interface for tracking and finding a remote locator object according to some embodiments of the present disclosure is shown.
[0026] 13A to 13F is a flow chart illustrating a method of presenting a user interface for tracking and finding a remote locator object according to some embodiments of the present disclosure.
[0027] 14A to 14D is a flow chart illustrating a method of presenting a user interface for tracking and finding a remote locator object according to some embodiments of the present disclosure. DETAILED DESCRIPTION
[0028] The following description sets forth exemplary methods, parameters, etc. However, it should be recognized that such description is not intended to limit the scope of the present disclosure, but is provided as a description of exemplary embodiments.
[0029] There is a need for electronic devices to track the location of remote locator objects and generate notifications associated with the remote locator objects. Such techniques can reduce the cognitive burden on users who use such devices and / or wish to control their use of such devices. Furthermore, such techniques can reduce processor power and battery power that would otherwise be wasted on redundant user input.
[0030] Although the following description uses the terms "first," "second," and the like to describe various elements, these elements should not be limited by the terms. For example, a first touch may be named a second touch, and similarly, a second touch may be named a first touch without departing from the scope of the various embodiments described. Both the first touch and the second touch are touches, but they are not the same touch. These terms are only used to distinguish one element from another.
[0031] The terms used in the description of the various described embodiments herein are for the purpose of describing specific embodiments only and are not intended to be limiting. It will also be understood that the terms "and / or" as used herein refer to and encompass any and all possible combinations of one or more of the associated listed items. It will also be understood that the terms "includes," "including," "comprises," and / or "comprising" when used in this specification specify the presence of stated features, integers, steps, operations, elements, and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts, and / or groupings thereof. As used in the description of the various described embodiments and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
[0032] Depending on the context, the phrase “if it is determined that…” or “if [stated condition or event] is detected” is optionally interpreted to mean “upon determining…” or “in response to determining…” or “upon detecting [stated condition or event]” or “in response to detecting [stated condition or event]”. Depending on the context, the term “if” is optionally interpreted to mean “when…” or “upon…” or “in response to determining…” or “in response to detecting”.
[0033] Embodiments of electronic devices, user interfaces for such devices, and processes for using such devices are described herein. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as a PDA and / or music player functions. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer with a touch-sensitive surface (e.g., a touch screen display and / or a trackpad). Other portable electronic devices, such as laptops or tablet computers with touch-sensitive surfaces (e.g., a touch screen display and / or a trackpad) are optionally used.
[0034] It should be understood that the electronic device optionally includes one or more other physical user interface devices, such as a physical keyboard, mouse, and / or joystick.In the following discussion, an electronic device including a display and a touch-sensitive surface is described.
[0035] The device typically supports a variety of applications, such as one or more of the following applications: a web browsing application, a website creation application, a word processing application, a disk editing application, a spreadsheet application, a gaming application, a telephony application, a drawing application, a presentation application, a video conferencing application, a fitness support application, a digital camera application, a digital video camera application, a photo management application, an email application, an instant messaging application, a digital music player application, and / or a digital video player application.
[0036] One or more functions of the touch-sensitive surface and the corresponding information displayed on the device are optionally adjusted and / or varied for different applications and / or adjusted and / or varied within the corresponding application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications with a user interface that is intuitive and clear to the user. Various applications executed on the device optionally use at least one common physical user interface device, such as the touch-sensitive surface.
[0037] Attention is now turned to embodiments of portable devices having touch-sensitive displays. Figure 1A is a block diagram illustrating a portable multifunction device 100 with a touch-sensitive display system 112 according to some embodiments. Device 100 includes memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, audio circuitry 110, speakers 111, microphones 113, input / output (I / O) subsystems 106, peripheral device interfaces 118, RF circuitry 108, other input control devices 116, and external ports 124. Touch-sensitive display 112 is sometimes referred to as a "touch screen" for convenience and is sometimes referred to or referred to as a "touch-sensitive display system." Device 100 optionally includes one or more contact intensity sensors 165 for detecting intensity of contacts on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile output on device 100 (e.g., generating tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). Device 100 optionally includes one or more optical sensors 164. These components optionally communicate via one or more communication buses or signal lines 103.
[0038] Using the intensity of a contact as an attribute of user input allows the user to access additional device functionality that the user would not otherwise be able to access on a small form factor device with limited functionality for receiving user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons) and / or displaying indications (e.g., on a touch-sensitive display). As used in this specification and claims, the term "intensity" of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or to a surrogate (surrogate) for the force or pressure of a contact on the touch-sensitive surface. The intensity of the contact is optionally determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure the force at different points on the touch-sensitive surface. The intensity of the contact has a range of values that includes at least four different values and more typically includes hundreds of different values (e.g., at least 256). In some embodiments, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated contact force. Similarly, the pressure-sensitive tip of the stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and / or its change, the capacitance of the touch-sensitive surface near the contact and / or its change, and / or the resistance of the touch-sensitive surface near the contact and / or its change are optionally used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the substitute measurement of the contact force or pressure is converted into an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). In some implementations, the substitute measurement of the contact force or pressure is used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurement).
[0039] As used in this specification and claims, the term "tactile output" refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of a device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device that will be detected by a user using the user's sense of touch. In some cases, the user will feel a tactile sensation, such as a "press click" or "release click," even when a physical actuation button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movement does not move. For example, in the case where a device or a component of the device is in contact with a surface that is touch-sensitive to the user (e.g., a finger, palm, or other part of the user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation that corresponds to a perceived change in a physical characteristic of the device or component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a "press click" or "release click" of a physical actuation button. As another example, even when the smoothness of the touch-sensitive surface does not change, movement of the touch-sensitive surface may optionally be interpreted or sensed by the user as "roughness" of the touch-sensitive surface. While such a user's interpretation of touch will be limited by the user's individualized sensory perceptions, many sensory perceptions of touch are common to most users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "press click," "release click," "roughness"), unless otherwise stated, the generated tactile output corresponds to a physical displacement of the device or a component thereof that would generate that sensory perception for a typical (or average) user.
[0040] Figure 1A The various components shown in the figure are implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application specific integrated circuits. It should be understood that device 100 is only one example of a portable multifunction device, and device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of the components.
[0041] Memory controller 122 optionally controls access by other components of device 100 to memory 102. Memory 102 optionally includes high-speed random access memory and also optionally includes non-volatile memory, such as one or more flash memory devices, disk storage devices, or other non-volatile solid-state memory devices.
[0042] One or more processors 120 run or execute various software programs and / or instruction sets stored in memory 102 to perform various functions of device 100 and process data. Peripherals interface 118 can be used to couple the input peripherals and output peripherals of the device to CPU 120 and memory 102. In some embodiments, peripherals interface 118, memory controller 122, and CPU 120 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0043] RF (radio frequency) circuitry 108 receives and transmits RF signals, also known as electromagnetic signals. RF circuitry 108 converts electrical signals into / from electromagnetic signals and communicates with communication networks and other communication devices via the electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a codec chipset, a subscriber identity module (SIM) card, memory, and the like. RF circuitry 108 optionally includes well-known circuitry for detecting near-field communication (NFC) fields, such as via a short-range communication radio. RF circuitry 108 optionally communicates with networks and other devices via wireless communications, such as the Internet (also known as the World Wide Web (WWW)), an intranet, and / or a wireless network (such as a cellular telephone network, a wireless local area network (LAN), and / or a metropolitan area network (MAN)). The wireless communication optionally uses any of a variety of communication standards, protocols and technologies, including, but not limited to, High Speed Uplink Packet Access (HSUPA), Evolution, Data Only (EV-DO), HSPA, HSPA+, Dual Cell HSPA (DC-HSPDA), Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), High Speed Downlink Packet Access (HSDPA), Long Term Evolution (LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n and / or IEEE 802.11ac), Bluetooth, Bluetooth Low Energy (BTLE), Voice over Internet Protocol (VoIP), Wi-MAX, email protocols (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), Session Initiation Protocol with Extensions for Instant Messaging and Presence (SIMPLE), Instant Messaging and Presence Service (IMPS), Short Message Service (SMS), and / or Instant Messaging (e.g., Extensible Messaging and Presence Protocol (XMPP)), or any other suitable communication protocol, including those not yet developed as of the filing date of this document.
[0044] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between the user and the device 100. The speaker 111 converts electrical signals into sound waves audible to humans. The audio circuit 110 receives audio data from the peripheral device interface 118, converts the audio data into electrical signals, and transmits the electrical signals to the speaker 111. The audio circuit 110 also receives electrical signals converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signals into audio data and transmits the audio data to the peripheral device interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to the memory 102 and / or the RF circuit 108 by the peripheral device interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., Figure 2 The headset jack provides an interface between the audio circuit 110 and a removable audio input / output peripheral device, such as an output-only headset or a headset with both output (e.g., a single or dual-ear headset) and input (e.g., a microphone).
[0045] The I / O subsystem 106 couples input / output peripherals on the device 100, such as the touch screen 112 and other input control devices 116, to a peripherals interface 118. The I / O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, an intensity sensor controller 159, a tactile feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive / send electrical signals from / to the other input control devices 116. In some embodiments, the input controller 160 is optionally coupled to any (or none) of the following: a keyboard, an infrared port, a USB port, and a pointing device such as a mouse. One or more buttons (e.g., Figure 2 208) optionally includes an up / down button for volume control of the speaker 111 and / or microphone 113. The one or more buttons optionally include a push button (e.g., Figure 2 206 in). Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slide switches, joysticks, click wheels, etc.
[0046] A short press of the push button optionally unlocks the touch screen 112 or optionally begins the process of unlocking the device using a gesture on the touch screen. A long press of the push button (e.g., 206) optionally turns the device 100 on or off. The touch screen 112 is used to implement virtual or soft buttons and one or more soft keyboards. The function of one or more buttons is optionally user-customizable.
[0047] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. The touch screen 112 displays visual output to the user. In some embodiments, some or all of the visual output optionally corresponds to user interface objects. The visual output optionally includes graphics, text, icons, videos, and any combination thereof (collectively referred to as "graphics"). The display controller 156 receives electrical signals from the touch screen 112 and / or sends electrical signals to the touch screen 112.
[0048] The touch screen 112 and display controller 156 (together with any associated modules and / or instruction sets in memory 102) detect contact on the touch screen 112 (and any movement or interruption of the contact) and convert the detected contact into interaction with a user interface object (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch screen 112. The touch screen 112 has a touch-sensitive surface, sensor, or sensor group that accepts input from the user based on tactile and / or haptic contact. In an exemplary embodiment, the point of contact between the touch screen 112 and the user corresponds to the user's finger.
[0049] The touch screen 112 and display controller 156 optionally use any of a variety of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch screen 112 to detect contact and any movement or interruption thereof. In one exemplary embodiment, projected mutual capacitance sensing technology is used. The touch screen 112 optionally uses LED (light emitting diode) technology, LCD (liquid crystal display) technology, or LPD (light emitting polymer display) technology, although other display technologies are used in other embodiments.
[0050] The touch-sensitive display in some embodiments of touch screen 112 is optionally similar to a multi-touch-sensitive trackpad: however, touch screen 112 displays visual output from device 100, whereas a touch-sensitive trackpad does not provide visual output.
[0051] The user optionally uses any suitable object or appendage, such as a stylus, finger, or the like, to contact the touch screen 112. In some embodiments, the device converts rough finger-based input into precise pointer / cursor positions or commands for performing the user's desired action. In some embodiments, the user interface is designed to work primarily through finger-based contacts and gestures, which may not be as precise as stylus-based input due to the larger contact area of a finger on the touch screen. The touch screen 112 optionally has a video resolution exceeding 100 dpi. In some embodiments, the touch screen has a video resolution of approximately 160 dpi.
[0052] In some embodiments, in addition to the touch screen, device 100 optionally includes a touchpad (not shown) for activating or deactivating specific functions. The touchpad is optionally a touch-sensitive surface separate from touch screen 112, or an extension of the touch-sensitive surface formed by the touch screen. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output.
[0053] Device 100 also includes a power system 162 for powering the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)), a recharging system, power fault detection circuitry, and any other components associated with the generation, management, and distribution of power in a portable device.
[0054] Device 100 optionally also includes one or more optical sensors 164 . Figure 1A An optical sensor is shown coupled to the optical sensor controller 158 in the I / O subsystem 106. The optical sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. The optical sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) phototransistor. In conjunction with the imaging module 143 (also called a camera module), the optical sensor 164 optionally captures still images or video. In some embodiments, the optical sensor is located on the front of the device, allowing the user to optionally capture an image of the user for video conferencing while viewing other video conference participants on the touch screen display. In some embodiments, the optical sensor is located on the rear of the device 100, facing away from the touch screen display 112 on the front of the device, allowing the touch screen display to be used as a viewfinder for still and / or video image capture. In some embodiments, the position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and sensor in the device housing), allowing a single optical sensor 164 to be used with the touch screen display for both video conferencing and still and / or video image capture.
[0055] Figure 1AA contact force sensor is shown coupled to a force sensor controller 159 in the I / O subsystem 106. Device 100 optionally also includes one or more contact force sensors 165. Contact force sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other force sensors (e.g., sensors for measuring the force (or pressure) of a contact on a touch-sensitive surface). Contact force sensor 165 receives contact force information (e.g., pressure information or a surrogate for pressure information) from the environment. In some embodiments, at least one contact force sensor is located on the rear of device 100, opposite to touch screen display 112 located on the front of device 100. In some embodiments, at least one contact force sensor is juxtaposed with or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112).
[0056] Device 100 optionally also includes one or more proximity sensors 166 . Figure 1A A proximity sensor 166 is shown coupled to the peripherals interface 118. In some embodiments, when the multifunction device is placed near the user's ear (e.g., when the user is on a phone call), the proximity sensor turns off and disables the touch screen 112. Alternatively, the proximity sensor 166 is optionally coupled to the input controller 160 in the I / O subsystem 106.
[0057] Figure 1A A tactile output generator is shown coupled to a tactile feedback controller 161 in the I / O subsystem 106. The device 100 optionally also includes one or more tactile output generators 167. The tactile output generator 167 optionally includes one or more electroacoustic devices such as speakers or other audio components; and / or electromechanical devices for converting energy into linear motion such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components for converting electrical signals into tactile outputs on the device). The contact force sensor 165 receives tactile feedback generation instructions from the tactile feedback module 133 and generates tactile outputs on the device 100 that can be felt by the user of the device 100. In some embodiments, at least one tactile output generator sensor is located on the back of the device 100, opposite the touch screen display 112 located on the front of the device 100. In some embodiments, at least one tactile output generator is juxtaposed with or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112) and optionally generates tactile output by moving the touch-sensitive surface vertically (e.g., inward / outward toward the surface of device 100) or laterally (e.g., backward and forward in the same plane as the surface of device 100).
[0058] Device 100 optionally also includes one or more accelerometers 168 . Figure 1A An accelerometer 168 is shown coupled to the peripherals interface 118. Alternatively, the accelerometer 168 is optionally coupled to the input controller 160 in the I / O subsystem 106. In some embodiments, information is displayed on the touch screen display in a portrait view or a landscape view based on analysis of data received from one or more accelerometers. The device 100 optionally includes a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) in addition to the accelerometer 168 for obtaining information about the position and orientation (e.g., portrait or landscape) of the device 100.
[0059] In some embodiments, the software components stored in memory 102 include an operating system 126, application programs (or instruction sets) 136, a communication module (or instruction set) 128, a contact / motion module (or instruction set) 130, a text input module (or instruction set) 134, a graphics module (or instruction set) 132, and a global positioning system (GPS) module (or instruction set) 135. In addition, in some embodiments, memory 102 ( Figure 1A ) or 370( Figure 3 ) storage device / global internal state 157, such as Figure 1A and Figure 3 . The device / global internal state 157 includes one or more of the following: an active application state, which indicates which applications, if any, are currently active; a display state, which indicates what applications, views, or other information occupy various areas of the touch screen display 112; a sensor state, which includes information obtained from the device's various sensors and input control devices 116; and position information regarding the device's position and / or posture.
[0060] The operating system 126 (e.g., WINDOWS, Darwin, RTXC, LINUX, UNIX, OS X, iOS, or an embedded operating system such as VxWorks) includes various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitating communication between various hardware components and software components.
[0061] 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 circuitry 108 and / or the external ports 124. In some embodiments, the external ports are multi-pin (e.g., 30-pin) connectors. The external ports 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) are suitable for coupling directly to other devices or indirectly via a network (e.g., the Internet, wireless LAN, etc.).
[0062] The contact / motion module 130 optionally detects contact with the touch screen 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a trackpad or physical click wheel). The contact / motion module 130 receives contact data from the touch-sensitive surface. The contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact has occurred (e.g., detecting a finger down event), determining the strength of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there has been movement of the contact and tracking the movement on the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining whether the contact has ceased (e.g., detecting a finger lift event or contact break). Determining the movement of a contact point optionally includes determining the rate (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point, the movement of which is represented by a series of contact data. These operations are optionally applied to a single point of contact (e.g., a single-finger contact) or multiple points of contact simultaneously (e.g., "multi-touch" / multiple-finger contact). In some embodiments, the contact / motion module 130 and display controller 156 detect contact on the touchpad.
[0063] 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 a user (e.g., to determine whether a user has "clicked" an icon). For example, without changing the touchpad or touchscreen display hardware, the mouse "click" threshold of a touchpad or touchscreen can be set to any one of a large range of predefined thresholds. In some embodiments, at least a subset of the intensity thresholds are determined based on software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator and can be adjusted without changing the physical hardware of the device 100). In addition, in some specific implementations, a software setting is provided to the user of the device for adjusting one or more intensity thresholds in a set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by utilizing a system-level click on an "intensity" parameter to adjust multiple intensity thresholds at once).
[0064] The contact / motion module 130 optionally detects gesture input by the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and / or intensities of the detected contacts). For example, detecting a finger tap gesture includes detecting a finger press event and then detecting a finger lift (lift-off) event at the same location (or substantially the same location) as the finger press event (e.g., at the location of an icon). Thus, gestures are optionally detected by detecting a particular contact pattern. As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger press event, then detecting one or more finger drag events, and then detecting a finger lift (lift-off) event.
[0065] As used herein, the term "graphics" includes any object that can be displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc. The graphics 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 impact (e.g., brightness, transparency, saturation, contrast, or other visual attributes) of the displayed graphics.
[0066] In some embodiments, the graphics module 132 stores data representing graphics to be used. The graphics module 132 receives one or more codes for specifying the graphics to be displayed from an application or the like, along with coordinate data and other graphic attribute data if necessary, and then generates screen image data for output to the display controller 156. Each graphic is optionally assigned a corresponding code.
[0067] Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator 167 to produce tactile output at one or more locations on device 100 in response to user interaction with device 100 .
[0068] Text input module 134, which is optionally a component of graphics module 132, provides a soft keyboard for entering text in various applications (eg, contacts 137, browser 147, IM 141, email 140, and any other application requiring text input).
[0069] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., in the camera 143 as picture / video metadata; in the phone 138 for location-based dialing; and in applications that provide location-based services, such as the local yellow pages widget, the weather widget, and the map / navigation widget).
[0070] Application 136 optionally includes the following modules (or instruction sets), or a subset or superset thereof:
[0071] Video player module;
[0072] Music player module;
[0073] Contacts module 137 (sometimes called address book or contact list);
[0074] Telephone module 138;
[0075] Video conferencing module 139;
[0076] Email client module 140;
[0077] Instant messaging (IM) module 141;
[0078] Fitness support module 142;
[0079] A camera module 143 for still and / or video images;
[0080] Image management module 144;
[0081] Browser module 147;
[0082] Calendar module 148;
[0083] Widget module 149, which optionally includes one or more of the following: dictionary widget 149-5, weather widget 149-1, stock widget 149-2, alarm clock widget 149-4, calculator widget 149-3, and other widgets acquired by the user, and user-created widgets 149-6;
[0084] A widget creator module 150 for forming user-created widgets 149-6;
[0085] Search module 151;
[0086] Video and music player module 152, which merges the music player module and the video player module;
[0087] Notepad module 153;
[0088] Map module 154; and / or
[0089] Online video module 155.
[0090] Examples of other applications 136 optionally stored in memory 102 include JAVA-enabled applications, other word processing applications, drawing applications, rendering applications, other image editing applications, encryption, digital rights management, voice recognition, and voice replication.
[0091] In combination with the touch screen 112, the touch / motion module 130, the graphics module 132, the text input module 134 and the display controller 156, the contacts module 137 is optionally used to manage an address book or contact list (for example, stored in the application internal state 192 of the contacts module 137 in the memory 102 or the memory 370), including: adding a name (such as a name) to the address book; deleting a name from the address book; associating a phone number, physical address, email address or other information with a name; associating an image with a name; categorizing and classifying names; providing a phone number or email address to initiate and / or facilitate communications via telephone 138, video conferencing module 139, email 140 or IM 141; and so on.
[0092] As described above, wireless communication optionally uses any of a variety of communication standards, protocols, and technologies. In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, contact / motion module 130, graphics module 132, text input module 134, and display controller 156, phone module 138 is optionally used to enter a character sequence corresponding to a phone number, access one or more phone numbers in contacts module 137, modify an entered phone number, dial a corresponding phone number, conduct a conversation, and disconnect or hang up when the conversation is complete.
[0093] In combination with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the contact / motion module 130, the graphics module 132, the text input module 134, the contact module 137, the telephone module 138, the display controller 156, the optical sensor controller 158 and the optical sensor 164, the video conferencing module 139 includes executable instructions for initiating, conducting and terminating a video conference between a user and one or more other participants in accordance with user instructions.
[0094] In conjunction with RF circuitry 108, touch screen 112, contact / motion module 130, graphics module 132, text input module 134, and display controller 156, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 makes it very easy to create and send emails with still images or video images captured by camera module 143.
[0095] 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). In conjunction with RF circuitry 108, touch screen 112, contact / motion module 130, graphics module 132, text input module 134, and display controller 156, instant messaging module 141 includes executable instructions for: entering a character sequence corresponding to an instant message; modifying previously entered characters; transmitting the corresponding instant message (e.g., using the Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for phone-based instant messaging, or using SIMPLE, XMPP, or IMPS for internet-based instant messaging); receiving an instant message; and viewing a received instant message. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported in MMS and / or Enhanced Messaging Service (EMS).
[0096] In combination with the RF circuit 108, the touch screen 112, the contact / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154, the display controller 156, and the music player module, the fitness support module 142 includes executable instructions for creating a fitness (e.g., with time, distance, and / or calorie burn goals); selecting and playing music for a fitness session; communicating with fitness sensors (sports equipment); receiving fitness sensor data; calibrating sensors used to monitor fitness; and displaying, storing, and transmitting fitness data.
[0097] In combination with the touch screen 112, the contact / motion module 130, the graphics module 132, the image management module 144, the display controller 156, the optical sensor 164, and the optical sensor controller 158, the camera module 143 includes executable instructions for: capturing still images or videos (including video streams) and storing them in the memory 102; modifying the characteristics of the still images or videos; or deleting the still images or videos from the memory 102.
[0098] In conjunction with touch screen 112, contact / motion module 130, graphics module 132, text input module 134, display controller 156, and camera module 143, image management module 144 includes executable instructions for arranging, labeling, deleting, modifying (e.g., editing), or otherwise manipulating, presenting (e.g., in a digital slideshow or album), and storing still images and / or video images.
[0099] In combination with the RF circuit 108, the touch screen 112, the touch / motion module 130, the graphics module 132, the text input module 134 and the display controller 156, the browser module 147 includes executable instructions for the following operations: browsing the Internet in accordance with user instructions, including searching, linking to, receiving and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0100] In combination with the RF circuit 108, the touch screen 112, the touch / motion module 130, the graphics module 132, the text input module 134, the email client module 140, the display controller 156 and the browser module 147, the calendar module 148 includes executable instructions for creating, displaying, modifying and storing calendars and data associated with the calendar (e.g., calendar entries, to-do items, etc.) in accordance with user instructions.
[0101] In conjunction with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, the desktop widget module 149 is a mini-application that is optionally downloaded and used by the user (e.g., the weather desktop widget 149-1, the stock desktop widget 149-2, the calculator desktop widget 149-3, the alarm desktop widget 149-4, and the dictionary desktop widget 149-5) or a mini-application created by the user (e.g., the user-created desktop widget 149-6). In some embodiments, the desktop widget includes an XML (extensible markup language) file and a JavaScript file (e.g., the Yahoo! desktop widget). In some embodiments, the desktop widget includes an HTML (hypertext markup language) file, a CSS (cascading style sheets) file, and a JavaScript file.
[0102] In combination with the RF circuit 108, touch screen 112, touch / motion module 130, graphics module 132, text input module 134, display controller 156 and browser module 147, the desktop widget creator module 150 is optionally used by a user to create a desktop widget (e.g., converting a user-specified portion of a web page into a desktop widget).
[0103] In combination with the touch screen 112, the contact / motion module 130, the graphics module 132, the text input module 134 and the display controller 156, the search module 151 includes executable instructions for searching the memory 102 for text, sound, music, images, videos and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.
[0104] In some embodiments, device 100 optionally includes MP3 player functionality. In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions that allow a user to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing back video (e.g., on touch screen 112 or on an external display connected via external port 124).
[0105] In conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the notepad module 153 includes executable instructions for creating and managing to-do lists, notes, etc. according to user instructions.
[0106] In combination with the RF circuitry 108, touch screen 112, touch / motion module 130, graphics module 132, text input module 134, GPS module 135, browser module 147, and display controller 156, the map module 154 is optionally used to receive, display, modify, and store maps and data associated with the maps (e.g., driving directions, data relating to stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.
[0107] In conjunction with touch screen 112, contact / motion module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, browser module 147, and display controller 156, online video module 155 includes instructions for allowing a user to receive, access, browse (e.g., by streaming and / or downloading), play back (e.g., on the touch screen or on an external display connected via external port 124), send emails with links to specific online videos, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, instant messaging module 141 is used instead of email client module 140 to send links to specific online videos.
[0108] Each of the modules and applications described above corresponds to an executable instruction set for performing one or more of the functions described above and the methods described in this patent application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) do not have to be implemented as independent software programs, processes, or modules, so various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 optionally stores subsets of the modules and data structures described above. For example, a video player module is optionally combined with a music player module into a single module (e.g., Figure 1A ). In addition, memory 102 optionally stores additional modules and data structures not described above.
[0109] The number of physical input control devices (e.g., push buttons, dials, etc.) on device 100 is optionally reduced by using a touch screen and / or trackpad as the primary input control device for operating device 100. In some embodiments, device 100 is a device where operation of a predefined set of functions on the device is performed exclusively through the touch screen and / or trackpad.
[0110] A predefined set of functions that are exclusively performed through the touch screen and / or trackpad optionally includes navigation between user interfaces. In some embodiments, the trackpad, when touched by the user, navigates the device 100 from any user interface displayed on the device 100 to a main menu, home menu, or root menu. In some embodiments, the menu button is a physical push button or other physical input control device, rather than a trackpad. In such other embodiments, a trackpad is used to implement the "menu button."
[0111] Figure 1B is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 ( Figure 1A ) or memory 370( Figure 3 ) includes a corresponding application 136-1 (e.g., any one of the aforementioned applications 137 to 151, 155, 380 to 390) and an event classifier 170 (e.g., in the operating system 126).
[0112] The event classifier 170 includes an event monitor 171 and an event dispatcher module 174. The event classifier 170 receives event information and determines the application 136-1 and the application view 191 of the application 136-1 to which the event information is to be delivered. In some embodiments, the application 136-1 includes an application internal state 192 that indicates one or more current application views that are displayed on the touch-sensitive display 112 when the application is active or executing. In some embodiments, the device / global internal state 157 is used by the event classifier 170 to determine which application(s) are currently active, and the application internal state 192 is used by the event classifier 170 to determine the application view 191 to which the event information is to be delivered.
[0113] In some embodiments, the application internal state 192 includes additional information, such as one or more of the following: user interface state information indicating information being displayed or ready for display by the application 136-1, recovery information to be used when the application 136-1 resumes execution, a state queue for enabling the user to return to a previous state or view of the application 136-1, and a redo / undo queue of previous actions taken by the user.
[0114] Event monitor 171 receives event information from peripherals interface 118. Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, one or more accelerometers 168, and / or microphone 113 (via audio circuit 110). Event information includes information about sub-events (e.g., a user touch on touch-sensitive display 112 as part of a multi-touch gesture). The information received by peripherals interface 118 from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.
[0115] In some embodiments, peripheral device interface 118 transmits event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and / or receiving an input for more than a predetermined duration). In other embodiments, event monitor 171 sends a request to peripheral device interface 118 at predetermined intervals. In response, peripheral device interface 118 transmits event information.
[0116] In some embodiments, the event classifier 170 also includes an active event identifier determination module 173 and / or a hit view determination module 172.
[0117] A view consists of controls and other elements that a user can see on the display.When the touch-sensitive display 112 displays more than one view, the hit view determination module 172 provides software procedures for determining where within one or more views a sub-event has occurred.
[0118] Another aspect of the user interface associated with an application is a set of views, sometimes also referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. In some embodiments, the lowest-level view in which a touch is detected is optionally referred to as a hit view, and the set of events recognized as correct input is optionally determined based at least in part on the hit view of the initial touch that started the touch-based gesture. Thus, the application view (of the corresponding application) in which a touch is detected optionally corresponds to a programmatic level within the programmatic or view hierarchy of that application.
[0119] When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy for which sub-events should be processed. Hit view determination module 172 receives information related to sub-events of touch-based gestures. In most cases, the hit view is the lowest-level view in which the initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.
[0120] Active event recognizer determination module 173 determines which view or views within the view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that all views that include the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive the particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that only the hit view should receive the particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely confined to an area associated with one particular view, views higher in the hierarchy will still remain actively participating views.
[0121] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In some embodiments, event dispatcher module 174 stores the event information in an event queue, which is retrieved by corresponding event receiver 182. In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizer determined by active event recognizer determination module 173.
[0122] In some embodiments, operating system 126 includes event classifier 170. Alternatively, application 136-1 includes event classifier 170. In still other embodiments, event classifier 170 is part of another module stored in memory 102 (such as contact / motion module 130) or is a standalone module.
[0123] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events that occur within a corresponding view of the application's user interface. Typically, the corresponding application view 191 includes multiple event recognizers 180. Each application view 191 of application 136-1 includes one or more event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a separate module, such as a user interface toolkit (not shown) or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, the corresponding event handler 190 includes one or more of the following: a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from an event classifier 170. The event handler 190 optionally utilizes or calls the data updater 176, the object updater 177, or the GUI updater 178 to update the application internal state 192. Additionally, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in a corresponding application view 191. Alternatively, one or more of application views 191 include one or more corresponding event handlers 190.
[0124] A corresponding event identifier 180 receives event information (e.g., event data 179) from event classifier 170 and identifies an event based on the event information. In some embodiments, event identifier 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (which optionally include sub-event delivery instructions). Event identifier 180 includes an event receiver 182 and an event comparator 184.
[0125] The event receiver 182 receives event information from the event classifier 170. The event information includes information about sub-events such as touches or touch movements. When the sub-event involves the movement of a touch, the event information optionally also includes the rate and direction of the sub-event. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. In some embodiments, the event includes the device rotating from one orientation to another (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device posture).
[0126] In some embodiments, the event comparator 184 includes an event definition 186. The event comparator 184 compares the event information with a predefined event or sub-event definition and determines the event or sub-event based on the comparison, or determines or updates the state of the event or sub-event. The event definition 186 includes the definition of an event (e.g., a predefined sequence of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, the sub-events in event (187) include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition of event 2 (187-2) is a drag on a displayed object. For example, dragging includes a touch (or contact) of a predetermined duration on a displayed object, movement of the touch on the touch-sensitive display 112, and lifting of the touch (touch end). In another example, the definition of event 1 (187-1) is a double-click on a displayed object. For example, a double-click includes a first touch on the displayed object for a predetermined duration (touch start), a first lift-off for a predetermined duration (touch end), a second touch on the displayed object for a predetermined duration (touch start), and a second lift-off for a predetermined duration (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.
[0127] In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with a sub-event. For example, in an application view displaying three user interface objects on touch-sensitive display 112, when a touch is detected on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a corresponding event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler associated with the sub-event and the object that triggered the hit test. In some embodiments, event definition 187 includes a definition of an event for a corresponding user interface object.
[0128] In some embodiments, the definition of the corresponding event (187) also includes a delay action that delays the delivery of the event information until it has been determined that the sub-event sequence does or does not correspond to the event type of the event identifier.
[0129] When a corresponding event recognizer 180 determines that a sequence of sub-events does not match any event in event definitions 186, the corresponding event recognizer 180 enters the event failed, event impossible, or event ended state, after which subsequent sub-events of the touch-based gesture are ignored. In this case, other event recognizers (if any) that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
[0130] In some embodiments, the corresponding event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate how the event delivery system should perform sub-event delivery for actively participating event recognizers. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate whether sub-events are delivered to different levels in a view or programmatic hierarchy. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact or can interact with each other.
[0131] In some embodiments, when one or more specific sub-events of an event are identified, the corresponding event identifier 180 activates the event handler 190 associated with the event. Activating the event handler 190 is different from sending (and deferred sending) the sub-events to the corresponding hit view. In some embodiments, the corresponding event identifier 180 delivers event information associated with the event to the event handler 190. In some embodiments, the event identifier 180 throws a tag associated with the identified event, and the event handler 190 associated with the tag obtains the tag and performs a predefined process.
[0132] In some embodiments, event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with the sub-event sequence or to an actively participating view. The event handler associated with the actively participating view or the sub-event sequence receives the event information and performs a predetermined process.
[0133] In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates new user interface objects or updates the location of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display. In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates phone numbers used in contact module 137 or stores video files used in video player module.
[0134] In some embodiments, event handler 190 includes or has access to data updater 176, object updater 177, and GUI updater 178. In other embodiments, they are included in two or more software modules. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the corresponding application 136-1 or application view 191.
[0135] It should be understood that the above discussion of event handling for user touches on a touch-sensitive display also applies to other forms of user input utilizing input devices to operate the multifunction device 100, and not all user input is initiated on the touch screen. For example, spoken commands; moving a mouse and pressing a mouse button, optionally in conjunction with single or multiple key presses or holddowns; stylus input; contact movement on a touchpad, such as tapping, dragging, scrolling, etc.; movement of the device; detected eye movement; biometric input; and / or any combination thereof are optionally used as input corresponding to a sub-event defining an event to be recognized.
[0136] Figure 2A portable multifunction device 100 with a touch screen 112 is shown according to some embodiments. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment and other embodiments described below, a user can select one or more of the graphics by, for example, making gestures on the graphics using one or more fingers 202 (not drawn to scale in the figure) or one or more styluses 203 (not drawn to scale in the figure). In some embodiments, the gesture optionally includes one or more taps, one or more swipes (from left to right, from right to left, up and / or down), and / or rolling of a finger that has made contact with the device 100 (from right to left, from left to right, up and / or down). In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some implementations or in some cases, inadvertent contact with a graphic does not select the graphic. For example, a swipe gesture that sweeps over an application icon does not select the corresponding application when the gesture corresponding to selection is a tap.
[0137] The device 100 optionally also includes one or more physical buttons, such as a "home" or menu button 204. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen 112. As previously described, the menu button 204 is optionally used to navigate to any application 136 in a set of applications that are optionally executed on the device 100.
[0138] In some embodiments, the device 100 includes a touch screen 112, a menu button 204, a push button 206 for turning the device on / off and for locking the device, one or more volume adjustment buttons 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and a docking / charging external port 124. The device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of contact on the touch screen 112, and / or one or more tactile output generators 167 for generating tactile output for a user of the device 100. The push button 206 is optionally used to turn the device on / off by pressing the button and holding the button in the depressed state for a predefined time interval; to lock the device by pressing the button and releasing the button before the predefined time interval has elapsed; and / or to unlock the device or initiate an unlocking process. In an alternative embodiment, the device 100 also accepts voice input for activating or deactivating certain functions through the microphone 113.
[0139] Figure 33 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments. In some embodiments, the device 300 is a laptop, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a children's learning toy), a gaming system, or a control device (e.g., a home controller or an industrial controller). The device 300 does not have to be portable. The device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, a memory 370, and one or more communication buses 320 for interconnecting these components. The communication bus 320 optionally includes circuits (sometimes referred to as a chipset) that interconnect system components and control communications between system components. The device 300 includes an input / output (I / O) interface 330 having a display 340, which is typically a touch screen display. The I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 for generating tactile output on the device 300 (e.g., similar to the above referenced device). Figure 1A The tactile output generator 167 described above), sensor 359 (e.g., optical sensor, acceleration sensor, proximity sensor, touch sensor and / or contact intensity sensor (similar to the above reference Figure 1A The memory 370 optionally includes one or more storage devices located remotely from the CPU 310. The memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid-state memory devices; and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. In some embodiments, the memory 370 stores data related to the portable multifunction device 100 ( Figure 1A ) or a subset thereof. In addition, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores a drawing module 380, a presentation module 382, a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while portable multifunction device 100( Figure 1A )'s memory 102 optionally does not store these modules.
[0140] Figure 3Each element in the above-mentioned elements in is optionally stored in one or more memory devices of the memory device mentioned previously. Each module in the above-mentioned modules corresponds to the instruction set for performing the above-mentioned functions. In some embodiments, memory 370 optionally stores a subset of the above-mentioned modules and data structures. In addition, memory 370 optionally stores additional modules and data structures not described above. The above-mentioned modules or programs (e.g., instruction sets) do not have to be implemented as independent software programs, processes or modules, and therefore the various subsets of these modules are optionally combined or otherwise rearranged in various embodiments.
[0141] Attention is now turned to an embodiment of a user interface, optionally implemented on, for example, portable multifunction device 100 .
[0142] Figure 4A An exemplary user interface for an applications menu on portable multifunction device 100 is shown according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof:
[0143] Signal strength indicators 402 for wireless communications such as cellular and Wi-Fi signals;
[0144] Time 404;
[0145] Bluetooth indicator 405;
[0146] Battery status indicator 406;
[0147] A tray 408 with icons for commonly used applications, such as:
[0148] o An icon 416 for the phone module 138, which optionally includes an indicator 414 of the number of missed calls or voicemails;
[0149] o an icon 418 of the email client module 140 , which optionally includes an indicator 410 of the number of unread emails;
[0150] o Icon 422 for the video and music player module 152; and
[0151] o Icon 420 of the browser module 147; and
[0152] Icons for other apps, such as:
[0153] o Icon 424 of IM module 141;
[0154] o Icon 442 of the fitness support module 142;
[0155] o Icon 430 of camera module 143;
[0156] o Icon 428 of the image management module 144;
[0157] o Icon 426 of the calendar module 148;
[0158] o Icon 438 for the weather widget 149-1;
[0159] o Icon 434 of the stock market widget 149-2;
[0160] o Icon 440 of the alarm clock widget 149-4;
[0161] o Icon 444 of the notepad module 153;
[0162] o Icon 436 of the map module 154;
[0163] o Icon 432 of online video module 155; and
[0164] o An icon 446 for a settings application or module that provides access to settings for the device 100 and its various applications 136 .
[0165] In some embodiments, the label of the corresponding application icon includes the name of the application corresponding to the corresponding application icon. In some embodiments, the label of the specific application icon is different from the name of the application corresponding to the specific application icon.
[0166] Figure 4B A touch-sensitive surface 451 (eg, touch screen display 112) is shown having a touch-sensitive surface 451 (eg, touch screen display 112) that is separate from a display 450 (eg, touch screen display 112). Figure 3 tablet or trackpad 355) of the device (e.g., Figure 3 Device 300 also optionally includes one or more tactile output generators 357 for generating tactile output for a user of device 300 and / or one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting intensity of contacts on touch-sensitive surface 451.
[0167] Although some of the examples below will be given with reference to input on a touch screen display 112 (where the touch-sensitive surface and display are combined), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, such as Figure 4B According to these embodiments, the device detects a position corresponding to a corresponding position on the display (e.g., Figure 4B , 460 corresponds to 468 and 462 corresponds to 470 ) at contact with touch-sensitive surface 451 (e.g., Figure 4B 460 and 462 in ). In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a main axis (e.g., Figure 4B 453) corresponding to the main axis (for example, Figure 4B 452 in ). Thus, when the touch-sensitive surface (e.g., Figure 4B 451) and a display of a multi-function device (e.g., Figure 4B When the user interface 450 in FIG. 1 is separated, the user input detected by the device on the touch-sensitive surface (e.g., contacts 460 and 462 and their movement) is used by the device to manipulate the user interface on the display. It should be understood that similar methods are optionally used for other user interfaces described herein.
[0168] In addition, although the following examples are primarily given with reference to finger inputs (e.g., finger contacts, single-finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of these finger inputs are replaced by input from another input device (e.g., mouse-based input or stylus input). For example, a tap gesture is optionally replaced by a mouse click (e.g., instead of detection of contact, followed by cessation of detection of contact) when the cursor is over the location of the tap gesture. For another example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of contact), followed by movement of the cursor along the swipe path (e.g., instead of movement of contact). Similarly, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice are optionally used simultaneously, or mice and finger contacts are optionally used simultaneously.
[0169] Figure 5A An exemplary personal electronic device 500 is shown. In some embodiments, device 500 may include a device 500 that is compatible with devices 100 and 300 (e.g., Figures 1A to 4B ) some or all of the features described in the preceding claims. Device 500 includes a body 502. In some embodiments, device 500 has a touch-sensitive display screen 504, referred to hereinafter as a touch screen 504. As an alternative to or in addition to touch screen 504, device 500 has a display and a touch-sensitive surface. As with devices 100 and 300, in some embodiments, touch screen 504 (or touch-sensitive surface) optionally includes one or more intensity sensors for detecting the intensity of the contact (e.g., touch) applied. The one or more intensity sensors of touch screen 504 (or touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to the touch based on the intensity of the touch, which means that touches of different intensities can invoke different user interface operations on device 500.
[0170] In some embodiments, the device 500 has one or more input mechanisms 506 and 508. Examples of physical input mechanisms include push buttons and rotatable mechanisms. Input mechanisms 506 and 508 (if included) can be physical. In some embodiments, the device 500 has one or more attachment mechanisms. These attachment mechanisms allow a user to wear the device 500. Such attachment mechanisms (if included) can allow the device 500 to be attached to, for example, a hat, glasses, earrings, a necklace, a shirt, a jacket, a bracelet, a watchband, a bracelet, pants, a belt, shoes, a wallet, a backpack, etc.
[0171] Figure 5B An exemplary personal electronic device 500 is shown. In some embodiments, the device 500 may include a reference Figure 1A 、 Figure 1B and Figure 3 Some or all of the components described. Device 500 may include input mechanisms 506 and / or 508. For example, input mechanism 506 is optionally a rotatable input device or a depressible input device and a rotatable input device. In some examples, input mechanism 508 is optionally a button. Device 500 has a bus 512 that operatively couples an I / O portion 514 with one or more computer processors 516 and a memory 518. The I / O portion 514 may be connected to a display 504, which may have a touch-sensitive component 522 and optionally a strength sensor 524 (e.g., a contact strength sensor). In addition, the I / O portion 514 may be connected to a communication unit 530 for receiving application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular, and / or other wireless communication technologies.
[0172] Personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which are operably connected to I / O portion 514. In some examples, input mechanism 508 is optionally a microphone.
[0173] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, may, for example, cause the computer processor to perform the techniques described below, including processes 700, 900, 1100, 1300, and 1400 (Figures 7, 9, 11, 13, and 14). In some examples, the storage medium is a transient computer-readable storage medium. In some examples, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and persistent solid-state memory such as flash memory, solid-state drives, and the like. Computer-readable storage media may be any medium that can tangibly contain or store computer-executable instructions for use by or in conjunction with instruction execution systems, devices, and apparatuses. The personal electronic device 500 is not limited to Figure 5B components and configurations, but may include other components or additional components in a variety of configurations.
[0174] As used herein, the term "indicator" refers to an indication that is optionally provided on device 100, 300, and / or 500 ( Figure 1A 、 Figure 3 and Figures 5A to 5B ) is a user-interactive graphical user interface object displayed on a display screen of a computer. For example, a button, an image (e.g., an icon), and text (e.g., a hyperlink) optionally each constitute an affordance.
[0175] As used herein, the term "focus selector" refers to an input element used to indicate the current portion of a user interface with which a user is interacting. In some implementations that include a cursor or other position marker, the cursor acts as a "focus selector" such that when the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), a focus selector is displayed on a touch-sensitive surface (e.g., Figure 3 Touchpad 355 or Figure 4B In some implementations, focus moves from one area of the user interface to another area of the user interface without corresponding movement of a cursor or movement of contacts on the touch screen display (e.g., by using a tab key or arrow keys to move focus from one button to another); in these implementations, a focus selector moves based on the movement of focus between different areas of the user interface. In some implementations, a touch screen display (e.g., a touch screen display) that enables direct interaction with user interface elements on the touch screen display is used. Figure 1A touch-sensitive display system 112 or Figure 4A In some implementations of the touch screen 112 in the device, a contact detected on the touch screen acts as a "focus selector" such that when input (e.g., a press input by the contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touch screen display, the particular user interface element is adjusted according to the detected input. Regardless of the specific form the focus selector takes, the focus selector is generally a user interface element (or contact on the touch screen display) that is controlled by the user to deliver the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface with which the user desires to interact). For example, when a press input is detected on a touch-sensitive surface (e.g., a trackpad or touch screen), the position of a focus selector (e.g., a cursor, contact, or selection box) over a corresponding button will indicate that the user desires to activate the corresponding button (rather than other user interface elements shown on the device display).
[0176] As used in the specification and claims, the term "characteristic intensity" of a contact refers to a characteristic of the contact based on one or more intensities of the contact. The characteristic intensity is optionally based on a predefined number of intensity samples or a set of intensity samples collected during a predetermined time period (e.g., 0.05 seconds, 0.1 seconds, 0.2 seconds, 0.5 seconds, 1 second, 2 seconds, 5 seconds, 10 seconds) relative to a predefined event (e.g., after contact is detected, before contact is detected to be lifted off, before or after contact movement is detected, before contact ends, before or after contact intensity is detected to increase, and / or before or after contact intensity is detected to decrease). In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity of the contact is optionally based on one or more of the following: the maximum value of the contact intensity, the average value of the contact intensity, the mean value of the contact intensity, the value at the top 10% of the contact intensity, the half-maximum value of the contact intensity, the 90% maximum value of the contact intensity, etc. In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether the user has performed an action. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact whose characteristic strength does not exceed a first threshold causes a first operation, a contact whose characteristic strength exceeds a first strength threshold but does not exceed a second strength threshold causes a second operation, and a contact whose characteristic strength exceeds a second threshold causes a third operation. In some embodiments, the duration of the contact is used when determining the characteristic strength (e.g., when the characteristic strength is an average of the strength of the contact over time). In some embodiments, a comparison between the characteristic strength and one or more thresholds is used to determine whether to perform one or more operations (e.g., whether to perform the corresponding operation or to abandon the corresponding operation) rather than to determine whether to perform the first operation or the second operation.
[0177] Figure 5C Detecting multiple contacts 552A-552E on touch-sensitive display 504 using multiple intensity sensors 524A-524D is shown. Figure 5C Also included is an intensity graph that shows the current intensity measurements of intensity sensors 524A-524D relative to intensity units. In this example, the intensity measurements of intensity sensors 524A and 524D are both 9 intensity units, and the intensity measurements of intensity sensors 524B and 524C are both 7 intensity units. In some implementations, the cumulative intensity is the sum of the intensity measurements of multiple intensity sensors 524A-524D, which in this example is 32 intensity units. In some embodiments, each contact is assigned a corresponding intensity, which is a portion of the cumulative intensity. Figure 5D 554. Contacts 552A-552E are shown assigned cumulative intensities based on their distances from the center of force 554. More generally, in some implementations, each contact j is assigned a corresponding intensity Ij that is a portion of the cumulative intensity A according to a predefined mathematical function Ij=A·(Dj / ΣDi), where Dj is the distance of the corresponding contact j from the center of force, and ΣDi is the sum of the distances of all corresponding contacts (e.g., i=1 to the last) from the center of force. In this example, each of contacts 552A, 552B, and 552E is assigned an intensity of the contact of 8 intensity units of the cumulative intensity, and each of contacts 552C and 552D is assigned an intensity of the contact of 4 intensity units of the cumulative intensity. Reference may be performed using an electronic device similar to or identical to device 100, 300, or 500. Figures 5C to 5D In some embodiments, the intensity sensor is used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). In some embodiments, the characteristic intensity of a contact is based on one or more intensities of the contact. It should be noted that the intensity map is not part of the displayed user interface, but is included in the Figures 5C to 5D To assist readers.
[0178] In some embodiments, a smoothing algorithm is optionally applied to the intensity of the swipe contact before determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of the following: a triangular smoothing algorithm, an unweighted sliding average smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some cases, these smoothing algorithms eliminate narrow peaks or dips in the intensity of the swipe contact to achieve the purpose of determining the characteristic intensity. In some embodiments, a portion of a gesture is identified for determining the characteristic intensity. For example, the touch-sensitive surface optionally receives a continuous swipe contact that transitions from a starting position and reaches an end position where the contact intensity increases. In this example, the characteristic intensity of the contact at the end position is optionally based only on a portion of the continuous swipe contact, rather than the entire swipe contact (e.g., only the portion of the swipe contact at the end position).
[0179] The intensity of the contact on the touch-sensitive surface is optionally characterized relative to one or more intensity thresholds, such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device will perform an operation different from the operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device will perform an operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, when a contact is detected with a characteristic intensity below the light press intensity threshold (e.g., and above a nominal contact detection intensity threshold, contacts below the nominal contact detection intensity threshold are no longer detected), the device will move the focus selector in accordance with the movement of the contact on the touch-sensitive surface, without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally speaking, unless otherwise stated, these intensity thresholds are consistent between different groups of user interface illustrations.
[0180] An increase in contact feature intensity from an intensity below a deep press intensity threshold to an intensity above the deep press intensity threshold is sometimes referred to as a "deep press" input. An increase in contact feature intensity from an intensity below a light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold is sometimes referred to as a "light press" input. A decrease in contact feature intensity from an intensity above a contact detection intensity threshold to an intensity below the contact detection intensity threshold is sometimes referred to as detecting a contact lifted from the touch surface. An increase in contact feature intensity from an intensity below the contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light press intensity threshold is sometimes referred to as detecting a contact on the touch surface. In some embodiments, the contact detection intensity threshold is zero. In some embodiments, the contact detection intensity threshold is greater than zero.
[0181] In some embodiments described herein, one or more operations are performed in response to detecting a gesture that includes a corresponding press input or in response to detecting a corresponding press input performed using a corresponding contact (or multiple contacts), wherein the corresponding press input is detected at least in part based on detecting that the intensity of the contact (or multiple contacts) increases to above a press input intensity threshold. In some embodiments, the press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below the press input intensity threshold, and the corresponding operation is performed in response to detecting that the intensity of the corresponding contact subsequently decreases to below the press input threshold (e.g., an "up stroke" of the corresponding press input). In some embodiments, the corresponding operation is performed in response to detecting that the intensity of the corresponding contact increases to above the press input intensity threshold (e.g., a "down stroke" of the corresponding press input).
[0182] Figures 5E to 5H Detection of a gesture is shown, the gesture comprising contact 562 with an intensity from below Figure 5E Light press intensity threshold in L ”) increases to a value higher than Figure 5H The deep press intensity threshold in D ”). On the displayed user interface 570 including application icons 572A-572D displayed in the predefined area 574, when the cursor 576 is displayed above the application icon 572B corresponding to application 2, a gesture performed using contact 562 is detected on the touch-sensitive surface 560. In some embodiments, the gesture is detected on the touch-sensitive display 504. The intensity sensor detects the intensity of the contact on the touch-sensitive surface 560. The contact 562 is maintained on the touch-sensitive surface 560. The device determines that the intensity of the contact 562 is within the deep press intensity threshold (for example, “IT D In some embodiments, the intensity is a characteristic intensity of the contact compared to one or more intensity thresholds. In response to detecting a gesture, and based on the intensity rising to a deep press intensity threshold (e.g., "IT D ”) above contact 562, displays scaled representations 578A-578C (e.g., thumbnails) of documents recently opened for Application 2, as shown in FIG. Figure 5F-5H It should be noted that the intensity map for contact 562 is not part of the displayed user interface, but is included in the Figures 5E to 5H To assist readers.
[0183] In some embodiments, the display of representations 578A-578C includes animation. For example, representation 578A is initially displayed near application icon 572B, as shown in FIG. Figure 5FAs shown. Representations 578A-578C form an array above icon 572B. As the animation progresses, representation 578A moves upward and representation 578B is displayed near application icon 572B, as shown. Figure 5G Then, representation 578A moves upward, 578B moves upward toward representation 578A, and representation 578C is displayed near application icon 572B, as shown in FIG. Figure 5H In some embodiments, the animation progresses according to the intensity of contact 562, as shown in FIG. Figures 5F to 5G , where representations 578A-578C appear and decrease as the intensity of contact 562 moves toward a deep press intensity threshold (e.g., “IT D In some embodiments, the intensity according to which the animation progresses is a characteristic intensity of the contact. The reference may be performed using an electronic device similar to or identical to device 100, 300, or 500. Figures 5E to 5H The operation described.
[0184] In some embodiments, the device employs intensity hysteresis to avoid unexpected inputs sometimes referred to as "jitter," where the device defines or selects a hysteresis intensity threshold that has a predefined relationship to a press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable proportion of the press input intensity threshold). In some embodiments, a press input is detected only when the device detects that the contact intensity increases from an intensity equal to or lower than the hysteresis intensity threshold to an intensity equal to or higher than the press input intensity threshold and, optionally, the contact intensity subsequently decreases to an intensity equal to or lower than the hysteresis intensity, and a corresponding operation is performed in response to detecting the press input (e.g., an increase in contact intensity or a decrease in contact intensity, depending on the circumstances). In some embodiments, the press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below a hysteresis intensity threshold corresponding to the press input intensity threshold, and a corresponding operation is performed in response to detecting that the intensity of the corresponding contact subsequently decreases to below the hysteresis intensity threshold (e.g., an "up stroke" of the corresponding press input).
[0185] For ease of explanation, a description of an operation performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is optionally triggered in response to detecting any of the following: contact intensity increasing from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold, contact intensity increasing above the press input intensity threshold, contact intensity decreasing below a hysteresis intensity threshold corresponding to the press input intensity threshold, and / or contact intensity decreasing below the press input intensity threshold. Additionally, in examples where an operation is described as being performed in response to detecting that the intensity of the contact decreases below the press input intensity threshold, the operation is optionally performed in response to detecting that the intensity of the contact decreases below a hysteresis intensity threshold corresponding to and less than the press input intensity threshold.
[0186] In some embodiments, the electronic device 500 includes one or more tactile output generators, wherein the one or more tactile output generators generate different types of tactile output sequences, as described in Table 1 below. When a device (e.g., one or more tactile output generators that generate tactile outputs via moving a movable mass) generates tactile outputs with different tactile output patterns, the tactile outputs can produce different tactile sensations in a user holding or touching the device. Although the user's senses are based on the user's perception of the tactile output, most users will be able to recognize changes in the waveform, frequency, and amplitude of the tactile output generated by the device. In some embodiments, a particular type of tactile output sequence generated by the one or more tactile output generators of the above-mentioned devices corresponds to a particular tactile output pattern. For example, a tactile output pattern specifies characteristics of the tactile output, such as the amplitude of the tactile output, the shape of the motion waveform of the tactile output, the frequency of the tactile output, and / or the duration of the tactile output.
[0187] More specifically, Figures 5I to 5K A set of sample tactile output patterns are provided that can be used, individually or in combination, as is or through one or more transformations (e.g., modulation, amplification, truncation, etc.) to form suitable tactile feedback in various scenarios for various purposes (such as those described above and with respect to the user interfaces and methods discussed herein). In addition to the tactile output patterns shown in these figures, each of these tactile output patterns is optionally adjusted in amplitude by changing the gain value of the tactile output pattern, as shown, for example, for Figures 5L to 5N 80Hz, FullTap 200Hz, MiniTap 80Hz, MiniTap 200Hz, MicroTap 80Hz, and MicroTap 200Hz, each shown as a variant with gains of 1.0, 0.75, 0.5, and 0.25. This example of a control panel for tactile output shows how a set of three waveforms and eight frequencies can be used to generate an array of tactile output patterns. Figures 5L to 5N As shown, changing the gain of a tactile output pattern changes the amplitude of the pattern without changing the frequency of the pattern or the shape of the waveform. In some embodiments, changing the frequency of the tactile output pattern also results in a lower amplitude because some tactile output generators are limited by how much force can be applied to the movable mass, so the higher frequency movement of the mass is constrained to a lower amplitude to ensure that the acceleration required to form the waveform does not require forces outside the operating force range of the tactile output generator (e.g., the peak amplitudes of FullTap at 230 Hz, 270 Hz, and 300 Hz are lower than the amplitudes of FullTap at 80 Hz, 100 Hz, 125 Hz, and 200 Hz).
[0188] Figures 5I to 5N A tactile output pattern having a particular waveform is shown. The waveform of the tactile output pattern represents a pattern of physical displacement versus time relative to a neutral position (eg, Xzero) through which the movable mass passes to generate a tactile output having the tactile output pattern. Figures 5I to 5N The exemplary waveform shown includes Xmin and Xmax values representing the maximum and minimum extents of movement of the movable mass. For larger electronic devices with larger movable masses, the minimum and maximum extents of movement of the mass may be larger or smaller. Figures 5I to 5N The examples shown describe the movement of a mass in one dimension, but similar principles can also be applied to the movement of a movable mass in two or three dimensions. Figure 5I Each of the first set of tactile output patterns shown (e.g., the "FullTap" tactile output pattern) has a waveform that includes oscillations containing two complete cycles (e.g., oscillations that start and end at a neutral position and pass through the neutral position three times). Figure 5J Each of the second set of tactile output patterns shown (e.g., the "MiniTap" tactile output patterns) has a waveform that includes an oscillation comprising one complete cycle (e.g., an oscillation that begins and ends at a neutral position and passes through the neutral position once). Figure 5K Each of the illustrated third set of tactile output patterns (e.g., the "MicroTap" tactile output pattern) has a waveform that includes an oscillation that comprises half a complete cycle (e.g., an oscillation that begins and ends at a neutral position and does not pass through the neutral position). The waveform of the tactile output pattern also includes a start buffer and an end buffer that represent the gradual acceleration and deceleration of the movable mass at the beginning and end of the tactile output.
[0189] like Figures 5I to 5KAs shown, each tactile output pattern also has a corresponding characteristic frequency, which affects the "pitch" of the tactile sensation felt by the user from the tactile output having the characteristic frequency. For discrete tactile output, a discrete output signal is generated (e.g., having 0.5, 1, or 2 cycles), and the characteristic frequency value specifies how fast the movable mass needs to move to generate a tactile output having the characteristic frequency. For continuous tactile output, the characteristic frequency represents the number of cycles (e.g., cycles per second) that the movable mass of the tactile output generator completes in a given time period. Figures 5I to 5N As shown, for each type of tactile output (e.g., defined by a corresponding waveform, such as FullTap, MiniTap, or MicroTap), higher frequency values correspond to faster movement of the movable mass and, therefore, generally speaking, to a shorter tactile output completion time (e.g., including the time required to complete the number of cycles of the discrete tactile output plus the start and end buffer times). For example, a FullTap with a characteristic frequency of 80 Hz takes longer to complete (e.g., in seconds) than a FullTap with a characteristic frequency of 100 Hz. Figure 5I , 35.4ms vs. 28.3ms). In addition, for a given frequency, a tactile output with more cycles in its waveform at the corresponding frequency takes longer to complete than a tactile output with fewer cycles in its waveform at the same corresponding frequency. For example, a 150Hz FullTap takes longer to complete than a 150Hz MiniTap (e.g., 19.4ms vs. 12.8ms), and a 150Hz MiniTap takes longer to complete than a 150Hz MicroTap (e.g., 12.8ms vs. 9.4ms). However, for tactile output modes with different frequencies, this rule may not apply (e.g., a tactile output with more cycles but a higher frequency may take a shorter amount of time to complete than a tactile output with fewer cycles but a lower frequency, and vice versa). For example, at 300Hz, FullTap takes the same amount of time as MiniTap (e.g., 9.9ms).
[0190] like Figures 5I to 5KAs shown, the tactile output pattern also has a characteristic amplitude, which affects the amount of energy contained in the tactile signal, or the "intensity" of the tactile sensation that the user can feel through the tactile output having the characteristic amplitude. In some embodiments, the characteristic amplitude of the tactile output pattern can be adjusted according to various conditions (e.g., customized based on user interface context and behavior) and / or preconfigured metrics (e.g., input-based metrics, and / or user interface-based metrics), for example, by a fixed or dynamically determined gain factor (e.g., a value between 0 and 1). In some embodiments, the characteristic amplitude of the tactile output pattern refers to an absolute value or normalized value representing the maximum displacement of the movable mass relative to the neutral position when generating the tactile output. In some embodiments, a user interface-based metric (e.g., a cross-boundary velocity metric) measures a characteristic of a user interface element (e.g., the speed at which the element moves across a hidden or visible boundary in the user interface) during a user interface change that triggers the generation of the tactile output. In some embodiments, a metric based on the input (e.g., an intensity change metric or an input velocity metric) measures a characteristic of the input (e.g., the rate of change of the characteristic intensity of the contact in a press input or the rate of movement of the contact on the touch-sensitive surface) during the period that triggers the generation of the tactile output. In some embodiments, the characteristic amplitude of the tactile output pattern can be "envelope" modulated, and the peaks of adjacent cycles can have different amplitudes, where one of the waveforms shown above is further modified by multiplying by an envelope parameter that changes over time (e.g., from 0 to 1) to gradually adjust the amplitude of a portion of the tactile output over time as the tactile output is generated.
[0191] Although Figures 5I to 5K For illustrative purposes, specific amplitudes, frequencies, and waveforms are shown in the sample tactile output patterns, but tactile output patterns with other amplitudes, frequencies, and waveforms can also be used for similar purposes. Other frequencies in the range of 60Hz-400Hz can also be used. For example, a waveform with between 0.5 and 4 cycles can be used. Table 1 below provides representative examples of tactile output / tactile feedback behaviors and configurations, as well as examples of their use with respect to user interfaces for managing content-based tactile output shown and described herein.
[0192]
[0193] Table 1
[0194] In some embodiments, a downloaded application becomes an installed application using an installer program that extracts program portions from the downloaded software package and integrates the extracted portions with the computer system's operating system. As used herein, an "installed application" refers to a software application that has been downloaded to an electronic device (e.g., device 100, 300, and / or 500) and is ready to be launched (e.g., become open) on the device.
[0195] As used herein, the term "executing application" or "open application" refers to a software application that has persisted state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or executing application is optionally any of the following types of applications:
[0196] The active app currently displayed on the display of the device on which the app is being used;
[0197] Not running but stored in memory (volatile and non-volatile respectively)
[0198] A suspended or dormant application that contains status information that can be used to resume execution of the application.
[0199] as well as
[0200] Background applications (or background processes), which are not currently displayed but whose one or more processes are being processed by one or more processors;
[0201] Generally speaking, when in a first application, opening a second application does not close the first application. When the second application is displayed and the first application stops being displayed, the first application becomes a background application. As used herein, the term "closed application" refers to a software application that does not retain state information (e.g., the state information of a closed application is not stored in the device's memory). Therefore, closing an application includes stopping and / or removing the application's application process and removing the application's state information from the device's memory.
[0202] Attention is now turned to an embodiment of a user interface ("UI") and associated processes implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.
[0203] User interface and associated processes
[0204] Initialize the remote locator object
[0205] Users interact with electronic devices in a variety of different ways. In some embodiments, electronic devices are capable of tracking the location of objects such as remote locator objects. In some embodiments, remote locator objects that support location tracking can be attached to items that do not support location tracking. The embodiments described below provide ways for electronic devices to initialize remote locator objects, thereby enhancing user interaction with electronic devices. Enhanced interaction with devices reduces the amount of time required for users to perform operations, thereby reducing the power consumption of the device and extending the battery life of battery-powered devices. It should be understood that people use devices. When someone uses a device, that person is optionally referred to as a user of the device.
[0206] 6A to 6T The embodiments in these figures are used to illustrate the process described below, including reference to 7A to 7D Describe the process.
[0207] 6A to 6T An electronic device 500 is shown initializing a remote locator object. Figure 6A An exemplary device 500 is shown including a touch screen 504. Figure 6A As shown, the electronic device 500 presents a home screen user interface 610. In some embodiments, the home screen user interface 610 is an application launch user interface. For example, the home screen user interface 610 includes a plurality of selectable options that, when selected, cause the electronic device 500 to launch or otherwise present an application (e.g., icons 424, 426, 416, 432, 434, 436, 440, 446, 450, and 452). In some embodiments, the home screen user interface 610 includes a plurality of pages or tabs and includes all launchable applications that have been installed on the electronic device 500. In some embodiments, the home screen user interface 610 includes a subset of applications that are installed on the electronic device 500 and that can be launched.
[0208] Figure 6AAlso shown is an exemplary remote locator object 600 in an uninitialized state. In some embodiments, the remote locator object is a device with a battery, one or more wireless antennas, and a low-power processor that enables the device to be used as a dedicated remote locator object when associated with another physical object (e.g., a wallet, handbag, backpack, suitcase, car, keychain, etc.). In some embodiments, the remote locator object is a multi-purpose device with location tracking capabilities, such as a smart phone, tablet computer, computer, or watch. In some embodiments, the remote locator object 600 can transmit location data to an electronic device. For example, the remote locator object 600 optionally includes a GPS locator. In some embodiments, the remote locator object 600 does not include location tracking capabilities and relies on other electronic devices (e.g., such as device 500) to receive location data. In some embodiments, the remote locator object 600 can communicate wirelessly with other electronic devices such as electronic device 500 (e.g., via Bluetooth, RF, IR, NFC, etc.). In some embodiments, the remote locator object has an uninitialized state and an initialized state. For example, when the remote locator object is first manufactured, the remote locator object is in an uninitialized state. In an uninitialized state, a remote locator object is not assigned a tag or associated with any particular user or user account. In an initialized state, a remote locator object is assigned a tag and / or associated with a corresponding user or user account. In some embodiments, initializing a remote locator object includes transferring initialization data to the remote locator object and storing the data on the remote locator object. In some embodiments, the remote locator object does not store the initialization data, but rather an electronic device (e.g., such as device 500) or a server stores the initialization data and associates the data with a unique identifier (e.g., a serial number, etc.) of the remote locator object.
[0209] In some embodiments, the remote locator object 600 pairs with, or more generally communicates with, the electronic device 500 when the remote locator object 600 is placed within a threshold distance (e.g., 1 inch, 2 inches, 5 inches, etc.) of the device 500, such as Figure 6BAs shown. In some embodiments, pairing the remote locator object 600 with the electronic device 500 includes establishing an NFC communication link between the remote locator object 600 and the electronic device 500. In some embodiments, the electronic device 500 receives identification information from the remote locator object 600 (e.g., a serial number of the remote locator object, etc.). In some embodiments, the remote locator object 600 uses the location tracking capabilities of the electronic device 500 to update the internal location information of the remote locator object 600. In some embodiments, the remote locator object 600 can upload its location information to a server. In some embodiments, the remote locator object 600 can upload its location data to a server via a wireless communication link (e.g., such as Bluetooth, Wi-Fi, etc.). In some embodiments, the remote locator object 600 can communicate with an electronic device (e.g., such as the device 500) to upload location data, even if the remote locator object 600 has not been previously paired with the electronic device (e.g., when the remote locator object 600 is in an uninitialized state, or when the remote locator object 600 is in an initialized state but not paired with a corresponding electronic device).
[0210] In some embodiments, in response to placing the remote locator object 600 near the electronic device 500, the electronic device 500 displays a user interface 620 to complete the pairing (eg, initialization) process, such as Figure 6C In some embodiments, the user interface 620 is an overlay over a user interface (e.g., user interface 610) displayed on the device 500 before pairing begins. In some embodiments, the user interface 620 includes a representation 622 of the remote locator object 600. In some embodiments, the representation 622 is an icon of the remote locator object 600. In some embodiments, the representation 622 is a three-dimensional and / or interactive model of the remote locator object 600. For example, in some embodiments, user input on the representation 622 optionally causes the representation 622 to rotate or turn according to the user input. In some embodiments, the representation 622 itself (e.g., without user participation) rotates, turns, or otherwise animates. For example, Figures 6D to 6E Representation 622 is shown rotated without user input.
[0211] In some embodiments, the user interface 620 includes a selectable option 624 (e.g., a button, an affordance, etc.). In some embodiments, selecting the selectable option 624 initiates a process for initializing (e.g., setting up, etc.) the remote locator object 600 and pairing it with the electronic device 500 and / or a user account associated with the device 500. Figure 6E, receiving user input 603 selecting selectable option 624 indicating a user request to initialize and connect (eg, pair) the remote locator object 600 to the electronic device 500. In response to the user input, the device 500 displays a user interface 630, such as Figure 6F shown.
[0212] In some embodiments, the user interface 630 is a user interface for selecting a label (e.g., a name or other identifier) for the remote locator object 600. In some embodiments, the user interface 630 includes one or more predefined labels (e.g., "bag," "backpack," "keys") that the user can select as labels for the object 600. In some embodiments, the one or more predefined labels are provided as a list of options 632. In some embodiments, the list 632 is scrollable to display more predefined labels. In some embodiments, the list 632 is displayed in a rolodex style, such that the entry in the center is the largest, and the size of each entry decreases based on the distance from the center. In some embodiments, the entry in the center is the currently selected entry, as shown in box 634.
[0213] In some embodiments, list 632 includes a custom option (eg, "Other") for providing a custom label. Figures 6F to 6H One or more user input sequences for navigating to and selecting a custom option are shown. In some embodiments, in response to the user input, the device displays a virtual keyboard 638, such as in Figure 6I In some embodiments, the “Other” option becomes a text entry field 634. In some embodiments, the user can enter a custom identifier into the text field 634 using a virtual keyboard 638.
[0214] In some embodiments, the user interface 636 includes a selectable option 636 for confirming the tag for the remote locator object 600. In some embodiments, after the user has confirmed the tag for the remote locator object 600, the device 500 displays a user interface 640, such as Figure 6J In some embodiments, the user interface 640 is a connection progress splash screen user interface indicating that the pairing process is in progress. In some embodiments, the user interface 640 includes a representation 622 of the remote locator object 600. In some embodiments, the user interface 640 displays the selected identifier with the user's name (e.g., "John's keys" so that the remote locator object 600 is attached or will be attached to John's keys). In some embodiments, pairing with the remote locator object 600 includes creating a configuration file specific to the remote locator object 600 on the electronic device 500 (e.g., and / or on a cloud server).
[0215] In some embodiments, after the pairing process is successfully completed and the remote locator object 600 is initialized, the device 500 displays the user interface 650, such as Figure 6K In some embodiments, the user interface 650 includes a label 652 indicating the remote locator object being displayed on the user interface 650 (e.g., remote locator object 600, "John's keys"). In some embodiments, the user interface 650 includes a label 654 indicating the location status of the remote locator object 600. In some embodiments, the location status of the remote locator object 600 is that it is within a threshold distance (e.g., 1 foot, 2 feet, 3 feet, etc.) from the user such that the "With You" label is displayed. In some embodiments, the label 654 additionally or alternatively includes an indication of the time when the location of the remote locator object 600 was last updated. For example, as Figure 6K As shown, the location data of the remote locator object 600 was updated "just now" (eg, within 1 second, 30 seconds, 1 minute, 2 minutes, etc.).
[0216] In some embodiments, the user interface 650 includes a map 656. In some embodiments, the map 656 displays a map around the location of the remote locator object 600 (e.g., a one-mile radius, a two-mile radius, a given mile radius, etc.). In some embodiments, the map 656 includes an icon 658 representing the remote locator object 600. In some embodiments, the icon 658 indicates the current location of the remote locator object 600. In some embodiments, the user interface 650 includes one or more functions available for the remote locator object 600, which can be selected to view or activate the corresponding function. For example, selectable option 659-1 corresponds to a location finder function for the remote locator object 600. In some embodiments, selecting selectable option 659-1 causes a user interface for finding the remote locator object 600 in an application for tracking and finding items to be displayed (e.g., similar to the process described below with respect to methods 1300 and 1400). In some embodiments, selectable option 659-2 corresponds to a detach alarm function for the remote locator object 600. In some embodiments, selecting selectable option 659-2 toggles the detach alarm function on or off. Separate alerts for remote locator objects will be described in more detail below with respect to method 900. In some embodiments, selectable option 659-3 causes a user interface to be displayed for selecting and / or managing trusted locations and / or trusted personnel for the remote locator object 600. Trusted locations for remote locator objects will be described in more detail below (as will be described in more detail below with respect to method 900). In some embodiments, selectable options 659-1 through 659-3 are not selectable options, but rather are non-interactive indicators to the user indicating available functionality.
[0217] In some embodiments, the user interface 650 includes a selectable option 657-1. In some embodiments, selecting the selectable option 657-1 causes an application for tracking and finding items (e.g., a "Find" application) to be displayed and navigates to a user interface within the application for managing settings (e.g., viewing and editing) for the remote locator object 600. In some embodiments, the user interface 650 includes a selectable option 657-2, which can be selected to exit the user interface 650 and display the user interface that was displayed before initialization began (e.g., the user interface 610).
[0218] exist Figure 6K , a user input 603 selecting a selectable option 657-1 is detected, which corresponds to a request to customize the settings of the remote locator object 600. In some embodiments, in response to the user input 603, the electronic device 500 displays a user interface 660, such as Figure 6LIn some embodiments, user interface 660 is a user interface of an application for tracking and finding items (eg, electronic device 500 launches the application in response to user input 603).
[0219] exist Figure 6L , the user interface 660 includes a label 662 indicating the remote locator object being displayed on the user interface 660 (e.g., remote locator object 600, "John's keys"). In some embodiments, the user interface 660 includes a label 664 indicating the location status of the remote locator object 600. In some embodiments, the location status of the remote locator object 600 is that it is within a threshold distance (e.g., 1 foot, 2 feet, 3 feet, etc.) from the user, such that the "With You" label is displayed. In some embodiments, the label 664 additionally or alternatively includes an indication of the time when the location of the remote locator object 600 was last updated. For example, as Figure 6L As shown, the location data of the remote locator object 600 was updated "just now" (e.g., within 1 second, 30 seconds, 1 minute, 2 minutes, etc.). In some embodiments, the tag 664 includes a description of the location closest to the location of the remote locator object 600. For example, Figure 6L As shown, remote locator object 600 is determined to be "near home."
[0220] In some embodiments, user interface 660 includes selectable options 666-1 and 666-2, corresponding to functions available for remote locator object 600. In some embodiments, selecting selectable option 666-1 causes a user interface to be displayed for finding remote locator object 600 (e.g., similar to the processes described below with respect to methods 1300 and 1400). In some embodiments, selecting selectable option 666-2 causes remote locator object 600 to emit an audible tone. In some embodiments, selectable option 666-2 is a toggle button, and remote locator object 600 will continue to emit the audible tone until electronic device 500 receives a second user input selecting selectable option 666-2 to disable the audible tone. In some embodiments, selectable option 666-2 is not a toggle button, and remote locator object 600 will emit the audible tone as long as the user selects selectable option 666-2. Thus, in some embodiments, remote locator object 600 will only emit the audible tone when the user selects selectable option 666-2.
[0221] In some embodiments, the user interface 660 includes options for setting notification settings for the remote locator object 600. In some embodiments, the notification settings include a selectable option 668 that can be selected to edit the notification settings with respect to separate alerts. In some embodiments, the user interface 660 includes options for adding and / or managing people shared with the remote locator object 600. In some embodiments, if the remote locator object 600 is not currently shared with anyone, a selectable option 669 indicates "Add People." Separate alerting and sharing operations will be described below with respect to Figures 8A to 8P In some embodiments, the user interface 660 includes a selectable option 667 for changing the name (e.g., label) of the remote locator object 600. In some embodiments, such as Figure 6M As shown (after scrolling down the user interface), the user interface 600 includes a selectable option 665 for marking the remote locator object 600 as lost. Further description of the features of the remote locator object marked as lost will be provided below with respect to Figures 10N to 10R Describe in more detail.
[0222] In some embodiments, the user interface 660 includes a selectable option 663 for exiting the user interface 660 (e.g., completing the setup of options for the remote locator object 600). Figure 6M , receiving user input 603 selecting selectable option 663. In some embodiments, in response to user input 603, electronic device 500 exits user interface 660 and displays user interface 670, such as Figure 6N As shown. In some embodiments, the user interface 670 is the home screen of an application for tracking and finding items (e.g., a "Find" application). In some embodiments, the user interface 670 includes a map 672 and a list 676 of items being tracked. In some embodiments, the map 672 includes an icon 674-1 indicating the current location of the electronic device 500. In some embodiments, the map 672 includes an icon indicating the location of the item being tracked. For example, in some embodiments, the map 672 includes an icon 674-2 indicating the location of "spouse's keys." In some embodiments, the map 672 does not display icons for items that are determined to be with the electronic device (e.g., with the user). In some embodiments, the map 672 displays icons for items that are determined to be with the electronic device (e.g., with the user, such as keys).
[0223] In some embodiments, list 676 includes one or more items whose locations are being tracked. Figure 6N, list 676 includes items 678-1 through 678-3. In an embodiment, each item includes an icon corresponding to the item (e.g., or other representation), a label for the item (e.g., keys, spouse's keys, tablet, etc.), and location information for the item (e.g., with you, near spouse's office, at home). In some embodiments, the item includes information about whether to ignore notifications for the item and the amount of time remaining to ignore notifications for the item (e.g., as will be described in more detail). In some embodiments, the item includes information about the last time the location information was updated (e.g., as will be described in more detail). In some embodiments, the item includes information about how far the item is from the user (e.g., 1 foot away, 5 miles away, 15 feet away, etc.). In some embodiments, each of items 678-1 through 678-4 can be selected to display a user interface specific to the corresponding item (e.g., similar to the reference Figures 6L to 6M described user interface). Figure 6N , the list 676 includes a list 678-1 corresponding to the user's keys, a list 678-2 corresponding to the user's spouse's keys, and a list 678-3 corresponding to the user's tablet. Figure 6N As shown, user interface 670 displays the location information of the user's remote locator object (item 678-1), remote locator objects that have been shared with the user (e.g., item 678-2), electronic devices (e.g., item 678-3), and optionally other people (not shown). In some embodiments, list 676 is a scrollable list that can be scrolled to display more items being tracked. In some embodiments, map 672 displays only the items displayed in list 676, and scrolling through list 676 updates map 672 to display the location of the items currently displayed in list 676. In some embodiments, map 672 displays all items being tracked, rather than just the items currently displayed in list 676.
[0224] Figures 6O to 6T An embodiment is shown in which the device 500 is placed within a threshold distance of a remote locator object that is already in an initialized state. Figure 6O Device 500 and remote locator object 600 are shown. Figure 6O In , the remote locator object 600 is initialized and previously associated with the user and / or user account of the device 500. Thus, in some embodiments, the remote locator object 600 is paired with the device 500. Figure 6P, the device 500 is placed within a threshold distance of the remote locator object 600 (e.g., within NFC communication range). In some embodiments, in response to the device 500 being placed within the threshold distance of the remote locator object 600, the device 500 communicates with the remote locator object 600 and displays a user interface 680 overlaid on the user interface previously displayed on the device 500. In some embodiments, the user interface 680 is a "quick" control sheet that displays one or more selectable options for performing a subset of the functions available with the remote locator object 600. Figure 6P In FIG. 6 , the user interface 680 includes a switch 682 that can be selected to switch the separate alarm on or off (e.g., as will be described below with respect to FIG. Figures 8A to 8P In some embodiments, the switch 682 includes a textual description of how many location exceptions apply to the remote locator object 600 (e.g., as described below with respect to Figures 8A to 8P In some embodiments, the user interface 680 includes a selectable option 684 that can be selected to display an application for tracking and finding items (e.g., a "Find" application) and navigate to a user interface within that application for managing settings (e.g., viewing and editing) for the remote locator object 600 (e.g., similar to the user interface described above with respect to FIG. Figures 6L to 6M The user interface 660).
[0225] Figure 6Q Device 500 and remote locator object 600 are shown. Figure 6Q In , the remote locator object 600 is initialized and associated with another user (e.g., a user or user account other than the device 500). Figure 6Q , remote locator object 600 is not associated with the user of the device and is not currently sharing location information with the user of device 500. Figure 6R In some embodiments, the device 500 is placed within a threshold distance of the remote locator object 600 (e.g., within NFC communication range). In response to placing the device 500 within the threshold distance of the remote locator object 600, the device 500 communicates with the remote locator object 600 and displays a user interface 690 overlaid on the user interface previously displayed on the device 500. In some embodiments, the user interface 690 is a "quick" control sheet that displays one or more selectable options for performing functions available with the remote locator object 600. Figure 6RIn FIG. 6 , because the remote locator object 600 is not associated with the user and is not shared with the user, the user interface 690 includes a selectable option 692 and a selectable option 694. In some embodiments, the selectable option 692 can be selected to ignore the remote locator object 600 (e.g., suppress the tracking alarm, as will be described below with respect to FIG. 6 ). Figures 10A to 10R In some embodiments, selectable option 694 may be selected to request sharing of the remote locator object 600 from the owner of the remote locator object 600 .
[0226] exist Figure 6R , receiving user input 603 selecting a selectable option 694. In some embodiments, in response to the user input, a notification 696 is displayed on a device (e.g., device 500) of an owner of the remote locator object 600 (e.g., a user account associated with the remote locator object), such as Figure 6S In some embodiments, the notification 696 indicates to the owner of the remote locator object 600 that someone (e.g., John) has requested to share the remote locator object 600. In some embodiments, the notification 696 can be selected to display options for sharing the remote locator object 600. For example, in Figure 6S , receiving user input 603 selecting notification 696. In some embodiments, in response to the user input, device 500 displays user interface 698. In some embodiments, user interface 698 is a user interface for managing users with whom the corresponding remote locator object is shared, as will be described below with respect to Figures 8K to 8N In some embodiments, the user interface 698 automatically displays the requestor, and the owner of the remote locator object can select the requestor to initiate the process of sharing the remote locator object with the requestor (e.g., without requiring the owner to search for or otherwise enter the requestor's account information).
[0227] 7A to 7D is shown according to some embodiments (such as 6A to 6T Flowchart of a method 700 for initializing a remote locator object as shown in FIG. Method 700 is optionally performed at an electronic device (such as device 100, device 300, device 500), as described above with reference to FIG. Figure 1A to Figure 1B 、 Figures 2 to 3 、 Figures 4A to 4B and Figures 5A to 5H Some operations in method 700 are optionally combined, and / or the order of some operations is optionally changed.
[0228] As described below, method 700 provides a way to initialize a remote locator object. This method reduces the cognitive burden on users when interacting with the device user interface of the present disclosure, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, improving the efficiency of user interaction with the user interface saves power and increases the time between battery charges.
[0229] In some embodiments, such as Figure 6B As shown in , an electronic device having one or more wireless antennas, a display device, and one or more input devices (e.g., a mobile device (e.g., a tablet, smartphone, media player, or wearable device) including a touch screen and wireless communication circuitry, or a computer including a keyboard, a mouse, a trackpad, and one or more of a touch screen and wireless communication circuitry) detects (702) via the one or more wireless antennas a remote locator object (e.g., a device capable of wirelessly communicating with the electronic device, such as via Bluetooth and / or Wi-Fi—the device optionally being attachable to an item of a user, such as the user's keys, the user's handbag, etc.) in the vicinity of the electronic device, such as at Figure 6B As shown in .
[0230] In some embodiments, in response to detecting that a remote locator object is in proximity to the electronic device (e.g., within a threshold distance, such as 5 feet, 10 feet, or 20 feet, within an effective range of a wireless communication protocol such as NFC, Bluetooth, Wi-Fi, etc.), the electronic device displays (704) via a display device a setup user interface for setting the remote locator object in a predefined area of the display, such as in Figure 6C In some embodiments, if the remote locator object has been previously set by the electronic device or another electronic device, the setting user interface is not displayed.
[0231] In some embodiments, after displaying the setup user interface via the display device, the electronic device displays (706) an identifier user interface in a predefined area of the user interface displayed via the display device (e.g., in response to selecting a setup enable representation for setting the remote locator object), the identifier user interface being used to select an identifier for the remote locator object, such as in Figure 6FIn some embodiments, selecting the setup indicator causes the remote locator object and / or electronic device to enter a setup process, which includes initializing the remote locator object, pairing the remote locator object with the electronic device, otherwise identifying the remote locator object as owned by the user of the electronic device, and / or setting the behavior of the remote locator object and / or electronic device. In some embodiments, the identifier user interface is also displayed as an overlay above the content displayed before the remote locator object is detected near the electronic device. In some embodiments, the identifier user interface is a user interface of the setup user interface (e.g., a page displayed on the setup user interface overlay object). In some embodiments, the identifier user interface includes one or more predefined identifiers (e.g., "keys", "handbag", "backpack", etc.). In some embodiments, the user can provide a custom identifier. In some embodiments, the identifier is displayed in a scrollable list or scrollable rolodex.
[0232] In some embodiments, while displaying the identifier user interface, the electronic device detects (708) one or more user inputs via one or more input devices selecting a corresponding identifier for the remote locator object, such as in Figure 6G In some embodiments, after a corresponding identifier has been selected for the remote locator object (e.g., in response to receiving input to browse a setup user interface or in response to selecting a predefined identifier for the remote locator object), the electronic device displays (710) a user interface with additional information about the functionality of the remote locator object, wherein the user interface with the additional information includes a description of at least one functionality of the remote locator object, such as in Figure 6KIn some embodiments, the remote locator object may be configured as shown in FIG. 1 (e.g., displaying a setup confirmation page or a setup summary page for the remote locator object). In some embodiments, the setup confirmation page provides the user with one or more optional options for performing additional setup procedures or selecting additional settings for the remote locator object. For example, the setup confirmation page includes an optional option for launching an application dedicated to managing and locating the remote locator object and / or other electronic devices. In some embodiments, the setup confirmation page includes indicators of different functions available to the remote locator object. For example, the remote locator object may optionally be able to be found wirelessly (e.g., providing relative or absolute position information to an electronic device so that the electronic device can triangulate the relative or absolute position of the remote locator object) and indicated in additional information; the remote locator object may optionally be able to cause an alarm to be displayed on the electronic device and indicated in additional information when the remote locator object is separated from the electronic device, etc. In some embodiments, the electronic device also identifies the remote locator object using a combination of a corresponding identifier and the name of the user of the device (e.g., labeling the remote locator object with the user's name and an indication that the remote locator object is associated with "keys" or "handbag", etc.).
[0233] The above-described manner of setting a remote locator object (e.g., by detecting the presence of a remote locator object and displaying a setup user interface for selecting an identifier and access functions of the remote locator object) provides a user with the ability to set up a remote locator object (e.g., by displaying a setup user interface in which the user assigns a tag to the remote locator object and is able to perform other setup functions), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a method for the user to remotely set up a remote locator object without requiring a dedicated device to perform the setting of the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0234] In some embodiments, when a remote locator object is detected in the vicinity of the electronic device and the remote locator object is in a first state, a settings user interface (712) is displayed, such as in Figure 7C, as shown in (e.g., an initial state in which no settings have been made (e.g., no user account is currently configured)). In some embodiments, when the device is in the initial state in which no settings have been made and the electronic device is placed near the remote locator object, a request to set the remote locator object is indicated, and the electronic device displays a settings user interface. In some embodiments, placing the electronic device near the remote locator object creates a wireless communication connection between the electronic device and the remote locator object (e.g., via a wireless communication protocol such as NFC, Bluetooth, Wi-Fi Direct, Wi-Fi, etc.). In some embodiments, after establishing the wireless communication connection, the electronic device determines that the remote locator object is in the initial state (e.g., the remote locator object transmits a signal to the electronic device indicating that the remote locator object is in the initial state). In some embodiments, if the remote locator object has never been set up using any electronic device or the corresponding electronic device (e.g., optionally, it has been set up using another electronic device instead of the corresponding electronic device), or the remote locator object has been reset to factory default settings (e.g., restored to factory settings), then the remote locator object is in a first state (e.g., an initial state). In some embodiments, if the remote locator object is not in the first state (e.g., the initial state), detecting that the remote locator object is in proximity to the electronic device does not cause a settings user interface to be displayed. In some embodiments, instead of the settings user interface, a different user interface is displayed on the electronic device for performing other functions associated with the remote locator object besides setting the remote locator object.
[0235] The above-described manner of setting a remote locator object (e.g., by detecting the presence of a remote locator object when the remote locator object is in a first state) provides the user with the ability to set the remote locator object when the remote locator object is in a correctly set state and not set the remote locator object when the remote locator object is not in a correctly set state (e.g., by displaying a setup user interface when the remote locator object has not been set), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by automatically determining that the remote locator object has not been set or needs to be set, and by displaying a setup user interface when the remote locator object is placed near the electronic device), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0236] In some embodiments, the predefined area occupies less than the entire displayed user interface, and a representation of at least a portion of the user interface that was displayed (immediately) before the remote locator object was detected in the vicinity of the electronic device is displayed on a portion of the user interface outside the predefined area (714), such as in Figure 6C) (e.g., the setup user interface is displayed as an overlay on an application or home screen that is not associated with the remote locator object). For example, if a user is interacting with an electronic device such that the electronic device is displaying a corresponding user interface (e.g., a user interface of a particular application or a system user interface), the remote locator object setup process is initiated (e.g., by placing the remote locator object near the electronic device), and the setup user interface is then displayed as an overlay on top of the content being displayed (the user interface of the particular application or the system user interface). In some embodiments, the overlay is displayed over the bottom (e.g., bottom 1 / 2, bottom 1 / 3, bottom 1 / 4, etc.) of the displayed content.
[0237] The above-mentioned manner of displaying the setup user interface (for example, by displaying a user interface that occupies less than the entire user interface that is overlaid on the user interface previously displayed before entering the setup process) provides the user with a minimally invasive user interface for setting the remote locator object (for example, by displaying a setup user interface that does not surround the entire screen and is overlaid on the previously displayed content), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by allowing the user to quickly return to the previous interface after completing the setup process, or by allowing the user to maintain the view of the previous user interface when performing the setup of the remote locator object without the user having to navigate away from the previously displayed user interface and then navigate back to the user interface after completing the setup of the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0238] In some embodiments, the identifier user interface includes a plurality of predefined identifiers (716), such as Figure 6F , such as shown in the (e.g., keys, car, handbag, computer, backpack, etc.). In some embodiments, a predefined identifier from the plurality of predefined identifiers can be selected to set an identifier for the remote locator object being set up. For example, if a user (e.g., John) selects the predefined identifier "keys," the remote locator object is referred to as "John's keys." In some embodiments, the plurality of predefined identifiers are displayed in a scrollable list or rolodex-style list. In some embodiments, after selecting an identifier from the identifier user interface, the setup process performs initialization of the remote locator object and displays a user interface indicating that the electronic device is connecting to the remote locator object.
[0239] The above-described manner of setting a remote locator object (e.g., by displaying a plurality of predefined identifiers for the user to select from) allows for quick selection of an identifier for the remote locator object, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with commonly used identifiers to allow the user to quickly select the identifier that is most suitable for the remote locator object being set), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0240] In some embodiments, detecting one or more user inputs selecting a corresponding identifier for the remote locator object includes detecting user input providing a custom identifier (736), such as in Figure 6I , as shown in (e.g., the identifier user interface includes an option for the user to provide a custom identifier). In some embodiments, the option for the user to provide a custom identifier is displayed with a list of multiple predefined identifiers (e.g., at the bottom of a scrollable list or a rolodex-style list). For example, one of the identifier options that includes the list of multiple predefined identifiers is an option for providing a custom identifier (e.g., an "other" option). In some embodiments, selecting the option for providing a custom identifier causes a virtual keyboard to be displayed for the user to provide a custom identifier. In some embodiments, the virtual keyboard (e.g., a soft keyboard) is displayed at the bottom of the screen and shifts the identifier user interface upward. In some embodiments, after the user enters text for the custom identifier and exits the virtual keyboard, the identifier user interface returns to its original position before being shifted by the virtual keyboard.
[0241] The above-described manner of setting up a remote locator object (e.g., by receiving a custom identifier from a user) allows for more flexible / robust device setup (e.g., by receiving user input providing a custom identifier for the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the ability to select from multiple predefined identifiers and the ability to provide a custom identifier), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0242] In some embodiments, displaying the setup user interface includes displaying a pairing animation that includes a representation of the remote locator object and an optional affordance for initiating the pairing process (718), such as in Figure 6JIn some embodiments, the user interface includes a selectable option (e.g., an affordance) for initiating a process for pairing the remote locator object with the electronic device (e.g., a "connect" button). In some embodiments, after receiving input from the user selecting the selectable option for initiating the pairing process (e.g., user input corresponding to a request to pair the remote locator object with the electronic device), the user interface is set to display a user interface indicating that the pairing process is in progress (e.g., the user interface is set to display "Connecting"). In some embodiments, after selecting the selectable option for initiating the process for pairing the remote locator object, the user interface is set to display an identifier user interface for the user to select an identifier for the remote locator object.
[0243] The above-described manner of setting up a remote locator object (e.g., by displaying a pairing animation for the remote locator object and a selectable option for initiating the setting up of the remote locator object) provides the user with confirmation that the user is about to begin setting up the remote locator object (e.g., by displaying a representation of the remote locator object and starting the setup process after the user selects the selectable option to confirm that the user wishes to begin setting up the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the ability to confirm setting up the remote locator object without starting the setup process when the user inadvertently places the electronic device near the remote locator object without intending to set up the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently while reducing errors in device use.
[0244] In some embodiments, the user interface with additional information about the functionality of the remote locator object includes a map with an indication of the location of the remote locator object, wherein the remote locator object is identified using a corresponding identifier and the name of the user of the device (720), such as in Figure 6K, as shown in (e.g., after completing the setup process of pairing the remote locator object with the electronic device, a user interface with additional information about the functionality of the remote locator object is displayed). In some embodiments, the user interface with additional information includes an indication (e.g., a title, a label, etc.) of the remote locator object that has just been paired using a selected identifier (e.g., "John's keys") for the user interface. In some embodiments, the user interface with additional information includes a map of the current location of the remote locator object. In some embodiments, the map includes an indicator of the current location of the remote locator object and / or the current location of the electronic device. In some embodiments, the map includes the locations of other objects (e.g., other remote locator objects, other devices, etc.) that are being tracked by the electronic device. In some embodiments, the map only displays the current location of the remote locator object and does not display the locations of other devices that are being tracked by the electronic device. In some embodiments, the indicator of the current location of the remote locator object is an icon representing the remote locator object (e.g., a key icon).
[0245] The above-described manner of completing the setup of a remote locator object (e.g., by displaying a user interface with additional information about the remote locator object and a map including the current location of the remote locator object) provides the user with confirmation that the remote locator object has been successfully set up and its current location (e.g., by displaying the current location of the remote locator object, an identifier selected for the remote locator object, and information about executable associated functions), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by displaying a confirmation page to the user, where the user can visually confirm that the setup was successful without having to navigate to a separate user interface to confirm that the setup was successful), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0246] In some embodiments, the user interface with additional information about the functionality of the remote locator object includes information about a plurality of features of the remote locator object (722), such as in Figure 6K, as shown in (e.g., the user interface with additional information includes one or more indications of the plurality of features of the remote locator object). In some embodiments, these indications are selectable to perform actions corresponding to the respective features of the remote locator object. In some embodiments, the plurality of features of the remote locator object include features for finding or otherwise locating the remote locator object with the aid of an application for tracking and finding the device. In some embodiments, the plurality of features of the remote locator object include features for managing notifications and / or alarms associated with the remote locator object, including alarms displayed when the user is separated from the remote locator object. In some embodiments, the plurality of features of the remote locator object include features for managing trusted locations and / or trusted persons (e.g., such that the location of the remote locator object is shared with a trusted person and / or such that no alarm is generated when the remote locator object is separated from the user but is with a trusted person and / or trusted location).
[0247] The above-described manner of displaying the features of the remote locator object (e.g., by displaying a user interface with information about the features of the remote locator object after the user completes setup of the remote locator object) allows the electronic device to inform the user of the main features of the remote locator object available in a single user interface after the user completes setup (e.g., by displaying a user interface with information about multiple features of the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by determining that the user may want information about the features of the remote locator object after the user successfully sets up and pairs the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0248] In some embodiments, the user interface with additional information about the functionality of the remote locator object includes information indicating that the remote locator object is detected being held by the user of the device (724), such as in Figure 6K, as shown in (e.g., the user interface with additional information includes a text label for the current location of the remote locator object). In some embodiments, if the current location is within a threshold distance from the user (e.g., 3 feet, 5 feet, 10 feet), the text label is "With You" or any other suitable label indicating that the remote locator object is held by the user. In some embodiments, the text label for the current location of the remote locator object includes a text label indicating the time when the current location was updated and / or refreshed. For example, in some embodiments, if the location was updated (e.g., refreshed) within a threshold time (e.g., 1 minute, 5 minutes, etc.), the text label for the location refresh time is "Just Detected". In some embodiments, if the refresh time exceeds the threshold time, the location refresh time optionally indicates the time when the most recent refresh occurred (e.g., "Detected 5 minutes ago" or "Last detected 5 minutes ago").
[0249] The above-mentioned manner of displaying information about the functionality of the remote locator object (e.g., by displaying that the remote locator object is held by the user) allows the electronic device to indicate to the user that the remote locator object is correctly tracking and / or reporting its location and that the electronic device is correctly receiving the location of the remote locator object, enabling it to automatically determine that the remote locator object is with the user (e.g., by displaying an indication that the remote locator object is held by the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by automatically determining and displaying that the remote locator object is with the user without requiring the user to separately determine that the location of the remote locator object is the same as the user's location), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0250] In some embodiments, the user interface with additional information about the functionality of the remote locator object includes a selectable user interface object associated with an application corresponding to the remote locator object (726), such as in Figure 6K , (e.g., the user interface with additional information includes a selectable option that can be selected to launch or otherwise display an application for finding and tracking a device (e.g., including a remote locator object and optionally other electronic devices). In some embodiments, the electronic device detects (728) selection of the selectable user interface object and, in response to detecting the selection of the selectable user interface object, displays (730) a user interface of the application corresponding to the remote locator object, such as in Figure 6KIn some embodiments, when the application for finding and tracking the device is displayed, the application is navigated to a user interface specific to the corresponding remote locator object (e.g., a user interface specific to viewing and / or managing settings for the corresponding remote locator object).
[0251] The above-mentioned manner of providing additional settings (for example, by providing an optional option for displaying an application corresponding to the remote locator object) not only provides the user with a quick setup process, but also provides the option of adjusting more advanced settings of the remote locator object (for example, by displaying a setup user interface to perform initial setup of the device, but providing an optional option for displaying the application corresponding to the remote locator object in response to receiving a user selection of the optional option for displaying the user interface for the application corresponding to the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by providing the user with the ability to change additional settings after successfully setting up the remote locator device without the user having to manually navigate to the application corresponding to the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0252] In some embodiments, the electronic device detects (732) via one or more wireless antennas that a corresponding remote locator object is in proximity to the electronic device (e.g., within 1 inch, 2 inches, 3 inches), wherein the corresponding remote locator object is associated with a corresponding user account that is different from a user account associated with the electronic device, such as in Figure 6R , as shown in (e.g., a user performs an NFC tap gesture on a remote locator object (using the electronic device) that is owned / configured by another user or is otherwise not associated with the user of the electronic device). In some embodiments, in response to detecting that the corresponding remote locator object is in proximity to the electronic device, the electronic device displays (734) an information user interface via a display device, the information user interface indicating that the corresponding remote locator object is associated with a user account that is different from the user account associated with the electronic device, wherein the information user interface includes a first selectable option that can be selected to request access to the corresponding remote locator object from the corresponding user account and share access to the corresponding remote locator object with the user account associated with the electronic device, such as in Figure 6RIn some embodiments, the user interface includes a selectable option for requesting the owner of the remote locator object (e.g., a user account configured with the remote locator object) to share the remote locator object. In some embodiments, requesting sharing causes a notification from the owner of the remote locator object to be displayed on the electronic device. In some embodiments, similar to the above-described method for sharing a remote locator object, the owner of the electronic device can accept the sharing request and set the amount of time to share the remote locator object with the user to a predetermined amount of time. In some embodiments, after sharing the remote locator object with the user, the user can view and / or track the location of the remote locator object via the electronic device (e.g., using an application for tracking and locating objects).
[0253] The above-described manner of requesting sharing of a remote locator object (e.g., by displaying a user interface with a selectable option for requesting the owner of the remote locator object to share the remote locator object) allows the owner of the remote locator object to be quickly and efficiently requested to share the remote locator object, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a quick method for sharing a remote locator object with the user without requiring the owner of the remote locator object to navigate to a separate user interface to manually share the remote locator object with the user), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0254] It should be understood that 7A to 7D The particular order in which the operations are described in the description is merely exemplary and is not intended to indicate that the order is the only order in which the operations may be performed. A person of ordinary skill in the art will recognize many ways to reorder the operations described herein. In addition, it should be noted that the details of other processes described herein with respect to other methods described herein (e.g., methods 900, 1100, 1300, and 1400) also apply in a similar manner to the details of the processes described above with respect to 7A to 7D For example, the initialization of the remote locator object described above with reference to method 700 optionally includes one or more of the characteristics of presenting a separate notification, presenting a tracking notification, and finding a remote locator object, as described herein with reference to other methods described herein (e.g., methods 900, 1100, 1300, and 1400). For the sake of brevity, these details are not repeated here.
[0255] The operations in the above information processing method are optionally implemented by running one or more functional modules in an information processing device, such as a general-purpose processor (e.g., a processor in combination with a processor). Figure 1A to Figure 1B 、 Figure 3 、 Figures 5A to 5H In addition, the above reference 7A to 7D The described operations are optionally performed by Figure 1A to Figure 1B . For example, display operations 704, 706, 710, 730, and 734 and detection operations 702, 708, 728, and 732 are optionally implemented by event classifier 170, event recognizer 180, and event handler 190. Event monitor 171 in event classifier 170 detects a contact on touch screen 504, and event dispatcher module 174 transmits the event information to application 136-1. The corresponding event recognizer 180 of application 136-1 compares the event information with the corresponding event definition 186 and determines whether the first contact at a first location on the touch screen corresponds to a predefined 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, event recognizer 180 activates event handler 190 associated with the detection of the event or sub-event. Event handler 190 optionally utilizes or calls data updater 176 or object updater 177 to update application internal state 192. In some embodiments, the event handler 190 accesses the corresponding GUI updater 178 to update the content displayed by the application. Similarly, those skilled in the art will clearly know how to update the content displayed by the application based on the GUI updater 178. Figure 1A to Figure 1B The components depicted in the figure implement other processes.
[0256] Notifications are separate from the remote locator object
[0257] Users interact with electronic devices in a variety of different ways. In some embodiments, electronic devices are capable of tracking the location of objects such as remote locator objects. In some embodiments, remote locator objects that support location tracking capabilities can be attached to items that do not support location tracking capabilities. The embodiments described below provide ways for electronic devices to provide an alert that a remote locator object associated with a user has been separated from the user, thereby enhancing the user's interaction with the electronic device. Enhancing interaction with the device reduces the amount of time required for the user to perform an action, thereby reducing the device's power usage and extending the battery life of battery-powered devices. It should be understood that people use devices. When someone uses a device, that person is optionally referred to as a user of the device.
[0258] Figures 8A to 8PThe embodiments in these figures are used to illustrate the process described below, including reference to Figures 9A to 9G Describe the process.
[0259] Figures 8A to 8P The electronic device 500 is shown displaying a notification separate from a remote locator object. Figure 8A An exemplary device 500 is shown including a touch screen 504. Figure 8A As shown, the electronic device 500 presents a lock screen user interface 800 (e.g., a wake screen user interface). In some embodiments, the lock screen user interface 800 is a user interface that is displayed when the electronic device 500 is awakened (e.g., from a sleep (low power) or locked state). In some embodiments, the lock screen user interface 800 includes a notification 802. In some embodiments, the notification 802 notifies the user that the corresponding remote locator object labeled "key" (e.g., as described with reference to method 700) has been separated from the user and is no longer with the user. In some embodiments, the notification 802 includes a label for the remote locator object (e.g., "John's keys"). In some embodiments, the notification 802 displays location information, such as the distance from the user to the determined location of the remote locator object (e.g., 2 miles) and the time when the location was last updated (e.g., "just now").
[0260] In some embodiments, when the electronic device 500 (e.g., or a server) determines that the remote locator object is separated from the user, a notification 802 is displayed. For example, in some embodiments, if the remote locator object is within a threshold distance (e.g., 10 feet, 50 feet, 100 feet, 1 mile, etc.) from the user, the electronic device 500 triggers the notification 802 to notify the user that the user is separated from the remote locator object.
[0261] As described above with reference to method 700, in some embodiments, the remote locator object can update, receive location data, and / or transmit location data to the server via the electronic device even if the remote locator object has not yet been paired with a corresponding electronic device (e.g., another user's mobile phone passed by the remote locator object, etc.). Therefore, the remote locator object can update its location information even if it is separated from the electronic device 500. It should be understood that although the notification 802 is shown as being displayed on the lock screen user interface 800, the notification 802 can be displayed on other user interfaces (e.g., in all cases where other notifications can be displayed).
[0262] In some embodiments, if the electronic device 500 moves within a threshold distance of a corresponding remote locator object, the notification 802 is dismissed or otherwise removed from the display on the electronic device 500. In some embodiments, the threshold distance that triggers display of the notification 802 includes hysteresis, such that a certain threshold distance is required to trigger the notification, while a second, smaller threshold distance is required to automatically dismiss the notification.
[0263] exist Figure 8A , receiving user input 803 selecting notification 802 (e.g., a tap on a touch screen pointing to notification 802). In some embodiments, in response to the user input, device 500 displays user interface 810, such as Figure 8B In some embodiments, the user interface 810 is a user interface for an application (e.g., a "find" application) for tracking and finding items specific to a corresponding remote locator object. In some embodiments, the user interface 810 includes a map 811 that displays the determined location of the corresponding remote locator object. In some embodiments, the map 811 displays an icon 812 corresponding to the current location of the electronic device 500 (e.g., the current location of the user) and an icon 814 corresponding to the current location of the corresponding remote locator object.
[0264] In some embodiments, the user interface 810 includes a label 816 indicating the remote locator object being displayed on the user interface 810 (e.g., the remote locator object, "John's keys"). In some embodiments, the user interface 810 includes a label 818 indicating the location status of the remote locator object. In some embodiments, the location status of the remote locator object is that it is farther than a threshold distance from the user, such that a "detached" label is displayed. In some embodiments, the label 818 additionally or alternatively includes an indication of the time when the location of the remote locator object was last updated. For example, Figure 8B As shown, the location data of the remote locator object was updated "just now" (e.g., within 1 second, 30 seconds, 1 minute, 2 minutes, etc.). In some embodiments, the label 818 includes a description of the location closest to the remote locator object. For example, Figure 8B As shown, the remote locator object is determined to be "near the restaurant".
[0265] In some embodiments, user interface 810 includes selectable options 819-1 and selectable options 819-2 corresponding to functions that can be used for a remote locator object. In some embodiments, selecting selectable option 819-1 causes a user interface to be displayed for finding the remote locator object (e.g., similar to the processes described below with respect to methods 1300 and 1400). In some embodiments, selecting selectable option 819-2 causes the remote locator object to emit an audible tone. In some embodiments, selectable option 819-2 is a toggle button, and the remote locator object will continuously emit the audible tone until the electronic device 500 receives a second user input selecting selectable option 819-2 to disable the audible tone. In some embodiments, selectable option 819-2 is not a toggle button, and the remote locator object will emit the audible tone as long as the user selects selectable option 819-2. Therefore, in some embodiments, the remote locator object will only emit the audible tone when the user selects selectable option 819-2.
[0266] In some embodiments, the user interface 810 includes a toggle 819-3 that can be selected to toggle the separation alarm on or off. For example, selecting selectable option 819-3 when the separation alarm is enabled disables the separation alarm, and selecting selectable option 819-3 when the separation alarm is disabled enables the separation alarm. In some embodiments, selectable option 819-3 indicates the number of exceptions (e.g., trusted locations) used to trigger the separation alarm (e.g., notification 802). In some embodiments, trusted locations (e.g., exceptions) are specific to each remote locator object being tracked, such that a different set of trusted locations is maintained for each remote locator object. It should be understood that trusted persons can also be added as exceptions to triggering the separation alarm. For example, a user can add another user (e.g., a "trusted user") so that when the remote locator object is separated from the user but is with the trusted user, a separation alarm is not generated for the user. Below with respect to Figures 8E to 8I Describes the details of the trusted location.
[0267] exist Figure 8B In some embodiments, in response to the user input, the device 500 enters the search mode and displays the user interface 820, such as Figure 8C In some embodiments, based on the distance to the remote locator object, the device 500 enters a first search mode (e.g., a map-based search mode for long distances) or a second search mode (e.g., for short distances) (e.g., similar to the processes described below with respect to methods 1300 and 1400). Figure 8CIn the first search mode, the device 500 enters the first search mode, which corresponds to using the map application to navigate to find the remote locator object. Figure 8C , user interface 820 is a user interface for a map that is displaying directions from the current location of the device 500 to the location of a remote locator object. In some embodiments, the map displays an icon 812 corresponding to the user's current location, an icon 814 corresponding to the determined location of a remote locator object (e.g., a "key"), and a route 822 corresponding to the path taken to reach the remote locator object. In some embodiments, user interface 820 includes a card 824 for configuring a navigation mode and initiating navigation. In some embodiments, card 824 includes a description 829 and selectable options 826. In some embodiments, description 829 includes information about the distance of the route, the length of travel time, whether the route is the fastest route, etc. In some embodiments, selectable option 826 can be selected to start navigating to the remote locator object. In some embodiments, card 824 includes selectable options 828-1, 828-2, and 828-3 for changing the navigation mode. For example, selectable option 828-1 may be selected to set up navigation for driving directions, selectable option 828-2 may be selected to set up navigation for walking directions, and selectable option 828-3 may be selected to set up navigation for public transportation directions.
[0268] Figures 8D to 8J An exemplary process for managing separate alerts for remote locator objects is shown. Figure 8D A user interface 870 corresponding to the home screen of an application for tracking and finding items is shown. In some embodiments, the user interface 870 is similar to the one described above with respect to Figure 6N The user interface 670. Figure 8D , while displaying user interface 870, detects user input 803 selecting item 878-1 corresponding to a remote locator object labeled "key." In some embodiments, in response to user input 803, device 500 displays user interface 830, such as Figure 8E In some embodiments, the user interface 830 is similar to the one described above with respect to Figure 6L The user interface 660.
[0269] In some embodiments, a user input 803 is detected selecting a selectable option 838 for setting a separate alarm setting for a corresponding remote locator object. In some embodiments, in response to the user input 803, the device 500 displays a user interface 840, such as Figure 8F shown.
[0270] In some embodiments, the user interface 840 provides the user with an option to modify the notification settings for the corresponding remote locator object (e.g., John's keys). For example, in some embodiments, the user interface 840 includes a switch 842 for switching a separate alarm (e.g., such as notification 802) on or off (e.g., enabled or disabled). In some embodiments, the user interface 840 displays a list of locations that have been previously set as trusted locations for the corresponding remote locator object (e.g., or optionally for other remote locator objects), such as location 844-1 and location 844-2.
[0271] In some embodiments, if no location is set as a trusted location, the user interface 840 only includes a selectable option 846 for adding a trusted location. Figure 8F As shown, the user interface 840 displays a trusted location 844-1 and a trusted location 844-2. In some embodiments, the list of trusted locations includes an icon representing the trusted location (e.g., a map icon), a label for the trusted location (e.g., "home" or "office"), optionally selected by the user, and an indication (e.g., a check mark) that the trusted location is currently enabled. In some embodiments, the trusted location 844-1 and the trusted location 844-2 can be selected to enable or disable the trusted location. In some embodiments, when the trusted location is disabled, the check mark is removed from the display to indicate that the trusted location is not currently enabled. As described above, a trusted location is a location that does not trigger a notification when a remote locator object is farther than a threshold distance from the user but within a predetermined radius / distance of the trusted location. In some embodiments, if the selectable option 842 is toggled to off, the user interface 840 does not display an option for a trusted location (as will be discussed below with respect to Figure 8J described).
[0272] exist Figure 8F In some embodiments, in response to the user input 803, the device 500 displays a user interface 850 for adding a new trusted place, such as Figure 8GAs shown. In some embodiments, the user interface 850 displays a text input field 852, wherein the user can enter an address and add a trusted location via the address input. In some embodiments, the user interface 850 includes a map 854. In some embodiments, the map 854 includes a pushpin 856, and the user can interact with and move around the map. In some embodiments, a trusted location can be added by moving the pushpin 856 to the desired location and setting the location as a trusted location (e.g., by clicking on the "Done" indication). In some embodiments, the pushpin 856 is fixed to the center of the map 854, and the user can set a trusted location by panning the map so that the pushpin is at the desired location.
[0273] In some embodiments, the user interface 850 includes radius options 858-1 through 858-4. In some embodiments, the user can select a radius for the trusted location. For example, the user can select a small radius (e.g., 50 feet, 100 feet, 200 feet, etc., selectable option 858-1), a medium radius (e.g., 100 feet, 200 feet, etc., selectable option 858-2), or a large radius (e.g., 400 feet, 600 feet, 1000 feet, etc., selectable option 858-3) around the trusted location that does not trigger a separate notification. In some embodiments, the user can select selectable option 858-4 to provide a custom radius for the trusted location. In some embodiments, the map 854 displays a visual indication of the radius selected by the user (e.g., shown as a dashed circle around the pushpin 856). As Figure 8G As shown, the selectable option 858-1 corresponding to the small radius is currently selected. Figure 8G In some embodiments, in response to the user input, such as Figure 8H As shown, the map 854 is updated to reflect the selected radius size. Figure 8H As shown, the dotted circle surrounding the pushpin 856 is now "medium" in size. In some embodiments, the user can perform a pinch gesture on the map 854 to enlarge or reduce the size of the dotted circle and provide a custom radius. In some embodiments, in response to the user's gesture to enlarge or reduce the size of the dotted circle, the device 500 automatically moves the radius selection to the selectable option 858-4 corresponding to the custom radius option.
[0274] exist Figure 8I In FIG, after the user successfully adds a new trusted place, the new trusted place is displayed in the user interface 840 (e.g., trusted place 844-3). It should be understood that the trusted place group is specific to the corresponding remote locator object, and each remote locator object maintains its own trusted place group. Figure 8I, detecting user input 803 selecting a switch 842. In some embodiments, in response to the user input, the detach alarm is completely disabled for the corresponding remote locator object (e.g., but not for other remote locator objects for which detach alarms have not been disabled). In some embodiments, in response to the user input, the device 500 updates the user interface 840 to remove the display of the trusted location list, such as Figure 8J In some embodiments, in response to the user re-enabling the detach alarm for the corresponding remote locator object, the trusted places list is redisplayed (eg, the trusted places group for the corresponding remote locator object is restored).
[0275] Figures 8K to 8N An exemplary process for sharing a remote locator object with another user is shown. Figure 8K , the device 500 is displaying a user interface 830. In some embodiments, the user interface 830 is similar to the user interface 830 described above with respect to FIG. Figure 6L In some embodiments, if the corresponding remote locator object is currently shared with another user, the user with whom the corresponding remote locator object is shared (e.g., user 837-1) is displayed on the user interface 830. In some embodiments, if the corresponding remote locator object is not shared with anyone, the selectable option 839 indicates "Add People," and if the corresponding remote locator object is being shared with other users, the selectable option 839 indicates "Manage People."
[0276] In some embodiments, a user input 803 is detected selecting a selectable option 839 for managing the people with whom the corresponding remote locator object is shared (e.g., managing sharing settings for the corresponding remote locator object). In some embodiments, in response to the user input 803, the device 500 displays a user interface 860, such as Figure 8L In some embodiments, user interface 870 is a user interface for selecting a person with whom the corresponding remote locator object is to be shared. In some embodiments, sharing a remote locator object with another user provides the other user with the same functionality as the owner of the remote locator object. For example, the user with whom the remote locator object is shared can set and receive separate alerts, and can track the location of the remote locator object and locate the remote locator object (e.g., similar to Figure 6N Listing 678-2 is shown, which corresponds to a remote locator object for the user's spouse with whom the user shares a key for the spouse).
[0277] In some embodiments, as Figure 8LAs shown, user interface 860 includes one or more users with whom the user is currently sharing a remote locator object, with whom the user has previously shared a remote locator object, or with whom the user shares or has shared other remote locator objects. In some embodiments, each user in the list of users can be selected to toggle (e.g., enable or disable) sharing with the corresponding user (e.g., as indicated by a check mark or lack of a check mark, respectively). In some embodiments, the user can add or remove users from the list of possible users to share with. In some embodiments, user input 803 is received selecting a "sibling" user with whom the corresponding remote locator object is to be shared.
[0278] In some embodiments, in response to user input 803 to select a "sibling" user with whom to share the corresponding remote locator object, the device 500 displays a card 870 (e.g., a user interface) overlaid on the user interface 860, such as Figure 8M In some embodiments, card 870 provides the user with one or more options regarding the length of time the remote locator object is shared with the "sibling" user. For example, in some embodiments, selectable option 872 corresponds to sharing (selectable to share) the remote locator object until the end of the day, and selectable option 874 corresponds to sharing (selectable to share) the remote locator object indefinitely (e.g., until the user manually disables sharing with the "sibling" user). In some embodiments, other possible time periods may be. In some embodiments, card 870 includes selectable option 876, which can be selected to cancel the sharing process with the "sibling" user and exit card 870.
[0279] exist Figure 8M , receiving user input 803 selecting a selectable option 872 for sharing with the "siblings" user until the end of the day. In some embodiments, in response to the user input, the device 500 initiates a process of sharing the corresponding remote locator object with the "siblings" user until the end of the day. In some embodiments, after sharing the corresponding remote locator object with the "siblings" user, the user interface 830 displays the user 837-2 in the list of users with whom the corresponding remote locator object is shared, such as Figure 8N As shown. In some embodiments, user 837-2 is shown that "sibling" users can locate the item and share a description that expires in 9 hours and 8 minutes. In some embodiments, each list (e.g., users 837-1 and 837-2) can be selected to change the sharing options of the corresponding user (e.g., to remove sharing or set or remove a sharing expiration). It should be understood that the set of users with whom a corresponding remote locator object is shared is specific to that corresponding remote locator object, and each remote locator object maintains its own set of shared users.
[0280] Figures 8O to 8P An exemplary embodiment of an extended split notification is shown. Figure 8O , device 500 is displaying lock screen user interface 800 with notification 802. Figure 8O In some embodiments, contact 803 is detected on the touch screen that selects notification 802. In some embodiments, contact 803 has an intensity above a certain intensity threshold (e.g., a long press, a hard press, etc.). In some embodiments, in response to contact 803 being above a certain intensity threshold (or longer than a threshold time), notification 802 expands to expanded notification 802, such as Figure 8P In some embodiments, the expanded notification 802 includes a map 804. In some embodiments, the map 804 includes an icon 806 indicating the current location of the electronic device 500. In some embodiments, the map 804 includes an icon 808 indicating the location of a corresponding remote locator object (e.g., John's keys).
[0281] In some embodiments, the expanded notification 802 includes selectable options 809-1, 809-2, and 809-3 for performing actions relative to the remote locator object. In some embodiments, the selectable option 809-1 can be selected to locate the remote locator object using an application for tracking and finding items, similar to the above with respect to Figures 8B to 8C In some embodiments, selectable option 809-2 may be selected to cause the corresponding remote locator object to emit an audible sound. In some embodiments, selectable option 809-3 may be selected to add the current location of the corresponding remote locator object to the trusted location list and display user interface 850, similar to the above with respect to Figure 8G The user interface 850 is described. For example, in response to the user selecting selectable option 809-3, the user interface 850 is displayed with a map 854 that automatically (e.g., without user input) translates to a position that causes a pushpin 856 to be placed at the determined location of the key. In some embodiments, the text input field 852 is automatically populated with an address corresponding to the key location (e.g., and therefore the location of the pushpin 856). Thus, the user can quickly add the current location of the remote locator object without having to manually enter the current address of the remote locator object or adjust the map to cause the pushpin 856 to be placed at the location of the remote locator object.
[0282] Figures 9A to 9G is a flow chart illustrating a method 900 of displaying a notification separate from a remote locator object, such as in Figures 8A to 8P As shown in . Method 900 is optionally performed at an electronic device (such as device 100, device 300, device 500), as described above with reference to Figure 1A to Figure 1B 、 Figures 2 to 3 、 Figures 4A to 4B and Figures 5A to 5H Some operations in method 900 may be optionally combined, and / or the order of some operations may be optionally changed.
[0283] As described below, method 900 provides a way to display notifications separate from remote locator objects. This method reduces the cognitive burden on users when interacting with the device user interface of the present disclosure, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, improving the efficiency of user interaction with the user interface saves power and increases the time between battery charges.
[0284] In some embodiments, such as Figure 8A As shown in , an electronic device having one or more wireless antennas, a display device, and one or more input devices (e.g., a mobile device (e.g., a tablet, smartphone, media player, or wearable device) including a touch screen and wireless communication circuitry, or a computer including a keyboard, a mouse, a trackpad, and one or more of a touch screen and wireless communication circuitry), when a first remote locator object (e.g., a remote locator object capable of wirelessly communicating with the electronic device, such as via Bluetooth and / or Wi-Fi. The device is optionally attachable to an item of the user, such as the user's keys, the user's handbag, etc. In some embodiments, the remote locator object is capable of providing location information to one or more electronic devices.) is associated with a user (e.g., the remote locator object is set to be associated with a user account and / or the electronic device of the user and / or the electronic device), obtains (902) information indicating that an amount of separation between a location associated with the user (e.g., as determined based on a device associated with the user, such as a watch, mobile phone, or electronic device) and a location associated with the first remote locator object has increased to exceed a first separation threshold, such as in Figure 8A In some embodiments, the remote locator object may be a location associated with the user and a distance threshold value (e.g., 50 feet, 200 feet, 500 feet, 1 / 2 mile) between the location associated with the user and the location associated with the remote locator object. In some embodiments, the remote locator object may be a location associated with the user and a distance threshold value (e.g., 50 feet, 200 feet, 500 feet, 1 / 2 mile). ...
[0285] In some embodiments, a remote locator object can transmit location information to one or more electronic devices (associated with or not associated with an associated user). In some embodiments, the location information is transmitted to a server that is tracking the location of a first remote locator object. In some embodiments, a remote locator object can transmit identification information (e.g., a serial number of the remote locator object, an identifier of the user associated with the remote locator object, etc.) to an electronic device (associated with or not associated with the user), the electronic device having one or more sensors (e.g., a GPS sensor) for determining location. In some embodiments, a server can receive information about the location (or approximate location) of the remote locator object by using the identification information and / or the one or more sensors in the electronic device that received the identification information from the remote locator object (e.g., the electronic device that received the identification information transmits the identification information and / or the electronic device's own location information to the server). In some embodiments, the information is obtained by the electronic device determining that the first remote locator object is greater than a threshold distance from the electronic device using direct wireless communication technology between the electronic device and the first remote locator object (e.g., rather than communicating with or through a server).
[0286] In some embodiments, in response to obtaining information indicating that an amount of separation between a location associated with the user and a location associated with the first remote locator object has increased to exceed a first separation threshold, the electronic device generates (904) a separation alert at the electronic device indicating that the first remote locator object has separated from the user, such as at Figure 8A In some embodiments, the notification or other alert includes an identifier associated with the remote locator object, such as "keys" or "handbag," and indicates that the user's "keys" or "handbag" are no longer with the user.
[0287] The above-described method of alerting the user of separation from the remote locator object (e.g., by providing a separation alert when determining that the remote locator object is greater than a threshold distance from the electronic device) provides the user with a notification that the remote locator object is no longer with the user (e.g., by obtaining information that the distance between the electronic device and the remote locator object is greater than the threshold distance and providing the separation alert to the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by quickly providing the user with a warning that the user has separated from the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0288] In some embodiments, the split alert includes a visual element (906) displayed via a display device (e.g., generating the split alert includes displaying a visual alert, such as a notification on the electronic device), and while displaying the split alert, the electronic device detects (908) one or more input sequences including (beginning with) an input directed to the split alert, such as in Figure 8A , as shown in (e.g., receiving contact on the detach alert for longer than a threshold amount of time (e.g., a long press) or contact with an intensity greater than a threshold intensity (e.g., a hard press) causes an expanded detach alert (e.g., an expanded notification) to be displayed. In some embodiments, the expanded detach alert displays a map having a determined location of the remote locator object and one or more options associated with the remote locator object. In some embodiments, the one or more options include an option to mark the current location of the remote locator object as a trusted location, such that the detach alert is not displayed when the remote locator object is separated from the user and is located at a trusted location.
[0289] In some embodiments, in response to detecting one or more input sequences (e.g., user input including selecting a selectable option to mark the current location of the remote locator object as a trusted location), the electronic device marks (910) the location associated with the first remote locator object as a safe zone for the remote locator object, wherein the safe zone for the respective remote locator object refers to an area in which the device does not generate a separation alarm when the amount of separation between the location associated with the user and the location associated with the respective remote locator object is greater than (increases to exceed) a first separation threshold while the respective remote locator object remains within the safe zone, such as in Figure 8P , as shown in (e.g., adding the current location of the remote locator object as a safety zone (e.g., a trusted location)). In some embodiments, when an object within the radius of the safety zone is determined to be separated from the user, the object does not generate a separation alarm. In some embodiments, the radius of the safety zone is adjustable, and each trusted location has its own set radius. In some embodiments, each remote locator object and / or device being tracked has its own set of trusted locations and / or safe zone groups. In some embodiments, the safe zone is a trusted location or a trusted person. In some embodiments, when the remote locator object is determined to have a trusted location (e.g., a location following the trusted person or within a specific threshold distance of the trusted person, such as 1 foot, 2 feet, 3 feet), then a separation alarm is not generated.
[0290] The above-mentioned manner of setting a safety zone for a remote locator object (for example, by providing an optional option on a separate alarm to add the current location of the remote locator object as a safety zone) provides the user with a simple method of adding the current location of the remote locator object as a safety zone (for example, by providing an optional option that can be selected so that the current location of the remote locator object that triggers the separate alarm is added as a safety zone in which the separate alarm is not triggered), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by providing the user with a shortcut method of adding a location as a safety zone without requiring the user to perform additional input or navigate to a separate user interface and / or enter an address or manually set the location as a safety zone), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0291] In some embodiments, the one or more input sequences include user input (912) that sets the size and / or shape of the safety zone, such as in Figures 8G to 8H In some embodiments, the user is presented with one or more predefined radii. In some embodiments, the user can provide a custom radius or boundary for the safe location.
[0292] The above-described manner of setting a safety zone for a remote locator object (e.g., by receiving user input for setting the size and / or shape of the safety zone) allows the safety zone area to be set quickly and efficiently, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., without requiring the user to potentially add multiple safety zones to cover the intended area, or without generating excessive separation alarms when the remote locator object is in a location that the user deems safe but cannot be covered with a fixed safety zone size and shape), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0293] In some embodiments, marking a location associated with a first remote locator object as a safety zone for the remote locator object includes marking a person other than the user as a safety person, wherein a separation alarm (958) is not generated when an amount of separation between the location associated with the user and a location associated with the respective remote locator object is greater than a first separation threshold while the respective remote locator object remains within a threshold distance of the safety person, such as in Figure 8H(e.g., the safe zone can be a trusted person). In some embodiments, when the remote locator object is determined to be within a certain threshold distance (e.g., 1 foot, 2 feet, 3 feet) of a trusted person, a separation alarm is not generated. For example, a user can set a spouse as a trusted person for a remote locator object attached to the user's keys, so that when the spouse removes the keys (and the remote locator object), a separation alarm is not generated, even if the distance between the remote locator object and the user is greater than the threshold distance.
[0294] The above-mentioned manner of setting a safety zone for a remote locator object (e.g., by setting a trusted person as the safety zone for the remote locator object) avoids the need to set multiple safety zones when the remote locator object is with a trusted person (e.g., by setting a person as a safety zone so that no separation alarm is generated when the remote locator object is with the person), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a method for setting a portable safety zone without requiring the user to continuously update the safety zone for the remote locator object or ignore the separation alarm), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0295] In some embodiments, a user is associated with a plurality of remote locator objects, including a second remote locator object (914), such as in Figure 8D , as shown in (e.g., the user has associated and / or paired the multiple remote locator objects with the electronic device and / or the user's user account, or is otherwise able to track the multiple remote locator objects (e.g., another user has optionally shared the locations of the remote locator objects with the user)). In some embodiments, when the corresponding area is set as a safety zone for the first remote locator object but not the second remote locator object and the first remote locator object and the second remote locator object are associated with corresponding locations within the safety zone (916) (e.g., the first remote locator object and the second remote locator object are located at the corresponding locations. In some embodiments, the first remote locator object has a corresponding location marked as a safety zone (e.g., or the corresponding location is within the radius of the corresponding safety zone). In some embodiments, the second remote locator object does not have a corresponding location marked as a safety zone), the electronic device obtains information indicating that the amount of separation between the location associated with the user (e.g., as determined based on a device associated with the user, such as a watch or mobile phone) and the location associated with the first remote locator object has increased to exceed a first separation threshold (918), such as in Figure 8AIn some embodiments, the information is obtained from a server that is tracking the location of the user relative to the location of the first remote locator object. In some embodiments, the information is obtained by the electronic device determining that the distance between the first remote locator object and the electronic device is greater than the threshold distance.
[0296] In some embodiments, the electronic device obtains information indicating that an amount of separation between a location associated with the user (e.g., as determined based on a device associated with the user, such as a watch or mobile phone) and a location associated with a second remote locator object has increased to exceed a first separation threshold (920), such as at Figure 8A In some embodiments, the information is obtained from a server that is tracking the location of the user relative to the location of the first remote locator object. In some embodiments, the information is obtained by the electronic device determining that the distance between the first remote locator object and the electronic device is greater than the threshold distance.
[0297] In some embodiments, in response to obtaining information indicating that an amount of separation between a location associated with the user and a location associated with a first remote locator object has increased to exceed a first separation threshold and obtaining information indicating that an amount of separation between a location associated with the user and a location associated with a second remote locator object has increased to exceed the first separation threshold, the electronic device generates (922) at the electronic device a separation alarm indicating that the second remote locator object has separated from the user without generating a separation alarm indicating that the first remote locator object has separated from the user, such as in Figure 8A , as shown in (e.g., setting a secure location for a first remote locator object without setting a secure location for a second remote locator object). In some embodiments, the secure location group for the first remote locator object is different from the secure location group for the second remote locator object. In some embodiments, each remote locator object has its own dedicated secure location group. In some embodiments, the secure location group for each remote locator object is global, such that each user with access rights to the corresponding remote locator object (e.g., can view the location of the remote locator object due to association and / or sharing) has the same global secure location group. In some embodiments, each user has their own secure location group for each remote locator object (e.g., each user can set a secure location for the corresponding remote locator object without affecting the secure locations of other users).
[0298] The above-described manner of managing safety zones for remote locator objects (e.g., by maintaining a different safety zone group for each remote locator object and generating a separate alarm when the location of the remote locator object is not within the specified safety zone for the given remote locator object) provides a method for the user to set different safety zones for different remote locator objects (e.g., by maintaining a safety zone group for each remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by allowing the user to set different safety zones for different remote locator objects so that separate alarms are not generated unnecessarily), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0299] In some embodiments, the separate alert includes a map having a representation of the location associated with the first remote locator object (924), such as in Figure 8P detach alert). In some embodiments, the one or more criteria are met when the input is a contact that is longer than a threshold time (e.g., 0.1 seconds, 0.3 seconds, 0.5 seconds) or a contact that is greater than a particular threshold intensity, or any combination thereof. In some embodiments, the expanded detach alert displays a map with the determined location of the remote locator object. In some embodiments, the expanded detach alert includes an option to mark the current location of the remote locator object as a trusted location.
[0300] The above-mentioned manner of setting a safety zone for a remote locator object (for example, by displaying a map including a representation of the current location of the remote locator object) provides the user with the ability to view and confirm the location where the safety zone is to be set, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by displaying a map with an indicator of the current location of the remote locator object without requiring the user to navigate to a separate user interface to confirm the current location of the remote locator object or to verify the location of the safety zone and / or the remote locator object after adding the safety zone), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0301] In some embodiments, the separate alert includes an indication of the time when the location associated with the first remote locator object was determined, and an indication of the distance between the location associated with the first remote locator object and the location associated with the user (926), such as in Figure 8A, as shown in the (e.g., a text indicator of the distance between the alert display electronic device and the remote locator object (e.g., "2 miles away") and / or a text indicator of the most recent update of the remote locator object's location (e.g., "just detected" or "detected 5 minutes ago"). In some embodiments, the text indicator updates as the distance changes.
[0302] The above-described manner of displaying separate alerts (e.g., by displaying the distance from the user to the remote locator object and the time when the location was last determined) provides a way for the user to quickly view the distance to the remote locator object and the time when the remote locator object was last detected at the location, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by notifying the user of the distance to the remote locator object and the time when the location was last determined), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0303] In some embodiments, the electronic device obtains information indicating that the amount of separation between the location associated with the user and the location associated with the first remote locator object is less than a corresponding separation threshold (928), such as in Figure 8A In some embodiments, in response to obtaining information indicating that the amount of separation between the location associated with the user and the location associated with the first remote locator object is less than the corresponding separation threshold, the electronic device stops presenting the separation alert (930), such as in Figure 8A ) (e.g., stopping displaying the separation alert, stopping outputting a tactile or audio output associated with the separation alert, etc.) In some embodiments, if the amount of separation between the location associated with the user and the location associated with the first remote locator object increases, the device will again present the separation alert.
[0304] The manner in which the separation alert is displayed (e.g., by displaying the separation alert when the remote locator object is greater than a threshold distance from the user, and by removing the separation alert when the remote locator object is less than a corresponding separation threshold distance from the user) ensures that the separation alert is displayed only when applicable (e.g., by ceasing to display the separation alert upon determining that the remote locator object is within a corresponding threshold distance from the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by ceasing to display the separation alert upon determining that the remote locator object is currently within a specific threshold distance from the user, without requiring the user to access the separation alert to determine whether the remote locator object is indeed separated from the user), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0305] In some embodiments, the corresponding separation threshold is less than the first separation threshold (932), such as in Figure 8A (e.g., 2 feet, 5 feet, 10 feet, etc., to avoid repeatedly presenting and stopping presenting the separation alert when the user is exactly at the first separation threshold).
[0306] The above-mentioned manner of displaying the separation alarm (for example, by stopping displaying the separation alarm when the remote locator object is less than the corresponding separation threshold from the user and the corresponding separation threshold is less than the separation threshold for generating the separation alarm) prevents the separation alarm from being excessively displayed and removed (for example, by using hysteresis for the notification display time and the notification removal time), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by preventing the separation alarm from being continuously displayed and removed when the user is at or near the threshold distance for generating the separation alarm), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0307] In some embodiments, the electronic device receives (934) a request at the electronic device to view location information for multiple physical objects (e.g., selecting a separate alert, such as a tap gesture on the separate alert or a selectable affordance within the separate alert), such as in Figure 8D In some embodiments, in response to detecting a request to view location information of multiple physical objects, the electronic device displays (936) a status user interface that includes location information of multiple physical objects, the multiple physical objects including a first remote locator object, such as a first remote locator object. Figure 8DIn some embodiments, the application for finding and / or locating an object is set to locate and / or track the position of a remote locator object. In some embodiments, the application for finding and / or locating an object is set to locate and / or track multiple objects, such as remote locator objects and / or other electronic devices. In some embodiments, in response to user input, the electronic device displays a user interface of the application, which includes a map and / or a list of objects being tracked. In some embodiments, the map and / or the list of objects being tracked is displayed with an indication of the location of the corresponding object (e.g., a text label and / or location on a map), including whether the corresponding object is with the user or near a landmark (e.g., an office, a home, another user, etc.).
[0308] The above-mentioned manner of displaying the location information of multiple objects (for example, by displaying a user interface with the location information of multiple objects being tracked by the device) provides the user with the ability to view multiple objects being tracked in a single user interface, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by providing a single user interface in which the user can see the location and status of all objects being tracked by the electronic device without the user having to navigate to a separate user interface to view the location information of each object being tracked), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0309] In some embodiments, one or more representations of the physical object are labeled with an indication that the physical object is located at a first location that has been identified by a descriptor selected by the user (938), such as in Figure 8D In some embodiments, the indication is a text indicator indicating that the object is "near home" or "near the office." In some embodiments, the indication is a corresponding icon on the map showing that the corresponding object is near a particular landmark (e.g., the map displays an indicator for the location of "home" or "office").
[0310] The above-mentioned manner of indicating the location of the tracked object (for example, by displaying a descriptive label of the location of the tracked object) provides the user with a convenient label of the location of the tracked object, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by automatically marking the location of the tracked object with a descriptor selected by the user without requiring the user to separately determine whether the location of the object corresponds to a known location), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0311] In some embodiments, one or more representations of the physical object are marked with an indication that the physical object is located at a predefined location relative to a location associated with the user (940), such as in Figure 8D (e.g., if a remote locator object is determined to be within a certain distance (e.g., 1 foot, 3 feet, 5 feet, etc.) from the user, a "with me" indicator is displayed).
[0312] The above-mentioned manner of indicating the location of the tracked object (for example, by displaying a descriptive label that the object is with the user if the location is within a threshold distance from the user) provides the user with a description that allows them to quickly view whether the object is with the user (for example, by displaying a label that the object is with the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by providing a simple descriptive label without requiring the user to separately determine whether the location of the object is exactly where the user is), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0313] In some embodiments, while displaying the status user interface, the electronic device detects (942) one or more input sequences including selecting a selectable user interface object corresponding to a request to add a safety zone, such as in Figure 8F , as shown in (e.g., the user navigates to an area of the status user interface for managing trusted locations (e.g., safe zones) for remote locator objects and / or selects an optional option for adding a trusted location). In some embodiments, in response to detecting one or more input sequences including selection of an optional user interface object corresponding to a request to add a safe zone, a safe zone is added (944) at the location selected by the user, wherein the safe zone for the corresponding remote locator object refers to an area in which the device does not generate a separation alarm when the amount of separation between the location associated with the user and the location associated with the corresponding remote locator object is greater than a first separation threshold while the corresponding remote locator object remains within the safe zone, such as in Figure 8I(e.g., allowing users to add new security zones or trusted locations).
[0314] In some embodiments, the electronic device displays a user interface for managing safety zones in response to user input to manage the safety zones of a remote locator object. In some embodiments, one or more previously set safety zones are presented to the user, allowing the user to toggle these previously set safety zones on (so that the separation alarm will not be triggered) or off (so that the separation alarm will be triggered). In some embodiments, the user interface for managing safety zones includes an option for selecting a new safety zone. In some embodiments, selecting the optional option for adding a new safety zone displays the user interface for adding the new safety zone. In some embodiments, the user interface for adding a new safety zone includes a map and / or a text field. In some embodiments, the user can move the map around and select a location on the map (e.g., move a pin around or place a pin on the map) as a safe location. In some embodiments, the user can type an address into the text field to select the address as the safe location. In some embodiments, as the user moves the map around, the text field is updated with the current address of the pin. In some embodiments, when the user types an address into the text field, the map is updated to display the location of the address.
[0315] The above-described manner of setting a safety zone for a remote locator object (e.g., by adding a location as a safety zone in which a separation alarm is not generated) provides the user with the ability to set a specific location as where the remote locator object is expected to reside and prevent the separation alarm from being displayed unnecessarily (e.g., by disabling the separation alarm when it is determined that the remote locator object is within the safety zone), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a method for suppressing the separation alarm without requiring the user to receive the separation alarm and interact with the separation alarm to determine that the remote locator object is in a safe location), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0316] In some embodiments, the one or more input sequences that include selecting a selectable user interface object corresponding to a request to add a safety zone include selecting a corresponding size for the safety zone from a plurality of predefined sizes (946), such as in Figure 8GIn some embodiments, the user can select a radius for the safety zone around the location the user wants to add. In some embodiments, the map user interface for adding a new safety zone displays an indication of the radius or size of the safety zone (e.g., a circular area around a center point).
[0317] The above-described manner of setting a safety zone for a remote locator object (e.g., by receiving a user selection of a size for the safety zone) allows the safety zone to be set quickly and efficiently, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a simple method for setting the size of the safety zone without requiring the user to add multiple safety zones to cover the desired safety zone size, or without requiring the user to perform additional user input to provide a custom size each time a new safety zone is added), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0318] In some embodiments, the sequence of one or more inputs that includes selecting a selectable user interface object corresponding to a request to add a safety zone includes input corresponding to a dynamically selected size of the safety zone (948), such as in Figure 8G In some embodiments, the user can adjust the size of the circular area displayed on the map in the user interface for adding a new safe zone. In some embodiments, the user can provide a custom radius or area for the safe zone (e.g., by entering a specific radius rather than selecting a predefined size or manually adjusting the size on the map).
[0319] The above-described manner of setting a safety zone for a remote locator object (e.g., by receiving user input for manually adjusting the size of the safety zone) provides the user with fine-grained control over the size of the safety zone, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a simple method for modifying the size of the safety zone to achieve a desired custom safety zone size), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0320] In some embodiments, while displaying the status user interface, the electronic device detects (950) one or more input sequences including selecting selectable user interface objects corresponding to a request to share a location of a corresponding physical object in a plurality of physical objects with a corresponding user other than a user of the device, such as in Figures 8K to 8L, as shown in (e.g., the user navigates to an area of the state user interface for managing users with whom the remote locator object is shared and / or selects an optional option for adding a shared user). In some embodiments, in response to detecting one or more input sequences including a selection of an optional user interface object corresponding to a request to share the location of one of the physical objects with another user, the electronic device enables (952) the corresponding user to access a plurality of features corresponding to the location of the corresponding physical object, the plurality of features including one or more of: determining the location of the corresponding physical object; receiving a separation alert when the amount of separation between the location of the corresponding physical object and the location of the other user exceeds a corresponding separation threshold; and selecting an identifier associated with the physical object, such as in Figures 8M to 8N (e.g., sharing a remote locator object with another user).
[0321] In some embodiments, one or more previously shared users are presented to the user, enabling the user to toggle these previously shared users on or off. In some embodiments, a user interface for managing shared users includes an option for selecting a new shared user. In some embodiments, sharing a remote locator object with another user provides the other user with the ability to track and / or view the location of the remote locator object. In some embodiments, the other user can access all or a subset of the features of the remote locator object that are available to the user (e.g., owner) of the remote locator object. For example, in some embodiments, a shared user can receive separate alerts for a remote locator object and / or manage a safe zone for the remote locator object.
[0322] The above-described manner of sharing a remote locator object with another user (e.g., by sharing a remote locator object with another user, including the ability to track the location of the remote locator object) provides the user with the ability to share features of the corresponding remote locator object with other users (e.g., by automatically providing the receiving user with multiple features that are also available to the owner of the remote locator object, enabling multiple users to track the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a method for sharing a remote locator object with other users without having to use multiple remote locator objects, each associated with a different user, to achieve the same functionality), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0323] In some embodiments, the one or more input sequences including selecting a selectable user interface object corresponding to a request to share the location of one of the physical objects with another user include allowing sharing for a limited period of time (954), such as during Figure 8M In some embodiments, when a user selects a user with whom to share a remote locator object, the user is presented with an option to select a duration for which to share the remote locator object. In some embodiments, the user is provided with a predetermined duration, such as the remainder of the day or indefinitely. In some embodiments, the user is able to provide a custom duration.
[0324] The above-mentioned manner of sharing a remote locator object with another user (e.g., by sharing the remote locator object with another user for a duration specified by the user) avoids the need for additional input from the device to turn off sharing, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a method for setting a duration for sharing a remote locator object with other users without requiring the user to navigate to a separate user interface and / or remember to remove sharing with other users after a desired amount of time), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0325] In some embodiments, while the location of a first remote locator object is being shared with a second user (956), the electronic device obtains (956) information indicating that an amount of separation between a location associated with the second user (e.g., as determined based on a device associated with the user, such as a watch or mobile phone) and a location associated with the first remote locator object has increased to exceed a first separation threshold, such as when the first remote locator object is associated with the second user. Figure 8A In some embodiments, the information is obtained by an electronic device (the electronic device of the second electronic user) determining that the first remote locator object is greater than a threshold distance from the electronic device.
[0326] In some embodiments, in response to obtaining information indicating that an amount of separation between a location associated with a user and a location associated with a first remote locator object has increased to exceed a first separation threshold, the electronic device generates (956) a separation alert at the electronic device indicating that the first remote locator object has separated from the second user, such as in Figure 8A, as shown in (e.g., instead of or in addition to generating a separation alert at a device associated with the first user, generating a separation alert at a device associated with the second user). In some embodiments, when a remote locator object is associated with multiple users, a separation alert is not generated as long as the remote locator object is within a first separation threshold for at least one of the multiple users. For example, the separation alert received by each respective user is specific to the occurrence of separation between the remote locator object and the respective user. In some embodiments, each shared user receives a separation alert whenever a first user (e.g., owner) separates from the remote locator object.
[0327] The above-mentioned manner of sharing a remote locator object with another user (e.g., by generating a separation alert for the shared user) provides the shared user with an alert that he or she has separated from the remote locator object (e.g., by determining whether the corresponding shared user is separated from the remote locator object and displaying the separation alert to the corresponding shared user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a method in which the shared user can receive the separation alert without requiring the owner of the device to separately notify the shared user of the separation or track the location of the remote locator object to determine whether it is still with the shared user), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0328] It should be understood that Figures 9A to 9G The particular order in which the operations are described in the description is merely exemplary and is not intended to indicate that the order is the only order in which the operations may be performed. A person of ordinary skill in the art will recognize many ways to reorder the operations described herein. In addition, it should be noted that the details of other processes described herein with respect to other methods described herein (e.g., methods 700, 1100, 1300, and 1400) also apply in a similar manner to the details of the processes described above with respect to Figures 9A to 9G Method 900 is described. For example, presenting a separate notification as described above with reference to method 900 optionally includes one or more of the characteristics of initializing a remote locator object, presenting a tracking notification, and finding a remote locator object, as described herein with reference to other methods described herein (e.g., methods 700, 1100, 1300, and 1400). For the sake of brevity, these details are not repeated here.
[0329] The operations in the above information processing method are optionally implemented by running one or more functional modules in an information processing device, such as a general-purpose processor (e.g., a processor in combination with a processor). Figure 1A to Figure 1B 、 Figure 3 、 Figures 5A to 5HIn addition, the above reference Figures 9A to 9G The described operations are optionally performed by Figure 1A to Figure 1B . For example, display operation 936 and detection operations 908, 942, and 950 are optionally implemented by event classifier 170, event identifier 180, and event handler 190. Event monitor 171 in event classifier 170 detects contact on touch screen 504, and event distributor module 174 transmits event information to application 136-1. The corresponding event identifier 180 of application 136-1 compares the event information with the corresponding event definition 186 and determines whether the first contact at the first position on the touch screen corresponds to a predefined event or sub-event, such as the selection of an object on the user interface. When the corresponding predefined event or sub-event is detected, event identifier 180 activates the event handler 190 associated with the detection of the event or sub-event. Event handler 190 optionally utilizes or calls data updater 176 or object updater 177 to update the application internal state 192. In some embodiments, the event handler 190 accesses the corresponding GUI updater 178 to update the content displayed by the application. Similarly, those skilled in the art will clearly know how to update the content displayed by the application based on the GUI updater 178. Figure 1A to Figure 1B The components depicted in the figure implement other processes.
[0330] Notification that it is being tracked by a remote locator object
[0331] Users interact with electronic devices in a variety of ways. In some embodiments, a remote locator object can report its location to the electronic device. The embodiments described below provide ways for an electronic device to provide an alert that an unknown remote locator object is tracking the user's location, thereby enhancing user interaction with the electronic device. Enhanced interaction with the device reduces the amount of time required for the user to perform actions, thereby reducing the device's power usage and extending the battery life of battery-powered devices. It should be understood that people use devices. When someone uses a device, that person is optionally referred to as a user of the device.
[0332] Figures 10A to 10R An exemplary manner in which an electronic device displays a notification that it is being tracked by an unknown remote locator object according to some embodiments of the present disclosure is shown. The embodiments in these figures are used to illustrate the process described below, including reference to Figures 11A to 11E Describing the process
[0333] Figures 10A to 10R An electronic device 500 is shown displaying a notification that it is being tracked by an unknown remote locator object. Figure 10A An exemplary device 500 is shown including a touch screen 504. Figure 10AAs shown, the electronic device 500 presents a lock screen user interface 1000 (e.g., a wake screen user interface). In some embodiments, the lock screen user interface 1000 is a user interface that is displayed when the electronic device 500 is awakened (e.g., from a sleep or locked state). In some embodiments, the lock screen user interface 1000 includes a notification 1002. In some embodiments, the notification 1002 notifies the user that an unknown remote locator object (e.g., optionally, a "locator") is tracking (e.g., following) the user's location. In some embodiments, the notification 1002 hides the personal information of the owner of the remote locator object, such as the label of the remote locator object and the name of the owner. In some embodiments, the notification 1002 indicates to the user that the owner of the unknown remote locator object can see the location of the remote locator object.
[0334] In some embodiments, when the electronic device 500 (e.g., or a server) determines that the location of a remote locator object has followed the location of a user, a notification 1002 is displayed. In some embodiments, if the location of the remote locator object is the same as the user's location (or within a threshold distance, such as 5 feet, 10 feet, 20 feet) for a threshold amount of time (e.g., 30 minutes, 1 hour, 2 hours), the remote locator object is determined to be following the user's location. In some embodiments, if the location of the remote locator object is the same as the user's location after moving a threshold distance (e.g., 1 mile, 2 miles, 3 miles), the remote locator object is determined to be following the user's location. In some embodiments, if the location of the remote locator object is within a threshold distance (e.g., 2 feet, 3 feet, 4 feet, 10 feet) from the user, the remote locator object is determined to be following the user's location. In some embodiments, if the remote locator object is not associated with the user / user account of the device 500 and is not shared with the user / user account of the device 500 (e.g., associated with another user account), the remote locator object is determined to be unknown. In some embodiments, remote locator objects that have been previously shared with a user but are not currently shared with the user are also considered unknown remote locator objects that will trigger a tracking alarm. In some embodiments, any combination of the above can be a factor or requirement for determining whether a remote locator object is following a user.
[0335] It should be understood that although notification 1002 is shown as being displayed on lock screen user interface 1000, notification 1002 can be displayed on other user interfaces (e.g., in all cases where other notifications can be displayed).
[0336] exist Figure 10AIn some embodiments, in response to detecting the user input, the electronic device 500 displays a user interface 1010, such as Figure 10B In some embodiments, user interface 1010 is a card user interface that is overlaid on top of another user interface (e.g., such as a home screen user interface). In some embodiments, user interface 1010 includes a map 1012 that indicates the user's current location (e.g., and therefore the current location of the remote locator object that is tracking the user). In some embodiments, user interface 1010 includes selectable options 1014-1 to 1014-3 for performing functions with respect to the remote locator object that is tracking the user. In some embodiments, selectable option 1014-1 may be selected to allow the unknown remote locator object to track the user for the remainder of the day (e.g., and thereby suppress future tracking alerts for the corresponding unknown remote locator object for the remainder of the day). In some embodiments, selectable option 1014-2 may be selected to allow the unknown remote locator object to track the user indefinitely (e.g., and thereby suppress all future tracking alerts for the corresponding unknown remote locator object). In some embodiments, selectable option 1014-3 may be selected to provide more information about the remote locator object.
[0337] exist Figure 10B , receiving user input 1003 selecting selectable option 1014-1. In some embodiments, in response to the user input, the device 500 initiates a process of allowing the unknown remote locator to track the user's location for the remainder of the day. In some embodiments, when the unknown remote locator is allowed to track the user's location, tracking alerts (e.g., such as notification 1002) are no longer displayed on the device 500 for the remainder of the day. In some embodiments, after being allowed to be tracked by the unknown remote locator object, the unknown remote locator object is added to the user's application for tracking and finding items and is optionally displayed on the user interface 1020 as an item being tracked by the device 500, such as in Figure 10C. In some embodiments, the user interface 1020 is similar to the user interface 670. In some embodiments, the user interface 1020 lists an item 1026-1 corresponding to an unknown remote locator object. In some embodiments, the item 1026-1 indicates the length of time that the tracking alarm is suppressed (e.g., for another 8 hours and 13 minutes). In some embodiments, the item 1026-1 does not display the label of the remote locator object or the name of the owner to protect the privacy of the owner of the remote locator object (e.g., a user account associated with the remote locator object). In some embodiments, while tracking of an unknown remote locator object is allowed, if the unknown remote locator object is greater than a threshold distance (e.g., 10 feet, 30 feet, 100 feet) from the user's location, the user is able to receive a separate alarm, similar to the above with respect to Figures 8A to 8P The separate alarm 802.
[0338] exist Figure 10D , receiving user input 1003 selecting selectable option 1014-2 in user interface 1010. In some embodiments, in response to the user input, device 500 displays user interface 1030, such as Figure 10E As shown. In some embodiments, to allow indefinite tracking, the device 500 requires the user to bring the device 500 within a threshold distance (e.g., 1 inch, 3 inches, 5 inches) of the unknown remote locator object. In some embodiments, this ensures that the user has discovered the unknown remote locator object and / or that the user knows exactly which items are tracking the user's location (e.g., and does not mistakenly approve an incorrect object). In some embodiments, the user interface 1030 instructs the user to tap the unknown remote locator object using the device 500 (e.g., bring the device 500 within a threshold distance of the unknown remote locator object). In some embodiments, the user interface 1030 includes an illustration 1032 (e.g., a still image, a short video, an animation, etc.) of tapping the remote locator object with the device 500. In some embodiments, the user interface 1030 includes a selectable option 1034 that can be selected to cause the unknown remote locator object to emit an audible sound.
[0339] exist Figure 10F, the user brings the device 500 within the aforementioned threshold distance from the unknown remote locator object 1000. In some embodiments, in response to bringing the device 500 within the aforementioned threshold distance from the unknown remote locator object 1000, communication is established between the device 500 and the unknown remote locator object 1000. In some embodiments, the device 500 confirms that the unknown remote locator object 1000 is the unknown remote locator object that is tracking the user's location. In some embodiments, in response to bringing the device 500 within the aforementioned threshold distance from the unknown remote locator object 1000, the device 500 initiates a process of allowing the unknown remote locator object to track the user's location for the remainder of the day (e.g., or optionally until the user removes authorization). In some embodiments, after the unknown remote locator object is allowed, the unknown remote locator object is added to the user interface 1020, as shown in FIG. Figure 10G As shown (e.g., similar to the above with respect to Figure 10C In some embodiments, item 1026-1 is displayed with an indicator indicating that the remote locator object is to be ignored indefinitely. In some embodiments, item 1026-1 can be selected to change the user's permission settings (e.g., such as setting a time limit for ignoring the remote locator object or removing authorization).
[0340] exist Figure 10H , receiving user input 1003 selecting selectable option 1014-3 in user interface 1010. In some embodiments, in response to the user input, device 500 displays user interface 1040, such as Figure 10I In some embodiments, user interface 1040 displays a representation 1042 of a remote locator object that is tracking the user. In some embodiments, representation 1042 is an icon of the remote locator object. In some embodiments, representation 1042 is an interactive model of the remote locator object. For example, in some embodiments, user input on representation 1042 optionally causes representation 1042 to rotate or turn based on the user input. In some embodiments, representation 1042 itself (e.g., without user participation) rotates, turns, or otherwise animates.
[0341] In some embodiments, the user interface 1040 includes selectable options 1044-1, 1044-2, and 1044-3. In some embodiments, selectable option 1044-1 may be selected to cause the remote locator object to emit an audible sound, thereby enabling the user to find the remote locator object. In some embodiments, selectable option 1044-2 may be selected to allow the user to ignore the remote locator object (e.g., in the context of the preceding text). Figures 10B to 10GIn some embodiments, selectable option 1044-3 may be selected to display instructions for disabling the remote locator object. For example, Figure 10J , user input 1003 is received selecting selectable option 1044-3. In some embodiments, in response to the user input, the device 500 displays a user interface 1050. In some embodiments, the user interface 1050 displays a representation 1052 of the remote locator object. In some embodiments, the representation 1052 is an animation showing steps for disassembling and disabling the remote locator object (e.g., optionally removing a battery in the remote locator object), such as Figures 10K to 10M Selecting selectable option 1054 causes the device 500 to cease displaying the user interface 1050 and not allow the remote locator object to track the user's location.
[0342] Figures 10N to 10P An exemplary embodiment of displaying a tracking notification for an unknown remote locator object that has been marked as lost by its owner is shown. Figure 10N In some embodiments, notification 1002 is displayed on the lock screen user interface 1000. In some embodiments, notification 1002 indicates that the lost locator is following the user's location. In some embodiments, notification 1002 is displayed on the device 500 in response to determining that the location of the lost remote locator object has been following the user's location. Thus, in some embodiments, notification 1002 for the lost remote locator object is based on the above-mentioned Figure 10A The same factors and / or requirements discussed for triggering notification 1002 are triggered (eg, except that notification 1002 indicates that the remote locator object is lost).
[0343] exist Figure 10N In some embodiments, the device 500 displays a user interface 1060 in response to the user input 1003 selecting the notification 1002. Figure 10O In some embodiments, the user interface 1060 displays a representation 1062 of the remote locator object (e.g., similar to representation 1042). In some embodiments, the user interface 1060 includes selectable options 1064-1, 1064-2, and 1064-3. In some embodiments, selectable option 1064-1 may be selected to display a message from the owner of the lost remote locator object. In some embodiments, selectable option 1064-2 may be selected to cause the lost remote locator object to emit an audible sound. In some embodiments, selectable option 1064-3 may be selected to display instructions for disabling the remote locator object (e.g., similar to the instructions described above with respect to Figures 10K to 10M The user interface 1050).
[0344] exist Figure 10OIn some embodiments, user input 1003 selecting selectable option 1064-1 is received. In some embodiments, in response to the user input, the device 500 updates the user interface 1060 to display a message 1066 provided by the owner of the remote locator object. In some embodiments, selectable option 1064-1 is updated from being selectable to display a message from the owner to being selectable to initiate a process of contacting the owner of the lost remote locator object. In some embodiments, the process of contacting the owner of the lost remote locator object includes displaying one or more selectable options for contacting the owner using one or more communication media (e.g., call, text, email, etc.). In some embodiments, the privacy of the owner of the remote locator object is maintained (e.g., the owner's name and contact information are not displayed to the user) unless the owner chooses to display personal information (e.g., such as by including personal information in message 1066).
[0345] Figures 10Q to 10R An exemplary embodiment is shown in which the device 500 is placed within a threshold distance (e.g., NFC communication distance, such as 1 inch, 3 inches, 5 inches) of a remote locator object 1000 that has been marked as lost (but the user's location has not been tracked). Figure 10Q Device 500 and remote locator object 1000 are shown. Figure 10Q In , the remote locator object 1000 has been marked as lost by the owner of the remote locator object 1000. Figure 10RIn the example embodiment, the user brings the device 500 within a threshold distance of the remote locator object 1000. In some embodiments, in response to the device 500 being placed within the threshold distance of the remote locator object 1000, the device 500 communicates with the remote locator object 1000 and displays a user interface 1080 overlaid on the user interface previously displayed on the device 500 (e.g., user interface 1070). In some embodiments, the user interface 1080 is a "quick" control sheet that displays information about the remote locator object 1000 and one or more selectable options for contacting the owner of the remote locator object 1000 (or a user account associated with the remote locator object 1000). In some embodiments, the user interface 1080 displays a message 1082 from the owner of the remote locator object 1000. In some embodiments, the user interface 1080 includes selectable options 1084-1, 1084-2, and 1084-3. In some embodiments, the selectable option 1084-1 can be selected to send the location of the remote locator object 1000 to the owner. In some embodiments, selectable option 1084-2 may be selected to send a text message to the owner. In some embodiments, selectable option 1084-3 may be selected to call the owner. In some embodiments, similar to the above, the privacy of the owner of the remote locator object is maintained (e.g., the owner's name and contact information are not displayed to the user) unless the owner chooses to display personal information (e.g., such as by including personal information in message 1082).
[0346] Figures 11A to 11E is a flow chart illustrating a method 700 of displaying a notification that an unknown remote locator object is being tracked, such as in Figures 10A to 10R As shown in . Method 1100 is optionally performed at an electronic device (such as device 100, device 300, device 500), as described above with reference to Figure 1A to Figure 1B 、 Figures 2 to 3 、 Figures 4A to 4B and Figures 5A to 5H Some operations in method 1100 may be optionally combined, and / or the order of some operations may be optionally changed.
[0347] As described below, method 1100 provides a way to display a notification that a user is being tracked by an unknown remote locator object. This method reduces the cognitive burden on the user when interacting with the device user interface of the present disclosure, thereby creating a more efficient human-computer interface. For battery-powered electronic devices, improving the efficiency of user interaction with the user interface saves power and increases the time between battery charges.
[0348] In some embodiments, such as Figure 10AAs shown in , an electronic device having one or more wireless antennas, a display device, and one or more input devices (e.g., a mobile device (e.g., a tablet, smartphone, media player, or wearable device) including a touch screen and wireless communication circuitry, or a computer including a keyboard, a mouse, a trackpad, and one or more of a touch screen and wireless communication circuitry) automatically presents (1102) a tracking alert without user input when a remote locator object associated with a user other than the user of the electronic device is near the electronic device (e.g., within 3 feet, 10 feet, 20 feet of the user), based on a determination that tracking criteria are met for the remote locator object (e.g., the remote locator object is tracking or otherwise following the location of the user and / or the electronic device), the tracking alert indicating that the remote locator object, which is not associated with the user, meets the tracking criteria, such as when Figure 10A In some embodiments, the tracking criteria are met if the location of the remote locator object follows or tracks the electronic device for more than a threshold amount of time / distance (e.g., the last 20 feet, 50 feet, 100 feet, etc. and / or the last 5 minutes, 10 minutes, 15 minutes, etc.).
[0349] In some embodiments, a remote locator object is considered to be following or tracking an electronic device if its location is within 1 foot, 2 feet, or 3 feet of the electronic device for a threshold amount of time and / or distance. In some embodiments, a remote locator object is considered to be following or tracking an electronic device if the distance between the remote locator object and the electronic device remains substantially unchanged (e.g., within 5%, 10%, or 15%) for a threshold amount of time and / or distance. In some embodiments, any combination of these criteria is contemplated. In some embodiments, a detailed tracking alert is displayed in response to selecting a tracking alert (e.g., selecting a tracking notification, such as a tap input on a tracking notification). In some embodiments, a tracking alert is not displayed if a remote locator object not associated with a user does not meet the tracking criteria. In some embodiments, a remote locator object not associated with a user but shared with the user does not trigger a tracking alert because it does not meet the tracking criteria. In some embodiments, the tracking criteria are not met when one or more of the above criteria are not met.
[0350] The above-described method of alerting the user when an unknown remote locator object meets the tracking criteria (e.g., by automatically displaying a tracking alert to the user when the unknown remote locator object is tracking the user) provides an alert to the user when the remote locator object is following the user (e.g., automatically displaying a tracking alert without user input if it is determined that the remote locator object is tracking the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with a warning that a potentially unauthorized remote locator object is following the user's location), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0351] In some embodiments, the tracking criteria include one or more of the following: requiring that the location associated with the remote locator object is within a predetermined threshold distance of a location associated with the user (e.g., the unidentified remote locator object is within a threshold distance from the user (e.g., 1 foot, 2 feet, 3 feet)); requiring that the location associated with the remote locator object has remained within the threshold distance from the location associated with the user for at least a threshold amount of time (e.g., the remote locator object has remained within the threshold distance from the user for a threshold amount of time (e.g., 5 minutes, 15 minutes, 30 minutes)), requiring that the remote locator object is not associated with the user (e.g., the unidentified remote locator object is not owned by or otherwise shared with the user - in some embodiments, the unidentified remote locator object is owned by or otherwise associated with another user), and requiring that the remote locator object is reporting a location to another user (1104), such as in Figure 10A In some embodiments, the tracking criteria include a requirement that the remote locator object remain within a threshold distance from the user even when the user has moved or otherwise changed location. In some embodiments, the tracking criteria include a requirement that the remote locator object remain within a threshold distance from the user for a threshold amount of distance traveled by the user (e.g., 50 feet, 100 feet, 200 feet, etc.). In some embodiments, the tracking criteria include any combination of these requirements.
[0352] The above-described manner of alerting the user when an unknown remote locator object meets tracking criteria (e.g., by determining that one or more tracking criteria are met) allows the electronic device to determine that the remote locator object is indeed following the user and avoids unnecessary display of tracking alerts (e.g., by requiring that specific conditions be met when determining that the remote locator object is following the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with a warning that an unauthorized remote locator object is following the user's location when it is likely that the unauthorized remote locator object is indeed following the user's location), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently while reducing errors in device use.
[0353] In some embodiments, the tracking alert includes a selectable option that includes information that enables the user to visually identify the remote locator object (1108), such as in Figure 10I (eg, a visual or textual description of the remote locator object, such as a virtual three-dimensional model of the remote locator object).
[0354] The above-described manner of alerting the user that an unknown remote locator object meets the tracking criteria (e.g., by displaying information such as a visual illustration of the remote locator object so that the user can identify the remote locator object) provides the user with the ability to find and identify the remote locator object that is following the user (e.g., by displaying an illustration of the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the ability to find and identify the remote locator object without requiring the user to perform a separate investigation to determine the possible form of the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0355] In some embodiments, the tracking alert includes a selectable option (1106) for ignoring future alerts for remote locator objects that meet tracking criteria, such as in Figure 10B (e.g., the tracking alert includes a selectable option that can be selected to ignore tracking of the remote locator object, so that the tracking alert for the unidentified remote locator object is suppressed or otherwise not displayed.) In some embodiments, the user can set a duration for ignoring the remote locator object.
[0356] The above-described manner of ignoring tracking alerts (e.g., by providing a selectable option for ignoring future tracking alerts associated with a remote locator object) provides the user with the option of disabling alerts for the remote locator object if the remote locator object is known to the user and preventing further display of tracking alerts that would require the user to perform additional input to exit, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the option to automatically exit future alerts without unnecessarily providing the user with alerts and requiring the user to verify each time that the tracking alert should be ignored), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0357] In some embodiments, the electronic device detection (1110) includes one or more input sequences that select a selectable option for ignoring future alerts that the remote locator object meets the tracking criteria, such as in Figure 10B , as shown in (e.g., selecting the "Silence Alarms" enable indication followed by selecting the "Until End of Day" enable indication). In some embodiments, in response to receiving user input selecting the "Silence Alarms" enable indication, the device displays a user interface including selectable options for selecting a duration for ignoring the alarm. In some embodiments, predetermined duration options are displayed, such as a "Until End of Day" enable indication that can be selected to silence the tracking alarm until the end of the day, and / or an "Indefinitely" enable indication that can be selected to initiate the process of silencing the tracking alarm indefinitely. In some embodiments, in response to detecting one or more input sequences that include selecting a selectable option for ignoring future alarms that the remote locator object meets the tracking criteria, the electronic device forgoes (1112) displaying future alarms that the remote locator object meets the tracking criteria for a predetermined time threshold, such as in Figure 10C , until the end of the day, until the end of the week). In some embodiments, the user can provide a custom duration. In some embodiments, even when the device forgoes displaying future alerts that a remote locator object meets the tracking criteria, if other remote locator objects meet the tracking criteria, the device continues to generate alerts that other remote locator objects meet the tracking criteria (e.g., ignoring tracking applies only to the specific remote locator object for which tracking was detected).
[0358] The above-described manner of silencing tracking alarms (e.g., by forgoing displaying future alarms for a predetermined amount of time in response to detecting a selection to ignore the alarm for the predetermined amount of time) provides the user with the ability to disable tracking alarms for the predetermined amount of time when the user expects the remote locator object to follow the user for the predetermined amount of time, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the ability to suppress tracking alarms for the predetermined amount of time without requiring the user to exit future tracking alarms and re-enable tracking alarms after the predetermined amount of time, or without requiring the user to continue exiting tracking alarms for the predetermined amount of time), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0359] In some embodiments, in response to detecting one or more input sequences including selecting a selectable option to ignore future alerts that the remote locator object meets tracking criteria, the electronic device adds (1114) the remote locator object to a group of physical objects available for viewing in a location tracking status user interface on the device, such as in Figure 10C In some embodiments, the user can add an unidentified remote locator object to a status user interface that includes physical objects associated with the user (e.g., after receiving user input to ignore future tracking alerts). In some embodiments, when the remote locator object is added to the tracking status user interface, it is displayed with an indication of its location relative to the location associated with the user and / or an indication of the length of time the user has ignored the location of the remote locator object. In some embodiments, when the remote locator object is added to the tracking status user interface, the name of the owner of the remote locator object is not displayed. For example, the remote locator object is identified as "someone's locator," "unknown locator," etc.
[0360] The above-described method of ignoring an alarm that an unknown remote locator object meets tracking criteria (e.g., by adding the remote locator object to the group of objects tracked by the electronic device when the user chooses to ignore the tracking alarm associated with the remote locator object) provides the user with a reminder that the remote locator object is still tracking the user even after the user has exited the tracking alarm (e.g., by displaying the remote locator object that is tracking the user using the group of objects being tracked by the user), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the ability to track the location of the remote locator object after silencing the tracking alarm without requiring the user to determine whether the remote locator object is still tracking the user by physically confirming the location of the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0361] In some embodiments, the electronic device detection (1116) includes one or more input sequences that select a selectable option for ignoring future alerts that the remote locator object meets the tracking criteria, such as in Figure 10D In some embodiments, in response to detecting one or more input sequences including selecting a selectable option for ignoring future alerts that the remote locator object meets tracking criteria, the electronic device forgoes (1118) displaying future alerts that the remote locator object meets tracking criteria, such as in Figure 10G ) as shown in . In some embodiments, even when the device forgoes displaying future alerts that a remote locator object meets tracking criteria, if other remote locator objects meet tracking criteria, the device continues to generate alerts that other remote locator objects meet tracking criteria (e.g., ignoring tracking applies only to the specific remote locator object for which tracking was detected).
[0362] The above-described manner of silencing tracking alarms (e.g., by suppressing future tracking alarms indefinitely) provides the user with the ability to disable the display of unnecessary future tracking alarms that would otherwise force the user to perform additional input to exit, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with the ability to ignore tracking alarms without requiring the user to request sharing of a remote locator object or continually ignoring tracking alarms to suppress all future alarms), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0363] In some embodiments, the electronic device detection (1120) includes one or more input sequences that select a selectable option for ignoring future alerts that the remote locator object meets the tracking criteria, such as in Figure 10D In some embodiments, in response to detecting one or more input sequences including selection of a selectable option for ignoring future alarms of the remote locator object that meet the tracking criteria, the electronic device prompts (1122) the user to perform a predefined operation that includes both the remote locator object and the device confirming a request to ignore future alarms of the remote locator object that meet the tracking criteria, such as in Figure 10E In some embodiments, the user can actively confirm that the tracking alert associated with the remote locator object is ignored indefinitely, as shown in FIG. 10 (e.g., requiring the user to actively confirm that the tracking alert associated with the remote locator object is ignored indefinitely, and then causing the tracking alert to be ignored indefinitely). In some embodiments, the active confirmation includes performing an NFC tap gesture with the electronic device on the remote locator object. In some embodiments, the active confirmation includes selecting a selectable option.
[0364] The above-described manner of silencing tracking alerts (e.g., by requiring confirmation of a user request to ignore tracking alerts indefinitely) avoids accidentally exiting tracking notifications when the remote locator object has not actually been found, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by requiring the user to physically interact with both the remote locator object and the electronic device for confirmation), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently while reducing errors in device use.
[0365] In some embodiments, the predefined operation includes bringing the remote locator object within a predetermined distance of the electronic device (1124), such as in Figure 10F , as shown in (e.g., bringing the remote locator object within a near field communication range (e.g., 1 inch, 2 inches, 3 inches) of the electronic device such that NFC communication is established between the electronic device and the remote locator object. In some embodiments, performing the NFC tap gesture serves as a confirmation to the user (e.g., to the electronic device) that the remote locator object is being ignored indefinitely. In some embodiments, the prompt is displayed in a user interface that includes an affordance that, when selected, causes the remote locator object to play a sound.
[0366] The above-mentioned method of silencing the tracking alarm (for example, by requiring the remote locator object to be placed within a predetermined distance of the electronic device to confirm the user's request to ignore the tracking alarm indefinitely) allows the electronic device to confirm that the remote locator object that the user has discovered is the remote locator object that is tracking the user (for example, by establishing an NFC communication link with the remote locator object to confirm the identity of the remote locator object), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (for example, by requiring the user to physically move the electronic device near the remote locator object for confirmation), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently, while reducing errors in device use.
[0367] In some embodiments, the electronic device detects (1126) one or more input sequences including selecting selectable options for displaying additional information about a remote locator object that meets the tracking criteria, such as in Figure 10H In some embodiments, in response to detecting one or more input sequences that include selection of a selectable option for displaying additional information about a remote locator object that meets the tracking criteria, the electronic device displays (1128) an option for disabling the remote locator object, such as in Figure 10I In some embodiments, the user interface including the option to disable the remote locator object includes a selectable option to play a sound at the remote locator object, a selectable option to ignore the remote locator object, and / or information that enables the user to visually identify the remote locator object (e.g., a visual representation of the remote locator object).
[0368] The above-described manner of displaying information about a remote locator object (e.g., by displaying additional information about the remote locator object that is tracking the user and an option to disable the remote locator object) provides the user with the ability to quickly view information about the remote locator object and, after the user determines that the remote locator object is unknown to the user, provides the user with an option to disable the remote locator object, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with additional information and providing the user with information to disable the remote locator object without requiring the user to navigate to a separate interface or perform a separate survey to receive information about the remote locator object and / or disable the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0369] In some embodiments, the electronic device detects selection of an option to disable the remote locator object (1130), such as in Figure 10J In some embodiments, in response to detecting a selection of an option to disable the remote locator object, the electronic device displays (1132) instructions that, if followed, will prevent the remote locator object from reporting its location, such as in Figures 10K to 10M In some embodiments, the instructions for disassembling the remote locator object include instructions for disassembling the remote locator object and removing a power source such as a battery, such as text-based, audio-based, video-based, or image-based instructions. In some embodiments, the instructions for preventing the remote locator object from reporting its location are displayed with a selectable user interface object that, if selected, causes the remote locator object to generate a sound (e.g., to enable a user to locate the remote locator object). In some embodiments, the instructions for disassembling the remote locator object include animations and / or step-by-step instructions for performing steps to disassemble the remote locator object and / or remove its power source.
[0370] The above-mentioned manner of providing information about how to disable a remote locator object (e.g., by displaying instructions on disabling a remote locator object) provides the user with easily accessible on-screen step-by-step illustrative instructions on how to disable a remote locator object, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with instructions on how to disable a remote locator object that the user does not recognize and does not want to track the user's location, without requiring the user to perform a separate investigation to determine how to disable the remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0371] In some embodiments, based on a determination that the user has requested to ignore future alerts that the remote locator object meets the tracking criteria, in response to obtaining information indicating that an amount of separation between a location associated with the user and a location associated with a first remote locator object has increased to exceed a first separation threshold, the electronic device generates (1134) at the electronic device an alert indicating that the remote locator object has separated from the user, such as at Figure 10C (e.g., after receiving user input to ignore future tracking alerts and / or adding the unidentified remote locator object to a status user interface that includes physical objects associated with the user, if the distance between the remote locator object and the user exceeds a threshold distance (e.g., 50 feet, 200 feet, 500 feet, 1 / 2 mile), the electronic device displays a separation alert, similar to the separation alert described above with respect to method 900. In some embodiments, the name of the owner of the remote locator object is not shown on the separation alert. For example, the remote locator object is identified as "someone's locator," "unknown locator," etc.
[0372] The above-described manner of receiving a detached alert for a remote locator object (e.g., by providing a detached alert when the user indicates that it recognizes the remote locator object and requests to ignore the tracking alert) allows the electronic device to automatically notify the user when the remote locator object is no longer tracking the user, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing an alert when the remote locator object is no longer tracking the user and is separated from the user, without requiring the user to continue to confirm whether the remote locator object is still tracking the user), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0373] In some embodiments, based on a determination that the remote locator object has been marked as lost, the tracking alert includes an indication that the remote locator object has been marked as lost (1136), such as in Figure 10N (e.g., if the remote locator object has been marked as lost (e.g., by the owner of the remote locator object and / or a user account associated with the remote locator object), the tracking alert indicates that the remote locator object is lost (e.g., "A lost locator is tracking your location")).
[0374] The above-mentioned manner of displaying a tracking alert for a lost remote locator object (e.g., by displaying an indication that the remote locator object has been marked as lost) allows the electronic device to quickly and effectively notify the user that the remote locator object that is tracking the user has been marked as lost (e.g., so that the user is not necessarily being tracked maliciously), which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by conveniently providing the user with information that the remote locator object is lost and may not be tracking the user maliciously), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0375] In some embodiments, the electronic device detects (1138) one or more input sequences including input directed to a tracking alert corresponding to a request to display a message from the owner of the remote locator object, such as in Figure 10O In some embodiments, a message from the owner is provided when the owner marks the remote locator object as lost. In some embodiments, the user interface includes a selectable option for causing the remote locator object to play a sound and / or a selectable option for displaying instructions for removing and / or disabling the remote locator object.
[0376] In some embodiments, in response to detecting one or more inputs including an input pointing to a tracking alert, the electronic device displays (1140) a message from the owner of the remote locator object, such as in Figure 10P In some embodiments, the user interface may be configured to display a message from the owner as shown in the example (e.g., displaying a message from the owner on the user interface). In some embodiments, when the message from the owner is displayed, the selectable option for displaying the message from the owner is removed from the user interface. In some embodiments, the name of the owner of the remote locator object is not displayed or is otherwise hidden. For example, the message is displayed as being from "Owner," etc.
[0377] The above-described manner of displaying information about a lost remote locator object (e.g., displaying a message from the owner of the lost remote locator object) provides the user with the ability to quickly and efficiently view a message from the owner of the remote locator object, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing the user with a customized message from the owner of the lost remote locator object, thereby providing the user with more information about the lost remote locator object), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0378] In some embodiments, when displaying the message from the owner, the electronic device displays (1142) one or more selectable options that, when selected, initiate the process of communicating with the owner, such as in Figure 10P In some embodiments, the user can select a method of contacting the owner of the remote locator object and display the selected option for initiating the process of contacting the owner (e.g., via a phone call, text message, or email) as shown in (e.g., after displaying the message from the owner, displaying a selectable option for initiating the process of contacting the owner (e.g., via a phone call, text message, or email)). In some embodiments, the selectable option for initiating the process of contacting the owner replaces the selectable option for displaying the message from the owner. In some embodiments, selecting the selectable option for initiating the process of communicating with the owner causes one or more options corresponding to one or more methods of contacting the owner to be displayed. In some embodiments, the identity of the owner and / or the owner's contact information is not displayed or is otherwise hidden. For example, the owner is identified as "Owner of an unknown locator" or "Owner of a lost locator," etc., and a phone number, email address, etc. is never displayed to the user (e.g., to protect the owner's privacy). In some embodiments, the owner of the remote locator object can decide to share their information (e.g., by providing their information in the message itself).
[0379] The above-described manner of contacting the owner of a lost remote locator object (e.g., by providing one or more options for initiating a process of notifying or contacting the owner of the lost remote locator object) provides a quick and efficient way to contact the owner, which simplifies the interaction between the user and the electronic device and enhances the operability of the electronic device, making the user-device interface more efficient (e.g., by providing a convenient method for the user to contact the owner without requiring the user to navigate to a separate user interface or perform a separate investigation to determine how to contact the owner), which in turn reduces power usage and extends the battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently.
[0380] In some embodiments, while displaying the message from the owner, the electronic device displays (1144) an option to disable the remote locator object, such as in Figure 10P In some embodiments, in response to detecting a selection of an option to disable the remote locator object, the electronic device displays (1146) instructions that, if followed, will prevent the remote locator object from reporting its location, such as in Figures 10K to 10M In some embodiments, the instructions for disassembling the remote locator object are displayed in conjunction with a selectable user interface object that, if selected, causes the remote locator object to generate a sound (e.g., to enable the user to locate the remote locator object). In some embodiments, the instructions for disassembling the remote locator object are the same instructions displayed to the user in response to the user selecting the option to disable a remote locator object that is tracking the user and has not been marked as lost.
[0381] The above-describ...
Claims
1. A method comprising performing the following operations at an electronic device having one or more wireless antennas, a display device, and one or more input devices: when a first remote locator object is associated with a user, obtaining information indicating that an amount of separation between a location associated with the user and a location associated with the first remote locator object has increased to exceed a first separation threshold; generating, at the electronic device, a separation alert indicating that the first remote locator object has separated from the user, wherein the separation alert includes a visual element displayed via the display device; while displaying the separate alert, detecting, via the one or more input devices, a sequence of one or more inputs, the sequence of one or more inputs comprising an input directed to the separate alert; as well as In response to detecting the sequence of one or more inputs, marking the location associated with the first remote locator object as a safety zone of the first remote locator object, wherein the safety zone of the corresponding remote locator object refers to: when the separation amount between the location associated with the user and the location associated with the corresponding remote locator object is greater than the first separation threshold and the corresponding remote locator object remains within the safety zone, the electronic device will not generate a separation alarm. 2 . The method of claim 1 , wherein the sequence of one or more inputs includes a user input setting a shape and / or size of the safety area.
3. The method of claim 1 , wherein marking the location associated with the first remote locator object as a safe zone for the remote locator object comprises: A person other than the user is marked as a safety person, wherein a separation alarm is not generated when the separation amount between the location associated with the user and the location associated with the corresponding remote locator object is greater than the first separation threshold and the corresponding remote locator object remains within a threshold distance of the safety person.
4. The method according to claim 1, wherein: The user is associated with a plurality of telelocator objects including a second telelocator object; and The method further includes, when a corresponding area is set as a safety zone for the first remote locator object but not the second remote locator object, and the first remote locator object and the second remote locator object are associated with corresponding positions within the safety zone: obtaining information indicating that an amount of separation between a location associated with the user and a location associated with the first remote locator object has increased to exceed the first separation threshold; obtaining information indicating that an amount of separation between a location associated with the user and a location associated with the second remote locator object has increased to exceed the first separation threshold; as well as In response to obtaining the information indicating that the separation amount between the location associated with the user and the location associated with the first remote locator object has increased to exceed the first separation threshold, and obtaining the information indicating that the separation amount between the location associated with the user and the location associated with the second remote locator object has increased to exceed the first separation threshold, a separation alarm indicating that the second remote locator object has been separated from the user is generated at the electronic device without generating a separation alarm indicating that the first remote locator object has been separated from the user.
5. The method of claim 1, wherein the separate alert includes a map having a representation of the location associated with the first remote locator object.
6. The method of claim 1, wherein the separate alarm includes an indication of time and an indication of distance, wherein: The location associated with the first remote locator object is determined at the time, and the distance is a distance between the location associated with the first remote locator object and the location associated with the user.
7. The method according to claim 1, comprising: obtaining information indicating that the amount of separation between the location associated with the user and the location associated with the first remote locator object is less than a corresponding separation threshold, and, In response to obtaining the information indicating that the amount of separation between the location associated with the user and the location associated with the first remote locator object is less than the corresponding separation threshold, ceasing to present the separation alert. The method of claim 7 , wherein the respective separation threshold is less than the first separation threshold.
9. The method of claim 1, the method comprising receiving, at the electronic device, a request to view location information of a plurality of physical objects; and In response to detecting the request to view location information of the plurality of physical objects, a status user interface is displayed that includes location information of a plurality of physical objects including the first remote locator object.
10. The method of claim 9, wherein one or more representations of a physical object are labeled with an indication that the physical object is located at a first location, the first location having been identified by a descriptor selected by the user.
11. The method of claim 9, wherein one or more representations of a physical object are labeled with an indication that the physical object is located at a predefined location, the predefined location being defined relative to the location associated with the user.
12. The method according to claim 9, comprising: while displaying the status user interface, detecting a sequence of one or more inputs, the sequence of one or more inputs comprising a selection of a selectable user interface object corresponding to a request to add a safety zone; as well as In response to detecting the sequence of one or more inputs including a selection of the optional user interface object corresponding to a request to add a safety zone, a safety zone is added at a location selected by the user, wherein the safety zone of the corresponding remote locator object refers to an area in which the device does not generate a separation alarm when the separation amount between the location associated with the user and the location associated with the corresponding remote locator object is greater than the first separation threshold and the corresponding remote locator object remains within the safety zone.
13. The method of claim 12, wherein the sequence of one or more inputs comprising a selection of the selectable user interface object corresponding to the request to add the security zone comprises: A corresponding size of the safety zone is selected from a plurality of predefined sizes.
14. The method of claim 12, wherein the sequence of one or more inputs comprising selection of the selectable user interface object corresponding to the request to add the security zone comprises: An input corresponding to the dynamically selected size of the safety zone.
15. The method according to claim 9, comprising: while displaying the status user interface, detecting a sequence of one or more inputs, the sequence of one or more inputs comprising a selection of a selectable user interface object corresponding to a request to share a location of a corresponding physical object in the plurality of physical objects with a corresponding user other than the user of the device; In response to detecting the sequence of one or more inputs including a selection of the selectable user interface object corresponding to the request to share the location of the corresponding object in the plurality of physical objects with other users, enabling the corresponding user to access a plurality of features corresponding to the location of the corresponding physical object, the plurality of features including one or more of the following: determining a position of the corresponding physical object, receiving a separation alert when an amount of separation between the position of the corresponding physical object and a position of the other user exceeds a corresponding separation threshold, and An identifier associated with the corresponding physical object is selected.
16. The method of claim 15, wherein the sequence of one or more inputs for selection of the selectable user interface object corresponding to the request to share the location of one of the plurality of physical objects with other users comprises allowing the sharing to continue for a limited period of time.
17. The method of claim 15, comprising, while the location of the first remote locator object is being shared with a second user: In a case where the first remote locator object is associated with the second user, obtaining information indicating that the separation amount between the location associated with the second user and the location associated with the first remote locator object has increased to exceed the first separation threshold; and in response to obtaining the information indicating that the separation amount between the location associated with the user and the location associated with the first remote locator object has increased to exceed the first separation threshold, generating a separation alarm at the electronic device indicating that the first remote locator object has been separated from the second user.
18. An electronic device, comprising: one or more processors; Memory; and One or more programs, wherein 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 comprising instructions for executing the method according to any one of claims 1 to 17.
19. A non-transitory computer-readable storage medium storing one or more programs, wherein the one or more programs include instructions, which, when executed by one or more processors of an electronic device, cause the electronic device to perform the method according to any one of claims 1 to 17.