android开发工具选型

结构

1.Mvp

2.oop

3.aop

4.mvvm

代码规范

 1.  checktype 插件(checkstyle-idea)

静态代码检测工具

1. android lint 插件(as自带)

专门检测android代码

2. fireline 插件(360 fireline plugin)

3. Godeyes 插件(godeyes)

4. Infer

使用参考https://www.jianshu.com/p/4667e36aadea

5. findbug插件 (findbug)

将字节码与缺陷模式对比

6. pmd 插件(QAplug-pmd)

将源代码进行对比


内存分析

   1.stetho

   2.LeakCanary

   3.mat

单元测试框架

1. junit(集成)

测试java业务

2. mockito(集成)

生成测试实例,行为验证,插桩

3. powermock(集成)

支持static final private 生成实例

4. Robolectric(集成)

可测试Android组件等

动态代码检测工具

1.blockcanary  

ANR监测,卡顿检测

2.strictmode

检测代码违规操作

图片加载

1. Android-Universal-Image-Loader

2. Picasso

3. Fresco

4. Glide

图片压缩

1. imageOptim

无损压缩

2.imageAlpha

有损压缩

3.TinyPng

有损压缩

4.png/jpeg转webp

webp-android-backport第三方库来转(webp转换工具可以选智图和isparta)

网络

1. Volley

2. okhttp + Retrofit

3. android-async-http

数据解析

1. fastjson

2. gson

3. jackson

4.flatbuffer

数据库

1. OrmLite

2. sugar

3. GreenDao

4. ActiveAndroid

5. sqlbrite

6. realm

7. objectbox

依赖注入

1. ButterKnife

2. dataBinding

3. Dagger2

4. AndroidAnnotations

5. roboguice

事件总线

1. EventBus

2. Otto

3. RxJava

4. RxJavaJoins

5. RxAndroid

6. RxBinding

7. Agera

图表

1.WilliamChart

2.HelloCharts

3.MPAndroidChart

Log框架

1.Logger

2.hugo

3.timber

UI自动化测试框架

1.appium

支持Android和iOS平台,支持多语言编写测试用例

2.Robotium

基于控件操作

3.Robolectric

4.JUnit

5.Monkeyrunner

6.UiAutomator

支持安卓4.0以上所有事件操作,基于控件操作

7.Espresso

Google推出 简洁易上手

8.monkey runner

sdk自带,基于坐标点来测试,可控制多设备,可扩展自动化

9.monkey

sdk自带,基于坐标点来测试

调试框架

1.LeakCanary

2.ACRAAndroid

代码优化

1. SparseBooleanArray ===》Hasmap

2. SparseIntegerArray ===》Hasmap

3. SparseLongArray ===》 Hasmap

4. SparseArray ===》 Hasmap

5. java语言中,非静态内部匿名类会持有外部类的一个隐式的引用,导致外部类无法及时被回收 例如:activity中创建

Handle handle = new Handler(){

.....

}

6. 单例中使用context,要用application中的,不然activity会无法释放

7. 用好4大引用(强,软,弱,虚)

8. 不要在循环中创建相同的对象

9. 避免内部使用set/get

10. 对常量使用static final

你可能感兴趣的:(android开发工具选型)