User interfaces and techniques for presenting content
By dynamically adjusting the content of the display components based on the user's position and distance, the problem of complex and inefficient display components in existing electronic devices is solved, resulting in a more efficient user interface and power savings.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- APPLE INC
- Filing Date
- 2024-09-25
- Publication Date
- 2026-06-12
Smart Images

Figure CN122196293A_ABST
Abstract
Description
[0001] This application is a divisional application of the invention patent application filed on September 25, 2024, with application number 202480053310.1 and title "User Interface and Technology for Presenting Content". Cross-reference to related applications
[0002] This application claims priority to U.S. Provisional Patent Application Serial No. 63 / 541,837, filed September 30, 2023; U.S. Provisional Patent Application Serial No. 63 / 541,823, filed September 30, 2023; and U.S. Provisional Patent Application Serial No. 63 / 541,816, filed September 30, 2023, the entire contents of which are incorporated herein by reference for all purposes. Background Technology
[0003] Computer systems typically display a variety of content. This content can be displayed in various ways by the computer system to attract the viewer's attention. Computer systems often capture images of the user. Such images are usually captured after the computer system has been positioned so that an interested user is captured within the computer system's field of view. Computer systems typically display a variety of content to the viewer. This content can be displayed in various ways to draw the user's attention to the content. Summary of the Invention
[0004] Existing technologies for displaying widgets on electronic devices are often cumbersome and inefficient. For example, some existing technologies use complex and time-consuming user interfaces that may include multiple buttons or keystrokes. Some existing technologies require more time than necessary, wasting the user's time and the device's energy. This latter consideration is particularly important in battery-powered devices.
[0005] Therefore, this technology provides electronic devices with faster and more efficient methods and interfaces for displaying widgets, capturing images, and providing information using the position and size of the displayed content. Such methods and interfaces can optionally complement and / or replace other methods used for displaying widgets, capturing images, and providing information using the position and size of the displayed content. These methods and interfaces reduce the cognitive burden on the user and result in a more efficient human-machine interface. For battery-powered computing devices, such methods and interfaces save power and increase the time interval between battery charging. Such methods and interfaces can complement or replace other methods used for displaying widgets.
[0006] In some embodiments, a method is described that is performed at a computer system communicating with one or more input devices and a display component. In some embodiments, the method includes: detecting a first user in an environment via one or more input devices; and, in response to detecting the first user in the environment, displaying a first user interface including a first widget via the display component, wherein displaying the first widget includes: displaying first content at a location within the first widget via the display component based on determining that the first user is within a first distance; and displaying second content at a location within the first widget via the display component based on determining that the first user is within a second distance different from the first distance, wherein the second content is different from the first content.
[0007] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a first user in an environment via one or more input devices; and, in response to detecting the first user in the environment, displaying a first user interface including a first widget via the display component, wherein displaying the first widget includes: displaying first content at a location within the first widget via the display component based on determining that the first user is within a first distance; and displaying second content at a location within the first widget via the display component based on determining that the first user is within a second distance different from the first distance, wherein the second content is different from the first content.
[0008] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a first user in an environment via one or more input devices; and, in response to detecting the first user in the environment, displaying a first user interface including a first widget via the display component, wherein displaying the first widget includes: displaying first content at a location within the first widget via the display component based on determining that the first user is within a first distance; and displaying second content at a location within the first widget via the display component based on determining that the first user is within a second distance different from the first distance, wherein the second content is different from the first content.
[0009] In some embodiments, a computer system communicating with one or more input devices and a display component is described. In some embodiments, the computer system communicating with one or more input devices and a display component includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: detecting a first user in an environment via one or more input devices; and, in response to detecting the first user in the environment, displaying a first user interface including a first widget via a display component, wherein displaying the first widget includes: displaying first content at a location within the first widget via the display component based on determining that the first user is within a first distance; and displaying second content at a location within the first widget via the display component based on determining that the first user is within a second distance different from the first distance, wherein the second content is different from the first content.
[0010] In some embodiments, a computer system communicating with one or more input devices and a display component is described. In some embodiments, the computer system communicating with one or more input devices and a display component includes components for performing each of the following steps: detecting a first user in an environment via one or more input devices; and, in response to detecting the first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first content at a location within the first component via the display component based on determining that the first user is within a first distance; and displaying second content at a location within the first component via the display component based on determining that the first user is within a second distance different from the first distance, wherein the second content is different from the first content.
[0011] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a first user in an environment via one or more input devices; and, in response to detecting the first user in the environment, displaying a first user interface including a first widget via the display component, wherein displaying the first widget includes: displaying first content at a location in the first widget via the display component based on determining that the first user is within a first distance; and displaying second content at a location in the first widget via the display component based on determining that the first user is within a second distance different from the first distance, wherein the second content is different from the first content.
[0012] In some embodiments, a method is described that is performed at a computer system communicating with one or more input devices and a display component. In some embodiments, the method includes: detecting a first user in a physical environment via one or more input devices; and, upon detecting the first user in the physical environment: displaying first content via the display component based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second user is not detected in a first area of the physical environment; and displaying second content, different from the first content, via the display component based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second user is detected in a first area of the physical environment.
[0013] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a first user in a physical environment via one or more input devices; and, upon detecting the first user in the physical environment: displaying first content via the display component based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second user is not detected in a first area of the physical environment; and displaying second content, different from the first content, via the display component based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second user is detected in a first area of the physical environment.
[0014] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a first user in a physical environment via one or more input devices; and, upon detecting the first user in the physical environment: displaying first content via the display component based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second user is not detected in a first area of the physical environment; and displaying second content, different from the first content, via the display component based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second user is detected in a first area of the physical environment.
[0015] In some embodiments, a computer system communicating with one or more input devices and a display component is described. In some embodiments, the computer system communicating with one or more input devices and a display component includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: detecting a first user in a physical environment via one or more input devices; and, upon detecting the first user in the physical environment: displaying first content via the display component based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second user is not detected in a first area of the physical environment; and displaying second content, different from the first content, via the display component based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second user is detected in a first area of the physical environment.
[0016] In some embodiments, a computer system communicating with one or more input devices and a display component is described. In some embodiments, the computer system communicating with one or more input devices and a display component includes components for performing each of the following steps: detecting a first user in a physical environment via one or more input devices; and, upon detecting the first user in the physical environment: displaying first content via the display component based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second user is not detected in a first area of the physical environment; and displaying second content, different from the first content, via the display component based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second user is detected in a first area of the physical environment.
[0017] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a first user in a physical environment via one or more input devices; and, upon detecting the first user in the physical environment: displaying first content via the display component based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second user is not detected in a first area of the physical environment; and displaying second content, different from the first content, via the display component based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second user is detected in a first area of the physical environment.
[0018] In some embodiments, a method is described that is performed at a computer system communicating with one or more input devices and a display component. In some embodiments, the method includes: detecting a user in an environment via one or more input devices; and, in response to detecting a first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first type of content in the first component via the display component based on determining that the computer system is at a location associated with a first privacy level of the user; and displaying a second type of content in the first component via the display component, different from the first type of content in the first component, based on determining that the computer system is at a location associated with a second privacy level of the user different from the first privacy level of the user.
[0019] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a user in an environment via one or more input devices; and, in response to detecting a first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first type of content in the first component via the display component at a location determined by the computer system to be associated with a first privacy level of the user; and displaying a second type of content in the first component via the display component, different from the first type of content in the first component, at a location determined by the computer system to be associated with a second privacy level of the user different from the first privacy level of the user.
[0020] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a user in an environment via one or more input devices; and, in response to detecting a first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first type of content in the first component via the display component at a location determined by the computer system to be associated with a first privacy level of the user; and displaying second type of content in the first component via the display component, different from the first type of content in the first component, at a location determined by the computer system to be associated with a second privacy level of the user different from the first privacy level of the user.
[0021] In some embodiments, a computer system communicating with one or more input devices and a display component is described. In some embodiments, the computer system communicating with one or more input devices and a display component includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: detecting a user in an environment via one or more input devices; and, in response to detecting a first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first type of content in the first component via the display component at a location determined by the computer system to be associated with a first privacy level of the user; and displaying second type of content in the first component via the display component, different from the first type of content in the first component, at a location determined by the computer system to be associated with a second privacy level of the user different from the first privacy level of the user.
[0022] In some embodiments, a computer system communicating with one or more input devices and a display component is described. In some embodiments, the computer system communicating with one or more input devices and a display component includes components for performing each of the following steps: detecting a user in an environment via one or more input devices; and, in response to detecting a first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first type of content in the first component via the display component at a location determined by the computer system to be associated with a first privacy level of the user; and displaying a second type of content in the first component via the display component, different from the first type of content in the first component, at a location determined by the computer system to be associated with a second privacy level of the user different from the first privacy level of the user.
[0023] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with one or more input devices and a display component. In some embodiments, the one or more programs include instructions for: detecting a user in an environment via one or more input devices; and, in response to detecting a first user in the environment, displaying a first user interface including a first component via the display component, wherein displaying the first component includes: displaying first type of content in the first component via the display component at a location determined by the computer system to be associated with a first privacy level of the user; and displaying second type of content in the first component via the display component, different from the first type of content in the first component, at a location determined by the computer system to be associated with a second privacy level of the user different from the first privacy level of the user.
[0024] In some embodiments, a method is described that is executed at a computer system communicating with a display component. In some embodiments, the method includes: detecting a corresponding condition; and in response to detecting the corresponding condition, automatically displaying, via the display component, one or more user interfaces including a corresponding user interface, wherein the corresponding user interface includes: displaying a first widget based on determining that detecting the corresponding condition does not include detecting the presence of a corresponding user; simultaneously displaying the first widget and a widget including content corresponding to the first user based on determining that detecting the corresponding condition includes detecting the presence of a first user; and simultaneously displaying the first widget and a widget including content corresponding to the second user based on determining that detecting the presence of one or more users includes detecting the presence of a second user different from the first user.
[0025] In some embodiments, a non-transitory computer-readable storage medium is described, which stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display component. In some embodiments, the one or more programs include instructions for: detecting a corresponding condition; and, in response to detecting a corresponding condition, automatically displaying, via the display component, one or more user interfaces including a corresponding user interface, wherein the corresponding user interface includes: displaying a first widget based on determining that detecting a corresponding condition does not include detecting the presence of a corresponding user; simultaneously displaying the first widget and a widget including content corresponding to the first user based on determining that detecting a corresponding condition includes detecting the presence of a first user; and simultaneously displaying the first widget and a widget including content corresponding to the second user based on determining that detecting the presence of one or more users includes detecting the presence of a second user different from the first user.
[0026] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display component. In some embodiments, the one or more programs include instructions for: detecting a corresponding condition; and, in response to detecting the corresponding condition, automatically displaying, via the display component, one or more user interfaces including a corresponding user interface, wherein the corresponding user interface includes: displaying a first widget based on determining that detecting the corresponding condition does not include detecting the presence of a corresponding user; simultaneously displaying the first widget and a widget including content corresponding to the first user based on determining that detecting the corresponding condition includes detecting the presence of a first user; and simultaneously displaying the first widget and a widget including content corresponding to the second user based on determining that detecting the presence of one or more users includes detecting the presence of a second user different from the first user.
[0027] In some embodiments, a computer system communicating with a display component is described. In some embodiments, the computer system communicating with the display component includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: detecting a corresponding condition; and, in response to detecting a corresponding condition, automatically displaying via the display component one or more user interfaces including a corresponding user interface, wherein the corresponding user interface includes: displaying a first widget based on determining that detecting a corresponding condition does not include detecting the presence of a corresponding user; simultaneously displaying the first widget and a widget including content corresponding to the first user based on determining that detecting the corresponding condition includes detecting the presence of a first user; and simultaneously displaying the first widget and a widget including content corresponding to the second user based on determining that detecting the presence of one or more users includes detecting the presence of a second user different from the first user.
[0028] In some embodiments, a computer system communicating with a display component is described. In some embodiments, the computer system communicating with the display component includes components for performing each of the following steps: detecting a corresponding condition; and, in response to detecting a corresponding condition, automatically displaying, via the display component, one or more user interfaces including a corresponding user interface, wherein the corresponding user interface includes: displaying a first widget based on determining that detecting a corresponding condition does not include detecting the presence of a corresponding user; simultaneously displaying the first widget and a widget including content corresponding to the first user based on determining that detecting a corresponding condition includes detecting the presence of a first user; and simultaneously displaying the first widget and a widget including content corresponding to the second user based on determining that detecting the presence of one or more users includes detecting the presence of a second user different from the first user.
[0029] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a display component. In some embodiments, the one or more programs include instructions for: detecting a corresponding condition; and in response to detecting a corresponding condition, automatically displaying, via the display component, one or more user interfaces including a corresponding user interface, wherein the corresponding user interface includes: displaying a first widget based on determining that detecting a corresponding condition does not include detecting the presence of a corresponding user; simultaneously displaying the first widget and a widget including content corresponding to the first user based on determining that detecting a corresponding condition includes detecting the presence of a first user; and simultaneously displaying the first widget and a widget including content corresponding to the second user based on determining that detecting the presence of one or more users includes detecting the presence of a second user different from the first user.
[0030] In some embodiments, a method is described that is performed at a computer system communicating with a display component. In some embodiments, the method includes: displaying a user interface including a first widget via the display component when operating relative to a first context, wherein displaying the user interface when operating relative to the first context includes: displaying the first widget at a first size via the display component based on determining that the first widget has a first amount of relevance with respect to the first context; and displaying the first widget at a second size via the display component based on determining that the first widget has a second amount of relevance with respect to the first context, different from the first size.
[0031] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display component. In some embodiments, the one or more programs include instructions for displaying a user interface including a first widget via the display component when operating relative to a first context, wherein displaying the user interface when operating relative to the first context includes: displaying the first widget at a first size via the display component based on determining that the first widget has a first amount of correlation with respect to the first context; and displaying the first widget at a second size via the display component based on determining that the first widget has a second amount of correlation with respect to the first context, different from the first size.
[0032] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display component. In some embodiments, the one or more programs include instructions for displaying a user interface including a first widget via the display component when operating relative to a first context, wherein displaying the user interface when operating relative to the first context includes: displaying the first widget at a first size via the display component based on determining that the first widget has a first amount of correlation with respect to the first context; and displaying the first widget at a second size via the display component based on determining that the first widget has a second amount of correlation with respect to the first context, different from the first size.
[0033] In some embodiments, a computer system communicating with a display component is described. In some embodiments, the computer system communicating with the display component includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for displaying a user interface including a first widget via the display component when operating relative to a first context, wherein displaying the user interface when operating relative to the first context includes: displaying the first widget at a first size via the display component based on determining that the first widget has a first amount of correlation with respect to the first context; and displaying the first widget at a second size via the display component based on determining that the first widget has a second amount of correlation with respect to the first context, different from the first size.
[0034] In some embodiments, a computer system communicating with a display component is described. In some embodiments, the computer system communicating with the display component includes components for performing each of the following steps: displaying a user interface including a first component via the display component when operating relative to a first context, wherein displaying the user interface when operating relative to the first context includes: displaying the first component at a first size via the display component based on determining that the first component has a first amount of relevance with respect to the first context; and displaying the first component at a second size via the display component based on determining that the first component has a second amount of relevance with respect to the first context, different from the first size.
[0035] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a display component. In some embodiments, the one or more programs include instructions for displaying a user interface including a first widget via the display component when operating relative to a first context, wherein displaying the user interface when operating relative to the first context includes: displaying the first widget at a first size via the display component based on determining that the first widget has a first amount of relevance with respect to the first context; and displaying the first widget at a second size via the display component based on determining that the first widget has a second amount of relevance with respect to the first context, different from the first size.
[0036] In some embodiments, a method is described that is executed at a first computer system communicating with a camera. In some embodiments, the method includes: capturing an image of a physical environment via the camera; and in response to capturing the image of the physical environment: transmitting a request for content to the second computer system, wherein the second computer system is different from the first computer system, based on determining that one or more criteria of a first set are met, wherein the first set of one or more criteria include criteria that are met when a second computer system is detected in the image; and abandoning the request to transmit the content to the second computer system, wherein the second set of one or more criteria are different from the first set of one or more criteria, based on determining that one or more criteria of a second set are met, wherein the second set of one or more criteria includes criteria that are met when a second computer system is not detected in the image.
[0037] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a first computer system in communication with a camera. In some embodiments, the one or more programs include instructions for: capturing an image of a physical environment via the camera; and in response to capturing the image of the physical environment: transmitting a request for content to a second computer system, wherein the second computer system is different from the first computer system, based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second computer system is detected in the image; and abandoning the request to transmit the content to the second computer system, wherein the second set of one or more criteria is different from the first set of one or more criteria, based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second computer system is not detected in the image.
[0038] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a first computer system in communication with a camera. In some embodiments, the one or more programs include instructions for: capturing an image of a physical environment via the camera; and in response to capturing the image of the physical environment: transmitting a request for content to a second computer system, wherein the second computer system is different from the first computer system, based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second computer system is detected in the image; and abandoning the request to transmit content to the second computer system, wherein the second set of one or more criteria is different from the first set of one or more criteria, based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second computer system is not detected in the image.
[0039] In some embodiments, a first computer system communicating with a camera is described. In some embodiments, the first computer system communicating with the camera includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. In some embodiments, the one or more programs include instructions for: capturing an image of a physical environment via the camera; and in response to capturing the image of the physical environment: transmitting a request for content to a second computer system, wherein the second computer system is different from the first computer system, based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second computer system is detected in the image; and abandoning the request to transmit the content to the second computer system, wherein the second set of one or more criteria is different from the first set of one or more criteria, based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second computer system is not detected in the image.
[0040] In some embodiments, a first computer system communicating with a camera is described. In some embodiments, the first computer system communicating with the camera includes components for performing each of the following steps: capturing an image of a physical environment via the camera; and in response to capturing the image of the physical environment: transmitting a request for content to a second computer system, wherein the second computer system is different from the first computer system, based on determining that one or more criteria of a first set are met, wherein the first set of one or more criteria include criteria met when a second computer system is detected in the image; and abandoning the request to transmit content to the second computer system, wherein the second set of one or more criteria are different from the first set of one or more criteria, based on determining that one or more criteria of a second set are met, wherein the second set of one or more criteria includes criteria met when a second computer system is not detected in the image.
[0041] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a first computer system in communication with a camera. In some embodiments, the one or more programs include instructions for: capturing an image of a physical environment via the camera; and in response to capturing the image of the physical environment: transmitting a request for content to the second computer system, wherein the second computer system is different from the first computer system, based on determining that a first set of one or more criteria is met, wherein the first set of one or more criteria includes criteria met when a second computer system is detected in the image; and abandoning the request for content to the second computer system, wherein the second set of one or more criteria is different from the first set of one or more criteria, based on determining that a second set of one or more criteria is met, wherein the second set of one or more criteria includes criteria met when a second computer system is not detected in the image.
[0042] In some embodiments, a method is described that is executed at a computer system communicating with a camera and a moving component. In some embodiments, the method includes: receiving a first request to capture media; and in response to receiving the first request: performing a first set of one or more movements via the moving component, the first set of one or more movements including moving a portion of the computer system in a first direction and then moving it in the opposite direction; and initiating capture of the media after performing the first set of one or more movements; and after performing the first set of one or more movements and initiating capture of the media, receiving a second request to capture media; and in response to receiving the second request to capture media: performing the first set of one or more movements; and initiating capture of the media after performing the first set of one or more movements.
[0043] In some embodiments, a non-transitory computer-readable storage medium is described, which stores one or more programs configured to be executed by one or more processors of a computer system in communication with a camera and a moving component. In some embodiments, the one or more programs include instructions for: receiving a first request to capture media; and in response to receiving the first request: performing a first set of one or more movements via the moving component, the first set of one or more movements including moving a portion of the computer system in a first direction and then moving it in the opposite direction; and initiating capture of the media after performing the first set of one or more movements; and after performing the first set of one or more movements and initiating capture of the media, receiving a second request to capture media; and in response to receiving the second request to capture media: performing the first set of one or more movements; and initiating capture of the media after performing the first set of one or more movements.
[0044] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a camera and a moving component. In some embodiments, the one or more programs include instructions for: receiving a first request to capture media; and in response to receiving the first request: performing a first set of one or more movements via the moving component, the first set of one or more movements including moving a portion of the computer system in a first direction and then moving it in the opposite direction; and initiating capture of the media after performing the first set of one or more movements; and after performing the first set of one or more movements and initiating capture of the media, receiving a second request to capture media; and in response to receiving the second request to capture media: performing the first set of one or more movements; and initiating capture of the media after performing the first set of one or more movements.
[0045] In some embodiments, a computer system communicating with a camera and a moving component is described. In some embodiments, the computer system communicating with the camera and the moving component includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: receiving a first request to capture media; and in response to receiving the first request: performing a first set of one or more movements via the moving component, the first set of one or more movements including moving a portion of the computer system in a first direction via the moving component and then moving it in the opposite direction; and initiating capture of the media after performing the first set of one or more movements; and after performing the first set of one or more movements and initiating capture of the media, receiving a second request to capture the media; and in response to receiving the second request to capture the media: performing the first set of one or more movements; and initiating capture of the media after performing the first set of one or more movements.
[0046] In some embodiments, a computer system communicating with a camera and a moving component is described. In some embodiments, the computer system communicating with the camera and the moving component includes components for performing each of the following steps: receiving a first request to capture media; and in response to receiving the first request: performing a first set of one or more movements via the moving component, the first set of one or more movements including moving a portion of the computer system in a first direction via the moving component, and then moving it in the opposite direction to the first direction; and initiating capture of the media after performing the first set of one or more movements; and after performing the first set of one or more movements and initiating capture of the media, receiving a second request to capture media; and in response to receiving the second request to capture media: performing the first set of one or more movements; and initiating capture of the media after performing the first set of one or more movements.
[0047] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a camera and a moving component. In some embodiments, the one or more programs include instructions for: receiving a first request to capture media; and in response to receiving the first request: performing a first set of one or more movements via the moving component, the first set of one or more movements including moving a portion of the computer system in a first direction via the moving component and then moving it in the opposite direction to the first direction; and initiating capture of the media after performing the first set of one or more movements; and after performing the first set of one or more movements and initiating capture of the media, receiving a second request to capture media; and in response to receiving the second request to capture media: performing the first set of one or more movements; and initiating capture of the media after performing the first set of one or more movements.
[0048] In some embodiments, a method is described that is performed at a computer system communicating with a display component and one or more input devices. In some embodiments, the method includes: detecting input corresponding to a topic via one or more input devices while a first user interface object is displayed via the display component; and in response to detecting the input corresponding to the topic: abandoning an attempt to increase the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level below a threshold corresponding to the input; and increasing the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level above a threshold corresponding to the input.
[0049] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display component and one or more input devices. In some embodiments, the one or more programs include instructions for: detecting input corresponding to a topic via one or more input devices when a first user interface object is displayed via the display component; and in response to detecting the input corresponding to the topic: abandoning any attempt to increase the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level below a threshold corresponding to the input; and increasing the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level above a threshold corresponding to the input.
[0050] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display component and one or more input devices. In some embodiments, the one or more programs include instructions for: detecting input corresponding to a topic via one or more input devices when a first user interface object is displayed via the display component; and in response to detecting the input corresponding to the topic: abandoning any attempt to increase the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level below a threshold corresponding to the input; and increasing the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level above a threshold corresponding to the input.
[0051] In some embodiments, a computer system communicating with a display component and one or more input devices is described. In some embodiments, the computer system communicating with the display component and one or more input devices includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: detecting input corresponding to a topic via one or more input devices when a first user interface object is displayed via the display component; and in response to detecting the input corresponding to the topic: abandoning the increase in the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level below a threshold corresponding to the input; and increasing the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level above a threshold corresponding to the input.
[0052] In some embodiments, a computer system communicating with a display component and one or more input devices is described. In some embodiments, the computer system communicating with the display component and one or more input devices includes components for performing each of the following steps: when a first user interface object is displayed via the display component, detecting input corresponding to a topic via one or more input devices; and in response to detecting input corresponding to a topic: abandoning an attempt to increase the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level below a threshold corresponding to the input; and increasing the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level above a threshold corresponding to the input.
[0053] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with a display component and one or more input devices. In some embodiments, the one or more programs include instructions for: detecting input corresponding to a topic via one or more input devices when a first user interface object is displayed via the display component; and in response to detecting input corresponding to the topic: abandoning the increase of the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level below a threshold corresponding to the input; and increasing the size of the first user interface object based on determining that a corresponding portion of the input is associated with a confidence level above a threshold corresponding to the input.
[0054] In some embodiments, a method is described that is performed at a computer system communicating with a moving component and one or more output devices. In some embodiments, the method includes: detecting a second portion of content corresponding to a corresponding position in conjunction with a first portion of content output via one or more output devices; and, in conjunction with the detection that the second portion of content corresponds to the corresponding position: moving a portion of the computer system in a first direction via the moving component based on determining that the corresponding position is a first position; and moving that portion of the computer system in a second direction different from the first direction via the moving component based on determining that the corresponding position is a second position different from the first position.
[0055] In some embodiments, a non-transitory computer-readable storage medium is described, which stores one or more programs configured to be executed by one or more processors of a computer system in communication with a moving component and one or more output devices. In some embodiments, the one or more programs include instructions for: detecting a second portion of content corresponding to a corresponding position in conjunction with a first portion of content output via one or more output devices; and, in conjunction with the detection that the second portion of content corresponds to the corresponding position: moving a portion of the computer system in a first direction via the moving component based on determining that the corresponding position is a first position; and moving that portion of the computer system in a second direction different from the first direction via the moving component based on determining that the corresponding position is a second position different from the first position.
[0056] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a moving component and one or more output devices. In some embodiments, the one or more programs include instructions for: detecting a second portion of content corresponding to a corresponding position in conjunction with a first portion of content output via one or more output devices; and, based on the detection that the second portion of content corresponds to the corresponding position: moving a portion of the computer system in a first direction via the moving component according to determining that the corresponding position is a first position; and moving that portion of the computer system in a second direction different from the first direction via the moving component according to determining that the corresponding position is a second position different from the first position.
[0057] In some embodiments, a computer system communicating with a moving component and one or more output devices is described. In some embodiments, the computer system communicating with the moving component and one or more output devices includes one or more processors and memory configured to execute one or more programs by the one or more processors. In some embodiments, the one or more programs include instructions for: in conjunction with a first portion of content output via the one or more output devices, detecting a second portion of the content corresponding to a corresponding position; and in conjunction with the detection that the second portion of the content corresponds to the corresponding position: moving a portion of the computer system in a first direction via the moving component based on determining that the corresponding position is a first position; and moving that portion of the computer system in a second direction different from the first direction via the moving component based on determining that the corresponding position is a second position different from the first position.
[0058] In some embodiments, a computer system communicating with a moving component and one or more output devices is described. In some embodiments, the computer system communicating with the moving component and one or more output devices includes components for performing each of the following steps: combining a first portion of content output via one or more output devices, detecting a second portion of the content corresponding to a corresponding position; and combining the detection of the second portion of the content corresponding to the corresponding position: moving a portion of the computer system in a first direction via the moving component based on determining that the corresponding position is a first position; and moving that portion of the computer system in a second direction different from the first direction via the moving component based on determining that the corresponding position is a second position different from the first position.
[0059] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes one or more programs configured to execute by one or more processors of a computer system communicating with a moving component and one or more output devices. In some embodiments, the one or more programs include instructions for: detecting a second portion of content corresponding to a corresponding position in conjunction with a first portion of content output via one or more output devices; and, in conjunction with the detection that the second portion of content corresponds to the corresponding position: moving a portion of the computer system in a first direction via the moving component based on determining that the corresponding position is a first position; and moving that portion of the computer system in a second direction different from the first direction via the moving component based on determining that the corresponding position is a second position different from the first position.
[0060] Executable instructions for performing these functions may optionally be included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Attached Figure Description
[0061] To better understand the various described embodiments, reference should be made to the following detailed description in conjunction with the accompanying drawings, wherein similar reference numerals in all the drawings indicate the corresponding parts.
[0062] Figure 1 This is a block diagram illustrating a computer system according to some implementation schemes.
[0063] Figures 2A to 2C These are illustrations of exemplary components and user interfaces of an electronic device 200 according to some implementation schemes.
[0064] Figure 3 This is a block diagram illustrating exemplary components of a device according to some implementation schemes.
[0065] Figure 4 This is a functional diagram of an exemplary actuator device according to some implementation schemes.
[0066] Figure 5 This is a functional diagram of an exemplary agent system based on some implementation schemes.
[0067] Figures 6A to 6J An exemplary user interface for displaying content in a widget based on external conditions, according to some implementation schemes, is illustrated.
[0068] Figure 7 This is a flowchart illustrating a method for displaying content in a widget based on the user's distance, according to some implementation schemes.
[0069] Figure 8 This is a flowchart illustrating a method for displaying content in a widget based on location, according to some implementation schemes.
[0070] Figure 9 This is a flowchart illustrating, according to some implementation schemes, a method for displaying content in a widget based on the presence of one or more users in an environment.
[0071] Figure 10 This is a flowchart illustrating a method for displaying a small component containing content based on the size of its relevance, according to some implementation schemes.
[0072] Figure 11 This is a flowchart illustrating a method, according to some implementation schemes, for displaying one or more small components containing content based on the presence of one or more users in an environment.
[0073] Figures 12A to 12C An exemplary user interface for detecting a second computer system and then receiving content from the second computer system, according to some implementation schemes, is illustrated.
[0074] Figure 13 This is a flowchart illustrating a method for detecting content in an image using a second computer system according to some embodiments and then receiving content from the second computer system.
[0075] Figure 14 This is a flowchart illustrating a method for a mobile computer system and then capturing media content according to some implementation schemes.
[0076] Figures 15A to 15C An exemplary user interface for adjusting the size of displayed content based on the computer system’s confidence level of the content is illustrated according to some implementation schemes.
[0077] Figure 16This is a flowchart illustrating a method, according to some implementation schemes, for adjusting the size of displayed content based on the confidence level of the computer system regarding the content.
[0078] Figures 17A to 17E An exemplary user interface for moving a portion of a computer system in a certain direction based on the positioning of the output content, according to some implementation schemes, is illustrated.
[0079] Figure 18 This is a flowchart illustrating a method for moving a portion of a computer system in a certain direction based on the positioning of the output content, according to some implementation schemes. Detailed Implementation
[0080] The following description illustrates exemplary methods, components, parameters, etc. While specific examples are described below, it should be understood that such examples should not be construed as limiting the scope of this disclosure to the explicit descriptions of the examples set forth herein, but rather as providing illustrative examples.
[0081] Each of the modules and applications identified herein corresponds to a set of executable instructions for performing one or more functions described above and methods described in this application (e.g., computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) may optionally not be implemented as separate software programs (such as computer programs (e.g., including instructions)), processes, or modules, and therefore various subsets of these modules may optionally be combined or otherwise rearranged in various embodiments. For example, a video player module may optionally be combined with a music player module into a single module. In some embodiments, memory may optionally store a subset of the modules and data structures identified above. Furthermore, memory may optionally store additional modules and data structures not described above.
[0082] One or more steps of the method described herein may depend on satisfying one or more conditions. In some embodiments, the method is performed through multiple iterative processes. In some embodiments, the conditional steps may be satisfied in different iterations of the same process and still remain within the scope of the method described herein. For example, for a given method comprising two steps depending on different conditions, those skilled in the art will understand that the given method should be considered performed even if the process is repeated multiple times until the conditional step is satisfied. In some embodiments, multiple iterations of the process are not required to practice the claims as set forth herein. For example, the claims of an electronic device, system, or computer-readable medium may be performed without iteratively repeating the process. In some embodiments, the claims of an electronic device, system, or computer-readable medium include instructions for performing one or more steps depending on satisfying one or more conditions. Because such instructions are stored in one or more processors and / or one or more memory locations, the claims of an electronic device, system, or computer-readable medium may include logic for determining whether one or more conditions have been satisfied without requiring the steps of the process to be repeated.
[0083] Although numerical descriptors such as "first" and / or "second" are used below to describe elements, these elements do not correspond to sequential or different representations and should not be limited to the stated numerical terms. In some embodiments, these terms are used only as prefixes to distinguish references to one element from references to another. For example, "first" device and "second" device can be two separate references to the same device. Conversely, for example, "first" device and "second" device can be references to two different devices (e.g., not the same device and / or not the same type of device). For example, a first computer system and a second computer system do not correspond to first and second in time and are merely used to distinguish the two computer systems. Therefore, without departing from the scope of the various described embodiments, a first computer system may be referred to as a second computer system, and a second computer system may be referred to as a first computer system.
[0084] In the description of various elements and examples, the use of certain terms is intended to provide a productive description of the following topics and should not be construed as restrictive. As used in describing the various examples herein, the singular forms “a,” “an,” and “the” should not be construed as excluding or precluding the plural forms unless the context clearly indicates otherwise. Similarly, “and / or” is used to cover any and all possible combinations of one or more associated listed items. For example, “x and / or y” should be interpreted as including “x” or “y” as well as “x and y” as a possible permutation. Furthermore, the terms “includes,” “including,” “comprises,” and / or “comprising” used in this specification specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0085] When describing choices and / or logical possibilities, the term "if" may optionally be interpreted, depending on the context, as meaning "when," "in response to determination," "in response to detection," or "according to determination." Similarly, depending on the context, the phrases "if determination..." or "if [the stated condition or event] is optionally interpreted as meaning "in response to determination," "in response to detection," "in response to detection," or "according to determination."
[0086] The processes described below enhance device operability and make user-device and / or user-device interfaces more efficient through various technologies (e.g., by helping users provide correct input and reducing user errors when operating / interacting with the device). These technologies include: providing users with improved feedback (e.g., visual, tactile, auditory, and / or haptic feedback); reducing the number of inputs required to perform an operation; providing additional control options without cluttering the user interface with additional displayed controls; performing an operation without requiring further input (e.g., user input) when a set of conditions are met; and / or other technologies (such as improving the security and / or privacy of the computer system and reducing the aging of one or more parts of the display user interface). These technologies also reduce power consumption and extend device battery life by enabling users to use the device more quickly and efficiently.
[0087] under, Figure 1 , Figures 2A to 2C and Figures 3 to 5 A description of an exemplary device for performing the techniques described herein is provided. Figures 6A to 6JAn exemplary user interface for displaying content in a widget based on external conditions, according to some implementation schemes, is illustrated. Figure 7 This is a flowchart illustrating a method for displaying content in a widget based on the user's distance, according to some implementation schemes. Figure 8 This is a flowchart illustrating a method for displaying content in a widget based on location, according to some implementation schemes. Figure 9 This is a flowchart illustrating, according to some implementation schemes, a method for displaying content in a widget based on the presence of one or more users in an environment. Figure 10 This is a flowchart illustrating a method for displaying a small component containing content based on the size of its relevance, according to some implementation schemes. Figure 11 This is a flowchart illustrating a method, according to some implementation schemes, for displaying one or more small components containing content based on the presence of one or more users in an environment. Figures 6A to 6J The user interface in the document is used to illustrate the processes described below, including Figure 7 , Figure 8 , Figure 9 , Figure 10 and Figure 11 The process in. Figures 12A to 12C An exemplary user interface for detecting a second computer system and then receiving content from the second computer system, according to some implementation schemes, is illustrated. Figure 13 This is a flowchart illustrating a method for detecting content in an image using a second computer system according to some embodiments and then receiving content from the second computer system. Figure 14 This is a flowchart illustrating a method for a mobile computer system and then capturing media content according to some implementation schemes. Figures 12A to 12C The user interface in the document is used to illustrate the processes described below, including Figure 13 and / or Figure 14 The process in. Figures 15A to 15C An exemplary user interface for adjusting the size of displayed content based on the computer system’s confidence level of the content is illustrated according to some implementation schemes. Figure 16 This is a flowchart illustrating a method, according to some implementation schemes, for adjusting the size of displayed content based on the confidence level of the computer system regarding the content. Figures 15A to 15C The user interface in the document is used to illustrate the processes described below, including Figure 16 The process in. Figures 17A to 17E An exemplary user interface for moving a portion of a computer system in a certain direction based on the positioning of the output content, according to some implementation schemes, is illustrated. Figure 18 This is a flowchart illustrating a method for moving a portion of a computer system in a certain direction based on the positioning of the output content, according to some implementation schemes. Figures 17A to 17E The user interface in the document is used to illustrate the processes described below, including Figure 18 The process in.
[0088] Figure 1 A block diagram depicts a computer system 100 (e.g., an electronic device and / or electronic system) comprising a set of electronic components communicating (e.g., connected) with each other (e.g., wired or wireless). It should be understood that computer system 100 is merely one example of a computer system that can be used to perform the functions described below, and one or more other computer systems can be used to perform the functions described below. Furthermore, although... Figure 1 The computer architecture of computer system 100 is described, but other computer architectures of computer systems (e.g., including more components, similar components and / or fewer components) may be used to perform the functionality described herein.
[0089] In some implementations, computer system 100 may correspond to (e.g., is and / or includes) a system-on-a-chip, a server system, a personal computer system, a smartphone, a smartwatch, a wearable device, a tablet computer, a laptop computer, a fitness tracker, a head-mounted display (HMD) device, a desktop computer, public equipment (e.g., smart speakers, connected thermostats and / or additional home-based computer systems), accessories (e.g., switches, lights, speakers, air conditioners, heaters, window covers, fans, locks, media playback devices, televisions, etc.), controllers, hubs and / or sensors.
[0090] In some embodiments, the sensor includes one or more hardware components capable of detecting (e.g., sensing, generating, and / or processing) information about the physical environment near the sensor. For example, the sensor may be configured to detect information around the sensor, detect information in one or more directions extending outward from the sensor, and / or detect information based on contact between the sensor and elements of the physical environment. In some embodiments, the hardware components of the sensor include sensing components (e.g., temperature and / or image sensors), transmitting components (e.g., radio and / or laser transmitters), and / or receiving components (e.g., laser and / or radio receivers). In some implementations, the sensors include angle sensors, breakage sensors, flow sensors, force sensors, gas sensors, humidity or moisture sensors, glass breakage sensors, chemical sensors, contact sensors, non-contact sensors, image sensors (e.g., RGB cameras and / or infrared sensors), particle sensors, photoelectric sensors (e.g., ambient light and / or sunlight), positioning sensors (e.g., GPS), precipitation sensors, pressure sensors, proximity sensors, radiation sensors, inertial measurement units, leak sensors, liquid level sensors, metal sensors, microphones, motion sensors, distance or depth sensors (e.g., RADAR, LiDAR), speed sensors, temperature sensors, time-of-flight sensors, torque sensors, ultrasonic sensors, vacancy sensors, presence sensors, voltage and / or current sensors, conductivity sensors, resistivity sensors, capacitance sensors, and / or water sensors. Although in Figure 1 Only a single computer system is depicted, but the functionality described below can be implemented using two or more computer systems operating together. Additionally, in some embodiments, computer system 100 includes one or more sensors as described above, and captures information about the physical environment by combining data from one sensor with data from one or more additional sensors (e.g., which are part of the computer and / or one or more additional computer systems).
[0091] like Figure 1As illustrated, computer system 100 comprises a processor subsystem 110, memory 120, and I / O interface 130. Memory 120 corresponds to system memory that communicates with processor subsystem 110. Electronic components constituting computer system 100 are electrically connected via interconnects 150, which allow communication between components of computer system 100. For example, interconnect 150 may be a system bus, one or more memory locations, and / or additional electrical channels for connecting multiple components of computer system 100. Additionally, I / O interface 130 is connected to I / O device 140 via wired and / or wireless connections. In some embodiments, computer system 100 includes a component comprising I / O interface 130 and I / O device 140, such that the functionality of each component is included within that component. Furthermore, it should be understood that computer system 100 may include one or more I / O interfaces that communicate with one or more I / O devices. In some embodiments, computer system 100 comprises multiple processor subsystems 100s, each processor subsystem being electrically connected via interconnect 150.
[0092] In some embodiments, processor subsystem 110 includes one or more processors or separate processing units capable of executing instructions (e.g., programs, systems, and / or interrupts) to perform the functionality described herein. For example, operating system-level and / or application-level instructions executed by processor subsystem 110. In some embodiments, processor subsystem 110 includes one or more components (e.g., implemented as hardware, software, and / or combinations thereof) capable of supporting, interpreting, and / or executing machine learning instructions and / or operations. For example, computer system 100 may perform operations locally based on a machine learning model. Alternatively or additionally, computer system 100 may communicate with (e.g., perform computations thereto and / or execute corresponding instructions) a remote interactive knowledge base (e.g., processing resources implementing machine learning models, artificial intelligence models, and / or large language models) to perform operations that may otherwise be outside the set of capabilities of computer system 100. For example, computer system 100 may determine a set of inputs (e.g., instructions, data, and / or parameters) to an interactive knowledge base for performing desired machine learning operations.
[0093] The memory 120, which communicates with the processor subsystem 110, can be implemented using a variety of different physical, non-transitory memory media. In some embodiments, the computer system 100 includes multiple memory components and / or various types of memory components, each of which is directly and / or connected to the processor subsystem 110 via interconnect 150. For example, the memory 120 can be implemented using removable flash drives, storage arrays, storage area networks (e.g., SANs), flash memory, hard disk storage devices, optical drive storage devices, floppy disk storage devices, removable disk storage devices, random access memory (e.g., SDRAM, DDR SDRAM, RAM-SRAM, EDO RAM, and / or RAMBUS RAM), and / or read-only memory (e.g., PROM and / or EEPROM). Additionally, in some embodiments, the processor subsystem 110 and / or interconnect 150 are connected to a memory controller, which is electrically connected to the memory 120.
[0094] In some embodiments, the instructions may be executed by processor subsystem 110. In this example, memory 120 may include a computer-readable medium (e.g., a non-transitory or transient computer-readable medium) that can be used to store (e.g., configured to store, assigned to store, and / or store) instructions executable by processor subsystem 110. In some embodiments, each instruction stored by memory 120 and executed by processor subsystem 110 corresponds to an operation for performing the functionality described herein. For example, memory 120 may store program instructions to implement the methods described below (including methods 700, 800, 900, 1000, and 1100). Figure 7 , Figure 8 , Figure 9 , Figure 10 and Figure 11 Related functionality.
[0095] As mentioned above, I / O interface 130 may be one or more types of interfaces that enable computer system 100 to communicate with other devices. In some embodiments, I / O interface 130 includes a bridge chip (e.g., a southbridge) connecting a front-side bus to one or more back-side buses. In some embodiments, I / O interface 130 enables communication with one or more I / O devices (exemplified as I / O device 140) via one or more corresponding buses or other interfaces. For example, I / O devices may include one or more of the following: physical user interface devices (e.g., physical keyboard, mouse, and / or joystick), storage devices (e.g., as described above with respect to memory 120), network interface devices (e.g., to a local area network or wide area network), sensor devices (e.g., as described above with respect to sensors), and / or auditory and / or visual output devices (e.g., screens, speakers, lamps, and / or projectors). In some embodiments, the visual output device is referred to as a display component. For example, a display component may be configured to provide visual output, such as displaying images on a physical visual medium via an LED display or image projection. As used herein, “display” content includes content that is displayed by sending data (e.g., image data and / or video data) to an integrated or external display component via a wired or wireless connection to visually generate content (e.g., video data rendered and / or decoded by a display controller).
[0096] In some embodiments, computer system 100 includes a component that integrates I / O device 140 with other components (e.g., a component including I / O interface 130 and I / O device 140). In some embodiments, I / O device 140 is separate from other components of computer system 100 (e.g., it is a discrete component). In some embodiments, I / O device 140 includes a network interface device that allows computer system 100 to connect to a network or other computer system (e.g., communicate with it) via wired or wireless means. In some embodiments, the network interface device may include Wi-Fi, Bluetooth, NFC, USB, Thunderbolt, Ethernet, etc. For example, computer system 100 may utilize NFC connectivity to facilitate banking, credit, financial, token (e.g., fungible or non-fungible tokens) and / or cryptocurrency transactions between computer system 100 and another nearby computer system.
[0097] In some embodiments, I / O device 140 includes components for detecting user (e.g., a person, animal, another computer system different from the computer system, and / or object) and / or input from the detected user (e.g., tap input and / or non-tap input (e.g., verbal input, acoustic request, acoustic command, acoustic statement, swipe input, hold and drag input, gaze input, air gesture, and / or mouse click)). In some embodiments, I / O device 140 enables computer system 100 to identify users associated with and / or not having accounts within the environment. For example, computer system 100 may detect known users (e.g., users corresponding to accounts) and access information about the users using the known users' accounts. In some embodiments, as part of computer system 100's user detection, computer system 100 detects that a user's account is associated with a group of users (e.g., included in and / or identified relative to that group of users). For example, computer system 100 may access information associated with accounts in a family defined as a group of accounts in response to detecting a member of that family. In some implementations, the user's account may be connected to additional accounts and / or additional computer systems. For example, computer system 100 may detect such additional computer systems and / or detect such computer systems used to detect users. In some implementations, computer system 100 may detect unknown users and enable guest accounts of unknown users to utilize computer system 100.
[0098] In some embodiments, I / O device 140 includes one or more cameras. In some embodiments, the camera includes an image sensor (e.g., one or more optical sensors and / or one or more depth camera sensors) that provides computer system 100 with the ability to detect user and / or user gestures (e.g., hand gestures and / or air gestures) as input. In some embodiments, air gestures are gestures detected without the user touching an input element that is part of the device (or independently of an input element that is part of the device) and based on detected movement of a part of the user's body through the air (including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of one of the user's hands relative to the user's other hand, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tapping gesture that includes the hand moving a predetermined amount and / or speed in a predetermined pose, or a shaking gesture that includes a predetermined speed or amount of rotation of a part of the user's body)). In some implementations, one or more cameras enable computer system 100 to send image and / or video information to an application. For example, image data captured by a camera can enable computer system 100 to complete a video call by sending video data to an application used to perform the video call.
[0099] In some embodiments, I / O device 140 includes one or more microphones. For example, the microphone may be used by 100 to obtain data and / or information from a user without contact input. In some embodiments, the microphone enables computer system 100 to detect verbal and / or voice input from a user. In some embodiments, computer system 100 utilizes voice input to enable personal assistant functionality. For example, a user makes a request to computer system 100 to perform an action and / or obtain information from the user. In some embodiments, computer system 100 utilizes voice input (e.g., in conjunction with one or more other input and / or output technologies) to request and / or detect information from a user without requiring physical contact between the user and computer system 100.
[0100] In some embodiments, I / O device 140 includes physical input media for a user to interact directly with computer system 100. In some embodiments, the physical input media includes one or more physical buttons (e.g., tactilely pressable buttons and / or touch-sensitive non-pressable components) on and / or connected to computer system 100, mouse and keyboard input methods (e.g., connected to computer system 100 together with and / or separately from one or more I / O interfaces), and / or touch-sensitive display components.
[0101] In some embodiments, I / O device 140 includes one or more components for outputting information (e.g., display components, audio generation components, speakers, haptic output devices, displays, projectors, and / or touch-sensitive displays). In some embodiments, computer system 100 uses I / O device 140 to transmit information and / or the state of computer system 100. In some embodiments, I / O device 140 includes haptic output components. For example, the haptic output component may be a haptic generation component that enables computer system 100 to transmit information to a user who is in contact with computer system 100 (e.g., holding, touching, and / or near it). In some embodiments, I / O device 140 includes one or more components for outputting visual output (e.g., video, images, animations, 3D rendering, augmented reality overlay, motion graphics, data visualization, digital art, etc.). For example, displaying content from one or more applications and / or system applications, and / or displaying widgets corresponding to one or more applications (e.g., controls displaying real-time information and / or data).
[0102] In some implementations, I / O device 140 includes one or more components for outputting audio (e.g., smart speaker, home theater system, soundbar, headphones, earphones, earbuds, speaker, TV speaker, augmented reality headphone speaker, audio jack, optical audio output, Bluetooth audio output, HDMI audio output, audio sensor, etc.). In some implementations, computer system 100 is capable of outputting audio through one or more speakers. For example, computer system 100 outputs audio-based content and / or information to a user. In some implementations, one or more speakers enable spatial audio (e.g., audio output corresponding to the environment (e.g., computer system 100 detects materials and / or objects in the environment and / or computer system 100 changes audio modes, intensities, and / or waveforms to compensate for changing environmental characteristics)).
[0103] Figure 2 to Figure 5Exemplary components and user interfaces of an electronic device 200 according to some embodiments are illustrated. The electronic device 200 (sometimes referred to herein as device 200) may include one or more features of the computer system 100. (Referring to Figures 2 to...) Figure 5 In the described example, device 200 is a laptop computer. In some embodiments, device 200 is not limited to a laptop computer, and those skilled in the art will recognize that device 200 can be one or more other devices (e.g., one or more of the components and / or functions described herein with respect to device 200). For example, device 200 can be a public device (such as a smart display, smart speaker, and / or television) and / or a personal device (such as a smartphone, smartwatch, tablet, desktop computer, fitness tracker, and / or head-mounted display). In some embodiments, the public device is configured to provide functionality to multiple users (e.g., simultaneously and / or at different times). In such embodiments, the public device can be managed and / or set by a single user. In some embodiments, the personal device is configured to provide functionality to a single user (e.g., once, such as when a single user logs into the personal device).
[0104] Figures 2A to 2C An example is shown of a device 200 located in three different physical locations. For example... Figure 2A As illustrated, device 200 is a laptop computer (also referred to herein as a "laptop"), which includes a base portion 200-2 (e.g., as shown in the image). Figure 2A The device 200 is horizontally placed on a surface such as a table and connected to a base portion 200-2 at a connection 200-3 (e.g., one or more connection points, motor arms, hinges, and / or joints). This connection allows the display portion 200-1 to pivot and / or change orientation relative to the base portion 200-2. For example, the device 200 may pivot at the connection 200-3 to rotate the display portion 200-1 and / or the device 200 to one or more positions corresponding to the “closed” internal state (e.g., as described below regarding...). Figure 2C(Further description). In some embodiments, the positioning corresponding to the "off" internal state is the positioning of the device 200 in a predetermined pose. For example, the predetermined pose may include a display portion 200-1 positioned parallel to the base portion 200-2 or forming a predetermined angle (e.g., 60 degrees) with respect to the base portion 200-2. In some embodiments, in the "off" internal state, the area of the device 200 in which content is displayed is positioned in a manner corresponding to (e.g., indicating, associating with, and / or configured to accompany) the "off" internal state (e.g., an area facing downwards, not visible, and / or obscuring the displayed content). In some embodiments, in the "off" internal state, the area of the device 200 in which content is displayed is not positioned in a manner corresponding to (e.g., indicating, associating with, and / or configured to accompany) the "off" internal state (e.g., instead positioned in a manner corresponding to the "on" internal state). For example, when not in a "closed" internal state, device 200 can be positioned within a range of different open positions (e.g., where display portion 200-1 is not parallel to base portion 200-2, and where the area where the content displayed by device 200 is visible and / or unobstructed). It should be recognized that display portion 200-1 being parallel to base portion 200-2 is an example of positioning corresponding to a "closed" internal state of device 200 (e.g., closed positioning). In some embodiments, another configuration may set another orientation of display portion 200-1 relative to base portion 200-2 as a closed positioning of device 200, such as... Figure 2C exemplified.
[0105] Figure 2A The left side illustrates display screen 200-4 (representing the area where device 200 displays content), and the right side illustrates device 200 in the corresponding pose. For example... Figure 2A As illustrated, device 200 is in a first position (e.g., display portion 200-1 is perpendicular to base portion 200-2, forming a 90-degree angle). Figure 2A In this context, display screen 200-4 represents the content currently being displayed (e.g., via a display component) when device 200 is first activated. Figure 2A In this embodiment, display screen 200-4 illustrates the device 200 in an "on" internal state (e.g., operable, powered, awake, higher power and / or more resource-intensive than the "off" state, and / or activated). In some embodiments, the device 200 displays (e.g., via display screen 200-4) one or more user interfaces (e.g., user interface objects, windows, application user interfaces, system user interfaces, controls, and / or other visual content). In some embodiments, the device 200 displays (e.g., via display screen 200-4) one or more user interfaces while in an "on" internal state. For example, in Figure 2AIn this configuration, device 200 is in an "on" internal state, and display screen 200-4 shows a desktop user interface 200-5, including an application window. In some embodiments, the user interface includes (and / or) one or more user interface objects (e.g., windows, icons, and / or other graphical objects). For example, the user interface (e.g., 200-5) may include one or more graphical objects that are different from and / or the same as the application window.
[0106] Figure 2B Display screen 200-4 is illustrated on the left, and device 200 in the corresponding pose is illustrated on the right. Figure 2B As illustrated, device 200 is in a second position (e.g., display portion 200-1 is at an angle relative to base portion 200-2 (e.g., via connection 200-3), forming an angle of 120 degrees (e.g., more than). Figure 2A (at a larger angle). Figure 2B In the diagram, display screen 200-4 represents the content being displayed when device 200 is in the second position. Display screen 200-4 illustrates the internal state of device 200 being "on" (e.g., with...). Figure 2A (The top diagram shows the same internal state). Figure 2B In the process, device 200 displays (e.g., via display screen 200-4) a desktop user interface 200-5 (e.g., with...). Figure 2A (The same as shown in the image). In some implementations, device 200 displays a different user interface (e.g., different from desktop user interface 200-5). For example, although... Figure 2B Example of device 200 in a state of being with Figure 2A Different positioning displays and Figure 2A The same desktop user interface 200-5 exists, but device 200 may display different user interfaces. In some embodiments, device 200 displays a user interface corresponding to (e.g., based on, due to, caused by, involved in, and / or configured to accompany) a physical state (e.g., positioning, location, and / or orientation), including content specific to a particular angle or specific to the current context.
[0107] Figure 2C Display screen 200-4 is illustrated on the left, and device 200 in the corresponding pose is illustrated on the right. Figure 2C As illustrated, device 200 is in a third position (e.g., display portion 200-1 is at an angle relative to base portion 200-2 (e.g., via connection 200-3), forming a 60-degree angle (e.g., compared to...). Figure 2A and Figure 2B (smaller angles)). Figure 2C In the diagram, display screen 200-4 shows the content being displayed when device 200 is in the third position. Figure 2CIn the diagram, displays 200-4 illustrate an internal state in which device 200 is "off" (e.g., not operating, not powered, not woken up, not activated, powered off, asleep, hibernating, inactive, and / or disabled). In some embodiments, device 200 does not display (e.g., via displays 200-4) one or more user interfaces (e.g., no visual content is displayed) when it is in the "off" internal state. In some embodiments, device 200 displays (e.g., via displays 200-4) one or more user interfaces (e.g., the same as and / or different from one or more user interfaces displayed when it is in the "on" internal state) (e.g., a user interface specific to the "off" state and / or a way of displaying a user interface not specific to the "off" internal state). Figure 2C In this case, display screen 200-4 is blank because nothing is displayed on the monitor of device 200 (e.g., display screen 200-4 is off and / or does not display the user interface) (e.g., desktop user interface 200-5 is not displayed on display screen 200-4).
[0108] In some embodiments, device 200 includes one or more components (referred herein also as “moving components”) that enable device 200 to perform (e.g., cause and / or control) movement (and / or be moved). For example, performing movement may include a portion of mobile device 200 (e.g., less or all components of the device moving), all of mobile device 200 (e.g., the entire device (including all its components) moving, such as by changing position), and / or moving one or more other devices and / or components (e.g., communicating with device 200 and / or the moving components of device 200). For example, device 200 may move automatically (e.g., pivot), cause and / or control movement of display portion 200-1 relative to base portion 200-2, such as moving to... Figures 2A to 2CAny of the illustrated locations. In some embodiments, device 200 performs movement based on its internal state. Performing movement based on internal state enables device 200 to perform new (e.g., otherwise unavailable) interactions. For example, such new interactions of device 200 can be configured using special features, functions, patterns, and / or procedures that leverage device 200's ability to perform movement. Examples of such interactions include using movement to (e.g., to a user) convey the device's internal state (e.g., on, off, sleep, and / or hibernate) to assist user input (e.g., shorten the distance to the user) and / or enhance the device's interactive behavior (e.g., moving in a specific manner during interaction with the user, conveying information such as importance and / or direction of attention). In some embodiments, the performed movement corresponds to (e.g., caused by, responded to, and / or determined and / or performed based on) one or more of the following: detected input, detected context (e.g., environmental context and / or user context), and / or the device 200's internal state (e.g., internal state and / or a set of multiple internal states). For example, device 200 can move the display portion, causing device 200 to move from a position where... Figure 2A The illustrated first positioning moves to the position where Figure 2B The illustrated second positioning. In this example, device 200 can detect that the user has repositioned relative to device 200 (e.g., the user stands up), and in response, device 200 can perform a movement to the second positioning such that the display is at an optimized viewing angle based on the height and / or angle of the user's eye relative to the display of device 200. As another example, device 200 can perform a movement such that device 200 moves from a position... Figure 2A The illustrated first positioning moves to the position where Figure 2C The illustrated third location. In this example, device 200 may perform a movement to a third location in response to detecting an internal state with reduced activity (e.g., an "off" internal state as described above). In this way, movement of device 200 to one or more locations can indicate the internal state of device 200.
[0109] Figures 2A to 2C An example is illustrated of a device 200 having a display portion capable of moving with one degree of freedom via a connection 200-3 (e.g., a hinge) connecting the display portion 200-1 to a base portion 200-2. In some embodiments, the device 200 includes one or more components having one or more degrees of freedom. For example, a moving component of the device 200 (e.g., an output component that causes and / or allows movement) (e.g., Figure 5Device 200-26C may include multiple degrees of freedom (e.g., six degrees of freedom including three translational components and three rotational components). For example, device 200 may be implemented to move the display portion by telescopic forward or backward movement (e.g., display portion 200-1 moves forward in space relative to the base portion while the base portion 200-2 remains stationary (e.g., to shorten and / or lengthen the user's viewing distance)). As yet another example, device 200 may be implemented to move the display portion to rotate about an axis perpendicular to the hinge, such that the display portion can rotate to position the display to follow the user as the user walks around device 200. Although Figures 2A to 2C The example shown illustrates a hinge, but other moving components may be included in device 200, such as actuators (e.g., pneumatic actuators, hydraulic actuators, and / or electric actuators), movable bases, rotatable components, and / or rotatable bases. In some embodiments, one or more moving components may enable device 200 to move in different ways, such as rotation (e.g., 0 to 360 degrees), lateral movement (e.g., to the right, left, down, up, and / or any combination thereof), and / or tilting (e.g., 0 to 360 degrees).
[0110] Figure 3 An exemplary block diagram of device 200 is illustrated. In some embodiments, device 200 includes... Figure 1 A, Figure 1 B Figure 3 and Figure 5 B describes some or all of the components. For example... Figure 3 As illustrated, device 200 has a bus 200-13 that operatively couples I / O segments 200-12 (also referred to as I / O sub-segments and / or I / O interfaces) to processor 200-11 and memory 200-10. For example... Figure 3 As illustrated, I / O section 200-12 is connected to output device 200-16 (also referred to herein as "output component"). In some embodiments, output device 200-16 includes one or more visual output devices (e.g., display components such as monitors, displays, projectors, and / or touch-sensitive displays), one or more tactile output devices (e.g., devices that cause vibration and / or other tactile outputs), one or more audio output devices (e.g., speakers), and / or one or more moving components (e.g., actuators, motors, mechanical linkages, devices that cause and / or allow movement, and / or one or more moving components as described above). Figure 3As illustrated, output device 200-16 includes two exemplary moving components (e.g., a movement controller 200-17 and an actuator 200-18). Actuator 200-18 can be any component that performs (e.g., partial and / or overall) physical movement of a device (e.g., device 200 and / or devices coupled to and / or in contact with that device). Movement controller 200-17 can be any component (e.g., a control device) that controls actuator 200-18 (e.g., provides control signals to it). For example, movement controller 200-17 can provide control signals that actuate actuator 200-18 (e.g., cause physical movement). In some embodiments, movement controller 200-17 includes one or more logic components (e.g., a processor), one or more feedback components (e.g., sensors), and / or one or more control components (e.g., for applying control signals, such as relays, switches, and / or control lines). In some embodiments, the motion controller 200-17 and the actuator 200-18 are embodied in the same device and / or component (e.g., a dedicated onboard motion controller 200-17 attached to the actuator 200-18). In some embodiments, the motion controller 200-17 and the actuator 200-18 are embodied in different devices and / or components (e.g., one or more processors 200-11 may serve as the motion controller 200-17 for the actuator 200-18). In some embodiments, the motion controller 200-17 and / or the actuator 200-18 are embodied in a device (or one or more devices) other than device 200 (e.g., device 200 is coupled to (e.g., temporarily and / or removably) another device and may instruct the motion controller 200-17 and / or the actuator 200-18 to control the other device). Actuator 200-18 can be used to induce one or more types of mechanical movement (e.g., linear and / or rotary movement) in one or more ways (e.g., using electric, magnetic, hydraulic and / or pneumatic power). Examples of actuator 200-18 may include electromechanical actuators, linear actuators and / or rotary actuators.
[0111] like Figure 3As illustrated, I / O section 200-12 is connected to input device 200-14. In some embodiments, input device 200-14 includes one or more visual input devices (e.g., cameras and / or light sensors), one or more physical input devices (e.g., buttons, sliders, switches, touch-sensitive surfaces, and / or rotatable input mechanisms), one or more audio input devices (e.g., microphones), and / or other input devices (e.g., accelerometers, pressure sensors (e.g., contact strength sensors), distance sensors, temperature sensors, GPS sensors, accelerometers, orientation sensors (e.g., compasses), gyroscopes, motion sensors, and / or biometric sensors). Furthermore, I / O section 200-12 may be connected to communication unit 200-15 for receiving application and operating system data using Wi-Fi, Bluetooth, Near Field Communication (NFC), cellular, and / or other wireless (and / or wired) communication technologies.
[0112] The memory 200-10 of the personal electronic device 200 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions, which, when executed by one or more computer processors 200-11, may cause the computer processors to perform, for example, the techniques described below, including processes 700, 800, 900, 1000, 1100, 1300, 1400, 1600, and 1800. Figure 7 , Figure 8 , Figure 9 , Figure 10 , Figure 11 , Figure 13 , Figure 14 , Figure 16 and Figure 18 A computer-readable storage medium can be any medium that can tangibly contain or store computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage medium is a transient computer-readable storage medium. In some embodiments, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media can include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical discs based on CD, DVD, and Blu-ray technologies, and persistent solid-state storage such as flash memory and solid-state drives. Electronic device 200 is not limited to Figure 3 The components and configurations may include, but may include, other and / or additional components in a variety of possible configurations, all of which are intended to fall within the scope of this disclosure.
[0113] Figure 4A functional diagram of actuator 200-18B according to some embodiments is illustrated. As described above, actuator 200-18B can be any component that performs physical movement. In some embodiments, actuator 200-18B is operated using inputs including control signal 200-18A and / or energy source 200-18B. For example, actuator 200-18B can be a rotary actuator that converts electrical energy into rotational movement. This rotational movement can cause the aforementioned... Figures 2A to 2C The movement of the display portion of the described device 200 (e.g., the counterclockwise rotation of the actuator moves the device 200 to a position with a large angle) Figure 2B The illustrated second positioning), and the clockwise (e.g., counterclockwise) rotational movement of the actuator moves the device 200 to a positioning with a smaller angle (e.g., Figure 2C (The illustrated third positioning). Control signal 200-18A may indicate one or more start and / or stop commands, movement and / or actuation direction, movement and / or actuation speed, movement and / or actuation time, target positioning (e.g., pose and / or position) of movement and / or actuation, and / or one or more other characteristics of movement and / or actuation. In some embodiments, the control signal and the energy source are the same signal and / or input. In some embodiments, one or more additional components (e.g., mechanical and / or electrical) (e.g., removably or permanently) are coupled to actuator 200-18B to influence movement and / or actuation (e.g., mechanical linkages such as lead screws, gears, and / or other components for changing (e.g., switching) the characteristics of movement and / or actuation). In some embodiments, actuator 200-18B includes one or more feedback components (e.g., a positioning sensor, an encoder, an overcurrent sensor, and / or a force sensor) that form part of a feedback loop for modifying and / or stopping movement and / or actuation (e.g., slowing down actuation upon reaching a target position and / or stopping actuation if physical resistance to actuation is detected via a sensor). In some embodiments, one or more feedback components are included (e.g., partially and / or entirely) in a motion controller (e.g., motion controller 200-13) operatively coupled to the actuator.
[0114] Now turn attention to the functionality (e.g., features and / or capabilities) of one or more devices (e.g., computer system 100 and / or electronic device 200). One such functionality is the implementation of an “agent,” which may alternatively be referred to as a software agent, intelligent agent, interactive agent, virtual assistant, intelligent virtual assistant, interactive virtual assistant, personal assistant, intelligent personal assistant, interactive personal assistant, intelligent interactive personal assistant, and / or artificial intelligence (AI) assistant. In some implementations, an agent refers to one or more sets of functions implemented in hardware and / or software (e.g., local and / or remote) on an agent system (e.g., a single device and / or multiple devices). In some implementations, the agent performs operations to perceive the environment, acquire knowledge, retrieve knowledge, learn skills, interact with the user, and / or perform tasks. The agent may perform these (and / or other) operations, for example, in response to user input and / or automatically (e.g., at an appropriate time determined based on the perceived context). An incomplete list of exemplary operations that an agent may be used for and / or used with includes: tracking a user’s eyes, face, and / or body (e.g., to move with the user and / or identify the user’s intentions and / or activities); detecting, identifying, and / or classifying users in the environment; detecting and / or responding to input (e.g., verbal input, air gestures, and / or physical input, such as touch input and / or force input to physical hardware components (e.g., buttons, knobs, and / or sliders); detecting context (e.g., user context, operational context, and / or environmental context); moving (e.g., changing pose, orientation, orientation, and / or location); performing one or more operations in response to input, context, and / or stimuli (e.g., objects or events that elicit one or more responsive operations on the device (e.g., outside and / or inside the device)); providing intelligent interaction capabilities (e.g., in part due to one or more machine learning (“ML”) models, such as large language models (“LLM”)) to respond to and / or perform operations; and / or (e.g., automatically and / or intelligently) performing tasks (e.g., a set of operations for achieving a specific goal). In some implementations, the agent performs actions in response to contactless input (e.g., air gestures and / or natural language commands). The foregoing list is intended to exemplify the actions that can be performed by the agent, but is not intended to be an exhaustive list. Other actions fall within the intended scope of the agent's capabilities. Furthermore, for the purposes of this disclosure, the agent need not include all the functionalities mentioned herein, but may include fewer or more functionalities (e.g., the agent may be implemented on an agent system that does not have mobile functionality but otherwise includes an intelligent personal assistant capable of interacting with the user).
[0115] In some implementations, a user is one or more of a user, person, object, and / or animal in an environment (e.g., a device) that is perceived (e.g., detected by the device, one or more other devices, and / or one or more of its components). In some implementations, a user is an entity that is perceived (e.g., detected by the device, one or more other devices, and / or one or more of its components). In some implementations, an entity is something distinguishable from surrounding entities (e.g., components of the environment and / or other users) and / or something that is considered to be a discrete logical construct via one or more components (e.g., a sensing component and / or other components). In some implementations, a user is physical and / or virtual. For example, a physical user may represent a user standing in front of the device and perceived by the device. As another example, a virtual user may represent an avatar in a virtual scene perceived by the device (e.g., an avatar detected in a media stream received by the device and / or captured by the device's camera). Although presented above as an example of “user,” throughout this disclosure, the terms and / or concepts referred to as “person,” “object,” and / or “animal” may be used interchangeably with “user” unless otherwise expressly indicated. For example, unless otherwise expressly indicated, the use of the term “user” can also be understood to refer to “subject.”
[0116] As an example, and to revisit Figures 2A to 2C An agent, at least partially implemented on device 200, can perform operations that cause the display portion 200-1 of device 200 to move relative to the base portion 200-2. For example, the agent detects (e.g., senses and determines that it has occurred) contexts including a user standing up (e.g., based on face detection and tracking); and in response, the agent causes device 200 to open and / or device 200 to open the display portion 200-1 to a greater angle. As another example, the agent can detect verbal input corresponding to (e.g., interpreted as and / or implying including) a request to move the display (e.g., “Please move my display” or “Please enter sleep mode”); and in response, the agent causes device 200 to move and / or device 200 to move the display portion 200-1.
[0117] Figure 5 A functional diagram of an exemplary agent system 200-20 is shown. Figure 5 As illustrated, agent system 200-20 has a dashed box boundary surrounding input component 200-22, agent component 200-24, and output component 200-26. In some embodiments, agent system 200-20 includes more than Figure 5The examples illustrate fewer, more, and / or different components. In some embodiments, agent system 200-20 is implemented on a single device (e.g., computer system 100 and / or electronic device 200). In some embodiments, agent system 200-20 is implemented on multiple devices. In some embodiments, in Figure 5 One or more components of the agent system 200-20 illustrated and / or described with respect to this figure are external to but operatively coupled to the agent system (e.g., accessories, external devices, external sensors, external actuators, external display components, external speakers, and / or external databases). In some embodiments, one or more components of the agent system 200-20 are local to one or more other components of the agent system 200-20. In some embodiments, one or more components of the agent system 200-20 are remote from one or more other components of the agent system 200-20.
[0118] In some implementations, input components 200-22 include components for performing sensing and / or communication functions of the agent system 200-20. For example... Figure 5 As illustrated, input components 200-22 include one or more sensors 200-22A. The one or more sensors 200-22A may include any components for detecting data corresponding to the physical environment. Examples of the one or more sensors 200-22A may include: cameras, light sensors, microphones, accelerometers, positioning sensors, pressure sensors, temperature sensors, olfactory sensors, and / or contact sensors. This list is not intended to be exhaustive, and the one or more sensors 200-22A may include other sensors not explicitly identified herein that detect, generate, and / or otherwise provide data that can be used (e.g., processed, stored, and / or transformed) to detect data corresponding to the physical environment. Figure 5 As illustrated, input component 200-22 includes one or more communication components 200-22B. The one or more communication components 200-22B may include any component (e.g., antenna, modem, network interface component, encoder, decoder, and / or communication protocol stack) for transmitting and / or receiving communications within and / or outside the agent system 200-20. Communication components 200-22B may be between different devices and / or between components within the same device. Communication may include control signals and / or data (e.g., messages, instructions, files, application data, and / or media streams). In some embodiments, input component 200-22 includes more than Figure 5 The components illustrated herein may be fewer, more, and / or different. In some implementations, input components 200-22 are implemented in hardware and / or software.
[0119] In some implementations, agent components 200-24 include components that manage and / or perform the agency functions of agent system 200-20. For example... Figure 5 As illustrated, agent components 200-24 include the following functional components: task flow, coordination and / or orchestration component 200-24A, management component 200-24B, perception component 200-24C, evaluation component 200-24D, interaction component 200-24E, strategy and decision-making component 200-24F, knowledge component 200-24G, learning component 200-24H, model component 200-24I, and API component 200-24J. Each of these components is briefly described below. It is important to note that this list of agent components 200-24 is not intended to be exhaustive, and agent components 200-24 may include other functional components not explicitly identified herein, which may be used (e.g., to process, store, and / or transform) any functions of the agent, such as those described herein. In some embodiments, agent components 200-24 include more than Figure 5 The components illustrated herein may be fewer, more, and / or different. In some implementations, agent components 200-24 are implemented in hardware and / or software.
[0120] In some implementations, task flow, coordination, and / or orchestration components 200-24A perform operations that enable the agent to handle coordination between various components. For example, operations may include handling a data processing task flow to move from perception components 200-24C (e.g., those detecting speech input) to model components 200-24I (e.g., for processing the detected speech input using a large language model to determine the content and / or intent of the speech input). In some implementations, task flow, coordination, and / or orchestration components 200-24A perform operations that enable the agent to handle coordination between one or more external components (e.g., resources). For example, Figure 5 Examples of external components (such as external databases 200-30) are illustrated. In some embodiments, management component 200-24B includes functionality performed by the operating system of the device implementing agent system 200-20. In some embodiments, management component 200-24B includes functionality performed by one or more applications of the device implementing agent system 200-20.
[0121] In some implementations, management component 200-24B performs operations that enable the agent system to handle administrative tasks, such as managing system and / or component updates, managing user accounts, and managing system settings and / or component settings. In some implementations, management component 200-24B includes functionality performed by the operating system of the device implementing agent system 200-20. In some implementations, management component 200-24B includes functionality performed by one or more applications of the device implementing agent system 200-20.
[0122] In some embodiments, the sensing components 200-24C perform operations that enable the agent to perceive environmental input. For example, operations may include detecting that context and / or environmental conditions have occurred, detecting the presence of a user (e.g., a user, person, object, and / or animal in the environment), detecting input including voice, detecting input including air gestures, detecting facial expressions, detecting user characteristics (e.g., visible and / or invisible), and / or detecting verbal and / or physical cues. In some embodiments, the sensing components 200-24C include functionality performed by the operating system of the device implementing the agent system 200-20. In some embodiments, the sensing components 200-24C include functionality performed by one or more applications of the device implementing the agent system 200-20.
[0123] In some embodiments, evaluation component 200-24D performs operations that enable the agent to process evaluation data (e.g., to determine context, such as user context, environmental context, and / or operational context). For example, operations may include evaluating data collected from perception component 200-24C, knowledge component 200-24G, external database 200-30, and / or remote processing resource 200-32. In some embodiments, evaluation component 200-24D includes functionality performed by the operating system of the device implementing agent system 200-20. In some embodiments, evaluation component 200-24D includes functionality performed by one or more applications of the device implementing agent system 200-20.
[0124] This document refers to an environmental context (also referred to herein as "context of the environment" and / or "context corresponding to the environment"). In some embodiments, an environmental context is a context based on one or more characteristics of the environment (e.g., user, location, time, weather, and / or lighting). For example, an environmental context may include rain outside, daytime, and / or the device currently being in a park. In some embodiments, the device (e.g., using an agent) uses one or more of detected inputs (e.g., via one or more input components) and / or received data (e.g., from one or more other devices and / or components communicating with the device) to determine the environmental context (e.g., currently true, happening, and / or applicable).
[0125] This document refers to user context (also referred to herein as "user context" and / or "context corresponding to the user") (and / or user context). In some embodiments, user context is a context based on one or more characteristics of the user. For example, user context may include the user's appearance and / or clothing, personality, actions, behaviors, movement, location, and / or pose. In some embodiments, the device (e.g., using an agent) determines user context (e.g., currently true, happening, and / or applicable) using one or more of detected input (e.g., via one or more input components) and / or received data (e.g., from one or more other devices and / or components communicating with the device). In some embodiments, the device determines user context based on historical context and / or learned user characteristics, wherein one or more user characteristics are learned and / or stored by the device over a period of time.
[0126] This document refers to an operational context (also referred to herein as "the context of operation" and / or "operational context"). In some embodiments, an operational context is a context based on one or more characteristics of the device's operation (e.g., the device and / or one or more other devices that determine and / or access the operational context). For example, an operational context may include the internal state of the device (and / or one or more components of the device), the device's internal dialogue (e.g., the device's understanding of the context), the operations performed by the device, and applications and / or processes executed on the device (e.g., running and / or opening). In some embodiments, the device (e.g., using an agent) uses one or more of the following to determine the operational context (e.g., currently true, happening, and / or applicable): detected input (e.g., via one or more input components) and / or received data (e.g., from one or more other devices and / or components communicating with the device). In some embodiments, the device (e.g., using an agent) uses one or more internal states (e.g., accessed, retrieved, and / or queried by the device's processes) to determine the operational context (e.g., currently true, happening, and / or applicable).
[0127] In some implementations, interaction components 200-24E perform operations that enable the agent to manage and / or perform interactions with the user. For example, operations may include determining an appropriate interaction model for a specific context and / or in response to specific input. In some implementations, interaction components 200-24E include functionality performed by the operating system of the device implementing agent system 200-20. In some implementations, interaction components 200-24E include functionality performed by one or more applications of the device implementing agent system 200-20.
[0128] In some implementations, the policy and decision components 200-24F perform operations that enable the agent to take actions based on available data. For example, operations may include determining which actions to perform and / or which functional components to utilize in response to detected context. In some implementations, the policy and decision components 200-24F include functionality performed by the operating system of the device implementing the agent system 200-20. In some implementations, the policy and decision components 200-24F include functionality performed by one or more applications of the device implementing the agent system 200-20.
[0129] In some implementations, the knowledge component 200-24G performs operations that enable the agent to access and use the stored knowledge. For example, operations may include indexing, storing, and / or retrieving data from a data repository, database, and / or other resource. In some implementations, the knowledge component 200-24G includes functionality performed by the operating system of the device implementing the agent system 200-20. In some implementations, the knowledge component 200-24G includes functionality performed by one or more applications of the device implementing the agent system 200-20.
[0130] In some implementations, the learning components 200-24H perform operations that enable the agent to learn through experience. For example, operations may include observing and / or tracking data, including preferences, routines, user characteristics, and / or environmental characteristics, in a way that allows the data to inform the agent and / or its components about future actions (e.g., when performing tasks and / or interacting with a user). In some implementations, the learning components 200-24H include functionality performed by the operating system of the device implementing the agent system 200-20. In some implementations, the learning components 200-24H include functionality performed by one or more applications of the device implementing the agent system 200-20.
[0131] In some implementations, model components 200-24I perform operations that enable the agent to apply ML models (e.g., large language models (LLMs)) to process data. For example, operations may include storing the ML model, executing the ML model, training and / or retraining the ML model, and / or otherwise managing aspects of implementing the ML model. In some implementations, model components 200-24I include functionality performed by the operating system of the device implementing agent system 200-20. In some implementations, model components 200-24I include functionality performed by one or more applications of the device implementing agent system 200-20.
[0132] In some implementations, agent system 200-20 responds to natural language input. For example, agent system 200-20 responds to natural language input in the form of statements, questions, commands, and / or requests. In some implementations, agent system 200-20 outputs text and / or speech output provided in natural language or mimicking a natural language style. For example, agent system 200-20 may use a speech response indicating the current outside temperature at the user's location (e.g., "It's 18 degrees outside") to handle the natural language question "How hot is it outside?". In some implementations, agent system 200-20 responds to natural language input by providing information (e.g., weather, travel, and / or calendar information) and / or performing tasks (e.g., opening a document, searching a database, and / or opening an application).
[0133] In some implementations, agent system 200-20 includes and / or relies on one or more data models to process inputs (e.g., natural language input, gesture input, visual input, and / or other data input) and / or provide outputs (e.g., information output via natural language output, visual output, audio output, and / or text output). Such data models may include user data (e.g., data based on a specific interaction and / or from the user with whom the interaction takes place) and / or global data (e.g., general data based on the interaction and / or data from many users) and / or be trained using user data and / or global data. For example, user data (e.g., preferences, prior use of language and / or phrases, calendar entries, contact lists, and / or activity data) can be used to better infer user intent and / or provide responses more likely to resolve user requests. In some implementations, the data models used by agent system 200-20 include one or more machine learning components (e.g., hardware and / or software) (e.g., one or more neural networks), which are used by and / or implemented using them. Such machine learning components can be used to process spoken input to determine words and / or phrases therein, one or more contexts corresponding to the words, user intent corresponding to the words, one or more confidence scores, and / or a set of one or more actions to be taken in response to the spoken input. Similar operations can be performed to process other types of input, such as visual input, data input, and / or text input. Such data models may include machine learning and / or data processing models, including but not limited to natural language processing models, language models, speech recognition models, object recognition models, visual processing models, ontology, task flow models, and / or intent recognition models (e.g., for determining user intent).
[0134] In some implementations, application programming interface (API) components 200-24J perform operations that enable the agent to interface with services, devices, and / or components. For example, operations may include relaying data (e.g., requests, responses, and / or other messages) between data interfaces (e.g., between software programs, between system processes and application processes, between system processes, between application processes, between communication protocols, between clients and servers, between file systems, and / or between components on different sides of a trust boundary). In some implementations, the data interfaces served by API components 200-24J are local (e.g., for a device, such as two application processes exchanging data) and / or remote (e.g., from a device, such as interfacing with a web service via a remote server). In some implementations, API components 200-24J include functionality performed by the operating system of the device implementing agent system 200-20. In some implementations, API components 200-24J include functionality performed by one or more applications of the device implementing agent system 200-20.
[0135] In some implementations, output components 200-26 include components for performing the output functions of agent system 200-20. A brief description follows. Figure 5 The exemplary output components are illustrated herein. In some embodiments, output components 200-26 include... Figure 5 The components illustrated may include fewer components, more components, and / or different components. In some implementations, the input components are implemented in hardware and / or software.
[0136] like Figure 5 As illustrated, output components 200-26 include one or more visual output components 200-26A. One or more visual output components 200-26A may include any component used for outputting (e.g., generating, creating, and / or displaying) and / or causing visual output (e.g., visually perceptible output, such as a graphical user interface, playback of visual media content, and / or lighting). Examples of one or more visual output components 200-26A may include: display components, projectors, head-mounted displays (HMDs), light-emitting diodes (“LEDs”), and / or components that create visually perceptible effects (e.g., movement). This list is not intended to be exhaustive, and one or more visual output components 200-26A may include other visual output components not explicitly identified herein that detect, generate, and / or otherwise provide data that can be used (e.g., processed, stored, and / or transformed) to output visual output.
[0137] like Figure 5As illustrated, output components 200-26 include one or more audio output components 200-26B. One or more audio output components 200-26B may include any component for outputting (e.g., generating and / or creating) and / or causing audio output (e.g., audibly perceptible output, such as sound, music, speech, and / or audio media content). Examples of one or more audio output components 200-26B may include: speakers, audio amplifiers, tone generators, and / or components that produce audibly perceptible effects (e.g., movement, such as vibration). This list is not intended to be exhaustive, and one or more audio output components 200-26B may include other audio output components not explicitly identified herein that detect, generate, and / or otherwise provide data that can be used (e.g., processed, stored, and / or transformed) the output audio output.
[0138] like Figure 5 As illustrated, output components 200-26 include one or more motion output components 200-26C (also referred to herein as "motion components"). One or more motion output components 200-26C may include any component for outputting (e.g., generating and / or creating) and / or causing motion output (e.g., output including physical movement of a device and / or another device / component). Examples of one or more motion output components 200-26C may include: motion controllers, actuators, mechanical linkages, electromechanical devices, and / or components that generate physical movement. This list is not intended to be exhaustive, and one or more motion output components 200-26C may include other motion output components not explicitly identified herein that detect, generate, and / or otherwise provide data that can be used (e.g., processed, stored, and / or transformed) to output motion output. Figure 5 As illustrated, output components 200-26 include one or more haptic output components 200-26D. One or more haptic output components 200-26D may include any component for outputting (e.g., generating, creating, and / or displaying) and / or causing haptic output (e.g., output using haptically perceptible means, such as vibration, pressure, texture, and / or shape). Examples of one or more haptic output components 200-26D may include: speakers, components that generate vibrations, components that generate texture changes, components that generate pressure changes, and / or components that create perceptible haptic effects. This list is not intended to be exhaustive, and one or more haptic output components 200-26D may include other haptic output components not explicitly identified herein that detect, generate, and / or otherwise provide data that can be used (e.g., processed, stored, and / or transformed) to output haptic output.
[0139] like Figure 5As illustrated, output components 200-26 include one or more communication components 200-26E. The one or more communication components 200-26E may include any components (e.g., antennas, modems, network interface components, encoders, decoders, and / or communication protocol stacks) for transmitting and / or receiving communications internal and / or external to the agent system 200-20. In some embodiments, communication may be between different devices and / or between components within the same device. In some embodiments, communication may include control signals and / or data (e.g., messages, instructions, files, application data, and / or media streams). In some embodiments, one or more communication components 200-26E include one or more features of one or more communication components 200-22B (e.g., as described above). In some embodiments, one or more communication components 200-26E are identical to one or more communication components 200-22B (e.g., handling communication inputs and outputs and therefore considered as one or more of input and output components and / or both).
[0140] Throughout this disclosure, reference may be made to moving output (e.g., referred to in various forms such as: movement, device movement, moving output, device motion, motion output, and / or motion output). In some embodiments, output movement (e.g., an output that causes movement) refers to movement of an electronic device (e.g., a portion or component thereof relative to another portion and / or the entire electronic device). For example, refer again to Figure 2B The movable output can refer to the device 200 actuating the movable component 200-3 to move the display part 200-1 to... Figure 2B The illustrated location (e.g., from) Figure 2A (Positioning within). In some embodiments, the motion output is not (e.g., excluding and / or not only including) tactile output (e.g., tactile motion output). In some embodiments, the motion output is not (e.g., excluding and / or not only including) vibration output. In some embodiments, the motion output is not (e.g., excluding and / or not only including) oscillatory motion (e.g., movement of an actuator that causes vibration solely by repeatedly moving a component along a path within the device). In some embodiments, the motion output includes (e.g., requiring and / or causing) a change in the position and / or pose of at least a portion (and / or all) of a component or electronic device. In some embodiments, the motion output includes an output that moves at least a portion (and / or all) of a component or electronic device from a first position and / or a first pose to a second position and / or a second pose. For example, relative to Figures 2A to 2C ,exist Figure 2A , Figure 2B and Figure 2CIn each of these embodiments, display portion 200-1 is shown in a different position (e.g., in space) and pose (e.g., relative to base portion 200-2). In some embodiments, the motion output includes an output that moves at least a portion (and / or all) of a component or electronic device to a third position and / or a third pose (e.g., from a first position and / or a first pose and / or from a second position and / or a second pose). In some embodiments, the third position and / or the third pose is the same as the first position and / or the first pose and / or the second position and / or the second pose. For example, the motion output may include... Figure 2A Equipment 200 from Figure 2A Starting from the first position shown in the example, move to Figure 2B The second position is illustrated, and the movement is made to return to... Figure 2A The illustrated first positioning. For example, the motion output may include... Figure 2A Equipment 200 from Figure 2A Starting from the first position shown in the example, move to Figure 2B The second position is illustrated, and the movement continues until it stops at... Figure 2C The third positioning illustrated.
[0141] Throughout this disclosure, electronic devices can be exemplified (and / or described) as being in different positions and / or poses at different times. For example, Figure 2A Example of device 200 in the first position, Figure 2B An example is shown of device 200 in the second position, and Figure 2A A device 200 in a third position is illustrated. In some embodiments, the electronic device moves itself between such positions and / or poses (e.g., using a movement output). For example, device 200 moves from a first position to a second position under its own power (e.g., using a power supply and one or more actuators to induce movement). Specifically, any examples of electronic devices illustrated and / or described herein in different positions and / or poses (e.g., at different times) should be understood to cover scenarios where the device moves itself between such positions and / or poses (e.g., unless otherwise explicitly stated).
[0142] Throughout this disclosure, reference may be made to “performing output,” “causing output,” and / or “output” (e.g., via one or more output generating devices and / or via one or more output generating components) (and / or similar phrases). In some embodiments, the output (e.g., or variations thereof) includes (and / or) output movement (e.g., moving the output as described above).
[0143] Throughout this disclosure, references may be made to “display,” “cause display,” and / or “output visual content” (e.g., via one or more display components) (and / or similar phrases). In some embodiments, display (e.g., or variations thereof) includes displaying visual content in conjunction with output movement (e.g., moving output as described above).
[0144] Throughout this disclosure, reference may be made to "output audio," "output that causes audio," and / or "provide audio output" (e.g., via one or more audio generation components and / or via one or more audio output devices) (and / or similar phrases). In some embodiments, outputting audio (e.g., or variations thereof) includes outputting audio content in conjunction with output movement (e.g., movement output as described above).
[0145] Throughout this disclosure, reference may be made to the movement (and / or similar phrases) of an avatar (e.g., or other representations of a displayed user, agent, and / or role) (e.g., via one or more display components). In some embodiments, moving an avatar (e.g., or a variant thereof) includes movement in conjunction with output movement (e.g., movement output as described above) to display visual content. For example, displaying an avatar nodding in agreement may include an electronic device moving in a manner similar to avatar movement (e.g., simulating a nod). In some embodiments, moving an avatar (e.g., or a variant thereof) includes movement with output movement (e.g., movement output as described above) without displaying visual content. For example, a device may perform a simulated nod without moving the displayed avatar's movement output (e.g., the avatar does not move relative to the display). Figure 5As illustrated, agent system 200-20 may optionally interface with external components such as external database 200-30, remote processing component 200-32, and / or remote management component 200-34. In some embodiments, external database 200-30 represents one or more functions that provide data storage resources accessible to agent system 200-20. In some embodiments, access to data in external database 200-30 is provided directly to agent system 200-20 (e.g., the agent system manages the database) and / or indirectly to agent system 200-20 (e.g., the database is managed by a different system, but the data stored therein can be provided and / or stored for use by agent system 200-20). In some embodiments, external database 200-30 is dedicated to agent system 200-20 (e.g., for its use only), not dedicated to agent system 200-20 (e.g., is a database of web services accessible to different agent systems), and / or a combination of dedicated and non-dedicated database resources. In some embodiments, remote processing component 200-32 represents one or more components that serve as data processing resources accessible to agent system 200-20. In some embodiments, access to remote processing component 200-32 is provided directly to agent system 200-20 (e.g., the agent system manages processing resources) and / or indirectly to agent system 200-20 (e.g., processing resources managed by a different system, but which can provide data processing for the benefit of agent system 200-20). In some embodiments, remote processing component 200-32 is dedicated to agent system 200-20 (e.g., for its use only), not dedicated to agent system 200-20 (e.g., a processing resource for a web service accessible to a different agent system), and / or a combination of both dedicated and non-dedicated processing resources. Examples of data processing include processing image data (e.g., for feature extraction and / or object detection), processing audio data (e.g., for processing natural language speech input via a large language model), and / or training machine learning algorithms and / or models. In some implementations, remote management component 200-34 represents functions including management functions and / or functions related to management functions. For example, such management functions may include providing component updates (e.g., software and / or firmware updates) to agent system 200-20, managing accounts (e.g., associated licenses, access controls, and / or preferences), synchronizing between different agent systems and / or their components (e.g., enabling agents accessible via multiple devices of a user to provide a consistent user experience across such devices), managing collaboration with other services and / or agent systems, error reporting, managing backup resources to maintain agent system reliability and / or agent availability and / or other functions required for agent system 200-20 to perform operations, such as those described herein.
[0146] The above text is about Figure 5 The various components of the described agent system 200-20 represent functional blocks that represent functionality. This functionality can be implemented on the same and / or different hardware (e.g., physical components) and / or by the same and / or different software. For example, a functional block can be implemented using one or more physical components, devices (e.g., computer system 100 and / or electronic device 200), and / or software programs. In other words, each functional block does not necessarily represent a single, discrete physical component, device, and / or software program, but can be implemented using one or more of these. Furthermore, agent system 200-20 may include multiple implementations of the functionality represented by the respective functional blocks. For example, agent system 200-20 may include multiple different model components representing ML models used in different contexts, multiple different API components representing different APIs for different services, and / or multiple different visual output components for outputting different types of visual output.
[0147] Now let’s turn our attention to a discussion of the concepts that may arise regarding the operation of agents.
[0148] As discussed throughout, the agent may be able to interact with the user. In some implementations, this capability includes the ability to process explicit requests, commands, and / or statements. In some implementations, explicit requests, commands, and / or statements include and / or are interpreted as instructions relating to completing a task (e.g., displaying X, completing task Y, and / or performing operation Z). In some implementations, the agent includes the ability to process implicit requests, commands, and / or statements. In some implementations, implicit requests, commands, and / or statements do not include explicit requests, commands, and / or statements. For example, “I like to go to Europe” can be interpreted as an implicit request, command, and / or statement, and in response to detection, device 200 displays the itinerary in response to the statement. As another example, “This picture is for my grandmother” can be interpreted as an implicit request, command, and / or statement, and in response to detection, device 200 displays a suggestion to modify the picture. As another example, “I am tired” can be interpreted as an implicit request, command, and / or statement, and in response to detection, device 200 causes a sleep meditation application to start a meditation session. As another example, "I miss my grandfather" can be interpreted as an implicit request, command, and / or statement, which, upon detection, device 200 can initiate a real-time communication session with the grandfather (e.g., a phone call, video call, and / or text messaging session). In some implementations, implicit requests are more likely to be processed based on one or more current contexts, operational contexts, and / or user contexts, while explicit requests are less likely to be processed based on one or more current contexts, operational contexts, and / or user contexts. For example, the phrase "Call my grandfather" can be an explicit request, and in response to detecting such a request, device 200 will initiate a real-time communication session with the grandfather regardless of one or more current contexts, operational contexts, and / or user contexts. However, the phrase "I miss my grandfather" can be an implicit request, and in response to detecting such a request, device 200 can display a list of gifts to buy for the grandfather if the user has recently been discussing buying gifts, or can call the grandfather in a different context that does not include the user's recent discussions about buying gifts. In some implementations, a request can include one or more explicit requests and one or more implicit requests. In some implementations, implicit requests are responded to independently of explicit requests; in other implementations, responses to implicit requests depend on explicit requests.
[0149] This document may refer to the responses of an agent output by a device. In some embodiments, the response includes an audio component (e.g., audio output, acoustic output, sound and / or speech) (also referred to herein as a “verbal response,” “audio response,” and / or “acoustic response”) and / or a visual component (e.g., a display and / or movement of a representation and / or avatar). In some embodiments, the response includes a motion component (e.g., movement of the device). In some embodiments, the response includes a tactile component (e.g., touch and / or vibration).
[0150] This document may refer to internal dialogues, internal contexts, and / or operational contexts, which may refer to the dynamic context or dynamic decision-making process of a device, the internal state of device 200, and / or internal data of the device based in part on its decisions. In some embodiments, internal dialogues include a set of one or more rules, features, detections, and / or observations used by a computer system to generate responses to one or more commands, questions, and / or statements. In some embodiments, the set of one or more rules, features, detections, and / or observations is learned and / or generated via deep learning and / or one or more machine learning algorithms and / or using one or more machine learning and / or system agents. In some embodiments, internal dialogues are generated in real time. In some embodiments, internal dialogues are stored locally and / or via cloud storage. In some embodiments, internal dialogues can be modified, updated, and / or deleted. In some embodiments, internal dialogues are generated based on other internal dialogues.
[0151] This document may refer to (e.g., agent, user, and / or role) personality and / or behavior (or a representation of personality / behavior). In some embodiments, personality and / or behavior refers to one or more characteristics that a device detects, understands, conforms to, applies, and / or tracks. In some embodiments, personality or behavior is used as the basis for performing operations. For example, an agent may detect a user's personality and respond in a personality-based manner (e.g., outputting different responses in response to different user personalities). As another example, an agent may output responses having characteristics corresponding to one or more characteristics corresponding to personality and / or behavior (e.g., outputting responses in different ways depending on the agent's personality). In some embodiments, such characteristics represent and / or simulate a user's personality, such as how a user acts and / or speaks. In some embodiments, such characteristics approximate a user's personality.
[0152] In some implementations, the agent is a system agent. In some implementations, the system agent is an agent corresponding to the operating system originating from the device (e.g., the device implementing the agent) and / or a process controlled by the device's operating system. In some implementations, the agent is an application agent. In some implementations, the application agent is an agent corresponding to an application originating from the device (e.g., the device implementing the agent) (e.g., installed on the device and / or executed by the device) and / or a process controlled by the device's application.
[0153] This document may refer to the representation (e.g., avatar and / or avatar representation) of an agent (e.g., and / or user (e.g., person, object and / or animal) and / or user interface object (e.g., animated character)). In some embodiments, the representation of an agent refers to a set of output characteristics (e.g., visual and / or audio) of the agent (and / or user and / or user interface object). For example, the representation of an agent may include (and / or correspond to) a set of one or more visual characteristics (e.g., facial features of an animated face) and / or one or more audio characteristics (e.g., language and speech characteristics of audio output). In some embodiments, the representation (e.g., of the agent) is used to represent the agent's output. For example, a device implementing an interactive agent outputs audio in the agent's voice and displays an animated face of the agent moving in a manner that simulates the agent speaking the audio output. In this way, the user can feel that they are having a normal conversation with the agent. In some embodiments, the representation of an agent includes (or does not include) personality and / or behavioral characteristics (e.g., as described above). For example, the representation of an agent may include (and / or correspond to) a set of visual characteristics (e.g., facial features of an animated face) and a set of personality characteristics. In some implementations, the representation of the agent includes a set of user characteristics corresponding to the user's visual representation (e.g., representations of the user's appearance, voice, and / or personality used as avatars that appear to move and / or speak). In some implementations, the representation is a facial representation (e.g., a user interface object outputting features that simulate a human face and / or facial expressions (e.g., for conveying information to a viewer)).
[0154] In some implementations, a role (e.g., a role representing an agent and / or an avatar) refers to a specific set of characteristics. For example, an avatar may embody the characteristics (e.g., use, application, interaction with, and / or output) of a fictional and / or non-fictional character (e.g., from a movie, show, book, TV series, and / or popular culture).
[0155] In some implementations, (e.g., agent and / or avatar) voice refers to one or more characteristics corresponding to a set of sound outputs that are similar to (e.g., represent, imitate, and / or reproduce) spoken utterances (e.g., attributable to and / or simulated as output by an agent and / or avatar). For example, device 200 may output sentences that sound different depending on the voice used. In some implementations, a particular character and / or avatar may be configured to use a particular voice (e.g., have a corresponding voice). In some implementations, the particular voice may mimic the user's voice.
[0156] In some implementations, (e.g., the appearance of an agent and / or avatar) refers to a set of one or more characteristics corresponding to the visual output representing the avatar (and / or agent). For example, device 200 may output an avatar having a set of facial features that form an appearance similar to a specific character from a movie.
[0157] In some implementations, an avatar's expression refers to one or more characteristics corresponding to a specific visual appearance of a user, avatar, and / or agent. For example, device 200 may output an avatar having a set of facial features arranged in a specific manner to give the appearance of a facial expression (e.g., which can be used as a form of nonverbal communication to a user) (e.g., a frown is an expression of sadness, a smile is an expression of happiness, and / or wide eyes are an expression of surprise). As another example, device 200 may output an avatar having a set of body features (e.g., arms and / or legs) arranged in a specific manner to give the appearance of a body expression (e.g., which can be used as a form of nonverbal communication to a user) (e.g., a gesture is an expression of approval, covering the eyes is an expression of fear, and / or shrugging is an expression of lack of awareness). In some implementations, expressions include avatar movement (e.g., a nod is an expression of agreement and / or disagreement). In some implementations, device 200 may be movable via a movement component to indicate expressions with or without avatar movement. In some implementations, the agent performs one or more actions that depend on the user's facial expressions (e.g., detecting whether a person is sad and responding with a kind statement or question). In some implementations, facial expressions (e.g., whether and / or how they are used and / or how they are output) depend on personality. For example, a first-person sex may use more specific facial expressions than a second-person sex. As another example, a first-person sex's expressions (e.g., frowning, smiling, and / or widening their eyes) may look different from a second-person sex's expressions (and / or similar and / or equivalent expressions) (e.g., a first-person sex smiles with their teeth showing, but a second-person sex smiles without showing their teeth).
[0158] In some implementations, an agent (e.g., an avatar of the agent and / or an agent system implementing the agent (e.g., hardware and / or software)) mimics the characteristics of another user, agent, and / or role (e.g., in terms of personality, behavior, facial expressions, and / or voice). In some implementations, mimicry includes mirroring the user (e.g., replicating phrases and / or movements detected from a user interacting with the agent). In some implementations, simulating user characteristics includes attempting to reproduce the user's characteristics (e.g., in exactly the same way and / or in a way that is similar to the characteristics but not an exact reproduction of the characteristics). For example, an agent mimicking voice and / or facial expressions does not require the agent to have exactly the same voice and / or facial expressions as the user being mimicked (e.g., simply to resemble the user's voice and / or facial expressions).
[0159] In some implementations, components and / or devices use (e.g., performing actions, making decisions, and / or determining context based on them) learned characteristics (e.g., characteristics of the context, user, and / or environment learned by the device over time (e.g., via detection, prior experience, and / or feedback (e.g., from one or more users))). For example, characteristics learned over time may include user routines. In such an example, if a particular user requests a summary of any new messages for that user from an agent at the same time every day, the agent may learn to automate actions based on the characteristics of the learned routines (e.g., what data is needed, when data is needed, and / or for which user). In some implementations, the learned characteristics enable the agent (and / or device) to improve its understanding (and / or response to) of the context, user, and / or environment, and / or its understanding of context, user, and / or environment that is otherwise not (and / or will not) understood (e.g., not responded to or responded to incorrectly). In some implementations, reinforcement learning (e.g., by and / or for the agent) is used to form the learned characteristics. In some implementations, the learned features correspond to one or more confidence levels, determinisms, and / or rewards (e.g., shaped by one or more reward functions). In some implementations, the learned features (and / or how they are used to influence the output of the agent and / or device) can change over time (e.g., confidence levels, determinisms, and / or rewards change over time). For example, the output of a device before learning a set of learned features may differ from the output of a device after learning a set of learned features. In some implementations, components and / or devices use the learned knowledge. For example, similar to what is described above regarding learned features, learned knowledge may refer to information used to update (e.g., enhance, add to, and / or expand) the device's knowledge base (e.g., for use by agents implemented thereon). In some implementations, multiple sets of learned features for a user may be stored and / or used. In some implementations, different sets of learned features for different users may be stored and / or used.
[0160] This document may refer to interactions with an agent (and / or device). In some implementations, an interaction refers to a set of one or more inputs and / or outputs between a device implementing the agent and one or more users. For example, an interaction may be a user input (e.g., “Please turn on the light”) and a corresponding output (e.g., turning on the light and / or the device’s response “OK”). In some implementations, an interaction may include multiple inputs / outputs performed by one or more parties to the interaction (e.g., the device and / or the user). For example, an interaction may include a first user input (e.g., “Please turn on the light”) and a corresponding first output (e.g., “Which lights?”), and may also include a second user input (e.g., “Kitchen light”) and a second output from the device (e.g., “OK”). In some implementations, which inputs and / or outputs are considered together as an interaction is based on logical and / or contextual grouping (e.g., interactions within the previous thirty (30) seconds and / or interactions related to turning on the light). As those skilled in the art will understand, interactions may be considered in an implementation-dependent manner (e.g., determining when an interaction is complete may involve determining whether the user is still present (e.g., is still talking) and / or whether the user is still talking about the light or has moved on to a different topic). In some implementations, the interaction is the current interaction (e.g., ongoing, currently occurring, and / or active). In some implementations, the interaction is a previous interaction. The examples above describe a device that engages in dialogue with a user. In some implementations, the dialogue is between two or more users (e.g., users in an environment). For example, the device may detect dialogue between users (e.g., users directing their voice and responses to each other, rather than to the device).
[0161] In some implementations, the agent (and / or device) determines and / or performs an action based on an intent corresponding to the user. For example, the device detects user input and outputs a response that depends on the intent of the user input. For example, the device detects user input including a pointing gesture detected along with a verbal command to “turn on the light,” and in response, the device turns on the light determined to correspond to the intent of the input (e.g., the light the pointing gesture is pointing to). In some implementations, intent is determined using one or more of the following (e.g., determined by the device that detects the input and / or by one or more other devices): one or more inputs, knowledge (e.g., knowledge about the user learned based on observed behavior, personality, and history of interactions), learned characteristics, and / or context. In some implementations, intent is determined based on one or more types of input (e.g., verbal input, visual input via a camera, and / or contextual input).
[0162] Now turn our attention to the implementation of user interfaces (“UIs”) and associated processes on electronic devices (such as computer system 100 and / or electronic device 200).
[0163] Figures 6A to 6J Exemplary user interfaces for displaying content in a widget based on external conditions, according to some implementation schemes, are illustrated. The user interfaces in these figures are used to illustrate the processes described below, including... Figures 7 to 11 The process in.
[0164] Figures 6A to 6J Exemplary user interfaces for displaying content based on external conditions, according to some embodiments, are illustrated. The user interfaces in these figures are used to illustrate the processes described below, including... Figures 7 to 11 The process in.
[0165] Left side Figures 6A to 6J An example of a computer system 600 (e.g., a tablet computer) displaying various user interface objects is illustrated. It should be appreciated that the computer system 600 can be other types of computer systems, such as smartphones, smartwatches, laptops, public facilities, smart speakers, accessories, personal gaming systems, desktop computers, fitness trackers, and / or head-mounted display (HMD) devices. In some embodiments, the computer system 600 includes and / or communicates with one or more input devices and / or sensors (e.g., cameras, LiDAR detectors, motion sensors, infrared sensors, touch-sensitive surfaces, physical input mechanisms (such as buttons or sliders), and / or microphones). Such sensors can be used to detect the presence of a user in the environment, attention, statements from the user, input corresponding to the user, requests from the user, and / or instructions from the user. It should be appreciated that while some embodiments described herein relate to input as touch input, other types of input can be used with the techniques described herein, such as voice input via a microphone and air gestures detected via a camera. In some embodiments, the computer system 600 includes and / or communicates with one or more output devices (e.g., displays, projectors, touch-sensitive displays, speakers, and / or moving components). Such output devices can be used to present information and / or cause different visual changes to computer system 600. In some embodiments, computer system 600 includes one or more movable components (e.g., actuators, movable bases, rotatable components, and / or rotatable bases) and / or communicates with them. As described above, such movable components can be used to change the positioning (e.g., location and / or orientation) of computer system 600 and / or a portion of computer system 600 (e.g., including one or more sensors, input components, and / or output components). In some examples, computer system 600 includes one or more components and / or features described above with respect to computer system 100 and / or electronic device 200. In some embodiments, computer system 600 includes as described above with respect to... Figure 5The description refers to one or more agents and / or the functionality of the agents. In some embodiments, computer system 600 is, includes, implements one or more agent systems and / or communicates with one or more agent systems, as described above. Figure 5 As described, one or more operations are performed (and / or cause to be performed) by the agent.
[0166] Figures 6A to 6J The right side includes Figure 606. Figure 606 is a visual aid representing the physical space and / or environment including computer system 600, a first user, a second user, and a third user. Figure 606 includes a computer system representation 608 of computer system 600, a first user representation 610 of the first user, a second user representation 612 of the second user, and a third user representation 614 of the third user. The positioning of computer system representation 608, first user representation 610, second user representation 612, and third user representation 614 within Figure 606 represents the real-world positioning of computer system 600 relative to the first user, second user, and third user. Figure 606 includes dashed lines representing the detection field and / or field of view (sometimes collectively referred to as the detection field) of computer system representation 608. The detection field of computer system representation 608 corresponds to the detection field of one or more forward sensors of computer system 600 in the real world. In some embodiments, one or more other sensors of computer system 600 include detection fields different from the detection field (e.g., overlapping but smaller or larger and / or non-overlapping). In this example, there are three users. In some implementations, there may be more or fewer than three users.
[0167] Figures 6A to 6I An example is illustrated whereby computer system 600 displays one or more widgets and / or one or more user indications in response to detecting one or more users within a detection field. In some embodiments, if a user within the detection field is identified by computer system 600 (e.g., registered with computer system 600), computer system 600 displays an indication that the user is identified and / or displays one or more widgets corresponding to the user (e.g., in some embodiments, user interface elements predefined and / or preconfigured by the user). In some embodiments, if a user within the detection field is not identified by computer system 600 (e.g., not registered with computer system 600), computer system 600 displays an indication that the user is not identified and / or does not display widgets corresponding to unknown users. In some embodiments, the position and / or size of the one or more widgets displayed by computer system 600 depends on the position of one or more users within the detection field, as further discussed below. In some embodiments, the position and / or size of the one or more user indications displayed by computer system 600 depends on the position of the user within the detection field, as further discussed below. Although Figures 6A to 6IExamples of computer system 600 displaying specific widgets and / or displaying content within specific widgets are illustrated, but it should be understood that such widgets and / or content are for illustrative purposes only, and such widgets may be in different locations, of different sizes, include different content, and / or may use more, fewer, and / or different widgets depending on the techniques described herein. In some embodiments, a widget is a user interface element (e.g., a control and / or indicator) displayed by computer system 600, which includes a streamlined amount of dynamic content corresponding to a single application.
[0168] like Figure 6A As illustrated, computer system 600 displays user interface 602 including clock widget 604, which displays the current real-world time at the center of user interface 602. In this example, user interface 602 is a home screen user interface, which may include one or more indicators and / or controls. In some embodiments, user interface 602 is a smart home system user interface, displaying indicators and / or controls for building systems (e.g., lighting, shading, locks, sound, and / or environmental controls). For example, user interface 602 may display the lock status of all doors in the building and the average room temperature. In some embodiments, user interface 602 is an office check-in system user interface, which will be described in more detail below. In some embodiments, user interface 602 includes an avatar of a virtual assistant and / or other artificial intelligence application (e.g., a human-like visual representation). In some embodiments, user interface 602 does not include clock widget 604. It should be understood that this content of user interface 602 as described herein is for discussion purposes, and other and / or different content may be included in user interface 602.
[0169] like Figure 6A As illustrated in Figure 606, no user is in the detection field of computer system 600 (e.g., as indicated in Figure 606 by the absence of user representations (e.g., first user representation 610, second user representation 612, and / or third user representation 614) in the detection field of computer system representation 608). Figure 6AIn this system, computer system 600 detects one or more users within an environment. In some embodiments, computer system 600 communicates with additional input devices and detects users via input devices other than the field of view of one or more cameras. For example, this may be through communication with microphones, proximity sensors, and / or additional devices (e.g., devices connected to and held / worn by the user). In some embodiments, the user is a biological entity (e.g., a person, user, and / or animal). In some embodiments, the user is an electronic device (e.g., a smartphone, smartwatch, laptop computer, public facility, smart speaker, accessory, personal gaming system, desktop computer, fitness tracker, head-mounted display (HMD) device, drone, and / or robot). Figure 6A In this scenario, computer system 600 does not detect any user (e.g., first user, second user, and / or third user) within the detection field. Figure 6A As illustrated, in response to no user being detected in the detection field, computer system 600 does not display any additional content (e.g., content and / or one or more other common widgets) other than clock widget 604. In this example, clock widget 604 is a common widget. In some embodiments, a common widget is a widget that does not correspond to a specific user (e.g., an application for which the user has an account and / or profile). In some embodiments, a common widget is a widget that contains generalized content that does not correspond to any specific user. For example, content such as weather, current time, battery percentage, and / or connectivity. In some embodiments, a common widget is a widget displayed by computer system 600 regardless of whether it is displayed in user interface 602, is no longer displayed, and / or one or more other widgets are changed.
[0170] In this example, computer system 600 displays clock widget 604 in analog format. In some embodiments, computer system 600 displays clock widget 604 in different formats, such as analog, digital, and / or mixed formats. In some embodiments, computer system 600 displays content and / or widgets in user interface 602 based on certain visual objectives. These visual objectives include maximizing the size of content for easier viewing by the user, hiding and / or summarizing personal information in lower privacy areas, and / or displaying content based on its relevance to the user and / or the context of the environment. In this example, due to the absence of one or more other widgets and / or to maximize the user's ability to view clock widget 604, computer system 600 displays clock widget 604, which occupies a large portion of user interface 602. Figure 6AIn some embodiments, the computer system 600 displays a user interface 602 as a welcome user interface. In some embodiments, the welcome user interface includes preferred and / or common widgets for identified users that are displayed regardless of whether an identified user is present and / or an unidentified user. In some embodiments, the user interface 602, which only includes a clock widget 604, is the welcome user interface.
[0171] exist Figure 6A Subsequently, in response to the detection of one or more users in the environment, computer system 600 rotates a portion of computer system 600 until the first user is within the detection field of computer system 600. In some embodiments, in response to the detection of one or more users, computer system 600 transitions from an inactive state (e.g., a power-saving state and / or waiting for a detection event (e.g., detecting a user, detecting input and / or output indications from a user)) to an active state. In some embodiments, computer system 600 being in an inactive state includes reducing screen brightness, reducing displayed content (e.g., clock, battery percentage, and / or device name), and / or not displaying any content. In some embodiments, computer system 600 transitioning from an inactive state to an active state includes increasing screen brightness, displaying additional content (e.g., content and / or additional system content), and / or enabling additional functionality (e.g., touch input, the ability to receive voice input, and / or user recognition).
[0172] like Figure 6B As illustrated in Figure 606, the first user 610 is within the detection field of computer system representation 608, while other users (e.g., second user representation 612 and / or third user representation 614) are not within the detection field of computer system representation 608, indicating that the first user is within the detection field of computer system 600, while the second and third users are not. Figure 6B In the process, computer system 600 detects the first user in the new detection field of computer system 600.
[0173] like Figure 6B As illustrated, in response to the detection of a first user within the detection field of computer system 600, computer system 600 displays a user interface 602 including additional user interface elements corresponding to the first user. In this example, the first user (e.g., Julie Allen) is known to computer system 600. In some embodiments, the user known to computer system 600 registers with computer system 600 (e.g., the user has an account, the user's biometrics are categorized, and / or the user has a login). In some embodiments, the user known to computer system 600 is a user whose identifier and / or authentication record is contained in and / or obtained from an external device by computer system 600. Figure 6BIn the middle, the computer system 600 identifies the first user. For example... Figure 6B As illustrated, in response to identifying and detecting a first user within a detection field, computer system 600 displays a first user indicator 616 as one of the additional user interface elements corresponding to the first user. In this example, the first user identifier includes the first initials of the first user's name (e.g., JA for Julie Allen). In some embodiments, the user indicator (e.g., first user indicator 616) includes alternative content. For example, the user indicator may include images (e.g., a profile picture and / or representative image of the user) and / or avatars (e.g., humanoid and / or non-humanoid representations of the user, symbols, and / or abstract representations of the user). In some embodiments, computer system 600 includes content within the first user indicator 616 obtained from another computer system. For example, computer system 600 may display a profile picture of Julie from one or more other computer systems (e.g., a handheld device, a wearable device, and / or a personal computer system) within the first user indicator 616. As previously stated in Figure 6A As illustrated in the example, in some implementations, the computer system 600 fails to detect a user in the detection area, causing the computer system 600 to not display a user instruction.
[0174] like Figure 6B As illustrated, in response to identifying and detecting a first user, computer system 600 displays (1) a fitness widget 620 including fitness information corresponding to the first user and (2) a to-do list widget 618 including a to-do list corresponding to the first user. In this example, identified and / or unidentified users outside the detection field of computer system 600 do not affect the content displayed by computer system 600. In some implementations, such as Figure 6B As illustrated, in response to the detection of a user within the detection field, computer system 600 displays a new user interface element (e.g., a widget) surrounding existing user interface elements (e.g., common widgets) (e.g., clock widget 604), and displays the new user interface element in a reduced size relative to the existing elements. Similarly, in some embodiments, such as Figure 6B As illustrated, in response to displaying a new user interface element, computer system 600 displays existing elements (e.g., clock widget 604) in the same location, even if computer system 600 reduces the size of existing elements to accommodate the new user interface element (e.g., fitness widget 620 and / or to-do list widget 618). In some embodiments, computer system 600 enables a user to customize a set of one or more preferred widgets to correspond to the user. For example, a user may set a clock widget and / or a weather widget as preferred widgets to display when the user is detected.
[0175] In some implementations, computer system 600 repositions and / or resizes a common widget to accommodate one or more additional widgets. In some implementations, computer system 600 repositions and / or resizes one or more widgets within user interface 602 based on their relevance to the context of the environment. For example, computer system 600 displays traffic information in the early morning and / or weather information as a storm approaches. In some implementations, computer system 600 replaces a clock widget 604 with a different widget based on the position of the clock widget 604 within user interface 602. For example, a calendar is displayed as a common widget when computer system 600 is in different locations within a user's home.
[0176] In some implementations, as further discussed below, content and / or widgets corresponding to a specific user include information about the user and / or information obtained about the user. For example, computer system 600 accesses content linked to user 610 to populate a to-do list widget 618. In some implementations, a widget corresponds to a specific user because it contains content and / or information obtained by computer system 600 as part of identifying the user. For example, computer system 600 obtains the identification and / or authentication records of a specific user and displays content related to the identification and / or authentication. Similarly, for example, a calendar widget corresponds to that user because it contains data about a specific user, such as meetings and / or events.
[0177] exist Figure 6B In some implementations, the computer system 600 displays a fitness widget 620, a to-do list widget 618, and / or user instructions 616 via animation. For example, from Figure 6A Transform to Figure 6B The animations include shrinking clock widget 604 and displaying and / or enlarging to-do list widget 618 and / or fitness widget 620. For example, computer system 600 displays a growth animation by initially displaying the widget at a reduced size, and then displaying it at its maximum and / or final size over a predetermined amount of time. In some embodiments, computer system 600 displays additional widgets (e.g., to-do list widget 618 and / or fitness widget 620) using pop-up and / or bouncing animations. For example, computer system 600 displays a pop-up and / or bouncing animation by displaying the widget at a size larger than its final size, and then displaying it at a smaller and / or final size within a predetermined amount of time in user interface 602.
[0178] like Figure 6BAs illustrated, the to-do list widget 618 and the fitness widget 620 include detailed information and / or personal information. In some implementations, the computer system 600 displays additional detailed information and / or personal information because the computer system 600 detects movement to a more private location. In some implementations, personal information includes financial, health, computer system usage, dating, and / or organizational affiliation information. For example, Figure 6A The detection field (e.g., a low-privacy location) of the computer system 600 in the middle is changed to Figure 6B The detection field of computer system 600 (e.g., a higher privacy location). In some embodiments, when the environment in which computer system 600 is located has a specific privacy level and / or when a user (e.g., user 610) is sufficiently close to computer system 600 (e.g., within a predetermined distance), computer system 600 displays only detailed information and / or personal information. For example, when computer system 600 is located in a user's home, only personal information is displayed. Similarly, in some embodiments, the change in privacy level is due to computer system 600 moving from a personal location to a public location. For example, in response to detecting that a user moves computer system 600 from the user's home to a friend's home, the user's workplace, a park, and / or a school, computer system 600 may reduce the amount of privacy information displayed in user interface 602. In some embodiments, the change in privacy level is due to computer system 600 moving from a known location to an unknown location. For example, a user moves computer system 600 from their home to a hotel room. In some embodiments, in response to detecting a change in location from a low-privacy environment to a high-privacy environment, computer system 600 increases the amount of privacy information displayed in user interface 602.
[0179] like Figure 6B As illustrated, Figure 606 illustrates a first user representation 610 very close to a computer system representation 608 (e.g., computer system 600). Figure 6B In this process, computer system 600 detects a very close user 610 and displays more personal and / or additional information to user 610. Similarly, Figure 6BAs illustrated, computer system 600 displays each item within to-do list widget 618 using controls because user 610 is very close to computer system 600. For example, user 610 is close enough to computer system 600 to interact with the content and / or widgets displayed by computer system 600 on user interface 602. In some embodiments, computer system 600 displays controls within to-do list widget 618 to allow user 610 to select controls within to-do list widget 618 to complete to-do list items. For example, user can select controls by touching a display component that accepts touch input, making predefined gestures toward computer system 600 (e.g., moving up and / or down within a very close proximity to computer system 600 to scroll up and / or down), and / or issuing voice commands matching predefined voice controls (e.g., user talking to computer system 600 and telling computer system 600 to check to-do list items).
[0180] exist Figure 6B Subsequently, while within the detection area of computer system 600, the first user moves away from computer system 600, such as... Figure 6C exemplified. like Figure 6C As illustrated in the right-hand portion of Figure 606, the first user representation 610 is now further away from the computer system representation 608, but still within the detection field of the computer system representation 608. Figure 6C In the process, computer system 600 detects that a first user (e.g., user 610) has moved away from computer system 600.
[0181] exist Figure 6C In response to detecting that a first user has moved away from computer system 600, computer system 600 stops displaying personal information and / or detailed information corresponding to the first user. In some embodiments, computer system 600 detects the movement of the first user via one or more cameras, as discussed above. For example, computer system 600 detects the first user at a first distance relative to computer system 600, detects the first user at a second distance relative to computer system 600, and compares the first distance and the second distance. In some embodiments, computer system 600 detects the movement of the first user via connectivity of one or more devices held and / or worn by the first user. For example, computer system 600 detects a change in the connection strength between computer system 600 and the device corresponding to the first user. Additionally, in response to the first user remaining within the detection field of computer system 600, computer system 600 continues to display one or more widgets containing generalized content corresponding to the first user.
[0182] exist Figure 6CIn this example, due to the lack of proximity for the first user, computer system 600 no longer displays interactive and / or personalized content. The controls correspond to each item within the to-do list widget 618 because the first user is no longer very close to computer system 600. For example, the first user is not close enough to computer system 600 to check the items in the to-do list. Figure 6C As illustrated, similarly in response to detecting the departure of the first user, computer system 600 stops displaying fitness widget 620. In this example, computer system 600 no longer displays fitness widget 620 because fitness widget 620 includes personal information and / or details corresponding to the first user. In some embodiments, computer system 600 continues to display fitness widget 620, but only displays general information within fitness widget 620. For example, computer system 600 displays fitness widget 620 including content such as steps and / or heart rate, but does not display the steps and / or heart rate corresponding to the first user. In some embodiments, even if computer system 600 does not detect the first user moving away from computer system 600 (e.g., the first user remains very close to computer system 600), computer system 600 stops displaying fitness widget 620 and displays a to-do list widget 618 with less information, because computer system 600 detects another user in the detection area.
[0183] exist Figure 6C In some implementations, the computer system 600 detecting that a first user has moved away from the computer system 600 is part of one or more criteria determined by the computer system 600 based on the context of the environment. For example, the computer system 600 considers its location, the presence of identified and / or unidentified users, device capabilities, device settings, and / or environmental conditions (e.g., ambient brightness, noise level, and / or connectivity). In some implementations, the computer system 600 stops displaying certain content because the first user has moved from a private location to a location with a lower privacy level. For example, from being near the device (e.g., Figure 6B The location of user 610 in the data was moved to a more distant and less private location (e.g., Figure 6CThe location of user 610 in the context of the environment. In some embodiments, the second area is a more private area, and computer system 600 continues to display one or more widgets corresponding to the first user and / or additional content corresponding to the first user. In some embodiments, computer system 600 moves from a private location to a location with a lower privacy level, and computer system 600 no longer displays personal information and / or details. For example, the user moves computer system 600 from the user's home to a public place (e.g., a hotel room, workplace, and / or school room). In some embodiments, the privacy level is determined by the device based on the context of the environment. In some embodiments, the user sets the privacy level and / or the content to be displayed based on the location.
[0184] like Figure 6C As illustrated, the user interface 602 includes a clock widget 604, a to-do list widget 618, and a first user indicator 616. In some embodiments, the first user indicator 616 increases or decreases in size based on the proximity of the first user to the computer system 600 (e.g., the first user indicator 610 is very close to and / or not very close to the computer system indicator 608). In some embodiments, the computer system 600 continues to display the first user indicator 616 at a fixed location relative to the user interface 602, regardless of whether the computer system 600 repositions one or more other widgets in the user interface 602 and / or resizes them. Figure 6C As illustrated, computer system 600 repositions the to-do list widget 618 and clock widget 604 and / or resizes them to occupy the space previously occupied by fitness widget 620, such as Figure 6B As illustrated. Similarly, as... Figure 6C As illustrated, in response to detecting that a first user has moved away from computer system 600, computer system 600 displays only general information including a list with "two items" instead of... Figure 6B The to-do list widget 618 shows detailed information for "Cooking" and "Cleaning". Figure 6C In this process, the computer system adjusts the size of the clock widget 604 user interface 602, but does not return the clock widget 604 to its original size (e.g., as shown in the image). Figure 6A (As illustrated), because computer system 600 still detects user 610 within its detection field. Similarly, as... Figure 6C As shown in the example, computer system 600 continues to display as follows: Figure 6B The clock widget 604 is included even if the computer system 600 has changed other widgets (e.g., to-do list widget 618 and / or fitness widget 620).
[0185] exist Figure 6CSubsequently, the first user leaves (e.g., too far to be detected by one or more cameras of computer system 600) and / or is removed from the detection field of computer system 600. Figure 6C After that, computer system 600 no longer detected the first user. Similarly, as... Figure 6D As illustrated in Figure 606, the second user representation 612 and / or the third user representation 614 are not within the detection field of the computer system representation 608. Therefore, the first user and / or any user (e.g., the second user and / or the third user) are no longer detected by the computer system 600 within its detection field. Figure 6D In this process, computer system 600 does not detect any users within the detection area during a predetermined time period.
[0186] exist Figure 6D In response to the failure to detect a first user and / or any user (e.g., a second user and / or a third user) within a predetermined time period, computer system 600 changes to an inactive state. In this example, the change to an inactive state is exemplified by visual changes to user interface 602. In this example, these visual changes include computer system 600 resizing clock widget 604 to its original maximum size and returning clock widget 604 to its original position, such as... Figure 6A As illustrated, computer system 600 no longer displays the widgets corresponding to the first user (e.g., to-do list widget 618 and / or fitness widget 620) and no longer displays the first user indicator 616; and computer system 600 dims user interface 602. In some embodiments, computer system 600 replaces existing widgets with common widgets in response to no longer detecting a user. For example, the to-do list widget 618 is replaced with a weather widget, but the widget continues to be displayed in the same location. In some embodiments, computer system 600 delays the transition to an inactive state by a predefined amount of time. For example, waiting 10 seconds after no longer detecting a user. In some embodiments, becoming inactive causes user interface 602 to dim completely, rather than as... Figure 6D The illustrated portion is dimmed. In some embodiments, the computer system 600 returns to the previous brightness level when it detects a user while inactive. In some embodiments, the computer system 600 restores the displayed content when a user is detected. For example, when a recently detected user is detected, the content corresponding to that user is redisplayed.
[0187] exist Figure 6D Subsequently, the computer system 600 detects one or more users within the environment. Figure 6D Subsequently, in response to the detection of one or more users in the environment, computer system 600 changes from an inactive state to an active state. Figure 6D Subsequently, in response to the detection of one or more users within the environment, computer system 600 rotates a portion of computer system 600 until at least one user is detected within the detection field. For example... Figure 6E As illustrated in Figure 606 in the right-hand portion, the detection field of computer system 608 now contains multiple users (second user representation 612 and / or third user representation 614). Therefore, computer system 600 detects two users (e.g., the second user and / or the third user) within its detection field.
[0188] Figures 6E to 6H An exemplary user interface for displaying content based on the presence of multiple users within an environment, according to some implementation schemes, is illustrated.
[0189] exist Figure 6E In response to the detection of multiple users (e.g., a second user and / or a third user) within the detection field, computer system 600 determines the content to be displayed on user interface 602 based on the context surrounding the multiple users. In this example, Figure 6E Figure 606 illustrates the context of multiple users. For example... Figure 6E As illustrated, Figure 606 includes a second user representation 612 and a third user representation 614 within the detection field of a computer system representation 608, and the second user representation 612 is closer to the computer system representation 608 than the third user representation 614.
[0190] exist Figure 6E In this process, computer system 600 detects that a second user and a third user are within the detection field of computer system 600 and at different proximity levels to computer system 600 (e.g., represented by computer system representation 608 in diagram 606). In response to detecting that users are at different proximity levels to computer system 600, Figure 6E Examples of second user indicators 622 and third user indicators 624 of different sizes are shown. In this example, the second user and the third user are known to the computer system 600. Figure 6E As illustrated, the second user instruction 622 corresponds to David Allen (e.g., the second user) and includes the text "DA" corresponding to David Allen. Figure 6E As illustrated, computer system 600 displays the second user instruction 622 as greater than the third user instruction 624 because the second user is closer to computer system 600 than the third user. For example... Figure 6E As illustrated, third user instruction 624 corresponds to Annette Allen (e.g., a third user) and includes the text "AA". Figure 6EAs illustrated, computer system 600 displays a third user indication 624 smaller than the second user indication 622 because the third user is further away from computer system 600 than the second user. In some embodiments, the text within the second user indication 622 and / or the third user indication 624 is replaced with a photograph, symbol, and / or representation corresponding to the user represented by the user indication. In some embodiments, the included text and / or representation is automatically populated by computer system 600 through connection to the user's personal device (e.g., a device held and / or worn by the user containing the user's personal information and / or preferences). For example, computer system 600 connects to a device held by David and retrieves the text "DA" from that device, populating the second user indication 622 with that text. In some embodiments, computer system 600 displays one or more user indications in a predefined area and maintains the display of user identifiers in the predefined area. For example, one or more user identifiers are displayed continuously at the top and / or middle of user interface 602 to allow the user to quickly identify that the device has detected them.
[0191] exist Figure 6E In this example, since David (e.g., second user 612) is near computer system 600, the to-do list widget 618 corresponds to the second user. In this example, computer system 600 automatically displays the content corresponding to David without requiring input. In some implementations, computer system 600 automatically displays content based on context detected within diagram 606. For example, in response to computer system 600 detecting that it is in the kitchen and the current time is evening, computer system 600 may display dinner recipe content for David and / or Annette (e.g., content routinely viewed and / or accessed in the kitchen). Figure 6E In the image, David is very close to computer system 600, and computer system 600 displays detailed information in a widget corresponding to the second user. For example... Figure 6E As shown in the example, the to-do list widget includes David's "Running" and "Groceries" items. Additionally, in Figure 6E In, such as Figure 6EThe widget 620, illustrated as a blank widget, corresponds to David (e.g., second user representation 612) and / or Annette (e.g., third user representation 614). In some embodiments, widget 620a displays content for both David and Annette because they are in the same user group. For example, David and Annette are in the same family group and / or partners group. In some embodiments, widget 620a is similar to to-do list widget 618 and corresponds to the closer of multiple users. In some embodiments, widget 620a corresponds to Annette and represents a different application than to-do list widget 618. For example, computer system 600 displays navigation content for Annette's commute within widget 620a.
[0192] In addition, Figure 6E In response to the detection of multiple users within the detection field of computer system 600 in an environment, computer system 600 displays content corresponding to the multiple users based on the relationships between the users. For example, identified users whose accounts are linked together are part of the same family and / or friend group. For example, Annette (e.g., third user representation 614 and / or third user indication 624) and David (e.g., second user representation 612 and / or second user indication 622) are married and belong to the same group because they share account information with each other (e.g., allow sharing and / or add each other to groups). In some embodiments, multiple users are identified users but have separate relationships (e.g., do not share content with each other), and user interface 602 includes general content and / or non-personalized content for multiple users. For example, Julie (e.g., first user) is David and Annette's daughter but cannot see her parents' content because her parents do not share content with Julie. In this example, multiple users (e.g., a second user and / or a third user) are identified users and within the same user group, enabling computer system 600 to include additional details and / or personalized content for the user and / or multiple users within user interface 602. For example, as described below... Figures 6E to 6F As discussed in the article, both David (e.g., the second user) and Annette (e.g., the third user) can view each other's corresponding to-do list widgets 618.
[0193] like Figure 6E As illustrated, in response to the detection of multiple users within the detection field of computer system 600 in the environment, computer system 600 displays content corresponding to two users. In this example, Figure 6EExamples include a clock widget 604, a to-do list widget 618 corresponding to David (e.g., second user representation 612), a widget 620a corresponding to David (e.g., second user representation 612) and / or Annette (e.g., third user representation 614), and user indicators 622 and 624. Figure 6E In the computer system 600, a clock widget 604 is displayed centered on the user interface 602, but... Figure 6D Compared to displaying them at a reduced size to accommodate to-do list widgets 618, 620a, and / or user instructions 622 and 624, the computer system 600 displays the widgets (e.g., to-do list widgets 618 and / or widget 620a) at different sizes corresponding to their relevance. In some embodiments, the content and / or widget relevance may correspond to different users, different locations, and / or device conditions. For example, the computer system 600 displays navigation content within widget 620a in the morning to show increased traffic volume to detected users. Figure 6E In this scenario, the second user moves away from computer system 600 but remains within the detection field of computer system 600, and the third user moves toward computer system 600 and remains within the detection field of computer system 600. Therefore, computer system 600 continues to detect multiple users (e.g., the second user and / or the third user), but detects that the third user is now closer to computer system 600 than the second user.
[0194] like Figure 6F As illustrated in Figure 606, the third user representation 614 is very close to the computer system representation 608, and the second user representation 612 is not very close to the computer system representation 608 (e.g., farther away from the computer system representation 608 than user 614). Figure 6F As illustrated, in response to the detection that a second user has moved away from computer system 600 and a third user has moved toward computer system 600 within the detection area, computer system 600 displays content corresponding to the context of the user's location relative to computer system 600. Similarly, as... Figure 6F As illustrated, in response to the detection that the second user is no longer very close to the computer system 600 and the third user is very close to the computer system 600, the computer system 600 displays content corresponding to the context of the user's proximity to the computer system 600.
[0195] exist Figure 6F In this system, computer system 600 modifies the content on user interface 602 to correspond to the positioning of multiple users. For example... Figure 6F As illustrated, computer system 600 displays information about its... Figure 6EThe larger third-user instruction 624 is displayed in the computer system 600, and the computer system 600 displays information about its size in the system. Figure 6E A smaller second user indicator 622 is displayed. As Annette and David's relative positions with respect to computer system 600 change, computer system 600 alters user indicators 624 and / or 622. In some embodiments, computer system 600 displays user indicators 624 and / or 622 in a continuous relative size. For example, as David moves away from computer system 600, computer system 600 reduces the size of the second user indicator 622 proportionally to the distance from David to computer system 600. In some embodiments, user indicators 622 and / or 624 are displayed in a predetermined relative size. For example, as Annette approaches computer system 600, computer system 600 displays a third user indicator 624 larger than the second user indicator 622, instead of indicating Annette's position relative to computer system 600.
[0196] exist Figure 6F In this context, the to-do list widget 618 corresponds to Annette (e.g., third user representation 614) because Annette is closer to computer system 600 than David (e.g., second user representation 612). Figure 6F In this context, because Annette is very close to computer system 600, the to-do list widget 618 includes personal information and / or details corresponding to Annette. As discussed above, such as Figure 6F The illustrated blank widget 620a corresponds to a second user and / or a third user. In some implementations, the computer system 600 does not change the display of widget 620a as Annette and David's proximity to the computer system 600 changes. Figure 6F As illustrated, the to-do list widget 618 includes the items "Eat" and "Groceries" because it contains detailed information corresponding to Annette. Figure 6F As illustrated, the clock widget 604 remains centered and is reduced in size to continue accommodating the to-do list widgets 618 and 620a.
[0197] exist Figure 6F Subsequently, when computer system 600 displays content corresponding to the second user and / or the third user, an unknown user (e.g., a fourth user) (e.g., the fourth user is represented by 630) moves within the detection field of computer system 600. Figure 6GAs illustrated in Figure 606, the detection field of computer system 608 now includes two known users (e.g., second user representation 612 and third user representation 614) and an unknown user (e.g., fourth user representation 630). Therefore, computer system 600 detects the unknown user in its detection field, such as... Figure 6G As illustrated. In some implementations, an unknown user is a user in the detection field of computer system 600 who lacks a record as a user. For example, the user has no local and / or remote user records, which would prevent computer system 600 from displaying content corresponding to the user. In some implementations, an unknown user is a user who has not registered with computer system 600 (e.g., the user does not have an account, the user's biometrics are not categorized, and / or the user is not logged in).
[0198] Figures 6G to 6H An exemplary user interface for displaying content based on the relationship between multiple users is illustrated according to some implementation schemes.
[0199] like Figure 6G As illustrated, in response to the detection of an unknown user in the detection field of computer system 600, computer system 600 no longer displays content corresponding to one or more users, and displays a common widget within user interface 602. In this example, weather widget 626 and clock widget 604 correspond to the common widget.
[0200] like Figure 6G exemplified, and Figure 6F In comparison, the sizes of user indicators 624 and 622 remain unchanged, but in response to the detection of an unknown user in the detection field, computer system 600 displays an unknown user indicator 628 next to user indicators 624 and 622. Figure 6G In this embodiment, the unknown user indication 628 contains the text “??” because the computer system 600 cannot identify the unknown user. In some implementations, the text “??” is replaced with a generic symbol and / or representation of the unknown user. For example, there is no graphical representation of personalized features and / or abstract outlines within the unknown user indication 628. In this example, due to the relative positioning of the unknown user with respect to the computer system 600, the unknown user indication 628 is displayed by the computer system 600 at the same size as the second user indication 622. In some implementations, due to the positioning of the unknown user with respect to other users in the detection field, the unknown user indication 628 is displayed by the computer system 600 at a reduced size. For example, the computer system 600 displays user indications (e.g., user indications 622, 624, and / or 628) at different sizes based on the user's relative positioning (e.g., Annette is closer than David and / or unknown user 630) rather than distance and / or proximity from the computer system 600.
[0201] like Figure 6G As illustrated, computer system 600 displays user interface 602, which includes a clock widget 604, a weather widget 626, and user indicators 628, 624, and 622. Figure 6F In contrast, due to the presence of unknown users, computer system 600 no longer displays the to-do list widgets 618 and 620a in user interface 602. In this example, to-do list widgets 618 and 620a include detailed information and / or personalized information that computer system 600 displays only when the correct user context is met. For example, an individual user and / or a group of users are detected, and the content corresponds to that user and / or that group of users, respectively. Figure 6G As illustrated, since widget 620a is no longer displayed, computer system 600 repositions clock widget 604. Similarly... Figure 6G As illustrated, due to the lack of other widgets, computer system 600 displays a weather widget 626 next to clock widget 604. In some embodiments, the widget is positioned and / or sized to maximize the widget size on user interface 602. In some embodiments, the positioning and / or size of the widget on user interface 602 is fixed. In some embodiments, even if computer system 600 is in a private location, detecting the presence of an unknown user causes computer system 600 to no longer display details and / or personal information. In some embodiments, the unknown user leaves, and in response to no longer detecting an unknown user in the detection field, computer system 600 displays user interface 602 as it was before the unknown user was detected (e.g., as...). Figure 6F exemplified).
[0202] exist Figure 6H In this process, computer system 600 detects heavy traffic on the daily commute of a second user (e.g., Annette). Therefore, computer system 600 automatically displays a navigation widget 632 corresponding to the second user, such as... Figure 6H The example is shown on the left side. For example... Figure 6H As illustrated, in response to displaying navigation widget 632, computer system 600 adjusts the size of weather widget 626 to accommodate navigation widget 632 within user interface 602. In some embodiments, computer system 600 automatically displays widgets based on meeting external criteria. Figure 6H In this example, because the criteria regarding Annette (e.g., a second user) are met, computer system 600 displays navigation widget 632. Since the second user is near computer system 600, navigation widget 632 corresponds to Annette, as shown below. Figure 6HAs illustrated in Figure 606, this represents the positioning of the second user representation 614 relative to the computer system representation 608. In some embodiments, the computer system 600 displays the navigation widget 632 and the weather widget 626 at appropriate sizes due to the degree of relevance to the second user. For example, in Figure 6G In the computer system 600, the weather widget 626 is displayed in a relatively large size, but... Figure 6H In some embodiments, the weather widget 626 is less relevant, and the computer system 600 displays it at a reduced size. Similarly, in some implementations, the computer system 600 displays widgets regardless of the current relevance and / or context of the environment. For example, the clock widget 604 remains a constant size, while the computer system 600 displays the weather widget 626 and / or the navigation widget 632 at different sizes based on relevance, environmental context, and / or user presence. In some implementations, the computer system 600 changes the size of the displayed widgets due to the detection of identified and / or unidentified users. For example, the size of the calendar widget is reduced when an unidentified and / or identified user is detected. Figure 6H As illustrated, navigation widget 632 includes "busy traffic" corresponding to the high traffic volume to Annette's workplace. Furthermore, navigation widget 632 does not correspond to sensitive content about Annette and may be displayed alongside David (e.g., a second user) and unknown users within the detection area. In some embodiments, the displayed widget corresponds to a group of users. For example, a navigation widget displaying information about carpooling commutes for a user group. In some embodiments, the displayed widget does not correspond to any user but is displayed automatically due to the context of the environment. For example, severe weather warnings for the area. Figure 6H In the computer system 600, the navigation component 632 is displayed and communicates with one or more input devices (e.g., a touch-sensitive display component, a depth and / or proximity sensor and / or a voice communication component).
[0203] Figures 6I to 6J An exemplary user interface for displaying content based on user interaction with a computer system, according to some implementation schemes, is illustrated.
[0204] like Figure 6I As illustrated, the third user's hand (1) is very close to the display component of the computer system 600 and (2) points to the navigation component 632. Therefore, the computer system 600 detects the potential input (e.g., the third user's hand (e.g., represented by the hand and outstretched fingers 634)). Figure 6I In the process, computer system 600 detects a third user's hand within a first predetermined distance and outside a second predetermined distance. Figure 6IIn response to detecting potential input from a user and detecting a third user's hand within a first predetermined distance, computer system 600 increases the size of a widget within user interface 602 located at the position corresponding to the detected potential input. For example... Figure 6I As illustrated, in response to detecting potential input from a user and detecting a third user's hand within a first predetermined distance, the computer system 600 determines the distance based on the user's position. Figure 6H The navigation widget 632 is displayed at an increased size, previously indicated by an increase in its size. In some embodiments, the computer system 600 displays the widget at an increased size because input is received rather than potential input is detected. In some embodiments, the computer system 600 changes the content displayed within the widget in response to the detection of input and / or potential input directed to the widget. For example, upon detecting input and / or potential input directed to a widget corresponding to a specific user, more detailed information and / or personal information is displayed to the user. Figure 6I As illustrated, computer system 600 regarding its... Figure 6H The size of the weather widget 626 is reduced from its previous size to accommodate the increased size of the navigation widget 632. Similarly... Figure 6I As illustrated, computer system 600 reduces the content within weather widget 626 to match the reduced size, from "New York 70" to "70". In some embodiments, the reduced-size widget displays generalized content instead of a subset of the original content. For example, a to-do list widget displays the number of items, instead of a reduced-size version of the to-do list. In some embodiments, in response to detecting potential input from a user and detecting a third user's hand within a first predetermined distance, computer system 600 moves a portion of itself to make it easier and / or more comfortable for the user to interact with it. For example, when the third user's hand moves closer to the display widget, computer system 600 may tilt the display back to a specific angle. Figure 6I In the process of displaying the navigation widget 632 at an increased size, the computer system 600 detects input from a third user's hand (e.g., represented by a hand and outstretched fingers 634) via one or more input devices, which points to a position corresponding to the navigation widget 632.
[0205] like Figure 6J As illustrated, in response to detecting input pointing to the location corresponding to navigation widget 632, computer system 600 no longer displays user interface 602 and displays navigation user interface 636. In this example, navigation user interface 636 is the application user interface of the navigation application corresponding to navigation widget 632. Figure 6JAs illustrated, navigation user interface 636 displays navigation content. In this example, the navigation content within navigation user interface 636 corresponds to Annette (e.g., a third user) because Annette is a known user and is very close to computer system 600, as illustrated in Figure 606, because third user representation 614 is very close to computer system representation 608. In some embodiments, the navigation content within navigation user interface 636 corresponds to Annette because navigation widget 632 corresponds to (e.g., in...) Figure 6I Annette. In some implementations, navigation content within the navigation user interface 636 corresponds to users (e.g., users 612, 614, and / or 630) based on relevance to the user rather than on relative positioning. For example, navigation content within the navigation user interface 636 corresponds to David (e.g., user 612) due to anticipated heavy traffic during David's commute to work. As part of the content for Annette, Figure 6J This example illustrates the user interface object corresponding to Annette's work location. In this example, in Figure 6J In the interface, the user interface object corresponding to Annette's work location allows Annette to choose her route to work without entering an address.
[0206] exist Figure 6J In the data, users indicated that 612, 614, and 630 remained as... Figures 6F to 6I In the illustrated relative positioning. For example... Figure 6J As illustrated, user instructions 622, 624, and 628 remain on top of one or more user interfaces (e.g., user interface 636 and / or user interface 602) displayed on the computer system 600. Additionally, as... Figure 6J As illustrated, computer system 600 displays features similar to those described above. Figures 6G to 6I User indicators 622, 624, and 628 possess the same visual characteristics (e.g., size and / or positioning) discussed herein. In some embodiments, computer system 600 no longer displays user indicators 622, 624, and / or 628 when displaying the application user interface. In some embodiments, computer system 600 displays user indicators (e.g., user indicator 624) corresponding to the application user interface and / or corresponding to the user (e.g., user 614) detected by computer system 600. For example, only user indicator 624 is displayed because it represents Annette, and the navigation content corresponds to Annette.
[0207] Figure 7This is a flowchart illustrating a method for displaying content in a widget based on a user's distance using a computer system, according to some implementation schemes. Process 700 is executed at a computer system (e.g., 100, 200, and / or 600). Some operations in process 700 may be combined, some operations may be ordered differently, and some operations may be omitted.
[0208] As described below, process 700 provides an intuitive way to display content in widgets based on user distance. This method reduces the cognitive burden on users regarding displaying content in widgets based on user distance, thereby creating a more efficient human-computer interface. For battery-powered computing devices, enabling users to display content in widgets faster and more efficiently based on user distance saves power and increases the time interval between battery charging.
[0209] In some implementations, process 700 is integrated with one or more input devices (e.g., touch-sensitive surfaces, input mechanisms (e.g., physical input mechanisms, such as buttons and / or rotary input mechanisms), cameras, depth sensors, and / or microphones) and display components (e.g., ... Figures 6A to 6J The communication is performed at a computer system (e.g., 600) that communicates with the left side of the device (e.g., a display screen and / or a touch-sensitive display). In some embodiments, the computer system is a watch, telephone, tablet computer, processor, head-mounted display (HMD) device, public utility, media device, speaker, television, and / or personal computing device.
[0210] The computer system detects (702) the environment (e.g., via one or more input devices) Figures 6A to 6J The detection of the first user is defined as follows: A first user (e.g., 610, 612, and / or 614) (e.g., a first person, a first animal, and / or a first object) (e.g., the location of the first user) is located in (or in a first area of the environment, such as a physical, virtual, and / or mixed reality environment) (e.g., within the field of view of one or more input devices). In some embodiments, detecting the first user includes detecting the location and / or identity of the first user. In some embodiments, the first user is detected via communication and / or messages (e.g., indications of the presence of the first user) received from another computer system corresponding to the first user (e.g., different from that computer system).
[0211] In response to the detection of a first user in the environment, the computer system displays (704) a first user interface (e.g., 602) including a first component (e.g., 604, 618, and / or 620) via a display component, wherein displaying the first component (e.g., in response to the detection of a first user in the environment) includes: (706) determining a first distance (e.g., between the first user and an input device in the computer system, an object, another user, and / or one or more input devices) based on the first user's location. Figure 6B Within a 610-degree range (e.g., a predefined distance) (e.g., 0 feet to 5 feet), the position of the display component within the first component (e.g., ...) Figure 6B The first content is displayed at positions 604, 618, and / or 620 in the text (e.g., Figure 6B 604, 618 and / or 620 in (708); and determining, according to (708), a second distance (e.g., the first user's input device in a computer system, an object, another user's and / or one or more input devices) that is different from the first distance from the first distance. Figure 6C Within (and / or not within the first distance) (and / or also within the second distance) (e.g., a predefined distance) (e.g., 5 feet to 10 feet), the second content is displayed via a display component at the location of the first component (e.g., ...). Figure 6C 604, 618, and / or 620 (e.g., not displaying the first content and / or not displaying the first content at the location in the first widget), wherein the second content differs from the first content (e.g., as mentioned above in Figures 6B to 6C(As discussed in the document). In some embodiments, the first content corresponds to a first user. In some embodiments, the first user interface is a system user interface of a computer system, which includes the display of multiple different widgets corresponding to different applications. In some embodiments, the first user interface corresponds to an application. In some embodiments, the application corresponds to the first widget. In some embodiments, the second content corresponds to the first user. In some embodiments, the second content does not correspond to the first user. In some embodiments, the second content includes a portion of the first content, wherein the first content includes another portion different from that portion of the first content. In some embodiments, the first content includes a portion of the second content (e.g., a representation of media output by the computer system), wherein the second content includes another portion different from that portion of the second content. In some embodiments, the first content includes a portion of content not included in the second content (e.g., a pause button). In some embodiments, the second content includes a portion of content not included in the first content (e.g., an instruction that the first user should approach more closely to interact with the computer system). In some embodiments, the first content is displayed at a location within the first widget, without displaying the second content (e.g., at a location within the first widget). Displaying different content when a user is detected at different distances from the computer system allows the computer system to automatically switch between different types of content based on the user's distance, thereby performing operations without requiring further input when a set of conditions have been met, and improving privacy.
[0212] In some implementations, the second distance (e.g., Figure 6C The position of 610 in the middle) is greater than the first distance (for example, Figure 6B (The location of 610 in the text). In some implementations, the first content includes controls (e.g., Figure 6B The small circle within 618 (e.g., a user interface control, a content control user interface object, a user interface object, and / or a content control) (e.g., displaying the first content includes a display control). In some implementations, the second content does not include controls (e.g., in...). Figure 6B(The small circle is missing from 618). In some embodiments, the control is not displayed if it is determined that the first user is greater than a third distance (e.g., the same as or different from the first and / or second distance) (e.g., a distance from the computer system and / or an input device in one or more input devices) (e.g., a predefined distance) (e.g., 5 to 10 feet, greater than 5 feet, and / or greater than 10 feet). In some embodiments, the control corresponds to a first widget. In some embodiments, when the control is displayed, the computer system detects that the first user is not greater than a third distance (e.g., a distance from the computer system and / or an input device in one or more input devices). In some embodiments, the computer system stops displaying the control in response to detecting that the first user is not greater than a third distance. In some embodiments, the computer system performs one or more operations in response to detecting input pointing to the control (e.g., performing one or more operations on a file, performing one or more operations on displayed and / or undisplayed information, and / or performing one or more operations to communicate with another computer system). Controls and content are displayed when the user is within a certain distance from the computer system, but not when the user is outside that distance. This provides the user with the ability to automatically switch between different types of content based on the user's distance, thereby enabling actions to be performed without further input when a set of conditions have been met, and providing increased privacy.
[0213] In some implementations, the second distance (e.g., Figure 6C The position of 610 in the middle) is greater than the first distance (for example, Figure 6B The position of 610 in the middle). In some implementations, the first content (e.g., Figure 6B 604, 618, and / or 620 in the list include those with enhanced privacy levels (e.g., as mentioned above in...). Figures 6B to 6E The third content described herein (e.g., a higher level of privacy and / or an increased level of privacy) and corresponding to (e.g., involving, associated with, relating to, and / or related to) the first user. In some implementations, the second content (e.g., Figure 6C 604, 618, and / or 620 in the text do not include third-party content with enhanced privacy levels (e.g., as mentioned above in...). Figures 6B to 6E(As described in [the document]). In some embodiments, the third content with a higher level of privacy controls is the first user's personal content and / or privacy content (e.g., health information, financial information, and / or detailed calendar information). In some embodiments, the third content is the first content (e.g., the entirety of the first content). In some embodiments, the third content is different from the first content. In some embodiments, the third content includes the first content. In some embodiments, the first content includes the third content. In some embodiments, the third content is additional content displayed alongside (e.g., together and / or close to) the first content. In some embodiments, the third content is additional user-specific content derived from the first content. In some embodiments, the third content is unrelated to the first content. In some embodiments, after (and / or at) the display of the third content, the computer system detects that the first user is no longer (and / or detects the absence of the first user) (and / or no longer detects the first user) within a first distance (and / or in the environment) (and / or a predefined distance) and stops displaying the third content. In some embodiments, the computer system detects that the first user is no longer within a first distance (and / or a second distance) (and / or in the environment) by stopping the detection of one or more inputs from the first user. When a user is within a predefined distance from the computer system, content with a higher level of privacy controls is displayed, and when the user is outside the predefined distance, the display of content with a higher level of privacy controls is abandoned. This allows the computer system to automatically switch between different levels of privacy content based on the user's distance, thereby performing operations without further input when a set of conditions have been met, and improving privacy.
[0214] In some implementations, the first content (e.g., Figure 6B When (e.g., at position 604, 618, and / or 620 in the first component) (and / or when determining that the first user is within a first distance) (and / or when determining that the first user is within a second distance), the computer system detects the environment (e.g., via one or more input devices) Figures 6A to 6JThe second user (e.g., 612, 614, and / or 630) is different from the first user (e.g., 610, 612, and / or 614) in (e.g., within the field of view of one or more input devices) (e.g., within a first distance and / or within a second distance). In some embodiments, detecting the second user includes detecting the location and / or identity of the second user. In some embodiments, the second user is detected via communication and / or messages (e.g., indicating the presence of the second user) received from another computer system (e.g., different from the computer system) corresponding to the second user. In some embodiments, in response to detecting the second user in the environment (and / or while continuing to detect the first user in the environment) (and / or based on determining that the first user is within a first distance), the computer system stops displaying the first content (e.g., ...) via the display component. Figure 6G (e.g., at position 604 and / or 626 in the first component). In some embodiments, in response to detecting a second user in the environment (and / or while continuing to detect a first user in the environment) (and / or based on determining that the first user is within a first distance), the computer system stops displaying the second content. In some embodiments, in response to detecting a second user in the environment (and / or while continuing to detect a first user in the environment) (and / or based on determining that the first user is within a first distance), the computer system displays general content via a display component. In some embodiments, in response to detecting a second user in the environment (and / or while continuing to detect a first user in the environment) (and / or based on determining that the first user is within a first distance), the computer system displays the second content at position in the first component. In some embodiments, in response to detecting a second user in the environment (and / or while continuing to detect a first user in the environment) (and / or based on determining that the first user is within a first distance), the computer system displays content different from the first content and / or the second content. Stopping the display of content in response to detecting an additional user in the environment allows the computer system to automatically switch between privacy and non-privacy content based on the detection of an additional user in the environment, thereby performing operations without requiring further input when a set of conditions has been met, and improving privacy.
[0215] In some implementations, in the environment (e.g., Figures 6A to 6J After (and / or at) the detection of a second user (e.g., 612, 614, and / or 630) in 606, the computer system detects that the first user (e.g., 610, 612, and / or 614) is no longer (e.g., the absence of the first user is detected and / or the first user is no longer detected) in the environment (and / or in a first region of the environment). In some embodiments, in response to detecting that the first user is no longer in the environment (e.g., missing), Figure 6D (610 in the middle) and the second user in the detection environment (e.g., Figure 6D When (as in 612 and / or 614) is detected, the computer system displays fourth content (e.g., 604, 618, 620 and / or 626) corresponding to the second user (e.g., and not corresponding to the first user) via a display component (e.g., personal, specific and / or privacy content). In some embodiments, the fourth content corresponding to the second user is different from the content corresponding to the first user. In some embodiments, the fourth content is displayed at a location within the first component. In some embodiments, the fourth content is the second content. In some embodiments, the fourth content is different from the second content and / or the first content. In some embodiments, after detecting the second user in the environment (and / or while displaying the fourth content) (and / or when the first user is no longer in the environment), the computer system detects that the second user is no longer in the environment via one or more input devices. In some embodiments, in response to detecting that the second user is no longer in the environment (e.g., after and / or when detecting that the first user is no longer in the environment), the computer system displays the second content (e.g., 604, 618, 620 and / or 626) at a location within the first component via a display component. Figure 6C (Referring to 604, 618, and / or 620 in the original text). In some embodiments, the second content corresponds to the first user. In some embodiments, the second content does not correspond to the first user. In some embodiments, the second content includes a portion of the first content. In some embodiments, the second content corresponds to the second user. In some embodiments, the second content does not correspond to the second user. In some embodiments, the second content includes a portion of the fourth content. In some embodiments, after detecting a second user in the environment, the computer system stops displaying the fourth content corresponding to that user. Displaying different content based on the detection of different users in the environment allows the computer system to display appropriate private and / or non-private content for different users without requiring user input, and allows the computer system to switch between user content and other content based on no longer detecting a user in the environment, thereby performing operations without requiring further input when a set of conditions has been met, and improving privacy.
[0216] In some implementations, displaying the first widget (e.g., 604, 618, and / or 620) includes: based on determining that the first user is within a first distance, displaying fifth content (e.g., Figure 6B 604, 618 and / or 620 in the data); and based on determining that the first user is within the second distance, displaying the fifth content (e.g., Figure 6C(referring to 604 and / or 618 in the original text). In some embodiments, the computer system displays fifth content while displaying first and / or second content. In some embodiments, the computer system displays fifth content in response to detecting a first user within a first and / or second distance. In some embodiments, the position in the first widget is a first position. In some embodiments, the fifth content is displayed at a second position in the first widget. In some embodiments, the second position is different from the first position. In some embodiments, the fifth content is displayed side-by-side and / or simultaneously with the first and / or second content. Displaying content regardless of the user's distance from the computer system allows the computer system to continuously display relevant content to the user and provide feedback on the device status regardless of the user's distance from the computer system, thereby reducing the amount of input required to perform operations and providing the user with improved visual feedback.
[0217] In some implementations, the first component corresponds to the first application (e.g., as described above). Figures 6A to 6C (As discussed above). In some embodiments, the display of a first user interface (e.g., 602) including a first component (e.g., 604, 618, and / or 620) includes displaying a second application different from the first application via a display component (e.g., as discussed above). Figures 6A to 6C The corresponding second component (e.g., 604, 618, and / or 620) is discussed in the document. In some embodiments, the first application and the second application are applications of different types. In some embodiments, the first application and / or the second application are system applications. In some embodiments, one application (e.g., the first application or the second application) is a system-based application, and the other application (e.g., the first application or the second application) is a third-party application. Displaying content from one application and a component corresponding to another application provides the user with additional controls within the user interface without losing the ability to view content from the first application, thereby reducing the amount of input required to perform an operation and providing additional control operation without cluttering the user interface with additional displayed controls.
[0218] In some implementations, displaying the second component (e.g., 604, 618, and / or 620) includes: determining a first distance (e.g., between the first user and an input device in a computer system, an object, another user, and / or one or more input devices) based on the distance of the input device. Figure 6B Within the location of 610 (e.g., a predefined distance) (e.g., 0 feet to 5 feet), in the location of the second component (e.g., Figure 6BThe sixth content (e.g., 604, 618, and / or 620) is displayed at positions 604, 618, and / or 620; and the second distance (e.g., based on determining the first user's location at a second distance from the input device in one or more input devices of a computer system, an object, another user, and / or a computer system) is determined. Figure 6C The sixth content is displayed at a location within the second widget (and / or not within the first distance) (and / or also within the second distance) (e.g., a predefined distance) (e.g., 5 feet to 10 feet). In some implementations, displaying the second widget includes displaying the sixth content at a location within the second widget. Displaying widgets regardless of the user's distance from the computer system allows the computer system to continuously display relevant widgets to the user and provides feedback on the device status to the user regardless of the user's distance from the computer system, thereby reducing the amount of input required to perform operations and providing the user with improved visual feedback.
[0219] In some implementations, the computer system detects the environment via one or more input devices (e.g., Figures 6A to 6J The first absence (e.g., missing) of the first user in (and / or the first and / or second regions of the environment) in 606) Figure 6A and / or Figure 6C In some embodiments, in response to detecting a first absence of the first user in the environment, the computer system displays a first user interface via a display component, including a first component comprising seventh content (e.g., 610, 612, and / or 614) at a location (e.g., 604, 618, and / or 620) within the first component, wherein the seventh content differs from the first content (e.g., 604, 618, and / or 620) and the second content (e.g., 604, 618, and / or 620). In some embodiments, the seventh content is displayed at the location within the first component. In some embodiments, the seventh content is displayed side-by-side and / or simultaneously with the first content and / or the second content. In some embodiments, the seventh content is displayed regardless of whether a user is detected (e.g., continuously displayed regardless of whether a user is detected). Displaying content when no user is detected allows the computer system to automatically display generalized content for a potential user without performing determination on the potential user, thereby performing an operation without further input when a set of conditions has been met.
[0220] In some implementations, the computer system detects the presence of a first user in the environment (e.g., via one or more input devices). Figures 6A to 6J The second absence (e.g., lack of) in 606) (and / or the first and / or second regions of the environment) Figure 6A and / or Figure 6C (e.g., 610) (and / or no longer detecting the presence of the first user). In some embodiments, in response to detecting a second absence of the first user in the environment, the computer system displays a first user interface (e.g., 602) via a display component, which includes a first component and second content (e.g., 604, 618, and / or 620) (e.g., at a location within the first component or at a different location within the first component). In some embodiments, the second content is displayed regardless of whether a user is detected. Displaying content based on detecting the absence of a user in the environment allows the computer system to automatically transition to generalized content in the absence of user input and allows the computer system to display relevant content to potential users of the computer system, thereby performing operations without further input when a set of conditions has been met.
[0221] In some implementations, when detecting a first user (e.g., 610, 612, 614 and / or 630) (and / or when determining that the first user is within a first distance) (and / or when determining that the first user is within a second distance), the computer system detects the environment (e.g., Figures 6A to 6J A third user (e.g., 610, 612, 614, and / or 630) different from the first user is detected in (e.g., within the field of view of one or more input devices) (e.g., within a first distance and / or a second distance). In some embodiments, in response to detecting a third user in the environment, the computer system displays a first user interface (e.g., 602) via a display component, including a first component (e.g., 604, 618, and / or 620), wherein displaying the first component includes displaying eighth content (e.g., different from the first and / or second content) at the location within the first component (e.g., the location of 604, 618, and / or 620). In some embodiments, the eighth content corresponds to one and / or two users. In some embodiments, the eighth content is displayed when more than one user is detected, simultaneously with the detection of more than one user, after the detection of more than one user, and / or in response to the detection of more than one user. Displaying different content based on the detection of multiple users allows the computer system to display relevant content to multiple users without detecting input from one or more of the multiple users, thereby performing operations without requiring further input.
[0222] In some implementations, the computer system displays first content (e.g., 604, 618, and / or 620) and / or second content (e.g., at a location within the first component) via a display component, and detects a third absence of the first user in the environment (e.g., lack of...) via one or more input devices. Figure 6A and / or Figure 6C The 610 in the middle (e.g., within a first distance and / or within a second distance) continues for a predetermined amount of time (e.g., as described above in Figures 6A to 6C (as discussed in the document) (e.g., 0.1 minutes to 120 minutes). In some embodiments, in response to detecting a third absence of a first user in the environment, the computer system stops displaying first content (and / or second content) via a display component. In some embodiments, based on determining that no user has been detected in the environment within a predefined (e.g., predetermined and / or preset) time period (e.g., time frames set within settings and / or default time frames), the computer system stops displaying first content (and / or second content) via a display component (e.g., at a position within the first widget). In some embodiments, stopping the display of corresponding content includes stopping the display of the first widget. In some embodiments, stopping the display of corresponding content includes stopping the display of any and / or most content (e.g., no longer displaying content). Stopping the display of content after a predetermined time period without detecting a user allows the computer system to automatically switch between displaying content and no longer displaying content without user input, thereby performing operations without requiring additional user input and allowing the computer system to avoid display component aging.
[0223] In some implementations, in response to the detection of a first user (e.g., 610, 612, and / or 614) in the environment (e.g., 602), the computer system transitions from an inactive state (e.g., Figure 6D In 602 (e.g., a lower processing state, idle state, and / or low power state) (e.g., when a first user is detected in the environment (e.g., simultaneously, before, after, and / or at that time)) transitions to an active state different from the inactive state (e.g., Figures 6A to 6C (e.g., a processing state higher than the inactive state, a non-idle state, a power state higher than the inactive state, and / or a full-power state). In some embodiments, the computer system does not display content when it is in an idle state. In some embodiments, the computer system displays content when it is in an active state. In some embodiments, the computer system displays content at a lower brightness when it is in an idle state than when it is in an active state. The transition between inactive and active states when a user is detected allows the computer system to automatically display relevant content without requiring input from the user, and allows the user to view content without providing input to the inactive computer system, thereby performing actions and providing feedback without requiring additional user input.
[0224] In some implementations, while (or after) displaying the second content (e.g., 604, 618, and / or 620) (e.g., at a location within the first component), the computer system detects a first distance (e.g., ...) via one or more input devices. Figure 6B A first user (e.g., 610, 612, and / or 614) is located within a predetermined distance (e.g., the first user moves from a second distance to a first distance (e.g., 5 feet to 10 feet to 0 feet to 5 feet)). In some embodiments, in response to detecting a first user within the first distance (e.g., the first user moves from a second distance to a first distance (e.g., 5 feet to 10 feet to 0 feet to 5 feet)), the computer system displays first content (e.g., 604, 618, and / or 620) via a display component (e.g., at a location within the first widget). In some embodiments, in response to detecting a first user within the first distance, the computer system stops displaying second content (e.g., at a location within the first widget). Displaying content while a user moves within a predetermined distance of the computer system allows the computer system to automatically switch between non-private and private content based on the context surrounding the user, thereby performing operations without requiring additional user input.
[0225] In some implementations, while (or after) displaying the first content (e.g., 604, 618, and / or 620) (e.g., at a location within the first component), the computer system detects a second distance (e.g., ...) via one or more input devices. Figure 6C In some embodiments, in response to detecting a first user within the second distance (e.g., the first user moves from a first distance to a second distance (e.g., 0 feet to 5 feet to 5 feet to 10 feet)), the computer system displays second content (e.g., 604, 618, and / or 620) via a display component (e.g., at the location in the first widget). In some embodiments, in response to detecting a first user within the second distance, the computer system stops displaying the first content (e.g., at the location in the first widget). Displaying content when the user moves beyond a predetermined distance from the computer system allows the computer system to automatically switch between privacy and non-privacy content based on the context surrounding the user, thereby performing operations without requiring additional user input.
[0226] It should be noted that the above text regarding method 700 (for example, Figure 7The details of the processes described herein also apply in a similar manner to the methods described below / above. For example, process 800 may optionally include one or more characteristics of the various methods described above with reference to process 700. For example, a computer system may use the techniques described with respect to process 700 to display content in a widget based on the user's distance, and use the techniques described with respect to process 800 to display content in a widget based on location. For the sake of brevity, these details will not be repeated below.
[0227] Figure 8 This is a flowchart illustrating a method for displaying content in a widget based on location using a computer system, according to some implementation schemes. Process 800 is executed at a computer system (e.g., 100, 200, and / or 600). Some operations in process 800 may be combined, some operations may be ordered differently, and some operations may be omitted.
[0228] As described below, process 800 provides an intuitive way to display content in widgets based on location. This method reduces the cognitive burden on users when displaying content in widgets based on location, thereby creating a more efficient human-computer interface. For battery-powered computing devices, enabling users to display content in widgets faster and more efficiently based on location saves power and increases the time interval between battery charging.
[0229] In some implementations, process 800 is in conjunction with one or more input devices (e.g., camera, depth sensor and / or microphone) and display components (e.g., Figures 6A to 6J The communication is performed at a computer system (e.g., 600) that communicates with the left side of the device (e.g., a display screen and / or a touch-sensitive display). In some embodiments, the computer system is a watch, telephone, tablet computer, processor, head-mounted display (HMD) device, public utility, media device, speaker, television, and / or personal computing device.
[0230] The computer system detects (802) the physical environment (e.g., via one or more input devices) Figures 6A to 6J The first user in 606 (e.g., 610, 612, 614 and / or 630) (e.g., user, person, animal and / or object).
[0231] When (804) a first user is detected in the physical environment, based on the determination that one or more criteria of the first set are met (e.g., as described above) Figures 6D to 6H (as discussed in the document), where the first group of one or more criteria includes when (e.g., determining) in a first area of the physical environment (e.g., Figures 6E to 6HWhen a second user (e.g., 610, 612, 614 and / or 630, different from the first user) is not detected in the left portion of 606 (e.g., area and / or segment) (and / or area, segment and / or region of the field of view of one or more cameras), the computer system displays (806) the first content (e.g., 604, 618, 620, 626 and / or 632) via display components (e.g., for the respective widget and / or in the respective widget). In some embodiments, while the computer system is displaying the first content, another user is detected in a second region of the physical environment different from the first region; in other embodiments, while the computer system is displaying the first content, no other user is detected in the second region of the physical environment.
[0232] When (804) a first user is detected in the physical environment, based on the determination that one or more criteria of the second set are met (e.g., as described above), Figures 6D to 6H (As discussed in the document), where the second set of one or more criteria includes criteria that are met when a second user is detected in a first area of the physical environment, and the computer system displays (808) second content (e.g., 604, 618, 620, 626 and / or 632) different from the first content via a display component (e.g., for a widget and / or within the corresponding widget) (e.g., without displaying the first content). In some embodiments, the first content has been considered to be more sensitive than the second content and / or content requiring a higher level of privacy to view and / or interact with. Displaying content based on the detection of an additional user allows the computer system to automatically switch between a user's private content and non-private content for either user, thereby performing operations without requiring additional user input when a set of conditions has already been met, and improving security.
[0233] In some implementations, the second user (e.g., 610, 612, 614 and / or 630) is an unidentified user (e.g., as described above in...). Figures 6G to 6H(As discussed in the document). In some embodiments, the computer system determines that one or more criteria of a first set are met. In some embodiments, the first set of one or more criteria includes criteria that are met when a first user in a first area of the physical environment is an identified user (e.g., the user has records locally and / or remotely) (e.g., the user's characteristics correspond to known records of the identified user (e.g., fingerprint readings, voice signatures, and / or facial records)) (e.g., criteria met when a user profile is obtained (e.g., a process of requesting identification of a user via internal records and / or querying a remote computer system (e.g., a server and / or cloud process)). In some embodiments, the first content is personalized content of the identified user. In some embodiments, the first content is sensitive content of the identified user (e.g., banking information, personal calendar information, and / or health information). In some embodiments, the computer system determines that one or more criteria of the first set are met. In some embodiments, the first set of one or more criteria includes criteria that are met when a first user in a first area of the physical environment is an unidentified user (e.g., the user lacks records locally and / or remotely) (e.g., criteria met when the user corresponding to the first user (e.g., performing actions relative to the first user) does not match a user known to the computer system), displaying second content. In some implementations, the second content is generalized content to be displayed to any user. In some implementations, the second content is public content set by the user to be displayed to any user. In some implementations, the second content is system-defined content (e.g., clock, weather, and / or date) to be displayed to any user. In some implementations, the second content is system-defined content that is a subset of the previously displayed content (e.g., a general calendar of meetings and / or events without a specific user). Displaying different content based on the detection of unidentified users allows the computer system to automatically switch between content for identified and unidentified users, thereby performing operations without requiring further input when a set of conditions has been met, and improving security.
[0234] In some implementations, the physical environment (e.g., Figure 6A When the first user (e.g., 610, 612, 614, and / or 630) in 606) is identified. In some implementations, based on the determination that one or more criteria of a third group are met (e.g., as described above in Figures 6D to 6H (as discussed in the document), where one or more criteria in the third group include when in the first area of the physical environment (e.g., Figures 6E to 6HWhen a third user (e.g., 610, 612, 614, and / or 630) different from the first and second users is detected in the left portion of 606 (in the original text), the computer system displays third content (e.g., 604, 618, 620, 626, and / or 632) different from the first and second content (e.g., 604, 618, 620, 626, and / or 632) via a display component. In some embodiments, the computer system determines that one or more criteria of a first set are met, wherein the first set of one or more criteria includes criteria met when the first user is a first identified user. In some embodiments, the third content corresponds to the first identified user. In some embodiments, the computer system determines that one or more criteria of a first set are met, wherein the first set of one or more criteria includes criteria met when the first user is a second identified user different from the first identified user. In some embodiments, the third content corresponds to the second identified user. In some embodiments, the first content and / or the second content correspond to the identified user by being content that can only be viewed by the identified user (e.g., financial information, health information, and / or schedule information). In some implementations, the first and / or second content corresponding to an identified user is generalized content (e.g., name and / or basic information) customized by the computer system for a specific user. In some implementations, the first and / or second content corresponding to a first identified user is a first version of specific content, and the first and / or second content corresponding to a second identified user is a different version of specific content (e.g., a calendar application displaying different meetings for different identified users). Displaying different content based on user identification allows the computer system to automatically switch between relevant content for different identified users, thereby performing operations without requiring further input when a set of conditions has already been met.
[0235] In some implementations, the physical environment (e.g., Figure 6A When the first user (e.g., 610, 612, 614, and / or 630) in 606) is identified. In some implementations, based on the determination that one or more criteria of the first set are met (e.g., as described above in Figures 6D to 6H (as discussed in the text), where one or more criteria for the first group include detecting when a first user belongs to the first group (e.g., as mentioned above in the text). Figures 6D to 6FThe first content is the fifth content (e.g., 604, 618, 620, 626, and / or 632) (and / or corresponding to the first group) when the criteria met (e.g., the user's home and / or family) are as discussed above. In some embodiments, the fifth content is personalized and / or sensitive content for the first user. In some embodiments, the fifth content includes additional personalized and / or sensitive content from the first group. In some embodiments, the fifth content is determined based on the criteria met in the first group (e.g., as discussed above). Figures 6D to 6F (As discussed in the document), where the first group of one or more criteria includes criteria that are met when a first user is detected not to belong to the first group, and the first content does not include the fifth content (e.g., 604, 618, 620, 626, and / or 632). In some embodiments, a group of users is a user-defined group (e.g., all users of a particular household and / or home). In some embodiments, a group of users is populated based on external determination (e.g., a group of users sharing a cloud account). In some embodiments, a group of users is a general group of each user who has used the device. In some embodiments, a group of users is all identified users of the device. In some embodiments, the sixth content is user-specific content for the first user, but does not include content corresponding to that group. In some embodiments, the sixth content is generalized content displayed to anyone not in the group. In some embodiments, the sixth content is personalized and / or sensitive content for the first user. Displaying different content based on the detection of users as members of a group allows the computer system to automatically switch between content for a specific user and relevant content for a group of users based on the user's group membership, thereby performing operations without further input when a set of conditions are met.
[0236] In some implementations, the physical environment (e.g., Figure 6A When the first user (e.g., 610, 612, 614, and / or 630) in 606) is identified. In some implementations, based on the determination that one or more criteria of a fourth group are met (e.g., as described above in Figures 6D to 6H (as discussed in the document), where one or more criteria in the fourth group include when (e.g., determining) in the first area of the physical environment (e.g., Figures 6E to 6H The criteria are met when a fourth user (e.g., 610, 612, 614, and / or 630, different from the first user) is not detected in the left portion of 606 (e.g., zone and / or segment), and when a second area of the physical environment (e.g., Figures 6E to 6HWhen a first user is detected in area 606 (and / or a region, segment, and / or area of the field of view of one or more cameras), a sixth content (e.g., 604, 618, 620, 626, and / or 632) is displayed via a display component (e.g., for the corresponding widget and / or within the corresponding widget). In some embodiments, the sixth content is the first content and / or the second content. In some embodiments, the sixth content is different from the first content and / or the second content. In some embodiments, the sixth content is determined based on the satisfaction of one or more criteria from a fifth set (e.g., as described above). Figures 6D to 6H (As discussed in the document), wherein one or more criteria in the fifth group include criteria satisfied when a fourth user is detected in a first area of the physical environment and criteria satisfied when a first user is detected in a second area of the physical environment, displaying a seventh type of content (e.g., 604, 618, 620, 626, and / or 632) different from the sixth type of content via a display component. In some embodiments, the seventh content is the first content and / or the second content. In some embodiments, the seventh content is different from the first content and / or the second content. In some embodiments, the first and second areas of the physical environment correspond to separate segments of a room. In some embodiments, the first and second areas of the physical environment are separate areas (e.g., two different rooms). In some embodiments, the first and second areas of the physical environment at least partially overlap. In some embodiments, the first and second areas of the physical environment are virtual boundaries. In some embodiments, the first and second areas of the physical environment are established based on configuration settings (e.g., system default settings). In some embodiments, the first and second areas are configured by the user. In some embodiments, the first and second areas of the physical environment are specified by a computer system (e.g., automatically detecting the physical layout of the environment, establishing boundaries based on the use of the computer system, and / or establishing boundaries based on the type of computer system). Displaying different content based on the detection of users in different areas of the environment allows the computer system to automatically switch between relevant content in one area and relevant content in another area, and to provide relevant content to the user based on the user's location in the environment, thereby performing operations without further input when a set of conditions have been met.
[0237] In some implementations, the first content (e.g., 604, 618, 620, 626 and / or 632) includes a first component (e.g., as described above in...). Figures 6D to 6HThe first content includes (e.g., one or more components including the first component) (e.g., media components (e.g., podcasts, music, and / or audiobooks), information components (e.g., weather, system information, and / or clocks), and / or communication components (e.g., text messages, call history, and / or third-party communications)) (e.g., controls that display real-time information and / or information and / or data corresponding to one or more metrics that have been calculated and / or calculated and / or displayed at certain time intervals, and / or controls that, when selected, cause the display of one or more portions of the user interface including real-time information (e.g., real-time information included in the display of the controls)). In some embodiments, the first content includes the first component and one or more other user interface elements. In some embodiments, the first component includes additional content corresponding to the first content (e.g., a calendar component and content for the next calendar event (e.g., user, time, and / or body content)). In some embodiments, the first component includes additional content unrelated to the first content (e.g., a clock component and currently playing music content). In some embodiments, the computer system populates the first component in conjunction with the first content. In some embodiments, the user customizes the first content to include the first component. Displaying widgets with content provides users with additional ways to interact with the content, thus offering additional control options without cluttering the user interface with additional displayed controls.
[0238] In some implementations, the second content (e.g., 604, 618, 620, 626 and / or 632) includes a second component (e.g., as described above in...). Figures 6D to 6H(As discussed in the document). (For example, one or more widgets including a second widget) (e.g., media widgets (e.g., podcasts, music, and / or audiobooks), information widgets (e.g., weather, system information, and / or clocks), and / or communication widgets (e.g., text messages, call history, and / or third-party communications)). In some embodiments, the second content includes a second widget and one or more other user interface elements. In some embodiments, the second widget is the second content. In some embodiments, the second widget includes additional content corresponding to the second content (e.g., a calendar widget and content for the next calendar event (e.g., user, time, and / or body content)), and the first widget does not include the additional content. In some embodiments, the second widget includes additional content unrelated to the second content (e.g., a clock widget and currently playing music content), and the first widget does not include the additional content. In some embodiments, the computer system populates the second widget with the second content. In some embodiments, the user customizes the second content to include the second widget. Displaying a widget with content provides the user with additional methods for interacting with the content, thereby providing additional control options without cluttering the user interface with additional displayed controls.
[0239] In some implementations, the second widget (e.g., 604, 618, 620, 626, and / or 632) is identical to the first widget (e.g., 604, 618, 620, 626, and / or 632). In some implementations, the second widget is displayed when the first content is displayed and when the second content is displayed. In some implementations, the second widget contains the same information, visual appearance, and / or functionality as the first widget. Displaying the same type of widget within different content provides the user with a consistent view and control over different content within the user interface, thereby providing additional control options without cluttering the user interface with additional displayed controls and providing the user with improved visual feedback.
[0240] In some implementations, the second widget (e.g., 604, 618, 620, 626, and / or 632) is a widget of a different type from the first widget (e.g., 604, 618, 620, 626, and / or 632). In some implementations, the second widget and the first widget are widgets of the same type, but contain different information depending on whether the first content and / or the second content are displayed. In some implementations, the first widget and / or the second widget correspond to the first content and the second content, respectively. Displaying different types of widgets within different content provides the user with a unique view and control over different content within the user interface, thereby providing additional control options without cluttering the user interface with additional displayed controls and providing the user with improved visual feedback.
[0241] In some embodiments, the second content (e.g., 604, 618, 620, 626, and / or 632) includes a third component (e.g., 604, 618, 620, 626, and / or 632) (e.g., a control that displays real-time information and / or information and / or data corresponding to one or more metrics calculated and / or calculated and / or displayed at certain time intervals within a predetermined time period, and / or a control in a user interface that, when selected, causes the display of one or more portions including real-time information (e.g., real-time information included in the display of the control). In some embodiments, the third component is different from the first and / or second component. In some embodiments, the third component is the same as the first and / or second component. In some embodiments, the component corresponds to the second content. In some embodiments, the component is displayed regardless of the second content. In some embodiments, the component is a system-defined component. In some embodiments, the component displays system information. In some embodiments, the component is a user-defined component. Displaying widgets with content provides users with additional ways to interact with the content, thus offering additional control options without cluttering the user interface with additional displayed controls.
[0242] In some implementations, the first content (e.g., 604, 618, 620, 626 and / or 632) includes content corresponding to (e.g., involving, pointing to, targeting and / or associated with) a first user (e.g., as described above in...). Figures 6E to 6H The content discussed herein (e.g., the first identified user). In some embodiments, the content corresponding to a user is personalized content. In some embodiments, the content corresponding to a user is sensitive and / or personal content that is not displayed to another user. In some embodiments, the content corresponding to a user is supplementary content for the user. In some embodiments, the content corresponding to a user is a subset of the user's content included in broader generalized content (e.g., a general calendar including meetings and / or events for a specific user). In some embodiments, detecting a first user in the physical environment includes detecting that the first user is the first identified user. Displaying content corresponding to a specific user allows the computer system to automatically display content based on the user's identification without requiring the user to select specific content to display, thereby performing operations without requiring further input from the user when a set of conditions has been met.
[0243] In some implementations, the second content (e.g., 604, 618, 620, 626, and / or 632) includes content that does not correspond to (e.g., does not involve, does not point to, and / or is not associated with) the first user (e.g., as described above in...). Figures 6E to 6HThe content discussed herein (e.g., the first identified user). In some embodiments, content not corresponding to the first user is generalized content displayed to any user. In some embodiments, content not corresponding to the first user is content set by the user to be displayed to anyone. In some embodiments, content not corresponding to the first user is system-defined content. In some embodiments, detecting the first user in the physical environment includes detecting that the first user is the first identified user. Displaying generalized content or content not corresponding to the user alongside content corresponding to the user allows the computer system to display content relevant to any user without requiring the identified user to select generalized content when displaying personalized content for the identified user, and to provide the user with information about the device status alongside the user-relevant content, thereby reducing the amount of input required to perform operations and providing the user with improved feedback.
[0244] In some implementations, the first content (e.g., 604, 618, 620, 626, and / or 632) includes the eighth content (e.g., 604, 618, 620, 626, and / or 632). In some implementations, the second content (e.g., 604, 618, 620, 626, and / or 632) includes the eighth content (e.g., 604, 618, 620, 626, and / or 632). In some implementations, the eighth content corresponds to generalized information that is always displayed regardless of what other content is displayed. In some implementations, the eighth content is constant through user selection. In some implementations, the eighth content corresponds to system content. In some implementations, the eighth content corresponds to an item that remains constant within the first and / or second content. Displaying content regardless of whether an additional user is detected allows the computer system to continuously display relevant content to the user and provide feedback on the device status to the user regardless of whether an additional user is detected, thereby reducing the amount of input required to perform operations and providing the user with improved visual feedback.
[0245] It should be noted that the above text regarding method 800 (for example, Figure 8 The details of the processes described herein also apply in a similar manner to the methods described below / above. For example, process 900 may optionally include one or more characteristics of the various methods described above with reference to process 800. For example, a computer system may use the techniques described with respect to process 800 to display content in a widget based on location, and may use the techniques described with respect to process 900 to display content in a widget based on the presence of one or more users in the environment. For the sake of brevity, these details will not be repeated below.
[0246] Figure 9This is a flowchart illustrating a method for displaying content in a widget based on the presence of one or more users in an environment using a computer system, according to some implementation schemes. Process 900 is executed at a computer system (e.g., 100, 200, and / or 600). Some operations in process 900 may be combined, some operations may be ordered differently, and some operations may be omitted.
[0247] As described below, process 900 provides an intuitive way to display content in a widget based on the presence of one or more users in an environment. This method reduces the cognitive burden on users when displaying content in a widget based on the presence of one or more users in an environment, thereby creating a more efficient human-computer interface. For battery-powered computing devices, enabling users to display content in widgets faster and more efficiently based on the presence of one or more users in an environment saves power and increases the time interval between battery charging.
[0248] In some implementations, process 900 is in conjunction with one or more input devices (e.g., camera, depth sensor and / or microphone) and display components (e.g., Figures 6A to 6J The communication is performed at a computer system (e.g., 600) that communicates with the left side of the device (e.g., a display screen and / or a touch-sensitive display). In some embodiments, the computer system is a watch, telephone, tablet computer, processor, head-mounted display (HMD) device, public utility, media device, speaker, television, and / or personal computing device.
[0249] The computer system detects (902) the environment (e.g., via one or more input devices) Figures 6A to 6J The user (e.g., 610, 612, 614, and / or 630) (e.g., a person, animal, and / or object) in a physical environment (e.g., the location of the first user) is considered. In some embodiments, detecting the first user includes detecting the location and / or identity of the first user. In some embodiments, the first user is detected via a microphone, camera, depth sensor, and / or communication received from a computer system corresponding to the first user (e.g., indicating the presence of the first user).
[0250] In response to detecting a user in the environment, the computer system displays (904) a first user interface (e.g., 602) via a display component, including first components (e.g., 604, 618, 620, 626 and / or 632), wherein displaying the first component includes: (906) determining that the computer system is at a location associated with a first privacy level for the user (e.g., as described above in...). Figures 6A to 6C As discussed above), the first type of content is displayed in the first widget via a display component (e.g., as discussed above). Figures 6A to 6C(as discussed in the text); and as determined according to (908) at locations where the computer system is associated with a second privacy level for a user that differs from the user's first privacy level (e.g., as discussed above). Figures 6A to 6C As discussed above), a second type of content, different from the first type of content in the first widget, is displayed in the first widget via a display component (e.g., as discussed above). Figures 6A to 6C (As discussed in the document). In some implementations, the first content corresponds to a first user. In some implementations, the first user interface is the system user interface of the computer system, which includes the display of multiple different widgets corresponding to different applications. In some implementations, based on determining that the computer system is at a location associated with a second privacy level for the user, the computer system does not display the first type of content in the widgets. In some implementations, based on determining that the computer system is at a location associated with a first privacy level for the user, the computer system does not display the second type of content. Displaying different content based on the privacy level corresponding to the location of the computer system allows the computer system to automatically switch between content with a higher privacy level and content with a lower privacy level based on the location of the computer system, thereby performing operations without requiring further input when a set of conditions has already been met, and improving privacy.
[0251] In some implementations, a user's second level of privacy is greater than their first level of privacy (e.g., more private) (e.g., less observation and / or interference from other users and / or people) (e.g., a bedroom has a higher level of privacy than a living room) (and / or a living room has a higher level of privacy than the outside of the house and / or further away from the house) (e.g., as described above). Figures 6A to 6C (As discussed in the text). Detecting different privacy levels at different locations allows a computer system to automatically display content corresponding to a privacy level at a location, thereby performing an operation without further input when a set of conditions has already been met.
[0252] In some implementations, the first type of content includes the first quantity of content (e.g., Figure 6C The content within 618 (e.g., representations of the application, information from the application (e.g., a set of one or more characters), application icons and / or widgets) (and / or a combination of application-based information and / or widget-based information) (e.g., corresponding to the first privacy level). In some implementations, the second type of content includes a second amount of content (e.g., Figure 6B The content within 618 (e.g., corresponding to the second privacy level). In some implementations, the second amount of content is greater than the first amount of content (e.g., as mentioned above). Figures 6A to 6C(As discussed in the document). In some implementations, the amount of content corresponds to the screen space occupied by the content, the number of widgets, the amount of text, the amount of user interface objects; the amount of generalized information, the amount of system information, and / or the amount of personalized and / or user-specific information. In some implementations, the second amount of content corresponds to additional content not found in the first type of content. In some implementations, the second amount of content is additional content of the same type as the first type of content. In some implementations, the increased amount of content corresponds to displaying personal information (e.g., privacy information displayed only in privacy locations (e.g., health information, financial information, and / or privacy calendar content)). Displaying a larger amount of content based on detecting a higher level of privacy allows the computer system to display additional privacy content when a higher level of privacy is detected, thereby performing an operation without requiring further input when a set of conditions has already been met.
[0253] In some implementations, the first type of content includes a first amount of information corresponding to (e.g., associated with and / or involving) the user (e.g., Figure 6C The content within 618). In some implementations, the second type of content includes a second amount of information corresponding to (e.g., associated with and / or involving) the user (e.g., Figure 6B (Content within 618). In some implementations, the second amount of information is greater than (e.g., more content of the same type and / or more user interface elements of the same type) the first amount of information (e.g., as described above). Figures 6A to 6C (as discussed in the text) (e.g., additional health information, financial information, and / or calendar information) (e.g., displaying more privacy information only when a user is detected at a privacy location). In some implementations, the additional information is additional privacy information of the first type of content to be displayed along with the second type of content. In some implementations, the additional information does not correspond to the first type of content. Displaying a larger amount of information based on the detection of a higher privacy level allows a computer system to display additional privacy information when a higher privacy level is detected, thereby performing an operation without requiring further input when a set of conditions has already been met.
[0254] In some implementations, the first type of content includes a first amount of financial information corresponding to a user (e.g., information associated with and / or for a user) (e.g., as described above). Figures 6A to 6C (As discussed above). In some implementations, the second type of content includes a first amount of financial information corresponding to the user (e.g., information associated with and / or specific to the user) (e.g., as discussed above). Figures 6A to 6C (As discussed above). In some implementations, the second amount of financial information is greater than the first amount of financial information (e.g., as discussed above). Figures 6A to 6C(As discussed in the document). In some implementations, financial information is obtained via local and / or remote financial applications. In some implementations, supplementary financial information corresponds to privacy information associated with the user. In some implementations, supplementary financial information is supplementary privacy information of the first type of content to be displayed along with the second type of content. In some implementations, supplementary financial information does not correspond to the first type of content. Displaying a larger amount of financial information based on the detection of a higher privacy level allows the computer system to display supplementary privacy financial information when a higher privacy level is detected, thereby performing an operation without further input when a set of conditions has already been met.
[0255] In some implementations, the first type of content includes a first amount of health information corresponding to the user (e.g., associated with and / or specific to the user) (e.g., as described above in...). Figures 6A to 6C (As discussed above). In some implementations, the second type of content includes a first amount of health information corresponding to the user (e.g., associated with and / or specific to the user) (e.g., as discussed above). Figures 6A to 6C (As discussed above). In some implementations, the second amount of health information is greater than the first amount of health information (e.g., as discussed above). Figures 6A to 6C (As discussed in the document). In some implementations, health information is obtained via other connected devices and / or through third-party health applications. In some implementations, additional health information corresponds to more private information about the user. Displaying a larger amount of health information based on the detection of a higher level of privacy allows the computer system to display additional privacy health information when a higher level of privacy is detected, thereby performing an action without requiring further input when a set of conditions has already been met.
[0256] In some implementations, the first type of content includes information corresponding to (e.g., associated with and / or targeting) a user's first amount of usage (e.g., statistics about a user's use of a computer system and / or a remotely connected computer system) (e.g., the amount of time a particular user uses a computer system and / or a particular application on the computer system) (e.g., as described above in...). Figures 6A to 6C (As discussed above). In some implementations, the second type of content includes a second amount of usage information corresponding to (e.g., associated with and / or targeted at) the user (e.g., as discussed above). Figures 6A to 6C (As discussed above). In some implementations, the second amount of usage information is greater than the first amount of usage information (e.g., as discussed above). Figures 6A to 6C(As discussed in the document). In some implementations, the usage information corresponds to the device displaying the content and / or other devices connected to the device displaying the content. In some implementations, the additional usage information is more private information corresponding to the user. Displaying a larger amount of usage information based on the detection of a higher privacy level allows the computer system to display additional privacy usage information when a higher privacy level is detected, thereby performing an operation without requiring further input when a set of conditions has already been met.
[0257] In some implementations, the user's primary level of privacy (e.g., as described above) Figures 6A to 6C The position discussed in the text corresponds to the first person's position (e.g., as mentioned above). Figures 6A to 6C (As discussed above). In some implementations, a second level of user privacy (e.g., as discussed above) Figures 6A to 6C The position discussed in the text corresponds to the position of the second person, which is different from the position of the first person (e.g., as mentioned above). Figures 6A to 6C (As discussed in the document). In some implementations, the first and second personal locations correspond to locations associated with the user (e.g., a location within the user's home). In some implementations, the second personal location is more private than the first personal location (e.g., the user's home is more private than the user's work office) (e.g., a bathroom is more private than a bedroom and / or a bedroom is more private than a living room). In some implementations, personal locations do not correspond to privacy levels and depict connections to the user (e.g., the user's home rather than public places (e.g., restaurants, bus stops, and / or parks)). Determining the privacy level of the environment within one or more of the user's personal locations allows a computer system to determine the appropriate type of content to output within the privacy level of the environment, thereby performing operations based on a set of conditions without requiring further input.
[0258] In some implementations, the first user interface (e.g., 602) includes a second widget (e.g., 604, 618, 620, 626, and / or 632). In some implementations, the second widget includes a third type of content (e.g., as described above). Figures 6A to 6C (as discussed above) (e.g., displaying the content regardless of the privacy level) (e.g., displaying the content at a first privacy level and / or a second privacy level). In some implementations, displaying the first widget includes simultaneously displaying the second widget (e.g., as discussed above). Figures 6A to 6C(As discussed in the document). In some implementations, the third type of content is generalized content. In some implementations, the third type of content is system information. In some implementations, the third type of content is configured by the user and / or the computer system to be displayed regardless of location. Continuously displaying additional content regardless of location privacy levels allows the computer system to consistently display a set of content without detecting location privacy levels, and allows the computer system to consistently display a set of content for user viewing, thereby improving performance and providing users with improved visual feedback.
[0259] In some implementations, when a second type of content (e.g., as described above) is displayed in a first component (e.g., 604, 618, 620, 626 and / or 632), Figures 6A to 6C (as discussed in the previous section) and determine the location of the computer system in relation to the second level of privacy (e.g., as mentioned above in the previous section). Figures 6A to 6C When (as discussed in the document) (and / or for the user), the computer system detects the computer system moving from a location associated with the second privacy level to a location associated with the first privacy level (e.g., as discussed above in the document). Figures 6A to 6C The movement discussed above (and / or for the user). In some embodiments, in response to detecting movement of the computer system from a location associated with a second privacy level to a location associated with a first privacy level (and / or for the user), the computer system stops displaying the second type of content in the first widget. In some embodiments, in response to detecting movement of the computer system from a location associated with a second privacy level to a location associated with a first privacy level, the computer system displa...
Claims
1. A method, the method comprising: At a computer system that communicates with one or more input devices and display components: Detecting the first user in the physical environment via the one or more input devices; as well as When detecting the first user in the physical environment: Based on the determination that one or more criteria of a first set are met, first content is displayed via the display component, wherein the first set of one or more criteria includes criteria that are met when no second user is detected in a first area of the physical environment; and Based on the determination that one or more criteria of a second set are met, a second content different from the first content is displayed via the display component, wherein the second set of one or more criteria includes criteria that are met when the second user is detected in the first area of the physical environment.
2. The method according to claim 1, wherein the second user is an unidentified user.
3. The method according to claim 1, wherein: When detecting the first user in the physical environment: Based on the determination that one or more criteria of a third group are met, third content different from the first content and the second content is displayed via the display component, wherein the one or more criteria of the third group include criteria that are met when a third user different from the first user and the second user is detected in the first area of the physical environment.
4. The method according to claim 1, wherein: When detecting the first user in the physical environment: Based on the determination that the first content is a fifth content, wherein the first set of one or more criteria is met, the first set of one or more criteria includes criteria that are met when the first user is detected to belong to the first set; and Based on the determination that the first set of one or more criteria is met, the first content does not include the fifth content, wherein the first set of one or more criteria includes criteria that are met when it is detected that the first user does not belong to the first set.
5. The method according to claim 1, wherein: When detecting the first user in the physical environment: Based on the determination that one or more criteria of the fourth group are met, sixth content is displayed via the display component, wherein the one or more criteria of the fourth group include criteria that are met when no fourth user is detected in the first area of the physical environment and criteria that are met when the first user is detected in the second area of the physical environment; as well as Based on the determination that one or more criteria of the fifth group are met, a seventh type of content different from the sixth content is displayed via the display component, wherein the one or more criteria of the fifth group include criteria that are met when the fourth user is detected in the first area of the physical environment and criteria that are met when the first user is detected in the second area of the physical environment.
6. The method of claim 1, wherein the first content includes a first component.
7. The method of claim 6, wherein the second content includes a second component.
8. The method of claim 7, wherein the second component is the same as the first component.
9. The method of claim 7, wherein the second component is a component of a different type from the first component.
10. The method of claim 1, wherein the second content includes a third component.
11. The method according to claim 1, wherein the first content includes content corresponding to the first user.
12. The method of claim 1, wherein the second content includes content that does not correspond to the first user.
13. The method of claim 1, wherein the first content includes the eighth content, and wherein the second content includes the eighth content.
14. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with one or more input devices and display components, the one or more programs comprising instructions for performing the method according to any one of claims 1 to 13.
15. A computer system that communicates with one or more input devices and display components, the computer system comprising: One or more processors; and A memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method according to any one of claims 1 to 13.