我将 finish() 放在 MainActivity 的 backpressed 方法中,但是当我监控 cpu 使用情况时,我仍然看到我的应用程序在列表顶部,cpu 使用率在 %1 到 %6 之间。
我没有运行任何服务,我无法调试当前打开的线程。所以我不知道这里发生了什么。
你有什么想法?为什么应用程序即使关闭也继续使用 cpu 的原因是什么?
我将 finish() 放在 MainActivity 的 backpressed 方法中,但是当我监控 cpu 使用情况时,我仍然看到我的应用程序在列表顶部,cpu 使用率在 %1 到 %6 之间。
我没有运行任何服务,我无法调试当前打开的线程。所以我不知道这里发生了什么。
你有什么想法?为什么应用程序即使关闭也继续使用 cpu 的原因是什么?
我把finish()放到我的MainActivity的backpressed方法中
请简单地删除您的onBackPressed()
处理程序,或使用super.onBackPressed()
. 不要覆盖onBackPressed()
调用finish()
。
当我监控 cpu 使用率时,我仍然看到我的应用程序在列表顶部,cpu 使用率在 %1 到 %6 之间
您没有说明您是如何监控 CPU 使用率的。假设您的分析是正确的,那么您已经泄漏了一个正在工作的线程。
我无法调试当前打开的线程
我不知道你说的这个声明是什么意思。使用 Traceview 监控您的应用程序中正在运行的代码。