Откуда берешь данные в проекте

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

Ответ

Данные можно получать из разных источников, в зависимости от требований приложения:

  1. Локальные данные – SharedPreferences, Room, DataStore, файлы.
  2. Серверные API – Retrofit, OkHttp, Volley для REST/GraphQL.
  3. Firebase – Realtime Database, Firestore, Authentication.
  4. Content Providers – контакты, календарь, медиа.
  5. Сенсоры/железо – GPS, камера, акселерометр.

Пример с Retrofit:

interface ApiService {
    @GET("users/{id}")
    suspend fun getUser(@Path("id") userId: String): User
}

// Использование
val user = retrofit.create(ApiService::class.java).getUser("123")