Android系统版本

Android System Version

在我的 Moto Maxx 和 Moto Razr HD(可能是所有 Moto 设备)上,关于 Phone 设置中有一个条目说明系统版本。我正在编写一个从 phone 提取此信息的应用程序,但我找不到摩托罗拉从何处提取该信息。所有 Build.VERSION、Build.DISPLAY 等都不包含它。我什至读过 Linux 系统中的“/proc/version”,其中也不包含它。想法?

更新: 在大家的帮助下,它把我推向了正确的方向。我的解决方案是:

private String getDeviceBuildVersion() {
    //Get Moto Info
        String line = "Note sure...";
        try {
            Process ifc = Runtime.getRuntime().exec("getprop " + "ro.build.version.full");
            BufferedReader bis = new BufferedReader(new InputStreamReader(ifc.getInputStream()));
            line = bis.readLine();
            ifc.destroy();
        } catch (java.io.IOException e) {
            e.printStackTrace();
        }
    return line;
}

它很可能存储为 Android 系统 属性。

假设您通过 adb 连接到 phone,运行 此命令:

adb shell getprop

这将列出系统中设置的所有系统属性。查找该系统版本字符串,您将看到它存储为哪个 属性。然后,当您知道 属性 的存储名称时,您可以使用 System.getProperty() 以编程方式获取它。

如果在那里,摩托罗拉可能将字符串隐藏在他们修改后的源代码中的某个地方,不幸的是您将无法访问它。

看看android.os.Build.VERSION

CODENAME :当前开发代号,如果是发布版本则为字符串 "REL"。
INCREMENTAL : 底层源代码管理用来表示此构建的内部值。
RELEASE : 用户可见的版本字符串。