File system & berkas
Selain key–value (lihat AsyncStorage & exsampel Storage.js),
aplikasi mobile sering menulis cache, unduhan, atau ekspor berkas ke direktori aplikasi.
Letak data di perangkat
- Direktori dokumen aplikasi — untuk data yang seharusnya tetap ada (backup iCloud/Android sesuai kebijakan OS).
- Cache — untuk berkas sementara; OS boleh menghapus saat ruang penuh.
Expo & API umum
- Paket seperti
expo-file-systemmenyediakan baca/tulis, info ruang, dan URI ke folder sandboxed aplikasi. - Path absolut bersifat spesifik per platform; jangan hard-code path sistem.
- Untuk gambar dari galeri/kamera, alur biasanya melalui picker (lihat ImgPicker) lalu salin atau referensikan URI.
import * as FileSystem from "expo-file-system";
const fileUri = FileSystem.documentDirectory + "notes/cache.txt";
await FileSystem.makeDirectoryAsync(FileSystem.documentDirectory + "notes", {
intermediates: true,
});
await FileSystem.writeAsStringAsync(fileUri, "cache lokal");
const content = await FileSystem.readAsStringAsync(fileUri);Praktik
- Namai berkas dengan konvensi tetap (prefix, tanggal, ekstensi) agar mudah dibersihkan.
- Batasi ukuran cache; hapus berkas lama saat logout atau saat quota mendekati penuh.
- Untuk berkas sensitif, pertimbangkan enkripsi atau gunakan secure storage untuk metadata kunci.