第四部分 开发工具及测试工具-内容来自互联网
主要介绍和Android开发工具和测试工具相关的开源项目。
一、开发效率工具
-
Parceler
通过注解及工具类自动完成实体类 Parcelable及值传递 项目地址:https://github.com/johncarl81/parceler -
Json2Java
根据JSon数据自动生成对应的Java实体类,还支持Parcel、Gson Annotations对应代码自动生成。期待后续的提取父类以及多url构建整个工程的功能
项目地址:https://github.com/jonfhancock/JsonToJava
在线演示:http://jsontojava.appspot.com/ -
IntelliJ Plugin for Android Parcelable boilerplate code generation
Android studio插件,生成Parcelable代码
项目地址:https://github.com/mcharmas/android-parcelable-intellij-plugin
效果图: -
Android Holo Colors IntelliJ Plugin
Android studio插件,生成holo样式9 patch图片
项目地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin
效果图: -
Android Drawable Factory
用于生成各个分辨率的图片
项目地址:https://github.com/tizionario/AndroidDrawableFactory
效果图: -
SelectorChapek for Android
Android Studio插件,可根据固定文件名格式资源自动生成drawable selectors xml文件。
项目地址:https://github.com/inmite/android-selector-chapek -
Android Action Bar Style Generator
Android ActionBar样式生成器,可在线选择ActionBar样式自动生成所需要的图片资源及xml文件
项目地址:https://github.com/jgilfelt/android-actionbarstylegenerator
在线演示:http://jgilfelt.github.io/android-actionbarstylegenerator/ -
ButterKnifeZelezny
用于快速生成ButterKnifeView注入代码的Android Studio/IDEA插件
项目地址:https://github.com/inmite/android-butterknife-zelezny -
RoboCoP
利用Gradle task根据固定格式的json文件生成ContentProvider
项目地址:https://github.com/mediarain/RoboCoP -
appiconsizes
用于生成各个分辨率的图片
项目地址:http://www.appiconsizes.com/ -
Gradle Retrolambda Plugin
Retrolambda是将Java8的Lambdas应用于Java7的工具,本项目是Gradle插件,通过Retrolambda从而使Java或Android项目用Java8的Lambdas编写,将编译后的字节码转换为Java6和7的字节码从而正常运行
项目地址:https://github.com/evant/gradle-retrolambda -
Dagger IntelliJ Plugin
dagger的intellij插件
项目地址:https://github.com/square/dagger-intellij-plugin -
Android Gen Drawable Maven plugin
在编译时根据SVG描述文件生成不同分辨率的jpg、png或点9图片
项目地址:https://github.com/avianey/androidgendrawable-maven-plugin -
Android Asset Studio
各种Android资源自动生成器,包括启动图标、ActionBar图标、通知栏图标、点9等
项目地址:https://github.com/romannurik/AndroidAssetStudio
在线演示:http://romannurik.github.io/AndroidAssetStudio/
二、开发自测相关
-
Quality Tools for Android
Android测试及自测工具集合和示例
项目地址:https://github.com/stephanenicolas/Quality-Tools-for-Android -
android-test-kit
Google的Android测试工具
包括GoogleInstrumentationTestRunner(增强版的InstrumentationTestRunner)和Espresso(用于快速写出可靠测试用例的API)
项目地址:https://code.google.com/p/android-test-kit/
文档介绍:https://code.google.com/p/android-test-kit/w/list -
robolectric
测试用例编写框架
项目地址:https://github.com/robolectric/robolectric
Demo地址:https://github.com/robolectric/robolectricsample
文档介绍:http://robolectric.org/
特点:(1). 不需要模拟器在一般JVM就可以运行测试用例
(2). 能完成在真机上的大部分测试包括感应器
其他的测试用例及相关模块Mock可见:android-mock, mockito, easy-mock -
Android FEST
提供一些列方便的断言,可用于提高编写Android自测代码效率
项目地址:https://github.com/square/fest-android -
BoundBox
可用于测试类各种访问权限的属性、方法。实际是通过BoundBox这个annotation生成一个属性和方法都是public权限的中间类并对此类进行测试完成的
项目地址:https://github.com/stephanenicolas/boundbox -
Hugo
用于打印函数信息及执行时间的工具,仅在debug模式生效
项目地址:https://github.com/JakeWharton/hugo -
scalpel
在应用下面添加一层用于界面调试,待详细补充 // TODO
项目地址:https://github.com/JakeWharton/scalpel -
Android Screenshot library
Android截图工具类,用于在持续集成时截图
项目地址:https://github.com/rtyley/android-screenshot-lib -
sonar-android-lint-plugin
将android lint的错误在sonar中展现
项目地址:https://github.com/SonarCommunity/sonar-android
三、测试工具
-
Spoon
可用于android不同机型设备自动化测试,能将应用apk和测试apk运行在不同机器上并生成相应测试报告。
项目地址:https://github.com/square/spoon -
Tencent APT
APT是腾讯开源的一个Android平台高效性能测试组件,提供丰富实用的功能,适用于开发自测、定位性能瓶颈;测试人员完成性能基准测试、竞品对比测试
项目地址:https://github.com/stormzhang/APT -
Emmagee
网易开源的性能测试工具,包括CPU、内存、网络流量、启动时间、电池状态等
项目地址:https://github.com/NetEase/Emmagee -
Android py-uiautomator
py-uiautomator是一个对Android uiautomator用python进行封装的测试框架.
项目地址:https://github.com/xiaocong/uiautomator
四、开发及编译环境
-
Buck
facebook开源的Android编译工具,效率是ant的两倍。主要优点在于:
(1) 加快编译速度,通过并行利用多核cpu和跟踪不变资源减少增量编译时间实现
(2) 可以在编译系统中生成编译规则而无须另外的系统生成编译规则文件
(3) 编译同时可生成单元测试结果
(4) 既可用于IDE编译也可用于持续集成编译
(5) facebook持续优化中
项目地址:https://github.com/facebook/buck -
Android Maven Plugin
Android Maven插件,可用于对android三方依赖进行管理。在J2EE开发中,maven是非常成熟的依赖库管理工具,可统一管理依赖库。
项目地址:https://github.com/jayway/maven-android-plugin -
umeng-muti-channel-build-tool
渠道打包工具
项目地址:https://github.com/umeng/umeng-muti-channel-build-tool
另可参见Google的构建系统Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide -
Genymotion
目前最好用最快的android模拟器
项目地址:http://www.genymotion.com/
Android studio集成控件: http://plugins.jetbrains.com/plugin/7269?pr=idea
Cyril Mottier推荐:http://cyrilmottier.com/2013/06/27/a-productive-android-development-environment/ -
gradle-mvn-push
方便的将Gradle的Artifacts上传到Maven仓库
项目地址:https://github.com/chrisbanes/gradle-mvn-push
文档介绍:https://github.com/chrisbanes/gradle-mvn-push#usage -
Android Emulator Plugin for Jenkins
Android模拟器 jenkins插件,用于Jenkins做持续集成时跑模拟器测试
项目地址:https://github.com/jenkinsci/android-emulator-plugin -
Android Maven Plugin
管理应用所需要的依赖库。包括的构建工具有Maven、Gradle、ant、sbt
项目地址:https://github.com/mosabua/maven-android-sdk-deployer -
SDK Manager Plugin
下载和管理Android SDK的Gradle插件
项目地址:https://github.com/JakeWharton/sdk-manager-plugin -
Gradle Protobuf Plugin
将.proto文件转换成Java文件的gradle插件
项目地址:https://github.com/andrewkroh/gradle-protobuf-plugin
五、其他
-
ViewServer
允许app运行在任何手机上都可以用HierarchyViewer查看
项目地址:https://github.com/romainguy/ViewServer -
GridWichterle for Android
在整个系统上显示一个grid,用来帮助查看应用布局及使得布局更美观,可设置grid网格大小和颜色,android推荐48dp和8dp,可见 Android Design Guidelines – Metrics and Grids
项目地址:https://github.com/inmite/android-grid-wichterle
APK地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle
PS:比起hierarchyviewer相差甚远,不过偶尔可用来作为布局查看工具。 -
Catlog
手机端log查看工具,支持不同颜色显示、关键字过滤、级别过滤、进程id过滤、录制功能等
项目地址:https://github.com/nolanlawson/Catlog
在线演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat -
PID Cat
根据package查看logcat日志
项目地址:https://github.com/JakeWharton/pidcat -
ACRA
应用崩溃信息上报到GoogleDoc工具,网页版展现结果三方开源地址https://github.com/BenoitDuffez/crashreportsviewer
项目地址:https://github.com/ACRA/acra
文档地址:https://github.com/ACRA/acra/wiki/BasicSetup -
Crashlytics
提供丰富的应用崩溃信息收集
轻量级,丰富,可自定义应用崩溃信息收集器,附有邮件通知
项目地址:http://www.crashlytics.com/
集成插件:Android Studio, Eclipse and IntelliJ -
Android Resource Navigator
chrome插件,可以方便的查看github上android源码工程的styles.xml和themes.xml。主要功能:
(1) 快速打开android styles.xml themes.xml
(2) 方便在资源间跳转。styles.xml themes.xml文件中资源链接跳转,可以方便跳转到某个资源
(3) 方便查找某个style和theme。chrome地址栏输入arn+tab+搜索内容回车即可
(4) 自动下载不同分辨率下的drawable
(5) 通过映射查找那些不是按照固定命名规则命名的style和theme
项目地址:https://github.com/jgilfelt/android-resource-navigator
在线演示:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB -
android-resource-remover
根据lint的提示删除项目中无用的资源,减少包的大小
项目地址:https://github.com/KeepSafe/android-resource-remover -
Telescope
通过手势截图以特定主题发送到特定邮箱地址报告Bug
项目地址:https://github.com/mattprecious/telescope -
Complete Android Fragment & Activity Lifecycle
完整的Android Fragment/Activity生命周期图
项目地址:https://github.com/xxv/android-lifecycle
相关推荐
本文将详细介绍百度云开发测试工具的核心功能及使用方法,帮助开发者提升工作效率,加速产品上市周期。 一、百度云开发测试工具概述 百度云开发测试工具主要包括两大部分:BaiduSDK与MTC(移动云测试中心)。...
在这个压缩包文件"单片机几种开发工具.zip"中,包含了几个关键的资源,旨在帮助初学者或者有经验的工程师进行单片机编程和调试。以下是这些资源的详细说明: 1. **KEILC51软件**: KEIL C51是一款专门针对8051系列...
【软件开发工具】是软件工程中的重要组成部分,旨在提升软件开发的质量和效率。它们涵盖了从项目规划、需求分析、设计、编码、测试到文档管理和维护的整个开发过程。软件开发工具是在高级程序设计语言(如C,Java,...
本资源包“C#开发工具”似乎是一个针对C#初学者的入门套件,包含了必要的文件以帮助开始C#编程之旅。以下是对这些文件的详细解读: 1. **File_id.diz**:这是一个传统的文件标识符,通常包含软件的作者、版本和其他...
企业号开发工具包是专为微信企业号应用开发设计的一套综合工具集合,它极大地简化了与微信企业号API交互的复杂性,让开发者能够更高效地构建和维护企业内部的应用程序。在这个压缩包"weixin-java-tools-master"中,...
以上只是一部分常用的小工具,实际上,随着开发需求的多样化,开发者还会遇到更多针对性的工具,如依赖管理、热修复、崩溃分析等。这些工具共同构成了安卓和软件开发的生态系统,为开发者提供了强大支持。不断探索和...
- Microsoft Visual Studio提供了专门的SharePoint开发工具包,允许开发者直接在IDE内创建、调试和部署SharePoint解决方案。它支持WSP包的创建,以及自定义Web部件、列表模板、内容类型等。 2. **SharePoint ...
在移动应用开发领域,开发工具的选择对于创建高效、功能丰富的应用程序至关重要。标题“app手机版软件开发工具下载,全中文界面中文开发平台下载”暗示我们正在讨论的是一款针对中文用户设计的,具有全中文界面的...
在iOS开发过程中,一套完整的工具包对于...以上只是部分可能包含在"iOS开发工具包"中的内容,具体包内的软件和资源可能会根据实际需求有所不同。通过熟练掌握这些工具和概念,开发者能够高效地进行iOS应用的开发工作。
软件开发工具涵盖了从项目规划、编码、测试到维护的全过程,包括但不限于编辑器、编译器、版本控制系统、调试器、自动化构建工具、集成开发环境(IDE)、测试框架和项目管理工具等。 随着技术的发展,软件开发工具...
《SpringCloud开发测试工具集详解》 在微服务架构领域,Spring Cloud以其强大的服务治理能力,成为了许多开发者首选的框架。本文将详细探讨一个专为Spring Cloud开发测试设计的工具集,帮助开发者更高效地构建、...
对于想要进行Zigbee开发的研究者或开发者来说,选择合适的开发工具至关重要。 一、Zigbee开发工具分类 1. **硬件开发板**:这是Zigbee开发的基础,包括Zigbee模块和开发板。模块通常集成Zigbee无线通信芯片,如TI的...
软件工具的范围包括操作系统、编译程序、解释程序、汇编程序等,以及支持需求分析、设计、编码、测试、维护等对软件生存周期各阶段的开发工具和管理工具。 软件工具可以提高工作效率,软件人员乐意使用,功能齐全,...
- **第三章 软件开发工具的理论基础**:深入探讨各种工具的工作原理和技术细节,可能包括版本控制机制、自动化构建原理等。 - **历年试题整理**:提供历年考试的题目和解析,帮助考生了解考试重点和常见问题。 ...
"Domino开发工具"是这个平台的重要组成部分,旨在帮助开发者高效地创建、测试和维护基于Domino的应用。 【描述】:“domino开发工具--方便好用” 这句话简洁地表达了Domino开发工具的核心优势——易用性和实用性。...
7. **发布与提交审核**:在完成开发和测试后,开发工具可以直接将小程序包提交到微信平台进行审核,简化发布流程。 8. **性能监控**:提供性能分析工具,可以帮助开发者了解小程序的启动速度、页面渲染性能等,优化...