Skip to content

Most visited

Recently visited

navigation

FeatureInfo

public class FeatureInfo
extends Object implements Parcelable

java.lang.Object
   ↳ android.content.pm.FeatureInfo


Definition of a single optional hardware or software feature of an Android device.

This object is used to represent both features supported by a device and features requested by an app. Apps can request that certain features be available as a prerequisite to being installed through the uses-feature tag in their manifests.

Starting in N, features can have a version, which must always be backwards compatible. That is, a device claiming to support version 3 of a specific feature must support apps requesting version 1 of that feature.

Summary

Constants

int FLAG_REQUIRED

Set on flags if this feature has been required by the application.

int GL_ES_VERSION_UNDEFINED

Default value for reqGlEsVersion;

Inherited constants

From interface android.os.Parcelable

Fields

public static final Creator<FeatureInfo> CREATOR

public int flags

Additional flags.

public String name

The name of this feature, for example "android.hardware.camera".

public int reqGlEsVersion

The GLES version used by an application.

public int version

If this object represents a feature supported by a device, this is the maximum version of this feature supported by the device.

Public constructors

FeatureInfo()
FeatureInfo(FeatureInfo orig)

Public methods

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

String getGlEsVersion()

This method extracts the major and minor version of reqGLEsVersion attribute and returns it as a string.

String toString()

Returns a string representation of the object.

void writeToParcel(Parcel dest, int parcelableFlags)

Flatten this object in to a Parcel.

Inherited methods

From class java.lang.Object
From interface android.os.Parcelable

Constants

FLAG_REQUIRED

Added in API level 5
int FLAG_REQUIRED

Set on flags if this feature has been required by the application.

Constant Value: 1 (0x00000001)

GL_ES_VERSION_UNDEFINED

Added in API level 5
int GL_ES_VERSION_UNDEFINED

Default value for reqGlEsVersion;

Constant Value: 0 (0x00000000)

Fields

CREATOR

Added in API level 5
Creator<FeatureInfo> CREATOR

flags

Added in API level 5
int flags

Additional flags. May be zero or more of FLAG_REQUIRED.

name

Added in API level 5
String name

The name of this feature, for example "android.hardware.camera". If this is null, then this is an OpenGL ES version feature as described in reqGlEsVersion.

reqGlEsVersion

Added in API level 5
int reqGlEsVersion

The GLES version used by an application. The upper order 16 bits represent the major version and the lower order 16 bits the minor version. Only valid if name is null.

version

Added in API level 24
int version

If this object represents a feature supported by a device, this is the maximum version of this feature supported by the device. The device implicitly supports all older versions of this feature.

If this object represents a feature requested by an app, this is the minimum version of the feature required by the app.

When a feature version is undefined by a device, it's assumed to be version 0.

Public constructors

FeatureInfo

Added in API level 5
FeatureInfo ()

FeatureInfo

Added in API level 5
FeatureInfo (FeatureInfo orig)

Parameters
orig FeatureInfo

Public methods

describeContents

Added in API level 5
int describeContents ()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance.

getGlEsVersion

Added in API level 5
String getGlEsVersion ()

This method extracts the major and minor version of reqGLEsVersion attribute and returns it as a string. Say reqGlEsVersion value of 0x00010002 is returned as 1.2

Returns
String String representation of the reqGlEsVersion attribute

toString

Added in API level 5
String toString ()

Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

writeToParcel

Added in API level 5
void writeToParcel (Parcel dest, 
                int parcelableFlags)

Flatten this object in to a Parcel.

Parameters
dest Parcel: The Parcel in which the object should be written.
parcelableFlags int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.