Zbavte se většiny svých close() metody, které voláte na SQLiteDatabase . Zejména nevolejte close() na databázi, která vám byla předána v onCreate() z SQLiteOpenHelper a neotevírejte a nezavírejte databázi.
SQLiteOpenHelper uchovává databázi, kterou načtete pomocí getReadableDatabase() /getWritableDatabase() a jde o to, abyste znovu použili otevřenou SQLiteDatabase objekt, zvláště když pracujete ve více vláknech.