歡迎光臨
每天分享高質量文章

2018 年初值得關註的 25 個新 Android 庫和專案

來自: 開源中國社群

連結:oschina.net/translate/25-new-android-libraries-and-projects-2018

https://medium.com/@mmbialas/25-new-android-libraries-and-projects-to-check-at-the-beginning-of-2018-ba3b422bbbb4


這是我最新收集的 25 個 Android 庫和專案串列,你也許會發現它們有用,有趣,並值得檢視一下。所有的都在最近 3 個月釋出的,排序不分先後。

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 的內容


就這些了。希望你能喜歡這份清單。如果你知道在過去三個月內釋出的其他優秀的庫,並且我沒有提到的話,請在評論中告訴我。


●本文編號283,以後想閱讀這篇文章直接輸入283即可

●輸入m獲取文章目錄

推薦↓↓↓

 

Java程式設計

更多推薦18個技術類微信公眾號

涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。

贊(0)

分享創造快樂