Kotlin Multiplatform Academy · Pelajaran

Sistem File & Jalur per Platform

Baca dan tulis file secara portabel di berbagai target.

Pelajaran 3 dari 413 langkah

Sistem File & Jalur per Platform adalah pelajaran Kotlin Multiplatform Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Kotlin Multiplatform Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Kotlin Multiplatform Academy mencakup 4 pelajaran total.

File Berada di Tempat yang Berbeda

Android dan iOS menyimpan file aplikasi di folder yang sama sekali berbeda. Kode bersama memerlukan cara portabel untuk menemukan tempat aman untuk menulis. 📁

Deklarasikan expect untuk Jalur

Letakkan fungsi expect kecil di commonMain yang mengembalikan direktori data aplikasi sebagai jalur String biasa.

expect fun dataDir(): String

Android Menggunakan filesDir

actual Android mengembalikan context.filesDir.path, yaitu folder pribadi yang dijamin sistem untuk file aplikasi Anda.

actual fun dataDir(): String =
  appContext.filesDir.path

iOS Menggunakan Direktori Documents

actual iOS meminta direktori Documents kepada NSFileManager, yaitu tempat standar aplikasi menyimpan data pengguna.

actual fun dataDir(): String =
  NSSearchPathForDirectoriesInDomains(
    NSDocumentDirectory, NSUserDomainMask, true
  ).first() as String

Bangun Jalur, Jangan Menuliskannya secara Tetap

Gabungkan direktori dengan nama file, bukan menulis jalur harfiah. Jalur yang ditulis tetap seperti /sdcard akan rusak saat Anda berpindah platform.

val file = dataDir() + "/profile.json"

API Baca/Tulis Sederhana

Bungkus pembacaan dan penulisan di balik antarmuka bersama juga, sehingga pemanggil dapat menyimpan teks tanpa mengetahui platform di baliknya.

interface Storage {
  fun write(name: String, text: String)
  fun read(name: String): String?
}

Menulis dari Kode Bersama

Logika umum memanggil storage.write tanpa mengetahui apa pun tentang file atau folder. actual platform menangani byte sebenarnya di disk.

storage.write("profile.json", json)

Baca Kembali dengan Aman

Kembalikan String yang dapat bernilai null saat membaca agar file yang hilang tidak menyebabkan aplikasi berhenti. null berarti file tersebut belum ada.

val saved = storage.read("profile.json")

Jauhkan Jalur dari Domain

Aturan bisnis Anda tidak boleh melihat jalur mentah. Sembunyikan setiap detail direktori di balik kemampuan agar domain tetap bersih.

Perhatikan Izin dan Sandbox

Kedua platform mengisolasi penyimpanan aplikasi. Gunakan direktori yang diberikan oleh sistem agar Anda sepenuhnya terhindar dari kesalahan izin.

Gunakan okio untuk Operasi File Nyata

Untuk pembacaan dan penulisan yang serius, pustaka multiplatform seperti okio menyediakan satu API FileSystem di berbagai target, sehingga Anda tidak perlu melakukan pemanggilan platform mentah.

Pemeriksaan Singkat

Pikirkan dari mana jalur direktori portabel berasal.

Ringkasan

Anda menyediakan dataDir portabel melalui expect/actual, membangun jalur alih-alih menuliskannya secara tetap, dan menyembunyikan operasi file di balik kemampuan penyimpanan kecil. 🎉

Gratis untuk memulai

Belajar Kotlin dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Sistem File & Jalur per Platform” gratis?

Ya — teks lengkap “Sistem File & Jalur per Platform” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Kotlin Multiplatform Academy, upgrade ke CoddyKit PRO. Kursus Kotlin Multiplatform Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Sistem File & Jalur per Platform”?

Baca dan tulis file secara portabel di berbagai target. Kamu berlatih Kotlin Multiplatform Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Kotlin Multiplatform Academy?

Tidak diperlukan pengalaman sebelumnya. Kotlin Multiplatform Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Sistem File & Jalur per Platform” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Kotlin Multiplatform Academy ini?

Ya. Setiap pelajaran Kotlin Multiplatform Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Rancang Antarmuka Kapabilitas
  2. expect/actual untuk Info Perangkat
  3. Sistem File & Jalur per Platform
  4. Suntikkan Implementasi Platform
← Kembali ke Kotlin Multiplatform Academy