to top
Android APIs
public class

Resources

extends Object
java.lang.Object
   ↳ android.content.res.Resources
Known Direct Subclasses

Class Overview

Class for accessing an application's resources. This sits on top of the asset manager of the application (accessible through getAssets()) and provides a high-level API for getting typed data from the assets.

The Android resource system keeps track of all non-code assets associated with an application. You can use this class to access your application's resources. You can generally acquire the Resources instance associated with your application with getResources().

The Android SDK tools compile your application's resources into the application binary at build time. To use a resource, you must install it correctly in the source tree (inside your project's res/ directory) and build your application. As part of the build process, the SDK tools generate symbols for each resource, which you can use in your application code to access the resources.

Using application resources makes it easy to update various characteristics of your application without modifying code, and—by providing sets of alternative resources—enables you to optimize your application for a variety of device configurations (such as for different languages and screen sizes). This is an important aspect of developing Android applications that are compatible on different types of devices.

For more information about using resources, see the documentation about Application Resources.

Summary

Nested Classes
class Resources.NotFoundException This exception is thrown by the resource APIs when a requested resource can not be found. 
class Resources.Theme This class holds the current attribute values for a particular theme. 
Public Constructors
Resources(AssetManager assets, DisplayMetrics metrics, Configuration config)
Create a new Resources object on top of an existing set of assets in an AssetManager.
Public Methods
final void finishPreloading()
Called by zygote when it is done preloading resources, to change back to normal Resources operation.
final void flushLayoutCache()
Call this to remove all cached loaded layout resources from the Resources object.
XmlResourceParser getAnimation(int id)
Return an XmlResourceParser through which you can read an animation description for the given resource ID.
final AssetManager getAssets()
Retrieve underlying AssetManager storage for these resources.
boolean getBoolean(int id)
Return a boolean associated with a particular resource ID.
int getColor(int id)
Return a color integer associated with a particular resource ID.
ColorStateList getColorStateList(int id)
Return a color state list associated with a particular resource ID.
Configuration getConfiguration()
Return the current configuration that is in effect for this resource object.
float getDimension(int id)
Retrieve a dimensional for a particular resource ID.
int getDimensionPixelOffset(int id)
Retrieve a dimensional for a particular resource ID for use as an offset in raw pixels.
int getDimensionPixelSize(int id)
Retrieve a dimensional for a particular resource ID for use as a size in raw pixels.
DisplayMetrics getDisplayMetrics()
Return the current display metrics that are in effect for this resource object.
Drawable getDrawable(int id)
Return a drawable object associated with a particular resource ID.
Drawable getDrawableForDensity(int id, int density)
Return a drawable object associated with a particular resource ID for the given screen density in DPI.
float getFraction(int id, int base, int pbase)
Retrieve a fractional unit for a particular resource ID.
int getIdentifier(String name, String defType, String defPackage)
Return a resource identifier for the given resource name.
int[] getIntArray(int id)
Return the int array associated with a particular resource ID.
int getInteger(int id)
Return an integer associated with a particular resource ID.
XmlResourceParser getLayout(int id)
Return an XmlResourceParser through which you can read a view layout description for the given resource ID.
Movie getMovie(int id)
Return a movie object associated with the particular resource ID.
String getQuantityString(int id, int quantity)
Return the string value associated with a particular resource ID for a particular numerical quantity.
String getQuantityString(int id, int quantity, Object... formatArgs)
Return the string value associated with a particular resource ID for a particular numerical quantity, substituting the format arguments as defined in Formatter and format(String, Object...). It will be stripped of any styled text information.
CharSequence getQuantityText(int id, int quantity)
Return the character sequence associated with a particular resource ID for a particular numerical quantity.
String getResourceEntryName(int resid)
Return the entry name for a given resource identifier.
String getResourceName(int resid)
Return the full name for a given resource identifier.
String getResourcePackageName(int resid)
Return the package name for a given resource identifier.
String getResourceTypeName(int resid)
Return the type name for a given resource identifier.
String getString(int id)
Return the string value associated with a particular resource ID. It will be stripped of any styled text information.
String getString(int id, Object... formatArgs)
Return the string value associated with a particular resource ID, substituting the format arguments as defined in Formatter and format(String, Object...). It will be stripped of any styled text information.
String[] getStringArray(int id)
Return the string array associated with a particular resource ID.
static Resources getSystem()
Return a global shared Resources object that provides access to only system resources (no application resources), and is not configured for the current screen (can not use dimension units, does not change based on orientation, etc).
CharSequence getText(int id, CharSequence def)
Return the string value associated with a particular resource ID.
CharSequence getText(int id)
Return the string value associated with a particular resource ID. The returned object will be a String if this is a plain string; it will be some other type of CharSequence if it is styled.
CharSequence[] getTextArray(int id)
Return the styled text array associated with a particular resource ID.
void getValue(String name, TypedValue outValue, boolean resolveRefs)
Return the raw data associated with a particular resource ID.
void getValue(int id, TypedValue outValue, boolean resolveRefs)
Return the raw data associated with a particular resource ID.
void getValueForDensity(int id, int density, TypedValue outValue, boolean resolveRefs)
Get the raw value associated with a resource with associated density.
XmlResourceParser getXml(int id)
Return an XmlResourceParser through which you can read a generic XML resource for the given resource ID.
final Resources.Theme newTheme()
Generate a new Theme object for this set of Resources.
TypedArray obtainAttributes(AttributeSet set, int[] attrs)
Retrieve a set of basic attribute values from an AttributeSet, not performing styling of them using a theme and/or style resources.
TypedArray obtainTypedArray(int id)
Return an array of heterogeneous values.
InputStream openRawResource(int id, TypedValue value)
Open a data stream for reading a raw resource.
InputStream openRawResource(int id)
Open a data stream for reading a raw resource.
AssetFileDescriptor openRawResourceFd(int id)
Open a file descriptor for reading a raw resource.
void parseBundleExtra(String tagName, AttributeSet attrs, Bundle outBundle)
Parse a name/value pair out of an XML tag holding that data.
void parseBundleExtras(XmlResourceParser parser, Bundle outBundle)
Parse a series of <extra> tags from an XML file.
void updateConfiguration(Configuration config, DisplayMetrics metrics)
Store the newly updated configuration.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public Resources (AssetManager assets, DisplayMetrics metrics, Configuration config)

Added in API level 1

Create a new Resources object on top of an existing set of assets in an AssetManager.

Parameters
assets Previously created AssetManager.
metrics Current display metrics to consider when selecting/computing resource values.
config Desired device configuration to consider when selecting/computing resource values (optional).

Public Methods

public final void finishPreloading ()

Added in API level 1

Called by zygote when it is done preloading resources, to change back to normal Resources operation.

public final void flushLayoutCache ()

Added in API level 1

Call this to remove all cached loaded layout resources from the Resources object. Only intended for use with performance testing tools.

public XmlResourceParser getAnimation (int id)

Added in API level 1

Return an XmlResourceParser through which you can read an animation description for the given resource ID. This parser has limited functionality -- in particular, you can't change its input, and only the high-level events are available.

This function is really a simple wrapper for calling getXml(int) with an animation resource.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • A new parser object through which you can read the XML data.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.
See Also

public final AssetManager getAssets ()

Added in API level 1

Retrieve underlying AssetManager storage for these resources.

public boolean getBoolean (int id)

Added in API level 3

Return a boolean associated with a particular resource ID. This can be used with any integral resource value, and will return true if it is non-zero.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns the boolean value contained in the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public int getColor (int id)

Added in API level 1

Return a color integer associated with a particular resource ID. If the resource holds a complex ColorStateList, then the default color from the set is returned.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns a single color value in the form 0xAARRGGBB.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public ColorStateList getColorStateList (int id)

Added in API level 1

Return a color state list associated with a particular resource ID. The resource may contain either a single raw color value, or a complex ColorStateList holding multiple possible colors.

Parameters
id The desired resource identifier of a ColorStateList, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns a ColorStateList object containing either a single solid color or multiple colors that can be selected based on a state.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public Configuration getConfiguration ()

Added in API level 1

Return the current configuration that is in effect for this resource object. The returned object should be treated as read-only.

Returns
  • The resource's current configuration.

public float getDimension (int id)

Added in API level 1

Retrieve a dimensional for a particular resource ID. Unit conversions are based on the current DisplayMetrics associated with the resources.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Resource dimension value multiplied by the appropriate metric.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public int getDimensionPixelOffset (int id)

Added in API level 1

Retrieve a dimensional for a particular resource ID for use as an offset in raw pixels. This is the same as getDimension(int), except the returned value is converted to integer pixels for you. An offset conversion involves simply truncating the base value to an integer.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Resource dimension value multiplied by the appropriate metric and truncated to integer pixels.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public int getDimensionPixelSize (int id)

Added in API level 1

Retrieve a dimensional for a particular resource ID for use as a size in raw pixels. This is the same as getDimension(int), except the returned value is converted to integer pixels for use as a size. A size conversion involves rounding the base value, and ensuring that a non-zero base value is at least one pixel in size.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Resource dimension value multiplied by the appropriate metric and truncated to integer pixels.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public DisplayMetrics getDisplayMetrics ()

Added in API level 1

Return the current display metrics that are in effect for this resource object. The returned object should be treated as read-only.

Returns
  • The resource's current display metrics.

public Drawable getDrawable (int id)

Added in API level 1

Return a drawable object associated with a particular resource ID. Various types of objects will be returned depending on the underlying resource -- for example, a solid color, PNG image, scalable image, etc. The Drawable API hides these implementation details.

Note: Prior to JELLY_BEAN, this function would not correctly retrieve the final configuration density when the resource ID passed here is an alias to another Drawable resource. This means that if the density configuration of the alias resource is different than the actual resource, the density of the returned Drawable would be incorrect, resulting in bad scaling. To work around this, you can instead retrieve the Drawable through TypedArray.getDrawable. Use Context.obtainStyledAttributes with an array containing the resource ID of interest to create the TypedArray.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Drawable An object that can be used to draw this resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public Drawable getDrawableForDensity (int id, int density)

Added in API level 15

Return a drawable object associated with a particular resource ID for the given screen density in DPI. This will set the drawable's density to be the device's density multiplied by the ratio of actual drawable density to requested density. This allows the drawable to be scaled up to the correct size if needed. Various types of objects will be returned depending on the underlying resource -- for example, a solid color, PNG image, scalable image, etc. The Drawable API hides these implementation details.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
density the desired screen density indicated by the resource as found in DisplayMetrics.
Returns
  • Drawable An object that can be used to draw this resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public float getFraction (int id, int base, int pbase)

Added in API level 3

Retrieve a fractional unit for a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
base The base value of this fraction. In other words, a standard fraction is multiplied by this value.
pbase The parent base value of this fraction. In other words, a parent fraction (nn%p) is multiplied by this value.
Returns
  • Attribute fractional value multiplied by the appropriate base value.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public int getIdentifier (String name, String defType, String defPackage)

Added in API level 1

Return a resource identifier for the given resource name. A fully qualified resource name is of the form "package:type/entry". The first two components (package and type) are optional if defType and defPackage, respectively, are specified here.

Note: use of this function is discouraged. It is much more efficient to retrieve resources by identifier than by name.

Parameters
name The name of the desired resource.
defType Optional default resource type to find, if "type/" is not included in the name. Can be null to require an explicit type.
defPackage Optional default package to find, if "package:" is not included in the name. Can be null to require an explicit package.
Returns
  • int The associated resource identifier. Returns 0 if no such resource was found. (0 is not a valid resource ID.)

public int[] getIntArray (int id)

Added in API level 1

Return the int array associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • The int array associated with the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public int getInteger (int id)

Added in API level 1

Return an integer associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns the integer value contained in the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public XmlResourceParser getLayout (int id)

Added in API level 1

Return an XmlResourceParser through which you can read a view layout description for the given resource ID. This parser has limited functionality -- in particular, you can't change its input, and only the high-level events are available.

This function is really a simple wrapper for calling getXml(int) with a layout resource.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • A new parser object through which you can read the XML data.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.
See Also

public Movie getMovie (int id)

Added in API level 1

Return a movie object associated with the particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getQuantityString (int id, int quantity)

Added in API level 1

Return the string value associated with a particular resource ID for a particular numerical quantity.

See String Resources for more on quantity strings.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
quantity The number used to get the correct string for the current language's plural rules.
Returns
  • String The string data associated with the resource, stripped of styled text information.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getQuantityString (int id, int quantity, Object... formatArgs)

Added in API level 1

Return the string value associated with a particular resource ID for a particular numerical quantity, substituting the format arguments as defined in Formatter and format(String, Object...). It will be stripped of any styled text information.

See String Resources for more on quantity strings.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
quantity The number used to get the correct string for the current language's plural rules.
formatArgs The format arguments that will be used for substitution.
Returns
  • String The string data associated with the resource, stripped of styled text information.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public CharSequence getQuantityText (int id, int quantity)

Added in API level 1

Return the character sequence associated with a particular resource ID for a particular numerical quantity.

See String Resources for more on quantity strings.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
quantity The number used to get the correct string for the current language's plural rules.
Returns
  • CharSequence The string data associated with the resource, plus possibly styled text information.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getResourceEntryName (int resid)

Added in API level 1

Return the entry name for a given resource identifier.

Parameters
resid The resource identifier whose entry name is to be retrieved.
Returns
  • A string holding the entry name of the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getResourceName (int resid)

Added in API level 1

Return the full name for a given resource identifier. This name is a single string of the form "package:type/entry".

Parameters
resid The resource identifier whose name is to be retrieved.
Returns
  • A string holding the name of the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getResourcePackageName (int resid)

Added in API level 1

Return the package name for a given resource identifier.

Parameters
resid The resource identifier whose package name is to be retrieved.
Returns
  • A string holding the package name of the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getResourceTypeName (int resid)

Added in API level 1

Return the type name for a given resource identifier.

Parameters
resid The resource identifier whose type name is to be retrieved.
Returns
  • A string holding the type name of the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getString (int id)

Added in API level 1

Return the string value associated with a particular resource ID. It will be stripped of any styled text information.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • String The string data associated with the resource, stripped of styled text information.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String getString (int id, Object... formatArgs)

Added in API level 1

Return the string value associated with a particular resource ID, substituting the format arguments as defined in Formatter and format(String, Object...). It will be stripped of any styled text information.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
formatArgs The format arguments that will be used for substitution.
Returns
  • String The string data associated with the resource, stripped of styled text information.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public String[] getStringArray (int id)

Added in API level 1

Return the string array associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • The string array associated with the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public static Resources getSystem ()

Added in API level 1

Return a global shared Resources object that provides access to only system resources (no application resources), and is not configured for the current screen (can not use dimension units, does not change based on orientation, etc).

public CharSequence getText (int id, CharSequence def)

Added in API level 1

Return the string value associated with a particular resource ID. The returned object will be a String if this is a plain string; it will be some other type of CharSequence if it is styled.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
def The default CharSequence to return.
Returns
  • CharSequence The string data associated with the resource, plus possibly styled text information, or def if id is 0 or not found.

public CharSequence getText (int id)

Added in API level 1

Return the string value associated with a particular resource ID. The returned object will be a String if this is a plain string; it will be some other type of CharSequence if it is styled.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • CharSequence The string data associated with the resource, plus possibly styled text information.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public CharSequence[] getTextArray (int id)

Added in API level 1

Return the styled text array associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • The styled text array associated with the resource.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public void getValue (String name, TypedValue outValue, boolean resolveRefs)

Added in API level 1

Return the raw data associated with a particular resource ID. See getIdentifier() for information on how names are mapped to resource IDs, and getString(int) for information on how string resources are retrieved.

Note: use of this function is discouraged. It is much more efficient to retrieve resources by identifier than by name.

Parameters
name The name of the desired resource. This is passed to getIdentifier() with a default type of "string".
outValue Object in which to place the resource data.
resolveRefs If true, a resource that is a reference to another resource will be followed so that you receive the actual final resource data. If false, the TypedValue will be filled in with the reference itself.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public void getValue (int id, TypedValue outValue, boolean resolveRefs)

Added in API level 1

Return the raw data associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
outValue Object in which to place the resource data.
resolveRefs If true, a resource that is a reference to another resource will be followed so that you receive the actual final resource data. If false, the TypedValue will be filled in with the reference itself.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public void getValueForDensity (int id, int density, TypedValue outValue, boolean resolveRefs)

Added in API level 15

Get the raw value associated with a resource with associated density.

Parameters
id resource identifier
density density in DPI
resolveRefs If true, a resource that is a reference to another resource will be followed so that you receive the actual final resource data. If false, the TypedValue will be filled in with the reference itself.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public XmlResourceParser getXml (int id)

Added in API level 1

Return an XmlResourceParser through which you can read a generic XML resource for the given resource ID.

The XmlPullParser implementation returned here has some limited functionality. In particular, you can't change its input, and only high-level parsing events are available (since the document was pre-parsed for you at build time, which involved merging text and stripping comments).

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • A new parser object through which you can read the XML data.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.
See Also

public final Resources.Theme newTheme ()

Added in API level 1

Generate a new Theme object for this set of Resources. It initially starts out empty.

Returns
  • Theme The newly created Theme container.

public TypedArray obtainAttributes (AttributeSet set, int[] attrs)

Added in API level 1

Retrieve a set of basic attribute values from an AttributeSet, not performing styling of them using a theme and/or style resources.

Parameters
set The current attribute values to retrieve.
attrs The specific attributes to be retrieved.
Returns
  • Returns a TypedArray holding an array of the attribute values. Be sure to call TypedArray.recycle() when done with it.

public TypedArray obtainTypedArray (int id)

Added in API level 1

Return an array of heterogeneous values.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns a TypedArray holding an array of the array values. Be sure to call TypedArray.recycle() when done with it.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public InputStream openRawResource (int id, TypedValue value)

Added in API level 3

Open a data stream for reading a raw resource. This can only be used with resources whose value is the name of an asset file -- that is, it can be used to open drawable, sound, and raw resources; it will fail on string and color resources.

Parameters
id The resource identifier to open, as generated by the appt tool.
value The TypedValue object to hold the resource information.
Returns
  • InputStream Access to the resource data.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public InputStream openRawResource (int id)

Added in API level 1

Open a data stream for reading a raw resource. This can only be used with resources whose value is the name of an asset files -- that is, it can be used to open drawable, sound, and raw resources; it will fail on string and color resources.

Parameters
id The resource identifier to open, as generated by the appt tool.
Returns
  • InputStream Access to the resource data.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public AssetFileDescriptor openRawResourceFd (int id)

Added in API level 1

Open a file descriptor for reading a raw resource. This can only be used with resources whose value is the name of an asset files -- that is, it can be used to open drawable, sound, and raw resources; it will fail on string and color resources.

This function only works for resources that are stored in the package as uncompressed data, which typically includes things like mp3 files and png images.

Parameters
id The resource identifier to open, as generated by the appt tool.
Returns
  • AssetFileDescriptor A new file descriptor you can use to read the resource. This includes the file descriptor itself, as well as the offset and length of data where the resource appears in the file. A null is returned if the file exists but is compressed.
Throws
Resources.NotFoundException Throws NotFoundException if the given ID does not exist.

public void parseBundleExtra (String tagName, AttributeSet attrs, Bundle outBundle)

Added in API level 3

Parse a name/value pair out of an XML tag holding that data. The AttributeSet must be holding the data defined by Extra. The following value types are supported:

Parameters
tagName The name of the tag these attributes come from; this is only used for reporting error messages.
attrs The attributes from which to retrieve the name/value pair.
outBundle The Bundle in which to place the parsed value.
Throws
XmlPullParserException If the attributes are not valid.

public void parseBundleExtras (XmlResourceParser parser, Bundle outBundle)

Added in API level 3

Parse a series of <extra> tags from an XML file. You call this when you are at the parent tag of the extra tags, and it will return once all of the child tags have been parsed. This will call parseBundleExtra(String, AttributeSet, Bundle) for each extra tag encountered.

Parameters
parser The parser from which to retrieve the extras.
outBundle A Bundle in which to place all parsed extras.
Throws
XmlPullParserException
IOException
XmlPullParserException

public void updateConfiguration (Configuration config, DisplayMetrics metrics)

Added in API level 1

Store the newly updated configuration.