一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种安卓电视的应用使用时长采集方法与流程

2022-02-23 00:33:13 来源:中国专利 TAG:


1.本发明涉及安卓电视技术领域,具体涉及一种安卓电视的应用使用时长采集方法。


背景技术:

2.安卓终端设备通常可通过系统服务usagestatsservice来采集各个应用的使用时长,该服务时长数据统计的基础以系统时钟为准。当安卓终端设备系统时钟未完成同步时,所采集的应用使用时长就可能为错误数据。对于关机、掉电状态无法维持系统时钟运行的安卓终端设备,如安卓电视,系统服务usagestatsservice启动时系统时钟能否及时同步,取决于系统启动时间,网络连接状态,服务启动时间等多种因素,因此无法使用usagestatsservice就在安卓电视平台上进行应用使用时长采集。


技术实现要素:

3.本专利针对安卓电视利用usagestatsservice进行应用时长采集时,系统时钟未同步,导致数据错误、数据丢失等问题,提出了一种适用于安卓电视的应用使用时长采集方法,在usagestatsservice基础上增加文件同步、数据校准、准确度优化机制,有效兼容安卓电视的适用环境,极大提高了时长采集的健壮性、准确性。
4.为了实现上述目的,本发明采用以下技术方案:
5.一种安卓电视的应用使用时长采集方法,包括:
6.在安卓电视设备系统监测到应用时间信息时,判断系统时钟是否同步,若同步后进行调整同步前创建的文件数据及文件有效性验证;
7.在每次应用使用时长计算时,若计算的应用使用时长大于时刻跳变值,表明该段应用时长数据采集的起始点在系统时钟同步前,采集的结束点在系统时钟同步后,则用应用使用时长与时刻跳变的差值替换该次使用时长数据;
8.在利用所述usagestatsservice进行应用时长采集时,循环对保存在内存中的采集数据进行写入持久化文件的操作;
9.在应用数据写入持久化文件时,判断是否有新的应用数据,若没有,实时获取当前系统时钟时刻,存储在持久化文件时间戳中;
10.在安卓电视系统启动时,获取最新记录文件的修改时间,作为上次处于未关闭前台应用的结束时间。
11.在一些实施例中,所述在安卓电视设备系统监测到应用时间信息时,判断系统时钟是否同步,包括:每次监测到应用启动或关闭的事件,先获取当前系统时钟与系统启动到现在的计数时钟,综合上一次监测到事件的系统时钟与系统启动到现在的计数时钟,来准确还原出期望系统时钟信息,即假设本次监测到事件与上次监测之间未发生时钟同步的系统时钟本应该的值,若发生系统时钟同步,该值与本次监测到事件时的系统时钟信息是不相等的,则认为发生时刻跳变,以此来判断是否发生系统时钟同步。
12.在一些实施例中,所述期望系统时钟信息计算公式如下:
13.期望系统时钟信息=(本次监测到事件时系统启动到现在的计数时钟

上一次监测到事件时系统启动到现在的计数时钟) 上一次监测到事件时的系统时钟。
14.在一些实施例中,所述时刻跳变值计算公式如下:
15.时刻跳变值=本次监测到事件时的系统时钟-期望系统时钟信息。
16.在一些实施例中,其中所述调整同步前创建的文件数据方法指的是,同步时,计算时刻跳变值;对于安卓电视设备系统时钟同步前创建的文件数据,在系统时钟同步时一起进行同步,该文件数据需加上系统时钟同步产生的时刻跳变值。
17.在一些实施例中,所述文件有效性验证,包括:对比当前系统时钟,若文件创建时间小于当前系统时钟且大于期望系统时钟信息,即认为文件有效。
18.在一些实施例中,所述文件有效性验证指的是,禁止usagestatsservice服务对已记录的数据进行调整,即禁止服务以未同步的时刻为标准去判断已记录数据是否过期;同时,实时检测系统时钟是否同步,同步后再进行已记录数据。
19.在一些实施例中,所述持久化文件时间戳为文件修改时间。
20.在一些实施例中,所述前台应用为系统关机时,已打开展示在界面还未关闭的应用。
21.本技术所披露的一种安卓电视的应用使用时长采集方法可能带来的有益效果包括但不限于:由于本发明所述技术方案,在安卓原生usagestatsservice服务的基础上,通过文件同步、数据校准、准确度优化方法,有效做到的关机、掉电状态无法维持系统时钟运行的安卓电视设备上也能准确、有效的获取到应用使用时长。
附图说明
22.图1为本发明提出文件同步的处理流程图
23.图2为本发明提出的修改后的usagestatsservice服务流程图。
具体实施方式
24.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
25.相反,本技术涵盖任何由权利要求定义的在本技术的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本技术有更好的了解,在下文对本技术的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本技术。
26.以下将结合图1-2对本技术实施例所涉及的一种安卓电视的应用使用时长采集方法进行详细说明。值得注意的是,以下实施例仅仅用于解释本技术,并不构成对本技术的限定。
27.在本技术的实施例中,如图1-2所示,一种安卓电视的应用使用时长采集方法,包括:
28.在安卓电视设备系统监测到应用时间信息时,判断系统时钟是否同步,若同步后
进行调整同步前创建的文件数据及文件有效性验证;
29.在每次应用使用时长计算时,若计算的应用使用时长大于时刻跳变值,表明该段应用时长数据采集的起始点在系统时钟同步前,采集的结束点在系统时钟同步后,则用应用使用时长与时刻跳变的差值替换该次使用时长数据;
30.在利用所述usagestatsservice进行应用时长采集时,循环对保存在内存中的采集数据进行写入持久化文件的操作;提高采集的数据写入持久化文件的频率,用于避免安卓电视设备掉电数据丢失量大;
31.在应用数据写入持久化文件时,判断是否有新的应用数据,若没有,实时获取当前系统时钟时刻,存储在持久化文件时间戳中;一旦安卓电视设备关机、掉电,处于前台应用关闭时刻可以存储下来,待下一次系统开机时计算该应用的使用时长,提高采集数据的准确性。其中所述持久化文件时间戳为文件修改时间。其中所述前台应用为系统关机时,已打开展示在界面还未关闭的应用。
32.在安卓电视系统启动时,获取最新记录文件的修改时间,作为上次处于未关闭前台应用的结束时间。
33.本发明在安卓电视设备系统时钟未同步时,禁止usagestatsservice服务对已记录的数据进行有效性验证,即禁止服务以未同步的时刻为标准去判断已记录数据是否过期。同时,实时检测系统时钟是否同步,同步后再进行已记录数据的有效性验证。
34.在安卓电视设备系统时钟进行同步时,计算时刻跳变值,即同步后的系统时钟信息与刚同步前的系统时钟信息差值;对于安卓电视设备系统时钟同步前创建的文件数据,在系统时钟同步时一起进行同步,该文件数据需加上系统时钟同步产生的时刻跳变值。
35.在每次应用使用时长计算时,若计算的应用使用时长大于时刻跳变值,表明该段应用时长数据采集的起始点在系统时钟同步前,采集的结束点在系统时钟同步后,则用应用使用时长与时刻跳变的差值替换该次使用时长数据。
36.在利用所述usagestatsservice进行应用时长采集时,提高采集的数据写入持久化文件的频率,用于避免安卓电视设备掉电数据丢失量大,提高采集数据的准确性。
37.在进行将内存数据写入持久化文件时,若无新数据,实时获取当前系统时钟时刻,存储在持久化文件信息中,一旦安卓电视设备关机、掉电,处于前台的应用关闭时刻可以存储下来,待下一次系统开机时计算该应用的使用时长,提高采集数据的准确性。
38.s1文件同步处理:
39.每次监测到应用启动或关闭的事件,先获取当前系统时钟与系统启动到现在的计数时钟,综合上一次监测到事件的系统时钟与系统启动到现在的计数时钟,来准确还原出期望系统时钟信息,即假设本次监测到事件与上次监测之间未发生时钟同步的系统时钟本应该的值,若发生系统时钟同步,该值与本次监测到事件时的系统时钟信息是不相等的(期望系统时钟信息是远小于本次监测到事件系统时钟信息的),则认为发生时刻跳变,以此来判断是否发生系统时钟同步。
40.期望系统时钟信息计算公式如下:
41.期望系统时钟信息=(本次监测到事件时系统启动到现在的计数时钟

上一次监测到事件时系统启动到现在的计数时钟) 上一次监测到事件时的系统时钟
42.时刻跳变值计算公式如下:
43.时刻跳变值=本次监测到事件时的系统时钟-期望系统时钟信息
44.s1.1调整同步前创建的文件数据
45.在安卓电视发生系统时钟同步后,获取文件创建时间,对比期望系统时钟信息,若文件创建时间小于期望系统时钟信息,该文件数据需加上时刻跳变值。
46.s1.2文件有效性验证
47.在安卓电视发生系统时钟同步后,获取文件创建时间,对比当前系统时钟,若文件创建时间小于当前系统时钟且大于期望系统时钟信息,即认为文件有效。
48.s2数据校准
49.在每次应用使用时长计算时,获取时刻跳变值,若计算的应用使用时长大于时刻跳变值,则用应用使用时长与时刻跳变的差值替换该次使用时长数据。
50.s3准确度优化
51.s3.1预设一个时间频率,在该频率下,循环对保存在内存中的采集数据进行写入持久化文件的操作,本实施例中,取频率为5分钟一次。
52.s3.2在进行将内存数据写入持久化文件时,对是否有新的数据进行判断。若无新的应用事件数据,同步记录文件修改为当前系统时钟;若有新的应用事件数据,才将内存中的数据写入文件。
53.在安卓电视系统启动时,获取最新记录文件的修改时间,作为上次处于前台未关闭应用的结束时间。
54.经过以上处理,usagestatsservice可适用于安卓电视系统,不受网络,掉电等情况限制,可以调用服务接口获取准确的应用使用时长数据。
55.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献