リアルタイムコンソールログを表示して、NSLogや他のデバッグメッセージをadb logcatなどのリアルタイムで表示する方法はありますか?
リアルタイムコンソールログを表示して、NSLogや他のデバッグメッセージをadb logcatなどのリアルタイムで表示する方法はありますか?
回答:
Xcode 6 用の技術Q&A QA1747 デバッグデプロイ済みiOSアプリで文書化されているソリューションは次のとおりです。
printステートメントはログに記録されず、にのみ記録されますstdout。NSLog代わりに使用してください。または、stdoutコードを追加したファイルにリダイレクトできる場合があります。クラッシュはログに記録され、「デバイスログの表示」ボタンを使用してアクセスできます。
編集:@cbownsソリューションを使用してください-deviceconsoleはiOS9と互換性があり、はるかに使いやすくなっています。
これはターミナルでiDeviceのシステムログを表示するオープンソースプログラムです(tail -Fと同様の方法で)。脱獄は必要ありません。出力は完全にgrep可能であるため、フィルター処理してプログラムからの出力のみを表示できます。このソリューションの特に優れている点は、アプリがXCodeからデバッグモードで起動されたかどうかにかかわらず、ログを表示できることです。
方法は次のとおりです。
https://github.com/benvium/libimobiledevice-macosx/zipball/masterの私のgithubアカウントからMac OS Xのlibimobiledeviceバイナリを取得し ます。
こちらのインストール手順に従ってください:https : //github.com/benvium/libimobiledevice-macosx/blob/master/README.md
デバイスを接続し、Terminal.appを開いて次のように入力します。
idevicesyslog
Upは、デバイスのシステムログのリアルタイム表示をポップアップします。
コンソールアプリであるため、grepなどのUNIXコマンドを使用してログをフィルタリングできます。
たとえば、特定のアプリからのすべてのログメッセージを表示します。
idevicesyslog | grep myappname
http://pervasivecode.blogspot.co.uk/2012/06/view-log-output-of-any-app-on-iphone-or.htmlにある私のブログから引用
No device found, is it plugged in?
brew uninstall libimobiledevice ideviceinstaller && brew install --HEAD libimobiledevice ideviceinstaller
2つのオプション:
libimobiledeviceはhomebrewを介してインストールでき、優れた動作をします。そのidevicesyslogツールはdeviceconsole(下記)と同様に機能し、デバイスのsyslogをワイヤレスで表示することをサポートします(!)
brew install libimobiledevice
idevice_id --list // list available device UDIDs
idevicesyslog -u <device udid>
デバイスがUSB経由で接続されているか、ローカルワイヤレスネットワークで利用できる。
2013年から:deviceconsole rpetrichからは、上記ideviceconsoleよりもはるかに少ないwackedアウトソリューションです。私のフォークは Xcode 5ですぐにビルドおよび実行され、ビルドアクションはバイナリをインストールし/usr/local/binて使いやすくします。
追加の役立つ情報として、次のスタイルで使用します。これにより、シェルの履歴で目的のデバイスを簡単に見つけることができ、印刷される不要な>行が削除deviceconsoleされます。
deviceconsole -d -u <device UDID> | uniq -u && echo "<device name>"
libimobiledevice。(有線および無線のログ表示は10.11のMacとiOS 10.2のiPhoneで動作します)
brew install --HEAD libimobiledevice。私のために働いた。
フリーウェアのiOSコンソールをお試しください。デバイスをダウンロードして起動し、接続するだけです-et voila!
Console.app[macOSでネイティブに出荷される]のですか?
これはあなたが探しているものかもしれません: Xcode Organizer
デバイス>端末出力はiPhone設定アプリにあります
次の3つのオプションがあります。
したがって、CydiaからsyslogdとOpenSSHをインストールするだけで2º1を取得するには、syslogdを実行するために再起動が必要です。(Windowsのターミナルまたはパテ経由で)デバイスにsshセッションを開き、「tail -f / var / log / syslog」と入力します。ワイヤレスリアルタイムシステムログです。
3ºを試してみたい場合は、オンラインで「dup2」を検索してください。これはシステムコールです。
MacのSafariでiOSデバイスのコンソールを表示するには(Macのみのようです):
Safariのインスペクタが表示され、iOSデバイスのコンソールが表示されます。
Utilities/Console.appか?