在大型android代码块的某处是打开游标泄漏。超过800个游标打开。有谁知道最好的方法来确定这一点?有什么方法可以查询如何使用游标?或者通过配置文件工具查看它发生的位置?怎么会这样做?大代码块不想更改大量代码来解决这个问题。我没有看到任何地方检查SQLiteDatabase类上的打开游标数。
答案 0 :(得分:7)
在你的onCreate方法
中试试这个StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectLeakedSqlLiteObjects()
.detectLeakedClosableObjects()
.penaltyLog()
.penaltyDeath()
.build());
当光标泄漏时,应用程序将因堆栈跟踪而崩溃: - )
StrictMode是一个开发人员工具,可以检测您可能正在执行的操作 意外地将它们引起你的注意,以便你可以解决它们
http://developer.android.com/reference/android/os/StrictMode.html