From 53c3c327f0ebea276d977f58a59cdb9449165518 Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Fri, 17 Aug 2018 13:43:07 -0700 Subject: [android] Upgrade to latest jni.hpp --- platform/android/src/style/sources/raster_source.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'platform/android/src/style/sources/raster_source.cpp') diff --git a/platform/android/src/style/sources/raster_source.cpp b/platform/android/src/style/sources/raster_source.cpp index 33223a5b69..4eef41c8b1 100644 --- a/platform/android/src/style/sources/raster_source.cpp +++ b/platform/android/src/style/sources/raster_source.cpp @@ -16,7 +16,7 @@ namespace android { env, std::make_unique( jni::Make(env, sourceId), - convertURLOrTileset(Value(env, urlOrTileSet)), + convertURLOrTileset(Value(env, jni::SeizeLocal(env, std::move(urlOrTileSet)))), tileSize ) ) { @@ -35,22 +35,21 @@ namespace android { return url ? jni::Make(env, *url) : jni::String(); } - jni::Class RasterSource::javaClass; - jni::Object RasterSource::createJavaPeer(jni::JNIEnv& env) { - static auto constructor = RasterSource::javaClass.template GetConstructor(env); - return jni::Object(RasterSource::javaClass.New(env, constructor, reinterpret_cast(this)).Get()); + static auto javaClass = jni::Class::Singleton(env); + static auto constructor = javaClass.GetConstructor(env); + return jni::Object(javaClass.New(env, constructor, reinterpret_cast(this)).Get()); } void RasterSource::registerNative(jni::JNIEnv& env) { // Lookup the class - RasterSource::javaClass = *jni::Class::Find(env).NewGlobalRef(env).release(); + static auto javaClass = jni::Class::Singleton(env); #define METHOD(MethodPtr, name) jni::MakeNativePeerMethod(name) // Register the peer jni::RegisterNativePeer( - env, RasterSource::javaClass, "nativePtr", + env, javaClass, "nativePtr", std::make_unique, jni::jint>, "initialize", "finalize", -- cgit v1.2.1