我在活动中使用网页视图。当我在手机上运行我的应用程序时,我能够通过Tag BaseLayerAndroid看到很多(连续的)日志消息。
02-07 13:29:06.458: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x1a328b8
02-07 13:29:06.505: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x1977130
02-07 13:29:06.560: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x197fa88
02-07 13:29:06.599: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x1a328b8
02-07 13:29:06.653: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x199fbd0
02-07 13:29:06.685: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x197fa88
02-07 13:29:06.755: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x1ba8018
02-07 13:29:06.786: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x199fbd0
02-07 13:29:06.856: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x19c48d0
02-07 13:29:06.903: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x1ba8018
02-07 13:29:06.966: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x1a20a90
02-07 13:29:07.021: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x19c48d0
02-07 13:29:07.067: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x198e480
02-07 13:29:07.099: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x1a20a90
02-07 13:29:07.169: D/BaseLayerAndroid(27721): Creating BaseLayerAndroid = 0x1977140
02-07 13:29:07.216: D/BaseLayerAndroid(27721): Destroying BaseLayerAndroid = 0x198e480
我的基本代码是:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.display);
progress = (ProgressBar) findViewById(R.id.progressBar1);
webview = (WebView) findViewById(R.id.webView1);
webSettings = webview.getSettings();
webSettings.setBuiltInZoomControls(true);
webSettings.setJavaScriptEnabled(true);
webview.setWebViewClient(new WebViewClient(){
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
// TODO Auto-generated method stub
super.onPageStarted(view, url, favicon);
progress.setActivated(true);
progress.setVisibility(ProgressBar.VISIBLE);
}
@Override
public void onPageFinished(WebView view, String url) {
// TODO Auto-generated method stub
super.onPageFinished(view, url);
progress.setActivated(false);
progress.setVisibility(ProgressBar.INVISIBLE);
}
});
new Thread(new Runnable() {
public void run() {
webview.loadUrl("some url");
}
}).start();
即使我从我的活动中走出来,显示webview,我也会继续收到这些日志消息。 任何人都可以帮我分析这些日志消息的全部内容以及为什么它们以如此快的速度出现。
答案 0 :(得分:1)
我在网页浏览(phonegap)中遇到同样的问题。
我发现日志消息似乎与聚焦文本区域的闪烁光标有关。
我在webview中运行jquery,如果我这样做
$( 'textarea的')得到(0).blur();
日志消息停止。
该代码告诉textarea停止聚焦,因此光标停止闪烁,所以日志消息(似乎以与光标闪烁相同的速率流动)。
当点击textarea外部时,消息也会停止,而在textarea中点击会重新启动消息。
我知道这不是一个合适的解决方案,但我希望它可以提示正确的方向。