一個超級棒的安卓資源庫列表. 對於通用Java庫,請參考 awesome-java.
Libraries
各種好用的庫
Charts
- AChartEngine - 圖表引擎.
- EazeGraph - 圖表圖形庫(Star 711).
- WilliamChart - 具有良好的動態特性的圖表庫(Star 608).
Dependency Injection
- RoboGuice - 安卓依賴注入框架(Star 2699).
- Dagger - Java和安卓依賴注入框架(Star 2899).
- Butter Knife - Android視圖(view)注入功能庫(Star 2811).
Game Development
GUI
- Pull to refresh -一個V4 support library支持的拉動刷新佈局(layout)控件.
- Cardslib - 用於構造UI卡片的安卓庫(Star 3016).
- AndroidStaggeredGrid - 支持多列行可變的網格視圖(View)控件(Star 3051)
- AQuery - 輕量級安卓庫,用來執行異步任務和操縱界面元素.
- Flow - 通過一系列相對獨立的截屏來輔助描述App的功能庫(Star 675).
- Crouton - 安卓上下文敏感的通知控件(Star 2260).
- DragSortListView - 支持拖拽排序的安卓ListView擴展控件(不再維護)(Star 2052).
ActionBar
- ActionBarSherlock - 兼容老版本安卓設計的ActionBar(不再維護)(Star 6625).
- FadingActionBar - Play Music App同款漸變效果action bar(Star 1990).
Navigation
- SlidingMenu - 提供滑入式菜單支持的項目庫(Star 7054).
- PagerSlidingTabStrip - 用在指示ViewPager頁面之間導航的交互式標識器(Star 2858).
- Page View indicator - ViewPager水平滾動頁面位置標識器(Star 4970).
Animations
- Rebound - 引入彈簧動態模型(spring dynamics model)的Java動畫庫(Star 1631).
- Android View Animations - 漂亮的動畫效果集合(Star 2180).
Images
- android-crop - 用於圖片裁剪的項目庫(Star 910).
- CircularImageView - 安卓高性能圓形圖片視圖(Star 660).
Inputs
- FloatingLabel - 輸入框懸浮提示項目庫(Star 101). 不支持Gradle或者Maven.
- MaterialEditText - 符合Material Design的UI控件庫,支持浮動標籤,底部省略號,字符數限制和自定義error color等(Star 839).
Loading Images
- Picasso - 強勁的圖像下載和緩存安卓庫(Star 4936).
- Universal Image Loader - 異步開箱即用型圖像載入和緩存庫(Star 7395).
JSON
- Gson - 基於JSON的對象序列化和反序列化Java庫.
- Jackson JSON Processor - 高性能JSON處理器.
Crash monitoring
- Crashlytics - 簡潔crash報告方案.
- HockeyApp - 提供分佈,崩潰報告,反饋和分析方案
Networking
- Ion - 安卓異步網絡和圖像載入庫(Star 2734).
- OkHttp - 安卓和Java的HTTP + SPDY客戶端庫(Star 3354).
- Asynchronous Http Client - 異步HTTP項目庫(Star 5370).
- RoboSpice - 用於簡化異步網絡請求的安卓模塊庫(Star 2114).
- IceNet - 簡單快速的安卓網絡庫(Star 33).
- Android Volley - 官方發佈的,簡化網絡操作的http庫.
Database
- Cupboard - 通過ContentProvider框架或者直接數據庫訪問來簡化sqlite操作.
- DbInspector - 爲調試目的,提供的一種簡單的查看in-app數據庫的方式(Star 307).
- Realm - SQLite和ORMs之外的另一個選擇, 簡單,新穎快速!面向對象的API和多平臺支持(Star 1227).
ORM
- GreeDAO - 安卓SQLite對象數據映射解決方案.
- ormLight - 面向JDBC和安卓的輕量級對象關係映射庫.
- ActiveAndroid - 活動記錄(Active record)風格的對象關係映射庫.
- Sugar ORM - 提供一種輕鬆便捷的方式來與安卓數據庫進行交互(Star 758).
REST
- Retrofit - 將REST API轉換成Java接口(Star 4242).
Testing
- Robotium - 爲UI黑箱測試提供的自動化測試框架.
- Roboletric - 提供一套單元測試框架, 將測試運行在工作站PC的JVM上,而不是模擬器上.
- AssertJ Android - 提供與安卓匹配的aseertion框架(Star 791).
Tracking
- MobileAppTracking - 通過多路廣告渠道網絡,跟蹤你的營銷活動.
- Mixpanel - 用戶分析平臺.
Utility
- EventBus - 幫助簡化Activities, Fragments, Threads, Services之間的通信(Star 3512).
- Otto - 爲安卓定製的事件總線(Event Bus)(Star 2242).
Wireless
- SmartGattLib - 簡化與藍牙智能設備(比如藍牙低功耗設備BLE)的通信(Star 64).
Other
- Android Support library - 安卓支持庫(Support Library)是一個核心庫集合,提供安卓framework API反向兼容版本.
- Google Play Services - 提供Goolge服務的訪問的庫,例如帳戶同步,Google+(共享,單點登錄),Google地圖,位置API,Google Play遊戲,雲消息,Android的設備管理器等.
- Tape - 爲Java/安卓打造的一個輕量,快速,基於文件的FIFO,同時提供會話支持(Star 896).
- Android Annotation framework - 基於Java註解(annotation), 開發者能夠給出定義, 並在編譯期間使用AndroidAnnotations產生銜接代碼(plumbing code)(Star 4468).
- Google Core Libraries - 集合,緩存,原語支持,併發庫,通用註解,字符串處理,I/O等等.
- Android Scripting - Android腳本語言支持.
- Android Priority Job Queue - 優先級工作隊列庫,可以用來簡化後臺作業調度,提高UX和App穩定性(Star 1288).
- RateMeMaybe - 提示用戶是否願意到PlayStore對App打分(star 57).
- Easy Rating Dialog - 該函數庫提供簡便方式,向用戶展現一個提示App打分的對話框(Star 22).
- ZXing Android-Integration - 提供1維/2維條形碼支持的函數庫(Star 3958).
- Gradle Retrolambda Plugin - 安卓Java 8 Lambdas支持庫(Star 668)
Resources
- Vogella Tutorials - 來自Lars Vogel的高質量教程.
- Android Design in Action Video series Google安卓設計團隊帶來的Android Design in Action系列視頻教程.
- Android Design in Action slides- Google的Android Design in Action系列教程的PPT.
- Android DevBytes Video Series - 與Android Design in Action旗鼓相當的系列技術視頻教程.
- Android Hive Tutorials - 高質量初學者教程.
- Android Weekly - 安卓新聞週刊.
- Android Asset Studio - 圖標和其他小固件產生器(Star 670).
- Android Action Bar Style Generator. ActionBar風格產生器(已經不推薦).
- Device Art Generator - 用App截屏製作設作品插圖.
- Android UI design resources - 提供來自於UI/UX領域google專家的各種設計資源.
- Pencil Project - 開源原型設計軟件.
More lists of libraries
- The Android Arsenal - 大量安卓項目庫列表.
- DevAppsDirect - Demo Market - 展示不同函數庫的App.
- Square libraries - Square提供的多種高質量的功能庫.
- Android.hew.io - 另外一個安卓庫列表.
Development Alternatives
目前來說,個人推薦採用安卓API來構建一個本機(native)應用程序. Scala能夠以一種更簡潔的代碼方式來幫助構建這種本機應用. 但是也會有例外出現,在這些案例中,採用一些跨平臺開發的替代方案可能會更有幫助.
C#
- Xamarin - 採用C#來創建iOS, 安卓和Window應用的框架.
HTML, CSS and Javascript
- PhoneGap - Adobe開發的,採用HTML, CSS和JavaScript技術來構建跨平臺移動App的開源框架.
- Titanium - 採用JavaScript來創建跨平臺"本機“應用的開源框架.
Lua
- Corona SDK - 創建本機(native)iOS和安卓應用的框架(特別是遊戲應用).
Scala
- Scala on Android - 運行在安卓上的Scala介紹.
- Scaloid - Scaloid使你的安卓代碼跟容易理解和維護(Star 1343).
- Macroid - 安卓模塊化函數式UI語言(Star 172).
Groovy
- Groovy on Android - 運行在安卓上的Groovy介紹.
- Groovy Language Support for Android - 用於爲安卓平臺編譯Groovy的Gradle插件(Star 320).
- SwissKnife - 基於註解(Annotation)的安卓多用途函數庫,包括視圖注入和多線程(Star 136).
Kotlin
- Koan - Kotlin編寫的安卓領域特定語言(DSL)(Star 21).
- 照相機 選擇多張的圖片的第三方的jar 控件的
- https://github.com/donglua/PhotoPicker