2018-10-25 android 2018優(yōu)秀框架整理

轉載地址:http://blog.csdn.net/angle0306/article/details/78900051

程序員界有個神奇的網站,那就是github,這個網站集合了一大批優(yōu)秀的開源框架,極大地節(jié)省了開發(fā)者開發(fā)的時間,在這里我進行了一下整理,這樣可以使我們在使用到時快速的查找到含衔,希望對大家有所幫助!

3.Butter Knife

一句話介紹:Butter Knife所提供了一種能力——使用注解生成模板代碼,將view與方法和參數綁定贪染。

上榜理由:github上16.5K個 star缓呛,配合Androidstudio提供的Butter Knife插件,幫助開發(fā)者省卻了頻繁findviewbyid的煩惱杭隙,最新的Butter Knife還提供了onclick綁定以及字符串的初始化哟绊,初學者可以查閱Butter Knife以及Butter Knife插件進一步學習!

官網地址:http://jakewharton.github.io/butterknife/

github:https://github.com/JakeWharton/butterknife

作者:JakeWharton 痰憎,也是square團隊成員之一

使用:

dependencies{

compile'com.jakewharton:butterknife:8.6.0'

annotationProcessor'com.jakewharton:butterknife-compiler:8.6.0'

}

4.MPAndroidChart

一句話介紹:MPAndroidChart是一款圖表框架

上榜理由:github上16.1K個star票髓,以快速、簡潔铣耘。強大著稱的圖表框架

官網地址https://github.com/PhilJay/MPAndroidChart

githubhttps://github.com/PhilJay/MPAndroidChart

作者:PhilJay

使用:

1.在AS中加入Gradle依賴

在根目錄的build.gradle上加入:

allprojects {

? ? ? ? repositories {

maven { url"https://jitpack.io"}

? ? ? ? }

? ? }

在app的build.gradle上加入:

dependencies{

compile'com.github.PhilJay:MPAndroidChart:v3.0.2'

? ? }

5. glide

一句話介紹:glide是一款專注于提供流暢劃動能力的“圖片加載和緩存框架”

上榜理由:15.9k個star洽沟,圖片加載類框架排名第一的框架,google 在2014開發(fā)者大會上演示的camera app就是基于gilde框架開發(fā)的

githubhttps://github.com/bumptech/glide

作者 Bump Technologies團隊

使用:

repositories{

? mavenCentral()

? google()

}

dependencies{

implementation'com.github.bumptech.glide:glide:4.5.0'

annotationProcessor'com.github.bumptech.glide:compiler:4.5.0'

}

6.leakcanary

一句話介紹:一款內存檢測框架蜗细,服務于java和android客戶端

上榜理由:方便裆操,簡潔是leakcanary最大的特點,只需在應用的apllication中集成炉媒,就可以直接使用它踪区;15.5k個star說明了它有多么受歡迎

githubhttps://github.com/square/leakcanary

作者 square團隊

使用:

dependencies{

debugCompile'com.squareup.leakcanary:leakcanary-android:1.5.1'

releaseCompile'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'

testCompile'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'

}

在 Application 中寫入:

publicclass ExampleApplication extends Application {

@Overridepublic void onCreate(){

super.onCreate();

if(LeakCanary.isInAnalyzerProcess(this)) {

// This process is dedicated to LeakCanary for heap analysis.

// You should not init your app in this process.

return;

? ? }

LeakCanary.install(this);

// Normal app init code...

? }

}

8.EventBus

一句話介紹:EventBus是一款本地組件間通信框架

上榜理由:組件間通信框架star量第 一:14.8k,在大型項目的Activities吊骤,fragments缎岗,Threads,Services都可以看到它的使用場景白粉,盡管 EventBus在向未創(chuàng)建的組件傳遞事件時有些局限传泊,僅適合在“活著的”組件間傳遞消息,但仍不妨礙它活躍在各個大型項目各個場景里蜗元。

官網地址http://greenrobot.org/eventbus/documentation/how-to-get-started/

githubhttps://github.com/greenrobot/EventBus

作者 greenrobot

使用:

compile'org.greenrobot:eventbus:3.0.0'

9.zxing

一句話介紹:條碼圖像處理庫

上榜理由:如果你用過二維碼或渤,你肯定已經間接使用過大名鼎鼎的zxing了。13.9K的star量奕扣,讓它排在本榜單第九,實至名歸掌敬,如果你有了解二維碼的需求惯豆,不妨從了解、修改它源碼入手奔害。

githubhttps://github.com/zxing/zxing

作者 Sean Owen

10.picasso

一句話介紹:強力的圖片下載楷兽、緩存框架

上榜理由:本榜單出現的第三款圖片類框架,不同的是picasso更強調圖片下載华临,你可以將picasso集成進你的項目中芯杀,你也可以結合gilde和UIL與picasso,三者一齊封裝至你的項目中,按需所用揭厚。

官網地址http://square.github.io/picasso/

githubhttps://github.com/square/picasso

作者 square團隊

使用:

compile'com.squareup.picasso:picasso:2.5.2'

11.lottie-android

一句話介紹:一款可以在Android端快速展示Adobe Afeter Effect(AE)工具所作動畫的框架

上榜理由:動畫類框架第一名却特,github上 13.3k個star證明了他的優(yōu)越性,利用json文件快速實現動畫效果是它最大的便利筛圆,而這個json文件也是由Adobe提供的After Effects(AE)工具制作的裂明,在AE中裝一個Bodymovin的插件,使用這個插件最終將動畫效果生成json文件太援,這個json文件即可由 LottieAnimationView解析并生成絢麗的動畫效果闽晦。而且它還支持跨平臺喲。

githubhttps://github.com/airbnb/lottie-android

作者:Airbnb 團隊

12.fresco

一句話介紹:一款可以管理圖片內存的框架

上榜理由:github上12.8k個star提岔,圖片類排行榜第四名仙蛉,facebook的出身證明了它并非是重復造的輪子,在管理圖片內存領域上有著它的一片天地碱蒙,漸進式加載荠瘪、加載gif都是它與前三位相比獨有的特性

官網地址:https://www.fresco-cn.org/

githubhttps://github.com/facebook/fresco

作者 facebook

使用:

dependencies {

// 其他依賴

compile'com.facebook.fresco:fresco:0.12.0'

}

下面的依賴需要根據需求添加:

dependencies {

// 在 API < 14 上的機器支持 WebP 時,需要添加

compile'com.facebook.fresco:animated-base-support:0.12.0'

// 支持 GIF 動圖振亮,需要添加

compile'com.facebook.fresco:animated-gif:0.12.0'

// 支持 WebP (靜態(tài)圖+動圖)巧还,需要添加

compile'com.facebook.fresco:animated-webp:0.12.0'

compile'com.facebook.fresco:webpsupport:0.12.0'

// 僅支持 WebP 靜態(tài)圖,需要添加

compile'com.facebook.fresco:webpsupport:0.12.0'

}

13.RxAndroid

一句話介紹:一款Android客戶端組件間異步通信的框架

上榜理由:github上12.7k個 star坊秸,位居組件通信框架的第二名麸祷,僅在EventBus之后,如果要問兩者的區(qū)別褒搔,Eventbus是用來取代組件間繁瑣的 interface阶牍,RxAndroid是用來取代AnsyTask的,并不沖突星瘾;當然RxAndroid的優(yōu)點并不僅限于此走孽,更多優(yōu)雅的實現,可以去官 網查閱琳状!

githubhttps://github.com/ReactiveX/RxAndroid

作者 JakeWharton

使用:

compile'io.reactivex.rxjava2:rxandroid:2.0.1'

compile'io.reactivex.rxjava2:rxjava:2.1.0'

14.SlidingMenu

一句話介紹:側滑菜單欄框架

上榜理由:與Userval-Image- loader 齊名的上古神器框架——為你的app提供側滑菜單欄的功能磕瓷;github閃更有10.5k個star,證明了它的經久不衰困食,即使在Google推出了 NavigationDrawer硕盹,仍然沒有減少開發(fā)者對SildingMenu的擁簇,經典總是經得起考驗的瘩例,這個上古神獸已經四年沒有更新了;有太多 太多的app使用過它垛贤,這些都可以在軟件的開源許可上看到!

githubhttps://github.com/jfeinstein10/SlidingMenu

作者 Jeremy Feinstein

使用:

在gihub上fork源碼琳彩,集成進項目中

15.PhotoView

一句話介紹:一款ImageView展示框架露乏,支持縮放瘟仿,響應手勢

上榜理由:10.3k的star數量,位于圖 片類框架排行榜第五位观蜗,PhotoView與前四位不同的是這次帶來的是圖片的展示能力墓捻,你一定好奇微信的頭像點擊放大是如何實現的,很多App的圖片顯 示響應手勢按壓是如何實現的梧兼,了解PhotoView羽杰,你一定會開心的:雎濉(筆者也不會告訴你ImageView的點擊放大效果在Android的 sample也有)

githubhttps://github.com/chrisbanes/PhotoView

作者:chrisbanes

使用:

在app根目錄的build.gradle中加入:

allprojects {

? ? repositories {

maven { url"https://jitpack.io"}

? ? }

}

在app的module目錄的build.gralde中加入:

dependencies {

compile'com.github.chrisbanes:PhotoView:latest.release.here'

}

使用

android:id="@+id/photo_view"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

PhotoView photoView = (PhotoView) findViewById(R.id.photo_view);

photoView.setImageResource(R.drawable.image);

16.material-dialogs

一句話介紹:一款自定義dialog框架

上榜理由:9.9k個star集灌,也是繼PhotoView,SlidingMenu之后第三款自定義View框架,也許你還是自定義View的新人锈锤,對Dialog使用的還有點生疏久免,你可以通過它提升你的Dilaog使用能力

githubhttps://github.com/afollestad/material-dialogs

作者:Aidan Follestad

使用:

dependencies {

// ... other dependencies here

compile'com.afollestad.material-dialogs:core:0.9.4.5'

}

17.droid-async-http

一句話介紹:一款基于Http協(xié)議的異步請求的網絡框架,

上榜理由:雖然你有無數個使用retrofit+okhttp的理由呼巴,但9.8k個star衣赶,證明它仍然值得你深入學習。值得注意的是摘能,它也已經有兩年沒更新了团搞,你盡管拿去當你懶惰的理由!

githubhttps://github.com/loopj/android-async-http

作者:James Smith

使用:

repositories{

? maven {

url'https://oss.sonatype.org/content/repositories/snapshots/'

? }

}

dependencies{

compile'com.loopj.android:android-async-http:1.5.0-SNAPSHOT'

}

18.androidannotations

一句話介紹:一款基于注解的快速開發(fā)框架

上榜理由:與Butterknife一樣基于 注解复隆,利用注解快速完成view的初始化,不同的是androidannotations提供了更多的能力:簡單的線程模型等亏栈;筆者只接觸過 Butterknife黎侈,無法更進一步敘述androidannotations的優(yōu)勢峻汉,如果你志在深入了解注解的妙用休吠,可以嘗試探索一下!

官網地址http://androidannotations.org/

githubhttps://github.com/androidannotations/androidannotations

作者: WonderCsabo

19.fastjson

一句話介紹:一款基于json解析蔚携、生成的框架

上榜理由:從它的名字不難看出,快速是它最大的特性亡脑,阿里巴巴的出身保證了代碼的質量和優(yōu)越霉咨,9.4k的star數量,也是榜單里第一個出現的中國開源框架喷斋,涉及網絡的app都會用到json,fastjson值得作為你的首選顽腾!

githubhttps://github.com/alibaba/fastjson

作者:alibaba

使用:

compile'com.alibaba:fastjson:1.1.58.android'

22.ViewPagerIndicator

一句話介紹:一款基于ViewPager的頁面指示器開源框架

上榜理由:上古神器崔泵,盡管已經五年未更新了,但你仍然可以在淘寶等app中看到它的使用場景幌甘,8.9K的star量讓它不慍不火的在矗立在榜單里

官網地址http://viewpagerindicator.com/

githubhttps://github.com/JakeWharton/ViewPagerIndicator

作者:JakeWharton

使用:

下載 地址https://github.com/JakeWharton/Android-ViewPagerIndicator/zipball/master

23.Android-CleanArchitecture

一句話介紹:一個講解設計框架的demo

上榜理由:它不是框架,你可以把它當作一本書皱埠,它將教會你如何設計簡潔的架構,工程里有一個sample app忘巧,配合圖文講解,你將對Android客戶端的架構有更深一層的認識际长。8.8k的star數量工育,證明了它是一本“好書”喲。

githubhttps://github.com/android10/Android-CleanArchitecture

作者:Fernando Cejas


26.AndroidSwipeLayout

一句話介紹:非常強大滑動式布局

上榜理由:滑動刪除是國產app常見需求竭沫,商品詳情的上下滑動需求作為開發(fā)者的我們也經常遇到,AndroidSwipeLayout在github上擁有8K個star谎势,證明它經受住了檢驗猖毫,各位值得一試

githubhttps://github.com/daimajia/AndroidSwipeLayout

作者:daimajia

使用:

dependencies {

compile'com.android.support:recyclerview-v7:21.0.0'

compile'com.android.support:support-v4:20.+'

compile"com.daimajia.swipelayout:library:1.2.0@aar"

}

28.greenDAO

一句話介紹:greenDAO是一款高效、快速的SQLite型數據庫

上榜理由:greenDAO的star數量與 Realm不相上下仔役,且與EventBus師出同門巴粪,也是由greenrobot團隊開發(fā)維護的,質量有所保證,但若拷問筆者Realm與 greenDao兩者的優(yōu)劣性页屠,只能具體到實際使用當中,模擬線上的使用情形牢贸,進行高強度測試后才能下判斷,故在此不能一言兩語說完竹习,深表遺憾

官網地址:http://greenrobot.org/greendao/

githubhttps://github.com/greenrobot/greenDAO

使用:

復制代碼

buildscript {

? ? repositories {

? ? ? ? jcenter()

mavenCentral()// add repository

? ? }

? ? dependencies {

classpath'com.android.tools.build:gradle:2.3.1'

classpath'org.greenrobot:greendao-gradle-plugin:3.2.2'// add plugin

? ? }

}

apply plugin:'com.android.application'

apply plugin:'org.greenrobot.greendao'// apply plugin

dependencies {

compile'org.greenrobot:greendao:3.2.2'// add library

}

31.AndroidViewAnimations

一句話介紹:一款提供可愛動畫集合的框架

上榜理由:正如作者所說,它囊括了開發(fā)需求過 程中所有的動畫效果随夸,集成進了這個簡潔可愛的動畫框架宾毒。7.6K的star數,證明了它在動畫框架領域的戰(zhàn)斗力,讓它僅僅位列l(wèi)ottie- android和Material-Animations兩個動畫框架霸主之后,屈居第三名

githubhttps://github.com/daimajia/AndroidViewAnimations

作者:daimajia

使用:

dependencies{

compile'com.android.support:support-compat:25.1.1'

compile'com.daimajia.easing:library:2.0@aar'

compile'com.daimajia.androidanimations:library:2.2@aar'

}

sample:

YoYo.with(Techniques.Tada)

.duration(700)

.repeat(5)

? ? .playOn(findViewById(R.id.edit_area));

34.CircleImageView

一句話介紹:圓角ImageView

上榜理由:也許你已經聽說過無數種展示圓角圖片的方法,但如果你不嘗試嘗試CircleImageView轻掩,那么你的知識庫會因為少了它黯然失色,有的時候完成需求是開發(fā)者優(yōu)先考慮的丐重,不同實現方法牽扯到的性能差異更值得讓人深思,如果你有心在圖片性能上有所涉獵崖蜜,那么CircleImageView絕對不會讓你敗興而歸。最后別忘了記得去看Romain Guy的建議喲氏堤。

githubhttps://github.com/hdodenhof/CircleImageView

作者:Henning Dodenhof

使用:

dependencies {

...

compile'de.hdodenhof:circleimageview:2.1.0'

}

xmlns:app="http://schemas.android.com/apk/res-auto"

android:id="@+id/profile_image"

android:layout_width="96dp"

android:layout_height="96dp"

android:src="@drawable/profile"

app:civ_border_width="2dp"

app:civ_border_color="#FF000000"/>

35.logger

一句話介紹:一款讓log日志優(yōu)雅顯示的框架

上榜理由:logger作為調試框架闪檬,并未給 出很強大的能力,它最大的亮點是優(yōu)雅的輸出log信息,并且支持多種格式:線程衫哥、Json、Xml蚊荣、List、Map等媳叨,如果你整日沉迷于汪洋大海般的 log信息不能自拔,logger就是你的指路明燈!6.6k個star讓他位列調試框架第二名夫偶,屈居facebook的stetho之后

githubhttps://github.com/orhanobut/logger

作者:Orhan Obut

使用:

compile'com.orhanobut:logger:2.1.1'

Logger.d(MAP);

Logger.d(SET);

Logger.d(LIST);

Logger.d(ARRAY);

Logger.json(JSON_CONTENT);

Logger.xml(XML_CONTENT);

36.agera

一句話介紹:一款服務于Android平臺的響應式編程框架

上榜理由:google專門推出一套響應式編 程框架服務于Android開發(fā)者,相比于之響應式編程框架榜首的 RxJava RxAndroid访惜,它更輕量债热,兩者最大的不同點在于agera基于push event、pull data (VS Rx系列 push data)。

githubhttps://github.com/google/agera

作者:Google

使用:

compile'com.google.android.agera:agera:1.3.0'

擴展能力

compile'com.google.android.agera:content:1.3.0'

compile'com.google.android.agera:database:1.3.0'

compile'com.google.android.agera:net:1.3.0'

compile'com.google.android.agera:rvadapter:1.3.0'

compile'com.google.android.agera:rvdatabinding:1.3.0'

37.BottmBar

一句話介紹:一款底部導航欄視圖框架

上榜理由:底部欄里的王者框架高镐,6.3K的 star數量,證明了它的優(yōu)秀恕沫,完全遵循材料設計規(guī)范鲸阔,上手非常方便。如果說缺點渔扎,無法設置icon與titile的間距,無法自定義視圖的大小等倘核,但這 些都可以通過修改源代碼解決,筆者獻丑也修改了一套符合國內開發(fā)者的底部導航框架蛹锰,即將開源。

githubhttps://github.com/roughike/BottomBar

作者:Iiro Krankka

使用:

compile'com.roughike:bottom-bar:2.3.1'

38.Calligraphy

一句話介紹:一款自定義字體框架

上榜理由:如果你還在為一鍵修改App內所有字體樣式而煩惱,6.3K個star的Calligraphy就值得你擁有煎谍,它可以同時修改整個整個項目的Textview字體,也可以單獨 設置某個Textview的字體,還在等什么痘儡,快來試試吧!

githubhttps://github.com/chrisjenx/Calligraphy

作者:Christopher Jenkins

使用:

dependencies{

compile'uk.co.chrisjenx:calligraphy:2.3.0'

}

39.AndroidSlidingUpPanel

一句話介紹:可拖動的滑動面板視圖框架

上榜理由:如果你的項目需要一個可拖拽的滑動式面板(展示某些詳情信息,播放音樂,地圖信息等)推正,那么推薦你使用它,6.3k個star炒瘸,來自創(chuàng)業(yè)公司umano的作品,證明它是用心推出的杰作

githubhttps://github.com/umano/AndroidSlidingUpPanel

作者:umano

使用:

dependencies{

? ? repositories {

? ? ? ? mavenCentral()

? ? }

compile'com.sothree.slidinguppanel:library:3.3.1'

}

40.AppIntro

一句話介紹:一款提供快速制作歡迎頁的框架

上榜理由:筆者從未把打算把歡迎頁框架納入排 行榜當中,作為國內開發(fā)者婶芭,ViewPager開發(fā)App的歡迎頁已經是手到擒來的需求,為何一個開源的歡迎頁框架會在github上擁有6.3k個 star?也許你會不屑一顧孟害,是的舞丛,往往就在不屑一顧的瞬間球切,機遇就悄悄溜走了。

githubhttps://github.com/apl-devs/AppIntro

作者:Paolo Rotolo

? ? allprojects {

? ? ? ? repositories {

...

maven { url'https://jitpack.io'}

? ? ? ? }

? ? }

? ? dependencies {

compile'com.github.apl-devs:appintro:v4.2.0'

? ? }

41.recyclerview-animators

一句話介紹:一款為Recyclerview提供擴展動畫能力的框架

上榜理由:有一句老話:如果有天你失去對新事 物的興趣绒障,那就說明你老了吨凑。recyclerview已經推出快三年了,還在用listview的人們户辱,是否已經發(fā)掘自己漸漸變老;不要灰心庐镐,快為你的項 目加入recyclerview-animators框架吧恩商,為“自己”加入新鮮的血液和能量!(筆者備注:6.2K個star)

githubhttps://github.com/wasabeef/recyclerview-animators

作者必逆;https://github.com/wasabeef

使用:

dependencies {

// jCenter

compile'jp.wasabeef:recyclerview-animators:2.2.6'

}

42.dagger

一句話介紹:一款通過依賴注入降低程序間耦合的開發(fā)框架

上榜理由:github 上dagger1版本 有6.2k個star 怠堪, dagger2版本有7.3k個揽乱;由square完成的dagger1版本,到如今google團隊接手的dagger2版本粟矿,強力開發(fā)團隊保證了代碼在 設計上的優(yōu)越性凰棉;如果你想探究Android 領域的設計模式,這也是不錯的選擇陌粹。

官網地址:https://google.github.io/dagger/

github :https://github.com/google/dagger

作者:google

使用:

dependencies {

compile'com.google.dagger:dagger:2.x'

annotationProcessor'com.google.dagger:dagger-compiler:2.x'

}

If you're using classes in dagger.android you'll also want to include:

compile'com.google.dagger:dagger-android:2.x'

compile'com.google.dagger:dagger-android-support:2.x'

annotationProcessor'com.google.dagger:dagger-android-processor:2.x'

43.Android-Bootstarp

一句話介紹:一款提供在Android應用上實現Bootstrap(web框架)所作出效果的框架

上榜理由:榜單上第二款響應web技術的Android 端框架撒犀,還記得第一名是誰嗎——flexbox-layout,作為Android開發(fā)者掏秩,你有必要去了解Web技術了或舞。5.9k個star,證明它不容小覷

githubhttps://github.com/Bearded-Hen/Android-Bootstrap

作者:Bearded-Hen團隊

使用:

dependencies{

compile'com.beardedhen:androidbootstrap:{X.X.X}'

}

44.RxBinding

一句話介紹:一款提供UI組件事件響應能力的框架

上榜理由:如果你還未開始RxAndroid 之旅哗讥,RxBinding可以作為你的第一站嚷那,通過RXBinding,你將理解響應式編程的快樂杆煞,讓項目里的事件流程更清晰魏宽。5.6K個star,RxAndroid作者親自操刀决乎,快來試用吧队询!

githubhttps://github.com/JakeWharton/RxBinding

作者:JakeWharton

Platformbindings:

compile'com.jakewharton.rxbinding2:rxbinding:2.0.0'

'support-v4'librarybindings:

compile'com.jakewharton.rxbinding2:rxbinding-support-v4:2.0.0'

'appcompat-v7'librarybindings:

compile'com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.0.0'

'design'librarybindings:

compile'com.jakewharton.rxbinding2:rxbinding-design:2.0.0'

'recyclerview-v7'librarybindings:

compile'com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.0.0'

'leanback-v17'librarybindings:

compile'com.jakewharton.rxbinding2:rxbinding-leanback-v17:2.0.0'

45.ListViewAnimations

一句話介紹:一款為ListView提供動展示畫效果能力的框架

上榜理由:如果有一天我承認自己老了,我還會 排排我的兄弟——ListView构诚,證明我和它一起戰(zhàn)斗過蚌斩。ListViewAnimations的存在就是證明我們這些“老年人”仍有用武之地,也許你 有說不出口的難處范嘱,無法體會到RecyclerView里動畫的快樂送膳,擁有ListViewAnimations,你一樣可以驕傲的說丑蛤,我的孩子(每個 item)也有自己的動效啦叠聋。(筆者備注 5.6K個star)

githubhttps://github.com/nhaarman/ListViewAnimations

作者:nhaarman

使用:

repositories{

? ? mavenCentral()

}

dependencies{

compile'com.nhaarman.listviewanimations:lib-core:3.1.0@aar'

compile'com.nhaarman.listviewanimations:lib-manipulation:3.1.0@aar'

compile'com.nhaarman.listviewanimations:lib-core-slh:3.1.0@aar'

}

46.UItimateRecyclerView

一句話介紹:一款提供刷新、加載更多受裹、動畫特效等額外能力的RecyclerView框架

上榜理由:榜單上第三次出現 RecyclerView的身影碌补,足以證明RecyclerView的優(yōu)異性,5.5K個star棉饶,框架里所提供眾多的能力厦章,如果你是個功利開發(fā)者,那么 此框架會為你節(jié)省很多學習時間照藻,它可以完成多item式布局的大多數需求袜啃,值得注意的是,這個項目也是在其他項目的思路上二次開發(fā)的幸缕。

githubhttps://github.com/cymcsg/UltimateRecyclerView

作者:MarshalChen

使用:

repositories {

? ? jcenter()

? ? }

dependencies {

...

compile'com.marshalchen.ultimaterecyclerview:library:0.7.2'

}

47.uCrop

一句話介紹:一款優(yōu)雅的圖片裁剪框架

上榜理由:5.3K個star囊骤,圖片編輯模塊單獨拎出來也是一款優(yōu)雅的App晃择。

githubhttps://github.com/Yalantis/uCrop

作者:Yalantis

使用:

allprojects {

? repositories {

? ? ? jcenter()

maven { url"https://jitpack.io"}

? }

}

compile'com.github.yalantis:ucrop:2.2.1'

48.RxJava-Android-Samples

一句話介紹:一款介紹RxJava使用場景的app

上榜理由:榜單出現的第一個“僅僅為告訴你如何使用另一個項目”的開源項目,它可以說是RxJava的用例也物,你想得到的想不到的RxJava用法這里都有宫屠,這就是為什么它以5.2k個star矗立在這份榜單里的原因。遺憾自己沒有創(chuàng)作這么一個受人追捧的demo滑蚯?趕快動手寫個其他的“XX項目用例吧”

githubhttps://github.com/kaushikgopal/RxJava-Android-Samples

作者:kaushikgopal

使用:

clone到本地慢慢探索吧

49.AndroidAutoLayout

一句話介紹:一個提供適配能力的框架

上榜理由:5.2K個star浪蹂,鴻洋老弟的作 品,適合小項目的開發(fā)團隊告材,拿到設計MM的px像素設計稿是不是很頭疼捏坤次?這個框架一鍵式搞定你的問題,它有很多的不足斥赋,但在追求完美適配的路上缰猴,你值得 探索和了解它!筆者并不推薦把它應用到已經成熟運行的項目中疤剑,畢竟市面上已經有太多的適配解決方案了滑绒,適配問題就像是個大雜燴,想炒一盤好菜隘膘,就得備好各 種佐料(適配小方案)疑故,當你把各種小佐料用的爐火純青的時候,你離美食大廚就不遠了弯菊。

githubhttps://github.com/hongyangAndroid/AndroidAutoLayout

作者:張鴻洋

使用:

dependencies{

compile'com.zhy:autolayout:1.4.5'

}

50.EffectiveAndroidUI

一句話介紹:一款講解高效展示UI的教學型App

上榜理由:編程新手很難對MVC MVP,MVVM等模式有深刻的理解纵势,如果有一個示例型app,那對初學者會有很大裨益管钳,筆者在遇到它時也是相見恨晚钦铁。4.8K個star,證明了它經受 了廣大開發(fā)者的考驗與審視才漆,其中Effective UI的編程思想更是與Android官方課程里的Effective UI課程不謀而合育瓜,并且,此項目還包含了fragment栽烂、dagger、主題樣式恋脚、Butterknife等眾多小知識點腺办,作為編程初學者的學習用例再 適合不過了

githubhttps://github.com/pedrovgs/EffectiveAndroidUI

作者:Pedro Vicente

使用:

clone項目到本地

51.Luban

一句話介紹:最接近微信的圖片壓縮框架

上榜理由:好的思路總是可以讓你大放異彩,Luban僅以圖片壓縮單一功能糟描,俘獲了4.8K個star怀喉,證明了它在圖片壓縮上的造詣,它可能不是最優(yōu)秀的船响,但它是讓你我最接近偉大的項目

githubhttps://github.com/Curzibn/Luban

作者:Curzibn

使用:

compile'top.zibin:Luban:1.1.1'

52.DroidPlugin

一句話介紹:一款熱門的插件化開發(fā)框架

上榜理由:4.8K個star躬拢,插件化框架榜單第一名躲履,,360團隊出品聊闯,框架質量有保證工猜,有成功案例——360手機助手,并且持續(xù)維護著

githubhttps://github.com/DroidPluginTeam/DroidPlugin/blob/master/readme_cn.md

作者:Andy Zhang

使用:

clone項目到本地

53. otto

一句話介紹:一款老舊且強大的事件總線框架

上榜理由:4.8K個star菱蔬,是 square團隊早先推出的事件響應型框架篷帅,淘寶app的事件驅動也是基于此框架封裝的,如今square已經建議開發(fā)者采用RxJava RxAndroid來代替otto了拴泌。但otto仍有與EventBus橫向對比的價值魏身,縱向來說,otto與square自家開發(fā)的Rx系列框架的差異 同樣值得開發(fā)者們去探究蚪腐。

githubhttps://github.com/square/otto

作者:square

使用:

repositories {

? ? mavenCentral()

maven { url"https://oss.sonatype.org/content/repositories/snapshots/"}

}

compile'com.michaelpardo:activeandroid:3.1.0-SNAPSHOT'

54.u2020

一句話介紹:一款提供Dagger的高級教學示例的app(額箭昵,名字是有點繞)

上榜理由:4.7K個 star,JakeWharton牽頭開發(fā)的教學類app回季,教你使用Dagger在其他高級框架的用法家制,它展示了Dagger與ButterKnife、 Retrofit茧跋、Moshi慰丛、Picasso、Okhttp瘾杭、RxJava诅病、Timber、Madge粥烁、LeakCanar等眾多優(yōu)秀框架結合起來的高 級用法贤笆,你也可以借鑒到自己的項目當中

githubhttps://github.com/JakeWharton/u2020

作者:JakeWharton

55.buck

一句話介紹:buck是一個快速構建系統(tǒng)

上榜理由:facebook+google出 身的作者,對構建代碼的出色理解讨阻,加上大型團隊的維護芥永,以及增量更新時的快速高效,讓buck成為了微信Android團隊構建項目的首選钝吮,構建大型項目 時埋涧,它比gradle更快,然而中小公司并不適合此框架奇瘦,但作為立志在框架設計領域有一番作為的人們棘催,歡迎來一探究竟

官網地址:https://buckbuild.com/

githubhttps://github.com/facebook/buck

作者:facebook

使用:

linuxormacsystem+docs

56.PermissionsDispatcher

一句話介紹:一款基于注解的提供解決運行時危險權限方案的框架

上榜理由:自Android6.0 Google提出危險權限一詞起,用戶安全性被提到一定的高度耳标,一些運行時對用戶較為危險的權限將不再自動被開發(fā)者獲取醇坝,需要經過用戶批準,開發(fā)者才可以 繼續(xù)使用該權限次坡,如果你曾經被權限問題搞的抓耳撓腮呼猪,建議你試試這個框架画畅,它足夠解決你的問題

官網地址:https://hotchemi.github.io/PermissionsDispatcher/

githubhttps://github.com/hotchemi/PermissionsDispatcher

作者:Shintaro Katafuchi

使用:

dependencies {

compile('com.github.hotchemi:permissionsdispatcher:${latest.version}') {

excludemodule: "support-v13"

? }

annotationProcessor'com.github.hotchemi:permissionsdispatcher-processor:${latest.version}'

}

repositories{

? jcenter()

maven { url'http://oss.jfrog.org/artifactory/oss-snapshot-local/'}

}

57.android-gif-drawable

一句話介紹:一款提供展示GIF動畫能力的視圖框架

上榜理由:據我所查國內著名App——知乎使 用了android-gif-drawable,因此證明了它的存在價值宋距,盡管在榜單第十一位介紹了lottie-android直接應用AE動畫的示 例轴踱,但AE設計師不是每個公司都配備的,GIF的存在乡革,就必然存在了展示GIF的需要寇僧,它值得你擁有!

githubhttps://github.com/koral–/android-gif-drawable

作者:Karol Wrótniak

使用:

repositories {

? ? mavenCentral()

maven { url"https://oss.sonatype.org/content/repositories/snapshots"}

}

dependencies {

compile'pl.droidsonroids.gif:android-gif-drawable:1.2.+'

}

58.Apktool

一句話介紹:一款反編譯apk的工具

上榜理由:開源的反編譯工具沸版,對于志在了解apk逆向破解的諸位嘁傀,值得擁有,4.5k個star视粮,逆向破解apk神器细办!

githubhttps://github.com/iBotPeaches/Apktool

官網地址:https://ibotpeaches.github.io/Apktool/

作者:Connor Tumbleson

59.dynamic-load-apk

一句話介紹:插件化開發(fā)框架

上榜理由:4.5k個star,位于插件化開發(fā)框架第二名(第一名來自360團隊)蕾殴,全面的文檔介紹讓你很快就能上手插件化開發(fā)笑撞,如果你喜歡大段文字講解,那么這個項目一定適合你

github:https://github.com/singwhatiwanna/dynamic-load-apk

作者:singwhatiwanna

使用:

github上的文檔配合作者博客更配喲

60.atlas

一句話介紹:淘寶推出的組件化開發(fā)框架

上榜理由:淘寶團隊所出的精品钓觉,atlas框架提供了解耦茴肥、組件、動態(tài)的開發(fā)能力荡灾,4.5k個star讓他位列組件化開發(fā)框架第一名

githubhttps://github.com/alibaba/atlas

作者:alibaba

61.volley

一句話介紹:google推薦使用的Android端網絡請求框架

上榜理由:4.4k個star瓤狐,并不是他不夠優(yōu)秀,而是使用volley已經漸漸成為廣大開發(fā)者的習慣

githubhttps://github.com/google/volley(新版volley地址)

作者:google

使用:

clone源碼到本地

62.androidmvp

一句話介紹:一款展示Android端Mvp設計的demo

上榜理由:榜單里為數不多批幌、僅憑展示某種設計模式就獲得4.2K個star的項目础锐,如果你有嘗試mvp的打算,androidmvp可以作為你的前哨站

githubhttps://github.com/antoniolg/androidmvp

作者:Antonio Leiva

使用:

clone到本地

63.SwipeBackLayout

一句話介紹:一款可以讓你通過滑動手勢關閉頁面的的框架

上榜理由:仿微信滑動退出當前聊天界面的效果荧缘,提供了activity的滑動關閉能力皆警,通過這種思路,實現fragment的滑動關閉輕而易舉;筆者堅持建議諸位clone源碼到本地探索一番截粗;4.2k個star證明很多人都喜愛它

githubhttps://github.com/ikew0ng/SwipeBackLayout

作者:ike_w0ng

使用:

compile'me.imid.swipebacklayout.lib:library:1.0.0'

64.FlycoTabLayout

一句話介紹:一款可以讓作出多種多樣指示器效果的框架

上榜理由:盡管我們沒有理由為了給app加入 頁面指示器功能就集成2.5M的依賴庫信姓,但是作為了解viewpager或swip views的指示器設計原理的優(yōu)秀框架,你值得打開它試試绸罗,筆者建議單獨拆分所需源碼意推,加入到自己的項目中去。4.1K個star从诲,二次開發(fā)的作品,仍然 推薦靡羡!

githubhttps://github.com/H07000223/FlycoTabLayout

作者:Flyco

65.android-testing

一句話介紹:一款展示四大自動化測試框架用例的demo(Espresso系洛,UiAutomator俊性,AndroidJunitRunner,JUnit4)

上榜理由:學習者經常會陷入似懂非懂的境地描扯,如果你有幸學習過Android Testing Support Library site的課程定页,那么你一定對android的四大測試框架迫不及待,這款demo非常適合你绽诚,快來學習這個4.1k個star的明星項目吧

githubhttps://github.com/googlesamples/android-testing

作者:googlesampes團隊

66.FileDownloader

一句話介紹:一款高效典徊、穩(wěn)定、靈活恩够、易用的文件下載引擎

上榜理由:4.1k證明了它有多受人喜愛卒落,文件下載看似簡單的背后暗藏了多少的坑坑點點,我知道你有能力自己實現文件下載功能蜂桶,但優(yōu)秀的框架可以提升你的設計編碼能力儡毕,這款框架可以提升你的實力!

githubhttps://github.com/lingochamp/FileDownloader

作者:LingoChamp團隊

使用:

dependencies{

compile'com.liulishuo.filedownloader:library:1.5.5'

}

67.JieCaoVideoPlayer

一句話介紹:基于MediaPlayer api——VideoView 的多媒體播放框架

上榜理由:榜單里第三款多媒體播放框架扑媚,它以靈巧的身姿擠入本榜單腰湾,精巧是它最大的優(yōu)點,不到100k疆股,擁有它费坊,你就可以快速開發(fā)類似今日頭條那樣的視頻播放效果,4k個star旬痹,證明它值得一試

githubhttps://github.com/lipangit/JieCaoVideoPlayer

作者:Nathen

使用:

compile'fm.jiecao:jiecaovideoplayer:5.5.4'

68.glide-transformations

一句話介紹:為眾多著名圖片加載框架提供圖片形狀變幻能力的框架

上榜理由:在榜單靠前的部分已經介紹過glide附井,Picasso,Fresco等圖片加載框架唱凯,glide-transformations就是一款為他們提供圖片變形能力的框架羡忘,使用起來非常簡單,因此受到了大家的喜愛磕昼,github上有3.8K個star

githubhttps://github.com/wasabeef/glide-transformations

作者:Daichi Furiya

使用:

repositories{

? ? jcenter()

}

dependencies{

compile'jp.wasabeef:glide-transformations:2.0.2'

// If you want to use the GPU Filters

compile'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'

}

在Glide里設置變幻效果

SetGlideTransform.

Glide.with(this).load(R.drawable.demo)

.bitmapTransform(newBlurTransformation(context))

.into((ImageView)findViewById(R.id.image));

69.android-gpuimage

一句話介紹:一款基于OpenGL的圖片渲染引擎

上榜理由:放下GpuImage在IOS平臺 的榮譽不談卷雕,Android版的android-gpuimage就提供多達70多種圖片渲染效果,你還在好奇美圖秀秀是如何實現圖片變幻的票从?有了它漫雕,一 切都不是問題。如果你是美圖工具類的工程師峰鄙,此框架的建設思路也會對你大有裨益浸间。筆者也是通過android-gpuimage仿造了美圖App并俘獲女 友芳心的,再次為它的實力點贊吟榴。ios版+android版一共19k個star魁蒜,已經證明了它的實力,還在等什么呢?

github:https://github.com/CyberAgent/android-gpuimage

作者:CyberAgent 團隊

使用:

repositories{

? ? jcenter()

}

dependencies{

compile'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'

}

更多的改造方法兜看,還需要閱讀Ios的編程文檔锥咸,對于有毅力的小伙伴強力推薦!

70.RxPermissions

一句話介紹:一款基于RxJava完成權限申請的框架

上榜理由:榜單里第二款提供權服務的框架细移,基于RxJava的設計搏予,讓你可以專心寫業(yè)務,3.7K個star已經證明了它的實用價值

githubhttps://github.com/tbruyelle/RxPermissions

作者:Thomas Bruyelle

使用:

repositories{

jcenter()// If not already there

}

dependencies{

compile'com.tbruyelle.rxpermissions:rxpermissions:0.9.4@aar'

}

優(yōu)雅的使用:

RxPermissions rxPermissions =newRxPermissions(this);

rxPermissions

? ? .request(Manifest.permission.CAMERA)

? ? .subscribe(granted -> {

if(granted) {// I can control the camera now

}else{

// Oups permission denied

? ? ? ? }

? ? });

71.freeline

一句話介紹:一款動態(tài)替換的編譯構建框架

上榜理由:繼Facebook的Buck弧轧,Androdi官方的InstRun之后雪侥,螞蟻金服推出了Freeline編譯框架,官網宣稱Freeline與業(yè)內主流構建方式相比仍然有數倍的速度領先;排行有先后精绎,編譯速度并不在本榜單排序的考據因素中速缨,因此freeline以3.7個star,暫列編譯框架第二名

官網地址:https://www.freelinebuild.com/

github:https://github.com/alibaba/freeline

作者:alibaba

使用:

buildscript {

? ? repositories {

? ? ? ? jcenter()

? ? }

? ? dependencies {

classpath'com.antfortune.freeline:gradle:0.8.7'

? ? }

}

apply plugin:'com.antfortune.freeline'

android {

...

}

File → Settings... → Plugins → Browse repositories →freeline.

72.RxLifecycle

一句話介紹:一款提供在使用RxJava過程中管理Activity和Fragment生命周期能力的框架

上榜理由:在榜單靠前的部分捺典,你已經了解 RxJava和RxAndroid的強大之處鸟廓,但部分粗心的開發(fā)者因為沒有及時取消訂閱而產生嚴重的內存泄漏,不要擔心襟己,RxLifecycle可以為你 解決難題引谜,在gtihub上擁有3.7K個star,國內知名軟件——知乎和淘寶也都在使用它

githubhttps://github.com/trello/RxLifecycle

作者:trello團隊

使用:

clone源碼到本地

73.classyshark

一句話介紹:一款可執(zhí)行文件瀏覽器

上榜理由:榜單里繼Apktool之后第二款apk逆向工具擎浴,如果你喜歡優(yōu)雅的圖形數據展示员咽,那么你一定不能錯過他,classyshark可以將破解的結果以圖形化展示用戶贮预,方便分析贝室,3.7K個star,讓它暫列apk逆向工具第二位仿吞!

githubhttps://github.com/google/android-classyshark

作者:google

使用:

下載 JAR

74.acra

一句話介紹:一款提供記錄APP崩潰日志能力的框架

上榜理由:如果你面臨著收集APP崩潰日志的需求滑频,那么acra是個不錯的選擇。3.7K個star唤冈,讓acra位列崩潰日志框架排行榜第一名峡迷,acra有足夠的能力記錄線上APP,并且發(fā)回服務端你虹,acra也提供了相當棒的崩潰日志統(tǒng)計服務端框架Acralyzer绘搞,cralyzer工作在Apache CouchDB之上,所以除了CouchDB之外傅物,沒有必要安裝任何額外的軟件夯辖,移動端開發(fā)者也可以借此學習服務端的建設,一舉兩得董饰!

githubhttps://github.com/ACRA/acra

服務端githubhttps://github.com/ACRA/acralyzer

作者:acra團隊

使用:

沒有什么方法比clone源碼到本地更方便了

75.DiskLruCache

一句話介紹:一款提供磁盤文件緩存管理能力的框架

上榜理由:3.7k個star并不足以說明 DiskLruCache的優(yōu)秀蒿褂,僅僅以管理磁盤文件能力單獨拎出來成為一個框架圆米,作者需要很大的勇氣,很幸運啄栓,作者做到了榨咐,并且也成為Google官網 提倡的緩存 ;如還記得上次做“一鍵清除緩存”谴供、“查看緩存文件大小”功能是什么時候嗎?DiskLruCache一句話就可以搞定齿坷!

githubhttps://github.com/JakeWharton/DiskLruCache

作者:JakeWharton

使用:

compile'com.jakewharton:disklrucache:2.0.2'

1

76.dexposed

一句話介紹:一款支撐阿里大部分App客戶端熱修復桂肌、線上調試能力的框架

上榜理由:榜單上再次出現熱修復框架的身影, 證明App熱修復技術的火熱永淌,dexposed提供圖形化的性能監(jiān)控崎场、在線熱修復bug漏洞、支持AOP編程思想等遂蛀,不論你是企業(yè)熱修復技術的設計者還是 打算在熱修復領域一探究竟的新人谭跨,這款框架很適合你。3.5k個star李滴,證明它作為一門技術框架的存在螃宙,是多么令人喜愛!

githubhttps://github.com/alibaba/dexposed

作者:alibaba

使用:

dependencies{

compile'com.taobao.android:dexposed:0.1.1@aar'

? ? }

77.Litho

一句話介紹:一款提供高效構建UI能力的框架

上榜理由:作為一款專門構建UI的框架所坯,Litho高效的地方在于:單獨開辟了用于渲染和布局的線程谆扎,然后將創(chuàng)建好的組件傳遞給UI線程去完成最終的渲染,使用更少的視圖層級芹助,來提升界面的滾動速度堂湖,值得注意的是,它僅支持開發(fā)者作出不可改變的UI組件 ,3.5K個star状土,證明了它在構建UI領域的價值无蜂,更多的妙處件相,期待你親自去發(fā)掘瓢宦!

githubhttps://github.com/facebook/litho

作者:facebook

使用:

ependencies {

// ...

// Litho

compile'com.facebook.litho:litho-core:0.3.1'

compile'com.facebook.litho:litho-widget:0.3.1'

provided'com.facebook.litho:litho-annotations:0.3.1'

annotationProcessor'com.facebook.litho:litho-processor:0.3.1'

// SoLoader

compile'com.facebook.soloader:soloader:0.2.0'

// Optional

// For debugging

debugCompile'com.facebook.litho:litho-stetho:0.3.1'

// For integration with Fresco

compile'com.facebook.litho:litho-fresco:0.3.1'

// For testing

testCompile'com.facebook.litho:litho-testing:0.3.1'

}

78.mosby

一句話介紹:一款提供構建MVP項目能力的框架

上榜理由:榜單靠前的部分已經介紹了 MVC,MVVM,MVP的框架項目,想必此時你在構建企業(yè)項目架構上参萄,選擇或者開發(fā)一款合適的MVP框架迫在眉睫彼乌,mosby可以作為你的第一步參考泻肯, 你可以封裝它,也可以照抄它慰照,無論如何灶挟,3.4K個star,證明了它在框架設計上有多受開發(fā)者的喜愛

githubhttps://github.com/sockeqwe/mosby

作者:Hannes Dorfmann

使用:

dependencies {

compile'com.hannesdorfmann.mosby3:mvi:3.0.4'// Model-View-Intent

// or

compile'com.hannesdorfmann.mosby3:mvp:3.0.4'// Plain MVP

// or

compile'com.hannesdorfmann.mosby3:viewstate:3.0.4'// MVP + ViewState support

}

allprojects {

? repositories {

...

maven { url"https://oss.sonatype.org/content/repositories/snapshots/"}

}

79.AndResGuard

一句話介紹:一款提供資源文件路徑混淆 的工具

上榜理由:如果你是個對APK大小很敏感的人毒租,那么AndResGuard一定適合你稚铣,它的原理類似Java Proguard箱叁,但是只針對資源。他會將原本冗長的資源路徑變短惕医,例如將res/drawable/wechat變?yōu)閞/d/a耕漱,3.4K個star,證明了在優(yōu)化APK道路上抬伺,你不是一個人在戰(zhàn)斗螟够!

githubhttps://github.com/shwenzhang/AndResGuard

作者:wechat team

使用:

clone項目到本地,其實也就是個三兩句話的文檔

80.StatusBarUtil

一句話介紹:一款提供設置沉浸式狀態(tài)欄樣式能力的框架

上榜理由:設計師MM總是抱怨系統(tǒng)狀態(tài)欄不優(yōu)雅峡钓?那就給她一個完美的沉浸式狀態(tài)欄妓笙。StatusBarUtil可以隨心所欲的設置狀態(tài)欄樣式,3.3K個star能岩,足以說明它有多受設計MM的喜愛

githubhttps://github.com/laobie/StatusBarUtil

作者:Jaeger

使用:

compile'com.jaeger.statusbarutil:library:1.4.0'

1

81.robolectric

一句話介紹:一款不依賴于Android設備的單元測試框架寞宫,

上榜理由:sample中列舉了如何對Android四大組件和常見功能測試的用例,3.2K個star拉鹃,值得充滿好奇心的人嘗試

官網地址:http://robolectric.org/

githubhttps://github.com/robolectric/robolectric

作者:robolectric

使用:

testCompile"org.robolectric:robolectric:3.3.2"

1

82.Fragmentation

一句話介紹:一款提供管理Fragmen嵌套t能力的框架

上榜理由:對于Activity和 Fragment使用辈赋,你一定得心應手,但如果要做一套通用的Activity&Fragment嵌套設計膏燕,想必你有點手足無措 了钥屈,Fragmentation可以作為你設計Fragment管理上的第一步,3.2K個star坝辫,筆者認為有點名副其實了焕蹄,項目介紹里說的是 Fragment的管理能力,但并未提供Fragment&Activity生命周期阀溶、任務棧的管理能力腻脏,因此很難直接應用到企業(yè)項目當中,但源 碼當中的設計思路银锻,值得筆者與諸位借鑒永品,拾人牙慧留有余香!

github:https://github.com/YoKeyword/Fragmentation

作者:YoKey

使用:

// appcompat v7包是必須的

compile'me.yokeyword:fragmentation:0.10.7'

// 如果想使用SwipeBack 滑動邊緣退出Fragment/Activity功能击纬,請再添加下面的庫

// compile 'me.yokeyword:fragmentation-swipeback:0.10.4'

83.Small

一句話介紹:輕巧的插件化框架

上榜理由:作為插件框架榜單的新成員鼎姐,Small的優(yōu)點是輕巧,適合作為小團隊的插件開發(fā)方案更振,3.1K個star炕桨,讓它獲得了酷狗音樂等著名開發(fā)團隊的青睞,如果你們的團隊想逐步實施插件化開發(fā)肯腕,Small是個不錯的選擇献宫!

官網地址:http://code.wequick.net/Small/cn/cases

githubhttps://github.com/wequick/Small

作者:wequick 團隊

使用:

buildscript{

? ? dependencies {

classpath'net.wequick.tools.build:gradle-small:1.2.0-alpha6'

? ? }

}

apply plugin:'net.wequick.small'

small{

aarVersion ='1.2.0-alpha6'

}

84.JsBridge

一句話介紹:一款提供WebView和Javascript通信能力的框架

上榜理由:該框架提供給了允許H5頁面調用通過JS調用App方法的能力;3.1K個star实撒,簡潔的通訊方式姊途,值得每一個Web\Hybrid App開發(fā)者嘗試

gtihubhttps://github.com/lzyzsd/JsBridge

作者:hi大頭鬼hi

使用:

repositories {

// ...

maven { url"https://jitpack.io"}

}

dependencies {

compile'com.github.lzyzsd:jsbridge:1.0.4'

}


86.Transitions-Everywhere

一句話介紹:一款教你正確使用Transitions API(Android 轉場動畫API)的教學型項目

上榜理由:你可能還未嘗試過Android API的Transitions 框架涉瘾,可能聽過,但卻無法做出優(yōu)雅奇妙的動效——別擔心捷兰,Transitions-Everywhere正如它的名字一樣立叛,它將帶你全面體驗Transitions 的強大之處

githubhttps://github.com/andkulikov/Transitions-Everywhere

作者:Andrey Kulikov

使用:

dependencies {

compile"com.andkulikov:transitionseverywhere:1.7.4"

}

89.emojicon

一句話介紹:一款提供在TextView、EdiText展示表情包能力的框架

上榜理由:2.7k個star贡茅,,榜單第二款增強TextView顯示能力的框架秘蛇,這款專為表情包設計,如果你曾經好奇微信顶考、QQ的表情顯示是如何做到的彤叉?這款框架一定能滿足你的求知欲。

90.packer-ng-plugin

一句話介紹:一款打爆工具插件

上榜利用:筆者盡力維護榜單涉及范圍的全面性村怪,因此引入此插件項目——項目號稱完成100個渠道包只需要10秒鐘,在市面上各種各樣多渠道打包方案的今天浮庐,選擇一款適合自己團隊的甚负,才是上上選擇

githubhttps://github.com/mcxiaoke/packer-ng-plugin

作者:Xiaoke Zhang

使用:

buildscript {

......

? ? dependencies{

// add packer-ng

classpath'com.mcxiaoke.gradle:packer-ng:1.0.9'

? ? }

}

apply plugin:'packer'

dependencies {

compile'com.mcxiaoke.gradle:packer-helper:1.0.9'

}

android {

//...

? ? signingConfigs {

? ? ? release {

// 滿足下面兩個條件時需要此配置

// 1. Gradle版本 >= 2.14.1

// 2. Android Gradle Plugin 版本 >= 2.2.0

// 作用是只使用舊版簽名,禁用V2版簽名模式

v2SigningEnabledfalse

? ? ? }

? ? }

? }


92.Android-Debug-Database

一句話介紹:一款提供測試App內部數據庫能力的框架

上榜理由:榜單里第二款針對調試數據庫的框架审残,一行代碼集成梭域,直接在瀏覽器增刪改查App的數據庫,2.3k個star搅轿,心動不如行動病涨!

githubhttps://github.com/amitshekhariitbhu/Android-Debug-Database

作者:AMIT SHEKHAR

使用:

debugCompile'com.amitshekhar.android:debug-db:1.0.0'

1

瀏覽器鍵入

http://XXX.XXX.X.XXX:8080

1

93.conceal

一句話介紹:一款facebook提供的加密本地大文件的框架

上榜理由:如果還在擔心App內的圖片的隱私問題,這款facebook提供的文件加密框架足以解決你的問題璧坟,facebook客戶端的圖片和數據都是使用conceal加密的

官網地址:http://facebook.github.io/conceal/

githubhttps://github.com/facebook/conceal

作者;facebook

使用:

clone項目到本地/官網下載jar

94.ARouter

一句話介紹:一款提供服務既穆、頁面跳轉路由的框架

上榜理由:正如作者宣稱的那樣,該框架提供:從外部URL映射到內部頁面雀鹃、跨模塊的頁面跳轉(頁面解耦)幻工、攔截跳轉過程等能力,還有更多功能等你去發(fā)掘黎茎,2.1K個star囊颅,值得為企業(yè)級的框架喝彩

githubhttps://github.com/alibaba/ARouter

作者:alibaba

使用:

ndroid {

? ? defaultConfig {

...

? ? javaCompileOptions {

? ? ? ? annotationProcessorOptions {

arguments= [ moduleName : project.getName() ]

? ? ? ? }

? ? }

? ? }

}

dependencies {

// 替換成最新版本, 需要注意的是api

// 要與compiler匹配使用,均使用最新版可以保證兼容

compile'com.alibaba:arouter-api:x.x.x'

annotationProcessor'com.alibaba:arouter-compiler:x.x.x'

...

}

// 舊版本gradle插件(< 2.2)傅瞻,可以使用apt插件踢代,配置方法見文末'其他#4'

// Kotlin配置參考文末'其他#5'

96.CustomActivityOnCrash

一句話介紹:一款當APP crash的時候自動載入某個Activity的框架(而不是顯示Unfortunately, X has stopped)

上榜理由:新奇的創(chuàng)意是榜單所需要的,所以它 贏得了1.8K個star嗅骄;作為開發(fā)者應該擁有考慮到各種潛伏的bug的能力胳挎,但我們不能總是面面俱到,其他系統(tǒng)端的同事也可能造成程序的意外 crash溺森,因此串远,如何讓程序優(yōu)雅的crash->重啟值得我們思考宏多,這款框架就提供了這種能力

githubhttps://github.com/Ereza/CustomActivityOnCrash

作者:Eduard Ereza Martínez

使用:

dependencies {

compile'cat.ereza:customactivityoncrash:2.1.0'

}

添加到Applicationclass:

@Override

publicvoidonCreate(){

super.onCreate();

CaocConfig.Builder.create()

.backgroundMode(CaocConfig.BACKGROUND_MODE_SILENT)

.enabled(false)//default: true

.showErrorDetails(false)//default: true

.showRestartButton(false)//default: true

.trackActivities(true)//default: false

.minTimeBetweenCrashesMs(2000)//default: 3000

.errorDrawable(R.drawable.ic_custom_drawable)//default: bug image

.restartActivity(YourCustomActivity.class)//default: null (your app's launch activity)

.errorActivity(YourCustomErrorActivity.class)//default: null (default error activity)

.eventListener(newYourCustomEventListener())//default: null

? ? ? ? .apply();

}

97.XhsEmoticonsKeyboard

一句話介紹:最開心的開源表情解決方案

上榜理由:如果你還在發(fā)愁如何為你的APP自制鍵盤,那么此框架非常適合你澡罚,而且還提供表情包展示能力伸但,1.7個star證明了它的獨特。此外作者還附贈了高仿微信鍵盤留搔,QQ鍵盤的demo更胖,分享給諸位

githubhttps://github.com/w446108264/XhsEmoticonsKeyboard

作者:zhongdaxia

使用:

allprojects {

? ? repositories {

? ? ? ? jcenter()

maven { url"https://jitpack.io"}

? ? }

}

dependencies {

compile'com.github.w446108264:XhsEmoticonsKeyboard:2.0.4'

}

98. Android-ObservableScrollView

一款讓視圖滑動更具有視覺效果的滑動式框架,在 GitHub 上提供了 12 種滑動效果隔显,可以用來提升 App 的滑動體驗

GitHub 地址:https://github.com/ksoichiro/Android-ObservableScrollView

轉載地址:http://blog.csdn.net/angle0306/article/details/78900051

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末却妨,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子括眠,更是在濱河造成了極大的恐慌彪标,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掷豺,死亡現場離奇詭異捞烟,居然都是意外死亡,警方通過查閱死者的電腦和手機当船,發(fā)現死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進店門题画,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人德频,你說我怎么就攤上這事苍息。” “怎么了壹置?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵竞思,是天一觀的道長。 經常有香客問我钞护,道長衙四,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任患亿,我火速辦了婚禮传蹈,結果婚禮上,老公的妹妹穿的比我還像新娘步藕。我一直安慰自己惦界,他們只是感情好,可當我...
    茶點故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布咙冗。 她就那樣靜靜地躺著沾歪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪雾消。 梳的紋絲不亂的頭發(fā)上灾搏,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天挫望,我揣著相機與錄音,去河邊找鬼狂窑。 笑死媳板,一個胖子當著我的面吹牛,可吹牛的內容都是我干的泉哈。 我是一名探鬼主播蛉幸,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼丛晦!你這毒婦竟也來了奕纫?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤烫沙,失蹤者是張志新(化名)和其女友劉穎匹层,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體锌蓄,經...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡升筏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了煤率。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡乏冀,死狀恐怖蝶糯,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情辆沦,我是刑警寧澤昼捍,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站肢扯,受9級特大地震影響妒茬,放射性物質發(fā)生泄漏。R本人自食惡果不足惜蔚晨,卻給世界環(huán)境...
    茶點故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一乍钻、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧铭腕,春花似錦银择、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至被盈,卻和暖如春析孽,著一層夾襖步出監(jiān)牢的瞬間搭伤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工袜瞬, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留怜俐,地道東北人。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓吞滞,卻偏偏與公主長得像佑菩,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子裁赠,可洞房花燭夜當晚...
    茶點故事閱讀 43,509評論 2 348

推薦閱讀更多精彩內容

  • 一.榜單介紹 排行榜包括四大類: 單一框架:僅提供路由殿漠、網絡層、UI層佩捞、通信層或其他單一功能的框架 混合開發(fā)框架:...
    偉子男閱讀 5,240評論 0 161
  • 榜單排序依據: 1.項目開源 2.github上該項目的star個數 3.開發(fā)團隊绞幌、作者的實力 1. Retrof...
    小宇宙_XYZ閱讀 5,824評論 4 163
  • 附上原文作者連接:作者:金誠 一.榜單介紹 排行榜包括四大類: 單一框架:僅提供路由、網絡層一忱、UI層莲蜘、通信層或其他...
    這個美嘉不姓陳閱讀 2,253評論 1 35
  • 請允許我借鑒前輩們的東西~~~~ 感激不盡~~~~~ 以下為Android 框架排行榜 么么噠~ Android...
    嗯_新閱讀 2,019評論 3 32
  • 完美永遠不存在PS高標準做到最好 李笑來老師的《把時間當作朋友》第二章的中的一段: 沒有人能夠做到完美。我們至多能...
    大清快跑閱讀 361評論 0 0