私はモバイル用のウェブサイトを開発しています。Firefoxデスクトップで動作します。iPhoneでも動作しますが、Android 2.x(およびそれ以下)でボタンを押すと。JavaScriptコードがクラッシュするなど...
これらのデバイスのロガーまたはJavaScriptコンソールにアクセスできますか?
一種のFirebugアプリケーションが優れているはずです。
私はモバイル用のウェブサイトを開発しています。Firefoxデスクトップで動作します。iPhoneでも動作しますが、Android 2.x(およびそれ以下)でボタンを押すと。JavaScriptコードがクラッシュするなど...
これらのデバイスのロガーまたはJavaScriptコンソールにアクセスできますか?
一種のFirebugアプリケーションが優れているはずです。
1 つのオプションはweinreです。コンソールと一緒に DOM とスタイルの編集を提供します。自分で設定したくない場合は、http://debug.phonegap.comでホストされているインスタンスがあります。
もう 1 つのオプションはJSHybuggerです。これは、Android ブラウザーで利用できる最も完全なデバッグ環境であることは間違いありません。有料の製品ですが、おそらくそれだけの価値があります。
Chrome には「USB Web デバッグ」と呼ばれる非常に優れた機能があり、USB 経由で接続したときに PC でモバイル デバイスのデバッグ コンソールを表示できます。
編集: ADB は Windows 8 ではサポートされていないようですが、このリンクは解決策を提供しているようです:
http://mikemurko.com/general/chrome-remote-debugging-nexus-7-on-windows-8/
一部のモバイル ブラウザで入力about:debug
すると、JavaScript コンソールが表示されます。
デバッグ出力をブラウザー ウィンドウに出力することがあります。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>");
}
私は同じ問題を抱えていました。(firebug のように)使用console.log(...)
し、ログ ビューアー アプリケーションをインストールするだけで、ブラウザーのすべてのログを表示できます。
モバイルで Web サイトをデバッグするためのプロジェクトでは、以下の手順に従います。
js 組み込みコンソールであるYConsoleを試すことができます。軽量で使いやすいです。
使い方 :
<script type="text/javascript" src="js/YConsole-compiled.js"></script>
<script type="text/javascript" >YConsole.show();</script>
Cordova 3.3 以降を使用していて、デバイスがAndroid 4.4 以降を実行している場合は、「Chrome を使用した Android でのリモート デバッグ」を使用できます。完全な手順は次のとおりです。
https://developer.chrome.com/devtools/docs/remote-debugging
要約すれば:
または、Cordova 3.3+ を使用していて、4.4 の物理デバイスを持っていない場合は、Android 4.4+ を使用するエミュレーターを使用して、デスクトップ コンピューターでエミュレーターを介してアプリケーションを実行できます。
「USB Webデバッグ」は1つのオプションです
「画面に印刷する」別。
しかし、私は、正式にはadobe shadowとして知られる「 adobe edge inspect 」によるリモート デバッグを好みます。内部でweinreを使用(=WEB INspect REmote)
それをインストールするだけで、ブラウザ (Chrome) に小さなプラグインと、play ストアでダウンロードできる無料のアプリをインストールできます。次に、Chrome 開発ツールなどのすべてのツールを用意します。
iOSとKindle Fireもサポートしています
アップデート
Chris が気づいたように、edge inspect を使用するにはサブスクリプションを支払う必要があります。安価な代替手段は weinre を直接使用することです。これはエッジ検査のベースです。設定方法の記事はこちら。
AndroidのFirefoxブラウザーにFirefoxのコンソールアドオン(https://addons.mozilla.org/en-US/android/addon/console/)をインストールしましたが、非常にうまく機能しました。angular2 アプリのデバッグに役立ちました。
MobileConsole は、デバッグ用に任意のページに埋め込むことができます。エラーをキャッチし、ブラウザーのネイティブ JavaScript コンソールとまったく同じように動作します。また、window.console の API を介して、書き込んだすべてのログを出力します。
サード パーティのサーバーを介して転送することを気にしない場合、JSConsoleは JavaScript のかなり便利なリモート デバッガーです。
テキストをダンプするためだけに、単純なコンソールの代替品も探しました。だから私がしたことはこの機能でした:
function remoteLog (arg) {
var file = '/files/remoteLog.php';
$.post(file, {text: arg});
}
リモート PHP ファイルは、すべての出力を のデータベースに記録しましたarg
。5分かかりました(サーバー側では、テキストメッセージを記録して表示する単純なログライブラリを使用しましたが、それでも...)。