Skip to content

Commit 8845f14

Browse files
committed
Add rnpm command for adding android
1 parent a131464 commit 8845f14

File tree

3 files changed

+26
-8
lines changed

3 files changed

+26
-8
lines changed

android/src/main/java/io/sentry/RNSentryModule.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
11
package io.sentry;
22

3+
import com.facebook.react.ReactApplication;
34
import com.facebook.react.bridge.Arguments;
45
import com.facebook.react.bridge.Promise;
56
import com.facebook.react.bridge.ReactApplicationContext;
67
import com.facebook.react.bridge.ReactContextBaseJavaModule;
78
import com.facebook.react.bridge.ReactMethod;
8-
import com.facebook.react.bridge.ReadableArray;
99
import com.facebook.react.bridge.ReadableMap;
1010
import com.facebook.react.bridge.ReadableNativeArray;
1111
import com.facebook.react.bridge.ReadableNativeMap;
1212
import com.facebook.react.bridge.WritableMap;
1313

1414
import java.util.HashMap;
15-
import java.util.List;
1615
import java.util.Map;
1716
import java.util.logging.Level;
1817
import java.util.logging.Logger;
@@ -30,13 +29,20 @@
3029
public class RNSentryModule extends ReactContextBaseJavaModule {
3130

3231
private final ReactApplicationContext reactContext;
32+
private final ReactApplication reactApplication;
33+
3334
final static Logger logger = Logger.getLogger("react-native-sentry");
3435
private ReadableMap extra;
3536
private ReadableMap tags;
3637

37-
public RNSentryModule(ReactApplicationContext reactContext) {
38+
public RNSentryModule(ReactApplicationContext reactContext, ReactApplication reactApplication) {
3839
super(reactContext);
3940
this.reactContext = reactContext;
41+
this.reactApplication = reactApplication;
42+
}
43+
44+
public ReactApplication getReactApplication() {
45+
return reactApplication;
4046
}
4147

4248
@Override
@@ -158,7 +164,7 @@ public void captureEvent(ReadableMap event) {
158164
Sentry.capture(builtEvent);
159165
} else {
160166
RNSentryExceptionsManagerModule.lastReceivedException = event;
161-
if (RNSentryPackage.useDeveloperSupport == true) {
167+
if (this.getReactApplication().getReactNativeHost().getUseDeveloperSupport() == true) {
162168
ReadableNativeArray exceptionValues = ((ReadableNativeArray)RNSentryExceptionsManagerModule.lastReceivedException.getMap("exception").getArray("values"));
163169
ReadableNativeMap exception = exceptionValues.getMap(0);
164170
ReadableNativeMap stacktrace = exception.getMap("stacktrace");

android/src/main/java/io/sentry/RNSentryPackage.java

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import java.util.Collections;
66
import java.util.List;
77

8+
import com.facebook.react.ReactApplication;
89
import com.facebook.react.ReactPackage;
910
import com.facebook.react.bridge.NativeModule;
1011
import com.facebook.react.bridge.ReactApplicationContext;
@@ -13,14 +14,22 @@
1314

1415
public class RNSentryPackage implements ReactPackage {
1516

16-
static public boolean useDeveloperSupport = false;
17+
private final ReactApplication reactApplication;
18+
19+
public RNSentryPackage(ReactApplication reactApplication) {
20+
this.reactApplication = reactApplication;
21+
}
22+
23+
public ReactApplication getReactApplication() {
24+
return reactApplication;
25+
}
1726

1827
@Override
1928
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
20-
if (!useDeveloperSupport) {
21-
return Arrays.<NativeModule>asList(new RNSentryModule(reactContext), new RNSentryEventEmitter(reactContext), new RNSentryExceptionsManagerModule());
29+
if (!this.getReactApplication().getReactNativeHost().getUseDeveloperSupport()) {
30+
return Arrays.<NativeModule>asList(new RNSentryModule(reactContext, this.getReactApplication()), new RNSentryEventEmitter(reactContext), new RNSentryExceptionsManagerModule());
2231
}
23-
return Arrays.<NativeModule>asList(new RNSentryModule(reactContext), new RNSentryEventEmitter(reactContext));
32+
return Arrays.<NativeModule>asList(new RNSentryModule(reactContext, this.getReactApplication()), new RNSentryEventEmitter(reactContext));
2433
}
2534

2635
@Override

package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@
2828
"rnpm": {
2929
"commands": {
3030
"postlink": "node node_modules/react-native-sentry/scripts/postlink"
31+
},
32+
"android": {
33+
"packageInstance": "new RNSentryPackage(MainApplication.this)"
3134
}
3235
}
3336
}

0 commit comments

Comments
 (0)