Sobes.tech
Junior

Welche Arten von Datenspeicherung gibt es in Android-Anwendungen?

sobes.tech KI

Antwort von AI

In Android-Anwendungen sind die folgenden Datenspeichertypen verfügbar:

  • Gemeinsame Präferenzen: Für die Speicherung kleiner Mengen primitiver Daten (Schlüssel-Wert). Geeignet für Benutzereinstellungen.

  • Interner Speicher: Zum Speichern von Dateien im internen Speicher des Geräts. Nur für die Anwendung zugänglich, die die Datei erstellt hat. Wird beim Deinstallieren der Anwendung gelöscht.

  • Externer Speicher: Zum Speichern von Dateien im externen Speicher des Geräts (SD-Karte oder interner Speicherbereich, zugänglich über MTP). Kann für andere Anwendungen und Benutzer zugänglich sein. Erfordert Berechtigungen.

  • SQLite-Datenbanken: Zum Speichern strukturierter Daten in einer relationalen Datenbank. Ideal für große Datenmengen, die komplexe Abfragen erfordern.

    -- Beispiel zum Erstellen einer Tabelle
    CREATE TABLE benutzer (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        name TEXT,
        alter INTEGER
    );
    
  • DataStore: Eine modernere Alternative zu Shared Preferences. Ermöglicht das asynchrone Speichern von typisierten Daten. Unterstützt Flow.

    // Beispiel für die Verwendung von Preference DataStore
    val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "einstellungen")
    
  • Room Persistence Library: Abstraktion über SQLite. Vereinfacht die Arbeit mit Datenbanken, bietet einen sichereren Zugriff auf Daten und unterstützt LiveData und Flow.

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