Android常用庫之遇見你真舒心

2021-01-19 Cocoa開發者社區

▲點擊上方「CocoaChina」關注即可免費學習iOS開發


原文連結:http://www.jianshu.com/p/19368c2cdcaf


這篇文章5月份寫創業項目的時候整理的,由於當時是快速開發,所以用到一些現成的開源庫,整理起來方便自己和大家。


系統框架


1. 網絡請求


Android Async HTTP

Android異步HTTP庫


AndroidAsync

異步Socket,HTTP(客戶端+伺服器),WebSocket,和socket.io庫。基於NIO而不是線程。


Okhttp

Http與Http/2的客戶端


Retrofit

okhttp再封裝


Volley

Google推出的Android異步網絡請求框架和圖片加載框架


2. 網絡解析


Gson

一個Java序列化/反序列化庫,可以將JSON和java對象互相轉換


Jackson

Jackson可以輕鬆地將Java對象轉換成json對象和xml文檔,同樣也可以將json、xml轉換成Java對象


fastjson

fastjson是阿里出的一款超快的解析庫


Htmlparser

解析單個獨立html或嵌套html


Jsoup

一個以最好的DOM,CSS和jQuery解析html的庫


3.圖片加載


Android-Universal-Image-Loader

強大的加載,緩存,展示圖片的庫


Picasso

強大的圖片下載與緩存的庫


Fresco

再也不怕OOM的圖片加載庫(力薦)


Glide

圖片加載和緩存的庫


4.數據處理


Ormlite

JDBC和Android的輕量級ORM java包


GreenDAO

輕鬆將對象映射到SQLite資料庫的ORM解決方案


5.圖表處理


WilliamChart

創建圖表的Android庫


HelloCharts

兼容性超高的Android圖表庫


6.後臺處理


Android Priority Job Queue

專門為Android輕鬆調度任務的工作隊列


7.響應式編程


RxAndroid

Android上的響應式擴展,在RxJava基礎上添加了Android線程調度


RxJava

JVM上的響應式擴展


RxBinding

提供用RxJava綁定Android UI的API


8.事件總線


EventBus

優雅地替換Handler

OTTO

同樣非常好用的總線庫


控制項庫


1.下拉刷新、下拉加載


Android PullToRefresh

最經典、最多人用的下拉刷新、加載更多。



Android Ultra Pull To Refresh

非常方便自定義的下拉刷新框架,繼承於ViewGroup可以包含任何View,使用起來非常簡單,如果想要自定義樣式,就像給ListView加一個HeaderView一樣簡


Phoenix

漂亮的動態刷新庫



2.底部導航欄


LuseenBottomNavigation

很方便的遵循MD設計的底欄



ahbottomnavigation

遵循谷歌設計規範的底欄庫



BottomBar

另一個遵循谷歌設計規範的底欄庫(PS:之前我使用的時候有點小BUG現在不清楚)


3.二維碼


Zxing

谷歌開發的二維碼處理庫,質量沒的說!一維碼二維碼都能掃!


4.側滑菜單


NavigationDrawer

Material Design的抽屜模板庫,快速搭建側滑菜單。


SlidingMenu

之前也是個很優秀的側滑庫直到谷歌來攪局。。


FlowingDrawer

超帥的側滑菜單




5.側滑返回


ParallaxSwipeBack

帶視覺差的側滑返回,類似於新版微信和lofter的側滑返回效果。引入方便,核心代碼只需幾十行!


6.文本輸入框


MaterialEditText

方便自定義的EditText控制項庫


7.側貼標籤


labelview

類似淘寶的側貼標籤庫



FlycoLabelView

輕量級側貼標籤


8.側滑功能項


AndroidSwipeLayout

類似QQ的側滑刪除



9.動畫庫


animate

幾乎涵蓋所有MD動畫



Material-Animations

MD動畫庫



ExplosionField

爆破效果的刪除動畫庫



LoadingDrawable

小清新的加載動畫



10.搜索框


floatingsearchview

自帶動畫與動態加載數據的搜索框控制項



11.快捷選擇


drag-select-recyclerview

一直覺得魅族的快捷選擇很有用,終於找到一個類似功能的還支持recycleView


12.引導頁


material-intro

MD風格的引導頁


MaterialIntroView

MD式的高亮引導頁



HTextView

其實這是個帥炸的文字展示庫,可是我用過做引導頁而且逼格不錯!



13.菜單(高能)


android-snake-menu

類似Tumblr的蛇形菜單



coolMenu

帥炸的視窗菜單



BoomMenu

爆炸式的彈出菜單


總結


Github上優秀的開源庫很多,經常找些優秀的庫可以縮短開發時間,多看些開源項目源碼也有利於開發與代碼規範。


微信號:CocoaChinabbs


▲長按二維碼「識別」關注即可免費學習 iOS 開發

月薪十萬、出任CEO、贏娶白富美、走上人生巔峰不是夢

--------

商務合作QQ:2408167315

投稿郵箱:support@cocoachina.com

相關焦點

  • android常用的五大布局 - CSDN
    添加布局的方式利用XML文件設計 使用Java代碼添加五大常用布局線性布局 LinearLayout 相對布局 RelativeLayout 幀布局    FrameLayout 表格布局 TableLayout 約束布局 ConstraintLayout線性布局 LinearLayoutLinearayout又稱作線性布局,是一種非常常用的布局,這個布局會將它所包含的控制項在線性方向上依次排列
  • android 排列 - CSDN
    linearLayout中有一個重要的屬性 android:layout_weight="1",這個weight在垂直布局時,代表行距;水平的時候代表列寬;weight值越大就越大。線形布局中預覽和真機中完全一樣。TextView佔一定的空間,沒有賦值也有一定的寬高,要特別注意。
  • 老司機總結下 Android Studio 實用小技巧
    前言相信介紹 Android Studio 快捷鍵啊使用技巧的文章估計比我們屌絲程序猿的數量還要多,所以多我一篇不多,少我一篇不行,那本猿就把自己幾乎每天都用的快捷鍵整理一下,希望能有人用到,如果你已經知曉了,那麼請輕噴,畢竟我too young….(本屌用的是mac,所以win/linux稍微參考一下,畢竟差不多).常用1 .
  • 真高興遇見你
    第一次讀龍應臺的《孩子,你慢慢來》時,我還不是媽媽,也完全沒有承擔生活新角色的心態和情緒。但不知怎的,我忘不掉書裡媽媽騎車送華安上幼兒園的這一段:  「安安,聽,教堂的鐘聲……」媽媽慢下腳步。「鐘聲——叮噹叮噹——」安安愉快地說,臉龐轉向教堂的方向。「花,花——」小手指著路邊的花叢,「紅色的!」
  • android布局和界面 - CSDN
    LinearLayout是最簡單也是最常用的一種布局方式,它根據orientation 屬性值,將包含的所有控制項或布局對象排列在同一個方向:水平或垂直,在這種布局中,所有的控制項都是依序排列成一條線。在線性布局中的控制項允許有自己的margins和gravity屬性。
  • android 垂直約束 - CSDN
    它的使用方式有兩種在 AS 2.3 以上版本都可以使用滑鼠拖動使用代碼書寫控制項之間的約束這篇文章雖然是 ConstraintLayout 專題文章,但是只是介紹了高頻用法,那些不常用的功能或細節並沒有細講
  • 如何使用am命令啟動Android應用
    本文將詳細介紹使用am命令啟動應用的四種方法,相信會對你的測試開發工作有所幫助。一、使用am命令啟動一般的Android App。命令格式為:adb shell am start -n package/launch_activity示例:打開設置App命令:adb shell am start -n com.android.settings/com.android.settings.Settings命令的關鍵在於獲取package和launch_activity。
  • 二維碼認識及Android快速接入(有源碼)
    2.常用功能信息獲取(名片、地圖、WIFI密碼、資料)網站跳轉(跳轉到微博、手機網站、網站)廣告推送(用戶掃碼,直接瀏覽商家推送的視頻、音頻廣告)手機電商(用戶掃碼、手機直接購物下單)防偽溯源(用戶掃碼、即可查看生產地;同時後臺可以獲取最終消費地)優惠促銷(用戶掃碼,下載電子優惠券
  • android平臺通知體提醒機制研究
    你有過這樣的經歷嗎?深夜被手機鈴聲從睡夢中驚醒,卻發現是path上好友上傳新照片的提醒,亦或是應用市場上軟體更新的提醒,亦或是某遊戲中養的寵物又餓了……你有過這樣的經歷嗎?用手機聊天,一直沒發現屏幕上有任何變化,但對方已經因為你沒回復和胡思亂想了……智慧型手機快速普及,形形色色的apps湧入用戶手機,每款應用都希望抓住用戶,都希望被持續關注,於是鋪天蓋地的手機應用提醒和通知每天在用戶手機裡絡繹不絕,真的是很必須嗎?是否需要考慮一下用戶的習慣和感受?
  • 教你如何在Mac系統下編譯Android系統的源碼
    ~/android.dmg 替換成 ~/android.dmg.sparseimage。你只需要在AppStore 裡面安裝Xcode就可以了。https://source.android.com/source/build-numbers解壓縮下載的文件將會得到一個sh的文件通過終端 sh xxx.sh 運行此處需要agree用戶協議,你只需要按住向下鍵,就可以劃到最後輸入 I ACCEPT 就可以了。
  • Android 官方兼容庫 EmojiCompat Support Library
    「你就是巫九?」楚楓眼前一亮,第一次發現,世間還有長得如此奇葩的人。    巫九鼻孔一張,大嘴一咧,拍著那乾癟的肚子,得意洋洋的道:「老子就是巫九,你挑戰老子?」    「不是挑戰你,是要宰了你。」楚楓冷聲笑道。    「好,老子滿足你這個心願,長老,拿張生死狀來,老子今日在這裡了解了這小子。」巫九扯開嗓子,對著下方吼了一聲。
  • Android實戰項目真槍實彈第二炮
    你可以在公眾號對話窗口回復【QQXXXX+我要報名】;也可以登錄磨礪營官網www.moliying.com在網站進行諮詢;還可以加QQ:1409615756與曹老師進行溝通。><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"
  • 定義Android 清單
    package=com.demo.android.bmi「package」 是「manifest」(清)嘶`的一特e儺裕例中的熱菘捎嗣鰨@用程式的M入c存在於「com.demo.android.bmi」@名Q空g/路街小android:versionCode=1android:versionName=1.0「android:versionCode
  • Android 自定義Switch開關按鈕的樣式
    ><shape xmlns:android="http://schemas.android.com/apk/res/android"    android:shape="oval">    <solid android:color="#94C5FF" />    <size        android:width="20dp
  • android判斷edittext獲取焦點 - CSDN
    失焦監聽代碼紅框處解釋:1.輸入框的名字2.如果你想在獲取焦點時觸發就可以把處理代碼寫在這裡3.輸入框失去焦點時執行的代碼Activity完整代碼代碼裡寫了比較詳細的注釋,希望可以幫到大家package com.example.zhengzeyanzheng;import android.support.v7.app.AppCompatActivity
  • 《極簡生活》:化繁為簡,舒心生活
    《極簡生活》的作者有川真由美通過自己在生活各方面的切身感受與經歷,以及對日常生活中的整理收納,時尚穿搭、人際交往、理財、時間和空間等提出了一些方法和建議。有川真由美出生於日本,是風靡整個亞洲的生活家,女性導師。她曾做過化妝品公司職員,補習班講師,科學館講解員,優衣庫店長,婚禮策劃,報社編輯等工作。
  • Android中的Drawable基礎與自定義Drawable
    ><selector    xmlns:android=http://schemas.android.com/apk/res/android    android:constantSize=false //StateListDrawable的固有大小是否根據狀態而改變,默認false=根據狀態而改變    android:dither
  • android關閉開機啟動 - CSDN
    com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2919)07-03 10:20:26.633 3015 3027 W System.err: at android.os.Binder.execTransact(Binder.java:697)處理
  • Android一種信息提示機制:Toast
    答案當然是肯定的啦,android已經為我們提供了一個非常簡便的方法,那就是Toast,直譯為吐司~ 很可愛的名字吧~ 用起來像它的名字一樣,非常方便。例如我們要想用戶顯示一些文本信息,可以使用下面的方法~  Toast.makeText(self, "Hello World!"
  • android 水平布局寬度 - CSDN
    ><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:gravity="center