Sobes.tech
Junior

Milyen típusú adattárolások léteznek Android alkalmazásokban?

sobes.tech MI

Válasz az MI-től

Android alkalmazásokban a következő adattárolási típusok érhetők el:

  • Megosztott preferenciák: Kis mennyiségű primitív adatok (kulcs-érték) tárolására. Felhasználói beállításokhoz alkalmas.

  • Belső tárhely: Fájlok tárolása az eszköz belső memóriájában. Csak az alkalmazás férhet hozzá, amely létrehozta a fájlt. Az alkalmazás eltávolításakor törlődik.

  • Külső tárhely: Fájlok tárolása az eszköz külső memóriájában (SD-kártya vagy belső memóriarész, amely MTP-n keresztül elérhető). Más alkalmazások és felhasználók számára is elérhető lehet. Engedélyek szükségesek.

  • SQLite adatbázisok: Strukturált adatok tárolása relációs adatbázisban. Ideális nagy adatmennyiséghez, amely összetett lekérdezéseket igényel.

    -- Példa tábla létrehozására
    CREATE TABLE felhasznalok (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        nev TEXT,
        kor INTEGER
    );
    
  • DataStore: Egy modernebb alternatíva a Shared Preferences-hez képest. Aszinkron módon tárolja a típusos adatokat. Flow-t támogat.

    // Preference DataStore használatának példája
    val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "beállítások")
    
  • Room tartósítási könyvtár: Absztrakció az SQLite felett. Egyszerűsíti az adatbázisokkal való munkát, biztonságosabb hozzáférést biztosít az adatokhoz, és támogatja a LiveData-t és Flow-t.

    // DAO példa Room-mal
    @Dao
    interface UserDao {
        @Query("SELECT * FROM user")
        fun getAll(): List<User>
    
        @Insert
        fun insertAll(vararg users: User)
    }