diese Ausnahme wird tatsächlich ausgelöst, weil Sie Ihre Datenbank doppelt schließen, nicht weil Sie sie nicht geschlossen haben.
also..
in Sie close()
-Methode ersetzen Sie die folgende Zeile in Ihrem Code:
if (db != null) {
mit:
if (db != null && db.isOpen()) {