项目地址:
https://github.com/ddnosh/AndroidQuick

AndroidQuick

Android快速开发框架

项目简介

AndroidQuick项目旨在提供一套让能Android开发者快速开发APP的框架。
AndroidQuick从开发一个APP所涉及到的常用的架构、模块、功能等方面出发,向Android开发者提供一套快速开发框架,避免开发过程中重复造轮子。
AndroidQuick分为两大部分:sample和core,以下有具体介绍。

适用范围

由于本框架目的是为了快速开发一款APP,因此所提供的功能主要是APP经常用到的功能,并不包含所有Android开发可能涉及到的功能。
如果需要了解Android开发过程中需要的更多功能,请参考另一个项目:https://github.com/ddnosh/SEOP

本项目适用于以下几种情形:

  • 开发一款新的APP;
  • 对现有APP进行重构设计;
  • 常用实现的代码示例;

工程目录

  1. core
  2. sample
  3. GreenDaoGenerator

sample

sample提供了架构、模块、功能的实现示例;

core

core封装了通用的实现,我们将其打包成一个aar包,提供给APP引用。
引用方式:compile ‘la.xiong.androidquick:AndroidQuick:latest.release’

功能说明

  1. sample
    1. 目录结构
      1. Module
        1. MVP
          1. MVP for Activity
          2. MVP for Fragment
        2. Network
          1. Retrofit+CommonUrl
          2. Retrofit+DifferentUrl
          3. Retrofit+Download
          4. Retrofit+CommonUrl+Get
          5. Common Http
        3. Database
          1. GreenDao
          2. OrmLite
        4. Image
          1. Glide
        5. Bus
          1. EventBus
        6. IOC
          1. ButterKnife
          2. Dagger2
        7. Task
          1. Task-Scheduler
          2. Task-RxJava
      2. Function
        1. UI
          1. Fragment
            1. CommonFragment
            2. Fragmentation
          2. Adapter
            1. CommonAdapter
            2. MultiViewTypeAdapter
            3. BaseRecycleViewAdapterHelper
          3. Bar-Top
            1. DefaultToolbar
            2. CommonToolbar
          4. Bar-Bottom
            1. RadioButton
            2. BottomBar
          5. Dialog
            1. DialogActivity
              1. LoadingDialog
              2. CommonDialog
            2. DialogFragment
          6. Tab
            1. SmartTabLayout
            2. FlycoTabLayout
          7. Refresh
            1. SwipeRefreshLayout
            2. SmartRefreshLayout
          8. Banner
          9. WebView
          10. DataBinding
          11. VaryPageStatus
        2. Permission
          1. Permission-Camara
          2. Permission-Fragment-Call
        3. Json
        4. RaJava
        5. SharedPreferences
      3. Architecture
        1. OneLayout-MultipleViews
        2. OneView-MultipleModules
        3. WebView-JavaScripts
      4. Other
        1. Code
        2. RxLifecycle
        3. Lambda
    2. 功能说明
      1. BaseActivity

      抽象类,继承自QuickActivity,实现了一些QuickActivity的抽象方法;

      1. BaseTActivity

      抽象类,采用MVP架构,并用泛型实现,并引入dagger2库;

      1. BaseVActivity

      抽象类,引入DataBinding的支持;

      1. BaseTVActivity

      抽象类,相比BaseTActivity,增加了DataBinding的支持;

      1. BaseFActivity

      抽象类,用于配合Fragmentation组件使用;

      1. BaseFragment、BaseTFragment、BaseVFragment、BaseTVFragment、BaseFFragment

      功能类同于对应的Activity;

    3. 开源组件
      1. Dagger2
      2. GreenDao
      3. MarkDown
      4. Banner
      5. SmartTabLayout
      6. FlycoTabLayout
      7. FastJson
      8. Fragmentation
      9. RxJava
      10. BaseRecyclerViewAdapterHelper
  2. Core
    1. 功能说明
      1. QuickActivity
      • 多状态页面(loading、empty、error、networkerror)
      • 设备信息
      • 页面转场动画
      • ButterKnife 8+ support
      • DataBinding support
      • 沉浸式标题栏
      • 默认toolbar
      • ActivityManager
      • EventBus
      • Network status monitor
      • 页面跳转
      • Android 6.0+权限控制
      • 包含LoadingDialog和CommonDialog
      1. QuickFragment

      基本类同QuickActivity,注意fragment生命周期。

      1. Adapter
      • CommonAdapter
        通用adapter类
      • MultiItemCommonAdapter
        增加ItemType支持的通用adapter类
      • BaseRecyclerViewAdapterHelper
        第三方开源adapter库
      1. Dialog
        1. for activity
        • LoadingDialog
        • CommonDialog
        1. for fragment
        • CommonDialog
      2. 多分辨率适配

      实现原理:http://blog.csdn.net/ddnosh/article/details/78941302

      1. 网络请求

      HttpURLConnection封装
      加入Retrofit2支持

      1. 图片处理

      加入Glide支持

      1. styles.xml

      提供上百种style支持,满足各种UI风格设计

      1. tools

      DialogUtil、FileUtil、GsonHelper、IOUtil、LogUtil、NetUtil、ReflectUtil、SpUtil、StringUtil、ToastUtil

      1. task

      异步任务处理机制

      1. eventbus

      集成通用传递事件

    2. 开源组件
      1. EvnentBus
      2. ButterKnife
      3. Retrofit+OkHttp
      4. Gson
      5. Glide
      6. immersion
      7. RxLifecycle
  3. GreenDaoGenerator
    GreenDao生成数据库文件示例工程

更多相关文章

  1. Android(安卓)AndroidManifest.xml文件的android:supportsRtl属
  2. Android的多媒体框架OpenCore(PacketVideo)介绍
  3. 第15章 Android启动过程 [Android应用开发与系统改造实战]
  4. Android(安卓)支持多屏幕机制
  5. Android(安卓)SDK 2.2 开发环境搭建
  6. android中使用sqlite、复制assets下的数据库到SD卡、支持大于1M
  7. Android开发资源完全汇总
  8. 4款手机中必备的APP,用过之后一定会让你舍不得卸载
  9. Android开发者e周报 第4期

随机推荐

  1. Android数据持久化,你还不会?
  2. 魅族-魅蓝note无法链接adb解决办法
  3. Android中的消息通知(NotificationManager
  4. Android接入微信H5支付及与Js交互
  5. Android中如何取消listview的点击效果
  6. 第十九篇 android使用ImageLoader加载本
  7. Android实现系统状态栏的隐藏和显示功能
  8. Android(安卓)适配不同屏幕(手机,平板)
  9. Android(安卓)Studio学习路程(5)
  10. 关于微信浏览器调整字体大小,H5页面适配问