diff --git a/android/src/main/cpp/sonar.cpp b/android/src/main/cpp/sonar.cpp index 62ac6fb5e..ecc15d03b 100644 --- a/android/src/main/cpp/sonar.cpp +++ b/android/src/main/cpp/sonar.cpp @@ -768,6 +768,7 @@ class JFlipperClient : public jni::HybridClass { makeNativeMethod("getInstance", JFlipperClient::getInstance), makeNativeMethod("start", JFlipperClient::start), makeNativeMethod("stop", JFlipperClient::stop), + makeNativeMethod("isConnected", JFlipperClient::isConnected), makeNativeMethod("addPluginNative", JFlipperClient::addPlugin), makeNativeMethod("removePluginNative", JFlipperClient::removePlugin), makeNativeMethod( @@ -813,6 +814,19 @@ class JFlipperClient : public jni::HybridClass { } } + bool isConnected() { + try { + return FlipperClient::instance()->isConnected(); + } catch (const std::exception& e) { + handleException(e); + } catch (const std::exception* e) { + if (e) { + handleException(*e); + } + } + return false; + } + void addPlugin(jni::alias_ref plugin) { try { auto wrapper = diff --git a/android/src/main/java/com/facebook/flipper/android/FlipperClientImpl.java b/android/src/main/java/com/facebook/flipper/android/FlipperClientImpl.java index 752e1a5ab..9fd5506f2 100644 --- a/android/src/main/java/com/facebook/flipper/android/FlipperClientImpl.java +++ b/android/src/main/java/com/facebook/flipper/android/FlipperClientImpl.java @@ -89,6 +89,9 @@ class FlipperClientImpl implements FlipperClient { @Override public native void stop(); + @Override + public native boolean isConnected(); + @Override public native void subscribeForUpdates(FlipperStateUpdateListener stateListener); diff --git a/android/src/main/java/com/facebook/flipper/core/FlipperClient.java b/android/src/main/java/com/facebook/flipper/core/FlipperClient.java index a6560f64a..7dec198a6 100644 --- a/android/src/main/java/com/facebook/flipper/core/FlipperClient.java +++ b/android/src/main/java/com/facebook/flipper/core/FlipperClient.java @@ -24,6 +24,8 @@ public interface FlipperClient { void stop(); + boolean isConnected(); + void subscribeForUpdates(FlipperStateUpdateListener stateListener); void unsubscribe();