70

私はモバイル用のウェブサイトを開発しています。Firefoxデスクトップで動作します。iPhoneでも動作しますが、Android 2.x(およびそれ以下)でボタンを押すと。JavaScriptコードがクラッシュするなど...

これらのデバイスのロガーまたはJavaScriptコンソールにアクセスできますか?

一種のFirebugアプリケーションが優れているはずです。

4

15 に答える 15

45

1 つのオプションはweinreです。コンソールと一緒に DOM とスタイルの編集を提供します。自分で設定したくない場合は、http://debug.phonegap.comでホストされているインスタンスがあります。

もう 1 つのオプションはJSHybuggerです。これは、Android ブラウザーで利用できる最も完全なデバッグ環境であることは間違いありません。有料の製品ですが、おそらくそれだけの価値があります。

于 2011-05-13T00:53:30.043 に答える
34

Chrome には「USB Web デバッグ」と呼ばれる非常に優れた機能があり、USB 経由で接続したときに PC でモバイル デバイスのデバッグ コンソールを表示できます。

詳しくはこちらをご覧ください。

編集: ADB は Windows 8 ではサポートされていないようですが、このリンクは解決策を提供しているようです:

http://mikemurko.com/general/chrome-remote-debugging-nexus-7-on-windows-8/

于 2012-05-30T12:48:32.153 に答える
12

一部のモバイル ブラウザで入力about:debugすると、JavaScript コンソールが表示されます。

于 2012-04-23T21:12:53.457 に答える
7

デバッグ出力をブラウザー ウィンドウに出力することがあります。jQueryを使用すると、出力メッセージをページの表示領域に送信できます。

<div id='display'></div>

$('#display').text('array length: ' + myArray.length);

または、ページに表示領域を追加せずに JavaScript 変数を監視したい場合:

function debug(txt) {
    $('body').append("<div style='width:300px;background:orange;padding:3px;font-size:13px'>" + txt + "</div>");
}
于 2012-10-29T08:24:01.700 に答える
3

私は同じ問題を抱えていました。(firebug のように)使用console.log(...)し、ログ ビューアー アプリケーションをインストールするだけで、ブラウザーのすべてのログを表示できます。

于 2011-05-30T15:34:05.557 に答える
2

モバイルで Web サイトをデバッグするためのプロジェクトでは、以下の手順に従います。

  1. モバイルとデスクトップに mobogenie ソフトウェアをインストールします (どちらも同じバージョンです)。
  2. モバイル Google Chrome ブラウザーでサイトを開きます。
  3. デスクトップで Google Chrome を開きます。[オプション] --> [その他のオプション] --> [デバイスの検査]に移動します。
  4. ここで、モバイルで開いているサイトのリストを見つけて検査をクリックすると、必要な JavaScript コンソールが表示されます。
于 2015-02-05T06:55:08.063 に答える
1

js 組み込みコンソールであるYConsoleを試すことができます。軽量で使いやすいです。

  • ログとエラーをキャッチします。
  • オブジェクトエディタ。

使い方 :

<script type="text/javascript" src="js/YConsole-compiled.js"></script>
<script type="text/javascript" >YConsole.show();</script>
于 2015-10-04T08:28:03.310 に答える
1

Cordova 3.3 以降を使用していて、デバイスがAndroid 4.4 以降を実行している場合は、「Chrome を使用した Android でのリモート デバッグ」を使用できます。完全な手順は次のとおりです。

https://developer.chrome.com/devtools/docs/remote-debugging

要約すれば:

  • USB ケーブルを使用してデバイスをデスクトップ コンピューターに接続します。
  • デバイスで USB デバッグを有効にします (私のデバイスでは、[設定] > [その他] > [開発者向けオプション] > [USB デバッグ] にあります)

または、Cordova 3.3+ を使用していて、4.4 の物理デバイスを持っていない場合は、Android 4.4+ を使用するエミュレーターを使用して、デスクトップ コンピューターでエミュレーターを介してアプリケーションを実行できます。

  • デバイスまたはエミュレーターで Cordova アプリケーションを実行する
  • デスクトップ コンピューターの Chrome で、アドレス バーに「chrome://inspect/#devices」と入力します。
  • デバイス/エミュレーターは、コンピューターに接続されている他の認識済みデバイスと共に表示され、デバイスの下には、デバイス/エミュレーターで実行されている Cordova 'WebView' (基本的には Cordova アプリ) の詳細が表示されます ( Cordova が機能する方法は、基本的にデバイス/エミュレーターに「ブラウザー」ウィンドウを作成することです。その中に、実行中の HTML/JavaScript アプリである「WebView」があります)。
  • デバイス/エミュレータがリストされている「WebView」セクションの下にある「inspect」リンクをクリックします。これにより、アプリケーションをデバッグできる Chrome 開発者ツールが表示されます。
  • Chrome 開発者ツールの「ソース」タブを選択して、デバイス/エミュレーターで Cordova アプリが現在実行している JavaScript を表示します。コードのデバッグを可能にするブレークポイントを JavaScript に追加できます。
  • また、「コンソール」タブを使用してエラー (赤で表示されます) を表示するか、コンソールの下部に「>」プロンプトが表示されます。ここで、現在の値を調べたい任意の変数またはオブジェクト (DOM オブジェクトなど) を入力すると、値が表示されます。
于 2015-09-23T07:24:18.053 に答える
1

「USB Webデバッグ」は1つのオプションです

「画面に印刷する」別。

しかし、私は、正式にはadobe shadowとして知られる「 adobe edge inspect 」によるリモート デバッグを好みます。内部でweinreを使用(=WEB INspect REmote)

それをインストールするだけで、ブラウザ (Chrome) に小さなプラグインと、play ストアでダウンロードできる無料のアプリをインストールできます。次に、Chrome 開発ツールなどのすべてのツールを用意します。

iOSとKindle Fireもサポートしています

アップデート

Chris が気づいたように、edge inspect を使用するにはサブスクリプションを支払う必要があります。安価な代替手段は weinre を直接使用することです。これはエッジ検査のベースです。設定方法の記事はこちら。

于 2012-10-29T08:53:55.840 に答える
1

AndroidのFirefoxブラウザーにFirefoxのコンソールアドオン(https://addons.mozilla.org/en-US/android/addon/console/)をインストールしましたが、非常にうまく機能しました。angular2 アプリのデバッグに役立ちました。

于 2016-08-02T02:41:56.650 に答える
0

js-mobile-console を試す

MobileConsole は、デバッグ用に任意のページに埋め込むことができます。エラーをキャッチし、ブラウザーのネイティブ JavaScript コンソールとまったく同じように動作します。また、window.console の API を介して、書き込んだすべてのログを出力します。

于 2014-11-07T00:35:18.850 に答える
0

サード パーティのサーバーを介して転送することを気にしない場合、JSConsoleは JavaScript のかなり便利なリモート デバッガーです。

于 2012-11-20T19:52:52.863 に答える
0

テキストをダンプするためだけに、単純なコンソールの代替品も探しました。だから私がしたことはこの機能でした:

function remoteLog (arg) {
    var file = '/files/remoteLog.php';
    $.post(file, {text: arg});
}

リモート PHP ファイルは、すべての出力を のデータベースに記録しましたarg。5分かかりました(サーバー側では、テキストメッセージを記録して表示する単純なログライブラリを使用しましたが、それでも...)。

于 2012-08-07T08:18:01.207 に答える