欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~

作者:姚志锋

一、Hugo插件 —— 打印方法运行时间

首先申明下,此Hugo非 彼Hugo(Hugo是由Go语言实现的静态网站生成器)。

Hugo插件作用 :

  • 能够计算并打印一个方法的输入参数和函数的运行时间

  • Hugo插件应用场景:

  • 处理Android 应用卡顿问题

(1)先看实例

1)在对应方法处标注@DebugLog

SearchResultPanel::dispatchResult处标记@DebugLog

2)Hugo插件计算的运行时间

Hugo插件计算的运行时间

第一行:打印执行方法及其参数

第二行:方法执行时间

3)常规日志打印运行时间

常规日志打印运行时间

(2)Hugo 插件配置

1)在buildscript 的dependencies中添加依赖地址

classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'

2)apply插件

applyplugin:'com.jakewharton.hugo'

3)使用开关配置

方式一 :

hugo {

enabled false

}

方式二 :

Hugo.setEnabled(true|false)

备注 :How to use Hugo.setEnabled(true)?(暂时好像还不行)

Hugo插件详细资料可参考 : Hugo插件 Github 地址

二、Godeyes 插件 —— Crash隐患扫描工具

Godeyes是一款专门针对无线APP代码Crash隐患的静态扫描工具,能够对Android 和 iOS 两个平台代码进行检查,同时支持Mac 、Windows、Linux三种操作系统。

扫描规则源自项目crash案例代码分析,扫描准确率高达90%以上,针对Android 应用,Godeys已经提供了Android Studio 插件版本。

(1)Godeyes 插件配置

1)Godeyes配置项

配置输出报告格式类型、编码格式、输出路径 (可配置到RDM输出)

Godeyes配置项

2)扫描规则配置

扫描规则配置

3)白名单配置

详情可参照 :Godeyes 使用说明

(2)其他静态扫描工具

Android 代码规范神器 CheckStyle使用全面解析

代码缺陷扫描神器——FindBugs

三、Activity Tracker —— 显示栈顶Activity信息

(1)背景介绍

在日常需求开发中,经常碰到不太熟悉的模块,如何快速定位相应页面?一般有以下几张方式:

1)根据项目中的模块划分及命名,在项目目录中搜寻;

2)使用UI Automator Viewer 工具定位所在模块页面某个控件

UI Automator Viewer 工具定位

缺点:项目中不是所有控件在xml中都写上了android:id ,特别是组里现在使用databinding后。

3)使用 adb 工具

查看当前Activity :adb shell "dumpsys window w | grep name="

其他相关操作:

查看当前栈顶的Activity :adb shell dumpsys activity | grep "mFocusedActivity"

查看当前栈顶的Activity的Fragment :adb shell dumpsys activity your.package.name

(2)Activity Tracer App

在这里介绍一种更为简便的工具查看栈顶Activity,Activity Tracer ,是一个查看栈顶Activity的简易App工具。

使用效果如下 :

专辑详情页

相关地址:

四、开发助手 —— 方便切换开发者配置

开发助手 —— Trinea 大神佳作,在此不过多介绍,详情请看:Android 应用开发调试利器——开发助手,数十倍效率提升

开发助手主界面

【有奖讨论】那些年坑过你的编程问题?参与讨论有机会获得 Cherry 黑轴机械键盘 点击查看详情

 欢迎加入QQ群:374933367,与腾云阁原创作者们一起交流,更有机会参与技术大咖的在线分享!

相关阅读

程序员要拥抱变化,聊聊Android即将支持的Java
Android开发入门的正确姿势
Gradle构建-从Eclipse到Studio介绍篇


此文已由作者授权腾讯云技术社区发布,转载请注明文章出处
原文链接:https://www.qcloud.com/community/article/439099
获取更多腾讯海量技术实践干货,欢迎大家前往腾讯云技术社区

Android 开发—— 小工具,大效率的更多相关文章

  1. Android 开发小工具之:Tools 属性 (转)

    Android 开发小工具之:Tools 属性 http://blog.chengyunfeng.com/?p=755#ixzz4apLZhfmi 今天来介绍一些 Android 开发过程中比较有用但 ...

  2. android 开发小工具收集

    http://blog.csdn.net/tikitoo/article/details/51089422

  3. Android开发常用工具汇总

    Android开发常用工具汇总,本文章不断更新完善 一.数据库小工具Sqlite Developer  SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的, ...

  4. android 桌面小工具(Widget)开发教程

    刚学做了哥Widget,感觉不错哦,先来秀下效果(用朋友手机截的图) 这个Widget会每隔5秒钟自动切换内容和图片,图片最好使用小图,大图会导致你手机桌面(UI)线程卡顿 教程开始: 1.首先创建一 ...

  5. 使用Visual Studio进行 Android开发的十大理由

    [原文发表地址]Top 10 reasons to use Visual Studio for C++ Android Development! Visual Studio: C++跨平台的移动解决方 ...

  6. Android 性能测试小工具 Emmagee

    Emmagee 是一个性能测试小工具 用来监控指定被测应用在使用过程中占用机器的CPU, 内存,流量资源的性能小工具 Emmagee 介绍 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的 ...

  7. [Android Memory] Android性能测试小工具Emmagee

    转载:http://blog.csdn.net/anlegor/article/details/22895993 Emmagee是网易杭州QA团队开发的用于测试指定android应用性能的小工具.该工 ...

  8. Android 开发常用工具合集

    在 Android 开发中经常使用到的小功能,用于记录开发的那些事^_^ 1. 获取 release 和 debug 版本的 SHA1 public static String getSHA1(Con ...

  9. 2016 Web开发资源工具大搜罗

    来源于:https://zhuanlan.zhihu.com/p/22730771 作者:余博伦链接:https://zhuanlan.zhihu.com/p/22730771来源:知乎著作权归作者所 ...

随机推荐

  1. sass.scss简单入门

    最近研究了一下sass和scss,清晰结构化,在某些地方的确强大,所以写了一篇入门教程,大概15分钟左右就能明白基本原理 什么是sass(css预处理器) Sass官网上是这样描述sass的,sass ...

  2. 获取VB类模块成员函数指针(转)

    最近在做一些VB6.VBA的项目,被如何获取类模块中的函数指针这个问题所困扰,收集整理后,有2分资料值得收藏,特将关键部分留存,以备后续查找. 参照连接1:http://www.cnblogs.com ...

  3. 老李谈HTTP1.1的长连接 1

    老李谈HTTP1.1的长连接   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:9088214 ...

  4. 老李分享:为何要使用 Web Services

    老李分享:为何要使用 Web Services   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询q ...

  5. (转)Java ConcurrentModificationException异常原因和解决方法

    转载自:http://www.cnblogs.com/dolphin0520/p/3933551.html 在前面一篇文章中提到,对Vector.ArrayList在迭代的时候如果同时对其进行修改就会 ...

  6. 【Android】基于TCP协议的网络通信

    1.使用ServerSocket 创建TCP服务器端: ServerSocket server; try { server = new ServerSocket(8000); while (true) ...

  7. STM32固件库文件分析

    STM32固件库文件分析 1.汇编编写的启动文件 startup/stm32f10x.hd.s:设置堆栈指针,设置pc指针,初始化中断向量,配置系统时钟,对用c库函数_main最后去c语言世界里. 2 ...

  8. 原生态JS实现banner图的常用所有功能

    虽然,用jQuery实现banner图的各种效果十分简单快捷,但是我今天用css+js代码实现了几个banner图的常用功能,效果还不错. 此次,主要想实现以下功能: 1. banner图循环不间断切 ...

  9. VS2015下OpenGL库的配置

    写在前面: 最近要用到OpenGL,光是在VS2015下配置就费了很大的劲,现在将我的成果直接贡献给大家,希望能为需要在VS2015下配置OpenGL的读者省去一些麻烦. 正文: 资源地址1:http ...

  10. java中创建对象中使用默认构造函数的注意点

    public class Test3 {   private int n;   Test3() {      System.out.println("调用默认构造器");   }  ...