Для чего используется класс Bundle в Android?

Bundle используется для передачи данных между компонентами приложения, такими как Activity, Fragment или Service.

Короткий ответ

Что ответить на собеседовании

Bundle используется для передачи данных между компонентами приложения, такими как Activity, Fragment или Service.

Подробный разбор

Ответ с пояснениями

Bundle используется для передачи данных между компонентами приложения, такими как Activity, Fragment или Service.

Основные функции:

  • Хранение данных: Может содержать различные примитивные типы данных (int, boolean, String и т.д.), массивы примитивов, а также Parcelable или Serializable объекты.
  • Ключ-значение: Данные хранятся в виде пар ключ-значение, где ключом является строка.
  • Сохранение состояния: Применим для сохранения и восстановления состояния Activity (например, в методах onSaveInstanceState() и onRestoreInstanceState()).
  • Аргументы Fragment: Используется для передачи аргументов в Fragment через метод setArguments().
  • Дополнительные данные в Intent: Позволяет передавать дополнительные данные в Intent с помощью методов putExtra() и getExtras().

Пример использования для передачи данных между Activity:

// Отправка данных из Activity A в Activity B
val intent = Intent(this, ActivityB::class.java)
val bundle = Bundle()
bundle.putString("username", "john.doe")
bundle.putInt("age", 30)
intent.putExtras(bundle)
startActivity(intent)

// Получение данных в Activity B
val extras = intent.extras
if (extras != null) {
    val username = extras.getString("username")
    val age = extras.getInt("age", -1) // Значение по умолчанию
}

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку