Initialize the SDK
After you add the AwesomeAds SDK to your project, you need to initialize it.
Initialize the SDK in the AppDelegate class of your iOS app, as shown here:
import UIKit
import SuperAwesome
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func applicationDidFinishLaunching(_ application: UIApplication) {
AwesomeAds.initSDK(false)
}
}
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[AwesomeAds initSDK:false];
return YES;
}
@end
where the initSDK method takes a Boolean parameter indicating whether logging is enabled or not. For production environments, logging should be off.
Alternatively, you can call initSDK with a Configuration object and an optional callback that notifies you when the initialization is complete, as shown here:
import UIKit
import SuperAwesome
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func applicationDidFinishLaunching(_ application: UIApplication) {
AwesomeAds.initSDK(
configuration: Configuration(
environment: .production,
logging: true,
options:["queryParam": "value"]
)
) {
// Run code after AwesomeAds is initialised
print("AwesomeAds SDK init complete")
}
}
}
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
Configuration *config = [[Configuration alloc] initWithEnvironment:SAEnvironmentProduction logging:true options:@{@"queryParam": @"value"}];
[AwesomeAds initSDKWithConfiguration:config completion:^{
// Run code after AwesomeAds is initialised
}];
return YES;
}
@end
The Configuration object has 3 properties:
-
environment: Environmentenvironmentcan be set to production or staging. -
logging: Boolloggingcan be enabled or disabled. It should be disabled in production environments. -
options: [String: String]?optionsis an optional dictionary that you can use to set additional tracking information in the form of key-value pairs. This information is sent when events are fired from the SDK.