WebView mit 30% im Hintergrund in WebViewCoreThread

9

Ich habe eine App mit einem WebView. Wenn die Aktivität pausiert (onPause), rufe ich die entsprechenden webview.onPause und webview.stopTimers auf, diese werden mit den Methoden webview.onResume und webview.resumeTimers in der Activity.onResume-Methode ausgeglichen.

Wenn ich nun www.google.com in die Webansicht lade und die App dann in den Hintergrund bringe, verbraucht sie immer noch bis zu 30% CPU! Das ist viel zu viel.

Ich habe Method Profiling durchgeführt und gesehen, dass der WebViewCoreThread alle 100ms etwas mit MessageQueue.nativePollOnce - & gt; WebViewCore.nativeSetScrollOffset, dies verursachte ein Repaint der Webansicht (während des bakground) (WebViewCore.nativeDrawContent).

Ist das ein Problem mit WebView im Allgemeinen oder ein Problem in meiner App?

    
TjerkW 04.10.2011, 08:57
quelle

1 Antwort

0

Android hat eine Menge Probleme mit den Webviews, und es gibt einige bekannte Probleme mit bestimmten Versionen, wie Sie hier sehen können:

Ссылка

Ich hatte einige ähnliche Probleme und am Ende ist es billiger, die Webviews zu zerstören und sie neu zu erstellen, weil der gesamte CPU-Verbrauch die Batterie des Benutzers entleert.

Ich habe einen netten Post gefunden, der für dich nützlich sein könnte: Ссылка

Wenn Sie die Batterie Ihrer Benutzer erhalten und die Deinstallation vermeiden wollen, schlage ich vor, dass das Android-Team hart daran arbeitet, die Web-Views zu verbessern, schauen wir mal.

    
moxi 13.06.2015 21:02
quelle

Tags und Links