diff options
Diffstat (limited to 'platform/android/src/jni.cpp')
-rwxr-xr-x | platform/android/src/jni.cpp | 40 |
1 files changed, 9 insertions, 31 deletions
diff --git a/platform/android/src/jni.cpp b/platform/android/src/jni.cpp index 5182e268f3..d136766455 100755 --- a/platform/android/src/jni.cpp +++ b/platform/android/src/jni.cpp @@ -14,6 +14,7 @@ #include "connectivity_listener.hpp" #include "style/layers/layers.hpp" #include "style/sources/sources.hpp" +#include "storage/default_file_source_peer.hpp" #include "conversion/conversion.hpp" #include "conversion/collection.hpp" @@ -27,6 +28,7 @@ #include <mbgl/sprite/sprite_image.hpp> #include <mbgl/util/event.hpp> #include <mbgl/util/logging.hpp> +#include <mbgl/storage/default_file_source.hpp> #include <mbgl/storage/network_status.hpp> #include <mbgl/util/exception.hpp> #include <mbgl/util/optional.hpp> @@ -46,9 +48,6 @@ void RegisterNativeHTTPRequest(JNIEnv&); JavaVM* theJVM; -std::string cachePath; -std::string dataPath; -std::string apkPath; std::string androidRelease; jni::jmethodID* onInvalidateId = nullptr; @@ -299,12 +298,9 @@ namespace { using namespace mbgl::android; using DebugOptions = mbgl::MapDebugOptions; -jlong nativeCreate(JNIEnv *env, jni::jobject* obj, jni::jstring* cachePath_, jni::jstring* dataPath_, jni::jstring* apkPath_, jfloat pixelRatio, jint availableProcessors, jlong totalMemory) { +jlong nativeCreate(JNIEnv *env, jni::jobject* obj, jni::Object<DefaultFileSourcePeer> fileSource, jfloat pixelRatio, jint availableProcessors, jlong totalMemory) { mbgl::Log::Debug(mbgl::Event::JNI, "nativeCreate"); - cachePath = std_string_from_jstring(env, cachePath_); - dataPath = std_string_from_jstring(env, dataPath_); - apkPath = std_string_from_jstring(env, apkPath_); - return reinterpret_cast<jlong>(new NativeMapView(env, jni::Unwrap(obj), pixelRatio, availableProcessors, totalMemory)); + return reinterpret_cast<jlong>(new NativeMapView(env, jni::Unwrap(obj), fileSource, pixelRatio, availableProcessors, totalMemory)); } void nativeDestroy(JNIEnv *env, jni::jobject* obj, jlong nativeMapViewPtr) { @@ -419,12 +415,6 @@ jni::jobject* nativeGetClasses(JNIEnv *env, jni::jobject* obj, jlong nativeMapVi return std_vector_string_to_jobject(env, nativeMapView->getMap().getClasses()); } -void nativeSetAPIBaseURL(JNIEnv *env, jni::jobject* obj, jlong nativeMapViewPtr, jni::jstring* url) { - assert(nativeMapViewPtr != 0); - NativeMapView *nativeMapView = reinterpret_cast<NativeMapView *>(nativeMapViewPtr); - nativeMapView->getFileSource().setAPIBaseURL(std_string_from_jstring(env, url)); -} - void nativeSetStyleUrl(JNIEnv *env, jni::jobject* obj, jlong nativeMapViewPtr, jni::jstring* url) { assert(nativeMapViewPtr != 0); NativeMapView *nativeMapView = reinterpret_cast<NativeMapView *>(nativeMapViewPtr); @@ -449,18 +439,6 @@ jni::jstring* nativeGetStyleJson(JNIEnv *env, jni::jobject* obj, jlong nativeMap return std_string_to_jstring(env, nativeMapView->getMap().getStyleJSON()); } -void nativeSetAccessToken(JNIEnv *env, jni::jobject* obj, jlong nativeMapViewPtr, jni::jstring* accessToken) { - assert(nativeMapViewPtr != 0); - NativeMapView *nativeMapView = reinterpret_cast<NativeMapView *>(nativeMapViewPtr); - nativeMapView->getFileSource().setAccessToken(std_string_from_jstring(env, accessToken)); -} - -jni::jstring* nativeGetAccessToken(JNIEnv *env, jni::jobject* obj, jlong nativeMapViewPtr) { - assert(nativeMapViewPtr != 0); - NativeMapView *nativeMapView = reinterpret_cast<NativeMapView *>(nativeMapViewPtr); - return std_string_to_jstring(env, nativeMapView->getFileSource().getAccessToken()); -} - void nativeCancelTransitions(JNIEnv *env, jni::jobject* obj, jlong nativeMapViewPtr) { assert(nativeMapViewPtr != 0); NativeMapView *nativeMapView = reinterpret_cast<NativeMapView *>(nativeMapViewPtr); @@ -1728,6 +1706,9 @@ void registerNatives(JavaVM *vm) { registerNativeSources(env); ConnectivityListener::registerNative(env); + mbgl::Log::Error(mbgl::Event::JNI, "registering DefaultFileSource peer"); + DefaultFileSourcePeer::registerNative(env); + latLngClass = &jni::FindClass(env, "com/mapbox/mapboxsdk/geometry/LatLng"); latLngClass = jni::NewGlobalRef(env, latLngClass).release(); latLngConstructorId = &jni::GetMethodID(env, *latLngClass, "<init>", "(DD)V"); @@ -1804,7 +1785,7 @@ void registerNatives(JavaVM *vm) { #define MAKE_NATIVE_METHOD(name, sig) jni::MakeNativeMethod<decltype(name), name>( #name, sig ) jni::RegisterNatives(env, nativeMapViewClass, - MAKE_NATIVE_METHOD(nativeCreate, "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;FIJ)J"), + MAKE_NATIVE_METHOD(nativeCreate, "(Lcom/mapbox/mapboxsdk/storage/DefaultFileSource;FIJ)J"), MAKE_NATIVE_METHOD(nativeDestroy, "(J)V"), MAKE_NATIVE_METHOD(nativeInitializeDisplay, "(J)V"), MAKE_NATIVE_METHOD(nativeTerminateDisplay, "(J)V"), @@ -1825,8 +1806,6 @@ void registerNatives(JavaVM *vm) { MAKE_NATIVE_METHOD(nativeGetStyleUrl, "(J)Ljava/lang/String;"), MAKE_NATIVE_METHOD(nativeSetStyleJson, "(JLjava/lang/String;)V"), MAKE_NATIVE_METHOD(nativeGetStyleJson, "(J)Ljava/lang/String;"), - MAKE_NATIVE_METHOD(nativeSetAccessToken, "(JLjava/lang/String;)V"), - MAKE_NATIVE_METHOD(nativeGetAccessToken, "(J)Ljava/lang/String;"), MAKE_NATIVE_METHOD(nativeCancelTransitions, "(J)V"), MAKE_NATIVE_METHOD(nativeSetGestureInProgress, "(JZ)V"), MAKE_NATIVE_METHOD(nativeMoveBy, "(JDDJ)V"), @@ -1889,8 +1868,7 @@ void registerNatives(JavaVM *vm) { MAKE_NATIVE_METHOD(nativeSetContentPadding, "(JDDDD)V"), MAKE_NATIVE_METHOD(nativeScheduleTakeSnapshot, "(J)V"), MAKE_NATIVE_METHOD(nativeQueryRenderedFeaturesForPoint, "(JFF[Ljava/lang/String;)[Lcom/mapbox/services/commons/geojson/Feature;"), - MAKE_NATIVE_METHOD(nativeQueryRenderedFeaturesForBox, "(JFFFF[Ljava/lang/String;)[Lcom/mapbox/services/commons/geojson/Feature;"), - MAKE_NATIVE_METHOD(nativeSetAPIBaseURL, "(JLjava/lang/String;)V") + MAKE_NATIVE_METHOD(nativeQueryRenderedFeaturesForBox, "(JFFFF[Ljava/lang/String;)[Lcom/mapbox/services/commons/geojson/Feature;") ); // Offline begin |