一种Android应用性能监控统计方法及系统技术方案

技术编号:20627800 阅读:62 留言:0更新日期:2019-03-20 17:23
本发明专利技术公开了一种Android应用性能监控统计方法,包括响应于APP启动,对系统进行自检;响应于APP运行,对网络和屏幕进行监控;响应于APP运行错误,收集系统抛出来的异常信息。同时也公开了相应的系统。本发明专利技术先对系统环境进行自检,在运行过程中,对网络和屏幕进行监控,运行错误时,对异常信息进行收集,相对于现有的监控方案监控更加全面。

A Statistical Method and System for Android Application Performance Monitoring

The invention discloses an Android application performance monitoring statistical method, which includes self-checking the system in response to the start of APP, monitoring the network and screen in response to the operation of APP, and collecting abnormal information thrown out by the system in response to the operation error of APP. At the same time, the corresponding system is also disclosed. The invention first carries out self-examination of the system environment, monitors the network and screen during operation, and collects abnormal information when running errors, which is more comprehensive than the existing monitoring scheme.

【技术实现步骤摘要】
一种Android应用性能监控统计方法及系统
本专利技术涉及一种Android应用性能监控统计方法及系统,属于Android监控领域。
技术介绍
随着智能手机的普及和移动网络的高速发展,截至2018年6月30日,中国网民达到8.02亿,其中手机网民为7.88亿,占网民总数的98.3%。而在手机网民中,Android用户占到了总用户的69.7%,由上可见Android设备是国内联网的绝对主力。Android系统自发布之初便奉行开放、开源、免费、可定制的原则,使得Android系统能在短时间内吸引了广大的硬件厂商、软件厂商、开发者,随着Google和广大开发商这些年的不断努力,Android日趋完善。由于移动应用都是安装在手机上,有可能因为系统版本、屏幕分辨率、手机品牌、手机型号等差异化的原因,造成卡顿、无响应、占用资源、闪退等非常影响用户体验的情况。同时由于是安装在手机上的移动应用,使用场景也比互联网时代的PC要更加复杂。即使是测试也未必能将所有情况都测试到,故针对Android设备的应用性能监控势在必行。现在市面上没有一款覆盖较为全面的性能监控方案。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种Android应用性能监控统计方法及系统。为了达到上述目的,本专利技术所采用的技术方案是:一种Android应用性能监控统计方法,其特征在于:包括以下步骤,响应于APP启动,对系统进行自检;响应于APP运行,对网络和屏幕进行监控;响应于APP运行错误,收集系统抛出来的异常信息。系统自检的过程为,响应于APP启动,开始启动计时,同时启动界面;检测系统环境;检测结束后停止启动计时,若检测信息无异常,则将检测信息记录到运行日志中,同时通知界面跳转到主界面;若检测信息有异常,则将检测信息记录到运行日志中,提示用户是否上传运行日志。检测信息包括屏幕信息、网络信息、手机硬件信息、系统信息和权限信息。网络监控的过程为,响应于请求网络,开始网络监控计时,同时发出请求信息;若在预设的时间内有返回值,则接收到返回值时停止网络监控计时,将网络连接类型、请求信息和返回时间记录到运行日志中;若在预设的时间内有返回值,则将网络连接类型和请求信息记录到运行日志中,提示用户是否上传运行日志。屏幕监控的过程为,触发界面跳转;响应于第一个界面onStop(),开始屏幕监控计时;检测界面跳转过程中FPS、SF丢帧和SM流畅度;响应于第二个界面onResume(),停止屏幕监控计时,将两个界面名、总耗时、FPS、SF丢帧、SM流畅度记录在运行日志中。异常信息收集的过程为,响应于接收到系统抛出来的异常信息,收集系统信息、网络信息和APP信息;将系统信息、网络信息、APP信息和异常信息记录到异常日志中。异常日志手动或自动上传后台,后台接收后,向开发人员发出处理提示信息。一种Android应用性能监控统计系统,包括,自检模块:响应于APP启动,对系统进行自检;监控模块:响应于APP运行,对网络和屏幕进行监控;异常收集模块:响应于APP运行错误,收集系统抛出来的异常信息。一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行一种Android应用性能监控统计方法。一种计算设备,包括一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行一种Android应用性能监控统计方法的指令。本专利技术所达到的有益效果:1、本专利技术先对系统环境进行自检,在运行过程中,对网络和屏幕进行监控,运行错误时,对异常信息进行收集,相对于现有的监控方案监控更加全面;2、只在每次执行操作的时候才进行监测和记录,最大限度平衡了功耗和实时性;3、异常日志和运行日志分离,减少了日志上传时的网络流量,加快了问题定位的速度。附图说明图1为本专利技术流程图;图2为自检流程图;图3为网络监控流程图;图4为屏幕监控流程图;图5为VSync机制垂直同步机制示意图;图6为VSync机制中跳帧示意图;图7为异常信息收集流程图。具体实施方式下面结合附图对本专利技术作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。如图1所示,一种Android应用性能监控统计方法,包括以下步骤:步骤1,响应于APP启动,对系统进行自检。自检是在APP启动时(包括热启动和冷启动)做的一些有关系统环境的检测,具体过程如图2所示。系统自检的过程:11)响应于APP启动,开始启动计时,同时启动界面;12)检测系统环境;检测信息包括屏幕信息、网络信息、手机硬件信息、系统信息和权限信息。屏幕信息包括分辨率、密度;网络信息包括连接类型、支持连接类型;手机硬件信息包括生产厂商、手机型号和CPU信息,CPU信息包括型号、支持的ABI;系统信息包括系统版本;13)检测结束后停止启动计时,若检测信息无异常,则将检测信息记录到运行日志中,同时通知界面跳转到主界面;若检测信息有异常,则将检测信息记录到运行日志中,提示用户是否上传运行日志。步骤2,响应于APP运行,对网络和屏幕进行监控。如图3所示,网络监控的过程:211)响应于请求网络,开始网络监控计时,同时发出请求信息;212)若在预设的时间内有返回值,则接收到返回值时停止网络监控计时,将网络连接类型、请求信息和返回时间记录到运行日志中;213)若在预设的时间内有返回值,则将网络连接类型和请求信息记录到运行日志中,提示用户是否上传运行日志。如图4所示,屏幕监控的过程:221)触发界面跳转;222)响应于第一个界面onStop()(该方法在界面即将从手机屏幕消失时触发,中文名称叫界面停止,是现有的方法),开始屏幕监控计时;223)检测界面跳转过程中FPS、SF丢帧和SM流畅度;224)响应于第二个界面onResume()(该方法在界面即将在屏幕上显示时触发,中文名称叫界面恢复,是现有的方法),停止屏幕监控计时,将两个界面名、总耗时、FPS、SF丢帧、SM流畅度记录在运行日志中。如图5所示,Android系统使用VSync(垂直同步)机制进行绘制,在VSync机制下的绘图过程,在每个VSync时间切片中,CPU先测量、计算要显示的内容,接着GPU接过内容在屏幕上进行渲染。当前FPS为60帧,即CPU+GPU测量计算显示的时间不能超过1/60≈0.01666667s,约等于16ms。如果每帧都能在16ms内完成,则能确保60帧的帧率,即用户感知不到卡顿。但如果超过了16ms的时间切片,便会出现如图6的情况。图中B帧的GPU绘制时间过程比较长,使得B帧总体时间超过了VSync时间切片,造成第2帧的缺失,即丢帧。A帧由于CPU计算的时间过长,导致此帧也超过了16.6ms,同样带来了丢帧。丢帧越多,用户感知越明显,越是影响用户体验。通过该机制,我们可以得知,只要保持60帧的FPS即可使应用流畅。在Android中我们可以通过官方的Choreographer这个类来获取测量流畅度的相关数据,进而可以得出当前APP的流畅度。步骤3,响应于APP运行错误,收集系统抛出来的异常信息。如图7所示,异常信息收集的过程:31)响本文档来自技高网...

【技术保护点】
1.一种Android应用性能监控统计方法,其特征在于:包括以下步骤,响应于APP启动,对系统进行自检;响应于APP运行,对网络和屏幕进行监控;响应于APP运行错误,收集系统抛出来的异常信息。

【技术特征摘要】
1.一种Android应用性能监控统计方法,其特征在于:包括以下步骤,响应于APP启动,对系统进行自检;响应于APP运行,对网络和屏幕进行监控;响应于APP运行错误,收集系统抛出来的异常信息。2.根据权利要求1所述的一种Android应用性能监控统计方法,其特征在于:系统自检的过程为,响应于APP启动,开始启动计时,同时启动界面;检测系统环境;检测结束后停止启动计时,若检测信息无异常,则将检测信息记录到运行日志中,同时通知界面跳转到主界面;若检测信息有异常,则将检测信息记录到运行日志中,提示用户是否上传运行日志。3.根据权利要求2所述的一种Android应用性能监控统计方法,其特征在于:检测信息包括屏幕信息、网络信息、手机硬件信息、系统信息和权限信息。4.根据权利要求1所述的一种Android应用性能监控统计方法,其特征在于:网络监控的过程为,响应于请求网络,开始网络监控计时,同时发出请求信息;若在预设的时间内有返回值,则接收到返回值时停止网络监控计时,将网络连接类型、请求信息和返回时间记录到运行日志中;若在预设的时间内有返回值,则将网络连接类型和请求信息记录到运行日志中,提示用户是否上传运行日志。5.根据权利要求1所述的一种Android应用性能监控统计方法,其特征在于:屏幕监控的过程为,触发界面跳转;响应于第一个界面onStop(),开始屏幕监控计时;...

【专利技术属性】
技术研发人员:赵竟朱海东孙峰胡银华卜黔宁
申请(专利权)人:国电南京自动化股份有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1