Sobes.tech
Junior

Какви типове съхранение на данни съществуват в Android приложенията?

sobes.tech AI

Отговор от AI

В приложенията за Android са налични следните типове съхранение на данни:

  • Общи предпочитания: За съхранение на малки набори от примитивни данни (ключ-стойност). Подходящо за настройки на потребителя.

  • Вътрешно съхранение: За съхранение на файлове в вътрешната памет на устройството. Достъпно само за приложението, което е създало файла. Изтрива се при деинсталиране на приложението.

  • Външно съхранение: За съхранение на файлове във външната памет на устройството (SD карта или раздел във вътрешната памет, достъпен чрез MTP). Може да бъде достъпно за други приложения и потребители. Изисква разрешения.

  • SQLite бази данни: За съхранение на структурирани данни в релационна база данни. Идеално за големи обеми данни, изискващи сложни заявки.

    -- Пример за създаване на таблица
    CREATE TABLE потребители (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        име TEXT,
        възраст INTEGER
    );
    
  • DataStore: По-модерна алтернатива на Общите предпочитания. Позволява асинхронно съхраняване на типизирани данни. Поддържа Flow.

    // Пример за използване на Preference DataStore
    val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "настройки")
    
  • Библиотека за персистентност Room: Абстракция над SQLite. Улеснява работата с бази данни, предоставя по-безопасен достъп до данните и поддържа LiveData и Flow.

    // Пример за DAO с Room
    @Dao
    interface UserDao {
        @Query("SELECT * FROM user")
        fun getAll(): List<User>
    
        @Insert
        fun insertAll(vararg users: User)
    }