Android之常用開發架構

來源:互聯網
上載者:User

標籤:

 


1、Rajawali
介紹:
安卓的OpenGL ES 2.0/3.0 引擎。可以用於製作普通應用或者動態壁紙,當然也可以用於製作遊戲。
項目地址: https://github.com/Rajawali/Rajawali


2、RxAndroid
介紹:
RxAndroid是RxJava的一個針對Android平台的擴充。它包含了一些能夠簡化Android開發的工具。
項目地址: https://github.com/ReactiveX/RxAndroid
3、Paginize
介紹:
Paginize 是一個輕量級的UI架構,使用註解來注入布局和view,除了使用註解之外,該架構還有兩個特色:1.用Page的概念來取代Fragment,2.切換page時內建ios風格的動畫效果。
項目地址: https://github.com/neevek/Paginize


4、otto
介紹:
Otto 是square公司出的一個事件庫(pub/sub模式),用來簡化應用程式組件之間的通訊。 Otto 修改自Google的Guava庫,專門為Android平台進行了最佳化。
項目地址: https://github.com/square/otto


5 、rebound
介紹:
rebound是facebook的開源動畫庫。可以認為這個動畫庫是獨立於android Framework之外的一種動畫實現。
項目地址: https://github.com/facebook/rebound


6、KJFrameForAndroid
介紹:
KJFrameForAndroid 又叫KJLibrary,是一個協助快速開發的架構。使用KJFrameForAndroid,你可以只用一行代碼就完成http請求、網狀圖片載入、資料庫資料儲存或讀取。
項目地址: https://github.com/kymjs/KJFrameForAndroid


7、xUtils
介紹:
xUtils 包含了很多實用的android工具。 xUtils 支援大檔案上傳,更全面的http請求協議支援(10種謂詞),擁有更加靈活的ORM,更多的事件註解支援且不受混淆影響... xUitls 最低相容android 2.2 (api level 8)
項目地址: https://github.com/wyouflf/xUtils


目前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記憶體;
可配置線程載入線程數量,緩衝大小,緩衝路徑,載入顯示動畫等...


8、butterknife-view
注入工具
介紹:
為了減少頻繁的調用findViewById(R.id...),可以採用一些注入架構,可以簡化自己的代碼,讓你更專註於實際的功能開發,butterknife就是這樣的一個架構,他是jakewharton大神的作品,值得一試。
class ExampleActivity extends Activity {
  @InjectView(R.id.title) TextView title;
  @InjectView(R.id.subtitle) TextView subtitle;
  @InjectView(R.id.footer) TextView footer;
  @Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.simple_activity);
    ButterKnife.inject(this);
    // TODO Use "injected" views...
  }
}


這是部落格地址:
http://jakewharton.github.io/butterknife/
項目地址: https://github.com/JakeWharton/butterknife


9、cube-sdk
一淘推出的開發架構
介紹:
cube一個Android開發包, 可極大提高你的開發效率。主要提供了圖片載入以及網路請求方面的api功能。
項目地址: https://github.com/etao-open-source/cube-sdk
他們的網站:http://cube-sdk.liaohuqiu.net/cn/


10、ASimpleCache 
一個簡單的緩衝架構
介紹:
ASimpleCache 是一個為android制定的 輕量級的 開源緩衝架構。輕量到只有一個java檔案(由十幾個類精簡而來)。 它可以緩衝什麼東西?普通的字串、JsonObject、JsonArray、Bitmap、Drawable、序列化的java對象,和 byte資料。
項目地址: https://github.com/yangfuhai/ASimpleCache


11、androidannotations
介紹:
AndroidAnnotations是一個能夠讓你快速進行Android開發的開源架構,它能讓你專註於真正重要的地方。 使代碼更加精簡,使項目更加容易維護,它的目標就是“Fast Android Development.Easy maintainance”。 通過一段時間的使用發現,相比原生的Android開發,確實能夠讓你少些很多代碼
項目地址: https://github.com/excilys/androidannotations


12、Event Bus
解耦android模組
介紹:
當一個Android應用功能越來越多的時候,保證應用的各個部分之間高效的通訊將變得越來越困難。如何優雅地解決這個問題?這時候,就需要使用到EventBus。 EventBus是GreenRobot出品的Android系統的一個Event Bus類庫,使用起來和之前我們所介紹的Square的Otto差不多,都是用來簡化應用組件之間的通訊。
項目地址: https://github.com/greenrobot/EventBus


13、BeeFramework_Android
介紹:
BeeFramework Android版主要為Android初級開發人員提供一個基於MVC開發模式的APP DEMO,並提供一套APP內調試工具,包括 查看網路資料請求曆史 Crash Log列表 真機WIFI環境下類比2G\3G網路 查看APP效能(記憶體佔用,CPU佔用等)
項目地址: https://github.com/BeeFramework/BeeFramework_Android


14、afinal
介紹:
Afinal是一個android的ioc,orm架構,內建了四大模組功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過finalActivity,我們可以通過註解的方式進行綁定ui和事件。通過finalBitmap,我們可以方便的載入bitmap圖片,而無需考慮oom等問題。通過finalDB模組,我們一行代碼就可以對android的sqlite資料庫進行增刪改查。通過FinalHttp模組,我們可以以ajax形式請求http資料。
Afinal裡面目前包含了四大組件:
FinalHttp:用於請求http資料,直接ajax方式請求,檔案上傳, 斷點續傳下載檔案等
FinalBitmap:用於顯示bitmap圖片,而無需考慮線程並發和oom等問題。
FinalActivity:完全可以通過註解方式繫結控制項和事件,無需編寫代碼。
FinalDb:android中sqlite的orm架構,一行代碼搞定增刪改查。


Afinal是一個android的ioc,orm架構,內建了四大模組功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過finalActivity,我們可以通過註解的方式進行綁定ui和事件。通過finalBitmap,我們可以方便的載入bitmap圖片,而無需考慮oom等問題。通過finalDB模組,我們一行代碼就可以對android的sqlite資料庫進行增刪改查。通過FinalHttp模組,我們可以以ajax形式請求http資料。詳情請通過以下網址查看。
項目地址: https://github.com/yangfuhai/afinal


15、Volley
介紹:
在這之前,我們在程式中需要和網路通訊的時候,大體使用的東西莫過於AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google I/O 2013上,Volley發布了。Volley是Android平台上的網路通訊庫,能使網路通訊更快,更簡單,更健壯。
項目地址: https://github.com/mcxiaoke/android-volley

Android之常用開發架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.