Junior — Middle
Πώς μπορεί κανείς να αποθηκεύσει δεδομένα σε μια εφαρμογή Android χωρίς να χρησιμοποιεί τις βιβλιοθήκες Room και SharedPreferences;
sobes.tech AI
Απάντηση από AI
Χωρίς τη χρήση του Room και των SharedPreferences στο Android, τα δεδομένα μπορούν να αποθηκευτούν με τους εξής τρόπους:
-
Αρχεία σε εσωτερική ή εξωτερική αποθήκευση:
- Στην εσωτερική αποθήκευση (
getFilesDir()) μπορείτε να γράψετε ιδιωτικά αρχεία της εφαρμογής. - Στην εξωτερική αποθήκευση (
getExternalFilesDir()) — για αρχεία προσβάσιμα στον χρήστη.
- Στην εσωτερική αποθήκευση (
-
Άμεσα SQLite:
- Χρησιμοποιήστε την κλάση
SQLiteOpenHelperγια δημιουργία και διαχείριση βάσης δεδομένων χωρίς το Room.
- Χρησιμοποιήστε την κλάση
-
Serialization σε αρχείο:
- Αποθήκευση αντικειμένων σε αρχείο σε μορφή JSON, XML ή άλλη, με μετέπειτα απο-σειριοποίηση.
Παράδειγμα εγγραφής μιας συμβολοσειράς σε εσωτερικό αρχείο:
String filename = "myfile.txt";
String fileContents = "Hello World";
try (FileOutputStream fos = openFileOutput(filename, Context.MODE_PRIVATE)) {
fos.write(fileContents.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
Έτσι, μπορείτε να αποθηκεύσετε δεδομένα χωρίς τη χρήση του Room και SharedPreferences, επιλέγοντας την κατάλληλη μέθοδο ανάλογα με την εργασία.