閱讀958 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Android[第三方or官方]高質量實用【組件&開源項目&框架】集合貼

前言:這裏的隻起統計作用,方便以後開發使用,會給出源地址,方便大家查閱。

===================================================

①:PhotoView(圖片瀏覽框架)

PhotoView 是一款擴展自Android ImageView ,支持通過單點/多點觸摸來進行圖片縮放的智能控件。特性:

1,支持單點/多點觸摸,即時縮放圖片;

2,支持平滑滾動;

3,在滑動父控件下能夠運行良好;(例如:ViewPager

源地址:https://github.com/chrisbanes/PhotoView

===================================================

②:Volley(Google網絡通信框架)
在這之前,我們在程序中需要和網絡通信的時候,大體使用的東西莫過於AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google I/O 2013上,Volley發布了。Volley是Android平台上的網絡通信庫,能使網絡通信更快,更簡單,更健壯。
這是Volley名稱的由來: a burst or emission of many things or a large amount at once
源地址:
官方:https://android.googlesource.com/platform/frameworks/volley
翻譯:https://blog.csdn.net/t12x3456/article/details/9221611
===================================================
③:Android-autoupdater(Android客戶端自動升級庫)

android-autoupdater 是一個用於android客戶端自動升級的庫。主要特性如下:

1、擴展性強,可以自定義UI

2、使用簡單,不需要獨立的服務器

3、支持json和xml

4、操作智能,所有邏輯已經實現,隻需要修改UI,即可。

源地址:https://github.com/snowdream/android-autoupdater/releases

===================================================

④:Android-downloader(下載庫)

一個用於下載的android庫。主要特性如下:

1、使用簡單,最少隻需要下載地址即可;

2、可以猜測下載任務名稱

3、自動設置下載路徑

4、支持斷點續傳

5、所有監聽返回的接口,例如onAdd等,都支持UI操作

源地址:https://github.com/snowdream/android-downloader
===================================================

⑤:Afreechart(圖表庫)

Afreechart是一個很強大的圖表庫,支持股票曲線圖,餅圖,曲線等。

源地址:https://code.google.com/p/afreechart

===================================================

⑥:Afinal(整體框架)

Afinal是一個orm、ioc框架,遵循約定大於配置原則,無需任何配置即可完成所有工作,但也可以通過配置達到個人的個性化需求。

Afinal提倡代碼快速簡潔,盡量一行代碼完成的事情不會用兩行。

Afinal裏麵目前包含了四大組件:
,1,FinalHttp:用於請求http數據,直接ajax方式請求,文件上傳, 斷點續傳下載文件等
,2,FinalBitmap:用於顯示bitmap圖片,而無需考慮線程並發和oom等問題。
,3,FinalActivity:完全可以通過注解方式綁定控件和事件,無需編寫代碼。
,4,FinalDb:android中sqlite的orm框架,一行代碼搞定增刪改查。

源地址:https://github.com/yangfuhai/afinal

⑦:xUtils(整體框架)

xUtils 包含了很多實用的android工具。

xUtils 最初源於Afinal框架,進行了大量重構,使得xUtils支持大文件上傳,更全麵的http請求協議支持(10種謂詞),擁有更加靈活的ORM,更多的事件注解支持且不受混淆影響...

xUitls最低兼容android 2.2 (api level 8)

目前xUtils主要有四大模塊:

DbUtils模塊:
android中的orm框架,一行代碼就可以進行增刪改查;
支持事務,默認關閉;
可通過注解自定義表名,列名,外鍵,唯一性約束,NOT NULL約束,CHECK約束等(需要混淆的時候請注解表名和列名);
支持綁定外鍵,保存實體時外鍵關聯實體自動保存或更新;
自動加載外鍵關聯實體,支持延時加載;
支持鏈式表達查詢,更直觀的查詢語義,參考下麵的介紹或sample中的例子。
ViewUtils模塊:
android中的ioc框架,完全注解方式就可以進行UI,資源和事件綁定;
新的事件綁定方式,使用混淆工具混淆後仍可正常工作;
目前支持常用的20種事件綁定,參見ViewCommonEventListener類和包com.lidroid.xutils.view.annotation.event。
HttpUtils模塊:
支持同步,異步方式的請求;
支持大文件上傳,上傳大文件不會oom;
支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT請求;
下載支持301/302重定向,支持設置是否根據Content-Disposition重命名下載的文件;
返回文本內容的請求(默認隻啟用了GET請求)支持緩存,可設置默認過期時間和針對當前請求的過期時間。
BitmapUtils模塊:
加載bitmap的時候無需考慮bitmap加載過程中出現的oom和android容器快速滑動時候出現的圖片錯位等現象;
支持加載網絡圖片和本地圖片;
內存管理使用lru算法,更好的管理bitmap內存;
可配置線程加載線程數量,緩存大小,緩存路徑,加載顯示動畫等...

源地址:https://github.com/wyouflf/xUtils
⑧:ThinkAndroid(整體框架
ThinkAndroid是一個免費的開源的、簡易的、遵循Apache2開源協議發布的Android開發框架,其開發宗旨是簡單、快速的進行 Android應用程序的開發,包含Android mvc、簡易sqlite orm、ioc模塊、封裝Android httpclitent的http模塊, 具有快速構建文件緩存功能,無需考慮緩存文件的格式,都可以非常輕鬆的實現緩存,它還基於文件緩存模塊實現了圖片緩存功能, 在android中加載的圖片的時候,對oom的問題,和對加載圖片錯位的問題都輕易解決。他還包括了一個手機開發中經常應用的實用工具類, 如日誌管理,配置文件管理,android下載器模塊,網絡切換檢測等等工具。
目前ThinkAndroid主要有以下模塊:
MVC模塊:實現視圖與模型的分離。
ioc模塊:android中的ioc模塊,完全注解方式就可以進行UI綁定、res中的資源的讀取、以及對象的初始化。
數據庫模塊:android中的orm框架,使用了線程池對sqlite進行操作。
http模塊:通過httpclient進行封裝http數據請求,支持異步及同步方式加載。
緩存模塊:通過簡單的配置及設計可以很好的實現緩存,對緩存可以隨意的配置
圖片緩存模塊:imageview加載圖片的時候無需考慮圖片加載過程中出現的oom和android容器快速滑動時候出現的圖片錯位等現象。
配置器模塊:可以對簡易的實現配對配置的操作,目前配置文件可以支持Preference、Properties對配置進行存取。
日誌打印模塊:可以較快的輕易的是實現日誌打印,支持日誌打印的擴展,目前支持對sdcard寫入本地打印、以及控製台打印
下載器模塊:可以簡單的實現多線程下載、後台下載、斷點續傳、對下載進行控製、如開始、暫停、刪除等等。
網絡狀態檢測模塊:當網絡狀態改變時,對其進行檢測。
源地址:https://github.com/white-cat/ThinkAndroid

暫時這些組件,框架,如有未公布的歡迎留言或發郵件(hjaahj@126.com)我會及時加上。

最後更新:2017-04-03 12:56:08

  上一篇:go Netty4詳解一:理解Netty的設計理念NIO
  下一篇:go Cocos2dx 3.0 過渡篇(七)EditBox和ControlSlider不得不說的故事