1

我的应用程序由四个选项卡组成:一个 web 视图和三个带有一些文本/编辑文本的视图,......问题是我的应用程序消耗了大量 CPU,我不明白为什么,主要问题之一是当应用程序处于暂停状态(用户使用主页按钮),我的应用程序仍在使用 CPU(大约 20%,甚至更多!)并且非常消耗电池。

我不明白为什么要使用这么多 CPU,所以我有两个问题:

  1. 我如何才能准确(使用 Eclipse)知道使用过多 CPU 的进程(方法、活动...)?
  2. 当用户按下主页按钮时,我如何以 0 CPU 消耗“冻结”我的应用程序(我想是在 onPause 方法中,我尝试使用完成(),它的工作但当用户返回我的应用程序时,他得到一个FC)。

非常感谢 !

编辑 :

似乎我的 webview 消耗 CPU。如何在 onPause 期间停止此 webview 而不会破坏 webview 对象?

4

1 回答 1

5

我找到了解决方案:

webview 中的 javascript 内容是问题所在。要解决这个问题:

@Override
public void onPause() {
    super.onPause();
    /* pause timer of the webview, if not, high CPU during on pause */
    page.pauseTimers();
}

在简历上,

public void onResume() {  
    /* reactive timer */
    super.onResume();
    page.resumeTimers();
}
于 2012-07-12T08:01:06.007 回答