有没有办法确定最新发布的 Android 版本是啥?

Posted

技术标签:

【中文标题】有没有办法确定最新发布的 Android 版本是啥?【英文标题】:Is there a way to determine what the latest released version of Android is?有没有办法确定最新发布的 Android 版本是什么? 【发布时间】:2016-05-13 08:03:24 【问题描述】:

我的应用程序需要确定设备是否具有 Google 提供的最新操作系统软件。

例如,目前,我需要能够确定设备是否正在运行 Marshmallow,而不管手机可能永远无法安装 Marshmallow。

这需要硬编码到应用程序中吗?

谢谢

【问题讨论】:

你为什么需要这个?鉴于仅仅因为发布了新版本,并不意味着设备可以获得它的版本(大多数手机或多或少从未获得操作系统升级)。无论如何,没有 API 或任何方式将其编码到操作系统中,您需要设置一个网络服务来报告最新发布的版本,并在每次 Google 发布新版本时手动更新它。 看这个答案***.com/a/3993933/2802875 我想我们必须将其设置为网络服务,谢谢您的回复。 【参考方案1】:

这需要硬编码到应用程序中吗?

是的,或多或少。您可以使用反射来检查 Build.VERSION_CODES 中的值,并查看从 1 开始的连续范围中哪个值最高。

但是,这些值会编译到您的应用中;它们不是来自框架,因为它们是 static final int 值。因此,虽然这种方法适用于当前和未来的 android 版本,但您必须使用最新的 compileSdkVersion 构建您的应用程序,发布更新的应用程序(现在将引入更高的最高版本代码),并依赖用户更新应用。

如果您不希望这样(例如,您不想依赖用户更新应用程序),则需要从 Internet 上获取最新版本的信息,最好是从您控制的某个主机上获取。

【讨论】:

谢谢!我们将为此向我们的 CMS 添加一项服务。

以上是关于有没有办法确定最新发布的 Android 版本是啥?的主要内容,如果未能解决你的问题,请参考以下文章

在最新的 AOSP 中,ADB 的最新版本是啥?

有没有办法安装旧版本的 Android 平台工具?

以编程方式查找最新 Qt 版本号的最简单方法是啥?

有没有办法确定 Tomcat on Elastic Beanstalk 中环境的 URL 是啥?

有没有办法确定 WKWebView 或 SFSafariViewController 视图中某个点的元素是啥?

JAVA JDK 最新版本是啥?