Google允许我们使用Android标准库为旧版API提供最新功能。 Google鼓励使用此工具集,但未提及其缺点。
是否有更高的RAM或CPU使用率,更慢的渲染或类似?为什么不将每个新功能作为库的一部分添加而不是维护2个单独的版本?我看到的几乎每个示例和现实代码都必须使用这个库来支持ActionBar和其他东西,所以我们可以假设90 +%的应用程序依赖它。为什么不强行呢?
答案 0 :(得分:3)
使用支持库没有已知的障碍。此外,正如您所指出的,Google鼓励将其用作最佳做法: “在您的Android项目中包含支持库被视为应用程序开发人员的最佳实践,具体取决于您的应用所定位的平台版本范围及其使用的API。” (http://developer.android.com/tools/support-library/index.html)
作为一个缺点,我们可以提到一些小问题:
增加apk大小和项目中的方法总数(与其他功能成本相比非常微不足道)
使用的一些特定限制(通常在相应的Java文档中提及它们,如果我们在app中仅使用支持实现而不将它们与来自sdk的'native'元素混合,它们通常不起任何作用)。作为示例,请参阅FragmentActivity类,“已知限制”部分。
关于你的第二个问题 - 支持库中包含了大量新功能,避免了核心SDK中的重复(以android.support.v4.view.ViewPager和android.support.v4.view.PagerAdapter为例) 。 保留复制功能(例如片段)以保持使用本机实现设计的应用程序的兼容性。