Initialization
To initialize the iOS Application with the MoEngage Workspace ID from Settings in the dashboard. In your project, go to the AppDelegate file and call either of the initialize() of MoEngageInitializer instance in applicationdidFinishLaunchingWithOptions() as shown below:
info |
Note Make sure to set the correct Data Center while initializing the SDK. For more information, refer to the following link. |
/// Method to initialize MoEngage SDK
/// - Parameters:
/// - config: MoEngageSDKConfig instance for SDK configuration
/// - launchOptions: Launch Options dictionary
func initializeDefaultInstance(_ config: MoEngageSDKConfig, launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil)
/// Method to initialize MoEngage SDK with SDK state
/// - Parameters:
/// - config: MoEngageSDKConfig instance for SDK configuration
/// - sdkState: Bool indicating if SDK is Enabled/Disabled
/// - launchOptions: Launch Options dictionary
func initializeDefaultInstance(_ config: MoEngageSDKConfig, sdkState: Bool = true, launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil)
Sample code to initialize in applicationdidFinishLaunchingWithOptions()
// Import SDK frameworks
import moengage_flutter_ios
import MoEngageSDK
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
let sdkConfig = MoEngageSDKConfig(withAppID: yourWorkspaceID)) //Workspace ID: You can be obtain it from App Settings in MoEngage Dashboard.
sdkConfig.enableLogs = true
MoEngageInitializer.sharedInstance.initializeDefaultInstance(sdkConfig, launchOptions: launchOptions)
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}
// Import SDK frameworks
#import <MoEngageSDK/MoEngageSDK.h>
#import <moengage_flutter_ios/moengage_flutter_ios-Swift.h>
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
MoEngageSDKConfig* sdkConfig = [[MoEngageSDKConfig alloc] initWithAppID:@"Workspace ID"];
sdkConfig.enableLogs = true;
[[MoEngageInitializer sharedInstance] initializeDefaultInstance:sdkConfig launchOptions:launchOptions];
[GeneratedPluginRegistrant registerWithRegistry:self];
// Override point for customization after application launch.
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
@end
Data Center
In case your app wants to redirect data to a specific zone due to any data regulation policy please configure the zone in the MOSDKConfig object.
Refer to the Data Center documentation for more information.