Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/CocoaDebug/CocoaDebug
iOS Debugging Tool π
https://github.com/CocoaDebug/CocoaDebug
cocoadebug cocoapods debug debugger debugging debugging-tool ios log logger logging logging-library network network-analysis network-monitoring networking nslog objective-c protocol-buffers sandbox swift
Last synced: 15 days ago
JSON representation
iOS Debugging Tool π
- Host: GitHub
- URL: https://github.com/CocoaDebug/CocoaDebug
- Owner: CocoaDebug
- Created: 2018-01-15T07:47:38.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-06-11T12:45:10.000Z (over 1 year ago)
- Last Synced: 2024-10-13T17:41:25.030Z (about 1 month ago)
- Topics: cocoadebug, cocoapods, debug, debugger, debugging, debugging-tool, ios, log, logger, logging, logging-library, network, network-analysis, network-monitoring, networking, nslog, objective-c, protocol-buffers, sandbox, swift
- Language: Swift
- Homepage:
- Size: 347 MB
- Stars: 4,072
- Watchers: 61
- Forks: 381
- Open Issues: 50
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-starts - CocoaDebug/CocoaDebug - iOS Debugging Tool π (Swift)
README
|| |
| -------------- | -------------- |
| Version | [![CocoaPods Compatible](https://img.shields.io/cocoapods/v/CocoaDebug.svg)](https://img.shields.io/cocoapods/v/CocoaDebug.svg) |
| Platform | ![Platform](https://img.shields.io/badge/platforms-iOS%2012.0+-blue.svg) |
| Languages | ![Languages](https://img.shields.io/badge/languages-Swift%20%7C%20ObjC-blue.svg) |
## Screenshot
## Introduction
- [x] As similar with [Charles](https://www.charlesproxy.com/) in your App.
- [x] Shake to hide or show the black bubble. (Support iPhone device and simulator)
- [x] Share network details via email or copy to clipboard when you are in the *Network Details* page.
- [x] Copy logs. (Long press the text, then select all or select copy)
- [x] Search logs by keyword.
- [x] Long press the black bubble to clean all network logs.
- [x] Detect *UI Blocking*.
- [x] List crash errors.
- [x] List application and device informations, including: *version*, *build*, *bundle name*, *bundle id*, *screen resolution*, *device*, *iOS version*
- [x] List all network requests sent by the application. (Support *JSON* and Google's *Protocol buffers*)
- [x] List all sandbox folders and files, supporting to preview and edit.
- [x] List all *WKWebView* consoles.
- [x] List all *React Native* JavaScript consoles and Native logs.
- [x] List all *print()* and *NSLog()* messages which have been written by developer in Xcode.
## Installation
### *CocoaPods* *(Preferred)*
```ruby
target 'YourTargetName' do
use_frameworks!
pod 'CocoaDebug', :configurations => ['Debug']
end
```
### *Carthage*
```ruby
github "CocoaDebug/CocoaDebug"
```
### *Framework*
*[CocoaDebug.framework](https://raw.githubusercontent.com/CocoaDebug/CocoaDebug/master/CocoaDebug.framework.zip) (Version 1.7.2)*
> WARNING: Never ship a product which has been linked with the CocoaDebug framework. The [Integration Guide](https://github.com/CocoaDebug/CocoaDebug/wiki/Integration-Guide) outline a way to use build configurations to isolate linking the framework to Debug builds.
## Usage
- Don't need to do anything. CocoaDebug will start automatically.
- To capture logs from Xcode with codes: (You can also set this in *CocoaDebug->App->Monitor->Applogs* without any codes.)
```swift
CocoaDebugSettings.shared.enableLogMonitoring = true //The default value is false
```
- Check [AppDelegate.m](https://github.com/CocoaDebug/CocoaDebug/blob/master/Example_Objc/Example_Objc/AppDelegate.m) OR [AppDelegate.swift](https://github.com/CocoaDebug/CocoaDebug/blob/master/Example_Swift/Example_Swift/AppDelegate.swift) for more advanced usage.
## Parameters
When you initialize CocoaDebug, you can customize the following parameter values before `CocoaDebug.enable()`.
- `serverURL` - If the captured URLs contain server URL, CocoaDebug set server URL bold font to be marked. Not mark when this value is nil. Default value is **nil**.
- `ignoredURLs` - Set the URLs which should not been captured, CocoaDebug capture all URLs when the value is nil. Default value is **nil**.
- `onlyURLs` - Set the URLs which are only been captured, CocoaDebug capture all URLs when the value is nil. Default value is **nil**.
- `ignoredPrefixLogs` - Set the prefix Logs which should not been captured, CocoaDebug capture all Logs when the value is nil. Default value is **nil**.
- `onlyPrefixLogs` - Set the prefix Logs which are only been captured, CocoaDebug capture all Logs when the value is nil. Default value is **nil**.
- `additionalViewController` - Add an additional UIViewController as child controller of CocoaDebug's main UITabBarController. Default value is **nil**.
- `emailToRecipients` - Set the initial recipients to include in the emailβs βToβ field when share via email. Default value is **nil**.
- `emailCcRecipients` - Set the initial recipients to include in the emailβs βCcβ field when share via email. Default value is **nil**.
- `mainColor` - Set CocoaDebug's main color with hexadecimal format. Default value is **#42d459**.
- `protobufTransferMap` - Protobuf data transfer to JSON map. Default value is **nil**.
## Reference
[https://developer.apple.com/library/archive/samplecode/CustomHTTPProtocol/Introduction/Intro.html](https://developer.apple.com/library/archive/samplecode/CustomHTTPProtocol/Introduction/Intro.html)