Det händer på grund av:
db.close();
i metoderna:
void addContact(Contact contact)
public void deleteContact(Contact contact)
Du bör inte stänga anslutningen till den underliggande databasen om du inte verkligen tänker inte arbeta med det längre. Använd SQLiteOpenHelper:close
, när du är klar med ditt arbete.
Dessutom anrop till getReadableDatabase()
och getWriteableDatabase()
returnerar samma databasobjekt 99 % av gångerna, och de inte återinitiera databasanslutningen stängd manuellt av dig.
Låt dig inte luras av dessa metodnamn.