专栏名称: 极小光
极小光,极光开发者旗下媒体,每天导读国外技术类文章,价值、思考、共鸣。 官网: http://y0.cn/jiguangOfficial 欢迎关注专题:极光。 你来投稿,投稿,投稿; 我来传播,传播,传播。 我已委托“维权骑士”(rightknights.com)为我的文章进行维权行动
目录
相关文章推荐
高分子科学前沿  ·  中国科学院新疆理化所窦新存团队Coordin ... ·  昨天  
高分子科学前沿  ·  西安交大卢学刚、杨森ACS ... ·  2 天前  
高分子科学前沿  ·  摩擦起电,还能发Nature! ·  2 天前  
高分子科技  ·  河北地质大学卢昶雨、江苏科技大学施伟龙 ... ·  3 天前  
高分子科学前沿  ·  浙理工尹鑫、熊杰/上大吴振跃/港理工夏书会、 ... ·  3 天前  
51好读  ›  专栏  ›  极小光

Google 开始加速应用对 Android 新版本的支持和对老设备的淘汰

极小光  · 简书  ·  · 2018-01-19 15:56

正文

简评:或许在 Android 应用身后的巨石开始滚起来了。

最近 Google 对于 Play Store 应用 targetSdkVersion 的最低要求引发了一些开发者的担忧。如果您上架应用的 minSdkVersion 低于 11,那么有必要在最近的几个月开始考虑这个问题了。

在十二月中旬,Google 宣布了 从 2018 年开始,在 Play Store 所发布应用(无论是新应用或是旧应用更新)的 targetSdkVersion 需要为 26(Android O) 或以上。对于新应用将从 2018 年 8 月开始执行,对于旧应用的更新从 2018 年 11 月开始执行。并且这将是一个持续的过程,比如在 2019 年对应用 targetSdkVersion
的最低要求将上升到 Android P,以此类推。

而从 v26.0.0 开始,Android support 库的 minSdkVersion 提高到了 14(Android 4.0)。因此,对于维护旧设备应用的开发者来说就会遇到些麻烦了:

  • 如果尝试在 Play Store 发布 targetSdkVersion 低于 26 的应用,那么会被 Play Store 拒绝。

  • 如果将应用的 targetSdkVersion 提升到 26 或以上。那 Android Studio 会提示 support 库和 targetSdkVersion 版本不匹配。

  • 如果再提高 support 库的版本来匹配 targetSdkVersion ,由于 support 库的 minSdkVersion 为 14,那么还得提高应用的 minSdkVersion 来匹配 support 库的 minSdkVersion

因此,Play Store 和 support 库之间对于 SDK 版本要求的提升,一定程度上会帮助淘汰掉部分老旧设备。并且,预计 Google 在未来的几年还将进一步提高 support 库的 minSdkVersion(下一次可能是升级到 21)

按照 Google 的说法,这样做的部分原因是出于安全因素的考虑。淘汰掉支持老旧设备的应用能促使用户购买替代的设备(或许也有助于各手机厂商快速升级自家 ROM 所基于的 Android 版本),从而提高整体的安全性。

不过,不是所有的开发者都对这一举动感到高兴。对于 Google 的这项措施,作为一名必须维护老旧应用的开发者可以采取的做法:

  • 使用 manifest merger 和相关技术来使用较新版本的 support 库。不过这种做法是很有风险的,因为 Google 已经计划在 support 库中删除一些废弃的方法和代码,如果采取这种做法,请非常彻底的测试。

  • 使用 Gradle 的 //noinspection GradleCompatible 注释来消除错误提示。这样你就可以继续使用 v25.3.1 的 support 库,并将应用的 targetSdkVersion 改为 26 来满足 Play Store 的要求。这要比上面的做法更安全,但风险会随着所用 support 库的 minSdkVersion 和 Play Store 要求的 targetSdkVersion 版本差距的逐渐增大而增加。







请到「今天看啥」查看全文