android开发 修改标题栏背景_Android哆啦A梦调试工具体验
滴滴开发调试工具(https://github.com/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的目录页。
android开发 修改标题栏背景_Android哆啦A梦调试工具体验相关推荐
- android开发 修改标题栏背景_android开发修改状态栏背景色和图标颜色
修改状态栏背景色和图标颜色 默认是黑底白字的,现在要改为白底黑字的 先看下效果图: Screenshot_2018-01-03-19-20-27-797_com.yiban1314..png 1.状态 ...
- android开发 修改标题栏背景_移动开发整体凉凉的背景下,究竟还剩哪些 Android热门前沿知识...
1. Android架构设计模式 MVC架构设计模式:MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写. MVP架构 ...
- Android设置状态栏字体深色,Android实现修改状态栏背景、字体和图标颜色的方法...
搜索热词 前言: Android开发,对于状态栏的修改,实在是不友好,没什么api可以用,不像ios那么方便.但是ui又喜欢只搞ios一套.没办法.各种翻源码,写反射.真的蛋疼. 需求场景: 当too ...
- Android开发,使用背景图(xml drawable)为view 设置边框
Android 开发中,遇到需要设置边框的情景,使用背景图来实现,代码如下: <layer-list xmlns:android="http://schemas.android.com ...
- Android开发:设置背景图片
在Android开发中,设置背景图片是一个既简单又常用的方法,由于本人现在需要同时做Android开发,所以Android的开发技能也要不断学习储备,不仅是为了给老板省钱,也是为了增加自己的竞争力.那 ...
- Android Studio修改标题栏颜色和APP图标
一.修改标题栏颜色 1.在value的colors.xml文件夹中添加自定义颜色 <color name="myColorWhite">#FFFFFF</colo ...
- android开发 修改标题栏背景_基于.NET的APP开发方式中MobileForm的使用smobiler
样式一 一. Toolbar 1. 目标样式 我们要实现上图中的效果,需要如下的操作: 2. 修改属性 a. 修改Mobile Form的Toolbar属性 获取窗体底部工具栏,打开集合编辑器,并点击 ...
- android开发 修改标题栏背景_更改标题栏(Android)中的文字和背景颜色?
我构建了一个 Android应用程序,我正在尝试更改标题的栏背景和文本颜色. 在AndroidManifest.xml中: ... android:theme="@style/ThemeSe ...
- android studio 修改包名_android逆向笔记之初学者常用adb命令
android逆向常用命令笔记 1.如何导出已安装apk? a.列出已经安装的包 | grep -i 关键字 b.找出安装路径 adb shell pm path 包名 c.拉下来: adb pull ...
最新文章
- 谷歌、亚马逊、微软、IBM…这些巨头都已如何通过AI赚到钱了?
- 为什么 Python 的 Range 要设计成左开右闭区间?
- sap 状态栏添加竖线
- ActionContext_、ValueStack、Stack_Context关系
- 超励志!从中专生到教授,他32岁成为国家杰青!
- 在keil uVision 2/uVision 3下使用伟福系列仿真器的方法:
- mysql 结果倒置_菜鸟 问下PHP取出MYSQL数据,然后倒置顺序
- Python Web开发框架Django
- 20200527每日一句
- linux shell脚本 main,Linux shell启动Java Main函数脚本
- 363.矩形区域不超过K的最大数值和
- matlab仿真脉冲响应函,Matlab仿真下的动态响应分析
- 北大AI公开课笔记整理
- 响应式网页设计_响应式网页设计中的常用技术
- 写一段潮汐调和分析的matlab代码
- 博士申请 | 华东师范大学张凯教授课题组招收图神经网络方向博士生
- (十)Scratch制作《贪吃蛇》,超详细
- css样式被覆盖解决方案
- 用Assimp模型加载库加载一个Crytek的游戏孤岛危机(Crysis)中的原版纳米装(Nanosuit)
- AMESim2020.1仿真编译失败解决方法之一