Jsoup を使用していくつかの html ページを取得および解析するコードがあり、それを描画する WebView に渡す前に、html ツリーを操作します。操作をバイパスすると、コードは Android SDK シミュレーターで許容できる時間 (2 ~ 3 秒) で実行されますが、操作を行うと許容できない時間 (1 つのページを読み込むだけで 60 秒以内) にジャンプします。
Eclipse と Android SDK を使用して、実行のプロファイリングを行ったので、結果を解釈しようとしています。ここからhttp://android-developers.blogspot.com/2010/10/traceview-war-story.htmlは、「排他的 Cpu 時間 %」でプロファイルをソートするためのヒントを得ました。驚いたことに、私自身のコードは 1% にもなりませんでした。最大の時間消費者は android.view.ViewGroup.drawChild() で、11.9% です。リストされている最初の Android 以外の関数 (排他的 CPU % でソート) は java.lang.ref.Reference.get() で、0.4% にリストされています。
しかし、最も奇妙なことは、自分のコードのことだと思います。AsyncTask の doInBackground() しかリストされていません。デバッグ出力でそれらが呼び出されていることがわかりますが、これが順番に呼び出す関数は存在しません。それらがリストされていないのはなぜですか?
私はこれのどれを作るべきか理解していません。どんなヒントでも大歓迎です。