回答
Kevin Xi的方法沒問題。你也可以的NSLog輸出AppDelegate中的didFinishLaunchingWithOptions方法使用下面的代碼重定向到文件:
NSArray *allPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [allPaths objectAtIndex:0];
NSString *pathForLog = [documentsDirectory stringByAppendingPathComponent:@"log.txt"];
freopen([pathForLog cStringUsingEncoding:NSASCIIStringEncoding],"a+", stderr);
這真是太可惜了,蘋果不爲Xcode中提供無線網絡連接調試,但對於你的問題,答案是肯定的,你絕對可以重定向的NSLog到一個日誌文件,你可以試試這個方法:
// this will redirect all NSLog in your project, add it to PCH file.
#define NSLog(args...) writeLog(__PRETTY_FUNCTION__, __LINE__, args)
void writeLog(const char *function, int lineNumber, NSString *format, ...) {
// basic log content.
va_list ap;
va_start (ap, format);
NSString *msg = [[NSString alloc] initWithFormat:format arguments:ap];
va_end (ap);
// add function name, and line number.
NSString *log = [NSString stringWithFormat:@"%s line %d $ %@", function, lineNumber, msg];
// add your own code to write `log` into a text file.
....
}
注意:如果您使用的某些庫也將日誌寫入控制檯,則此宏不會將這些日誌重定向到日誌文件,它只會在您自己的源文件中使用NSLog
。
據我所知,這是不可能的。
您最終可以使用免費的優秀解決方案,如bugfender,這將允許您遠程獲取NSLog記錄的數據。這可以幫助你。
它不可能寫一些東西到文本文件?我非常肯定它是。 –
真的,我個人對這種情況的體驗是使用非常容易設置和使用的bugfender環境。它可以讓你在互聯網上獲得你所有的NSLog,並且當你不能使用調試器時監視/跟蹤你想要的任何東西。希望你成功。 –
您可以使用PonyDebugger。
我一直在使用它來調試網絡和CoreData資源,但它也允許用PDLog記錄到控制檯。
PonyDebugger是一個遠程調試工具集。它是一個客戶端庫和網關服務器組合,它使用瀏覽器上的Chrome開發人員工具調試應用程序的網絡流量和受管對象上下文。
一些建議:
- 它在Safari工作好於Chrome瀏覽器。
- 根據需要查看回購問題以使其在您的OSX版本中可用。我在El Capitan工作。
- 自動連接並沒有爲我工作,請嘗試使用,而不是本地IP網關地址:
- 例如
[debugger connectToURL:[NSURL URLWithString:@"ws://192.168.0.12:9000/device"]];
- 例如
- 1. 如何使用USB電纜在設備上測試iOS應用程序
- 2. 如何檢測iOS應用程序中的USB電纜連接?
- 3. 在拔下USB電纜後重新連接應用程序進行調試
- 4. 通過閃電電纜將C#應用程序連接到iOS設備
- 5. 遠程調試iOS應用程序
- 6. 調試應用程序與使用電線進行調試相比,無線調試需要更多時間
- 7. 使用GDB調試iOS應用程序
- 8. Iphone/IOS - 調試應用程序崩潰
- 9. 在iOS應用程序中調試MIDI
- 10. 應用程序崩潰了調試(iOS)
- 11. iOS應用程序通過USB電纜連接與在OSX中運行的應用程序通信
- 12. 無法調試iOS 8應用程序擴展
- 13. 無法安裝Codename one iOS調試應用程序
- 14. 當電纜與Mac斷開時,應用程序崩潰
- 15. 硬件和iOS應用開發與MFi認證連接Lightning串行電纜需要註冊到Apple MFi程序
- 16. 調試應用程序無需重新編譯
- 17. 無法調試android應用程序
- 18. 無法調試ASP.Net MVC應用程序
- 19. 無法調試VS.net 2003應用程序
- 20. 無法調試wince應用程序
- 21. iOS守護程序應用程序無法啓動(越獄) - 如何調試?
- 22. 此接口是否需要空調制解調器電纜?
- 23. 在電池節電模式下調試Windows Phone應用程序
- 24. 使用IOS編程連接並斷開USB電纜到iPhone
- 25. 無法調試qt應用程序 - 調試已完成
- 26. 調試時Delphi應用程序有「無調試信息」
- 27. 如何啓用遠程調試iOS Web應用程序?
- 28. IOS-9 - Wifi - 無線電通過應用程序啓用/禁用
- 29. iOS電話應用程序主要基於AJAX調用
- 30. iOS SDK:如何調用電子郵件應用程序?
考慮在文檔目錄中的文本文件中寫入日誌。稍後您可以隨時訪問它。 –
我發現這個,但我不知道它是否仍然有效http://iphonedevwiki.net/index.php/Debugserver#Alternative_Instructions_.2864-bit_compatible.29 – Paulw11