Android 常用框架集合

AdamThp 7年前發布 | 26K 次閱讀 Android Android開發 移動開發

對一下常用的框架進行整理,包括框架的源碼地址以及一些比較詳細的博客講解,幫助大家更方便的查找資源。

網絡

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

詳解:官方文檔

圖表

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

  • todo-mvp - Basic Model-View-Presenter architecture.

  • todo-mvp-loaders - Based on todo-mvp, fetches data using Loaders.

  • todo-databinding - Based on todo-mvp, uses the Data Binding Library.

  • todo-mvp-clean - Based on todo-mvp, uses concepts from Clean Architecture.

  • todo-mvp-dagger - Based on todo-mvp, uses Dagger2 for Dependency Injection

  • todo-mvp-contentproviders - Based on todo-mvp-loaders, fetches data using Loaders and uses Content Providers

  • todo-mvp-rxjava - Based on todo-mvp, uses RxJava for concurrency and data layer abstraction.

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.

 

來自:http://www.codemx.cn/2017/01/10/FrameCollection/

 

 本文由用戶 AdamThp 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!