Версия системы Android
На моем Moto Maxx и Moto Razr HD (вероятно, на всех устройствах Moto) в настройках About Phone есть запись, в которой указана версия системы. Я пишу приложение, которое получает эту информацию с телефона, но не могу найти, откуда Motorola получает эту информацию. Все Build.VERSION, Build.DISPLAY и т. Д. Не содержат его. Я даже прочитал "/proc/version" из системы Linux, которая также не содержит его. Мысли?
ОБНОВЛЕНИЕ: С каждой помощью это подтолкнуло меня в правильном направлении. Мое решение было:
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;
}
2 ответа
Скорее всего, он хранится как системное свойство Android.
Предполагая, что вы подключены к телефону через ADB, выполните эту команду:
adb shell getprop
Это перечислит все системные свойства, установленные в системе. Ищите эту строку системной версии, и вы увидите, какое свойство хранится как. Затем, когда вы знаете имя свойства, в котором оно хранится, вы можете использовать System.getProperty(), чтобы получить его программным способом.
Если это не так, Motorola, вероятно, скрывает строку где-то в их модифицированном источнике, и, к сожалению, вы не сможете добраться до нее.
Посмотри на android.os.Build.VERSION
,
CODENAME
: Текущее кодовое имя разработки или строка "REL", если это сборка выпуска. INCREMENTAL
: Внутреннее значение, используемое базовым источником контроля для представления этой сборки. RELEASE
: Видимая пользователем строка версии.