Skip to main content

Overview

The Bugsee iOS SDK captures what happened before a bug: a video of the screen, network traffic, console logs and the user's steps. It attaches them to crash, error and manual reports that you replay in the Bugsee dashboard. It runs in the background of your app, needs one line of code to start, and uploads reports on its own.

This section documents 7.x, the current release line. Upgrading from 6.x? See Migrating from 6.x to 7.x. The 6.x documentation is under Previous versions.

What Bugsee records​

Every report carries a synchronized timeline of the session that led up to it:

What Bugsee detects​

The SDK turns problems into reports automatically:

  • Crashes — signals and uncaught exceptions; see Crashes. On iOS 27 and later, the optional Crash Report Extension adds the stacks of terminations no in-process handler can see, such as the launch watchdog and memory-limit kills.
  • App exits, and opt-in hangs, HTTP errors and more — see Issue detection.
  • Manual reports — let users shake the device or take a screenshot to report, or open the report dialog from code; see Bug reporting.

Requirements​

PlatformMinimum version
iOS15.0
tvOS15.0
visionOS1.0

Simulator builds of the SDK have no crash reporter, so crashes are not captured there. Run on a real device to test crash and error reporting.

How it ships​

7.x is distributed through Swift Package Manager. CocoaPods and Carthage are no longer supported.

ProductPackageWhat it is
Bugseehttps://github.com/bugsee/spmThe core SDK. Every app needs it.
BugseeSwiftUIhttps://github.com/bugsee/spmSwiftUI modifiers that hide views from the video. Links Bugsee too. See SwiftUI.
BugseeCrashExtensionhttps://github.com/bugsee/spmFor the app's Crash Reporter Extension target only (iOS 27 and later). See Crash Report Extension.
BugseeFeedbackhttps://github.com/bugsee/feedback-spmOptional in-app feedback chat. Add it at the same exact version as Bugsee. See Feedback.

For builds that cannot resolve a Swift package, such as Unity projects or frameworks embedded by hand, the same Bugsee.xcframework is available as a direct download. See Installation.

How it works​

  • One call to start. Call Bugsee.launch(token:) from your app delegate or SwiftUI App initializer. Capture starts off the main thread; see Lifecycle & status.
  • Options at launch. Every behavior is a launch option, passed as a BugseeOptions object or as a dictionary of BugseeOption* keys; see Configuration.
  • Privacy on the device. Hide views and screen areas from the video, and filter or redact network, log and breadcrumb data before it is recorded; see Privacy.
  • Automatic upload. Reports are stored on the device and uploaded in the background. A crash is reported on the app's next launch.

Where to go next​

Found an issue, typo, or wrong statement on this page? Report it now →