Troubleshooting on iOS

This page presents a few tips to debug and test your ads.

  1. Debug Mode
  2. Test Placement
  3. Obfuscated crash reports and Firebase Crashlytics SDK

Debug mode

You can activate the Debug Mode of the SDK through SASConfiguration, using the loggingEnabled property.

When the Debug Mode is activated, the SDK will send logs to Xcode console.


func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
  // ...

  // Enable debug mode of the SDK - This will send logs to the Xcode console
  SASConfiguration.shared.loggingEnabled = true

  // ...
}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  // ...

  // Enable debug mode of the SDK - This will send logs to the Xcode console
  [[SASConfiguration sharedInstance] setLoggingEnabled:YES];

  // ...
}

Test placements

For testing purposes, it is possible to instantiate generic ad placements that will always deliver an ad of a particular format. This is done by using the SASAdPlacement(testAd:) initializer (check the SASAdPlacementTest enum for an exhaustive list of the formats you can get using test placements).


// This placement will always deliver a MRAID banner ad
let testPlacement = SASAdPlacement(testAd: .bannerMRAID)

// This placement will always deliver a MRAID banner ad
SASAdPlacement *testPlacement = [SASAdPlacement adPlacementWithTestAd:SASAdPlacementTestBannerMRAID];

Obfuscated crash reports and Firebase Crashlytics SDK

If your app experiences crashes because of our SDK, you might end up with obfuscated method names for all our classes in your stacktraces (especially if your app has been built as a bitcode app).

To get deobfuscated crash reports with the Firebase Crashlytics SDK you will need to upload Smart Display SDK debug symbol (dSYM) files.

According to the version of the Smart Display SDK your app is using, you will need to retrieve on of the following dSYM file:

The Smart Display SDK relies on a Smart Core SDK that has been installed automatically using Cocoapods. According to the version of the Smart Core SDK your app is using, you will also need to use on of the following dSYM file:

For more information, please read the official Firebase Crashlytics SDK documentation.