Sobes.tech
Junior

Kokie duomenų saugojimo tipai yra Android programose?

sobes.tech AI

Atsakymas iš AI

Android programose yra prieinami šie duomenų saugojimo tipai:

  • Bendrai naudojamos nuostatos: Mažų kiekių pirminių duomenų (raktas-reikšmė) saugojimui. Tinka naudotojo nustatymams.

  • Vidinis saugojimas: Failų saugojimas į įrenginio vidinę atmintį. Prieinama tik programai, kuri sukūrė failą. Išnyksta pašalinus programą.

  • Išorinis saugojimas: Failų saugojimas į įrenginio išorinę atmintį (SD kortelė arba vidinės atminties skaidinys, prieinamas per MTP). Gali būti prieinama kitoms programoms ir naudotojams. Reikia leidimų.

  • SQLite duomenų bazės: Struktūruotų duomenų saugojimas reliacinėje duomenų bazėje. Idealiai tinka dideliems duomenų kiekiams, reikalaujantiems sudėtingų užklausų.

    -- Pavyzdys, kaip sukurti lentelę
    CREATE TABLE naudotojai (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        vardas TEXT,
        amžius INTEGER
    );
    
  • DataStore: modernesnė alternatyva Shared Preferences. Leidžia asinchroniškai saugoti tipizuotus duomenis. Palaiko Flow.

    // Preference DataStore naudojimo pavyzdys
    val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "nustatymai")
    
  • Room duomenų bazės biblioteka: Abstrakcija virš SQLite. Supaprastina darbą su duomenų bazėmis, užtikrina saugesnį prieigą prie duomenų ir palaiko LiveData ir Flow.

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