1

私のアプリは 4 つのタブで構成されています: webview、およびいくつかのテキスト/編集テキストを含む 3 つのビュー...アプリは onPause (ユーザーがホーム ボタンを使用) であり、私のアプリはまだ CPU を使用し (約 20%、またはそれ以上!)、バッテリーを消費しています。

何がそんなに多くの CPU を使用するのかわからないので、2 つの質問があります。

  1. あまりにも多くの CPU を使用するプロセス (メソッド、アクティビティなど) を (Eclipse で) 正確に知るにはどうすればよいですか?
  2. ユーザーがホームボタンを押したときにCPU消費量0でアプリを「フリーズ」するにはどうすればよいですか(onPauseメソッドにあると思います。finish()を試してみましたが、うまくいきましたが、ユーザーがアプリに戻ると、 FC)。

どうもありがとう !

編集 :

私の webview が CPU を消費しているようです。webview オブジェクトを破棄せずに onPause 中にこの webview を停止するにはどうすればよいですか?

4

1 に答える 1

5

私は解決策を見つけます:

Webビューの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 に答える