From bb6d1ac3185cd05bd00beb20d7e761b7cdcd6442 Mon Sep 17 00:00:00 2001 From: DevHossamHassan Date: Thu, 22 Jun 2017 06:18:06 +0200 Subject: [PATCH] Enable `setPreSendingHandler` API for android --- .../RNInstabugReactnativeModule.java | 24 +++++++++++++++++++ index.js | 4 +++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java b/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java index 75661fb..6e5fc5f 100644 --- a/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java +++ b/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java @@ -901,6 +901,30 @@ public class RNInstabugReactnativeModule extends ReactContextBaseJavaModule { } } + /** + * Sets a block of code to be executed before sending each report. + * This block is executed in the background before sending each report. Could + * be used for attaching logs and extra data to reports. + * + * @param {preSendingHandler} preSendingHandler - A callback that gets executed before + * sending each bug + * report. + */ + @ReactMethod + public void setPreSendingHandler(final Callback preSendingHandler) { + try { + Runnable preSendingRunnable = new Runnable() { + @Override + public void run() { + preSendingHandler.invoke(); + } + }; + mInstabug.setPreSendingRunnable(preSendingRunnable); + } catch (java.lang.Exception exception) { + exception.printStackTrace(); + } + } + private InstabugCustomTextPlaceHolder.Key getStringToKeyConstant(String key) { String keyInLowerCase = key.toLowerCase(); switch (keyInLowerCase) { diff --git a/index.js b/index.js index 0b25927..a4abcec 100644 --- a/index.js +++ b/index.js @@ -109,8 +109,10 @@ module.exports = { preSendingHandler ); - Instabug.setPreSendingHandler(preSendingHandler); } + + Instabug.setPreSendingHandler(preSendingHandler); + }, /**