A SQLiteConnection object for the database has been disclosed! Please correct your request


My application give me this warning

A SQLiteConnection object for database '+data+data+com_example_test+database' was leaked! Please fix your application to end transactions in progress properly and to close the database when it is no longer needed.

But I close the db object and the cursor after every use.

        try {
            while (cursor.moveToNext()) {
        } finally {
            if (cursor != null && !cursor.isClosed())


Can you help me for understand what is the problem? thanks!!!

UPDATE! I try this solution from this post SQLite Connection leaked although everything closed

and I don't have memory leak anymore, is it a good solution?

Possible Solutions:

  • You have not committed the transactions you have started (You should always close the transaction once you started)
  • Check whether you have closed the cursors you have opened if you are using Sqlite (Looks like you have done this step from the code you posted)
  • Also move the db.close to finally block