【问题标题】:Return Android OS name [duplicate]返回 Android 操作系统名称 [重复]
【发布时间】:2014-06-29 23:31:33
【问题描述】:

我想知道如何以编程方式返回 Android 操作系统版本的名称(即 KitKat、JellyBean 等)。如果你愿意的话,我几乎可以找到关于操作系统的所有内容,除了“代号”。欢迎任何帮助,谢谢。

【问题讨论】:

  • 您知道如何获取 VERSION_CODE 吗?如果是这样,一个快速 switch 语句将为您提供代码名称。不确定这是否可以直接在 API 中轻松使用。
  • @Code-Apprentice - 是的,我能够获得版本代码,但如果有更简单的方法,我想避免自己将版本代码映射到代号。 Gergo,我看了很多 SO 问题,可能遇到了那个问题,但如果有更直接的答案,我很好奇。无论如何,我要做的只是用代码名称创建一个数组并将版本代码映射到数组。感谢您的意见。

标签: java android


【解决方案1】:

我尝试了建议问题的答案,找到了here,并想出了一个返回当前正在运行的操作系统版本的“代号”的衬里:

Build.VERSION_CODES.class.getFields()[android.os.Build.VERSION.SDK_INT].getName();

【讨论】:

  • 这有时会返回错误的软件版本。
  • Android 8.1 产生:O_MR1。不完全是“奥利奥”
  • Build.VERSION_CODES.class.getFields()[26].getName() 给出 N_MR1,是一个版本关闭
  • 在 android 11 中出现错误 - java.lang.ArrayIndexOutOfBoundsException: length=31;索引=31
猜你喜欢
  • 2017-06-15
  • 2011-01-27
  • 1970-01-01
  • 2018-10-26
  • 2016-01-13
  • 1970-01-01
  • 2014-10-20
  • 2022-01-22
  • 2017-03-08
相关资源
最近更新 更多