diff options
Diffstat (limited to 'platform/android/src/file_source.cpp')
-rw-r--r-- | platform/android/src/file_source.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/platform/android/src/file_source.cpp b/platform/android/src/file_source.cpp index daddd0b9cd..4cfb545b84 100644 --- a/platform/android/src/file_source.cpp +++ b/platform/android/src/file_source.cpp @@ -19,11 +19,12 @@ FileSource::FileSource(jni::JNIEnv& _env, const jni::String& accessToken, const jni::String& _cachePath, const jni::Object<AssetManager>& assetManager) { - mapbox::sqlite::setTempPath(jni::Make<std::string>(_env, _cachePath)); + std::string path = jni::Make<std::string>(_env, _cachePath); + mapbox::sqlite::setTempPath(path); // Create a core default file source fileSource = std::make_unique<mbgl::DefaultFileSource>( - jni::Make<std::string>(_env, _cachePath) + "/mbgl-offline.db", + path + DATABASE_FILE, std::make_unique<AssetManagerFileSource>(_env, assetManager)); // Set access token @@ -69,6 +70,12 @@ void FileSource::setResourceTransform(jni::JNIEnv& env, const jni::Object<FileSo } } +void FileSource::setResourceCachePath(jni::JNIEnv& env, const jni::String& path) { + std::string newPath = jni::Make<std::string>(env, path); + mapbox::sqlite::setTempPath(newPath); + fileSource->setResourceCachePath(newPath + DATABASE_FILE); +} + void FileSource::resume(jni::JNIEnv&) { if (!activationCounter) { activationCounter = optional<int>(1) ; @@ -129,6 +136,7 @@ void FileSource::registerNative(jni::JNIEnv& env) { METHOD(&FileSource::setAccessToken, "setAccessToken"), METHOD(&FileSource::setAPIBaseUrl, "setApiBaseUrl"), METHOD(&FileSource::setResourceTransform, "setResourceTransform"), + METHOD(&FileSource::setResourceCachePath, "setResourceCachePath"), METHOD(&FileSource::resume, "activate"), METHOD(&FileSource::pause, "deactivate"), METHOD(&FileSource::isResumed, "isActivated") |