[发明专利]获取Android应用程序启动次数和时间的方法有效

专利信息
申请号: 201610070825.X 申请日: 2016-01-29
公开(公告)号: CN105740125B 公开(公告)日: 2018-03-30
发明(设计)人: 黄旭;雷珂 申请(专利权)人: 四川秘无痕信息安全技术有限责任公司
主分类号: G06F11/30 分类号: G06F11/30
代理公司: 暂无信息 代理人: 暂无信息
地址: 641000 *** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 获取 android 应用程序 启动 次数 时间 方法
【权利要求书】:

1.一种获取Android应用程序启动次数和时间的方法,其特征在于,

1.1解析启动时间文件,该文件是xml格式文件,数据存放在节点a中,节点a内部用节点b记录了各个应用的启动数据,其中节点b中的值bvl为应用程序的包名,节点b内部的节点c记录了该应用页面的启动情况,值cvl表示页面的名称,cv2表示页面最近一次启动时间;

1.2解析使用次数及时长文件,该文件是一种安卓手机中的USAGE格式文件,以4个字节为单位存储数据,该文件对于数字的存储采用16进制小端格式存储;其中,偏移量0x00~0x03表示文件头;偏移量0x04~文件尾表示数据区;偏移量0x04~0x07表示该文件记录的应用程序个数;偏移量0x08~文件尾记录了各个应用的使用情况,每个应用数据为一个数据块,数据块与数据块之间以4个0x00字节分割;

2.1加载系统文件,在手机获取root权限的情况下,开启su进程修改文件读写权限,通过数据流加载到内存;

2.2解析启动时间文件,通过Android自带的XmlPullParser相关类解析文件;通过getAttributeValue方法获取节点b中的值bv1;通过获取页面的启动时间来间接获取应用程序的启动时间,同样通过以上方法获取到应用程序所有页面的启动时间,通过比较,最近的时间即为应用程序的启动时间;

2.3通过自定义解析类实现对使用次数及时长文件的解析。

2.根据权利要求1所述的一种获取Android应用程序启动次数和时间的方法,其特征在于,数据块解析具体如下:

包名,每个数据块前4位代表应用包名实际长度,紧接着是用Unicode编码存储应用包名,包名的存储长度=实际长度*2;

应用启动数据,由于该文件中的数据是以4个字节为单位存储的,如果包名长度结尾处偏移量恰好为4的倍数,则加上4个0x00字节,否则用0x00占位补齐作为启动数据与包名的分割符;应用启动数据由8个字节组成:前4个字节代表启动次数,后4个字节代表运行时长;

应用程序页面个数,应用程序页面个数紧接在应用启动数据后,用4个0x00字符分割,该数据由4个字节组成;

应用程序页面名称,应用程序页面名称紧跟在应用程序页面个数后,同样前4位也是代表名称的实际长度,后面用Unicode编码存储了页面名称;

应用页面启动数据,同应用启动数据一样,如果应用程序页面名称结尾处偏移量恰好为4的倍数,则加上4个0x00字节,否则用0x00占位补齐作为页面启动数据与页面名称的分隔符;页面启动数据由44个字节组成:前4个字节代表页面的启动次数,后40个为预留字节与页面信息数据组成。

3.根据权利要求2所述的一种获取Android应用程序启动次数和时间的方法,其特征在于,2.3通过自定义解析类实现对使用次数及时长文件的解析包括:

2.3.1数字信息的转换方法functionl:

步骤1:将小端格式倒序转换为大端格式;

步骤2:将转换后的字节数据依次和0xFF取&转换为int类型数据;

步骤3:通过Integer类的toHexString方法将4个int类型数据转换为HexString并依次拼合为一个HexString字符串;

步骤4:通过Integer类的valueOf方法将HexString字符串转换为int类型。

4.根据权利要求3所述的一种获取Android应用程序启动次数和时间的方法,其特征在于,2.3通过自定义解析类实现对使用次数及时长文件的解析还包括:

2.3.2应用程序启动信息解析:

步骤1:获取文件头信息,判断是否是USAGE类型文件,文件读写下标index移动到第四个偏移位置结尾处;

步骤2:如果步骤1成立则获取文件名称并截取日期date,否则获取下一个USAGE文件;

步骤3:从index位置依次向下读取4个字节;

步骤4:用functionl方法获取到应用程序数量appcount,index继续向下移动4个字节;

步骤5:重复步骤3,用functionl方法获取应用程序包名实际长度,实际长度*2得到应用程序的存储长度pkglength,index继续向下移动4个字节;

步骤6:从index位置依次向下读取pkglength个字符,采用按Unicode编码读取到应用程序包名pkgname,index继续向下移动pkglength个字节;

步骤7:计算index是否为4的倍数,若是则向下移动4个字节,否则向下移动到index为4的倍数为止;

步骤8:重复步骤3,用functionl方法获取到应用程序在当前date使用的次数count,index继续向下移动4个字节;

步骤9:重复步骤3,用functionl方法获取到应用程序在当前date启动的时长time,index继续向下移动8个字节;

步骤10:重复步骤3,用functionl方法获取到应用程序的页面个数pagecount,index继续向下移动4个字节;

步骤11:重复步骤3,用functionl方法获取应用程序页面名实际长度,实际长度*2得到应用程序的存储长度pagelength,index继续向下移动4个字节;

步骤12:从index位置依次向下读取pagelength个字符,采用按Unicode编码读取到应用程序页面名,index继续向下移动pagelength个字节,重复步骤7;

步骤13:重复步骤3,用functionl方法获取到应用程序的页面启动次数,index继续向下移动44个字节;

步骤14:重复步骤11~13,重复pagecount-1次获取到应用程序所有启动过的页面的启动数据后index继续向下移动4个字节;

步骤15:重复步骤5~14,重复appcount-1次获取到所有启动过的应用程序的启动数据后,该文件解析完成。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川秘无痕信息安全技术有限责任公司,未经四川秘无痕信息安全技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201610070825.X/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top