美文网首页
android开发工具选型

android开发工具选型

作者: 你叫啥 | 来源:发表于2018-04-25 23:24 被阅读0次

    结构

    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<Integer,Boolean>

    2. SparseIntegerArray ===》Hasmap<Integer,Integer>

    3. SparseLongArray ===》 Hasmap<Integer,Long>

    4. SparseArray ===》 Hasmap<Integer,String>

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

    Handle handle = new Handler(){

    .....

    }

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

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

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

    9. 避免内部使用set/get

    10. 对常量使用static final

    相关文章

      网友评论

          本文标题:android开发工具选型

          本文链接:https://www.haomeiwen.com/subject/czpulftx.html