BaseLayerAndroid的创建、销毁和日志信息

9

我正在使用一个在activity中的web view。当我在手机上运行我的应用程序时,我能够看到很多(连续的)带有标签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 后,仍然会持续接收这些日志信息。请问有谁可以帮我分析一下这些日志信息是什么,为何以如此快的速度出现?

你的清单文件中是否有 android:debuggable="true"? - Warpzit
1
@Joe,我(悬赏发布者)也在Motorola Droid Bionic上运行着安卓4.0.3。这是操作系统的问题还是我可以在我的应用程序中修复它? - Richard J. Ross III
1
@RichardJ.RossIII 我猜你想要进行调试,而且你的LogCat里充满了这些条目,你可以创建一个过滤器来将它们移除。创建一个新的过滤器,并将"按消息"设置为 "^(?!.(BaseLayerAndroid)).$"。 - Raanan
1
@Raanan,这并没有解决问题,只是一个权宜之计。 - Richard J. Ross III
1
@RichardJ.RossIII,我认为你无法像你在这里描述的那样“解决”这个问题,这似乎是一个特定于Android版本的错误,导致所有这些日志...它们只是日志,所以...只能临时应急。 - Raanan
显示剩余6条评论
1个回答

1

我在一个webview(phonegap)中遇到了同样的问题。

我发现日志消息似乎与聚焦文本区域的闪烁光标有关。

我在webview中运行jquery,如果我执行

$('textarea').get(0).blur();

日志消息停止了。

这段代码告诉文本区域不再聚焦,因此光标停止闪烁,日志消息也停止了(似乎与光标的闪烁速度相同)。

在文本区域外点击时,消息也会停止,而在文本区域内点击会重新启动消息。

我知道这不是一个正确的解决方案,但我希望它可以指向正确的方向。


嗯,有趣。问题在于我使用的WebView被AdMob AdView遮挡住了,这意味着我无法真正知道HTML结构。 - Richard J. Ross III

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接