200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > android开发 修改标题栏背景_Android哆啦A梦调试工具体验

android开发 修改标题栏背景_Android哆啦A梦调试工具体验

时间:2019-07-28 17:48:50

相关推荐

android开发 修改标题栏背景_Android哆啦A梦调试工具体验

滴滴开发调试工具(/didi/DoraemonKit)是滴滴开源的一款功能齐全的客户端( iOS 、Android )研发助手

是什么

用图说话,这个调试工具其实就是一个超级工具箱,适合研发、测试、视觉等团队使用的一个内测工具集,它不适合在线上环境使用,或者需要经过改造和精简后才能在线上使用。

我们目前在安卓的debug版本(主要针对研发)和Jenkins上的feature和release上的版本启用了这个工具(适合非研发),而发布版本不启用(也不包含这部分代码)。Jenkins上是通过一个构建参数来控制的,研发也可以在gradle.properties修改同名参数在非debug启用调试工具。

我们看到的APP需要悬浮框权限是这个调试工具使用的,正式的APP是不需要悬浮框权限的。

能做什么

常用工具

APP信息:简单的查看系统信息,包括系统版本、硬件环境、APP权限等,方便研发复现环境;沙盒浏览:简单的文件管理,研发可快速查看APP的缓存文件;MockGPS:在室内开发环境没有GPS信号的情况模拟定位进行初期调试,避免到室外晒太阳;H5任意门:需要研发扩展支持,输入url打开web页,用于调试h5页面,可实现类似我们的H5集成Demo APP的效果;Crash查看:记录上一次闪退日志,和我们RN有点不一样,是原生的闪退;清除本地数据:清除所有缓存,避免缓存影响,类似重装APP;日志查看:简单的Logcat日志查看,可以简单的日志级别和关键字过滤,适合在没有开发环境下看log;

性能检测

帧率、CPU、内存:数据都不是很准确,仅供参考,研发的开发环境这些数据更准确。帧率会比实际的低一些,因为这个调试工具本身也有性能开销。流量监控:内置的抓包工具,需要研发添加上支持,提供波形图展示、流量概要展示、流量列表展示、流量筛选、流量详情,对流量信息统一拦截;卡顿检测:锁定App出现卡顿的时刻,打印出对应的代码调用堆栈,主要是主线程卡顿,而RN是在独立线程中,这种卡顿这个工具检测不出来;耗时:主要是指原生Activity的跳转耗时,我们目前是单页面应用,不存在原生页面跳转;而首次启动耗时,因为启动的时候这个工具还没初始化;而我们RN APP耗时主要不在于Activity的启动,而在于RN环境的初始化,所以这个工具对我们目前APP没什么用。RN耗时我们已经通过log打印出来,作为参考,可以在日志查看里面筛选出来。

视觉工具

主要是给视觉验收用的。

取色器:类似于PC的截图工具可以查看像素颜色,研发有没有按视觉给的颜色开发,看一眼就知道。原理是截图并提取像素颜色。对齐工具:测量元素对齐的,图标按钮有没有对齐,标题栏高度有没有偏差,差了一丢丢都能测出来。控件检查:简版的DDMS和Appium里面的导出布局工具,这里通过手指滑动就能查看对应组件的宽高等信息。但因为我们是RN APP,这里提取不到View的id和背景颜色。布局边框:把View的轮廓高亮显示,查看View的边框线。但是它的实现不兼容RN APP,主要是画边框线的方式,会导致闪退,所以对我们目前的APP没用。

还能做什么

哆啦A梦的工具都是可以定制或者自定义扩展的。

比如上面的日志查看功能不好用,日志刷刷刷盖过去了,日志无效信息太长了,日志要点进去才能看等等,那么,理论上也可以改造成直接悬浮框显示的,可以更高级的过滤,可以暂停日志之类的。

除了以上通用的内置组件,我们也可以根据业务需要和实际场景设计一下自定义工具,比如下面这个滴滴APP使用的业务扩展,像环境切换之类的。

回到我们的APP,我们可以做什么?

比如性能埋点开关,打开后能开启性能埋点,本地收集打开模版的耗时信息,方便定位客户问题,又不影响正式的生产环境;比如插件调试管理,调试阶段本地可以安装和卸载APP插件,而不用到Jenkins打包插件再去服务器安装;比如原生化内测阶段,可以通过开关测试纯原生和纯RN的目录页。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。