了解最新公司動態(tài)及行業(yè)資訊
注意:9.0(API level 28)隨新版本的支持庫發(fā)布,屬于該庫。該庫除了現(xiàn)有的支持庫外還包含最新的組件。
p>
您可以繼續(xù)使用此支持庫過去的工件(在這種情況下,版本 27 和更早版本,并打包為 ..*)在 Maven 中仍然可用。但是,所有新的庫開發(fā)都將在庫中進行。
我們建議在所有新項目中使用該庫。您還應該考慮將現(xiàn)有項目遷移到。
在開發(fā)支持多個 API 版本的應用程序時,您可能需要一種標準方法來為系統(tǒng)的早期版本提供新功能,或者優(yōu)雅地回退到等效功能。您可以利用這些庫來提供適當?shù)募嫒菪詫?,而無需編譯代碼來處理平臺的早期版本。此外,支持庫還提供了標準 API 中沒有的附加工具類和功能,使開發(fā)和支持更多設備變得更加容易。
支持庫最初是用于各種應用程序的單個二進制庫,但已演變成一套用于應用程序開發(fā)的庫。在應用程序開發(fā)過程中,如果沒有必要,現(xiàn)在強烈推薦其中許多庫。
本文概述了支持庫,以幫助您了解其組件以及如何在您的應用程序中有效地使用它們。
注意:從支持庫版本 26.0.0(2017 年 7 月)開始,大多數(shù)支持庫支持的最低 API 級別已提升到 4.0(API 級別 1 4)。有關詳細信息,請參閱本文檔中的部分。
支持庫的目的
支持庫有一些獨特的用途,平臺早期版本的向后兼容類只是其中之一。下表提供了應用程序中使用支持庫的完整列表:
使用 API 和使用 API
支持庫提供的類和方法與框架中的 API 非常相似??紤]到這一點,您可能需要決定是應該使用 API 的框架版本,還是使用等效的支持庫。以下指南描述了何時應使用支持庫類而不是 API:
由于主機設備平臺版本的限制,提供平臺 API 類的兼容實現(xiàn)的支持庫類可能無法在最新版本中提供完整的功能集。在這種情況下it支持,支持庫類會優(yōu)雅地降級,并且可能無法提供當前平臺 API 的所有功能或數(shù)據(jù)。因此,您應該查看您正在使用的庫類和方法的參考文檔,并在運行您的應用支持的最早版本平臺的設備上進行徹底測試。
注意:支持庫并不為每個框架 API 提供等效的類和方法。在某些情況下,您可能需要將框架方法調(diào)用放入顯式 SDK 版本檢查塊中,并提供替代代碼來處理設備上不可用的方法。有關在代碼中使用版本檢查的更多信息,請參閱支持不同的平臺版本。
版本支持和包名稱
部分支持庫包的名稱表示它最初支持的最低 API 級別。這些名稱使用 v# 表示法,例如 -v4 包。從支持庫版本 26.0.0(2017 年 7 月發(fā)布)開始,所有支持庫包支持的最低 API 級別已更改為 4.0(API 級別 14). 因此,當使用任何最新版本的支持庫時,您不應假設 v# 包符號會指示最低 API 支持級別。最新版本中的這種更改也意味著名稱分別為 v4 和 v7 庫 for 本質(zhì)上等價于其支持的最低 API 級別,例如對于 26.0.0 及更高支持庫,-v4 和 -v7 包支持的最低 API 級別均為 14 .
支持庫版本
支持的庫的發(fā)布版本(例如 24.2.0 或 25.0.1) 不同于任何庫支持的最低版本對應的版本 API 級別。發(fā)布版本號可以指示該版本是針對哪個平臺 API 版本編譯的,因此,該版本的庫中可能包含哪些最新的 API。
具體來說,發(fā)布版本號的第一部分(例如,版本號 24.2.0 中的 24))通常對應于當時可用的平臺 API 版本發(fā)布了相應的版本。支持庫的發(fā)布版本級別可以表明該版本集成了相應API級別的一些功能,但不應假設它兼容新平臺API版本中發(fā)布的所有功能。
庫依賴項
支持庫套件中的大多數(shù)庫都依賴于一個或多個庫。例如it支持,幾乎所有的支持庫都依賴于 - 包。通常,您無需擔心支持庫依賴項,因為構建工具通過自動包含依賴庫來為您管理庫依賴項。
如果您想查看您的應用中包含哪些庫和庫依賴項,請在您的應用開發(fā)項目的構建根目錄中運行以下命令以獲取有關此項目的依賴項的報告,包括支持庫和其他庫:
gradle -q dependencies your-app-project:dependencies
有關如何使用將支持庫添加到您的開發(fā)項目的詳細信息,請參閱支持庫設置。使用方法詳見配置構建系統(tǒng)。
請注意,所有支持庫也依賴于一些基礎平臺。對于最新版本,它取決于 4.0(API 級別 14) 或更高。