diff --git a/packages/core/android/src/main/java/com/segment/analytics/reactnative/core/RNAnalyticsModule.kt b/packages/core/android/src/main/java/com/segment/analytics/reactnative/core/RNAnalyticsModule.kt index df2a52c36..c0004aedf 100644 --- a/packages/core/android/src/main/java/com/segment/analytics/reactnative/core/RNAnalyticsModule.kt +++ b/packages/core/android/src/main/java/com/segment/analytics/reactnative/core/RNAnalyticsModule.kt @@ -112,7 +112,13 @@ class RNAnalyticsModule(context: ReactApplicationContext): ReactContextBaseJavaM return promise.resolve(null) } else { - return promise.reject("E_SEGMENT_RECONFIGURED", "Duplicate Analytics client") + if (BuildConfig.DEBUG) { + return pomise.resolve(this) + } + else { + return promise.reject("E_SEGMENT_RECONFIGURED", "Segment Analytics Client was allocated multiple times, please check your environment.") + } + } } diff --git a/packages/core/ios/RNAnalytics/RNAnalytics.m b/packages/core/ios/RNAnalytics/RNAnalytics.m index 15e60fc4a..999369e49 100644 --- a/packages/core/ios/RNAnalytics/RNAnalytics.m +++ b/packages/core/ios/RNAnalytics/RNAnalytics.m @@ -46,7 +46,11 @@ +(void)initialize { return resolver(nil); } else { - return rejecter(@"E_SEGMENT_RECONFIGURED", @"Duplicate Analytics client", nil); + #if DEBUG + return resolver(self); + #else + return rejecter(@"E_SEGMENT_RECONFIGURED", @"Segment Analytics Client was allocated multiple times, please check your environment.", nil); + #endif } } @@ -67,7 +71,7 @@ +(void)initialize { @try { [SEGAnalytics setupWithConfiguration:config]; } - @catch(NSException* error) { + @catch(NSError* error) { return rejecter(@"E_SEGMENT_ERROR", @"Unexpected native Analtyics error", error); } @@ -85,7 +89,7 @@ +(void)initialize { } singletonJsonConfig = json; - resolver(nil); + return resolver(nil); } - (NSDictionary*)withContextAndIntegrations :(NSDictionary*)context :(NSDictionary*)integrations {