Что можно передать в Bundle

«Что можно передать в Bundle» — вопрос из категории Android компоненты, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Bundle позволяет передавать примитивные типы (int, boolean, String и т.д.), массивы примитивов, Parcelable и Serializable объекты, а также Bundle внутри Bundle. Для сложных объектов нужно реализовать Parcelable или Serializable.

Пример передачи данных:

val bundle = Bundle().apply {
    putString("key_string", "value")
    putInt("key_int", 42)
    putBoolean("key_bool", true)
    putParcelable("key_parcelable", myParcelableObject)
}

Важно: избегайте передачи больших объектов (например, Bitmap) через Bundle, это может привести к TransactionTooLargeException. Максимальный размер Bundle ~1MB.