Android 常用的开发工具记录。其中包括AndroidStudio(IDEA)插件、Mac 上好用的软件以及国内知名Android开发者博客等。

Android Studio 插件

  1. codota 插件,提供高质量的Android代码片段搜索,官方网站codota官网

Android 网站

  1. Android Developer Androuid 官网,不解释。
  2. AndroidDevTool 国人维护的Android开发工具的整理。
  3. Android Arsenal 各种各样的Android开源库的推荐。
  4. Android Weekly Android周报,干货集锦。
  5. Stack Overflow StackOverflow 能查到的问题,那就不是问题。
  6. Material Design Material Design 设计规范。
  7. Trinea Trinea前辈的博客。
  8. GrepCode 所有版本的Android源码以及其他著名项目源码。
  9. AndroidXREF 所有版本的Android源代码的在线阅读。
  10. SearchCode 搜索代码示例
  11. CodePath Android 知识点的入门教程。
  12. Android Training 中文版
  13. Android Api Guide 中文版
  14. Android Design 中文版
  15. Appance 各种AndroidUI设计风格。
  16. Android Libraries and Resources
  17. AndroidElementals 各种Android开源View 组件。
  18. android经典开源代码分享
  19. Android 源码解析
  20. awesome-android 各种Android开元项目集合。
  21. Android开发周报中文版
  22. Android开发者博客汇总
  23. GitHub Android大神汇总
  24. ImportNew Java 资讯
  25. 技术小黑屋
  26. 代码家
  27. Android Cool Posts
  28. Android开源项目分类汇总—Trinea
  29. 美团技术团队
  30. Google Java编程风格指南中文版
  31. Android Gradle 使用指南
  32. Developing Android Apps 国外某位大神的Android 开发教程
  33. free-programming-books 一大堆英文编程书籍的推荐

Android 系统性能调优工具

TraceView

Traceview是Android平台特有的数据采集和分析工具,它主要用于分析Android中应用程序的hotspot。Traceview本身只是一个数据分析工具,而数据的采集则需要使用Android SDK中的Debug类或者利用DDMS工具。

Systrace

Systrace是Android4.1中新增的性能数据采样和分析工具。它可帮助开发者收集Android关键子系统(如surfaceflinger、WindowManagerService等Framework部分关键模块、服务)的运行信息,从而帮助开发者更直观的分析系统瓶颈,改进性能。

Systrace的功能包括跟踪系统的I/O操作、内核工作队列、CPU负载以及Android各个子系统的运行状况等。

Oprofile

Oprofile是另一个功能更强大的性能数据采集和分析工具,其工作原理如下:

  • 它利用性能计数器(Performance Counter)或者定时器(针对kernel不支持性能计数器的情况),通过连续的采样获得统计数据,从而对内核和用户空间进程进行性能分析。

  • 以性能计数器为例,在系统运行过程中,当某个事件发生时,对应的性能计数器就会自加。当达到计数器的设定值时会产生一个中断。Oprofile驱动利用这个中断来进行采样统计。通过获取中断发生时PC指针的值以及内核中保存运行的任务的信息等,并把它们转化成对测评有用的数据。

  • Oprofile包括内核驱动和用户空间工具两个部分,其中:

  • 内核驱动实现了一个oprofilefs虚拟文件系统。它挂载到/dev/oprofile,用来向用户空间报告数据和接收来自用户空间的设置。它是用户空间进程与内核通信的桥梁。驱动中还包括了与架构相关和通用的驱动,通过它们访问性能计数器寄存器、收集数据后报告给用户空间。守护进程用户从内核接收数据并保存在磁盘上以备分析使用。

  • 在用户空间提供了两个工具:oprofiled(作为守护进程在后台通过和/dev/oprofile交互以获取驱动收集的数据)、opcontrol(用户操作的控制工具,它通过读写oprofilefs来控制采样相关的设置)。

Hierarchy Viewer

这个工具可以帮助开发者调试、优化用户界面。它可以为App的用户界面结构生成一个图形的展示方式,并且提供了显示的放大功能。

Android DDMS

在Android开发工具包当中有一个调试工具,Dalvik Debug Monitor Server (DDMS)。这个工具提供了端口转发,截屏,堆栈,进程信息,日志,信号状态信息,模拟来电,短信,模拟地理位置信息等。

Zipalign

这个工具可以优化Android程序文件(.apk)。这个工具的原理是能够将所有非压缩的数据按照4个字节的边界对齐。

Android测试工具

Android Test Kit

Android Test Kit 是一组 Google 开源测试工具,用于 Android 平台,包含 Espresso API 可用于编写简洁可靠的 Android UI 测试。

AndroidJUnit4

AndroidJUnit4 是一个让 JUnit 4 可以直接运行在 Android 设备上的开源命令行工具。

Appium

Appium 是一个开源、跨平台的自动化测试工具,用于测试原生和轻量移动应用,支持 iOS, Android 和 FirefoxOS 平台。Appium 驱动苹果的 UIAutomation 库和 Android 的 UiAutomator 框架,使用 Selenium 的 WebDriver JSON 协议。

Calabash-android

calabash-android 是一个基于 Cucumber 的 Android 的功能自动化测试框架。Calabash 允许你写和执行,是开源的自动化移动应用测试工具,支持 Android 和 iOS 原生应用。Calabash 的库允许原生和混合应用的交互测试,交互包括大量的终端用户活动。Calabash 可以媲美 Selenium WebDriver。但是, 需要注意的是 web 应用和桌面环境的交互跟触摸屏应用的交互是不同的。Calabash 专为触摸屏设备的原生应用提供 APIs。

Monkey

Monkey 是 Google 开发的 UI/应用测试工具,也是命令行工具,主要针对压力测试。你可以在任意的模拟器示例或者设备上运行。Monkey 发送一个用户事件的 pseudo-random 流给系统,作为你开发应用的压力测试。

MonkeyTalk

MonkeyTalk 是世界上最强大的移动应用测试工具。MonkeyTalk 自动为 iOS 和 Android 应用进行真实的,功能性交互测试。MonkeyTalk 提供简单的 “smoke tests”,复杂数据驱动的测试套件。MonkeyTalk 支持原生,移动和混合应用,真实设备或者模拟器。MonkeyTalk 使得场景捕获非常容易,可以记录高级别,可读的测试脚本。同样的命令可以用在 iOS 和 Android 应用上。你可以记录一个平台的一个测试,并且可以在另外一个平台回放。MonkeyTalk 支持移动触摸和基于手势交互为主的移动体验。点击,拖拽,移动,甚至是手指绘制也可以被记录和回放。

NativeDriver

NativeDriver 是 WebDriver API 的实现,是原生应用 UI 驱动,而不是 web 应用。

Robolectric

Robolectric 是一款Android单元测试框架,使用 Android SDK jar,所以你可以使用测试驱动开发 Android 应用。测试只需几秒就可以在工作站的 JVM 运行。Robolectric 处理视图缩放,资源加载和大量 Android 设备原生的 C 代码实现。Robolectric 允许你做大部分真实设备上可以做的事情,可以在工作站中运行,也可以在常规的 JVM 持续集成环境运行,不需要通过模拟器。

RoboSpock

RoboSpock 是一个开源的 Android 测试框架。提供简单的编写 BDD 行为驱动开发规范的方法,使用 Groovy 语音,支持 Google Guice 库。RoboSpock 合并了 Robolectric 和 Spock 的功能。

Robotium

Robotium 是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长 按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测 试。另外,Robotium 4.0版本已经支持对WebView的操作。Robotium 对Activity,Dialog,Toast,Menu 都是支持的。

UIAutomator

uiautomator 测试框架提高用户界面(UI)的测试效率,通过自动创建功能 UI 测试示例,可以在一个或者多个设备上运行你的应用。

Selendroid

Selendroid 是一个 Android 原生应用的 UI 自动化测试框架。测试使用 Selenium 2 客户端 API 编写。Selendroid 可以在模拟器和实际设备上使用,也可以集成网格节点作为缩放和并行测试。

Spoon

可用于android不同机型设备自动化测试,能将应用apk和测试apk运行在不同机器上并生成相应测试报告。
项目地址:https://github.com/square/spoon

Android FEST

提供一些列方便的断言,可用于提高编写Android自测代码效率
项目地址:https://github.com/square/fest-android

Android 推送

  1. 百度云推送
  2. 个推推送
  3. 极光推送
  4. 友盟推送
  5. 腾讯信鸽推送
  6. 小米推送
  7. 友推
  8. 华为推送
  9. 云巴消息推送
  10. 魔泊网
  11. DDPush任意门推送

Android 数据统计

  1. 友盟统计分析
  2. 百度移动统计
  3. TalkingData
  4. Google Analytics统计服务
  5. LeanCloud统计
  6. CNZZ移动统计
  7. 机锋统计
  8. Flurry Analytics

Androd 常用渠道

  1. 百度手机助手
  2. 豌豆荚移动应用商店
  3. 优亿市场
  4. 应用汇
  5. 应用汇
  6. 360手机助手
  7. 安智市场
  8. 腾讯应用宝
  9. 91助手
  10. 安卓市场
  11. 木蚂蚁应用市场
  12. Google Play
  13. 机锋市场

Mac软件推荐

  1. Dash ,文档搜索工具,配合Alfred使用,可以快速查看API文档。
  2. Alfred,效率工具,功能较SpotLight更为强大。
  3. SourceTree,Mac上好用的Git管理工具,方便的管理Git仓库。
  4. CleanMyMac,强大的系统清理工具,可以清理系统垃圾并卸载App。
  5. Pocket,稍后阅读。
  6. Atom,GitHub出品的强大文本工具。
  7. Unibox,邮件客户端,基于用户名称管理邮件。
  8. Parallels Desktop,虚拟机,性能彪悍,功能强大。
  9. OneNote,微软良心产品,笔记工具。
  10. 印象笔记,知识管理工具。
  11. 马克飞象 好用的 MarkDown 编辑工具,可以将笔记同步到印象笔记。
  12. Kindle,亚马逊电子书阅读器。

变更记录

  • 2015年07月12日 初稿撰写。将自己收藏夹中的一些常用资源进行整理。
  • 2015年07月15日 增加部分Android相关工具网站,包括推送、数据统计以及上线渠道等。

参考文献以及版权说明

肥肥在数据整理过程中,参考了大量来自知乎、CSDN、博客园等知名网站、肥肥在工作中的笔记以及大量国内外个人博客,谨在此向这些为了Android发展做出贡献的前辈们致以最高的敬意。

肥肥尽最大的努力查找所参考资料的原始出处,并在后文以参考文献的方式列出。由于人力有限,并不能完全的列出资料的原始出处,如有侵犯到您的权利,还望告知。

  • AndroidDevToold

Android 开发常用网址和工具相关推荐

  1. Android开发常用工具类集合

    转载自:https://blog.csdn.net/xiaoyi_tdcq/article/details/52902844 Android开发常用工具类集合 android开发中为了避免重复造轮子, ...

  2. 【BX学习之常用网址】 开发常用网址

    █ [BX学习之常用网址] 开发常用网址 █ 相关文章: - ● [BX学习之生活问题] 福建工商-个体户-工商年报-登录方式 ● [BX学习之生活健康]你的年纪每天睡几小时最好 ● [BX学习之无线 ...

  3. android系列:第一篇 android开发常用命令集合,代码目录简介

    下面整理了android开发常用命令集合如adb命令,adb over wifi,jgrep等代码搜索命令,编译环境变量配置,lunch平台选择,mm模块编译,godir代码路径跳转,log.v()等 ...

  4. Android开发常用开源库

    Android 开发常用开源库 一.网络请求 二.图片加载 三.数据库 四.通讯 五.注解 六.JSON解析 七.性能优化 八.性能优化之布局分析 九.工具类 十.状态栏 十一.扫码库 十二.播放器 ...

  5. Android开发常用软件

    shankes 博客访问链接: CSDN :shankes的博客 简书 : shankes 码云:shankes.gitee.io github:sankes.github.io Android开发常 ...

  6. Android开发常用功能 https://www.2cto.com/kf/201611/561847.html

    Android开发常用功能 2016-11-03 09:43:58          来源:EvanJames的专栏 收藏   我要投稿 1.定时器的实现 (1)采用Handler的postDelay ...

  7. Android开发-HUAWEI DevEco Studio工具

    Android开发-HUAWEI DevEco Studio工具 前言 相同 不同 缺点 下载 结语 前言 我们进行Android开发的工具通常有Eclipse.IDEA和Android studio ...

  8. android开发常用的颜色值

    android 开发常用颜色值 AA 指定透明度. 00 是完全透明. FF 是完全不透明.超出取值范围的值将被恢复为默认值. ffff00 ffff33 ffff66 ffff99 ffffcc f ...

  9. android开发监听媒体播放器,Android开发之媒体播放工具类完整示例

    本文实例讲述了Android开发之媒体播放工具类.分享给大家供大家参考,具体如下: package com.maobang.imsdk.util; import android.media.Media ...

最新文章

  1. 设计模式学习笔记清单
  2. pytorch笔记 pytorch模型中的parameter与buffer
  3. python将大于输出列表_python找出列表中大于某个阈值的数据段示例
  4. 关于IE 对 $.get 缓存的记录
  5. 谷歌入职邮件_为什么我全职学习了8个月以接受Google采访
  6. opencv3-Mat对象
  7. *第十五周*数据结构实践项目一【验证哈希表及其算法】
  8. PHP第一天 ① 重置端口命令 netsh winsock reset
  9. 基于java的薪资工资管理系统
  10. JavaScript --------WebS APIs学习之网页特效(offset系列)
  11. composer.lock(锁文件)到底要不要提交到项目的版本库中?
  12. excel日期转换为周数_VBA将日期转换为周数
  13. 解决android手机EditText设置光标颜色,android:textCursorDrawable=@drawable/corner_cursor 华为手机无效果的问题
  14. 百鸡问题用计算机思维,大力出奇迹:当古代数学难题遇到计算机
  15. Windows优化大师已经成为“流氓大师”
  16. Ubuntu16.04系统+GTX1050TI显卡的tensorflow1.6(GPU版)安装-详细图文
  17. 巧妙隐藏Word文档中指定文字内容
  18. java 随机16位随机数字_随机生成防猜不重复的16位纯数字序列号【快速且高性能】...
  19. Go 读者提问:GPM 模型的 M 实际数量受什么影响?
  20. Java之父--Gosling

热门文章

  1. keil无法调试器下载出现cannot access memory
  2. uniapp页面跳转报错URI malformed解决办法
  3. 浅谈树形结构的特性和应用(上):多叉树,红黑树,堆,Trie树,B树,B+树...
  4. [转]AT指令返回错误代码: CMS errors CME errors
  5. MAR与MDR是什么?
  6. Git怎么操作 一文学会使用Git (比视频还详细)
  7. 053-22 How can you reverse the effects of an ALTER DISKGROUP … DROP DISK command if it has already
  8. Java微信APP支付-申请退款
  9. SpringBoot-指标监控
  10. GPU服务器Ubuntu环境配置教程及各种踩坑