mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
67 lines
1.7 KiB
Plaintext
67 lines
1.7 KiB
Plaintext
// Copyright 2014 The Chromium Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// This file is autogenerated by
|
|
// base/android/jni_generator/jni_generator.py
|
|
// For
|
|
// org/chromium/example/jni_generator/Test
|
|
|
|
#ifndef org_chromium_example_jni_generator_Test_JNI
|
|
#define org_chromium_example_jni_generator_Test_JNI
|
|
|
|
#include <jni.h>
|
|
|
|
#include "base/android/jni_generator/jni_generator_helper.h"
|
|
|
|
#include "base/android/jni_int_wrapper.h"
|
|
|
|
// Step 1: forward declarations.
|
|
namespace {
|
|
const char kTestClassPath[] = "org/chromium/example/jni_generator/Test";
|
|
// Leaking this jclass as we cannot use LazyInstance from some threads.
|
|
jclass g_Test_clazz = NULL;
|
|
#define Test_clazz(env) g_Test_clazz
|
|
|
|
} // namespace
|
|
|
|
// Step 2: method stubs.
|
|
static jlong Method(JNIEnv* env, jobject jcaller,
|
|
jlong nativeTest,
|
|
jint arg1) {
|
|
Test* native = reinterpret_cast<Test*>(nativeTest);
|
|
CHECK_NATIVE_PTR(env, jcaller, native, "Method", 0);
|
|
return native->Method(arg1);
|
|
}
|
|
|
|
// Step 3: RegisterNatives.
|
|
|
|
static const JNINativeMethod kMethodsTest[] = {
|
|
{ "nativeMethod",
|
|
"("
|
|
"J"
|
|
"I"
|
|
")"
|
|
"J", reinterpret_cast<void*>(Method) },
|
|
};
|
|
|
|
static bool RegisterNativesImpl(JNIEnv* env) {
|
|
|
|
g_Test_clazz = reinterpret_cast<jclass>(env->NewGlobalRef(
|
|
base::android::GetClass(env, kTestClassPath).obj()));
|
|
|
|
const int kMethodsTestSize = arraysize(kMethodsTest);
|
|
|
|
if (env->RegisterNatives(Test_clazz(env),
|
|
kMethodsTest,
|
|
kMethodsTestSize) < 0) {
|
|
jni_generator::HandleRegistrationError(
|
|
env, Test_clazz(env), __FILE__);
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
#endif // org_chromium_example_jni_generator_Test_JNI
|