1 Star 0 Fork 158

moooon/resourceschedule_device_usage_statistics

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

设备使用信息统计

简介

设备使用信息统计,包括app usage/notification usage/system usage等使用统计。例如应用使用信息统计,用于保存和查询应用使用详情(app usage)、事件日志数据(event log)、应用分组(bundle group)情况。 部件缓存的应用记录(使用历史统计和使用事件记录)会在事件上报后30分钟内刷新到数据库持久化保存。

目录

/foundation/resourceschedule/device_usage_statistics
├── BUILD.gn                           # 模块编译脚本
├── LICENSE                            # 开源协议
├── adapter                            # 适配目录
├── bundle.json                        # 部件化解耦及编译脚本
├── frameworks                         # 框架层目录
├── interfaces
│   ├── innerkits                      # 对内接口目录
│   └── kits                           # 对外接口目录
├── services                           # 服务层目录
└── test                               # 测试用例目录

说明

接口说明

设备使用信息统计接口,包括app usage/notification usage/system usage等接口,以app usage接口为例,对外提供主要接口如下。

接口名

接口描述

queryBundleEvents(begin: number, end: number, callback: AsyncCallback<Array<BundleEvents>>): void

通过指定起始和结束时间查询所有应用的事件集合(callback形式)。

queryBundleEvents(begin: number, end: number): Promise<Array<BundleEvents>>

通过指定起始和结束时间查询所有应用的事件集合(Promise形式)。

queryBundleStatsInfos(begin: number, end: number, callback: AsyncCallback<BundleStatsMap>): void

通过指定起始和结束时间查询应用使用时长统计信息(callback形式)。

queryBundleStatsInfos(begin: number, end: number): Promise<BundleStatsMap>

通过指定起始和结束时间查询应用使用时长统计信息(Promise形式)。

queryCurrentBundleEvents(begin: number, end: number, callback: AsyncCallback<Array<BundleEvents>>): void

通过指定起始和结束时间查询当前应用的事件集合(callback形式)。

queryCurrentBundleEvents(begin: number, end: number): Promise<Array<BundleEvents>>

通过指定起始和结束时间查询当前应用的事件集合(Promise形式)。

queryBundleStatsInfoByInterval(byInterval: IntervalType, begin: number, end: number, callback: AsyncCallback<Array<BundleStatsInfo>>): void

通过指定时间段间隔(天、周、月、年)查询应用使用时长统计信息(callback形式)。

queryBundleStatsInfoByInterval(byInterval: IntervalType, begin: number, end: number): Promise<Array<BundleStatsInfo>>

通过指定时间段间隔(天、周、月、年)查询应用使用时长统计信息(Promise形式)。

isIdleState(bundleName: string, callback: AsyncCallback<boolean>): void

判断指定Bundle Name的应用当前是否是空闲状态(callback形式)。

isIdleState(bundleName: string): Promise<boolean>

判断指定Bundle Name的应用当前是否是空闲状态(Promise形式)。

queryDeviceEventStats(begin: number, end: number, callback: AsyncCallback<Array<DeviceEventStats>>): void

根据起止时间查询系统事件(休眠、唤醒、解锁、锁屏)统计信息(callback形式)。

queryDeviceEventStats(begin: number, end: number): Promise<Array<DeviceEventStats>>

根据起止时间查询系统事件(休眠、唤醒、解锁、锁屏)统计信息(Promise形式)。

queryNotificationEventStats(begin: number, end: number, callback: AsyncCallback<Array<DeviceEventStats>>): void

根据起止时间查询应用通知次数(callback形式)。

queryNotificationEventStats(begin: number, end: number): Promise<Array<DeviceEventStats>>

根据起止时间查询应用通知次数(Promise形式)。

queryModuleUsageRecords(callback: AsyncCallback<Array<HapModuleInfo>>): void

查询FA使用记录。返回数量最大不超过1000设置的值,FA使用记录由近及远排序(callback形式)。

queryModuleUsageRecords(): Promise<Array<HapModuleInfo>>

查询FA使用记录。返回数量最大不超过1000设置的值,FA使用记录由近及远排序(Promise形式)。

queryModuleUsageRecords(maxNum: number, callback: AsyncCallback<Array<HapModuleInfo>>): void

查询FA使用记录。返回数量最大不超过maxNum设置的值,FA使用记录由近及远排序,maxNum最大为1000(callback形式)。

queryModuleUsageRecords(maxNum: number): Promise<Array<HapModuleInfo>>

查询FA使用记录。返回数量最大不超过maxNum设置的值,FA使用记录由近及远排序,maxNum最大为1000(Promise形式)。

queryAppGroup(callback: AsyncCallback<number>): void

查询当前应用的使用优先级分组(callback形式)。

queryAppGroup(): Promise<number>

查询当前应用的使用优先级分组(Promise形式)。

queryAppGroup(bundleName : string, callback: AsyncCallback<number>): void

查询指定bundleName的应用的优先级分组(callback形式)。

queryAppGroup(bundleName : string): Promise<number>

查询指定bundleName的应用的使用优先级分组(Promise形式)。

setAppGroup(bundleName: string, newGroup: GroupType, callback: AsyncCallback<void>): void

将指定应用的分组设置为参数提供的分组(callback形式)。

setAppGroup(bundleName: string, newGroup: GroupType): Promise<void>

将指定应用的分组设置为参数提供的分组(Promise形式)。

registerAppGroupCallBack(callback: Callback<AppGroupCallbackInfo>, callback: AsyncCallback<void>): void

给应用分组变化注册回调(callback形式)。

registerAppGroupCallBack(callback: Callback<AppGroupCallbackInfo>): Promise<void>

给应用分组变化注册回调(Promise形式)。

unRegisterAppGroupCallBack(callback: AsyncCallback<void>): void

将已注册过的应用分组回调解除注册(callback形式)。

unRegisterAppGroupCallBack(): Promise<void>

将已注册过的应用分组回调解除注册(Promise形式)。

使用说明

设备使用信息统计接口众多,以应用使用详情(app usage)接口为例,介绍接口逻辑。

  • 应用使用统计信息落盘时机
  1. 每隔30分钟触发一次刷新;
  2. 系统时间变更触发一次刷新;
  3. 下一天开始触发一次刷新;
  • 应用查询接口
  1. 根据起止时间查询所有应用的事件集合;
  2. 根据起止时间查询应用的使用时长;
  3. 根据起止时间查询当前应用的事件集合;
  4. 根据interval(日、周、月、年)类型和起止时间查询应用的使用时长;
  5. 查询当前应用的优先级分组;
  6. 判断指定应用当前是否是空闲状态;
  7. 根据起止时间查询系统事件(休眠、唤醒、解锁、锁屏)统计信息;
  8. 根据起止时间查询应用通知次数;
  9. 查询FA使用记录。返回数量最大不超过maxNum设置的值,FA使用记录由近及远排序,maxNum最大为1000,若不填写maxNum参数,则maxNum默认为1000;
  10. 查询当前应用或指定bundlename对应的应用的分组;
  11. 将指定应用的分组设置为参数提供的分组;
  12. 给应用分组变化注册回调;
  13. 将已注册过的应用分组回调解除注册;

相关仓

全局资源调度子系统

resourceschedule_device_usage_statistics

resourceschedule_resource_schedule_service

appexecfwk_standard

distributeddatamgr_appdatamgr

空文件

简介

暂无描述 展开 收起
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/muhe1/resourceschedule_device_usage_statistics.git
git@gitee.com:muhe1/resourceschedule_device_usage_statistics.git
muhe1
resourceschedule_device_usage_statistics
resourceschedule_device_usage_statistics
OpenHarmony-v3.2-Beta5

搜索帮助