mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Reviewed By: passy Differential Revision: D6723578 fbshipit-source-id: f34442689f99cd94220335a171010224a12132a8
52 lines
2.2 KiB
Java
52 lines
2.2 KiB
Java
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* <p>This source code is licensed under the MIT license found in the LICENSE file in the root
|
|
* directory of this source tree.
|
|
*/
|
|
package com.facebook.flipper;
|
|
|
|
import android.content.Context;
|
|
import com.facebook.flipper.android.AndroidFlipperClient;
|
|
import com.facebook.flipper.android.utils.FlipperUtils;
|
|
import com.facebook.flipper.core.FlipperClient;
|
|
import com.facebook.flipper.plugins.crashreporter.CrashReporterPlugin;
|
|
import com.facebook.flipper.plugins.databases.DatabasesFlipperPlugin;
|
|
import com.facebook.flipper.plugins.inspector.DescriptorMapping;
|
|
import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin;
|
|
import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor;
|
|
import com.facebook.flipper.plugins.network.NetworkFlipperPlugin;
|
|
import com.facebook.flipper.plugins.react.ReactFlipperPlugin;
|
|
import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin;
|
|
import com.facebook.react.BuildConfig;
|
|
import com.facebook.react.modules.network.NetworkingModule;
|
|
import okhttp3.OkHttpClient;
|
|
|
|
public class ReactNativeFlipper {
|
|
public static final String CLASS_NAME = "com.facebook.flipper.ReactNativeFlipper";
|
|
|
|
public static void initializeFlipper(Context context) {
|
|
if (BuildConfig.DEBUG && FlipperUtils.shouldEnableFlipper(context)) {
|
|
final FlipperClient client = AndroidFlipperClient.getInstance(context);
|
|
|
|
client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults()));
|
|
client.addPlugin(new ReactFlipperPlugin());
|
|
client.addPlugin(new DatabasesFlipperPlugin(context));
|
|
client.addPlugin(new SharedPreferencesFlipperPlugin(context));
|
|
client.addPlugin(CrashReporterPlugin.getInstance());
|
|
|
|
NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin();
|
|
NetworkingModule.setCustomClientBuilder(
|
|
new NetworkingModule.CustomClientBuilder() {
|
|
@Override
|
|
public void apply(OkHttpClient.Builder builder) {
|
|
builder.addNetworkInterceptor(new FlipperOkhttpInterceptor(networkFlipperPlugin));
|
|
}
|
|
});
|
|
client.addPlugin(networkFlipperPlugin);
|
|
|
|
client.start();
|
|
}
|
|
}
|
|
}
|