Ποιοι τύποι αποθήκευσης δεδομένων υπάρχουν στις εφαρμογές 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) }