CN105740125B - 获取Android应用程序启动次数和时间的方法 - Google Patents

获取Android应用程序启动次数和时间的方法 Download PDF

Info

Publication number
CN105740125B
CN105740125B CN201610070825.XA CN201610070825A CN105740125B CN 105740125 B CN105740125 B CN 105740125B CN 201610070825 A CN201610070825 A CN 201610070825A CN 105740125 B CN105740125 B CN 105740125B
Authority
CN
China
Prior art keywords
application program
data
bytes
time
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610070825.XA
Other languages
English (en)
Other versions
CN105740125A (zh
Inventor
黄旭
雷珂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xly Salvationdata Technology Inc
Original Assignee
SICHUAN MWH INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SICHUAN MWH INFORMATION SAFETY TECHNOLOGY Co Ltd filed Critical SICHUAN MWH INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority to CN201610070825.XA priority Critical patent/CN105740125B/zh
Publication of CN105740125A publication Critical patent/CN105740125A/zh
Application granted granted Critical
Publication of CN105740125B publication Critical patent/CN105740125B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种获取Android应用程序启动次数和时间的方法,属于信息安全领域,解析启动时间文件,该文件是xml格式文件,数据存放在节点a中,节点a内部用节点b记录了各个应用的启动数据,其中节点b中的值bvl为应用程序的包名,节点b内部的节点c记录了该应用页面的启动情况,值cvl表示页面的名称,cv2表示页面最近一次启动时间;本发明提出了一种实现简单、稳定性高的解决方案:1、Root手机获取系统的应用使用情况的文件信息;2、通过解析系统文件的方式获取应用程序使用时长、次数和最近一次使用时间。

Description

获取Android应用程序启动次数和时间的方法
技术领域
本发明涉及信息安全领域,特别涉及一种获取Android应用程序启动次数和时间的方法。
背景技术
Android手机中会记录用户很多的使用记录,包括聊天、账号、应用使用记录等。其中应用使用记录可以帮助我们了解手机中哪些是不常用软件,以及使用它们的时间及次数,从而选择卸载应用程序达到手机瘦身的目的。
目前已知的获取应用程序使用情况的方法有四种:1、开启后台服务进行监听开启服务期间的使用情况;2、源码环境下使用PkgUsageStats等相关类;3、通过反射获取并使用PkgUsageStats等相关类;4、进入工程模式查看。
目前市面上的相关软件大都是第一种方式来达到目的,也只是记录了应用最近一次使用时间,而没有记录使用次数及时长。这种方式会一直占用手机运行内存并且消耗电量,当该应用的服务被关掉也就不能获取到应用程序的使用情况。
第二种和第三种方式都需要使应用获取系统级权限,将应用进行系统签名打包成系统应用。而受Android开源的影响,不同的厂商的系统签名文件也千差万别,对这两种方式的实现也就造成了相当大的困难。
对于第四种方式,大多数手机可以在拨号界面输入*#*#4636#*#*进入,由于版本rom有所差别,有的手机的进入方式不同。手机工程模式给人的印象就是生硬的黑白屏,全屏的英文和代码命令,就像视窗重新回到了DOS系统,如果操作不当手机会带来重大的损失。
发明内容
本发明针对现有技术的不足,提供一种获取Android应用程序启动次数和时间的方法,能解决当前获取Android应用程序启动次数和时间的种种弊端。
为解决以上问题,本发明采用的技术方案如下:一种获取Android应用程序启动次数和时间的方法,包括如下步骤:
1.1解析启动时间文件,该文件是xml格式文件,数据存放在节点a中,节点a内部用节点b记录了各个应用的启动数据,其中节点b中的值bvl为应用程序的包名,节点b内部的节点c记录了该应用页面的启动情况,值cvl表示页面的名称,cv2表示页面最近一次启动时间;
1.2解析使用次数及时长文件,该文件是一种安卓手机中的USAGE格式文件,以4个字节为单位存储数据,该文件对于数字的存储采用16进制小端格式存储;其中,偏移量0x00~0x03表示文件头;偏移量0x 04~文件尾表示数据区;偏移量0x04~0x07表示该文件记录的应用程序个数;偏移量0x08~文件尾记录了各个应用的使用情况,每个应用数据为一个数据块,数据块与数据块之间以4个0x00字节分割;
2.1加载系统文件,在手机获取root权限的情况下,开启su进程修改文件读写权限,通过数据流加载到内存;
2.2解析启动时间文件,通过Android自带的XmlPullParser相关类解析文件;通过getAttributeValue方法获取节点b中的值bv1;通过获取页面的启动时间来间接获取应用程序的启动时间,同样通过以上方法获取到应用程序所有页面的启动时间,通过比较,最近的时间即为应用程序的启动时间;
2.3通过自定义解析类实现对使用次数及时长文件的解析。
包名,每个数据块前4位代表应用包名实际长度,紧接着是用Unicode编码存储应用包名,包名的存储长度=实际长度*2;
应用启动数据,由于该文件中的数据是以4个字节为单位存储的,如果包名长度结尾处偏移量恰好为4的倍数,则加上4个0x00字节,否则用0x00占位补齐作为启动数据与包名的分割符;应用启动数据由8个字节组成:前4个字节代表启动次数,后4个字节代表运行时长;
应用程序页面个数,应用程序页面个数紧接在应用启动数据后,用4个0x00字符分割,该数据由4个字节组成;
应用程序页面名称,应用程序页面名称紧跟在应用程序页面个数后,同样前4位也是代表名称的实际长度,后面用Unicode编码存储了页面名称;
应用页面启动数据,同应用启动数据一样,如果应用程序页面名称结尾处偏移量恰好为4的倍数,则加上4个0x00字节,否则用0x00占位补齐作为页面启动数据与页面名称的分隔符;页面启动数据由44个字节组成:前4个字节代表页面的启动次数,后40个为预留字节与页面信息数据组成。
作为优选,2.3通过自定义解析类实现对使用次数及时长文件的解析包括:
2.3.1数字信息的转换方法functionl:
步骤1:将小端格式倒序转换为大端格式;
步骤2:将转换后的字节数据依次和0xFF取&转换为int类型数据;
步骤3:通过Integer类的toHexString方法将4个int类型数据转换为HexString并依次拼合为一个HexString字符串;
步骤4:通过Integer类的valueOf方法将HexString字符串转换为int
类型。
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次获取到所有启动过的应用程序的启动数据后,该文件解析完成。
本发明的方法可以达到以下效果:本发明针对上述问题提出了一种实现简单、稳定性高的解决方案:1、Root手机获取系统的应用使用情况的文件信息;2、通过解析系统文件的方式获取应用使用时长、次数和最近一次使用时间。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照实施例,对本发明做进一步详细说明。
本发明通过以下步骤实现在手机获取root权限的情况下,应用层应用无需启动服务随时获取手机应用程序使用情况:1:解析系统文件;2:解析文件的加载。
1、解析系统文件
系统将应用使用记录数据主要存放在系统目录下,其中包含了记录应用最近一次的启动时间的文件和记录应用的在五天的使用次数及时长的“usage-(日期)”文件;
1.1解析启动时间文件
该文件是xml格式文件。数据存放在节点a中,节点a内部用节点b记录了各个应用的启动数据,其中节点b中的值bvl为应用程序的包名,节点b内部的节点c记录了该应用页面的启动情况,值cvl表示页面的名称,cv2表示页面最近一次启动时间。
1.2解析使用次数及时长文件
该文件是一种安卓手机中的USAGE格式文件,以4个字节为单位存储数据,该文件对于数字的存储都采用16进制小端格式存储的,如:
10000000代表的是0x00000010也就是16。
1.2.1文件结构
偏移量0x00~0x03表示文件头偏移量0x04~文件尾表示数据区1.2.2应用程序记录个数(数据块个数)
偏移量0x04~0x07表示该文件记录的应用程序个数
1.2.3数据块
偏移量0x08~文件尾记录了各个应用的使用情况,每个应用数据为一个数据块,数据块与数据块之间以4个0x00字节分割;
1.2.4解析数据块1.2.4.1包名
每个数据块前4位代表应用包名实际长度,紧接着是用Unicode编码存储应用包名(每两个字节代表一个字符),包名的存储长度=实际长度*2;1.2.4.2应用程序启动数据
由于该文件中的数据是以4个字节为单位存储的,如果包名长度结尾处偏移量恰好为4的倍数,则加上4个0x00字节,否则用0x00占位补齐作为启动数据与包名的分割符。
应用程序启动数据由8个字节组成:
前4个字节代表启动次数,后4个字节代表运行时长;
1.2.4.3应用程序页面个数
应用程序页面个数紧接在应用启动数据后,用4个0x00字符分割,该数据由4个字节组成;
1.2.4.4应用程序页面名称
应用程序页面名称紧跟在应用程序页面个数后。同样前4位也是代表名称的实际长度,后面用Unicode编码存储了页面名称;
1.2.4.5应用页面启动数据
同应用启动数据一样,如果应用程序页面名称结尾处偏移量恰好为4的倍数,则加上4个0x00字节,否则用0x00占位补齐作为页面启动数据与页面名称的分隔符。
页面启动数据由44个字节组成:
前4个字节代表页面的启动次数,后40个为预留字节与页面信息数据组成;
2、文件的加载解析2.1加载系统文件
在手机获取root权限的情况下,开启su进程修改文件读写权限,通过数据流加载到内存。
2.2应用程序启动时间文件的解析
通过Android自带的XmlPullParser等相关类解析文件;
2.2.1应用程序包名的获取
通过getAttributeValue方法获取节点b中的值bvl;
2.2.2应用程序启动时间的获取
由于该文件没有记录对应应用的启动时间,通过获取页面的启动时间来间接获取应用的启动时间。同样通过以上方法获取到应用所有页面的启动时间,通过比较,最近的那个时间也就是应用程序的启动时间;
2.3应用程序启动次数及时长文件的解析
由于没有相关类解析使用次数及时长文件,通过自定义解析类实现对使用次数及时长文件的解析;
2.3.1数字信息的转换方法functionl
由于数字信息都是采用4个16进制小端记录的,通过以下步骤进行转换:
步骤1:将小端格式倒序转换为大端格式;
步骤2:将转换后的字节数据依次和OxFF取&转换为int类型数据;
步骤3:通过Integer类的toHexString方法将4个int类型数据转换为HexString并依次拼合为一个HexString字符串;
步骤4:通过Integer类的valueOf方法将HexString字符串转换为int类型;
2.3.2应用程序启动信息解析
应用程序启动信息主要采用以下步骤:
步骤1:获取文件头信息,判断是否是USAGE类型文件,文件读写下标index移动到第四个偏移位置结尾处;
步骤2:如果步骤1成立则获取文件名称并截取日期date,否则获取下一个USAGE文件;
步骤3:从index位置依次向下读取4个字节;
步骤4:用function1方法获取到应用程序数量appcount,index继续向
步骤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,用function1方法获取到应用程序的页面启动次数,index继续向下移动44个字节;
步骤14:重复步骤11~13,重复pagecount-1次获取到应用程序所有启动过的页面的启动数据后index继续向下移动4个字节;
步骤15:重复步骤5~14,重复appcount-1次获取到所有启动过的应用程序的启动数据后,该文件解析完成。
至此,应用程序启动数据解析完成,其中应用包名pakname,使用次数count,使用时长time以及日期date即是我们要的数据。

Claims (4)

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次获取到所有启动过的应用程序的启动数据后,该文件解析完成。
CN201610070825.XA 2016-01-29 2016-01-29 获取Android应用程序启动次数和时间的方法 Active CN105740125B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610070825.XA CN105740125B (zh) 2016-01-29 2016-01-29 获取Android应用程序启动次数和时间的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610070825.XA CN105740125B (zh) 2016-01-29 2016-01-29 获取Android应用程序启动次数和时间的方法

Publications (2)

Publication Number Publication Date
CN105740125A CN105740125A (zh) 2016-07-06
CN105740125B true CN105740125B (zh) 2018-03-30

Family

ID=56242128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610070825.XA Active CN105740125B (zh) 2016-01-29 2016-01-29 获取Android应用程序启动次数和时间的方法

Country Status (1)

Country Link
CN (1) CN105740125B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874147B (zh) * 2017-03-01 2021-03-02 四川艾特赢泰智能科技有限责任公司 一种恢复并解析Windows操作系统预读文件的方法
CN111625180B (zh) 2019-02-27 2021-05-28 英韧科技(上海)有限公司 数据写入方法及装置、存储介质
CN112328316B (zh) * 2019-08-02 2023-01-24 Tcl科技集团股份有限公司 一种app优化方法、移动终端及存储介质
CN112328266B (zh) * 2020-11-06 2021-09-28 因特睿科技有限公司 一种软件互联接口导向的应用程序约减方法和系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101004697A (zh) * 2006-01-21 2007-07-25 鸿富锦精密工业(深圳)有限公司 计算机系统启动时间的测试系统及方法
CN102591770A (zh) * 2011-12-27 2012-07-18 奇智软件(北京)有限公司 一种目标应用启动时间检测方法和装置
CN102591769A (zh) * 2011-12-27 2012-07-18 奇智软件(北京)有限公司 一种关机时间检测方法和装置
CN102981955A (zh) * 2012-11-29 2013-03-20 浪潮电子信息产业股份有限公司 一种基于Linux系统的自动连续重启的方法
CN103019918A (zh) * 2011-09-27 2013-04-03 腾讯科技(深圳)有限公司 一种获取应用程序使用频率的方法和装置
CN103488557A (zh) * 2013-08-28 2014-01-01 北京奇虎科技有限公司 一种计算机操作系统开机时间的获取方法和装置
CN104199692A (zh) * 2014-08-25 2014-12-10 北京金山安全软件有限公司 一种获取应用程序的启动时间的方法、装置及终端
CN104951392A (zh) * 2015-06-25 2015-09-30 上海卓易科技股份有限公司 一种测量应用程序启动时间的方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101004697A (zh) * 2006-01-21 2007-07-25 鸿富锦精密工业(深圳)有限公司 计算机系统启动时间的测试系统及方法
CN103019918A (zh) * 2011-09-27 2013-04-03 腾讯科技(深圳)有限公司 一种获取应用程序使用频率的方法和装置
CN102591770A (zh) * 2011-12-27 2012-07-18 奇智软件(北京)有限公司 一种目标应用启动时间检测方法和装置
CN102591769A (zh) * 2011-12-27 2012-07-18 奇智软件(北京)有限公司 一种关机时间检测方法和装置
CN102981955A (zh) * 2012-11-29 2013-03-20 浪潮电子信息产业股份有限公司 一种基于Linux系统的自动连续重启的方法
CN103488557A (zh) * 2013-08-28 2014-01-01 北京奇虎科技有限公司 一种计算机操作系统开机时间的获取方法和装置
CN104199692A (zh) * 2014-08-25 2014-12-10 北京金山安全软件有限公司 一种获取应用程序的启动时间的方法、装置及终端
CN104951392A (zh) * 2015-06-25 2015-09-30 上海卓易科技股份有限公司 一种测量应用程序启动时间的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Android UsageStatsService:要点解析;_-_小T;《http://blog.csdn.net/oqqtim12/article/details/38638533》;20140817;全文 *

Also Published As

Publication number Publication date
CN105740125A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
CN105740125B (zh) 获取Android应用程序启动次数和时间的方法
KR100614677B1 (ko) 구조화된 문서를 압축/복원하기 위한 방법
EP1676210B1 (en) Method and apparatus for handling text and binary mark up languages in a computing device
CN104753540B (zh) 数据压缩方法、数据解压方法和装置
US20050278289A1 (en) Binary XML
CN107315668B (zh) 分布式存储系统数据一致性自动化快速检测方法及装置
US20020091999A1 (en) XML based script automation
CN101571850B (zh) 一种支持页面跳转功能的文本文档显示方法及装置
CN103853806A (zh) 一种表格转换方法及装置
CN109558575A (zh) 在线表格编辑方法、装置、计算机设备及存储介质
CA2500422A1 (en) Annotated automaton encoding of xml schema for high performance schema validation
CN103490878B (zh) 一种密钥动态存储方法及存储后的读取、删除方法
Wickham et al. Package ‘readxl’
CN108108394A (zh) Apfs文件系统的压缩文件恢复方法及存储介质
CA2563644A1 (en) Method and system for storing self-descriptive tabular data with alphanumeric and binary values
US20060242566A1 (en) Method and system for mapping between components of a packaging model and features of a physical representation of a package
US8930808B2 (en) Processing rich text data for storing as legacy data records in a data storage system
CN102624894A (zh) 一种报文组装与解析的方法和系统
CN110046135B (zh) 一种客户端日志不易失的存储方法
CN107391127A (zh) 软件版本信息保存方法和系统
CN114610342A (zh) 一种在Android上支持鸿蒙应用安装的方法
CN102262676A (zh) 可扩展标记语言文件转换器及其转换方法
US8336037B1 (en) JNI-minimizing data structures for XML parsing
CN108614687A (zh) 一种在c++程序中实现反射的方法、存储介质及计算设备
Belokopytov et al. Cargo database management package

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 641000 South side of Songshan South Road, Zhongqu District, Neijiang City, Sichuan Province

Patentee after: Sichuan Miwu Traceless Science and Technology Co.,Ltd.

Country or region after: China

Address before: No. 183 Songshan Road, Neijiang, Sichuan, Sichuan

Patentee before: SICHUAN MWH INFORMATION SECURITY TECHNOLOGY CO.,LTD.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240529

Address after: 641100 No.1 Hanyu Avenue, Shizhong District, Neijiang City, Sichuan Province

Patentee after: XLY SALVATIONDATA TECHNOLOGY Inc.

Country or region after: China

Address before: 641000 Songshan South Road 253, Neijiang City, Sichuan Province

Patentee before: Sichuan Miwu Traceless Science and Technology Co.,Ltd.

Country or region before: China