Android APIs
public final class

Bundle

extends BaseBundle
implements Cloneable Parcelable
java.lang.Object
   ↳ android.os.BaseBundle
     ↳ android.os.Bundle

Class Overview

A mapping from String values to various Parcelable types.

Summary

[Expand]
Inherited Constants
From interface android.os.Parcelable
Fields
public static final Creator<Bundle> CREATOR
public static final Bundle EMPTY
Public Constructors
Bundle()
Constructs a new, empty Bundle.
Bundle(ClassLoader loader)
Constructs a new, empty Bundle that uses a specific ClassLoader for instantiating Parcelable and Serializable objects.
Bundle(int capacity)
Constructs a new, empty Bundle sized to hold the given number of elements.
Bundle(Bundle b)
Constructs a Bundle containing a copy of the mappings from the given Bundle.
Bundle(PersistableBundle b)
Constructs a Bundle containing a copy of the mappings from the given PersistableBundle.
Public Methods
void clear()
Removes all elements from the mapping of this Bundle.
Object clone()
Clones the current Bundle.
int describeContents()
Report the nature of this Parcelable's contents
IBinder getBinder(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
Bundle getBundle(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
byte getByte(String key)
Returns the value associated with the given key, or (byte) 0 if no mapping of the desired type exists for the given key.
Byte getByte(String key, byte defaultValue)
Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.
byte[] getByteArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
char getChar(String key)
Returns the value associated with the given key, or (char) 0 if no mapping of the desired type exists for the given key.
char getChar(String key, char defaultValue)
Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.
char[] getCharArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
CharSequence getCharSequence(String key, CharSequence defaultValue)
Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key or if a null value is explicitly associatd with the given key.
CharSequence getCharSequence(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
CharSequence[] getCharSequenceArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
ArrayList<CharSequence> getCharSequenceArrayList(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
ClassLoader getClassLoader()
Return the ClassLoader currently associated with this Bundle.
float getFloat(String key)
Returns the value associated with the given key, or 0.0f if no mapping of the desired type exists for the given key.
float getFloat(String key, float defaultValue)
Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.
float[] getFloatArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
ArrayList<Integer> getIntegerArrayList(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
<T extends Parcelable> T getParcelable(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
Parcelable[] getParcelableArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
<T extends Parcelable> ArrayList<T> getParcelableArrayList(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
Serializable getSerializable(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
short getShort(String key)
Returns the value associated with the given key, or (short) 0 if no mapping of the desired type exists for the given key.
short getShort(String key, short defaultValue)
Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.
short[] getShortArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
Size getSize(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
SizeF getSizeF(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
<T extends Parcelable> SparseArray<T> getSparseParcelableArray(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
ArrayList<String> getStringArrayList(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
boolean hasFileDescriptors()
Reports whether the bundle contains any parcelled file descriptors.
void putAll(Bundle bundle)
Inserts all mappings from the given Bundle into this Bundle.
void putBinder(String key, IBinder value)
Inserts an IBinder value into the mapping of this Bundle, replacing any existing value for the given key.
void putBundle(String key, Bundle value)
Inserts a Bundle value into the mapping of this Bundle, replacing any existing value for the given key.
void putByte(String key, byte value)
Inserts a byte value into the mapping of this Bundle, replacing any existing value for the given key.
void putByteArray(String key, byte[] value)
Inserts a byte array value into the mapping of this Bundle, replacing any existing value for the given key.
void putChar(String key, char value)
Inserts a char value into the mapping of this Bundle, replacing any existing value for the given key.
void putCharArray(String key, char[] value)
Inserts a char array value into the mapping of this Bundle, replacing any existing value for the given key.
void putCharSequence(String key, CharSequence value)
Inserts a CharSequence value into the mapping of this Bundle, replacing any existing value for the given key.
void putCharSequenceArray(String key, CharSequence[] value)
Inserts a CharSequence array value into the mapping of this Bundle, replacing any existing value for the given key.
void putCharSequenceArrayList(String key, ArrayList<CharSequence> value)
Inserts an ArrayList value into the mapping of this Bundle, replacing any existing value for the given key.
void putFloat(String key, float value)
Inserts a float value into the mapping of this Bundle, replacing any existing value for the given key.
void putFloatArray(String key, float[] value)
Inserts a float array value into the mapping of this Bundle, replacing any existing value for the given key.
void putIntegerArrayList(String key, ArrayList<Integer> value)
Inserts an ArrayList value into the mapping of this Bundle, replacing any existing value for the given key.
void putParcelable(String key, Parcelable value)
Inserts a Parcelable value into the mapping of this Bundle, replacing any existing value for the given key.
void putParcelableArray(String key, Parcelable[] value)
Inserts an array of Parcelable values into the mapping of this Bundle, replacing any existing value for the given key.
void putParcelableArrayList(String key, ArrayList<? extends Parcelable> value)
Inserts a List of Parcelable values into the mapping of this Bundle, replacing any existing value for the given key.
void putSerializable(String key, Serializable value)
Inserts a Serializable value into the mapping of this Bundle, replacing any existing value for the given key.
void putShort(String key, short value)
Inserts a short value into the mapping of this Bundle, replacing any existing value for the given key.
void putShortArray(String key, short[] value)
Inserts a short array value into the mapping of this Bundle, replacing any existing value for the given key.
void putSize(String key, Size value)
Inserts a Size value into the mapping of this Bundle, replacing any existing value for the given key.
void putSizeF(String key, SizeF value)
Inserts a SizeF value into the mapping of this Bundle, replacing any existing value for the given key.
void putSparseParcelableArray(String key, SparseArray<? extends Parcelable> value)
Inserts a SparceArray of Parcelable values into the mapping of this Bundle, replacing any existing value for the given key.
void putStringArrayList(String key, ArrayList<String> value)
Inserts an ArrayList value into the mapping of this Bundle, replacing any existing value for the given key.
void readFromParcel(Parcel parcel)
Reads the Parcel contents into this Bundle, typically in order for it to be passed through an IBinder connection.
void setClassLoader(ClassLoader loader)
Changes the ClassLoader this Bundle uses when instantiating objects.
synchronized String toString()
Returns a string containing a concise, human-readable description of this object.
void writeToParcel(Parcel parcel, int flags)
Writes the Bundle contents to a Parcel, typically in order for it to be passed through an IBinder connection.
[Expand]
Inherited Methods
From class android.os.BaseBundle
From class java.lang.Object
From interface android.os.Parcelable

Fields

public static final Creator<Bundle> CREATOR

Added in API level 1

public static final Bundle EMPTY

Added in API level 1

Public Constructors

public Bundle ()

Added in API level 1

Constructs a new, empty Bundle.

public Bundle (ClassLoader loader)

Added in API level 1

Constructs a new, empty Bundle that uses a specific ClassLoader for instantiating Parcelable and Serializable objects.

Parameters
loader An explicit ClassLoader to use when instantiating objects inside of the Bundle.

public Bundle (int capacity)

Added in API level 1

Constructs a new, empty Bundle sized to hold the given number of elements. The Bundle will grow as needed.

Parameters
capacity the initial capacity of the Bundle

public Bundle (Bundle b)

Added in API level 1

Constructs a Bundle containing a copy of the mappings from the given Bundle.

Parameters
b a Bundle to be copied.

public Bundle (PersistableBundle b)

Added in API level 21

Constructs a Bundle containing a copy of the mappings from the given PersistableBundle.

Parameters
b a Bundle to be copied.

Public Methods

public void clear ()

Added in API level 1

Removes all elements from the mapping of this Bundle.

public Object clone ()

Added in API level 1

Clones the current Bundle. The internal map is cloned, but the keys and values to which it refers are copied by reference.

Returns
  • a copy of this object.

public int describeContents ()

Added in API level 1

Report the nature of this Parcelable's contents

Returns
  • a bitmask indicating the set of special object types marshalled by the Parcelable.

public IBinder getBinder (String key)

Added in API level 18

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • an IBinder value, or null

public Bundle getBundle (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a Bundle value, or null

public byte getByte (String key)

Added in API level 1

Returns the value associated with the given key, or (byte) 0 if no mapping of the desired type exists for the given key.

Parameters
key a String
Returns
  • a byte value

public Byte getByte (String key, byte defaultValue)

Added in API level 1

Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.

Parameters
key a String
defaultValue Value to return if key does not exist
Returns
  • a byte value

public byte[] getByteArray (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a byte[] value, or null

public char getChar (String key)

Added in API level 1

Returns the value associated with the given key, or (char) 0 if no mapping of the desired type exists for the given key.

Parameters
key a String
Returns
  • a char value

public char getChar (String key, char defaultValue)

Added in API level 1

Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.

Parameters
key a String
defaultValue Value to return if key does not exist
Returns
  • a char value

public char[] getCharArray (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a char[] value, or null

public CharSequence getCharSequence (String key, CharSequence defaultValue)

Added in API level 12

Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key or if a null value is explicitly associatd with the given key.

Parameters
key a String, or null
defaultValue Value to return if key does not exist or if a null value is associated with the given key.
Returns
  • the CharSequence value associated with the given key, or defaultValue if no valid CharSequence object is currently mapped to that key.

public CharSequence getCharSequence (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a CharSequence value, or null

public CharSequence[] getCharSequenceArray (String key)

Added in API level 8

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a CharSequence[] value, or null

public ArrayList<CharSequence> getCharSequenceArrayList (String key)

Added in API level 8

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • an ArrayList value, or null

public ClassLoader getClassLoader ()

Added in API level 11

Return the ClassLoader currently associated with this Bundle.

public float getFloat (String key)

Added in API level 1

Returns the value associated with the given key, or 0.0f if no mapping of the desired type exists for the given key.

Parameters
key a String
Returns
  • a float value

public float getFloat (String key, float defaultValue)

Added in API level 1

Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.

Parameters
key a String
defaultValue Value to return if key does not exist
Returns
  • a float value

public float[] getFloatArray (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a float[] value, or null

public ArrayList<Integer> getIntegerArrayList (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • an ArrayList value, or null

public T getParcelable (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a Parcelable value, or null

public Parcelable[] getParcelableArray (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a Parcelable[] value, or null

public ArrayList<T> getParcelableArrayList (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • an ArrayList value, or null

public Serializable getSerializable (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a Serializable value, or null

public short getShort (String key)

Added in API level 1

Returns the value associated with the given key, or (short) 0 if no mapping of the desired type exists for the given key.

Parameters
key a String
Returns
  • a short value

public short getShort (String key, short defaultValue)

Added in API level 1

Returns the value associated with the given key, or defaultValue if no mapping of the desired type exists for the given key.

Parameters
key a String
defaultValue Value to return if key does not exist
Returns
  • a short value

public short[] getShortArray (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a short[] value, or null

public Size getSize (String key)

Added in API level 21

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a Size value, or null

public SizeF getSizeF (String key)

Added in API level 21

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a Size value, or null

public SparseArray<T> getSparseParcelableArray (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • a SparseArray of T values, or null

public ArrayList<String> getStringArrayList (String key)

Added in API level 1

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key a String, or null
Returns
  • an ArrayList value, or null

public boolean hasFileDescriptors ()

Added in API level 1

Reports whether the bundle contains any parcelled file descriptors.

public void putAll (Bundle bundle)

Added in API level 1

Inserts all mappings from the given Bundle into this Bundle.

Parameters
bundle a Bundle

public void putBinder (String key, IBinder value)

Added in API level 18

Inserts an IBinder value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

You should be very careful when using this function. In many places where Bundles are used (such as inside of Intent objects), the Bundle can live longer inside of another process than the process that had originally created it. In that case, the IBinder you supply here will become invalid when your process goes away, and no longer usable, even if a new process is created for you later on.

Parameters
key a String, or null
value an IBinder object, or null

public void putBundle (String key, Bundle value)

Added in API level 1

Inserts a Bundle value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a Bundle object, or null

public void putByte (String key, byte value)

Added in API level 1

Inserts a byte value into the mapping of this Bundle, replacing any existing value for the given key.

Parameters
key a String, or null
value a byte

public void putByteArray (String key, byte[] value)

Added in API level 1

Inserts a byte array value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a byte array object, or null

public void putChar (String key, char value)

Added in API level 1

Inserts a char value into the mapping of this Bundle, replacing any existing value for the given key.

Parameters
key a String, or null
value a char

public void putCharArray (String key, char[] value)

Added in API level 1

Inserts a char array value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a char array object, or null

public void putCharSequence (String key, CharSequence value)

Added in API level 1

Inserts a CharSequence value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a CharSequence, or null

public void putCharSequenceArray (String key, CharSequence[] value)

Added in API level 8

Inserts a CharSequence array value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a CharSequence array object, or null

public void putCharSequenceArrayList (String key, ArrayList<CharSequence> value)

Added in API level 8

Inserts an ArrayList value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value an ArrayList object, or null

public void putFloat (String key, float value)

Added in API level 1

Inserts a float value into the mapping of this Bundle, replacing any existing value for the given key.

Parameters
key a String, or null
value a float

public void putFloatArray (String key, float[] value)

Added in API level 1

Inserts a float array value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a float array object, or null

public void putIntegerArrayList (String key, ArrayList<Integer> value)

Added in API level 1

Inserts an ArrayList value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value an ArrayList object, or null

public void putParcelable (String key, Parcelable value)

Added in API level 1

Inserts a Parcelable value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a Parcelable object, or null

public void putParcelableArray (String key, Parcelable[] value)

Added in API level 1

Inserts an array of Parcelable values into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value an array of Parcelable objects, or null

public void putParcelableArrayList (String key, ArrayList<? extends Parcelable> value)

Added in API level 1

Inserts a List of Parcelable values into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value an ArrayList of Parcelable objects, or null

public void putSerializable (String key, Serializable value)

Added in API level 1

Inserts a Serializable value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a Serializable object, or null

public void putShort (String key, short value)

Added in API level 1

Inserts a short value into the mapping of this Bundle, replacing any existing value for the given key.

Parameters
key a String, or null
value a short

public void putShortArray (String key, short[] value)

Added in API level 1

Inserts a short array value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a short array object, or null

public void putSize (String key, Size value)

Added in API level 21

Inserts a Size value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a Size object, or null

public void putSizeF (String key, SizeF value)

Added in API level 21

Inserts a SizeF value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a SizeF object, or null

public void putSparseParcelableArray (String key, SparseArray<? extends Parcelable> value)

Added in API level 1

Inserts a SparceArray of Parcelable values into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value a SparseArray of Parcelable objects, or null

public void putStringArrayList (String key, ArrayList<String> value)

Added in API level 1

Inserts an ArrayList value into the mapping of this Bundle, replacing any existing value for the given key. Either key or value may be null.

Parameters
key a String, or null
value an ArrayList object, or null

public void readFromParcel (Parcel parcel)

Added in API level 1

Reads the Parcel contents into this Bundle, typically in order for it to be passed through an IBinder connection.

Parameters
parcel The parcel to overwrite this bundle from.

public void setClassLoader (ClassLoader loader)

Added in API level 1

Changes the ClassLoader this Bundle uses when instantiating objects.

Parameters
loader An explicit ClassLoader to use when instantiating objects inside of the Bundle.

public synchronized String toString ()

Added in API level 1

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

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

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.

public void writeToParcel (Parcel parcel, int flags)

Added in API level 1

Writes the Bundle contents to a Parcel, typically in order for it to be passed through an IBinder connection.

Parameters
parcel The parcel to copy this bundle to.
flags Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.