Package org.robolectric.versioning
Class AndroidVersions
java.lang.Object
org.robolectric.versioning.AndroidVersions
Android versioning is complicated.
1) There is a yearly letter release with an increasing of one alpha step each year A-> B, B-> C, and so on. While commonly referenced these are not the release numbers. This class calls these shortcodes. Also minor version number releases (usually within the same year) will start with the same letter.
2) There is an SDK_INT field in android.os.Build.VERSION that tracks a version of the internal SDK. While useful to track the actual released versions of Android, these are not the release number. More importantly, android.os.Build.VERSION uses code names to describe future versions. Multiple code names may be in development at once on different branches of Android.
3) There is a yearly release major number followed by a minor number, which may or may not be used.
4) Relevant logic and reasoning should match androidx.core.os.BuildCompat.java with the caveat that this class guess at the future release version number and short of the current dev branch.
1) There is a yearly letter release with an increasing of one alpha step each year A-> B, B-> C, and so on. While commonly referenced these are not the release numbers. This class calls these shortcodes. Also minor version number releases (usually within the same year) will start with the same letter.
2) There is an SDK_INT field in android.os.Build.VERSION that tracks a version of the internal SDK. While useful to track the actual released versions of Android, these are not the release number. More importantly, android.os.Build.VERSION uses code names to describe future versions. Multiple code names may be in development at once on different branches of Android.
3) There is a yearly release major number followed by a minor number, which may or may not be used.
4) Relevant logic and reasoning should match androidx.core.os.BuildCompat.java with the caveat that this class guess at the future release version number and short of the current dev branch.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classRepresentation of an android release, one that has occurred, or is expected.static classA released version of Androidstatic classAn in-development version of Androidstatic final classVersion: 4.1
ShortCode: J
SDK API Level: 16
release: truestatic final classVersion: 4.2
ShortCode: JMR1
SDK API Level: 17
release: truestatic final classVersion: 4.3
ShortCode: JMR2
SDK API Level: 18
release: truestatic final classVersion: 4.4
ShortCode: K
SDK API Level: 19
release: truestatic final classVersion: 5.0
ShortCode: L
SDK API Level: 21
release: truestatic final classVersion: 5.1
ShortCode: LMR1
SDK API Level: 22
release: truestatic final classVersion: 6.0
ShortCode: M
SDK API Level: 23
release: truestatic final classVersion: 7.0
ShortCode: N
SDK API Level: 24
release: truestatic final classRelease: 7.1
ShortCode: NMR1
SDK Framework: 25
release: truestatic final classRelease: 8.0
ShortCode: O
SDK API Level: 26
release: truestatic final classRelease: 8.1
ShortCode: OMR1
SDK API Level: 27
release: truestatic final classRelease: 9.0
ShortCode: P
SDK API Level: 28
release: truestatic final classRelease: 10.0
ShortCode: Q
SDK API Level: 29
release: truestatic final classRelease: 11.0
ShortCode: R
SDK API Level: 30
release: truestatic final classRelease: 12.0
ShortCode: S
SDK API Level: 31
release: truestatic final classRelease: 12.1
ShortCode: Sv2
SDK API Level: 32
release: truestatic final classRelease: 13.0
ShortCode: T
SDK API Level: 33
release: truestatic final classPotential Release: 14.0
ShortCode: U
SDK API Level: 34
release: falsestatic final classVersion: -1
ShortCode: ""
SDK API Level: ""
release: falsestatic final classPotential Release: 15.0
ShortCode: V
SDK API Level: 34+
release: false -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final AndroidVersions.AndroidReleaseThe current release this process is running on. -
Method Summary
Modifier and TypeMethodDescriptiongetReleaseForSdkInt(Integer sdkInt) static List<AndroidVersions.AndroidRelease>static List<AndroidVersions.AndroidRelease>
-
Field Details
-
CURRENT
The current release this process is running on.
-
-
Method Details
-
getReleaseForSdkInt
@Nullable public static AndroidVersions.AndroidRelease getReleaseForSdkInt(@Nullable Integer sdkInt) -
getReleases
-
getUnreleased
-