Zitieren mich :
%Vor%Nach dem Ansatz, den Google für die M Developer Preview verwendet hat, Sie können stattdessen
Build.VERSION.CODENAME
überprüfen:
Ich habe nicht auf Build.VERSION.RELEASE
geschaut, wie es der Kommentar von zgc7009 andeutet, obwohl auch das eine Möglichkeit sein könnte.
Wenn Sie das aus der fernen Zukunft lesen, wo Android N in der endgültigen Form ausgeliefert wurde, sollten Sie Build.VERSION.SDK_INT
und Build.VERSION_CODES.N
verwenden können. Der obige Hack ist auf die Eigenheiten zurückzuführen, wie Google mit diesen Entwicklervorschauen umgeht.
Ansatz 1: (empfohlen) Verwenden Sie die Support-Bibliothek android.support.v4.os.BuildCompat.isAtLeastN
.
Ansatz 2: Verwenden Sie dies als "echten" Versionscode: Build.VERSION.SDK_INT < 23 || Build.VERSION.PREVIEW_SDK_INT == 0 ? Build.VERSION.SDK_INT : Build.VERSION.SDK_INT + 1
.
Ich würde empfehlen, den Integer-Wert zum Überprüfen der Android-Version anstelle von String
zu verwenden %Vor%Denken Sie nur daran, dass in der Datei "manifests.xml" die Datei compileSdkVersion auf 24 oder höher gesetzt sein muss:
%Vor%Ich habe festgestellt, dass das Verhalten von Build.VERSION.RELEASE und Build.VERSION.CODENAME ziemlich unterschiedlich ist, je nachdem, ob es sich um eine vollständige Produktionsversion von Android OS oder eine Entwicklervorschau handelt. Wir gingen mit dem folgenden Mechanismus. Sie können sich nicht auf einen einzigen Wert verlassen, wenn Sie mehr als ein Szenario berücksichtigen möchten.
Dies ist, was ich für ein Galaxy S7 mit einer Produktionsversion von Nougat und ein Nexus 5X mit O DP1 gefunden habe.
Galaxy S7 Nougat Build.VERSION.BASE_OS: Build.VERSION.CODENAME: REL Build.VERSION.INCREMENTAL: G930FXXU1DQB3 Build.VERSION.PREVIEW_SDK_INT: 0 Build.VERSION.RELEASE: 7.0 Build.VERSION.SDK_INT: 24 Build.VERSION.SECURITY_PATCH: 2017-01-01
Nexus 5X O Build.VERSION.BASE_OS: Build.VERSION.CODENAME: O Build.VERSION.INCREMENTAL: 3793265 Build.VERSION.PREVIEW_SDK_INT: 1 Build.VERSION.RELEASE: O. Build.VERSION.SDK_INT: 25 Build.VERSION.SECURITY_PATCH: 2017-03-05
%Vor%