文章内容
2018/6/13 15:41:46,作 者: 黄兵
A SQLiteConnection object for database was leaked! Please fix your application
运行程序的时候logcat给出如下提示:
06-13 06:33:35.172 2014-2025/com.google.process.gapps W/SQLiteConnectionPool: A SQLiteConnection object for database '/data/user/0/com.google.android.gsf/databases/gservices.db' was leaked! Please fix your application to end transactions in progress properly and to close the database when it is no longer needed.
具体代码如下:
private void close(Cursor cursor) { if (cursor != null) { cursor.close(); } }
出现错误的原因:
数据库的SQLiteConnection对象'/data/user/0/com.google.android.gsf/databases/gservices.db' 被泄露! 请修复您的应用程序以正确结束正在进行的事务,并在不再需要时关闭数据库。
也就是数据库没有关闭,造成了死锁(不知道这样理解是否有问题,请大牛指教)。
解决方案:
private void close(Cursor cursor) { if (cursor != null && !cursor.isClosed()) cursor.close(); }
如果没有关闭,就直接关闭。
参考资料:A SQLiteConnection object for database was leaked! Please fix your application
黄兵个人博客原创。
转载请注明出处:黄兵个人博客 - A SQLiteConnection object for database was leaked! Please fix your application
评论列表