Android快速開發框架,基礎庫,樣式庫,組件化,組件集成
概述
快速開發框架,并不是現成的框架。它是一種架構,它集成了基礎庫,網絡庫,尺寸顏色主題定義,并提出了一種組件化設計。它更像是一種sdk+架構設計抽象。本文也提供了組件設計規范和集成demo,開發者使用時,還需要做定義工作。
目標
快速接入基礎庫和組件,大大縮短新應用開發周期。統一開發模式,能帶來快速開發,快速維護,功能穩定的體驗。
組件化
- 封裝基礎庫組件,包括基本的架構基礎類,activity,dialog,動態權限,沉浸式,工具類等
- 封裝一套design組件,包含規定的多套尺寸,樣式,以及主題
- 按照規范定義功能組件,網絡組件,分享組件等
- 封裝組件集成,通過統一入口鏈接各個組件。
App架構
1 、整體架構圖
架構主要是業務模塊化,以及通用功能組件化。但不限于此,有需要還能繼續分拆,業務模塊組件化,插件化,或進程化
模塊依賴baselib組件和easyComponent組件
easyComponent組件依賴其他功能組件

2、應用層模塊化
業務模塊使用livedata的架構模式。
模塊內基本架構:

livedata基本結構圖:

基本組件介紹
基礎庫 baselib
包含:
- life-arch,livedata基本封裝
- 基礎SharePerference封裝
- 環境設置,包括接口環境,debug環境(可控制日志輸出)
- 基礎Activity/Fragment
- dialog, tab, statusbar
- recyclerview快速開發
- viewtools
- 動態權限
- 工具類
- 多任務處理Rxjava
- 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組件
不祥
組件設計規范
應包含:
- 盡量減少對其他組件的依賴
- 組件初始化過程(比如設置Application)
- 調用組件的過程
- 生命周期管理
集成步驟
下載源碼demo,https://github.com/superroye/lefastdev
基礎庫組件使用
基礎庫收錄了大部分常用功能,后續繼續完善。

定義組件
按上述組件規范,定義新組件。以networklib為例,見源碼。
補充easycomponent
集成新組件的實現,源碼有相關demo,使用責任鏈的設計模式。
以網絡庫為例,見:



重新設置design_style組件
主題,尺寸,顏色,需要定義成適合本應用的一套樣式。
修改colors.xml文件:

修改dimens.xml文件:

測試組件調用,并開始你的開發之旅。
初始化Application:

你的app工程依賴:

調用網絡組件(初始化,和調用):

附言
本人做過4年java服務端開發,5年android開發經驗。以上為個人的經驗總結,不當之處歡迎討論,并持續優化。