美文网首页Android开发经验谈Android技术知识Android开发
Android快速开发框架,基础库,样式库,组件化,组件集成

Android快速开发框架,基础库,样式库,组件化,组件集成

作者: Android高级开发 | 来源:发表于2019-01-27 20:41 被阅读3次

    概述

    快速开发框架,并不是现成的框架。它是一种架构,它集成了基础库,网络库,尺寸颜色主题定义,并提出了一种组件化设计。它更像是一种sdk+架构设计抽象。本文也提供了组件设计规范和集成demo,开发者使用时,还需要做定义工作。

    目标

    快速接入基础库和组件,大大缩短新应用开发周期。统一开发模式,能带来快速开发,快速维护,功能稳定的体验。

    组件化

    • 封装基础库组件,包括基本的架构基础类,activity,dialog,动态权限,沉浸式,工具类等

    • 封装一套design组件,包含规定的多套尺寸,样式,以及主题

    • 按照规范定义功能组件,网络组件,分享组件等

    • 封装组件集成,通过统一入口链接各个组件。

    App架构

    1 、整体架构图

    • 架构主要是业务模块化,以及通用功能组件化。但不限于此,有需要还能继续分拆,业务模块组件化,插件化,或进程化

    • 模块依赖baselib组件和easyComponent组件

    • easyComponent组件依赖其他功能组件

    模块化/组件化

    2、应用层模块化
    业务模块使用livedata的架构模式。
    模块内基本架构:

    final-architecture

    livedata基本结构图:

    viewmodel-replace-loader

    基本组件介绍

    基础库 baselib

    包含:
    1 life-arch,livedata基本封装
    2 基础SharePerference封装
    3 环境设置,包括接口环境,debug环境(可控制日志输出)
    4 基础Activity/Fragment
    5 dialog, tab, statusbar
    6 recyclerview快速开发
    7 viewtools
    8 动态权限
    9 工具类
    10 多任务处理Rxjava
    11 Eventbus事件总线

    网络组件 networklib

    OKhttp3+Rxjava2+Retrofit2的解决方案,并设计了6种缓存策略,只读缓存(无视过期时间),自定义缓存时间,读网络,固定缓存1天,读网络并刷新缓存,读缓存同时请求网络并写缓存。

    UI尺寸颜色规范库 design_style

    包含一组尺寸,颜色规范,可推动设计师们按规范设计。
    主要目的是撸UI尽量不用思考,提高开发效率和统一的尺寸和颜色体验。

    通过重新修改尺寸,颜色值,主题样式即可快速使用。

    内容包含:
    文字size,大中小几种规范;
    组件外距/内距(margin/padding) 统一只有几种规格;
    分界线长度,宽度,颜色;
    文字颜色,主颜色,次要颜色,最次要颜色;
    activity主题,状态栏,标题栏,背景颜色,光标颜色,问题颜色等等;
    dialog主题,圆角,边距,底色;

    快速访问组件 easyComponent

    • easyComponent实现了对组件的接入

    • 模块通过easyComponent组件,以责任链的方式调用。
      如 Easys.network().api().getUser(observer)

    分享组件

    不祥

    webview组件

    不祥

    组件设计规范

    应包含:
    1、尽量减少对其他组件的依赖
    2、组件初始化过程(比如设置Application)
    3、调用组件的过程
    4、生命周期管理

    集成步骤

    基础库组件
    • 定义组件
      按上述组件规范,定义新组件。以networklib为例,见源码。

    • 补充easycomponent
      集成新组件的实现,源码有相关demo,使用责任链的设计模式。

    以网络库为例,见:

    网路库的builder外观接口 接入网络库实现 网络库调用入口
    • 重新设置design_style组件
      主题,尺寸,颜色,需要定义成适合本应用的一套样式。

    修改colors.xml文件:

    colors.xml

    修改dimens.xml文件:

    dimens.xml
    • 测试组件调用,并开始你的开发之旅。
      初始化Application:
    初始化Application

    你的app工程依赖:

    组件依赖

    调用网络组件(初始化,和调用):

    初始化和调用api过程

    附言
    本人做过4年java服务端开发,5年android开发经验。以上为个人的经验总结,不当之处欢迎讨论,并持续优化。

    大纲与资料.png 高清视频资料.jpg

    +qq群:853967238。获取以上高清技术思维图,以及相关技术的免费视频学习资料。

    相关文章

      网友评论

        本文标题:Android快速开发框架,基础库,样式库,组件化,组件集成

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