Android 常用框架集合

墨香發表於2017-01-11

本章戶要是對一下常用的框架進行整理,包括框架的原始碼地址以及一些比較詳細的部落格講解,幫助大家更方便的查詢資源。

網路

1.android-async-http:

一個比較老的網路框架專案,雖然已經很少使用了,但是可以學習一下里面的寫作方法。

原始碼地址:android-async-http

詳解:

  1. 官方網址
  2. 快速Android開發系列網路篇之Android-Async-Http
  3. android-async-http框架庫使用基礎

2.retrofit:

retrofit是由square開源組織開源的一款非常流行的網路請求框架,現在使用已經非常廣泛。

原始碼地址:retrofit

詳解:

  1. 官方詳解
  2. Retrofit用法詳解
  3. Retrofit分析-漂亮的解耦套路
  4. Retrofit 2.0:有史以來最大的改進

3.okhttp:

okhttp也是由square開源組織開源的一款網路底層封裝庫,上面介紹的Retrofit也是基於此庫進行的二次封裝。

原始碼地址:okhttp

詳解:

  1. 官方詳解
  2. 如何更高效地使用 OkHttp
  3. OkHttp:Java 平臺上的新一代 HTTP 客戶端
  4. OKHttp原始碼解析
  5. OKHttp原始碼解析-ConnectionPool對Connection重用機制&Http/Https/SPDY協議選擇

4.Volley

Volley是由谷歌開源的一款網路請求框架。

原始碼地址:Volley

詳解:

  1. Android 網路通訊框架Volley簡介(Google IO 2013)
  2. Android Volley完全解析(系列)

ReactiveX

知名的響應式開發Rx系列,根據語言包含:

根據平臺包含:
RxNetty:RxNetty
RxAndroid:RxAndroid
RxCocoa:RxCocoa

詳解:
官方網址
給 Android 開發者的 RxJava 詳解
RxJava 與 Retrofit 結合的最佳實踐

圖片載入及顯示

1.Android-Universal-Image-Loader:

原始碼地址:Android-Universal-Image-Loader

詳解:
Android 開源框架Universal-Image-Loader完全解析(一)--- 基本介紹及使用

Android 開源框架Universal-Image-Loader完全解析(二)--- 圖片快取策略詳解

Android 開源框架Universal-Image-Loader完全解析(三)---原始碼解讀

2.fresco:

原始碼地址:fresco

詳解:官方文件

3.glide:

原始碼地址:glide

詳解:
Glide 一個專注於平滑滾動的圖片載入和快取庫

Google推薦的圖片載入庫Glide介紹

4.picasso:

原始碼地址:picasso

詳解:
官方文件

picasso-強大的Android圖片下載快取庫

5.PhotoView

原始碼地址:PhotoView

詳解:PhotoView 原始碼解析

熱更新

1.AndFix:--Alibaba

原始碼地址:AndFix

詳解:Alibaba-AndFix Bug熱修復框架原理及原始碼解析

Android熱補丁之AndFix原理解析

2.AndroidInstantRun:--google

原始碼地址:instant-run

詳解:
深度理解Android InstantRun原理以及原始碼分析

Instant Run: How Does it Work?!

3.DroidFix:

原始碼地址:DroidFix

詳解:安卓App熱補丁動態修復技術介紹

4.HotFix:

原始碼地址:HotFix

詳解:基於Nuwa實現Android自動化HotFix

5.Nuwa

原始碼地址:Nuwa

詳解:
Android 熱修復Nuwa的原理及Gradle外掛原始碼解析

安卓熱更新之Nuwa實現步驟

6.Tinker

原始碼地址:tinker

詳解:
官方文件

Android N混合編譯與對熱補丁影響解析

tinker原始碼研讀(一):補丁生成之DexDiff原理簡析

7.RocooFix:

原始碼地址:RocooFix

8.AnoleFix:

原始碼地址:AnoleFix

9.Robust:--美團

詳解:Android熱更新方案Robust

註解

1.dagger:

原始碼地址:dagger

詳解:官方文件

2.butterknife

原始碼地址:butterknife

詳解:官方文件

3.androidannotations:

原始碼地址:androidannotations

詳解:官方文件

4.Dagger2

原始碼地址:Dagger2

5.roboguice

原始碼地址:roboguice

圖表

1.WilliamChart:

原始碼地址:WilliamChart

功能:繪製圖表的庫,支援 LineChartView、BarChartView 和 StackBarChartView 三中圖表型別,並且支援 Android 2.2 及以上的系統。

2.XCL-Charts:

原始碼地址:XCL-Charts

功能:XCL-Charts 基於原生的 Canvas 來繪製各種圖表,在設計時,儘量在保證開發效率的同時,給使用者提供足夠多的定製化能力。因此使用簡便,同時具有相當靈活的定製能力。目前支援 3D/非 3D 柱形圖(Bar Chart)、3D/非 3D 餅圖(Pie Chart)、堆積圖(Stacked Bar Chart)、面積圖(Area Chart)、 折線圖(Line Chart)、曲線圖(Spline Chart)、環形圖(Dount Chart)、南丁格爾玫瑰圖(Rose Chart)、儀表盤(Dial Chart)、刻度盤(Gauge Chart)、雷達圖(Radar Chart)、圓形圖(Circle Chart)等圖表。其它特性還包括支援圖表縮放、手勢移動、動畫顯示效果、高密度柱形顯示、圖表分界定製線、多圖表的混合顯示及同資料來源不同型別圖表切換等。

3.HelloCharts for Android:

原始碼地址:HelloCharts for Android

功能:支援折線圖、柱狀圖、餅圖、氣泡圖、組合圖;支援預覽、放大縮小,滾動,部分圖表支援動畫;支援 Android 2.2 以上

4.MPAndroidChart:

原始碼地址:MPAndroidChart

功能:強大的圖表繪製工具,支援折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、網狀圖等;支援圖的拖拽縮放;支援 Android 2.2 以上,支援橫縱軸縮放,多指縮放,展現動畫、高亮、儲存到 sdcard、從檔案讀取圖表

5.achartengine:

原始碼地址:achartengine

功能:強大的圖表繪製工具,支援折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、撥號圖/表、立方線圖及各種圖的結合

6.GraphView:

原始碼地址:GraphView

功能:繪製圖表和曲線圖的 View,可用於 Android 上的曲形圖、柱狀圖、波浪圖展示

7.HoloGraphLibrary:

原始碼地址:HoloGraphLibrary

功能:繪製現狀圖、柱狀圖、餅狀圖

8.EazeGraph:

原始碼地址:EazeGraph

功能:Android 圖表庫,支援柱狀圖、分層柱狀圖、餅狀圖、線性圖

9.PieChartView:

原始碼地址:PieChartView

功能:比較簡單直接的餅狀統計報表圖,使用方便,設定相應的屬性引數即可

設計模式

此處說的設計模式是谷歌官方公開的對MVP模式的程式碼示例,大家可以做為參考學習一下:

Stable samples

Samples in progress

External samples

External samples are variants that may not be in sync with the rest of the branches.

  • todo-mvp-fragmentless - Based on todo-mvp, uses Android views instead of Fragments.

  • todo-mvp-conductor - Based on todo-mvp, uses the Conductor framework to refactor to a single Activity architecture.

事件匯流排

資料庫

網路解析

跨平臺移動開發工具

1.Weex

原始碼地址:weex

官方文件:

2.React Native

原始碼地址:React Native

官方文件:
React Native中文
React Native英文

Log框架

測試框架(單元測試)

視訊

多主題

其他

谷歌開源手機號驗證庫:
libphonenumber

同步釋出地址:墨香部落格

更新於2017年2月13日,後續會持續更新。

相關文章