From 00a9fe456d0aa9cf01125067ba18475e5fab65ae Mon Sep 17 00:00:00 2001 From: alvaromb Date: Tue, 11 Jun 2019 11:31:57 +0200 Subject: [PATCH 1/2] Added forceSurvey method --- .../com/reactlibrary/RNWootricModule.java | 29 +++++++++++-------- ios/RNWootric.m | 9 ++++-- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/android/src/main/java/com/reactlibrary/RNWootricModule.java b/android/src/main/java/com/reactlibrary/RNWootricModule.java index 2d0bee4..5c34ade 100644 --- a/android/src/main/java/com/reactlibrary/RNWootricModule.java +++ b/android/src/main/java/com/reactlibrary/RNWootricModule.java @@ -29,18 +29,18 @@ private static HashMap toHashMap(ReadableMap readableMap) { ReadableType type = readableMap.getType(key); switch (type) { - case Null: - map.put(key, null); - break; - case Boolean: - map.put(key, Boolean.toString(readableMap.getBoolean(key))); - break; - case Number: - map.put(key, Double.toString(readableMap.getDouble(key))); - break; - case String: - map.put(key, readableMap.getString(key)); - break; + case Null: + map.put(key, null); + break; + case Boolean: + map.put(key, Boolean.toString(readableMap.getBoolean(key))); + break; + case Number: + map.put(key, Double.toString(readableMap.getDouble(key))); + break; + case String: + map.put(key, readableMap.getString(key)); + break; } } @@ -112,6 +112,11 @@ public void setCustomAudience(String audience) { wootric.setRecommendTarget(audience); } + @ReactMethod + public void forceSurvey(boolean force) { + wootric.forceSurvey(force); + } + @ReactMethod public void showSurvey() { wootric.survey(); diff --git a/ios/RNWootric.m b/ios/RNWootric.m index b870b33..97062fb 100644 --- a/ios/RNWootric.m +++ b/ios/RNWootric.m @@ -5,7 +5,7 @@ @implementation RNWootric - (dispatch_queue_t)methodQueue { - return dispatch_get_main_queue(); + return dispatch_get_main_queue(); } RCT_EXPORT_MODULE(); @@ -58,8 +58,13 @@ - (dispatch_queue_t)methodQueue [Wootric setCustomAudience:audience]; } +RCT_EXPORT_METHOD(forceSurvey:(BOOL)force) { + [Wootric forceSurvey:force]; +} + RCT_EXPORT_METHOD(showSurvey) { [Wootric showSurveyInViewController:[UIApplication sharedApplication].delegate.window.rootViewController]; } + @end - + From 3143e6ec2db092c8706472e399c187491a3e7a44 Mon Sep 17 00:00:00 2001 From: alvaromb Date: Tue, 11 Jun 2019 12:50:35 +0200 Subject: [PATCH 2/2] Added Android fallback --- android/src/main/java/com/reactlibrary/RNWootricModule.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/com/reactlibrary/RNWootricModule.java b/android/src/main/java/com/reactlibrary/RNWootricModule.java index 5c34ade..0332edf 100644 --- a/android/src/main/java/com/reactlibrary/RNWootricModule.java +++ b/android/src/main/java/com/reactlibrary/RNWootricModule.java @@ -114,7 +114,8 @@ public void setCustomAudience(String audience) { @ReactMethod public void forceSurvey(boolean force) { - wootric.forceSurvey(force); + // Workaround for Android + this.setSurveyImmediately(force); } @ReactMethod