Home

Awesome

<div align="center"> <a href="https://sentry.io/?utm_source=github&utm_medium=logo" target="_blank"> <img src="https://sentry-brand.storage.googleapis.com/github-banners/github-sdk-cocoa.jpg" alt="Sentry for Apple"> </a> </div>

Bad software is everywhere, and we're tired of it. Sentry is on a mission to help developers write better software faster, so we can get back to enjoying technology. If you want to join us <kbd>Check out our open positions</kbd>

Official Sentry SDK for iOS / tvOS / macOS / watchOS <sup>(1)</sup>

Build codebeat badge codecov.io CocoaPods compadible Carthage compatible SwiftPM compatible platforms Swift Package Index Discord Chat

This SDK is written in Objective-C but also provides a nice Swift interface.

Where is the master branch?

We renamed the default branch from master to main.

Initialization

Remember to call this as early in your application life cycle as possible Ideally in applicationDidFinishLaunching in AppDelegate

import Sentry

// ....

SentrySDK.start { options in
    options.dsn = "___PUBLIC_DSN___"
    options.debug = true // Helpful to see what's going on
}    
@import Sentry;

// ....

[SentrySDK startWithConfigureOptions:^(SentryOptions *options) {
    options.dsn = @"___PUBLIC_DSN___";
    options.debug = @YES; // Helpful to see what's going on
}];

For more information checkout the docs.

<sup>(1)</sup>limited symbolication support and no crash handling.

Blog posts

Mobile Vitals - Four Metrics Every Mobile Developer Should Care About.

How to use Sentry Attachments with Mobile Applications.

Close the Loop with User Feedback.

A Sanity Listicle for Mobile Developers.

Resources