我使用ContentProvider
但有时我会在标题中写下消息。是什么原因?我读到如果在关闭游标之前关闭数据库,则会出现此消息。我还读到,如果我使用ContentProvider
答案 0 :(得分:5)
使用ContentProvider时,您不必关闭数据库,但这不适用于游标。您必须使用返回游标的getContentResolver().query()
。最终你必须用.close()
关闭那个返回的光标,否则你会得到那个讨厌的消息。
答案 1 :(得分:0)
使用以下代码以严格模式运行
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectDiskReads()
.detectDiskWrites()
.detectNetwork() // or .detectAll() for all detectable problems
.penaltyLog()
.build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectLeakedSqlLiteObjects()
.detectLeakedClosableObjects()
.penaltyLog()
.penaltyDeath()
.build());
这开始产生可关闭的东西等。因此有助于调试错误产生的地方。
来源:https://developer.android.com/reference/android/os/StrictMode.html