Troubleshooting on iOS
This page presents a few tips to debug and test your ads.
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];
// ...
}
Don't forget to turn off the Debug Mode by setting loggingEnabled
to false before submitting your app!
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];
Don't forget to remove all test placements before releasing your app!
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:
- SASDisplayKit-7.24.2.dSYM.zip
- SASDisplayKit-7.24.1.dSYM.zip
- SASDisplayKit-7.24.0.dSYM.zip
- SASDisplayKit-7.23.4.dSYM.zip
- SASDisplayKit-7.23.3.dSYM.zip
- SASDisplayKit-7.23.2.dSYM.zip
- SASDisplayKit-7.23.1.dSYM.zip
- SASDisplayKit-7.23.0.dSYM.zip
- SASDisplayKit-7.22.0.dSYM.zip
- SASDisplayKit-7.21.0.dSYM.zip
- SASDisplayKit-7.20.1.dSYM.zip
- SASDisplayKit-7.20.0.dSYM.zip
- SASDisplayKit-7.19.2.dSYM.zip
- SASDisplayKit-7.19.1.dSYM.zip
- SASDisplayKit-7.19.0.dSYM.zip
- SASDisplayKit-7.18.0.dSYM.zip
- SASDisplayKit-7.17.1.dSYM.zip
- SASDisplayKit-7.17.0.dSYM.zip
- SASDisplayKit-7.15.0.dSYM.zip
- SASDisplayKit-7.14.0.dSYM.zip
- SASDisplayKit-7.12.0.dSYM.zip
- SASDisplayKit-7.10.1.dSYM.zip
- SASDisplayKit-7.10.0.dSYM.zip
- SASDisplayKit-7.8.0.dSYM.zip
- SASDisplayKit-7.6.2.dSYM.zip
- SASDisplayKit-7.6.1.dSYM.zip
- SASDisplayKit-7.6.0.dSYM.zip
- SASDisplayKit-7.4.2.dSYM.zip
- SASDisplayKit-7.4.1.dSYM.zip
- SASDisplayKit-7.4.0.dSYM.zip
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:
- SCSCoreKit-7.22.0.dSYM.zip
- SCSCoreKit-7.21.0.dSYM.zip
- SCSCoreKit-7.20.0.dSYM.zip
- SCSCoreKit-7.19.1.dSYM.zip
- SCSCoreKit-7.19.0.dSYM.zip
- SCSCoreKit-7.18.1.dSYM.zip
- SCSCoreKit-7.18.0.dSYM.zip
- SCSCoreKit-7.17.1.dSYM.zip
- SCSCoreKit-7.17.0.dSYM.zip
- SCSCoreKit-7.16.0.dSYM.zip
- SCSCoreKit-7.15.0.dSYM.zip
- SCSCoreKit-7.14.0.dSYM.zip
- SCSCoreKit-7.13.0.dSYM.zip
- SCSCoreKit-7.12.0.dSYM.zip
- SCSCoreKit-7.11.0.dSYM.zip
- SCSCoreKit-7.10.1.dSYM.zip
- SCSCoreKit-7.10.0.dSYM.zip
- SCSCoreKit-7.9.0.dSYM.zip
- SCSCoreKit-7.8.0.dSYM.zip
- SCSCoreKit-7.7.0.dSYM.zip
- SCSCoreKit-7.6.0.dSYM.zip
- SCSCoreKit-7.5.2.dSYM.zip
Please look in your Podfile.lock to check what versions you are actually using.
For more information, please read the official Firebase Crashlytics SDK documentation.