1. 程式人生 > >Android 常用炫酷控制元件(開源專案)git地址彙總

Android 常用炫酷控制元件(開源專案)git地址彙總

第一部分 個性化控制元件(View)

主要介紹那些不錯個性化的 View,包括 ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style 等等。

一、ListView

二、ActionBar

三、Menu

四、ViewPager 、Gallery

五、GridView

六、ImageView

七、ProgressBar

八、TextView

包括 TextView 及所有繼承自 TextView 控制元件,如 EditText、Button、RadioButton

palette效果: Renderings

九、ScrollView

十、TimeView

包括 TimePicker、DatePicker、CalendarView、Clock 等時間相關控制元件

十一、TipView

包括 Toast、角標、UndoBar 等提示性控制元件

十二、FlipView

十三、ColorPickView

十四、GraphView

十五、UI Style

不同樣式的系統 UI 風格,如

iOS、Bootstrap 風格

十六、其他

第二部分 工具庫

主要包括那些不錯的開發庫,包括依賴注入框架、圖片快取、網路請求、資料庫ORM 建模、Android公共庫、Android 高版本向低版本相容、多媒體相關及其他。

一、依賴注入 DI

通過依賴注入減少 View、服務、資源簡化初始化,事件繫結等重複繁瑣工作

二、圖片快取

三、網路請求

四、資料庫 orm 工具包

orm 的 db 工具類,簡化建表、查詢、更新、插入、事務、索引的操作

五、Android 公共庫

  1. Guava
    Google 的基於 java1.6 的類庫集合的擴充套件專案,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O 等等. 這些高質量的 API 可以使你的 JAVa 程式碼更加優雅,更加簡潔
    專案地址:
    https://code.google.com/p/guava-libraries/

    文件介紹:https://code.google.com/p/guava-libraries/wiki/GuavaExplained
  2. HttpCache Http 快取
    文件介紹:http://www.trinea.cn/android/android-http-cache
    特點是:(1) 根據 cache-control、expires 快取 http 請求
    (2) 支援同步、非同步 Http 請求
    (3) 在匿名回撥中處理請求結果
    (4) 在 UI 執行緒外進行 http 請求
    (5) 預設 gzip 壓縮
    (2) 公共 View(下拉及底部載入更多 ListView、底部載入更多 ScrollView、滑動一頁 Gallery)
    (3) Android 常用工具類(網路、下載、Android 資源操作、shell、檔案、Json、隨機數、Collection 等等)
  3. shipfaster
    整合了 Dagger Otto Retrofit Robolectric Picasso OkHttp,方便快速開發
    專案地址:https://github.com/pyricau/shipfaster
  4. xUtils
    基於 Afinal,包含 DbUtils、ViewUtils、HttpUtils、BitmapUtils 四大模組,可用於快速開發
    專案地址:https://github.com/wyouflf/xUtils
    原理剖析文件:xUtils
  5. Afinal
    Afinal 是一個 android 的 ioc,orm 框架,內建了四大模組功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過 finalActivity,我們可以通過註解的方式進行繫結 ui 和事件。通過 finalBitmap,我們可以方便的載入 bitmap 圖片,而無需考慮 oom 等問題。通過 finalDB 模組,我們一行程式碼就可以對 android 的 sqlite 資料庫進行增刪改查。通過 FinalHttp 模組,我們可以以 ajax 形式請求 http 資料
    專案地址:https://github.com/yangfuhai/afinal
    官網網址:http://www.afinal.org
  6. UltimateAndroid
    UltimateAndroid 是一個快速開發 Android 應用的框架,框架目前主要包含的功能有 View Injection,ORM,非同步網路請求和圖片載入,自動化指令碼測試,磁碟 LRU 等功能.同時提供了類似於 TripleDes、Webview 快速設定、Md5 處理、String 處理,Https 處理等常用工具類,還有超過 100 多種 UI 控制元件效果。
    專案地址:https://github.com/cymcsg/UltimateAndroid
    官網網址:http://blog.marshalchen.com/UltimateAndroid/
  7. SAF
    SAF(Simple Android Framework)是一個簡單的 android 框架,它為開發 Android app 提供了基礎性元件。
    專案地址:https://github.com/fengzhizi715/SAF
    官網網址:http://www.salesuite.cn/
    包括:(1)Event Bus(事件匯流排)
    (2) Rest Client(http 的框架)
    (3) Image Cache(圖片快取)
    (4) Dependency Injection(依賴注入)
    (5) Sqlite ORM(sqlite 的 orm)
    (6) Router(Activity、Fragment 的 Router)
    (7) Utils(各種常用的工具類)
  8. Barber
    Custom View 神器。通過簡單的註解幫助你大大減少 Custom View 中的程式碼量。由於和 ButterKnife 一樣使用了 Annotation Proccessor ,所以對程式效能沒有影響。
    專案地址:https://github.com/hzsweers/barber
  9. device-year-class
    A library that analyzes an Android device's specifications and calculates which year the device would be considered "high end”.(facebook 開發的檢測手機主流配置工具)
    專案地址:https://github.com/facebook/device-year-class
  10. RxAndroid
    對RxJava在Android上的擴充套件,使得Android上也很容易實現reactive components,簡化執行緒操作,從而寫出很漂亮的程式碼。
    專案地址:https://github.com/ReactiveX/RxAndroid
    文件介紹:給Android 開發者的 RxJava 詳解

六、Android 高版本向低版本相容

七、多媒體相關

八、事件匯流排(訂閱者模式)

通過釋出/訂閱事件解耦事件傳送和接受,從而簡化應用程式元件(Activities, Fragments 及後臺執行緒)之間的通訊

九、感測器

十、安全

十一、外掛化

十二、檔案

對不同文件型別的處理,包括 PDF、Word、EPub、Html、Zip 等

  1. Office 365 SDK for Android Preview
    可支援 Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail
    專案地址:https://github.com/OfficeDev/Office-365-SDK-for-Android
  2. jsoup
    一個解析 html 的 java 庫,可方便的提取和操作資料
    專案地址:https://github.com/jhy/jsoup
    官網網址:http://jsoup.org/
    作用:(1) 從一個 url、檔案或 string 獲得 html 並解析
    (2) 利用 dom 遍歷或 css 選擇器查詢、提取資料
    (3) 操作 html 元素
    (4) 根據白名單去除用於提交的非法資料防止 xss 攻擊
    (5) 輸出整齊的 html
  3. Image File Selector
    輕量級的圖片檔案選擇器,用系統api選取,壓縮和裁切圖片,可以方便的得要指定尺寸的圖片
    專案地址:https://github.com/sw926/ImageFileSelector

十三、其他

第三部分 優秀專案

主要介紹那些 Android 還不錯的完整專案,目前包含的專案主要依據是專案有意思或專案分層規範比較好。

一、系統及平臺

二、專案

第四部分 開發工具及測試工具

主要介紹和 Android 開發工具和測試工具相關的開源專案。

一、開發效率工具

二、開發自測相關

三、測試工具

  1. Spoon
    可用於 android 不同機型裝置自動化測試,能將應用 apk 和測試 apk 執行在不同機器上並生成相應測試報告。
    專案地址:https://github.com/square/spoon
  2. Tencent APT
    APT 是騰訊開源的一個 Android 平臺高效效能測試元件,提供豐富實用的功能,適用於開發自測、定位效能瓶頸;測試人員完成效能基準測試、競品對比測試
    專案地址:https://github.com/stormzhang/APT
  3. Android py-uiautomator
    py-uiautomator 是一個對 Android uiautomator 用 python 進行封裝的測試框架.
    專案地址:https://github.com/xiaocong/uiautomator
  4. stetho
    強大的 Android Debug 工具。支援網路請求監控以及資料庫檢視,可以和 Chrome DevTools 結合或者命令列模式。
    專案地址:https://github.com/facebook/stetho

四、開發及編譯環境

五、其他

第五部分

主要介紹那些樂於分享並且有一些很不錯的開源專案的個人和組織。Follow 大神,深挖大神的專案和 following,你會發現很多。

一、個人

  1. JakeWharton
    就職於 Square,絕對牛逼的大神,專案主要集中在 Android 版本相容,ViewPager 及開發工具上
    Github 地址:https://github.com/JakeWharton
    代表作:ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager, scalpel
    pidcat 另外對 square 及其他開源專案有很多貢獻
    主頁:http://jakewharton.com/
  2. Chris Banes
    Github 地址:https://github.com/chrisbanes
    代表作:ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh
    主頁:http://chris.banes.me/
  3. Manuel Peinado
    Github 地址:https://github.com/ManuelPeinado
    代表作:FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader
  4. Jeff Gilfelt
    Github 地址:https://github.com/jgilfelt
    代表作:android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper
    主頁:http://jeffgilfelt.com
  5. sephiroth74
    就職於 Aviary.com
    Github 地址:https://github.com/sephiroth74
    代表作:ImageViewZoom,HorizontalVariableListView,AndroidWheel,purePDF
    主頁:http://www.sephiroth.it/

二、組織

  1. Square
    有態度有良心的企業,很多不錯的分享
    Github 地址:https://github.com/square
    代表作:okhttp、fest-android,android-times-square、picasso、dagger、spoon 等等
    主頁:http://square.github.io/
  2. Inmite s.r.o.
    Github 地址:https://github.com/inmite
    代表作:android-styled-dialogs,android-grid-wichterle,android-selector-chapek
    主頁:http://www.inmite.eu/

三、部落格

License

Copyright 2014 [trinea.cn](http://www.trinea.cn/)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
最後給個git地址:https://github.com/Trinea/android-open-project