http://www.tuicool.com/articles/EFBjequ
http://www.tuicool.com/articles/EFBjequ
http://www.tuicool.com/articles/EFBjequ
http://www.tuicool.com/articles/EFBjequ
Android 开源项目
android open project
开发工具
及测试工具解析
开发效率工具,
开发自测相关,
测试工具,
开发及编译环境,其他
一、开发效率工具
Parceler
通过注解及工具类自动完成实体类 Parcelable及值传递
项目地址:https://github.com/johncarl81/parcelerJson2Java
根据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-chapekAndroid 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-zeleznyRoboCoP
利用Gradle task根据固定格式的json文件生成ContentProvider
项目地址:https://github.com/mediarain/RoboCoPappiconsizes
用于生成各个分辨率的图片
项目地址:http://www.appiconsizes.com/Gradle Retrolambda Plugin
Retrolambda是将Java8的Lambdas应用于Java7的工具,本项目是Gradle插件,通过Retrolambda从而使Java或Android项目用Java8的Lambdas编写,将编译后的字节码转换为Java6和7的字节码从而正常运行
项目地址:https://github.com/evant/gradle-retrolambdaDagger IntelliJ Plugin
dagger的intellij插件
项目地址:https://github.com/square/dagger-intellij-pluginAndroid Gen Drawable Maven plugin
在编译时根据SVG描述文件生成不同分辨率的jpg、png或点9图片
项目地址:https://github.com/avianey/androidgendrawable-maven-pluginAndroid Asset Studio
各种Android资源自动生成器,包括启动图标、ActionBar图标、通知栏图标、点9等
项目地址:https://github.com/romannurik/AndroidAssetStudio
在线演示:http://romannurik.github.io/AndroidAssetStudio/jsonschema2pojo
根据Json内容生成java对象,支持jackjson和gson
项目地址:https://github.com/joelittlejohn/jsonschema2pojo
在线演示:http://www.jsonschema2pojo.org/9-Patch-Resizer
自动生成 png 及点 9 图片的不同分辨率版本
项目地址:https://github.com/redwarp/9-Patch-ResizerAndroidLocalizationer
可用于将项目中的 string 资源自动翻译为其他语言的 Android Studio/IntelliJ IDEA 插件
项目地址:https://github.com/westlinkin/AndroidLocalizationer
二、开发自测相关
Quality Tools for Android
Android测试及自测工具集合和示例
项目地址:https://github.com/stephanenicolas/Quality-Tools-for-Androidandroid-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/listrobolectric
测试用例编写框架
项目地址:https://github.com/robolectric/robolectric
Demo地址:https://github.com/robolectric/robolectricsample
文档介绍:http://robolectric.org/
特点:(1). 不需要模拟器在一般JVM就可以运行测试用例
(2). 能完成在真机上的大部分测试包括感应器
其他的测试用例及相关模块Mock可见:android-mock,mockito, easy-mockAndroid FEST
提供一些列方便的断言,可用于提高编写Android自测代码效率
项目地址:https://github.com/square/fest-androidBoundBox
可用于测试类各种访问权限的属性、方法。实际是通过BoundBox这个annotation生成一个属性和方法都是public权限的中间类并对此类进行测试完成的
项目地址:https://github.com/stephanenicolas/boundboxHugo
用于打印函数信息及执行时间的工具,仅在debug模式生效
项目地址:https://github.com/JakeWharton/hugoscalpel
在应用下面添加一层用于界面调试,待详细补充 // TODO
项目地址:https://github.com/JakeWharton/scalpelAndroid Screenshot library
Android截图工具类,用于在持续集成时截图
项目地址:https://github.com/rtyley/android-screenshot-libsonar-android-lint-plugin
将android lint的错误在sonar中展现
项目地址:https://github.com/SonarCommunity/sonar-android
三、测试工具
Spoon
可用于android不同机型设备自动化测试,能将应用apk和测试apk运行在不同机器上并生成相应测试报告。
项目地址:https://github.com/square/spoonTencent APT
APT是腾讯开源的一个Android平台高效性能测试组件,提供丰富实用的功能,适用于开发自测、定位性能瓶颈;测试人员完成性能基准测试、竞品对比测试
项目地址:https://github.com/stormzhang/APTEmmagee
易网开源的性能测试工具,包括CPU、内存、网络流量、启动时间、电池状态等
项目地址:https://github.com/NetEase/EmmageeAndroid py-uiautomator
py-uiautomator是一个对Android uiautomator用python进行封装的测试框架.
项目地址:https://github.com/xiaocong/uiautomatorAugmented Traffic Control
模拟网络状况,包括带宽、时延抖动、丢包率、错包率、包重排率
项目地址:https://github.com/facebook/augmented-traffic-controlstetho
强大的 Android Debug 工具。支持网络请求监控以及数据库查看,可以和 Chrome DevTools 结合或者命令行模式。
项目地址:https://github.com/facebook/stetho
四、开发及编译环境
Buck
facebook开源的Android编译工具,效率是ant的两倍。主要优点在于:
(1) 加快编译速度,通过并行利用多核cpu和跟踪不变资源减少增量编译时间实现
(2) 可以在编译系统中生成编译规则而无须另外的系统生成编译规则文件
(3) 编译同时可生成单元测试结果
(4) 既可用于IDE编译也可用于持续集成编译
(5) facebook持续优化中
项目地址:https://github.com/facebook/buckAndroid Maven Plugin
Android Maven插件,可用于对android三方依赖进行管理。在J2EE开发中,maven是非常成熟的依赖库管理工具,可统一管理依赖库。
项目地址:https://github.com/jayway/maven-android-pluginumeng-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-guideGenymotion
目前最好用最快的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#usageAndroid Emulator Plugin for Jenkins
Android模拟器 jenkins插件,用于Jenkins做持续集成时跑模拟器测试
项目地址:https://github.com/jenkinsci/android-emulator-pluginAndroid Maven Plugin
管理应用所需要的依赖库。包括的构建工具有Maven、Gradle、ant、sbt
项目地址:https://github.com/mosabua/maven-android-sdk-deployerSDK Manager Plugin
下载和管理Android SDK的Gradle插件
项目地址:https://github.com/JakeWharton/sdk-manager-pluginGradle Protobuf Plugin
将.proto文件转换成Java文件的gradle插件
项目地址:https://github.com/andrewkroh/gradle-protobuf-pluginChromeADB
Chrome 的 Adb 插件,当登录后,能看到所有连接的设备并操作,可以看应用、进程、内存及磁盘使用情况等
项目地址:https://github.com/importre/chromeadb
五、其他
ViewServer
允许app运行在任何手机上都可以用HierarchyViewer查看
项目地址:https://github.com/romainguy/ViewServerGridWichterle for Android
在整个系统上显示一个grid,用来帮助查看应用布局及使得布局更美观,可设置grid网格大小和颜色,android推荐48dp和8dp,可见 Android Design Guidelines – Metrics and Grids,比起hierarchyviewer相差甚远,不过偶尔可用来作为布局查看工具。
项目地址:https://github.com/inmite/android-grid-wichterle
Demo地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterleCatlog
手机端log查看工具,支持不同颜色显示、关键字过滤、级别过滤、进程id过滤、录制功能等
项目地址:https://github.com/nolanlawson/Catlog
在线演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcatPID Cat
根据package查看logcat日志
项目地址:https://github.com/JakeWharton/pidcatACRA
应用崩溃信息日志上报到GoogleDoc工具,网页版展现结果三方开源地址https://github.com/BenoitDuffez/crashreportsviewer
项目地址:https://github.com/ACRA/acra
文档介绍:https://github.com/ACRA/acra/wiki/BasicSetupCrashlytics
提供丰富的应用崩溃信息日志收集
轻量级,丰富,可自定义应用崩溃信息收集器,附有邮件通知
项目地址:http://www.crashlytics.com/
集成插件:Android Studio, Eclipse and IntelliJAndroid 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=GBandroid-resource-remover
根据lint的提示删除项目中无用的资源,减少包的大小
项目地址:https://github.com/KeepSafe/android-resource-removerTelescope
通过手势截图以特定主题发送到特定邮箱地址报告Bug
项目地址:https://github.com/mattprecious/telescopeComplete Android Fragment & Activity Lifecycle
完整的Android Fragment/Activity生命周期图
项目地址:https://github.com/xxv/android-lifecycleBugsnag Notifier for Android
通过Thread.UncaughtExceptionHandler
捕获应用未处理的异常崩溃 Bug 并用 Notification 展示同时上传到后台服务器
项目地址:https://github.com/bugsnag/bugsnag-android
文档介绍:https://github.com/bugsnag/bugsnag-android#installation--setupMaterial Design Icons
Google Material Design 规范中的 Icon
项目地址:https://github.com/google/material-design-iconsscrollscreenshot
Android 滚动屏幕自动截图 jar 包,支持纵向、横向滚动截屏拼接
项目地址:https://github.com/PGSSoft/scrollscreenshot
效果图:droidicon
1600+的海量Icon,包括750+的Material Design icons
项目地址:https://github.com/theDazzler/droidicon
> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!
-
一.依赖注入DI 通过依赖注入减少View.服务.资源简化初始化,事件绑定等重复繁琐工作 AndroidAnnotations(Code Diet) android快速开发框架 项目地址:https://github.com/excilys/androidannotations 文档介绍:https://github.com/excilys/android ...
-
六.Android 高版本向低版本兼容 ActionBarSherlock 为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题 项目地址:https://github.com/JakeWharton/ActionBarSherlock Demo地址:https://play.google.com/store/ap ...
-
主要介绍那些乐于分享并且有一些很不错的开源项目的个人和组织.Follow大神,深挖大神的项目和following,你会发现很多. 一.个人 JakeWharton 就职于Square,绝对牛逼的大神,项目主要集中在Android版本兼容,ViewPager及开发工具上 Github地址:https://github.com/JakeWharton 代表作:A ...
-
五.GridView StaggeredGridView 允许非对齐行的GridView,类似Pinterest的瀑布流,并且跟ListView一样自带View缓存,继承自ViewGroup 项目地址:https://github.com/maurycyw/StaggeredGridView Demo地址:https://github.com/Tr ...
-
主要介绍那些Android还不错的完整项目,目前包含的项目主要依据是项目有意思或项目分层规范比较好. Linux 项目地址:https://github.com/torvalds/linux Android 项目地址:https://android.googlesource.com/ 或https://github.com/android 以上两个项目,不解 ...
-
一.ListView android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新,ListView.ViewPager.WebView.ExpandableListView.GridView.ScrollView.Horizontal ScrollView.Fragment上下左右拉动刷新,比下面johannils ...
-
十三.ColorPickView ColorPickerView 颜色选择器,支持PopupWindows或新的Activity中打开 项目地址:https://code.google.com/p/color-picker-view/ 效果图: HoloColorPicker 颜色选择器 项目地址:https://github.com/LarsWerkma ...
-