1、transitioner
Transitioner 是一個為兩個擁有嵌入子視圖的視圖之間提供簡便、動態且可調整的動畫效果的庫。它純?100% 使用 Kotlin 編寫而成,使用 MIT 許可,且擁有良好的文檔。
該庫支持 API 19 及以上的 SDK 版本,而且在項目中也包含了用來展現其功能特性的示例應用。毫無疑問,它值得一試!
2、FragmentRigger
該庫使用一種強大的方法來管理 Fragment。其目標是使得 Fragment 易于使用,并將管理它們的成本最小化。
該庫擁有配套的文檔以及示例應用。使用 MIT 開源許可協議。
3、PRDownloader
這是一個為 Android 提供的支持斷點續傳的文件下載器。
這是 README 中的簡短說明:
PRDownloader 可以用來下載 image、video、pdf、apk 等等任意類型的文件。
支持斷點續傳。
支持大文件下載。
有簡單的接口做下載請求。
我們可以用給的下載Id檢查下載的狀態。
PRDownloader 在下載文件時,提供了像 onProgress、onCancel、onStart、onError 等等的回調。
支持適當的請求取消。
多個請求可以并行實現。
所有類型的自定義都是可能的。
該庫有很不錯的文檔和示例 App ,遵循 Apache-2.0 許可證。
4、AnimatedPieView
AnimatedPieView 是 Android 中展示餅圖和環形圖的另一種方法。
這個庫提供:
alpha 觸摸動畫
設置間隙角
動畫期間自己適配文本域的位置
對每一個段設置描述并顯示它
點擊回調
點擊特效
在餅圖和環形圖之間切換
繪制圖表時的動畫
它有很好的文檔(有英文版)。也有一個示例 App,也是遵循 Apache-2.0 許可證發行。
5、FloatWindow
這個庫可用于添加一個“懸浮窗口”,可以顯示在所有 Activity 的最前方。“懸浮窗口”可以定義為懸浮動作按鈕。如下所示:
這個庫使用 Apache 2.0 開源許可證。它有一個良好的文檔,但它是用中文寫的。不過只要翻譯成英文即可,祝玩得開心!
6、MyLittleCanvas
使用這個庫的原因是為了方便在 Android 上使用 canvas。除了方法,現在可以使用對象。
通過使用這個庫,你可以實現如上面所示的 TextView 的自定義下劃線。
README 中的示例通俗易懂,而且易于使用。這個項目的文檔相當不錯,并且這個庫使用的是 Apache-2.0 開源許可證。
7、WindowImageView
這是一個非常有趣的庫,可以用來在 RecyclerView 中展示 ImageView,它就像一個窗口。下面的 gif 圖片可以顯示其直觀的效果。
該項目包含了一個示例應用。文檔對于入手來說足夠豐富,而它是以 MIT 許可發行的。
8、ChartView
ChartView 是一個主要用來解決如何使用 Canvas 和 ValueAnimator 來繪制自定義圖表此類問題的項目。
9、hyperlog-android
這是一個公用工具日志庫,位于標準的 Android 日志類之上,用于存儲數據庫中的日志,并將它們推入遠程服務器進行調試。
這個項目的文檔真的很全面。還有一篇關于它的博客文章和一個示例應用程序。這個庫是基于 MIT 許可證發布的,目前的版本是 0.0.7。
10、Fairy
Fairy 是一個簡單的調試工具,允許開發者使用?adb?logcat?命令在 Android 手機上查看 Android 系統日志,而不是在電腦上。
它還允許在任何地方使用 Android 手機掃描系統日志信息,甚至不需要 root。
這個庫有相當好的文檔,它基于 Apache-2.0 發布,支持 Android API 21 及以上。
11、ExpansionPanel
這是另外一個來自于?Florent Champigny?的很棒的庫。它給我提供了?Expansion Panels(其中包含了創建流程,且讓我們可以輕量化的編輯一個元素)的一種實現。
文檔很全面,而且項目本身也包含了示例應用。所有的代碼都采用了?Apache-2.0 許可。示例應用在Google Play上也可以獲取到。
12、kotlin-math
這是
使得圖形數學算法寫起來更輕松的 Kotlin API 的集合。這些 API 大多都是在?GLSL (OpenGL Shading Language) 之后建模的,以便使從著色器或者向著色器移植代碼更輕松。
由該庫提供的變量類型只是值類型,因此大多數 API 是以頂級函數的形式暴露出來,而非方法。
該項目是以 Apache-2.0 開源許可證發行的。
13、TicketView
這是一個提供卡片視圖(Ticket View)的庫,它提供了 3 種類型的 TicketView 邊角:常規的、圓形的以及扇貝形的。
項目是以 Apache-2.0 許可發行的,而示例應用可以在 Github 資源庫或者在?Google Play?上獲取到。文檔還可以,且庫支持 API 15 及以上版本。
14、Cipher.so
該庫提供了一種將敏感數據加密到原生 .so 庫的簡單方法。
這個庫是如何工作的呢? 在編譯時所有的鍵值對會被自動打包到一個原生庫里面去。接著他可以從由?Cipher.so 生成的 Java 接口獲取這些鍵值對數據。
文檔足夠好,項目是以 Apache-2.0 發行的。
15、android-clean-architecture-mvi-boilerplate
這是使用?Model-View-Intent 模式的一個?Buffer?的分支,是干凈的應用架構樣板。
在展現層它現在使用的是來自?Android Architecture Components Library 的?ViewModel。緩存層現在也使用了?Room。
16、Android-Indefinite-Pager-Indicator
這個庫是提供給?RecyclerView 與 ViewPager 的輕量級即插即用型的無限翻頁指示器。
該庫擁有相當好的文檔,示例應用,還有許多的定制,并且是以 MIT 許可發行的,支持的最低?SDK 版本是?16。
17、daggraph
如果你使用 Dagger 的話, 你可能會發現自己的依賴在一張圖上看起來挺有趣的。 Daggerph 就是為你提供此項功能的一個工具。
它的文檔相當地簡短,但是足夠你入手這個項目了,它是以 Apache-2.0 許可發行的。
18、ToastCompat
這是一個用來勾住 Toast 的 BadTokenException 并進行修復的 Android 庫。?
這個庫的目的就是為應對從?API 25 開始,一個新的參數被添加到了供?Toast#handleShow() 使用的?IBinder 的 windowToken 方法,而它會導致 BadTokenException 異常。該庫就是用來嘗試去解決這個問題的。
你可以在 Github 上找到更多信息。該項目是以?Apache-2.0 許可發行的。
19、RecyclerBanner
這并非一個庫,而是一個示例應用,向你展示了如何使用 RecyclerView 創建輪播視圖。
不幸的是,該項目并沒有英語文檔,不過你可以參考這篇文章(教程)然后翻譯它。
20、FancyToast-Android
這個庫使用了原生的?Android Toasts Fancy。它將標準的 Android Toast 帶到了一個新的級別,使其擁有大量的樣式選項。它也提供了使用代碼來控制?Toast 樣式的能力。
該庫擁有良好的文檔,而且也包含了一個示例應用。支持的最低?SDK 版本是 19,而整個項目是以 Apache-2.0 許可發行的。
21、RecyclerViewCardGallery
這個類庫 fork 自?RecyclerViewCardGallery。與使用 ViewPager 不同的是,作者使用了 RecyclerView,通過滑動來達到刷新的效果。
這項目有基本的文檔、app 樣例,并且它是在 Apache-2.0 許可下發布的。
22、ig-lazy-module-loader
這個類庫有助于在 Android 程序中在每當需要時按需加載模塊(功能)。在使用這個類庫前,需要編譯為一個單獨的 jar/dex 或者 apk 文件,才能作為模塊使用。
現在這個類庫有 Java 的和 Andriod 的,Android 的不需要依賴于 Android 資源。
這個類庫的作者也提到了延遲加載特性 VS 在主可執行文件中具有(延遲加載)特性的好處:
只有在真正需要時把功能加載到內存中。它可在主執行文件中卸載代碼(offloads code),該文件仍然較小,以保證有更好的冷啟動時間。在 Dalvik 上,它卸載了主要的 dex 文件,降低了多 dex 的性能損失。
因為它在一個文件中,所以功能代碼在內存中集中在起來,它在內存訪問方面提供了最優的方案。
如果某些功能未使用則只占用較少的磁盤空間,因為代碼不是未壓縮的。
通過在功能之間提供非常嚴格的隔離,可以提高開發人員的速度,其中許多開發人員都同時在相同的代碼庫上工作的。
模塊的熱插拔(hotswapping)可能可實現允許更快地開發而不用重啟 app。
23、retrofit2-kotlin-coroutines-adapter
這是用于?Kotlin 協程的 Deferred?的實驗性 Retrofit 2 CallAdapter.Factor。在 Apache 2.0 許可下發布。
24、CalendarPicker
這個庫是另一個日歷和日期選擇器。它可以預設一個選定的日期,并可以深度定制 - 你可以自定義幾乎所有的文字大小和顏色、背景顏色和月份標題。
該庫使用 MIT 許可發行,并有基本的文檔。
25、avdo
這是一個優化 Android VectorDrawable(VD) 和 AnimatedVectorDrawable(AVD) xml 文件的命令行工具(類似于?svgo)。
它由?Alex Lockwood?創建并在 MIT 許可下發布。
它確切的功能如下:
avdo 使用最少數量的 和 來重寫 VectorDrawable,從而減少文件大小,并使其能在運行時更快地解析和繪制。下面的例子顯示了在運行 avdo 之前和之后的 VectorDrawable 的內容
就這些了。希望你能喜歡這份清單。如果你知道在過去三個月內發布的其他優秀的庫,并且我沒有提到的話,請在評論中告訴我。