Sobes.tech
Back to questions
Junior — Middle
70

Какими методами можно реализовать обмен данными между двумя Activity в приложении?

Companies where asked
Ozon FreshOzon Fresh

Answer from AI

sobes.tech AI

Обмен данными между двумя Activity в Android можно реализовать несколькими способами:

  1. Через Intent — при запуске второй Activity можно передать данные через extras:
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra("key", "value");
startActivity(intent);

Во второй Activity данные извлекаются из Intent.

  1. startActivityForResult — если нужно получить результат обратно:
// В первой Activity
Intent intent = new Intent(this, SecondActivity.class);
startActivityForResult(intent, REQUEST_CODE);

// Во второй Activity
Intent resultIntent = new Intent();
resultIntent.putExtra("resultKey", "resultValue");
setResult(RESULT_OK, resultIntent);
finish();
  1. Использование общих хранилищ — например, SharedPreferences, базы данных или синглтон-классов для хранения данных, доступных обеим Activity.

  2. Через ViewModel и LiveData (если используется архитектура MVVM с Jetpack) — для обмена данными между Activity и фрагментами.

Выбор метода зависит от задачи и архитектуры приложения.