閱讀前請點選右上角“關注”,每天免費擷取Android知識解析及面試解答。Android架構解析,隻做職場幹貨,完全免費分享!
ZBLibrary-Android快速開發架構
MVP 架構,提供一套開發标準(View, Data, Event)以及模闆和工具類并規範代碼。封裝層級少,簡單高效相容性好。
OKHttp 網絡請求、Glide 圖檔加載、ZXing 二維碼、沉浸狀态欄、下載下傳安裝、自動緩存以及各種 Base、Demo、UI、Util 直接用。
全新的手勢,側滑傳回、全局右滑傳回都 OUT 啦!
用 BaseView,自定義 View 竟然如此簡單;
用 Entry,兩個變量的 Model/JavaBean 再也不用寫了;
用 BaseHttpListActivity,幾行代碼搞定 HTTP 請求清單 加載和緩存;
還有 100 多個常用 Style,一行搞定 View 屬性,一鍵統一配置UI...
點選右邊連結檢視如何使用 http://my.oschina.net/u/2437072/blog/665241
[以下 Gif 圖看起來比較卡,實際在手機上 App 運作很流暢]
ZBLibraryDemoApp
ZBLibrary_DatePicker.gif
ZBLibrary_PlacePicker (1).gif
ZBLibrary_PlacePicker.gif
APIJSONApp
APIJSON_App_Moment_Comment.gif
APIJSON_App_Moment_Name.gif
APIJSON_App_MomentList_Circle.gif
下載下傳試用
ZBLibraryDemoApp.apk(ZBLibrary)
APIJSONApp.apk(APIJSON+ZBLibrary)
感謝開源
Glide Google 官方推薦的一個強大易用的圖檔加載庫。
OKHttp 很火很強大的 HTTP/HTTPS 傳輸架構。ZBLibrary 中的 HttpManager 對它做了封裝(支援自簽名Https),Demo 中的 HttpRequest 是使用示例。 注:okio.jar 是 OKHttp 的一部分,不能删除。删除後不會在代碼中報錯,但運作會出錯。
FastJson 阿裡巴巴的 JSON 封裝和解析庫。ZBLibrary 中的 JSON 是對 fastjson 的簡單封裝,防止解析異常。
SmartRefreshLayout 下拉重新整理、上拉加載的元件庫,已在 BaseHttpRecyclerActivity 等類内置支援。
SystemBarTint 系統欄管理器,我把它用在 ZBLibrary 的 BaseActivity 中實作了狀态欄沉浸。
ZXingLib 這是該作者對官方 ZXing 二維碼庫的精簡版。我做了修改,作為 ZBLibrary 的 QRCodeLibrary。
初始化
假設你工程中的 Application 為 zblibrary.demo.application.DemoApplication,并且已在 AndroidManifest.xml 中注冊
可以用 DemoApplication 繼承 BaseApplication
public class DemoApplication extends BaseApplication {...}
或 在 DemoApplication 的 onCreate 函數 中調用 BaseApplication.init(this);
public class DemoApplication extends Application { @Override public void onCreate() { super.onCreate(); BaseApplication.init(this); } ...}
注冊 權限和 Activity 等代碼可複制 ZBLibrary 中 AndroidManifest.xml 裡的 , 等相關代碼。
生成代碼
可使用 APIAuto 自動化接口管理工具來生成接口相關代碼:
- 自動生成封裝請求 JSON 的代碼
- 自動生成解析結果 JSON 的代碼
- 自動生成 Modle/JavaBean
https://github.com/TommyLemon/APIAuto
程式設計思想
- 能複制就複制,節約時間避免出錯
- 保留原本結構,簡單上手容易調試
- 增加必要注釋,說明功能和使用方法
- 說明随手可得,不用上網或打開文檔
- 命名必須規範,容易查找一看就懂
- 重載盡量轉發,減少代碼容易修改
- 最先校驗參數,任意調用不會崩潰
- 代碼子產品分區,友善浏覽容易查找
- 封裝常用代碼,友善使用降低耦合
- 回收多餘占用,優化記憶體提高性能
- 分包結構合理,子產品清晰浏覽友善
- 多用工具和快捷鍵,增删改查快捷高效