Enable Flipper on RNTester app (Android)
Reviewed By: rickhanlonii Differential Revision: D17151766 fbshipit-source-id: b71255702aaa9e102118dff3c00aae2ee654ec1a
This commit is contained in:
Родитель
7b35f427fd
Коммит
adac04601e
|
@ -169,6 +169,12 @@ dependencies {
|
||||||
debugImplementation files(hermesPath + "hermes-debug.aar")
|
debugImplementation files(hermesPath + "hermes-debug.aar")
|
||||||
releaseImplementation files(hermesPath + "hermes-release.aar")
|
releaseImplementation files(hermesPath + "hermes-release.aar")
|
||||||
|
|
||||||
|
debugImplementation("com.facebook.flipper:flipper:0.23.4") {
|
||||||
|
exclude group:'com.facebook.yoga'
|
||||||
|
exclude group:'com.facebook.flipper', module: 'fbjni'
|
||||||
|
exclude group:'com.facebook.litho', module: 'litho-annotations'
|
||||||
|
}
|
||||||
|
|
||||||
if (useIntlJsc) {
|
if (useIntlJsc) {
|
||||||
implementation 'org.webkit:android-jsc-intl:+'
|
implementation 'org.webkit:android-jsc-intl:+'
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
package com.facebook.react.uiapp;
|
package com.facebook.react.uiapp;
|
||||||
|
|
||||||
import android.app.Application;
|
import android.app.Application;
|
||||||
|
import android.content.Context;
|
||||||
import com.facebook.react.BuildConfig;
|
import com.facebook.react.BuildConfig;
|
||||||
import com.facebook.react.ReactApplication;
|
import com.facebook.react.ReactApplication;
|
||||||
import com.facebook.react.ReactNativeHost;
|
import com.facebook.react.ReactNativeHost;
|
||||||
|
@ -14,6 +15,7 @@ import com.facebook.react.ReactPackage;
|
||||||
import com.facebook.react.shell.MainReactPackage;
|
import com.facebook.react.shell.MainReactPackage;
|
||||||
import com.facebook.react.views.text.ReactFontManager;
|
import com.facebook.react.views.text.ReactFontManager;
|
||||||
import com.facebook.soloader.SoLoader;
|
import com.facebook.soloader.SoLoader;
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -46,10 +48,32 @@ public class RNTesterApplication extends Application implements ReactApplication
|
||||||
ReactFontManager.getInstance().addCustomFont(this, "Rubik", R.font.rubik);
|
ReactFontManager.getInstance().addCustomFont(this, "Rubik", R.font.rubik);
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
SoLoader.init(this, /* native exopackage */ false);
|
SoLoader.init(this, /* native exopackage */ false);
|
||||||
|
initializeFlipper(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ReactNativeHost getReactNativeHost() {
|
public ReactNativeHost getReactNativeHost() {
|
||||||
return mReactNativeHost;
|
return mReactNativeHost;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void initializeFlipper(Context context) {
|
||||||
|
if (BuildConfig.DEBUG) {
|
||||||
|
try {
|
||||||
|
/*
|
||||||
|
We use reflection here to pick up the class that initializes Flipper,
|
||||||
|
since Flipper library is not available in release mode
|
||||||
|
*/
|
||||||
|
Class<?> aClass = Class.forName("com.facebook.flipper.ReactNativeFlipper");
|
||||||
|
aClass.getMethod("initializeFlipper", Context.class).invoke(null, context);
|
||||||
|
} catch (ClassNotFoundException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (NoSuchMethodException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (IllegalAccessException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (InvocationTargetException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
Загрузка…
Ссылка в новой задаче