diff --git a/engine/src/flutter/fml/platform/android/jni_util.cc b/engine/src/flutter/fml/platform/android/jni_util.cc index 792339a68d..7febfc06f9 100644 --- a/engine/src/flutter/fml/platform/android/jni_util.cc +++ b/engine/src/flutter/fml/platform/android/jni_util.cc @@ -13,7 +13,6 @@ namespace fml { namespace jni { static JavaVM* g_jvm = nullptr; -static ScopedJavaGlobalRef* g_android_application_context = nullptr; #define ASSERT_NO_EXCEPTION() FTL_CHECK(env->ExceptionCheck() == JNI_FALSE); @@ -37,20 +36,6 @@ void DetachFromVM() { } } -void InitAndroidApplicationContext(const JavaRef& context) { - FTL_DCHECK(g_android_application_context == nullptr); - g_android_application_context = new ScopedJavaGlobalRef(context); - FTL_DCHECK(g_android_application_context->obj() != nullptr); -} - -const jobject GetAndroidApplicationContext() { - jobject object = g_android_application_context->obj(); - FTL_DCHECK(object != nullptr) - << "Trying to get Android application context without first calling " - "InitAndroidApplicationContext."; - return object; -} - static std::string UTF16StringToUTF8String(const char16_t* chars, size_t len) { std::u16string u16_string(chars, len); return std::wstring_convert, char16_t>{} @@ -138,47 +123,5 @@ bool ClearException(JNIEnv* env) { return true; } -std::string GetJavaExceptionInfo(JNIEnv* env, jthrowable java_throwable) { - ScopedJavaLocalRef throwable_clazz( - env, env->FindClass("java/lang/Throwable")); - - jmethodID throwable_printstacktrace = env->GetMethodID( - throwable_clazz.obj(), "printStackTrace", "(Ljava/io/PrintStream;)V"); - - // Create an instance of ByteArrayOutputStream. - ScopedJavaLocalRef bytearray_output_stream_clazz( - env, env->FindClass("java/io/ByteArrayOutputStream")); - - jmethodID bytearray_output_stream_constructor = - env->GetMethodID(bytearray_output_stream_clazz.obj(), "", "()V"); - jmethodID bytearray_output_stream_tostring = env->GetMethodID( - bytearray_output_stream_clazz.obj(), "toString", "()Ljava/lang/String;"); - ScopedJavaLocalRef bytearray_output_stream( - env, env->NewObject(bytearray_output_stream_clazz.obj(), - bytearray_output_stream_constructor)); - - // Create an instance of PrintStream. - ScopedJavaLocalRef printstream_clazz( - env, env->FindClass("java/io/PrintStream")); - - jmethodID printstream_constructor = env->GetMethodID( - printstream_clazz.obj(), "", "(Ljava/io/OutputStream;)V"); - ScopedJavaLocalRef printstream( - env, env->NewObject(printstream_clazz.obj(), printstream_constructor, - bytearray_output_stream.obj())); - - // Call Throwable.printStackTrace(PrintStream) - env->CallVoidMethod(java_throwable, throwable_printstacktrace, - printstream.obj()); - - // Call ByteArrayOutputStream.toString() - ScopedJavaLocalRef exception_string( - env, - static_cast(env->CallObjectMethod( - bytearray_output_stream.obj(), bytearray_output_stream_tostring))); - - return JavaStringToString(env, exception_string.obj()); -} - } // namespace jni } // namespace fml diff --git a/engine/src/flutter/fml/platform/android/jni_util.h b/engine/src/flutter/fml/platform/android/jni_util.h index 5c32d68919..99fafee13c 100644 --- a/engine/src/flutter/fml/platform/android/jni_util.h +++ b/engine/src/flutter/fml/platform/android/jni_util.h @@ -21,10 +21,6 @@ JNIEnv* AttachCurrentThread(); void DetachFromVM(); -void InitAndroidApplicationContext(const JavaRef& context); - -const jobject GetAndroidApplicationContext(); - std::string JavaStringToString(JNIEnv* env, jstring string); ScopedJavaLocalRef StringToJavaString(JNIEnv* env, @@ -40,8 +36,6 @@ bool HasException(JNIEnv* env); bool ClearException(JNIEnv* env); -std::string GetJavaExceptionInfo(JNIEnv* env, jthrowable java_throwable); - } // namespace jni } // namespace fml