为最低 API 级别 21 的项目放弃 appcompat 是个好主意吗?
Is it a good idea to forgo appcompat for a project with minimum API level 21?
我正在开始一个最低 API 级别为 21 的项目,试图找出实现 ActionBar 的正确方法。官方文档从使用 appcompat 库开始,列出的主要优点是它保留了回到第 7 级的兼容性。我什至不想安装 Lollipop 之前的版本。我应该使用 appcompat 吗?放弃 appcompat 库有什么好处或坏处吗?
Is it a good idea to forgo appcompat for a project with minimum API level 21?
可能不会。
首先,即使您现在认为不会,以后您可能仍想降级。
但即使不是这样,它仍然提供功能。想象一下如果将来可以升级到 24、25 或 26 而无需修改您的代码。
Appcompat 是关于兼容性的。 APIs 将(不太可能)更改,您可以使用接口而无需手动检查 API 版本。
我需要证据!
取getColor(int)
。它在版本 23 中已被弃用。因此,对于 21,您仍然可以使用它,对于 23,您将(应该)必须切换到 getColor(int, Theme)
。支持库的 ContextCompat
将为您处理此版本检查。
这只是一个示例。
我正在开始一个最低 API 级别为 21 的项目,试图找出实现 ActionBar 的正确方法。官方文档从使用 appcompat 库开始,列出的主要优点是它保留了回到第 7 级的兼容性。我什至不想安装 Lollipop 之前的版本。我应该使用 appcompat 吗?放弃 appcompat 库有什么好处或坏处吗?
Is it a good idea to forgo appcompat for a project with minimum API level 21?
可能不会。
首先,即使您现在认为不会,以后您可能仍想降级。
但即使不是这样,它仍然提供功能。想象一下如果将来可以升级到 24、25 或 26 而无需修改您的代码。
Appcompat 是关于兼容性的。 APIs 将(不太可能)更改,您可以使用接口而无需手动检查 API 版本。
我需要证据!
取getColor(int)
。它在版本 23 中已被弃用。因此,对于 21,您仍然可以使用它,对于 23,您将(应该)必须切换到 getColor(int, Theme)
。支持库的 ContextCompat
将为您处理此版本检查。
这只是一个示例。