initialize method

  1. @override
Future<String?> initialize({
  1. required String pixelId,
  2. required String storeUrl,
})
override

Initializes the SDK

Implementation

@override
Future<String?> initialize(
    {required String pixelId, required String storeUrl}) async {
  if (_isInitialized) {
    log("SDK already initialized. Skipping reinitialization.");
    return "SDK already initialized";
  }
  try {
    final String? result = await methodChannel.invokeMethod('initialize', {
      'pixelId': pixelId,
      'storeUrl': storeUrl,
    });
    if (result != null && result.toLowerCase().contains('success')) {
      _isInitialized = true;
      log("SDK initialization result: $result");
      return result;
    } else {
      log("Failed to initialize SDK");
      return null;
    }
  } on PlatformException catch (e) {
    log("Failed to initialize SDK: ${e.message}");
    return 'Failed to initialize SDK: ${e.message}';
  }
}