Skip to content

Commit c1c1f0d

Browse files
javachefacebook-github-bot
authored andcommittedJan 30, 2024
Use xplat-init for internal builds (#42738)
Summary: Pull Request resolved: #42738 Changelog: [Internal] Reviewed By: christophpurrer Differential Revision: D53087308 fbshipit-source-id: a1d9365fe74ada58d94719a8598134a1a6cd6067
1 parent b7025fe commit c1c1f0d

File tree

4 files changed

+16
-30
lines changed

4 files changed

+16
-30
lines changed
 

‎packages/react-native/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp

+16-10
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
#include <glog/logging.h>
1111

1212
#include <fb/glog_init.h>
13-
#include <fb/log.h>
1413
#include <fbjni/fbjni.h>
1514

1615
#include "CatalystInstanceImpl.h"
@@ -27,27 +26,29 @@
2726
#define WITH_GLOGINIT 1
2827
#endif
2928

30-
using namespace facebook::jni;
29+
#ifdef WITH_XPLATINIT
30+
#include <fb/xplat_init.h>
31+
#endif
3132

3233
namespace facebook::react {
3334

3435
namespace {
3536

36-
struct JavaJSExecutor : public JavaClass<JavaJSExecutor> {
37+
struct JavaJSExecutor : public jni::JavaClass<JavaJSExecutor> {
3738
static constexpr auto kJavaDescriptor =
3839
"Lcom/facebook/react/bridge/JavaJSExecutor;";
3940
};
4041

41-
class ProxyJavaScriptExecutorHolder : public HybridClass<
42-
ProxyJavaScriptExecutorHolder,
43-
JavaScriptExecutorHolder> {
42+
class ProxyJavaScriptExecutorHolder
43+
: public jni::
44+
HybridClass<ProxyJavaScriptExecutorHolder, JavaScriptExecutorHolder> {
4445
public:
4546
static constexpr auto kJavaDescriptor =
4647
"Lcom/facebook/react/bridge/ProxyJavaScriptExecutor;";
4748

48-
static local_ref<jhybriddata> initHybrid(
49-
alias_ref<jclass>,
50-
alias_ref<JavaJSExecutor::javaobject> executorInstance) {
49+
static jni::local_ref<jhybriddata> initHybrid(
50+
jni::alias_ref<jclass>,
51+
jni::alias_ref<JavaJSExecutor::javaobject> executorInstance) {
5152
return makeCxxInstance(std::make_shared<ProxyExecutorOneTimeFactory>(
5253
make_global(executorInstance)));
5354
}
@@ -67,11 +68,16 @@ class ProxyJavaScriptExecutorHolder : public HybridClass<
6768
} // namespace
6869

6970
extern "C" JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved) {
70-
return initialize(vm, [] {
71+
#ifdef WITH_XPLATINIT
72+
return facebook::xplat::initialize(vm, [] {
73+
#else
74+
return jni::initialize(vm, [] {
75+
#endif
7176
#if WITH_GLOGINIT
7277
gloginit::initialize();
7378
FLAGS_minloglevel = 0;
7479
#endif
80+
7581
ProxyJavaScriptExecutorHolder::registerNatives();
7682
CatalystInstanceImpl::registerNatives();
7783
CxxModuleWrapperBase::registerNatives();

‎packages/react-native/ReactAndroid/src/main/jni/react/jni/OnLoad.h

-16
This file was deleted.

‎packages/react-native/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp

-3
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,7 @@
1111
#include <cxxreact/ModuleRegistry.h>
1212
#include <cxxreact/SystraceSection.h>
1313
#include <fb/assert.h>
14-
// #include <fb/Environment.h>
1514
#include <folly/json.h>
16-
// #include <jni/LocalReference.h>
17-
// #include <jni/LocalString.h>
1815

1916
#include <memory>
2017

‎packages/react-native/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h

-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
#include <cxxreact/RAMBundleRegistry.h>
1212
#include <fbjni/fbjni.h>
1313
#include <jni.h>
14-
#include "OnLoad.h"
1514

1615
namespace facebook::react {
1716

0 commit comments

Comments
 (0)
Please sign in to comment.