android监控方法耗时开源库,【开源完整项目】 AndroidGodEye 监控Android数据指标
AndroidGodEye
Android开发者在性能检测方面的工具一直比较匮乏,仅有的一些工具,比如Android Device Monitor,使用起来也有些繁琐,使用起来对开发者有一定的要求。而线上的App监控更无从谈起。所以需要有一个系统能够提供Debug和Release阶段全方位的监控,更深入地了解对App运行时的状态。
概览
AndroidGodEye是一个可以在PC浏览器中实时监控Android数据指标(比如性能指标,但是不局限于性能)的工具,你可以通过wifi/usb连接手机和pc,通过pc浏览器实时监控手机性能。
系统分为三部分:
Core 核心部分,提供所有模块
Debug Monitor部分,提供Debug阶段开发者面板
Toolbox 快速接入工具集,给开发者提供各种便捷接入的工具
AndroidGodEye提供了多种监控模块,比如cpu、内存、卡顿、内存泄漏等等,并且提供了Debug阶段的Monitor看板实时展示这 些数据。而且提供了api供开发者在release阶段进行数据上报。
快速开始
STEP1
引入依赖,使用gradle
dependencies {
implementation 'cn.hikyson.godeye:godeye-core:VERSION_NAME'
debugImplementation 'cn.hikyson.godeye:godeye-monitor:VERSION_NAME'
releaseImplementation 'cn.hikyson.godeye:godeye-monitor-no-op:VERSION_NAME'
implementation 'cn.hikyson.godeye:godeye-toolbox:VERSION_NAME'
}
VERSION_NAME可以看github的release名称
STEP2
模块安装,GodEye类是AndroidGodEye的核心类,所有模块由它提供。
在应用入口安装所有模块:
GodEye.instance().installAll(getApplication(),new CrashFileProvider(context))
推荐在application中进行安装
可选部分
不需要的时候卸载所有模块:
GodEye.instance().uninstallAll();
如果不想要所有的模块,你也可以自己安装想要的模块,比如GodEye.instance().cpu().install()
注意:network和startup模块不需要安装和卸载
安装完之后相应的模块就开始输出数据了,一般来说可以使用模块的consume方法进行消费,比如cpu模块:
GodEye.instance().cpu().subject().subscribe()
就像我们之后会提到的Debug Monitor,也是通过消费这些数据进行展示的
STEP3
Debug面板安装,GodEyeMonitor类是AndroidGodEye的Debug监控面板的主要类,用来开始或者停止Debug面板的监控。
开始消费GodEye各个模块数据并输出到Debug面板:
GodEyeMonitor.work(context)
结束消费,关闭Debug面板:
GodEyeMonitor.shutDown()
STEP4
完成!开始使用:
手机与pc连接同一网段,在pc浏览器中访问手机ip+端口。或者如果你是用USB连接的话,执行adb forward tcp:5390 tcp:5390,然后pc浏览器中访问http://localhost:5390/。
即可看到Debug面板!
端口默认是5390,也可以在GodEyeMonitor.work(context)中指定,一般在开发者在调用GodEyeMonitor.work(context)之后可以看到日志输出 'Open AndroidGodEye dashboard [ http://xxx.xxx.xxx.xxx:5390" ] in your browser...' 中包含了访问地址。
好吧,如果你懒得自己编译这个项目的话,你也可以先下载 APK 看看效果。
Debug开发者面板
点击下面预览↓
Base info
卡顿检测
内存泄漏检测
更多模块
还有更多...
模块详情
模块名需要安装数据引擎数据生产时机
cpu是内置定时
battery是内置定时
fps是内置定时
leakDetector是内置发生时
heap是内置定时
pss是内置定时
ram是内置定时
network否外部驱动-
sm是内置发生时
startup否外部驱动-
traffic是外部驱动定时
crash是外部驱动安装后,一次性
thread dump是内置定时
deadlock是内置定时并发生时
框架
下图可以更清楚地解释AndroidGodEye是如何工作的:
许可协议
AndroidGodEye使用 Apache2.0 许可协议。
关于我
android监控方法耗时开源库,【开源完整项目】 AndroidGodEye 监控Android数据指标相关推荐
- android 日历翻页动画,Android开源库合集:轻松实现Android动态,炫目:日历效果...
前言: 了解过那种动态,炫目的日历效果吗?你知道是怎么 操作的嘛?是否想过,用UI就可以实现,对,也许你说的对,不过UI只是都是动态效果的一部分.那么今天用Annroid开源库,来告诉你android ...
- android开源库 droidlib,十二大最著名的Android播放器开源项目
1.ExoPlayer https://github.com/google/ExoPlayer ExpPlayer是一个开源的,App等级的媒体API,它的开源项目包含了library和示例: - 这 ...
- iOS开源资源汇总(完整项目,三方,博客,视频)长期更新
下边都学会就大神了: 声明:都是网上搜集的,能标明出处的都标了.别只搜集而不看,与君共勉.. 先看完整项目完整App@HackerNews-React-Native用 React Native 完成的 ...
- 推荐一款Python开源库,技术人必备的造数据神器!
1. 背景 在软件需求.开发.测试过程中,有时候需要使用一些测试数据,针对这种情况,我们一般要么使用已有的系统数据,要么需要手动制造一些数据.由于现在的业务系统数据多种多样,千变万化.在手动制造数据的 ...
- jrtplib开源库系列之三:jrtplib发送接收数据流程
说明 前面2篇文章主要说明了如何安装jrtplib库,以及对example1进行了说明,这篇文章主要说下jrtplib库数据的收发流程. 数据收发流程 从例子1就可以很好的说明jrtplib的使用是非 ...
- 【Android 安全】DEX 加密 ( 代理 Application 开发 | 项目中配置 OpenSSL 开源库 | 使用 OpenSSL 开源库解密 dex 文件 )
文章目录 一.项目中配置 OpenSSL 开源库 二.OpenSSL 开源库解密参考代码 三.解密 dex 文件的 Java 代码 四.解密 dex 文件的 Jni 代码 参考博客 : [Androi ...
- android 自定义banner,Android项目 引入Banner开源库(轮播图)
Banner开源库是什么? Banner 是 Android广告图片轮播控件,内部基于ViewPager2实现,Indicator和UI都可以自定义. 怎么使用 Banner 开源库? 1.在项目\a ...
- 最新Android开源库、工具、开源项目整理分享
热文导读 | 点击标题阅读 金九银十跳槽季如何进阶找到合适满意的工作? Android 进阶/面试 重难点 要来了!国内安卓统一推送标准将于今年3月开启测试 作者:lovesosoi 来源:https ...
- Android炫酷的3D球型标签云开源库 3dTagCloudAndroid 的使用
Android炫酷的3D球形标签云开源库 3dTagCloudAndroid 的使用 文章目录 Android炫酷的3D球形标签云开源库 3dTagCloudAndroid 的使用 学习过程 使用体会 ...
最新文章
- 【Linux】 Samba 服务器安装配置实现与Windows系统的文件共享服务
- hdu 1874 Dijkstra算法模板
- CompletableFuture介绍
- 计算机软考网络管理员题,2020年计算机软考网络管理员考前测试题及答案
- 自动化测试神器 之 python unittest 断言
- 给即将步入大学的学子们的一封信
- unity游戏开发之打包apk谷歌上架报错总结
- linux中ipa服务器搭建,Mac搭建内网服务器无线安装ipa包
- 想在美国开餐厅?想招人?顶级餐饮经营锦囊,300个餐饮人等你来撩!
- MATLAB :xlim 、 ylim 、zlim简介
- 阿里云又送Apsara定制T恤了 – 附答案
- 联合索引(各种索引)
- Rocket Chip 介绍
- jsp+ssh2+mysql实现的CRM客户关系管理系统
- python经理培训
- 网狐、6878、EWIN后台管理员帐号密码 对应数据库表
- TensorFlow2.x 常用知识
- 机器学习 深度学习 神经网络 图像处理优质博客整理
- 【大数据】【Spark】Spark核心编程(一)RDD概述
- Non-Salient Region Object Mining for Weakly Supervised Semantic Segmentation
热门文章
- c++ 按行读取txt文件并赋值_python操作txt文件中数据教程[3]python读取文件夹中所有txt文件并将数据转为csv文件...
- POJ-3061 Subsequence 二分或尺取
- Windows Server 2016 Technical Preview 4 (x64) 简体中文版下载!
- python3安装pip3的方法
- 黑客勒索遭遇霸气回应:不怕,我们有备份
- asp.net core 依赖注入问题
- 主题列表,有时间整理成博客
- DEDE_5.7星星评分插件首发!
- 研究cegui,写脚本
- 密钥--公钥、私钥方式