Android面试大全(开源框架篇)

Android面试大全(四大组件篇)
Android面试大全(性能优化篇)
Android面试大全(异常处理篇)
Android面试大全(开源框架篇)
Android面试大全(网络篇)
Android面试大全(java篇)


  • 网络相关框架
    在一个项目中网络是必不可少的,由于项目时间紧急或者求稳定在开发中尽量少踩坑所以往往都在github上找一些开源框架直接使用,当然完全可以自己打造一套网络框架,也可以开源出来让大家共同维护升级,对于个人技术成长的非常巨大的!我仅代表个人在这里感谢所有为整个开源生态圈做贡献的开发者们!
  • 那么问题来了,如何选择开源项目?
    建议优先选择github上比较活跃的开源项目,经常进行维护的项目。选择开源项目的原则有下面这些:

Stars 越多越好
Issues 问题反馈
文档和Demo
弄清楚原理
结合实际业务场景```

  • 来一波例子
    • square公司的okhttp
    • square公司的retrofit
    • xUtils升级xUtils3
    • hongyang的okhttputils
    • yanzhenjie的NoHttp
    • AndroidAsync
    • jeasonlzy的OKGO(前身OkHttpUtils)

可结合retrofit+okhttp+RxAndroid使用

  • 响应式编程

    • rx系列RxJava,RxAndroid,RxBinding
  • 事件总线框架

    • EventBus
    • otto
  • UI控件和自定义控件

  • View注入框架

    • butterknife结合Android Studio插件使用起来是很爽的,谁用谁知道
    • dagger2
  • 上拉加载更多下拉刷新
    Android-PullToRefresh
    android-Ultra-Pull-To-Refresh
    官方提供的Design库里的SwipeRefreshLayout仅支持下拉刷新,暂未支持上拉加载

  • 侧边栏

    • SlidingMenu
    • 官方Design库中也提供了支持DrawerLayout以布局方式来实现,简单方便
  • adapter相关

    • BaseRecyclerViewAdapterHelper
  • base-adapter-helper
    对传统的BaseAdapter ViewHolder 模式的一个封装,主要功能就是简化书写 AbsListView 的 Adapter 的代码,如 ListView,GridView

  • 图表类

  • MPAndroidChart支持8中类型图表

  • hellocharts-android

  • 解析数据

  • json

    • google->gson
    • alibaba->fastjson
  • html解析

    • jsoup
  • 图片框架

  • 官方建议glide

  • google->picasso

  • facebook->fresco

  • Android-Universal-Image-Loader

  • photoView

  • 数据库框架

  • LitePal

  • DBFlow

  • greenDAO

  • Log框架

  • logger

  • timber

  • hugo

  • 调试框架

    • stetho
  • 性能优化

    • 内存泄漏检测框架 leakcanary
    • 崩溃报告acra
      Android Studio自带很多调试工具JUnit、 Android Monitor等
  • Dialog框架
    MaterialDialog


  • atlas
    阿里刚刚开源的框架atlas,以容器思路解决大规模团队协着问题,实现并发开发、快速迭代和动态部署,适用于Android4.*以上系统版本的大小型app开发。通过提供组件化、动态性、解耦化的支持,能够实现每个业务在开发阶段的独立编译、独立调试、独立运行、最后再以一个组件的形式集成到客户端中,每个业务之间并行开发互不影响,还具备客户端动态发版和快速修复的能力

你可能感兴趣的:(Android面试大全(开源框架篇))