Ich habe kürzlich festgestellt, dass meine App gelegentlich LAG hat. und von LAG ich es bedeuten kann bis zu 40 Sekunden dauern, hängt ab, wenn ich WiFi oder mobile Daten verwenden ...Log <GATE-M> DEV_ACTION_COMPLETED</GATE-M> scheint die Ausführung auf Android zu verzögern
laden ich eine Seite URL, und laden js dann zur Ausführung:
webView = (WebView) view.findViewById(R.id.WebView);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
logDebug("Loading URL: " + url);
super.onPageStarted(view, url, favicon);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return WrappingClass.this.shouldOverrideUrlLoading(view, url);
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
logInfo("loading JavaScript to webview.");
webView.loadUrl("full-js-here");
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
logError("error code:" + errorCode);
super.onReceivedError(view, errorCode, description, failingUrl);
}
});
WebSettings webSettings = webView.getSettings();
webSettings.setSavePassword(false);
webSettings.setSaveFormData(false);
webSettings.setJavaScriptEnabled(true);
webView.requestFocus(View.FOCUS_DOWN);
webView.loadUrl("url");
Nach dem Aufruf die Last-uRL, die Seite in der Web-Ansicht angezeigt wird, ist die Benutzeroberfläche reagiert, ich auf Schaltflächen klicken können, gehen Sie zurück, und navigieren Sie die Anwendung ...
ABER
das Skript ich versuche, run wird nicht ausgeführt, nicht bis DEV_ACTION_COMPLETED wird in das Protokoll gedruckt, dann wird wieder alles normal, und onPageFinished wird aufgerufen und das Skript wird sofort ausgeführt. Problem kann dies bis zu 40 Sekunden dauern.
== == UPDATE
Es scheint, dass die Verzögerung bis zu einem gewissen Punkt wächst, und dass, nachdem die Verzögerung ist zu nichts verkürzen und wächst wieder ... es ist wie eine Sequenz: 0,1, 2,4,8,16,32 ... und dann beginnt von 0.
Könnte es sein, weil ich neue Aktivitäten mit Webview erstellen, in einer zu kurzen Zeit?
Irgendwelche Gedanken?
Versuchen Sie, 'webView.setW hinzuzufügen ebChromeClient (neuer WebChromeClient()); webView.setWebViewClient (neuer WebViewClient()); 'vor' webSettings.setJavaScriptEnabled (true); '. Siehe auch: http://stackoverflow.com/questions/5820237/android-webview-loadurl-with-javascript-onpagefinished-lag – Slartibartfast
Wird es in ein paar Stunden gehen ... – TacB0sS
Hat nicht funktioniert .. . :( – TacB0sS