1
- /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
3
- *
4
- * <p>This source code is licensed under the MIT license found in the LICENSE file in the root
5
- * directory of this source tree.
6
- */
7
- package com .aceiotsolutions .connecting_mha_app ;
8
-
9
- import android .content .Context ;
10
- import com .facebook .flipper .android .AndroidFlipperClient ;
11
- import com .facebook .flipper .android .utils .FlipperUtils ;
12
- import com .facebook .flipper .core .FlipperClient ;
13
- import com .facebook .flipper .plugins .crashreporter .CrashReporterPlugin ;
14
- import com .facebook .flipper .plugins .databases .DatabasesFlipperPlugin ;
15
- import com .facebook .flipper .plugins .fresco .FrescoFlipperPlugin ;
16
- import com .facebook .flipper .plugins .inspector .DescriptorMapping ;
17
- import com .facebook .flipper .plugins .inspector .InspectorFlipperPlugin ;
18
- import com .facebook .flipper .plugins .network .FlipperOkhttpInterceptor ;
19
- import com .facebook .flipper .plugins .network .NetworkFlipperPlugin ;
20
- import com .facebook .flipper .plugins .react .ReactFlipperPlugin ;
21
- import com .facebook .flipper .plugins .sharedpreferences .SharedPreferencesFlipperPlugin ;
22
- import com .facebook .react .ReactInstanceManager ;
23
- import com .facebook .react .bridge .ReactContext ;
24
- import com .facebook .react .modules .network .NetworkingModule ;
25
- import okhttp3 .OkHttpClient ;
26
-
27
- public class ReactNativeFlipper {
28
- public static void initializeFlipper (Context context , ReactInstanceManager reactInstanceManager ) {
29
- if (FlipperUtils .shouldEnableFlipper (context )) {
30
- final FlipperClient client = AndroidFlipperClient .getInstance (context );
31
- client .addPlugin (new InspectorFlipperPlugin (context , DescriptorMapping .withDefaults ()));
32
- client .addPlugin (new ReactFlipperPlugin ());
33
- client .addPlugin (new DatabasesFlipperPlugin (context ));
34
- client .addPlugin (new SharedPreferencesFlipperPlugin (context ));
35
- client .addPlugin (CrashReporterPlugin .getInstance ());
36
- NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin ();
37
- NetworkingModule .setCustomClientBuilder (
38
- new NetworkingModule .CustomClientBuilder () {
39
- @ Override
40
- public void apply (OkHttpClient .Builder builder ) {
41
- builder .addNetworkInterceptor (new FlipperOkhttpInterceptor (networkFlipperPlugin ));
42
- }
43
- });
44
- client .addPlugin (networkFlipperPlugin );
45
- client .start ();
46
- // Fresco Plugin needs to ensure that ImagePipelineFactory is initialized
47
- // Hence we run if after all native modules have been initialized
48
- ReactContext reactContext = reactInstanceManager .getCurrentReactContext ();
49
- if (reactContext == null ) {
50
- reactInstanceManager .addReactInstanceEventListener (
51
- new ReactInstanceManager .ReactInstanceEventListener () {
52
- @ Override
53
- public void onReactContextInitialized (ReactContext reactContext ) {
54
- reactInstanceManager .removeReactInstanceEventListener (this );
55
- reactContext .runOnNativeModulesQueueThread (
56
- new Runnable () {
57
- @ Override
58
- public void run () {
59
- client .addPlugin (new FrescoFlipperPlugin ());
60
- }
61
- });
62
- }
63
- });
64
- } else {
65
- client .addPlugin (new FrescoFlipperPlugin ());
66
- }
67
- }
68
- }
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * <p>This source code is licensed under the MIT license found in the LICENSE file in the root
5
+ * directory of this source tree.
6
+ */
7
+ package com .aceiotsolutions .connecting_mha_app ;
8
+
9
+ import android .content .Context ;
10
+ import com .facebook .flipper .android .AndroidFlipperClient ;
11
+ import com .facebook .flipper .android .utils .FlipperUtils ;
12
+ import com .facebook .flipper .core .FlipperClient ;
13
+ import com .facebook .flipper .plugins .crashreporter .CrashReporterPlugin ;
14
+ import com .facebook .flipper .plugins .databases .DatabasesFlipperPlugin ;
15
+ import com .facebook .flipper .plugins .fresco .FrescoFlipperPlugin ;
16
+ import com .facebook .flipper .plugins .inspector .DescriptorMapping ;
17
+ import com .facebook .flipper .plugins .inspector .InspectorFlipperPlugin ;
18
+ import com .facebook .flipper .plugins .network .FlipperOkhttpInterceptor ;
19
+ import com .facebook .flipper .plugins .network .NetworkFlipperPlugin ;
20
+ import com .facebook .flipper .plugins .react .ReactFlipperPlugin ;
21
+ import com .facebook .flipper .plugins .sharedpreferences .SharedPreferencesFlipperPlugin ;
22
+ import com .facebook .react .ReactInstanceManager ;
23
+ import com .facebook .react .bridge .ReactContext ;
24
+ import com .facebook .react .modules .network .NetworkingModule ;
25
+ import okhttp3 .OkHttpClient ;
26
+
27
+ public class ReactNativeFlipper {
28
+ public static void initializeFlipper (Context context , ReactInstanceManager reactInstanceManager ) {
29
+ if (FlipperUtils .shouldEnableFlipper (context )) {
30
+ final FlipperClient client = AndroidFlipperClient .getInstance (context );
31
+ client .addPlugin (new InspectorFlipperPlugin (context , DescriptorMapping .withDefaults ()));
32
+ client .addPlugin (new ReactFlipperPlugin ());
33
+ client .addPlugin (new DatabasesFlipperPlugin (context ));
34
+ client .addPlugin (new SharedPreferencesFlipperPlugin (context ));
35
+ client .addPlugin (CrashReporterPlugin .getInstance ());
36
+ NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin ();
37
+ NetworkingModule .setCustomClientBuilder (
38
+ new NetworkingModule .CustomClientBuilder () {
39
+ @ Override
40
+ public void apply (OkHttpClient .Builder builder ) {
41
+ builder .addNetworkInterceptor (new FlipperOkhttpInterceptor (networkFlipperPlugin ));
42
+ }
43
+ });
44
+ client .addPlugin (networkFlipperPlugin );
45
+ client .start ();
46
+ // Fresco Plugin needs to ensure that ImagePipelineFactory is initialized
47
+ // Hence we run if after all native modules have been initialized
48
+ ReactContext reactContext = reactInstanceManager .getCurrentReactContext ();
49
+ if (reactContext == null ) {
50
+ reactInstanceManager .addReactInstanceEventListener (
51
+ new ReactInstanceManager .ReactInstanceEventListener () {
52
+ @ Override
53
+ public void onReactContextInitialized (ReactContext reactContext ) {
54
+ reactInstanceManager .removeReactInstanceEventListener (this );
55
+ reactContext .runOnNativeModulesQueueThread (
56
+ new Runnable () {
57
+ @ Override
58
+ public void run () {
59
+ client .addPlugin (new FrescoFlipperPlugin ());
60
+ }
61
+ });
62
+ }
63
+ });
64
+ } else {
65
+ client .addPlugin (new FrescoFlipperPlugin ());
66
+ }
67
+ }
68
+ }
69
69
}
0 commit comments