Remove unused FML JNI helpers (flutter/engine#3547)

This commit is contained in:
Jason Simmons
2017-03-31 13:29:11 -07:00
committed by GitHub
parent fc666c4b62
commit 5c4c39c01c
2 changed files with 0 additions and 63 deletions

View File

@@ -13,7 +13,6 @@ namespace fml {
namespace jni {
static JavaVM* g_jvm = nullptr;
static ScopedJavaGlobalRef<jobject>* 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<jobject>& context) {
FTL_DCHECK(g_android_application_context == nullptr);
g_android_application_context = new ScopedJavaGlobalRef<jobject>(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<std::codecvt_utf8_utf16<char16_t>, char16_t>{}
@@ -138,47 +123,5 @@ bool ClearException(JNIEnv* env) {
return true;
}
std::string GetJavaExceptionInfo(JNIEnv* env, jthrowable java_throwable) {
ScopedJavaLocalRef<jclass> 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<jclass> bytearray_output_stream_clazz(
env, env->FindClass("java/io/ByteArrayOutputStream"));
jmethodID bytearray_output_stream_constructor =
env->GetMethodID(bytearray_output_stream_clazz.obj(), "<init>", "()V");
jmethodID bytearray_output_stream_tostring = env->GetMethodID(
bytearray_output_stream_clazz.obj(), "toString", "()Ljava/lang/String;");
ScopedJavaLocalRef<jobject> bytearray_output_stream(
env, env->NewObject(bytearray_output_stream_clazz.obj(),
bytearray_output_stream_constructor));
// Create an instance of PrintStream.
ScopedJavaLocalRef<jclass> printstream_clazz(
env, env->FindClass("java/io/PrintStream"));
jmethodID printstream_constructor = env->GetMethodID(
printstream_clazz.obj(), "<init>", "(Ljava/io/OutputStream;)V");
ScopedJavaLocalRef<jobject> 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<jstring> exception_string(
env,
static_cast<jstring>(env->CallObjectMethod(
bytearray_output_stream.obj(), bytearray_output_stream_tostring)));
return JavaStringToString(env, exception_string.obj());
}
} // namespace jni
} // namespace fml

View File

@@ -21,10 +21,6 @@ JNIEnv* AttachCurrentThread();
void DetachFromVM();
void InitAndroidApplicationContext(const JavaRef<jobject>& context);
const jobject GetAndroidApplicationContext();
std::string JavaStringToString(JNIEnv* env, jstring string);
ScopedJavaLocalRef<jstring> 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