1. 程式人生 > >Android 快速搭建App架構

Android 快速搭建App架構

如何搭建App的基本框架,這個問題考察了Android的技術選型以及整體架構的能力。

有一定經驗的Android開發者,或多或少都有自己的一套基礎開發工具集,這些工具包含了開源的第三方庫和自己開發的庫。

App的整體架構:應用層和基礎層

  • 應用層用於展示效果,直面使用者
  • 基礎層用於實現,提供App的公有的東西,避免重複

    技術選型的考量點:
    選擇第三方庫一般綜合考慮如下幾點:

  • 提供的特性是否滿足專案的需求

  • 是否提供簡潔的api,方便整合
  • 效能不能太差
  • 文件比較齊全
  • 技術支援
  • 大小
  • 方法數,避免64k問題

    日誌記錄能力

  • Logger基於Android的Log類基礎上進行封裝,格式化輸出,支援json、xml格式資訊,但不支援List、Set、Map和陣列常見的java集合類的格式化輸出

  • LogUtils實現Logger缺失的上述特性
  • Logger只支援列印到Logcat
  • timber實現了Logger缺失的上述特性
    最終,選用timber+Logger+LogUtils

JSON解析能力
- Fastjson 效能和包大小

資料庫操作能力

  • greeDAO 效能和包大小

網路通訊能力
- Okhttp
- Volley 處理快取、載入、請求

圖片快取和顯示能力

  • BitmapFun 71kb
  • Picasso 120kb
  • Glide 475kb
  • Fresco 3.4MB
  • android-Universal-Image-Loader 162kb

    根據App對圖片顯示和快取需求從低到高來選擇