/**@class android.os.Build.VERSION @extends java.lang.Object Various version strings. */ var VERSION = { /** The internal value used by the underlying source control to represent this build. E.g., a perforce changelist number or a git hash. */ INCREMENTAL : "null", /** The user-visible version string. E.g., "1.0" or "3.4b5" or "bananas". This field is an opaque string. Do not assume that its value has any particular structure or that values of RELEASE from different releases can be somehow ordered. */ RELEASE : "null", /** The base OS build the product is based on. */ BASE_OS : "null", /** The user-visible security patch level. */ SECURITY_PATCH : "null", /** The user-visible SDK version of the framework in its raw String representation; use {@link #SDK_INT} instead. @deprecated Use {@link #SDK_INT} to easily get this as an integer. */ SDK : "null", /** The SDK version of the software currently running on this hardware device. This value never changes while a device is booted, but it may increase when the hardware manufacturer provides an OTA update. <p> Possible values are defined in {@link android.os.Build.VERSION_CODES}. */ SDK_INT : "null", /** The SDK version of the software that <em>initially</em> shipped on this hardware device. It <em>never</em> changes during the lifetime of the device, even when {@link #SDK_INT} increases due to an OTA update. <p> Possible values are defined in {@link android.os.Build.VERSION_CODES}. @see #SDK_INT @hide */ FIRST_SDK_INT : "null", /** The developer preview revision of a prerelease SDK. This value will always be <code>0</code> on production platform builds/devices. <p>When this value is nonzero, any new API added since the last officially published {@link #SDK_INT API level} is only guaranteed to be present on that specific preview revision. For example, an API <code>Activity.fooBar()</code> might be present in preview revision 1 but renamed or removed entirely in preview revision 2, which may cause an app attempting to call it to crash at runtime.</p> <p>Experimental apps targeting preview APIs should check this value for equality (<code>==</code>) with the preview SDK revision they were built for before using any prerelease platform APIs. Apps that detect a preview SDK revision other than the specific one they expect should fall back to using APIs from the previously published API level only to avoid unwanted runtime exceptions. </p> */ PREVIEW_SDK_INT : "null", /** The SDK fingerprint for a given prerelease SDK. This value will always be {@code REL} on production platform builds/devices. <p>When this value is not {@code REL}, it contains a string fingerprint of the API surface exposed by the preview SDK. Preview platforms with different API surfaces will have different {@code PREVIEW_SDK_FINGERPRINT}. <p>This attribute is intended for use by installers for finer grained targeting of packages. Applications targeting preview APIs should not use this field and should instead use {@code PREVIEW_SDK_INT} or use reflection or other runtime checks to detect the presence of an API or guard themselves against unexpected runtime behavior. @hide */ PREVIEW_SDK_FINGERPRINT : "null", /** The current development codename, or the string "REL" if this is a release build. */ CODENAME : "null", /** @hide */ ACTIVE_CODENAMES : "null", /** The SDK version to use when accessing resources. Use the current SDK version code. For every active development codename we are operating under, we bump the assumed resource platform version by 1. @hide */ RESOURCES_SDK_INT : "null", /** The current lowest supported value of app target SDK. Applications targeting lower values may not function on devices running this SDK version. Its possible values are defined in {@link android.os.Build.VERSION_CODES}. @hide */ MIN_SUPPORTED_TARGET_SDK_INT : "null", };