public abstract class Sdk extends Object implements Comparable<Sdk>
Represents a unique build of the Android SDK.
Modifier | Constructor and Description |
---|---|
protected |
Sdk(int apiLevel) |
Modifier and Type | Method and Description |
---|---|
int |
compareTo(Sdk o)
Instances of
Sdk are ordered by the API level they implement. |
boolean |
equals(Object o) |
abstract String |
getAndroidCodeName()
Returns the Android codename for this SDK.
|
abstract String |
getAndroidVersion()
Returns the Android Version for this SDK.
|
int |
getApiLevel()
Returns the Android API level for this SDK.
|
abstract Path |
getJarPath()
Returns the path to jar for this SDK.
|
abstract String |
getUnsupportedMessage()
Returns a human-readable message explaining why this SDK isn’t supported.
|
int |
hashCode() |
boolean |
isKnown()
Determines if this SDK is known by its provider.
|
abstract boolean |
isSupported()
Determines if this SDK is supported in the running Robolectric environment.
|
String |
toString() |
public final int getApiLevel()
Returns the Android API level for this SDK.
It must match the version reported by android.os.Build.VERSION.SDK_INT
provided within.
public abstract String getAndroidVersion()
Returns the Android Version for this SDK.
It should match the version reported by android.os.Build.VERSION.RELEASE
provided within.
If this is an expensive operation, the implementation should cache the return value.
public abstract String getAndroidCodeName()
Returns the Android codename for this SDK.
It should match the version reported by android.os.Build.VERSION.CODENAME
provided within.
If this is an expensive operation, the implementation should cache the return value.
public abstract Path getJarPath()
Returns the path to jar for this SDK.
public abstract boolean isSupported()
Determines if this SDK is supported in the running Robolectric environment.
An SDK might be unsupported if e.g. it requires a newer version of the JVM than is currently running.
Unsupported SDKs should throw some explanatory exception when getJarPath()
is invoked.
If this is an expensive operation, the implementation should cache the return value.
public abstract String getUnsupportedMessage()
Returns a human-readable message explaining why this SDK isn’t supported.
If this is an expensive operation, the implementation should cache the return value.
public boolean isKnown()
Determines if this SDK is known by its provider.
Unknown SDKs can serve as placeholder objects; they should throw some explanatory exception when getJarPath()
is invoked.
public int compareTo(@Nonnull Sdk o)
Instances of Sdk
are ordered by the API level they implement.
compareTo
in interface Comparable<Sdk>