Managing device usage

通过在计算设备上实现基于时间的限制系统,解决了用户对设备使用时间的管理难题,确保隐私保护和合理使用,适用于个人和儿童设备管理。

CN119299244APending Publication Date: 2025-01-10APPLE INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411749739.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2018-09-28
Filing Date
2019-03-13
Publication Date
2025-01-10

AI Technical Summary

Technical Problem

The increasing time spent by users when using computing devices has led to increased concerns about appropriate use time, and the prior art is difficult to effectively manage and limit the use time of equipment, especially in terms of equipment use for users such as children.

Method used

A time-based restriction system is designed to allow users to set usage time for applications, websites and device-level functions, transferring data between devices by encrypting data, ensuring privacy protection, and implementing end-to-end encryption on the device to prevent Unauthorized access.

Benefits of technology

Effectively manage and limit the time of equipment usage, protect user privacy, prevent unauthorized access, ensure that only authorized devices can access usage data, and achieve reasonable management of device usage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119299244A_ABST
    Figure CN119299244A_ABST
Patent Text Reader

Abstract

The invention relates to managing device usage. A device of the present invention receives a time-based limitation of a first user on use of an application, website, or device level function. The device receives encrypted data indicating use of the first user on a second device with respect to the application, website, or device level functionality. The device determines that at least one of the use of the first user on the second device with respect to the application, website, or device-level functionality or the use of the first user on the device with respect to the application, website, or device-level functionality violates the time-based limitation. In response to the determination, the device provides a notification that the first user has violated the time-based limit.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the PCT international application with an international filing date of March 13, 2019, national application number 201980030964.1, and invention name “Management of Equipment Use” entering the Chinese national phase.

[0002] CROSS-REFERENCE TO RELATED APPLICATIONS

[0003] This application claims the benefit of U.S. Provisional Patent Application Serial No. 62 / 668,814, filed on May 8, 2018, and entitled “MANAGING DEVICE USAGE TIME,” and U.S. Provisional Patent Application Serial No. 62 / 679,893, filed on June 3, 2018, and entitled “MANAGING DEVICE USAGE,” each of which is hereby incorporated by reference in its entirety and made a part of this U.S. utility patent application for all purposes. Technical Field

[0004] This manual as a whole relates to operating the device, including managing the time the device is in use. Background Art

[0005] As users spend more and more time interacting with their computing devices (e.g., phones, tablets, computers, etc.), concerns may be rising regarding the appropriate amount of time users should spend interacting with their computing devices (e.g., per day), and possible concerns related to overuse of computing devices may increase. BRIEF DESCRIPTION OF THE DRAWINGS

[0006] Certain features of the subject technology are set forth in the appended claims. However, for purposes of explanation, several embodiments of the subject technology are set forth in the following drawings.

[0007] Figure 1 An exemplary network environment for managing device usage time according to one or more implementations is shown.

[0008] Figure 2 Exemplary devices that may implement a system for managing device usage time according to one or more implementations are shown.

[0009] Figure 3 An exemplary architecture of a system for managing personal device usage time according to one or more implementations is shown.

[0010] Figure 4 An exemplary architecture of a system for managing another user's device usage time according to one or more implementations is shown.

[0011] Figure 5 An exemplary architecture of a system for managing personal device usage time based on time-based limits set by another user in accordance with one or more implementations is shown.

[0012] Figure 6 An exemplary architecture of a system for managing device usage time in an enterprise setting is shown in accordance with one or more implementations.

[0013] Figure 7 An exemplary architecture of a system for remote management of components to manage device usage time in accordance with one or more implementations is shown.

[0014] Figure 8 Exemplary processes for managing device usage time according to one or more implementations are shown.

[0015] Fig. 9 Another exemplary process for managing device usage time according to one or more implementations is shown.

[0016] Fig.10 Exemplary electronic systems are shown that can be used to implement various aspects of the subject technology in accordance with one or more implementations. DETAILED DESCRIPTION

[0017] The specific embodiments shown below are intended to be descriptions of various configurations of the subject technology and are not intended to represent the only configuration in which the subject technology can be practiced. The accompanying drawings are incorporated herein and constitute a part of the specific embodiments. The specific embodiments include specific details intended to provide a thorough understanding of the subject technology. However, the subject technology is not limited to the specific details described herein, and one or more other specific implementations can be used to practice. In one or more specific implementations, structures and components are shown in block diagram form to avoid blurring the concepts of the subject technology.

[0018] A user may wish to limit and / or manage the amount of time that the user spends using their electronic device. For example, a user may wish to limit personal use with respect to specific applications / websites, specific categories of applications / websites, and / or specific device-level features (e.g., device display, audio, microphone, camera, sensors, accessories, and / or hardware resources). In addition, a user (e.g., a parent) may wish to limit and manage the amount of time another user (e.g., a child) uses their electronic device, such as with respect to applications / websites, categories, and / or device-level features, and / or define conditions or goals for use by another user (e.g., 1 hour of educational reading on the device before being allowed access to other applications).

[0019] The subject system provides for setting time-based limits on personal device usage or device usage of another user (e.g., a child). The time-based limits may be applied to multiple devices associated with a given user. For example, a first device receives a time-based limit on usage of an application / website (e.g., or a category of applications and / or websites) or a device-level function by a user. The first device receives encrypted data indicating usage of the application, website, or device-level function by the user on a second device. The first device determines that the user's use of either or both of the first device and the second device violates the time-based limit. The first device provides a notification that the user has violated the time-based limit.

[0020] In addition, the subject system maintains the privacy of time-based restrictions and usage data so that only authorized devices (e.g., the user's own device for personal use management, and / or the parent / child's device for child's use management) can access the usage data. For example, the data indicating use and / or restrictions can be encrypted end-to-end when transmitted between devices. In the parent and child example, privacy protection can be achieved by directly sending end-to-end encrypted messages between the parent and child's devices, where the message indicates restrictions and use. Alternatively or in addition to this, for the parent and child example, the server can store restrictions and / or usage data in an encrypted manner, where the parent and child's device can access the data based on the corresponding key that is not accessible to the server.

[0021] In the personal usage management example, privacy protection can be achieved by storing usage data on a server that is only accessible by an encryption key known to the device and not available to the server. Alternatively or in addition, restrictions and / or personal usage data can be synchronized across multiple devices of a user (e.g., bypassing a server) using a device-to-device communication protocol such as Bluetooth.

[0022] Based on these privacy implementations, whether for another user (e.g., a child) or for one's own administrative use, access to restricted data and / or usage data by unauthorized devices (e.g., including servers) is prevented.

[0023] Figure 1 An exemplary network environment for managing device usage time according to one or more implementations is shown. However, not all of the components depicted may be used in all implementations, and one or more implementations may include additional or different components than those shown in the figures. Changes in the arrangement and type of these components may be made without departing from the spirit or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.

[0024] The network environment 100 includes electronic devices 102, 103, 104 (hereinafter referred to as 102-104), a network 106, and a server 108. The network 106 may be communicatively coupled (directly or indirectly), for example, to any two or more of the electronic devices 102-104 and / or the server 108. In one or more specific implementations, the network 106 may be an interconnected network that may include the Internet or a device communicatively coupled to the Internet. For the purpose of explanation, the network environment 100 is described in detail in detail. Figure 1 1 is illustrated as including electronic devices 102-104 and a single server 108; however, network environment 100 may include any number of electronic devices and any number of servers.

[0025] One or more of the electronic devices 102-104 may be, for example, a portable computing device such as a laptop computer, a smart phone, a peripheral device (e.g., a digital camera, a headset), a tablet device, a wearable device (such as a smart watch, a band, etc.), or any other suitable device including, for example, one or more wireless interfaces, such as a WLAN radio, a cellular radio, a Bluetooth radio, a Zigbee radio, a near field communication (NFC) radio, and / or other radios. Figure 1 In the embodiment, by way of example, electronic device 102 is depicted as a smart phone, electronic device 103 is depicted as a smart watch, and electronic device 104 is depicted as a laptop computer. Each of electronic devices 102-104 may be and / or may include the following description of the present invention. Figure 2 The devices discussed and / or the following with respect to Fig.10 All or a portion of the electronic system in question.

[0026] Server 108 may be and / or may include the following: Fig.10 All or part of the electronic system discussed. Server 108 may include one or more servers, such as a server cloud, that can be used to facilitate limiting the use of electronic devices 102-104. A user may use two or more of the electronic devices 102-104, for example, associated with a user account that has a registered user account (e.g., a cloud-based service provider account that provides usage management) and has logged into the user account on two or more of the electronic devices 102-104. Server 108 may store encrypted data that can be accessed by the user's corresponding device via a key in order to limit and / or manage personal device usage time.

[0027] As another example, a first user (e.g., a parent using electronic device 104) can limit and / or manage the device usage time of a second user (e.g., a child using one or more of electronic devices 102-103). The corresponding time limit and data usage information can be transmitted between electronic devices 102-104 in a private manner. For example, the information can be stored on server 108 as encrypted data, which can be accessed by electronic devices 102-104 via a key. Alternatively or in addition, such information can be sent directly between electronic devices 102-104 using a messaging system so that the information is not stored on server 108.

[0028] For purposes of explanation, a single server 108 is shown and discussed with respect to various operations, such as storing encrypted data associated with time-based restrictions and / or data usage. However, these operations and other operations discussed herein may be performed by one or more servers, for example, at one or more different data centers, and each different operation may be performed by the same or different servers.

[0029] Figure 2 An exemplary device that can implement a system for managing device usage time according to one or more specific implementations is shown. For example, Figure 2 The device 200 may correspond to Figure 1 Any of the electronic devices 102-104 of the electronic device. However, not all of the components depicted may be used in all specific implementations, and one or more specific implementations may include additional or different components than those shown in the figures. Changes in the arrangement and type of these components may be made without departing from the spirit or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.

[0030] Device 200 may include a host processor 202, a memory 204, and a communication interface 206. Host processor 202 may include appropriate logic components, circuits, and / or code that can process data and / or control the operation of device 200. In this regard, host processor 202 may be enabled to provide control signals to various other components of device 200. Host processor 202 may also control the transfer of data between various parts of device 200. In addition, host processor 202 may enable implementation of an operating system or otherwise execute code to manage the operation of device 200. In the subject system, host processor 202 may implement a software architecture for managing device usage time, as described below with respect to Figures 3 to 7 Further discussion.

[0031] The memory 204 may include suitable logic, circuitry, and / or code to enable storage of various types of information, such as received data, generated data, code, and / or configuration information. The memory 204 may include, for example, random access memory (RAM), read-only memory (ROM), flash memory, and / or magnetic storage. In one or more implementations, the memory 204 may store applications for managing personal device usage time and / or for managing device usage time for another user (e.g., a child).

[0032] The communication interface 206 may include suitable logic, circuitry, and / or code to enable wired or wireless communication, such as between any of the electronic devices 102-104 and the server 108 over the network 106. The communication interface 206 may include, for example, one or more of a Bluetooth communication interface, a cellular interface, an NFC interface, a Zigbee communication interface, a WLAN communication interface, a USB communication interface, or generally, any communication interface.

[0033] In one or more specific implementations, one or more of the host processor 202, memory 204, communication interface 206, and / or one or more portions thereof may be implemented in software (e.g., subroutines and code), in hardware (e.g., an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a programmable logic device (PLD), a controller, a state machine, a gated logic component, a discrete hardware component, or any other suitable device), and / or a combination of both.

[0034] Figure 3 An exemplary architecture 300 of a system for managing personal device usage time according to one or more specific implementations is shown. For example, the architecture 300 (including its various components 302-334) can be implemented by one or more software modules running on the host processor 202 of the electronic device 102 (for example, or on any of the electronic devices 102-103). As another example, the architecture 300 can be implemented by one or more software modules implemented by custom hardware (for example, one or more coprocessors). However, not all of the depicted components can be used in all specific implementations, and one or more specific implementations may include additional or different components compared to those shown in the figure. Changes in the arrangement and type of these components can be made without departing from the essence or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.

[0035] The architecture 300 includes a database 320 having a usage database 322 and a configuration database 326. The usage database 322 can store usage data corresponding to usage time of a user of the electronic device 102 regarding applications, websites, categories of applications and / or websites, and / or device-level functions. The displayed applications, websites, categories of applications and / or websites, and / or device-level functions can be pre-selected by the user (e.g., where the user specifies which applications, websites, categories of applications and / or websites, and / or device-level functions are to be displayed). For example, the displayed applications, websites, categories of applications and / or websites, and / or device-level functions can correspond to a registered user account (e.g., a cloud-based service provider account that provides usage management) and can be pre-selected by the user based on different categories associated with the user account (e.g., work, personal). Alternatively, all applications, websites, categories of applications and / or websites associated with the usage and / or device-level functions can be displayed.

[0036] Configuration database 326 can store time-based restrictions (e.g., quotas and / or time-limited periods) set by a user of electronic device 102 (e.g., associated with a registered user account) for one or more applications, websites, categories of applications and / or websites, and / or device-level functions. In one or more specific implementations, database 320 includes a cloud mirror component 324 that can be used to synchronize usage time and time-based restrictions across multiple devices associated with the user (e.g., electronic devices 102-103).

[0037] The personal configuration editor 318 may provide a user interface for setting and / or adjusting time-based restrictions. The user interface provided by the personal configuration editor 318 may include user interface elements for setting corresponding (e.g., different) time-based restrictions for applications, websites, categories (e.g., of applications and / or websites), and / or device-level functions.

[0038] In this regard, time-based restrictions may correspond to quotas, where a user specifies a fixed amount of time that usage is allowed via a user interface. The user's usage time is applied against the quota to determine when the quota is reached. Alternatively or in addition, time-based restrictions may correspond to restricted use periods, where a user specifies times that personal usage is allowed and prohibited via a user interface. Examples of time-based restricted use periods include, but are not limited to: daily restrictions (e.g., restricted use from 10 p.m. to 2 a.m. each day), weekly restrictions (e.g., restricted use of all or specified times of a particular day or days of the week), monthly restrictions (e.g., restricted use of all or specified times of a particular day or days of the week in January), etc. In addition, time-based restricted use periods may be set based on recurring or single occurrences.

[0039] Additionally, limits can be based on quantity (e.g., relative to a predefined time). For example, limits can specify the number of times a particular application, website, category, and / or device-level functionality can be used. In another example, limits can be set to specify the number of times a particular action can be performed with respect to an application, website, category, and / or device-level functionality (e.g., a predefined number of times to receive a notification, send a message, pick up a device, etc.).

[0040] In one or more specific implementations, additional restrictions may be based on the geographic location of the electronic device. For example, restrictions on specific device-level functions (e.g., camera, microphone) may be specified based on geographic fences to predefined locations (e.g., museums, movie theaters). Geographic-based restrictions may also be specified for applications, websites, and / or categories (e.g., social networks in public parks). In one or more specific implementations, geographic-based restrictions may be specified with respect to locations associated with the user (e.g., work, school) based on information local to the user's device (e.g., contact address information). However, the identification and / or association of these locations is not provided to a server (e.g., server 108) or otherwise shared in order to protect user privacy.

[0041] In addition, restrictions may be specified with respect to, for example, environmental conditions associated with the device. For example, in the event that a WiFi connection is not available (e.g., indicating that the device will be required to use cellular data for network-based functions), the user may choose to set restrictions on disabling network activities (e.g., connecting to the Internet for applications and / or websites). As another example, in the event that the electronic device 102 (e.g., via near-field communication, Bluetooth) detects an unknown (e.g., non-user contact) nearby device, the user may have specified restrictions that disable or otherwise adjust device-level functions (e.g., disable wireless file transfers, or limit file transfers to contacts). As another example, the user may specify disabling or otherwise limiting device use based on device power state (e.g., low battery, plugged in, or not plugged in).

[0042] In addition, a user may specify contact-based restrictions for certain contacts of the user (e.g., for personal management) or certain contacts of another user (e.g., for child management). For example, a user may specify not to communicate with a particular contact (e.g., for personal management or for children), or may encourage communication with a particular contact (e.g., as a goal / condition before allowing a particular application, website, category, and / or device-level functionality).

[0043] In one or more specific implementations, various types of restrictions described above may be combined to form a composite restriction. For example, any two or more of these restrictions (e.g., time, quantity, geographic location, device environment / condition, and / or contact) may be used to form a composite restriction that is based on the corresponding restrictions for each restriction type. For example, a user may specify a composite restriction of not communicating with a particular contact based on a time-based restricted period (e.g., no communication with person X from 10 p.m. to 2 a.m.). As another example, if geo-fencing to a public park, a user may specify a composite restriction of no social networking between 10 a.m. and 2 p.m. on Sundays.

[0044] The various restrictions that can be specified by the user (e.g., restrictions based on time, quantity, geographic location, device environment / conditions, contacts) and any usage corresponding to those restrictions can be synchronized across multiple devices of the user and / or on family devices (e.g., for child-based restrictions) in an end-to-end encrypted manner as described herein. In this way, restrictions and / or usage data can only be accessed by devices associated with the user (e.g., and / or child), and not by a server (e.g., server 1018), thereby protecting user privacy.

[0045] The user interface provided by the personal configuration editor 318 allows the user to set time-based restrictions (e.g., quotas and / or restricted periods) for specific applications, websites, categories of applications and / or websites, and / or device-level functions. With respect to applications and / or websites, the user may specify corresponding time-based restrictions for different applications and / or websites. For example, the user may specify a 2-hour quota for a first social networking application, and / or may define a restricted period (e.g., no use from 11 pm to 5 am) for a first news website. In one or more specific implementations, if a time-based restriction is set for a specific application (e.g., a first social networking application), the architecture 300 may automatically apply the same time-based restriction to the website version of the application and / or the extended application version of the application. In a similar manner, the time-based restriction for a specific website may be automatically applied to the application version of the website and / or the extended application version. In doing so, the architecture 300 may determine that the website (e.g., the domain hosting the website) corresponds to the application and / or extension. Furthermore, while this document describes a website with respect to managing device time, limiting website usage, and setting time-based limits, such time-based management, limits, and settings may be applied with respect to the domain hosting the website.

[0046] With respect to categories, a user interface provided by the personal configuration editor 318 may provide a user with time-based restrictions (e.g., quotas or time-limited periods) for specifying categories of applications and / or websites. Categories correspond to logical groupings of applications and / or websites. Examples of categories include, but are not limited to: books, business, catalogs, education, entertainment, finance, food and beverages, games, health and fitness, lifestyle, medical, music, navigation, news, photos and videos, productivity, reference, social networking, sports, travel, utilities (e.g., in one or more geographic regions), and weather. Thus, a user may specify time-based quotas and / or time-based time-limited periods for specific categories, such as social networking. Time-based quotas or time-limited periods will apply to applications, websites, and / or extension applications (and combinations thereof) that are classified as social networking applications.

[0047] In addition to the categories listed above, applications and / or websites may be categorized based on one or more broad topics associated with a user, such topics being broadly related to the user's interests, e.g., not identifying the user. Thus, a user may specify (e.g., via a user interface provided by the personal configuration editor 318) a time-based quota and / or time-based restricted period for a particular topic (e.g., sports). The time-based quota or restricted period will apply to content within applications, websites, and / or extended applications (and combinations thereof) that are categorized as sports.

[0048] In one or more specific implementations, the classification of applications and / or websites can be based on default information provided by the application / website developer (e.g., as part of the installation of the application, or as part of the default website information). Alternatively or in addition, the classification of applications and / or websites can be specified by the user (e.g., user classification of applications on the device, user-defined bookmarks).

[0049] The user interface provided by the personal configuration editor 318 may further allow the user to specify time-based restrictions (e.g., quotas or limited periods) for device-level functions. For example, device-level functions may be related to one or more of overall device usage and / or the use of specific device functions (e.g., display, audio, microphone, camera, sensor, accessories, and / or hardware resources). Therefore, the user may specify a time-based quota for a specific device-level function, such as total audio time (e.g., a total of 3 hours per day) or a limited period based on audio (e.g., no audio after 11 p.m.). Therefore, time-based quotas and / or limited periods will be applied to audio output. In addition to quotas or limited periods, the user interface may also provide restrictions on the number of times content (e.g., audio or music videos) is consumed. In addition, different limits may be set for different hardware components (e.g., 1 hour for headphones and 2 hours for phone speakers).

[0050] When implementing time-based restrictions on device-level functions, a device-level framework can be used. For example, a module can be implemented that provides each application with permission to use the corresponding device-level function (e.g., audio, video). In this regard, the module can provide device-level functions based on a limited scope of use. For example, an audio module can define output levels (e.g., maximum volume level and minimum volume level) instead of simply turning the audio on / off when the time-based limit is reached based on the usage time. In one or more specific implementations, device-level functions can be grouped with applications and / or websites so that the time-based restrictions and use of device-level functions are based on the corresponding applications and / or websites (e.g., setting time-based restrictions on the video / audio functions of a music application).

[0051] After the user sets time-based restrictions via the user interface, those time-based restrictions may be written to the configuration database 326. In addition, the personal configuration editor 318 may access the configuration database 326 to display the currently set time-based restrictions for the user and / or update the configuration database 326 based on adjustments to the time-based restrictions entered by the user via the user interface.

[0052] The architecture 300 also includes a personal usage viewer 316 that is coupled to the usage management module 328 and can provide a user interface for viewing usage time. For example, the user interface provided by the personal usage viewer 316 can display the corresponding usage time for one or more of the following: overall device usage time, applications (e.g., on a per-application basis), websites (e.g., on a per-website basis), device-level functions (e.g., on a per-function basis), and / or categories of applications / websites (e.g., on a per-category basis). The user interface provided by the personal usage viewer 316 can display usage relative to its corresponding time-based limits (e.g., based on the configuration database 326).

[0053] For example, the usage time of applications, websites, device-level functions, and / or categories can be displayed (e.g., in a graphical and / or textual format) as a percentage of usage relative to a time-based quota. In one or more specific implementations, the user interface provided by the personal usage viewer 316 can also display summary information, such as, but not limited to, applications, websites, and / or categories sorted by usage time (e.g., social networking application A for 3 hours, website B for 2 hours). Thus, the user can be made aware of the applications and categories he / she uses the most, and the user can set time-based limits accordingly.

[0054] When the user continues to use the electronic device 102 (e.g., by using applications, websites, and / or device-level functions), the usage time is updated in the database 320 (e.g., as part of the use database 322), and the user interface provided by the personal use viewer 316 can be changed to display the updated usage time. In one or more specific implementations, the usage time is based on when the corresponding application or website is in the front on the electronic device. In addition, the usage time can be determined based on whether the user interacts with the application / web content or consumes the content passively. For example, the subject system can determine that the usage time is not applied to (e.g., against quota count) the passive consumption of the game (e.g., the game is paused and / or the user does not interact with the game) or the passive consumption of the social network (e.g., no user interaction, but the social network is still in the front). However, the usage time can be applied to the passive consumption of media content (e.g., video or music content that may not usually require user interaction to consume).

[0055] The user interface provided by the personal usage viewer 316 may be displayed as part of or separately from the user interface provided by the personal configuration editor 318. Thus, the user interfaces provided by the personal usage viewer 316 and the personal configuration editor 318 provide the user with the ability to set time-based limits (e.g., for categories, applications, websites, and / or device-level functions), view current usage time relative to time-based limits, modify time-based limits, and otherwise manage his / her usage time.

[0056] The architecture 300 also includes a personal organization controller 302, a device management module 330, a usage tracking module 332, a usage monitoring module 334, and a usage management module 328, which can work in conjunction with each other to track usage time relative to time-based limits set by the user (e.g., across multiple devices).

[0057] In one or more specific implementations, the configuration data persistence module 312 can access the configuration database 326 to obtain configuration data corresponding to the time-based restrictions. The configuration data persistence module 312 can pass the configuration data through the server pipeline 310, the internal transport 308, the client pipeline 306, and the configuration source module 304. The configuration source module 304 can then pass rules (e.g., declarations, commands) based on the configuration data to the device management module 330. Therefore, the personal organization controller 302 is configured to detect (e.g., via the configuration data persistence module 312) changes made to the time-based restrictions and transmit these detected changes to the device management module 330.

[0058] In addition to receiving time-based restrictions, the device management module 330 can be configured to access usage data across multiple devices of the user. In this regard, the usage monitoring module 334 can be configured to synchronize user activity data across multiple devices without aggregating user activity on a server (e.g., server 108). In this way, the user's privacy can be maintained while providing the user with the benefit of prior activity on any of their electronic devices.

[0059] Architecture 300 provides for maintaining privacy of time-based restrictions and usage data so that only authorized devices (e.g., electronic devices 102-103) can access the usage data. For example, data indicating usage and / or restrictions can be encrypted end-to-end when transmitted between electronic devices 102-103. For example, privacy can be achieved by storing usage data on a server (e.g., server 108), where the usage data can only be accessed by devices with encryption keys (e.g., keys that are not available at the server). Alternatively or in addition, restrictions and / or personal usage data can be synchronized across multiple devices of a user using a device-to-device communication protocol. Based on these privacy implementations, unauthorized devices (e.g., including server 108) can be prevented from accessing restriction data and / or usage data.

[0060] In one or more specific implementations, the usage tracking module 332 may implement deduplication of device usage. The usage tracking module 332 may receive synchronized usage data from the usage monitoring module 334 and aggregate (e.g., de-duplicate) the data with any local usage data. In this regard, in the event that a user uses two devices simultaneously (e.g., associated with a registered user account), the usage tracking module 332 may perform deduplication so that simultaneous usage time on multiple devices is not counted twice. For example, simultaneous usage may be detected based on timestamp data of when the respective applications were brought to the forefront on their respective electronic devices. With respect to websites, timestamp data used by a domain may be used to determine when a website was visited.

[0061] The usage tracking module 332 can determine that simultaneous usage of the same application (e.g., or category) on different devices should not be counted multiple times (e.g., doubled) against the time-based quota. However, if each device uses a different application (e.g., or category), the budget can be fully applied to the corresponding time-based limit for each application / category. If time-based limits are set for overall device usage in addition to specific application-based limits, deduplication may not double count individual device usage. Thus, if a user uses multiple different applications on multiple devices for 24 consecutive hours, the subject system may determine the overall device usage as 24 hours, while the total number of hours for each individual application may exceed 24 hours.

[0062] In one or more specific implementations, deduplication can be implemented at the application level and / or at the category level. For example, if a user is simultaneously accessing a first social networking application on electronic device 102 and a second social networking application on electronic device 103, usage tracking module 332 can determine that usage of different applications within the same social networking category should not be double counted against the time-based quota for the social networking category.

[0063] The synchronization timing of the user device can be based on the synchronization policy. For example, if the user is associated with only a single electronic device (e.g., electronic device 102), the synchronization policy may specify synchronization at an infrequent rhythm (e.g., once a week or more), or no synchronization at all. If the user is associated with multiple electronic devices (e.g., electronic devices 102-103), the synchronization policy may specify synchronization to be performed in a more frequent manner (e.g., once an hour). If the user is associated with multiple electronic devices and time-based restrictions have been set for usage time, the synchronization policy may specify that synchronization is performed even more frequently (e.g., once every half an hour). In addition, if the user's usage time is close to the time-based limit (e.g., the difference between the aggregated usage time and the time-based quota is lower than a predefined value), the synchronization policy may specify that synchronization is performed even more frequently (e.g., once every 10 minutes). In addition, if it is determined that the user is accessing the user interface provided by the personal usage viewer 316 and / or the personal configuration editor 318 (e.g., indicating that the user is viewing the usage and / or adjusting the time-based restrictions), the synchronization policy may specify that synchronization is performed immediately, or synchronized in other ways as long as the device is available for synchronization.

[0064] As described above, synchronization of usage time between multiple devices of a user can be achieved by storing encrypted data representing usage time on a server, wherein the multiple devices have corresponding keys for accessing the encrypted data, and the corresponding keys are inaccessible to the server. Alternatively or in addition, in some cases, the synchronization policy may specify device-to-device synchronization between the multiple devices.

[0065] For example, if the user's usage time approaches a time-based limit (e.g., based on satisfying a predefined difference between two values), the synchronization policy may specify that a device-to-device synchronization be performed with any nearby and awakened devices (e.g., electronic device 103). For example, the device-to-device synchronization may be performed using a protocol for nearby communication, including but not limited to Bluetooth, near field communication (NFC), Wi-Fi, etc. However, the synchronization policy may not necessarily provide for waking up nearby devices that are not awakened.

[0066] On the other hand, in the event that it is determined that the user is accessing the personal usage viewer 316 and / or the personal configuration editor 318 on the electronic device 102 (e.g., indicating that the user is currently viewing usage and / or adjusting time-based restrictions), the synchronization policy can specify that all nearby devices associated with the user be woken up and a device-to-device synchronization with those devices be performed. In one or more specific implementations, device-to-device synchronization can be associated with less power usage and / or have less latency relative to server-based synchronization. In addition, even in the event that a device-to-device synchronization is performed (e.g., every 10 minutes), the synchronization policy can still specify that a corresponding server-based synchronization be performed (e.g., every hour).

[0067] With respect to monitoring the user's usage time, the device management module 330 may provide status, event, or message data related to the usage time to the configuration source module 304 (e.g., associated with a registered user account). The configuration source module 304 may pass the data to the client conduit 306, the internal transport 308, the server conduit 310, and the usage data persistence module 314. The usage data persistence module 314 may store data records indicating the user's corresponding usage time for applications, websites, categories, and / or device-level functions, and store those records in the usage database 322. In this way, usage data on multiple devices of the user may be maintained. The user may view the usage time information, for example, by invoking the interface provided by the personal organization controller 302 and the personal configuration editor 318.

[0068] In one or more specific implementations, the client conduit 306, the internal transport 308, and the server conduit 310 can be configured to handle different sources of usage data (e.g., personal usage as discussed with respect to architecture 300, Figures 4 to 5 The data of the other user in question, and / or as described below with respect to Figure 6 For example, client conduit 306, internal transport 308, and server conduit 310 may provide scalability and flexibility with respect to different sources of usage data. Figure 7 Further discussion of different data sources.

[0069] In addition, the device management module 330 in conjunction with the usage tracking module 332 may be configured to detect when a violation of a time-based restriction occurs. As described above, the device management module 330 and the usage tracking module 332 may access aggregated (de-duplicated) usage data for multiple devices of a user, and may also access time-based restrictions (e.g., as received from the configuration source module 304). The device management module 330 and the usage tracking module 332 are configured to apply time-based restrictions based on aggregated usage time so as to detect when a violation of a time-based restriction occurs based on the aggregated usage time. For example, a violation may be detected when the usage time exceeds a quota, or when the usage time is not within a limited usage period. If a violation is detected, the device management module 330 may facilitate providing a notification of the violation and / or prohibiting further use of the application, website, category, or device-level functionality.

[0070] Regarding notifications, the device management module 330 may provide for the electronic device 102 to display a notification indicating that the personal usage time for the corresponding application, website, or category has been reached. The notification may include an interface element for directing the user to a user interface provided by the personal configuration editor 318. In this way, the user can modify the time-based restrictions in response to the notification, for example, by increasing the quota or adjusting the time range of the limited usage period.

[0071] In response to the violation, the device management module 330 may also provide for preventing the user from accessing the corresponding application (or extended application), website, category and / or device-level function. For example, the device management module 330 may prevent access to the corresponding application (or extension), website or device-level function. In doing so, the device management module 330 may provide for displaying an icon (e.g., covering such as a shield icon) that visually indicates that access is not allowed. In one or more specific implementations, the blocking and / or icon may be implemented for multiple entry points of the application or website (e.g., the shield is covered on the application launch interface, URL launch interface, and extension launch interface). In this way, the icon (e.g., shield) may follow the application, website, category and / or device-level function on the operating system of multiple devices of the user. In one or more specific implementations, the icon may be displayed together with a user interface element for unblocking the application, website, category and / or device-level function (e.g., by directing the user to the user interface provided by the personal configuration editor 318).

[0072] In one or more specific implementations, exceptions for blocking may be applied to a predefined set of applications, websites, and / or time-based restrictions even if the time-based restrictions are violated. For example, if a user specifies time-based restrictions for overall device usage, applications within the predefined set (e.g., system applications such as phone, alarm, maps, etc.) may continue to be available to the user and not blocked. The predefined set of applications may be user-selectable so that the user may specify which applications, websites, and / or device-level functions (e.g., associated with a category) should not be blocked even if the usage time violates the corresponding time-based restrictions.

[0073] In one or more specific implementations, the usage monitoring module 334 can detect user deletion of an application. The electronic device 102 can remove local data identifying the application (e.g., remove the application ID, launch event information, etc.). However, the personal organization controller 302 can modify or otherwise maintain a record of usage time (e.g., interval / duration) corresponding to the category of applications.

[0074] Alternatively or in addition, the usage monitoring module 334 can detect user deletion of browser history corresponding to a website. The electronic device 102 can remove local data identifying the browser history corresponding to the website (e.g., remove domain name data). However, the personal organization controller 302 can modify or otherwise maintain a record of usage time (e.g., interval / duration) corresponding to the category of the website.

[0075] In one or more specific implementations, a particular device may be associated with multiple users. For example, an electronic device 104 (e.g., shown as a laptop) may be shared by multiple users, each of which has a corresponding user account (e.g., a cloud-based service provider account that provides usage management). Thus, in the event that a first user logs into his / her corresponding cloud-based account using the electronic device 104, the architecture 300 may provide for managing the personal device usage time of the first user. Additionally, if a second user subsequently logs into his / her cloud-based account using the electronic device 104, the architecture 300 may provide for managing the personal device usage time of the second user.

[0076] Alternatively or in addition, for example, in the case where the user does not log in to his / her cloud-based account using the electronic device 104, the electronic device 104 may provide localized management of personal device usage time. For example, the electronic device 104 may implement software configured to manage one or more local user accounts for local management of personal usage time. Therefore, if a third user is only going to use the device (e.g., by logging in to the device but not logging in to his / her cloud-based account), he / she can set restrictions on the device local. For example, restrictions can be set for applications, application categories, device-level functions, and general web browser usage with respect to local use on the electronic device 104 (e.g., rather than use on multiple devices and / or specific online use). In one or more specific implementations, the software for local use management can provide parents with restrictions for their children based on user accounts / profiles local to the electronic device 104 (e.g., when the child logs in to the device instead of logging in to his / her cloud-based account). Usage data can be tracked locally with respect to local restrictions. Furthermore, corresponding notifications, usage statistics, interfaces, blocking of applications, categories and / or device-level functionality, requests for budget increases, and the like may be applied as described herein, but limited to local device use.

[0077] In one or more implementations, one or more of the components 302 - 334 of the architecture 300 are implemented via software instructions stored in the memory 204 , which, when executed by the host processor 202 , cause the host processor 202 to perform specific functions.

[0078] In one or more implementations, one or more of the components 302-334 of the architecture 300 may be implemented in software (e.g., subroutines and code), hardware (e.g., application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gated logic components, discrete hardware components, or any other suitable devices), and / or a combination of both. In one or more implementations, some or all of the depicted components may share hardware and / or circuitry, and / or one or more of the depicted components may utilize dedicated hardware and / or circuitry. Additional features and functionality of these modules in accordance with aspects of the subject technology are further described in this disclosure.

[0079] Figure 4An exemplary architecture of a system for managing another user's device usage time according to one or more specific implementations is shown. For example, architecture 400 (including its various components 402-430) can be implemented by one or more software modules running on the host processor 202 of the electronic device 104 to manage another user's device usage time about the electronic device 102-103. As another example, architecture 400 can be implemented by one or more software modules implemented by custom hardware (e.g., one or more coprocessors). However, not all of the depicted components can be used in all specific implementations, and one or more specific implementations may include additional or different components compared to those shown in the figure. Changes in the arrangement and type of these components can be made without departing from the essence or scope of the claims listed herein. Additional components, different components or fewer components can be provided.

[0080] In one or more specific implementations, at least a portion of the architecture 400 may be implemented on a parent's electronic device 104 for managing device usage of a child's electronic devices 102-103. The architecture 400 is not limited to a parent managing a child's device usage, and may be applied to other scenarios where a user manages another user's device usage. Thus, while the architecture 400 is described with respect to a "parent" user (e.g., of the electronic device 104) and a "child" user (e.g., of the electronic devices 102-103), the architecture may generally be applied to any two users.

[0081] In one or more specific implementations, the parent-child relationship can be predefined, for example, by a system that defines the roles of parents and children. The roles can be defined based on the configuration data set by the parent user. For example, the roles of parents and children can be defined by the registered user accounts of parents and children, wherein the corresponding user accounts indicate the parent-child relationship. In this regard, the devices associated with the registered accounts of parents and / or children (for example, based on the login to the registered accounts) can be grouped and determined to correspond to the family unit (for example, as part of a circle of trust or a trusted device group). As described herein, the device can access encrypted usage data and / or time-based restricted data via a key that can only be accessed by a trusted device. In one or more specific implementations, when a trusted device is removed from the group, the key can be regenerated for the remaining trusted devices.

[0082] The architecture 400 includes a database 422 having a usage database 424 and a configuration database 428. The usage database 424 can store usage data corresponding to the usage time of the child user of the electronic device 102-103 regarding the application, website, category of application and / or website, and / or device-level function. In addition, the configuration database 428 can store time-based restrictions (e.g., quotas and / or limited time periods) set by the parent user of the electronic device 104. For the corresponding application, website, category of application and / or website, and / or device-level function, the time-based restrictions are applied to the child user of the electronic device 102-103. In one or more specific implementations, the database 422 includes a cloud mirroring component 426, which can be used to synchronize the usage time and time-based restrictions on multiple devices (e.g., electronic devices 102-104) associated with both parents and children.

[0083] The home configuration editor 420 may provide a user interface for setting and / or adjusting time-based restrictions. The user interface provided by the home configuration editor 420 may include user interface elements for setting corresponding (e.g., different) time-based restrictions. The time-based restrictions may correspond to quotas or time limits, for example, as described above with respect to Figure 3 However, as discussed above with respect to child users. In addition, the family configuration editor 420 may provide other types of restrictions (e.g., restrictions based on time, quantity, geographic location, device environment / conditions, contacts) and composite restrictions, as discussed above with respect to Figure 3 However, as discussed above with respect to child users. In addition, the family configuration editor 420 may include user interface elements for setting (e.g., time-based) restrictions on user-selected applications, websites, categories (e.g., categories of applications and / or websites), and / or device-level functionality, such as described above with respect to Figure 3 But as discussed with respect to child users. In one or more specific implementations, the user interface provided by the family configuration editor 420 may include a user interface element for setting goals in conjunction with time-based restrictions, such that a child user may be required to perform a first time-based goal (e.g., 1 hour of educational reading on the device) before being allowed access to other applications, websites, categories, and / or device-level functionality.

[0084] The architecture 400 also includes an additional usage viewer 418 that communicates with the usage management module 430 and can provide a user interface for a parent to view usage time for a child user. For example, the user interface provided by the additional usage viewer 418 can display corresponding usage time for one or more of the following: overall device usage time, application (e.g., on a per-application basis), website (e.g., on a per-website basis), device-level function (e.g., on a per-function basis), and / or category of application / website (e.g., on a per-category basis), as described above with respect to Figure 3 However, as discussed above with respect to child users. In addition, the user interface provided by the other usage viewer 418 may display usage relative to corresponding time-based restrictions (e.g., based on the configuration database 428), as described above with respect to Figure 3 But what is discussed about child users.

[0085] The architecture 400 also includes a home organization controller 402, which in turn includes a server conduit 404, a message ("MSG") system transport module 408, a cloud channel 410, a configuration data persistence module 412, and a usage data persistence module 406. The configuration data persistence module 412 can access a configuration database 428 to obtain configuration data corresponding to time-based restrictions, for example, as described above with respect to Figure 3 The usage data persistence module 406 can store data records indicating the child's respective usage time for applications, websites, categories, and / or device-level functions, and store those records in the usage database 424, for example, as described above with respect to Figure 3 discussed.

[0086] The MSG system transmission module 408 can correspond to a transmission module configured to transmit usage via messages (e.g., device-to-device messages). Thus, the MSG system transmission module 408 can provide the child's usage data associated with the electronic devices 102-103 to be synchronized and accessed by the parent via the electronic device 104. Thus, when there are changes in usage time based on the child's usage activity, the MSG system transmission module 408, in conjunction with the child module 416, provides for synchronization of those changes to the parent device (e.g., the electronic device 104). In one or more specific implementations, the MSG system transmission module 408 is combined with the MSG system transmission module 508 (as described below with respect to Figure 5 As discussed) can provide for sending end-to-end encrypted messages between parent and child devices.

[0087] In addition, the MSG system transmission module 408 provides for synchronization of those changes to the second parent's other electronic devices (not shown) in conjunction with the other parent module 414. In one or more specific implementations, the architecture 400 can also be implemented on the second parent's electronic device so that the second parent can view the child's usage time and make changes to the child's time-based restrictions. The other parent module 414 is configured to synchronize changes with respect to the child's usage time and / or time-based restrictions (e.g., as set by either parent).

[0088] In one or more implementations, one or more of the components 402 - 430 of the architecture 400 are implemented via software instructions stored in the memory 204 , which, when executed by the host processor 202 , cause the host processor 202 to perform specific functions.

[0089] In one or more implementations, one or more of the components 402-430 of the architecture 400 may be implemented in software (e.g., subroutines and code) and / or hardware (e.g., application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gated logic components, discrete hardware components, or any other suitable devices), and / or a combination of both. In one or more implementations, some or all of the depicted components may share hardware and / or circuitry, and / or one or more of the depicted components may utilize dedicated hardware and / or circuitry. Additional features and functionality of these modules in accordance with aspects of the subject technology are further described in this disclosure.

[0090] Figure 5 An exemplary architecture of a system for managing personal device usage time based on time-based restrictions set by another user according to one or more specific implementations is shown. For example, architecture 500 (including its various components 502-544) can be implemented by one or more software modules running on a host processor 202 of an electronic device 102 (e.g., or electronic device 103). As another example, architecture 500 can be implemented by one or more software modules implemented by custom hardware (e.g., one or more coprocessors). However, not all of the depicted components can be used in all specific implementations, and one or more specific implementations may include additional or different components compared to those shown in the figure. Changes in the arrangement and type of these components may be made without departing from the essence or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.

[0091] In one or more specific implementations, as described above with respect to Figure 4As described, at least a portion of the architecture 500 may be implemented on a child's electronic device 102 for personal management of device usage time in view of any time-based restrictions set by a parent via the electronic device 104. However, the architecture 500 is not limited to device usage by children and may be applied to other scenarios in which a user's usage time is managed by another user. Therefore, while the architecture 500 is described with respect to a "child" user (e.g., of electronic devices 102-103) and a "parent" user (e.g., of electronic device 104), the architecture may generally be applied to any two users.

[0092] The architecture 500 includes a database 530 having a usage database 532 and a configuration database 536. The usage database 532 can store usage data corresponding to the usage time of the child user of the electronic device 102-103 regarding the application, website, category of application and / or website, and / or device-level function. In addition, the configuration database 536 can store time-based restrictions (e.g., quotas and / or limited time periods) set by the parent user of the electronic device 102. For the corresponding application, website, category of application and / or website, and / or device-level function, the time-based restrictions are applied to the child user of the electronic device 102-103. In one or more specific implementations, the database 530 includes a cloud mirroring component 534, which can be used to synchronize the usage time and time-based restrictions on multiple devices (e.g., electronic devices 102-104) associated with both parents and children.

[0093] The personal configuration editor 514 may provide a user interface for setting and / or adjusting time-based restrictions. The user interface provided by the personal configuration editor 514 may include user interface elements for setting corresponding (e.g., different) time-based restrictions. The time-based restrictions may correspond to setting a personal quota or limited usage period, for example, as described above with respect to Figure 3 In addition, the personal configuration editor 514 may provide other types of restrictions (e.g., restrictions based on time, quantity, geographic location, device environment / conditions, contacts) and composite restrictions, as described above with respect to Figure 3 In addition, the personal configuration editor 514 may include user interface elements for setting personal (e.g., time-based) restrictions on selected applications, websites, categories (e.g., categories of applications and / or websites), and / or device-level functions, such as those described above with respect to Figure 3 discussed.

[0094] In this regard, the personal configuration editor 514 may be used by a child user in view of the time-based restrictions set by the parent user via the electronic device 104. For example, the user interface provided by the personal configuration editor 514 may display the current time-based restrictions (e.g., as set by the parents) and allow the child user to make those time-based restrictions more restrictive. For example, if a parent sets a time-based quota of 2 hours for an application, website, and / or category, the child user may view the time-based restrictions via the user interface provided by the personal configuration editor 514. The child may modify the time-based restrictions to be more restrictive via the user interface provided by the personal configuration editor 514, for example, by changing the 2-hour quota to 1 hour. Such changes will be reflected in the configuration database 536 and synchronized with the parent's electronic device 104 (e.g., via the MSG transmission system 508 and the parent module 510, as discussed later). However, the time-based restrictions set by the parents may not be less restrictive than the time-based restrictions set by the children. In other words, if the child attempts to set a less restrictive restriction, the parental restrictions may override those restrictions made by the child.

[0095] The architecture 500 also includes a personal usage viewer 512 that can provide a user interface for viewing personal usage time. For example, the user interface provided by the personal usage viewer 512 can display the corresponding usage time for one or more of the following: overall device usage time, application (e.g., on a per-application basis), website (e.g., on a per-website basis), device-level function (e.g., on a per-function basis), and / or category of application / website (e.g., on a per-category basis), as described above with respect to Figure 3 In addition, the user interface provided by the personal usage viewer 512 can display usage relative to corresponding time-based limits (e.g., based on the configuration database 536), as described above with respect to Figure 3 discussed.

[0096] The architecture 500 also includes a personal organization controller 516, which in turn includes a configuration data persistence module 526, a usage data persistence module 528, a server conduit 524, an internal transport module 518, a client conduit 520, and a configuration source 522. The configuration data persistence module 526 can access a configuration database 536 to obtain configuration data corresponding to a time-based restriction, for example, as described above with respect to Figure 3 The usage data persistence module 528 can store data records indicating the child's respective usage time for applications, websites, categories, and / or device-level functions, and store those records in the usage database 532, for example, as described above with respect to Figure 3 discussed.

[0097] Configuration data persistence module 526 can pass configuration data (e.g., corresponding to time-based restrictions set by parents and / or children) through server conduit 524, internal transport module 518, client conduit 520, configuration source 522, usage management module 538, and device management module 540, for example, as described above with respect to Figure 3 As discussed. In addition, the device management module 540, in conjunction with the usage tracking module 542 and the usage monitoring module 544, can: access and aggregate (de-duplicate) usage data for applications, websites, categories, and / or device-level functions across multiple devices of a user; maintain the privacy of the user across his / her multiple devices (e.g., electronic devices 102-103); aggregate usage data; synchronize data between multiple devices of a child based on synchronization policies (e.g., using cloud-based synchronization and / or device-to-device synchronization); detect time-based violations; notify and / or block corresponding applications, websites, categories, and / or device-level functions (e.g., with predefined exceptions); and consider the removal of applications and / or websites (e.g., by removing identifying data while maintaining an abstract record of usage data), as described above with respect to Figure 3 discussed.

[0098] Additionally, the architecture 500 includes a family organization controller 502, which in turn includes a MSG system transport module 508, a client conduit 504, and a configuration source module 506. The MSG system transport module 508 provides for the child's usage data associated with the electronic devices 102-103 to be synchronized and accessed by a parent on the electronic device 102 via a parent module 510. Thus, when there are changes in usage time based on the child's usage activity, the MSG system transport module 508 provides for synchronization of those changes to the parent device (e.g., electronic device 102) via the parent module 510 and in conjunction with the MSG system transport module 408.

[0099] The MSG system transmission module 508, in conjunction with the MSG system transmission module 408, can provide for sending end-to-end encrypted messages between the parent and the child's devices, wherein the messages indicate time-based restrictions and / or usage time associated with the child. In addition, in response to the device management module 540 detecting a violation of the time-based restrictions (in conjunction with the usage tracking module 542 and the usage monitoring module 544), the child's device can notify the parent of the violation via the MSG system transmission module 508.

[0100] As described above, a parent may set a time-based goal for a child (e.g., requiring one hour of reading before other device activities). Accordingly, the device management module 540 may be configured to detect that the time-based goal has been reached before allowing the child to use other applications, websites, categories, and / or device-level features.

[0101] In one or more specific implementations, the above Figure 3 The various aspects of the above synchronization strategies discussed may also be applied to synchronization between a child's device and a parent's device. For example, the synchronization frequency may be increased if: the child has multiple electronic devices rather than a single device; the child is subject to a time-based limit (e.g., a quota); the child's usage time is approaching a time-based limit (e.g., a quota); and / or user interactions are detected regarding viewing usage time and / or adjusting time-based limits. The type of synchronization may be based on message transmission (e.g., via MSG system transmission module 508). Alternatively or in addition, synchronization between the child's device and the parent's device may be server-based.

[0102] In this regard, a server (e.g., server 108) may store restrictions and / or usage data in an encrypted manner, where access to the data is provided to the devices of parents and children based on corresponding keys that are not accessible to the server. In addition, the server may store usage data about the domain of the hosted website (e.g., domain "xyz.com"), but not a specific website and / or its corresponding web page (e.g., xyz.com / 123). In an exemplary embodiment, the server-based sharing mechanism may be implemented by one or more encrypted data containers that can only be accessed by the child's device (e.g., electronic devices 102-103) and the parent's device (e.g., electronic device 104). For example, the encrypted data container may be a logical container for storing encrypted data corresponding to different user accounts (e.g., one or more logical containers associated with parent and / or child user accounts). Access to the logical container (e.g., regarding restrictions and / or usage data) is limited to devices registered to parents and / or children, and can be accessed via corresponding keys stored on the registered devices. In this regard, the server 108 will not be able to access the encrypted data stored on the container (e.g., for use and / or time-based restrictions). By storing encrypted data on a server, the child's device can access the time-based restrictions even when the parent's device is offline. In addition, the parent's device can be used to set restrictions when the child's device is offline. In addition, while the messaging system may implement a time-to-live (TTL) for messages related to usage time and / or time-based restrictions, the TTL may not be applicable to a specific server-based implementation.

[0103] In one or more specific implementations, a child user may request an increased budget from a parent regarding a time-based limit. If the time-based limit corresponds to a quota, the child's device may present a user interface for requesting an increased quota. If the time-based limit corresponds to a limited-use period, the child's device may present a user interface for requesting an extended range of usage time. These interfaces for requesting an increased budget may be called by the child user via an interface provided by the personal configuration editor 514. Alternatively or in addition, the interface for requesting an increased budget may be automatically called when a time-based violation is detected (e.g., by the device management module 540 and the usage tracking module 542) that a time-based violation has occurred. The interface may also be called when a time-based violation is detected to be about to occur (e.g., if the usage time is approaching a time-based limit).

[0104] In response to the child requesting an increased budget, the parent's device may be provided with a corresponding request to increase the budget. In response, the parent user may increase the child's budget (e.g., via a user interface provided by the family configuration editor 420). Alternatively or in addition, the child's budget may be increased directly on the child's device itself (e.g., electronic device 102-103) by entering a restriction code that allows the user (e.g., parent) to increase the budget.

[0105] In one or more specific implementations, the application that is subject to time-based restrictions on the child's device may not exist on the parent's device (e.g., not installed). In order to provide a visual context for such applications, the parent's device may be configured to obtain an icon representing the application from a public data source (such as a public endpoint associated with an online application store). Therefore, the parent's device (e.g., electronic device 104) is not required to provide any identification information in order to obtain the icon. For example, the electronic device 104 may access an application directory associated with a public data source to retrieve the name and / or icon of the application without providing any identification information. In this way, for example, since there is no disclosure of information about the child's identity or parent's identity, the privacy of the parent's and / or child's device is protected. The icon may be displayed in a user interface provided by, for example, the family configuration editor 420, in a notification provided to the parent user when a time-based violation occurs, or in a notification request from the child's device for increasing the budget for time-based violations.

[0106] In one or more implementations, one or more of the components 502 - 544 of the architecture 500 are implemented via software instructions stored in the memory 204 , which, when executed by the host processor 202 , cause the host processor 202 to perform specific functions.

[0107] In one or more implementations, one or more of components 502-544 of architecture 500 may be implemented in software (e.g., subroutines and code) and / or hardware (e.g., application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gated logic components, discrete hardware components, or any other suitable devices), and / or a combination of both. In one or more implementations, some or all of the depicted components may share hardware and / or circuitry, and / or one or more of the depicted components may utilize dedicated hardware and / or circuitry. Additional features and functionality of these modules in accordance with aspects of the subject technology are further described in this disclosure.

[0108] Figure 6 An exemplary architecture of a system for managing device usage time in an enterprise setting according to one or more specific implementations is shown. For example, architecture 600 may be implemented by one or more software modules running on a host processor 202 of any electronic device of electronic devices 102-104. As another example, architecture 600 may be implemented by one or more software modules implemented by custom hardware (e.g., one or more coprocessors). However, not all of the depicted components may be used in all specific implementations, and one or more specific implementations may include additional or different components than those shown in the figure. Changes in the arrangement and type of these components may be made without departing from the spirit or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.

[0109] The architecture 600 includes an enterprise organization controller 602, which includes a client pipeline 604, a configuration source module 606, and a hypertext transfer protocol (HTTP) transport module 608. The architecture 600 also includes a device management module 612, a usage tracking module 614, and a usage monitoring module 616. Components 602-616 can implement similar Figures 3 to 5 6, but in the context of an enterprise. Examples of enterprises include, but are not limited to, businesses, schools, startups, social enterprises, and / or other types of organizations. In this regard, the enterprise organization controller 602 can be configured to manage setting restrictions (e.g., based on time, quantity, geographic location, device environment / conditions, contacts, and / or composite restrictions) for devices within the enterprise via the HTTP transport module 608 and the server module 610.

[0110] In one or more implementations, one or more of the components 602 - 616 of the architecture 600 are implemented via software instructions stored in the memory 204 , which, when executed by the host processor 202 , cause the host processor 202 to perform specific functions.

[0111] In one or more implementations, one or more of the components 602-616 of the architecture 600 may be implemented in software (e.g., subroutines and code) and / or hardware (e.g., application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gated logic components, discrete hardware components, or any other suitable devices), and / or a combination of both. In one or more implementations, some or all of the depicted components may share hardware and / or circuitry, and / or one or more of the depicted components may utilize dedicated hardware and / or circuitry. Additional features and functionality of these modules in accordance with aspects of the subject technology are further described in this disclosure.

[0112] Figure 7 An exemplary architecture of a system for remote management of components to manage device usage time according to one or more specific implementations is shown. For example, the remote management architecture 700 can be implemented by one or more software modules running on the host processor 202 of any electronic device of the electronic devices 102-104. As another example, the architecture 700 can be implemented by one or more software modules implemented by custom hardware (e.g., one or more coprocessors). However, not all of the depicted components can be used in all specific implementations, and one or more specific implementations may include additional or different components compared to those shown in the figure. Changes in the arrangement and type of these components may be made without departing from the essence or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.

[0113] Figure 7 The example of shows that device management (e.g., time-based limits on usage time) can be implemented with respect to different sources on the same device (e.g., electronic device 102). The remote management architecture 700 is described herein with respect to children. However, the remote management architecture 700 is not limited to children, but can be applied to parents or any other user.

[0114] In this regard, the child's device (e.g., any of electronic devices 102-103) may include a personal organization controller 702 corresponding to the personal organization controller 516, a family organization controller 714 corresponding to the family organization controller 502, and an enterprise organization controller 728 corresponding to the enterprise organization controller 602 (e.g., if the child is a student and a school enterprise sets time-based restrictions for the student's device).

[0115] In this regard, the personal organization controller 702 may include a configuration source module 704, a server conduit 706, a client conduit 708, a configuration data persistence module 710, and a usage data persistence module 712 that generally correspond to the components of the personal organization controller 516. In addition, the family organization controller 714 may include a configuration source module 716, a server conduit 718, a client conduit 720, a MSG system transport 722, a configuration data persistence module 724, and a usage data persistence module 726 that generally correspond to the components of the family organization controller 502. In addition, the enterprise organization controller 728 may include a configuration source module 730, a server conduit 732, a client conduit 734, and an HTTP transport module 736 that generally correspond to the components of the enterprise organization controller 602.

[0116] The remote management architecture 700 may also include a personal usage viewer 738, a personal configuration editor 740, a home usage viewer 742, and a home configuration editor 744, which generally correspond to the components of the architecture 500. In addition, the remote management architecture 700 may include a database 746, usage databases 748 and 750, configuration databases 752 and 754, and a cloud mirroring module 756, which generally correspond to the components of the architecture 500.

[0117] Thus, each of the personal organization controller 702, the family organization controller 714, and the enterprise organization controller 728 may represent data from different sources (e.g., personal, family, enterprise). The corresponding pipes (e.g., 706-708, 718-720, and 732-734) may facilitate controlling the general data flow, such as with respect to inbound / outbound usage data and / or time-based restrictions. In addition, the corresponding persistence modules (e.g., 710-712, 724-726) may provide persistence of data. In the enterprise case, there may be no persistence layer, and the time-based restrictions may be sent via the HTTP transport module 736.

[0118] In one or more implementations, one or more of the components 702 - 756 of the remote management architecture 700 are implemented via software instructions stored in the memory 204 , which when executed by the host processor 202 cause the host processor 202 to perform specific functions.

[0119] In one or more implementations, one or more of the components 702-756 of the remote management architecture 700 may be implemented in software (e.g., subroutines and code) and / or hardware (e.g., application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gated logic components, discrete hardware components, or any other suitable devices), and / or a combination of both. In one or more implementations, some or all of the depicted components may share hardware and / or circuitry, and / or one or more of the depicted components may utilize dedicated hardware and / or circuitry. Additional features and functionality of these modules in accordance with aspects of the subject technology are further described in this disclosure.

[0120] Figure 8 An exemplary process for managing device usage time according to one or more specific implementations is shown. For the purpose of explanation, this article mainly refers to Figure 1 The process 800 is described with reference to the electronic devices 102-104 and the server 108. However, the process 800 is not limited to Figure 1 The electronic devices 102-104 and the server 108 of the process 800. In addition, one or more blocks (or operations) of the process 800 may be performed by one or more other components of the server 108 and / or by other suitable devices. Further for the purpose of explanation, the blocks of the process 800 are described herein as occurring sequentially or linearly. However, multiple blocks of the process 800 may occur in parallel. In addition, the blocks of the process 800 do not have to be performed in the order shown, and / or one or more blocks of the process 800 do not have to be performed and / or may be replaced by other operations.

[0121] An electronic device 102 (e.g., a first device) receives a time-based quota for usage of a category of applications, websites, or device-level functions by a first user 802. The category may be based on a particular topic and may include a predefined set of one or more applications, websites, or device-level functions corresponding to the particular topic.

[0122] The time-based quota may be set by the first user.Alternatively or in addition, the time-based quota may be set by a second user (eg, a parent of the first user) associated with a third device (eg, electronic device 104).

[0123] In the case where a second user (e.g., a parent) sets a time-based quota, receiving the time-based quota may include receiving encrypted data indicating the time-based quota, access to which is limited to the electronic devices 102-104. The encrypted data indicating the time-based quota may be received from the electronic device 104 via the messaging system. Alternatively or in addition, the encrypted data indicating the time-based quota may be stored on the server 108, and the electronic device 102 may store a key for accessing the encrypted data indicating the time-based quota from the server 108.

[0124] The electronic device 104 may be configured to obtain graphical icons representing applications associated with aggregated usage and not installed on the electronic device 104 from a public data source (e.g., a public endpoint associated with an online application store). For example, the graphical icons may be provided within a user interface to show context of usage (e.g., provided by other usage viewers 418) for a parent user of the electronic device 104.

[0125] Electronic device 102 receives encrypted data indicating usage of an application, website, or device-level functionality in a category by a first user on electronic device 103 (e.g., a second device of the first user) (804). The encrypted data indicating usage may be encrypted end-to-end between electronic device 102 and electronic device 103. For example, access to the encrypted data indicating usage may be limited to electronic devices 102-103 and / or electronic device 104 (e.g., where the second user sets a time-based restriction).

[0126] The encrypted data indicating the first user's usage on the electronic device 103 may be stored on the server 108, and the electronic device 102 may store a key for accessing the encrypted data indicating the usage from the server 108. For example, the encrypted data indicating the first user's usage on the electronic device 103 may be stored on the server 108 in association with at least one encrypted data container corresponding to the first user's usage on multiple devices (e.g., electronic devices 102-103). Alternatively or in addition, the electronic device 102 may receive the encrypted data from the electronic device 103 via a device-to-device communication protocol.

[0127] Receiving encrypted data indicating usage may be performed in association with a synchronization policy indicating when to synchronize usage between electronic device 102 and electronic device 103. For example, the synchronization policy may indicate one or more of: synchronizing usage more frequently if the first user is associated with multiple devices rather than a single device; synchronizing usage more frequently when aggregate usage approaches a time-based quota; and / or synchronizing at the current time (e.g., immediately or as quickly as possible based on device availability) if a user interaction with a user interface associated with a time-based quota of usage is detected.

[0128] Electronic device 102 determines aggregate usage (806) based on usage of the first user on electronic device 103 with respect to applications, websites, or device-level functions in the category and based on usage of the first user on electronic device 102 with respect to applications, websites, or device-level functions in the category. Determining aggregate usage may include deduplicating concurrent usage by the first user on electronic device 102 and electronic device 103 corresponding to the same application, the same website, or the same device-level function in the category.

[0129] In the event that a second user (e.g., a parent) sets a time-based quota (e.g., via electronic device 104), electronic device 102 may provide encrypted data indicating aggregate usage to electronic device 104 so that access to aggregate usage is limited to electronic devices 102-104. The encrypted data indicating aggregate usage may be provided to electronic device 104 via a messaging system. Alternatively or in addition, the encrypted data indicating aggregate usage may be stored on server 108, and electronic device 104 may store a key for accessing the encrypted data indicating aggregate usage from server 108.

[0130] The electronic device 102 determines that the aggregate usage has reached the time-based quota for the category (808). In the event that a second user (e.g., a parent) (e.g., via the electronic device 104) sets a time-based quota, the electronic device 102 may, for example, receive an indication of authorization by the second user to adjust the time-based quota in response to a request by the first user to increase the time-based quota. In response to receiving the indication, the electronic device 102 may adjust the time-based quota. The electronic device 102 may receive the indication of authorization locally as authenticated user input (e.g., entered by a parent on the child's electronic device 102) authorizing adjustment of the time-based quota. For example, the authentication may correspond to entering a registration code or other credentials, such as biometric authentication (e.g., fingerprint scan, facial recognition). Alternatively or in addition, the electronic device 102 may receive an indication from the electronic device 104 that the second user (e.g., a parent) is authorized to adjust the time-based quota.

[0131] In response to determining that the aggregate usage has reached the time-based quota, the electronic device 102 provides a notification that the first user has reached the time-based quota for the category (810). The electronic device 102 may also prevent the first user from accessing applications, websites, or device-level functions in the category.

[0132] In one or more specific implementations, the electronic device 102 may detect the deletion of an application in the category. In response to detecting the deletion, the electronic device 102 may remove the data identifying the application on the electronic device 102 and maintain a usage record for the category corresponding to the application. Alternatively or in addition, the electronic device 102 may detect the deletion of a browser history corresponding to a website in the category. In response to detecting the deletion, the electronic device 102 may remove the data identifying the browser history corresponding to the website on the electronic device 102 and maintain a usage record for the category corresponding to the browser history corresponding to the website.

[0133] Fig. 9 Another exemplary process for managing device usage time according to one or more specific implementations is shown. For the purpose of explanation, this article mainly refers to Figure 1 The process 900 is described with reference to the electronic devices 102-104 and the server 108. However, the process 900 is not limited to Figure 1 The electronic devices 102-104 and the server 108 of the embodiment of the present invention are described in detail. In addition, one or more blocks (or operations) of the process 900 may be performed by one or more other components of the server 108 and / or by other suitable devices. Further for the purpose of explanation, the blocks of the process 900 are described herein as occurring sequentially or linearly. However, multiple blocks of the process 900 may occur in parallel. In addition, the blocks of the process 900 do not have to be performed in the order shown, and / or one or more blocks of the process 900 do not have to be performed and / or may be replaced by other operations.

[0134] An electronic device 102 (e.g., a first device) receives a time-based limit from a first user regarding the use of an application, website, or device-level functionality (902). The time-based limit may be set by the first user. Alternatively or in addition, the time-based limit may be set by a second user (e.g., a parent of the first user) associated with a third device (e.g., electronic device 104).

[0135] In the event that a second user (e.g., a parent) sets a time-based restriction, receiving the time-based restriction may include receiving encrypted data indicating the time-based restriction, access to which is limited to the electronic devices 102-104. The encrypted data indicating the time-based restriction may be received from the electronic device 104 via the messaging system. Alternatively or in addition, the encrypted data indicating the time-based restriction may be stored on the server 108, and the electronic device 102 may store a key for accessing the encrypted data indicating the time-based restriction from the server 108.

[0136] Electronic device 102 receives encrypted data indicating usage of an application, website, or device-level functionality by a first user on electronic device 103 (e.g., a second device of the first user) (904). The encrypted data indicating usage may be encrypted end-to-end between electronic device 102 and electronic device 103. For example, access to the encrypted data indicating usage may be limited to electronic devices 102-103 and / or electronic device 104 (e.g., where the second user sets a time-based restriction).

[0137] The encrypted data indicating the first user's usage on the electronic device 103 may be stored on the server 108, and the electronic device 102 may store a key for accessing the encrypted data indicating the usage from the server 108. For example, the encrypted data indicating the first user's usage on the electronic device 103 may be stored on the server 108 in association with at least one encrypted data container corresponding to the first user's usage on multiple devices (e.g., electronic devices 102-103). Alternatively or in addition, the electronic device 102 may receive the encrypted data from the electronic device 103 via a device-to-device communication protocol.

[0138] Receiving encrypted data indicating usage may be performed in association with a synchronization policy indicating when to synchronize usage between the electronic device 102 and the electronic device 104. For example, the synchronization policy may indicate one or more of: synchronizing usage more frequently if the first user is associated with multiple devices rather than a single device; synchronizing usage more frequently when usage (e.g., aggregate usage) approaches a time-based limit (e.g., a quota); and / or synchronizing at a current time if a user interaction with a user interface associated with a time-based limit on usage is detected.

[0139] The electronic device 102 determines that at least one of the first user's usage of an application, a website, or a device-level function on the electronic device 103 or the first user's usage of an application, a website, or a device-level function on the electronic device 102 violates a time-based restriction (906). In this regard, the time-based restriction may correspond to a limited-use period (e.g., a time range during which usage is limited), wherein the first user's usage on the first device or the second device during the time range would violate the limited-use period. Alternatively or in addition, the time-based restriction may correspond to a budget (e.g., a total amount of usage allowed), and the usage may violate the budget when the aggregate time of the first device and the second device exceeds the budget. Determining the aggregate usage may include deduplicating the first user's simultaneous usage of the same application, the same website, or the same device-level function in the category on the electronic device 102 and the electronic device 103.

[0140] In the event that a second user (e.g., a parent) sets a time-based restriction (e.g., via electronic device 104), electronic device 102 may provide encrypted data indicating usage to electronic device 104 so that access to usage is limited to electronic devices 102-104. The encrypted data indicating usage may be provided to electronic device 104 via a messaging system. Alternatively or in addition, the encrypted data indicating usage may be stored on server 108, and electronic device 104 may store a key for accessing the encrypted data indicating aggregate usage from server 108.

[0141] In the event that a second user (e.g., a parent) sets a time-based restriction (e.g., via electronic device 104), electronic device 102 may, for example, in response to a request by a first user to add a time-based restriction, receive an indication of authorization by the second user to adjust the time-based restriction. In response to receiving the indication, electronic device 102 may adjust the time-based restriction. Electronic device 102 may receive the indication of authorization as authenticated user input authorizing adjustment of the time-based restriction (e.g., a registration code or biometric authentication entered by a parent on the child's electronic device 102). Alternatively or in addition, electronic device 102 may receive an indication from electronic device 104 of authorization by a second user (e.g., a parent) to adjust the time-based restriction.

[0142] Upon detecting a violation, the electronic device 102 provides a notification that the first user has violated the time-based restriction 908. The electronic device 102 may further prevent the first user from accessing an application, website, or device-level functionality.

[0143] In one or more specific implementations, the electronic device 102 may detect the deletion of an application in the category. In response to detecting the deletion, the electronic device 102 may remove the data identifying the application on the electronic device 102 and maintain a usage record for the category corresponding to the application. Alternatively or in addition, the electronic device 102 may detect the deletion of a browser history corresponding to a website in the category. In response to detecting the deletion, the electronic device 102 may remove the data identifying the browser history corresponding to the website on the electronic device 102 and maintain a usage record for the category corresponding to the browser history corresponding to the website.

[0144] As described above, one aspect of the present technology is the collection and use of data from specific and legitimate sources, for example, for managing device use. The present disclosure contemplates that, in some instances, the collected data may include personal information data that uniquely identifies or can be used to identify a specific person. Such personal information data may include demographic data, location-based data, online identifiers, phone numbers, email addresses, home addresses, data or records related to a user's health or fitness level (e.g., vital signs measurements, medication information, exercise information), date of birth, or any other personal information.

[0145] The present disclosure recognizes that the use of such personal information data in the present technology can be used to benefit the user. In addition, the present disclosure also anticipates other uses of personal information data that benefit the user. For example, health and fitness data can be used according to the user's preferences to provide insights into their overall health, or can be used as positive feedback to individuals who use technology to pursue health goals.

[0146] The present disclosure envisions that entities responsible for collecting, analyzing, disclosing, transmitting, storing or otherwise using such personal information data will comply with established privacy policies and / or privacy practices. Specifically, such entities will be expected to implement and consistently apply privacy practices that are generally recognized as meeting or exceeding the requirements of the industry or government that maintain user privacy. Such information about the use of personal data should be prominently and easily accessible to users, and should be updated as the collection and / or use of data changes. The user's personal information should be collected only for legitimate use. In addition, such collection / sharing should only occur after receiving user consent or other legal basis specified in applicable law. In addition, such entities should consider taking any necessary steps to defend and safeguard access to such personal information data and ensure that others who have access to personal information data comply with their privacy policies and processes. In addition, such entities may subject themselves to third-party assessments to demonstrate that they comply with widely accepted privacy policies and practices. In addition, policies and practices should be adjusted for specific types of personal information data that are collected and / or accessed, and applied to applicable laws and standards, including specific considerations that are exclusive to jurisdictions that can be used to impose higher standards. For example, in the United States, collection or access to certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); while health data in other countries may be subject to other regulations and policies and should be handled accordingly.

[0147] Regardless of the foregoing, the present disclosure also contemplates implementation schemes in which users selectively block the use or access of personal information data. That is, the present disclosure contemplates providing hardware elements and / or software elements to prevent or block access to such personal information data. The present technology can be configured to allow users to "opt in" or "opt out" of participating in the collection of personal information data at any time during or after registration for the service. In addition to providing "opt-in" and "opt-out" options, the present disclosure contemplates providing notifications related to access or use of personal information. For example, a user may be notified that their personal information data will be accessed when downloading an application, and then reminded again just before the personal information data is accessed by the application.

[0148] In addition, it is an object of the present disclosure that personal information data should be managed and processed to minimize the risk of unintentional or unauthorized access or use. Risks can be minimized by limiting data collection and deleting data once it is no longer needed. In addition, and when applicable, including in certain health-related applications, data de-identification can be used to protect the privacy of users. De-identification can be facilitated by removing identifiers, controlling the amount or specificity of stored data (e.g., collecting location data at a city level rather than at an address level), controlling how data is stored (e.g., aggregating data across users), and / or other methods such as differential privacy, where appropriate.

[0149] Thus, while the present disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, the present disclosure also contemplates that various embodiments may be implemented without access to such personal information data. That is, various embodiments of the present technology will not fail to function properly due to the lack of all or a portion of such personal information data. For example, management of a device may be based on aggregated non-personal information data or an absolute minimum amount of personal information, such as content or other non-personal information that is only processed on the user's device.

[0150] Fig.10 An electronic system 1000 is shown that can be utilized to implement one or more implementations of the subject technology. The electronic system 1000 may be Figure 1 One or more of the electronic devices 102-104 shown and / or one or more of the servers 108, and / or may be a part thereof. The electronic system 1000 may include various types of computer-readable media and interfaces for various other types of computer-readable media. The electronic system 1000 includes a bus 1008, one or more processing units 1012, a system memory 1004 (and / or cache), a ROM 1010, a permanent storage device 1002, an input device interface 1014, an output device interface 1006, and one or more network interfaces 1016, or a subset and variant thereof.

[0151] The bus 1008 generally represents all system buses, peripheral busses, and chipset buses that communicatively connect the many internal devices of the electronic system 1000. In one or more specific implementations, the bus 1008 communicatively connects one or more processing units 1012 with the ROM 1010, the system memory 1004, and the permanent storage device 1002. The one or more processing units 1012 retrieve instructions to be executed and data to be processed from these various memory units in order to perform the processes disclosed in the present subject matter. In different specific implementations, the one or more processing units 1012 can be a single processor or a multi-core processor.

[0152] ROM 1010 stores static data and instructions required by one or more processing units 1012 and other modules of electronic system 1000. On the other hand, permanent storage device 1002 can be a read-write memory device. Permanent storage device 1002 can be a non-volatile memory unit that stores instructions and data even when electronic system 1000 is turned off. In one or more specific implementations, a mass storage device (such as a magnetic disk or optical disk and its corresponding disk drive) can be used as permanent storage device 1002.

[0153] In one or more implementations, a removable storage device (such as a floppy disk, a flash drive, and its corresponding disk drive) may be used as the permanent storage device 1002. Like the permanent storage device 1002, the system memory 1004 may be a read-write memory device. However, unlike the permanent storage device 1002, the system memory 1004 may be a volatile read-write memory, such as a random access memory. The system memory 1004 may store any of the instructions and data that one or more processing units 1012 may need at runtime. In one or more implementations, the processes disclosed in the subject matter are stored in the system memory 1004, the permanent storage device 1002, and / or the ROM 1010. The one or more processing units 1012 retrieve instructions to be executed and data to be processed from these various memory units in order to perform the processes of one or more implementations.

[0154] The bus 1008 is also connected to an input device interface 1014 and an output device interface 1006. The input device interface 1014 enables a user to transmit information and select commands to the electronic system 1000. Input devices that can be used with the input device interface 1014 may include, for example, an alphanumeric keyboard and a pointing device (also referred to as a "cursor control device"). The output device interface 1006 may, for example, enable the display of files generated by the electronic system 1000. Output devices that can be used with the output device interface 1006 may include, for example, a printer and a display device, such as a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, a flexible display, a flat panel display, a solid-state display, a projector, or any other device for outputting information. One or more specific implementations may include a device that acts as both an input device and an output device, such as a touch screen. In these specific implementations, the feedback provided to the user may be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user may be received in any form, including acoustic, voice, or tactile input.

[0155] Finally, if Fig.10 As shown, bus 1008 also couples electronic system 1000 to one or more networks and / or to one or more network nodes, such as via one or more network interfaces 1016. Figure 1 1000. In this manner, electronic system 1000 can be part of a computer network, such as a LAN, a wide area network ("WAN"), or an intranet, or can be part of a network of networks, such as the Internet. Any or all components of electronic system 1000 can be used with the subject disclosure.

[0156] Implementations within the scope of the present disclosure may be implemented in part or in whole using a tangible computer-readable storage medium (or multiple tangible computer-readable storage media of one or more types) programmed with one or more instructions. Tangible computer-readable storage media may also be non-transitory in nature.

[0157] Computer-readable storage media can be any storage media that can be read, written, or otherwise accessed by a general or special computing device, including any processing electronics and / or processing circuitry capable of executing instructions. For example, without limitation, computer-readable media can include any volatile semiconductor memory, such as RAM, DRAM, SRAM, T-RAM, Z-RAM, and TTRAM. Computer-readable media can also include any non-volatile semiconductor memory, such as ROM, PROM, EPROM, EEPROM, NVRAM, flash memory, nvSRAM, FeRAM, FeTRAM, MRAM, PRAM, CBRAM, SONOS, RRAM, NRAM, racetrack memory, FJG, and Millipede memory.

[0158] In addition, the computer-readable storage medium may include any non-semiconductor memory, such as optical disk storage, magnetic disk storage, magnetic tape, other magnetic storage devices, or any other medium capable of storing one or more instructions. In one or more specific implementations, the tangible computer-readable storage medium may be directly coupled to the computing device, while in other specific implementations, the tangible computer-readable storage medium may be indirectly coupled to the computing device, for example, via one or more wired connections, one or more wireless connections, or any combination thereof.

[0159] Instructions can be directly executable, or can be used to develop executable instructions. For example, instructions can be implemented as executable or non-executable machine code, or can be implemented as high-level language instructions that can be compiled to produce executable or non-executable machine code. In addition, instructions can also be implemented as data, or can include data. Computer executable instructions can also be organized in any format, including routines, subroutines, programs, data structures, objects, modules, applications, applets, functions, etc. As recognized by those skilled in the art, the details including but not limited to the number, structure, sequence and organization of instructions can be significantly different without changing the underlying logic, function, processing and output.

[0160] Although the above discussion mainly relates to a microprocessor or multi-core processor that executes software, one or more specific implementations are performed by one or more integrated circuits such as ASICs or FPGAs. In one or more specific implementations, such integrated circuits execute instructions stored on the circuit itself.

[0161] Those skilled in the art will recognize that the various illustrative frames, modules, elements, parts, methods and algorithms described herein can be implemented as electronic hardware, computer software or a combination of the two. In order to illustrate this interchangeability of hardware and software, various illustrative frames, modules, elements, parts, methods and algorithms have been generally described above according to functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints imposed on the entire system. The technician can implement the described functionality in different ways for each specific application. Various parts and frames can be arranged differently (e.g., arranged in different orders, or divided in different ways) without departing from the scope of the subject technology.

[0162] It should be understood that the specific order or the hierarchical structure of the frame in the process disclosed by the present invention are the illustration of exemplary methods. Based on the design preferred requirements, it should be understood that the specific order or the hierarchical structure of the frame in the process can be rearranged or all the frames shown are executed. Any frame in these frames can be executed simultaneously. In one or more specific implementations, multitasking and parallel processing may be advantageous. In addition, the division of each system component in the above-mentioned specific implementation should not be understood as requiring such division in all specific implementations, and it should be understood that program components and systems can be generally integrated together in a single software product or encapsulated in multiple software products.

[0163] As used in this specification and any claims of this patent application, the terms "base station", "receiver", "computer", "server", "processor" and "memory" all refer to electronic devices or other technical devices. These terms exclude people or groups of people. For the purpose of this specification, the term "display" or "displaying" means displaying on an electronic device.

[0164] As used herein, the phrase "at least one of" following a list of items, any of which is separated by the terms "and" or "or", modifies the list as a whole, rather than each member (i.e., each item) of the list. The phrase "at least one of" does not require selection of at least one of each item listed; rather, the phrase allows for a meaning that includes at least one of any one item and / or at least one of any combination of items and / or at least one of each item. For example, the phrases "at least one of A, B, and C" or "at least one of A, B, or C" each refer to only A, only B, or only C; any combination of A, B, and C; and / or at least one of each of A, B, and C.

[0165] The predicate words "configured to," "operable to," and "programmed to" do not imply any particular tangible or intangible modification of a subject matter but are intended to be used interchangeably. In one or more specific implementations, a processor configured to monitor and control an operation or component may also mean that the processor is programmed to monitor and control the operation or that the processor is operable to monitor and control the operation. Likewise, a processor configured to execute code may be interpreted as a processor programmed to execute code or operable to execute code.

[0166] Phrases such as aspect, this aspect, on the other hand, some aspects, one or more aspects, a specific implementation, this specific implementation, another specific implementation, some specific implementations, one or more specific implementations, an embodiment, this embodiment, another embodiment, some embodiments, one or more embodiments, configuration, this configuration, other configurations, some configurations, one or more configurations, subject technology, disclosure, the present disclosure, other variations thereof, etc. are for convenience and do not mean that the disclosure involving such one or more phrases is essential to the subject technology, nor does it mean that such disclosure applies to all configurations of the subject technology. Disclosures involving such one or more phrases may apply to all configurations or one or more configurations. Disclosures involving such one or more phrases may provide one or more examples. Phrases such as aspect or some aspects may refer to one or more aspects and vice versa, and this applies similarly to the other aforementioned phrases.

[0167] The word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any implementation described herein as "exemplary" or as an "example" is not necessarily to be construed as preferred or advantageous over other implementations. Furthermore, to the extent that the terms "including," "having," and the like are used in the specification or claims, such terms are intended to be inclusive, in a manner similar to the way the term "comprising" is interpreted when used as a transitional word in a claim.

[0168] All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later become known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be covered by the claims. In addition, nothing disclosed herein is intended to be made available to the public regardless of whether the disclosure is explicitly stated in the claims. Pursuant to 35 U.S.C. §112, paragraph 6, no claim element shall be construed unless the element is expressly stated using the phrase “means for” or, in the case of a method claim, the element is stated using the phrase “step for”.

[0169] The previous description is provided to enable those skilled in the art to practice the various aspects described herein. Various modifications of these aspects are apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. Therefore, the claims are not intended to be limited to the aspects shown herein, but are intended to make the full scope consistent with the language claims, wherein reference to elements in singular values ​​is not intended to mean "only one", but refers to "one or more", unless specifically noted. Unless otherwise specifically stated, the term "some" refers to one or more. Male pronouns (e.g., his) include female and neutral (e.g., her and its), and vice versa. Titles and subtitles (if any) are used only for convenience and do not limit the subject disclosure.

Claims

1. A device, comprising: Memory; and at least one processor, the at least one processor being configured to: receiving a time-based restriction on device usage by a first user, the time-based restriction being set by a second user of a second device; obtaining data indicating usage of the device by the first user; In response to determining that usage by the first user on the device violates the time-based restriction, providing an overlay on a user interface of at least a first application corresponding to the time-based restriction, the overlay indicating that the first user has violated the time-based restriction; as well as Authentication of the second user is received at the device to authorize adjustment of the time-based limit for usage by the first user.

2. The device of claim 1, wherein the time-based restriction is about a category of application, website, or device-level functionality.

3. The device of claim 2, wherein the category is based on a specific topic, and wherein the category includes a predefined set of one or more applications, websites, or device-level functions corresponding to the specific topic. 4 . The device of claim 2 , wherein the first application includes at least one of the applications in the category or the first application displays one of the websites in the category. The device of claim 4 , wherein the overlay comprises a user interface for requesting an increase to the time-based limit.

6. The device according to claim 5, wherein: The at least one processor is further configured to receive data indicative of the time-based restriction, access to the data being limited to the device and the second device.

7. The device according to claim 6, wherein: The at least one processor is further configured to: Data indicative of the usage is provided to the second device such that access to the usage is limited to the device and the second device.

8. The device according to claim 6, wherein: The second device is configured to obtain, from a public data source, a graphical icon representing an application associated with the use and not installed on the second device.

9. The apparatus of claim 1 , wherein the at least one processor is further configured to: An icon indicating that access is restricted is displayed on the application launch interface.

10. The device according to claim 1, wherein: The at least one processor is further configured to: detecting deletion of an application on the device; and In response to detecting the deletion, data identifying the application on the device is removed, and a usage record for the category corresponding to the application is retained.

11. The device according to claim 1, wherein: The at least one processor is further configured to: Detecting deletion of browser history corresponding to a website; and In response to detecting the deletion, data identifying the browser history corresponding to the website is removed from the device, and a usage record is retained regarding the category corresponding to the browser history corresponding to the website.

12. A computer program product comprising code stored in a non-transitory computer readable storage medium, the code comprising: code for receiving, at a first device, a time-based limit on usage by a first user, the time-based limit being set by a second user of a second device; code for receiving data indicative of usage of the first device by the first user; code for determining that the usage of the first device by the first user violates the time-based restriction; code for providing, in response to the determining, an overlay on a user interface of at least a first application corresponding to the time-based restriction, the overlay indicating that the first user has violated the time-based restriction; as well as Code for receiving locally at the first device authentication of the second user to authorize adjustment of the time-based limit for usage by the first user.

13. The computer program product of claim 12, wherein the time-based restrictions are on a category of application, website, or device-level functionality.

14. The computer program product of claim 13, wherein the categories are based on a particular topic, and wherein the categories include a predefined set of one or more applications, websites, or device-level functions corresponding to the particular topic.

15. The computer program product of claim 12, wherein the overlay comprises a user interface for requesting an increase to the time-based limit.

16. A method comprising: receiving, by a first device, a time-based limit for use on the first device by a first user, the time-based limit being set by a second user of a second device; determining that usage by the first user violates the time-based restriction; responsive to the determination, providing an overlay on a user interface of at least a first application corresponding to the time-based restriction, the overlay indicating that the first user has violated the time-based restriction; as well as Authentication of the second user is received locally at the first device to authorize adjustment of the time-based limit on usage for the first user.

17. The method of claim 16, wherein the time-based restrictions are about categories of application, website, or device-level functionality.

18. The method of claim 17, wherein the categories are based on a particular topic, and wherein the categories include a predefined set of one or more applications, websites, or device-level functions corresponding to the particular topic.

19. The method according to claim 16, further comprising: An icon indicating that access is restricted is displayed on the application launch interface.

20. The method of claim 16, wherein the overlay includes a user interface for requesting an increase to the time-based limit.

Citation Information

Patent Citations

  • Enhanced Curfew and Protection Associated with a Device Group

    US20170295258A1