goforwind / android

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Android开发

目前包括: 开发篇 测试篇 工具篇

#开源类库 ##网络库

1、HttpUrlConnection

2、volley
Volley,它是android开发团队在2013年Google I/O大会上推出了一个新的网络通信框架 Volley可以说是把AsyncHttpClient和Universal-Image-Loader的优点集于了一身,既可以像AsyncHttpClient一样非常简单地进行HTTP通信, 也可以像Universal-Image-Loader一样轻松加载网络上的图片。除了简单易用之外,Volley在性能方面也进行了大幅度的调整, 它的设计目标就是非常适合去进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如说下载文件等,Volley的表现就会非常糟糕

3、retrofit
Retrofit支持同步和异步两种方式,在使用时,需要将请求地址转换为接口,通过注解来指定请求方法,请求参数,请求头,返回值等信息。

4、okhttp
okhttp 是一个 Java 的 HTTP+SPDY 客户端开发包(类似HttpClient的角色),同时也支持 Android。需要Android 2.3以上。
特点
OKHttp是Android版Http客户端。非常高效,支持SPDY、连接池、GZIP和 HTTP 缓存。
默认情况下,OKHttp会自动处理常见的网络问题,像二次连接、SSL的握手问题。
如果你的应用程序中集成了OKHttp,Retrofit默认会使用OKHttp处理其他网络层请求。
从Android4.4开始HttpURLConnection的底层实现采用的是okHttp.

特别说明
android2.2之后不建议使用Http Client,包括基于HttpClient的开源网络库:
1、HttpClient
Apach提供的HttpClient

2、android-async-http
特点 所以请求在子线程中完成,请求回调在调用该请求的线程中完成
使用线程池
使用RequestParams类封装请求参数
支持文件上传
持久化cookie到SharedPreferences,个人感觉这一点也是这个库的重要特点,可以很方便的完成一些模拟登录
支持json
支持HTTP Basic Auth

##事件总线 1、EventBus

2、Otto

##图片库

Universal-Image-Loader

Volley

参照:ImageRequest、ImageLoader、NetworkImageView

Fresco

Picasso

Glide

DroidParts

参照:ImageFetcher

UrlImageViewHelper

AndroidQuery
参照:ImageLoading

##依赖注入

AndroidAnntations

Dagger

Butterknife

RoboGuice

##数据存储 目前ormLite和greenDao应该是最火的

greenDao

greenDAO is a light & fast ORM solution for Android that maps objects to SQLite databases.
当性能很重要时(数据访问频繁),GreenDao是一个很快的解决方案,它能够支持数千条记录的CRUD每秒,和OrmLite相比,GreenDAO要快几乎4.5倍。
GreenDAO小于100KB,所以对于应用程序APK的大小影响很小。

ormlite

OrmLite 不是 Android 平台专用的ORM框架,它是Java ORM。支持JDBC连接,Spring以及Android平台。语法中广泛使用了注解(Annotation)。

LitePal

LitePal is an Open Source Android library that allows developers to use SQLite database extremely easy.

realm

Realm is a mobile database that runs directly inside phones, tablets or wearables. This repository holds the source code for the Java version of Realm, which currently runs only on Android.

tray

a SharedPreferences replacement for Android with multiprocess support

Paper

Fast and simple data storage library for Android.
Paper is a fast NoSQL data storage for Android that lets you save/restore Java objects by using efficient Kryo serialization and handling data structure changes automatically.

##响应式编程 RxJava
参考 http://blog.csdn.net/lzyzsd/article/details/41833541

RxAndroid

##日志输出 orhanobut/logger

Simple, pretty and powerful logger for android
Logger provides :

  • Thread information
  • Class information
  • Method information
  • Pretty-print for json content
  • Pretty-print for new line "\n"
  • Clean output
  • Jump to source

liaohuqiu/android-CLog

ZhaoKaiQiang/KLog

这是一个Android专用的LogCat工具,主要功能为打印行号、函数调用、Json解析、XML解析、点击跳转、Log信息保存等功能

Debug

##JSON alibaba/fastjson

google/gson

jackson

LoganSquare

##热修复 ###热修复原理 http://blog.csdn.net/lmj623565791/article/details/49883661

1、安卓App热补丁动态修复技术介绍
https://mp.weixin.qq.com/s?__biz=MzI1MTA1MzM2Nw==&mid=400118620&idx=1&sn=b4fdd5055731290eef12ad0d17f39d4a&scene=1&srcid=1106Imu9ZgwybID13e7y2nEi#wechat_redirect

2、Android dex分包方案
http://my.oschina.net/853294317/blog/308583

###热补丁动态修复开源框架 1、AndFix

相关文档
http://blog.csdn.net/qxs965266509/article/details/49802429

2、HotFix

3、DroidFix

4、Nuwa

##插件化开发 利用DexClassLoader动态加载本地apk

##Android公共类库

xutils

Trinea/android-common

litesuits/android-common

FastDev4Android

AndBase

##Android或Java工具库

essentials

The Utility classes cover stream-based IO, files, strings, and date/time. There are also efficient hash map and hash set implementation for primitive long keys.

okio

A modern I/O API for Java

#测试篇

##测试相关 1、Testin
免费移动App真机云测试平台

2、百度移动APP测试服务
可免费提供自动化测试和人工测试

3、BugTags
新一代的、专为移动测试而生的缺陷发现及管理工具。

4、腾讯Bugly

腾讯Bugly,面向移动开发者提供最专业的Crash监控、崩溃分析等质量跟踪服务,为您修复用户的每一次Crash!

5、testerhome
支付宝Monkey老师推荐的测试社区、里面有很多干货.

##崩溃统计平台 对APP的崩溃进行统计,CritterCism和Crashlytics有时候需要梯子,你懂的。 腾讯Bugly、金山Crasheye、Crittercism、Crashlytics

##应用性能管理APM

百度百科:http://baike.baidu.com/link?url=WTSG1fVrdrBChzvRZ3L23qjRCoZEX2a2v-0wdiCJGZph8C1OgMAI-fiwVqCfP0328lux8PTK1oc-6eBlZiVYna

应用性能管理(Application Performance Management)是一个比较新的网络管理方向,主要指对企业的关键业务应用进行监测、优化, 提高企业应用的可靠性和质量,保证用户得到良好的服务,降低IT总拥有成本(TCO)。使用全业务链的敏捷APM监控,可使一个企业的关键业务应用的性能更强大, 可以提高竞争力,并取得商业成功,因此,加强应用性能管理(APM)可以产生巨大商业利益。 国内外的APM有Compuware、iMaster、听云、New Relic、云智慧、OneAPM、AppDynamics等。

https://www.sdk.cn/datas?category_id=110207

1、腾讯Bugly

2、听云APP

3、百度APM

4、Testin移动应用性能管理

5、oneapm

6、透视宝

##APP内测分发 APP开发完成后,需要提供给别人使用测试。

1、蒲公英

2、友盟渠道升级
打包成自己的测试渠道,在线升级

3、腾讯Bugly内测
http://beta.qq.com/?f=sdk
平台优势: 轻松安装:快速发布至QQ与微信直接下载安装,无需另外打开浏览器 访问控制:按QQ号验证用户身份,精确控制版本访问权限 极速下载:依托腾讯CDN实现全网覆盖,全球范围内用户均可高速下载

4、FIR.IM

##监控 1、移动应用错误监控
https://www.sdk.cn/datas?category_id=110209

2、性能监控 APM
https://www.sdk.cn/datas?category_id=110207

##其他 ###性能检测检测工具 LeakCanary
检测内存泄露,square出品,必属精品

blockcanary
检测UI卡顿,阿里工程师出品

DebugDrawer
帮你快速的在debug版本分析,诊断问题

ANR-WatchDog
检查ANR问题的利器

ViewServer
当你用真机调试连不上Hierarchy Viewer,它可以帮助你完美解决问题

MAT 内存分析工具
即Memory Analysis Tools

观察DDMS中的heap
查看堆的分配情况,来回切换页面,如果totalSize只增不减,则可能存在内存泄露

TraceView 分析

StrictModle

相关技术文章:
https://www.sdk.cn/news/2013
http://ms.csdn.net/geek/51979
http://blog.csdn.net/u010687392/article/details/49909477

#工具篇 ##MarkDown 作业部落马克飞象
提供在线MarkDown在线编辑器,可用于编写技术文档之类的。
桌面工具:MarkDown Pad

##图床 免费上传图片,生成外链.
http://postimg.org
http://imageab.com/
http://droplr.com
http://www.nieyou.com/img/
http://www.mftp.info/
http://tietuku.com/upload

##团队协作办公

Towerteambition 、 Jira、 明道OA、 禅道、

About