SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

SQLiteDiskIOException dengan kode kesalahan 10:kesalahan I/O disk

Karena Anda menggunakan Penyimpanan Eksternal, aplikasi Anda harus mengetahui status Penyimpanan Eksternal, yang bisa Anda dapatkan melalui Environment.getExternalStorageState() .

Anda hanya boleh mengakses Penyimpanan Eksternal jika statusnya MOUNTED .

Jika Anda mencoba untuk membuka file (atau SQLite DB; itu hanya sebuah file!) selama startup perangkat, Anda akan pasti mengalami masalah, karena Penyimpanan Eksternal tidak terpasang hingga masuk ke pengaktifan perangkat (setelah Layar Beranda ditampilkan).

Jalan keluarnya adalah dengan mendaftarkan IntentFilter untuk diberi tahu tentang semua perubahan dalam status Penyimpanan Eksternal, dan berperilaku sesuai dengan itu.

Itu selalu merupakan ide yang baik untuk membaca dokumentasi! Lihat dokumentasi Android untuk detailnya:http://developer.android.com/reference/android/os/Environment.html

Menggunakan Penyimpanan Eksternal untuk tujuan ini meragukan, karena Anda tidak dapat mengontrol kapan itu menjadi tidak tersedia! Misalnya, pengguna mencolokkan perangkat mereka ke USB di komputer mereka, dan memilih opsi "Aktifkan Penyimpanan Massal USB", sehingga mereka dapat mengakses Penyimpanan Eksternal perangkat mereka dari komputer mereka. Kabar buruk! Aplikasi Anda akan terputus dari Penyimpanan Eksternal, dan kemungkinan besar tanpa kesempatan untuk melakukan pembersihan IO!

Dengan keadaan ini, Anda sekarang memiliki Apa yang Harus Dilakukan dengan semua data yang akan Anda masukkan ke dalam database Anda, jika saja tersedia.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Android SQLite:Bagaimana cara membuat tabel besar untuk tujuan pengujian?

  2. SQLite JSON_SET()

  3. Kesalahan SQLiteDatabase sqlite:(1) dekat):kesalahan sintaksis

  4. SQLiteReadOnlyDatabaseException:mencoba menulis database hanya-baca (kode 1032)

  5. SQLite - Buat Tabel