Weiß jemand, wie ich die Systemversion überprüfen kann (z. B. 1.0
, 2.2
, etc.) programmatisch?
Antworten
Zu viele Anzeigen?Siehe android.os.Build.VERSION
.
CODENAME
: Der aktuelle Entwicklungs-Codename oder die Zeichenfolge "REL", wenn es sich um ein Release-Build handelt.INCREMENTAL
: Der interne Wert, der von der zugrundeliegenden Versionsverwaltung verwendet wird, um diesen Build darzustellen.RELEASE
: Der für den Benutzer sichtbare Versionsstring.
Build.Version ist die richtige Anlaufstelle für diese Daten. Hier ist ein Codeschnipsel, wie man sie formatiert.
public String getAndroidVersion() {
String release = Build.VERSION.RELEASE;
int sdkVersion = Build.VERSION.SDK_INT;
return "Android SDK: " + sdkVersion + " (" + release +")";
}
Sieht so aus: "Android SDK: 19 (4.4.4)"
Zur Überprüfung der Geräteversion, die größer oder gleich Marshmallow ist, verwenden Sie diesen Code.
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M){
}
um andere zu prüfen, ändern Sie einfach die VERSION_CODES wie,
K wie Kitkat,
L für Loolipop N für Nougat und so weiter...
Build.VERSION.RELEASE;
Dadurch erhalten Sie die tatsächliche Versionsnummer, z. B. 2.3.3 oder 2.2. Das Problem bei der Verwendung von Build.VERSION.SDK_INT ist, wenn Sie ein verwurzeltes Telefon oder benutzerdefinierte rom haben, könnten Sie eine nicht-Standard-Betriebssystem haben (aka mein Android läuft 2.3.5) und das wird eine Null zurückgeben, wenn mit Build.VERSION.SDK_INT so Build.VERSION.RELEASE wird funktionieren, egal was!
- See previous answers
- Weitere Antworten anzeigen