質問

見る方法 console.log Androidエミュレーターを使用したWebサイトのメッセージ?

役に立ちましたか?

解決

Rich Chetwyndの短い記事「AndroidブラウザでのJavaScriptデバッグ」から。

AndroidデバイスまたはエミュレータからJavaScriptエラーとコンソールメッセージを記録できます。これを行うには、最初にAndroid SDKおよびUSBドライバーをインストールし、実際のデバイスでUSBデバッグを有効にする必要があります。

デバイスが正しく接続されているかどうかを確認するには、Android SDKツールディレクトリから次のCMDを実行でき、リストにデバイスが表示されるはずです

c:\android sdk..\platform-tools\adb devices

その後、Android Debug Bridgeを使用してデバッグメッセージをフィルタリングして、次のCMDを実行してブラウザ関連のメッセージのみを表示することができます。

c:\android sdk..\platform-tools\adb logcat browser:V *:S

デフォルトでは、ログはstdoutに書き込まれるため、javaScriptエラーまたはConsole.logメッセージなどがCMDウィンドウに書き込まれます。

詳細: LogCat CLIツールドキュメント.

他のヒント

からエミュレータを開始した場合 Eclipse とともに ADT plugin, 、あなたはすべてを見るでしょう JavaScript ログキャットビューのすぐ下にログを直接コンソールします。

Window -> Show View -> Android -> LogCat

一時的にJavaScriptを追加することができます...

var console = {
    log: function(msg) { alert(msg); }
};

地獄のように醜いですが、それはうまくいきます。

このコードを使用してコンソールをハイジャックしました。

function logManager() {
    var self = this;

    self.init = function () {
        console.log('logmanager initialized');
        var old = console.log;
        self.logger = document.getElementById('log');
        console.log = function (message, options) {
            if (typeof message == 'object') {
                self.logger.innerHTML = (JSON && JSON.stringify ? JSON.stringify(message) : message) + '<br />' + self.logger.innerHTML;
            } else {
                self.logger.innerHTML = message + '<br />' + self.logger.innerHTML;
            }
        }
    }
    self.toggleLogVisibility = function () {
        return $(self.logger).toggle();
    };
}

そして、あなた自身のスタイリングであなたのHTMLでそれを消費するようにそれを消費します(絶対的な最上部は私が使用したものです)

<div id="log" class="log">
    Application loaded...
</div>

JScriptでは(ログ要素が存在する必要があるためロードされたページでこれを実行します)

document.lmgr = new logManager();
document.lmgr.init();

Android Studioを使用している場合。 logcat(alt+6)を開き、以下をフィルタリングできます。 :CONSOLE

フィルタリングのみ :CONSOLE (それよりも INFO:CONSOLE)すべてのタイプのコンソールメッセージ(エラー、ワーンなどを含む)を表示します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top