9

アクティビティ内でWebビューを使用しています。電話でアプリを実行すると、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();

Webビューを表示してアクティビティを終了しても、このログメッセージを受信し続けます。誰かが私がこれらのログメッセージが何であるか、そしてなぜそれらがこんなに速い速度で現れるのかを分析するのを手伝ってもらえますか?

4

1 に答える 1

1

Webview(phonegap)でも同じ問題があります。

私が見つけたのは、ログメッセージがフォーカスされたテキストエリアの点滅カーソルに関連しているように見えるということです.

webview で jquery を実行しています。

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

ログ メッセージが停止します。

そのコードは、テキストエリアにフォーカスを停止するように指示するため、カーソルの点滅が停止し、ログメッセージも停止します (カーソルの点滅と同じ速度で流れるようです)。

テキストエリアの外側をタップするとメッセージが停止し、テキストエリアをタップするとメッセージが再開されます。

これが適切な解決策ではないことは承知していますが、正しい方向へのヒントになれば幸いです。

于 2013-03-11T14:42:26.017 に答える