Saya mendapatkan error di logcat berikut ini ketika menggunakan SQLite dengan IDE ADT (Eclipse).
A SQLiteConnection object for database was leaked! Please fix your application
Solusinya ditemukan di link berikut: https://stackoverflow.com/a/25308921
Yakni dengan menambahkan finally dan db.close(). Contoh kodenya berikut ini.
// menginisiasi variabel database
dbhelper = new DBHelper(getApplicationContext());
try {
// memanggil database dan mengambil datanya
dbhelper.createDataBase();
c = dbhelper.getData(kode);
if(c.getCount()>0){
int indexKode = c.getColumnIndex("kode");
int indexJudul = c.getColumnIndex("judul");
int indexGambar = c.getColumnIndex("gambar");
c.moveToFirst();
do{
String sKode = c.getString(indexKode);
String sJudul = c.getString(indexJudul);
String sGambar = c.getString(indexGambar);
Materi materi = new Materi();
materi = new Materi(sJudul, sKode, sGambar, "");
materiList.add(materi);
c.moveToNext();
}while(!c.isAfterLast());
c.close();
}
ListViewAdapter adapter = new ListViewAdapter(getApplicationContext(), materiList);
// Memasukkan data ke dalam listview
list.setAdapter(adapter);
} catch (IOException e) {
e.printStackTrace();
} finally{
dbhelper.close();
}
}
Posting Komentar