summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvo van Dongen <ivovandongen@users.noreply.github.com>2017-03-01 08:33:51 -0800
committerTobrun <tobrun.van.nuland@gmail.com>2017-03-01 11:33:51 -0500
commit74d42a45e2bad5318813e5e2c006d8a9bbda2c74 (patch)
tree717cceca8b50f840245e27e6068762bc2d0a62f4
parent0027f5cdc2c266695ca86d441ab694366820b664 (diff)
downloadqtlocation-mapboxgl-74d42a45e2bad5318813e5e2c006d8a9bbda2c74.tar.gz
[android] keep default file source alive for the duration (#8226)
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java14
1 files changed, 5 insertions, 9 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java
index 4123261f0f..8681777023 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java
@@ -9,8 +9,6 @@ import android.support.annotation.NonNull;
import com.mapbox.mapboxsdk.Mapbox;
import com.mapbox.mapboxsdk.constants.MapboxConstants;
-import java.lang.ref.WeakReference;
-
import timber.log.Timber;
/**
@@ -36,19 +34,17 @@ public class FileSource {
}
- // Use weak reference to avoid blocking GC on this reference.
- // Should only block when mapview / Offline manager instances
- // are alive
- private static WeakReference<FileSource> INSTANCE;
+ // File source instance is kept alive after initialization
+ private static FileSource INSTANCE;
public static synchronized FileSource getInstance(Context context) {
- if (INSTANCE == null || INSTANCE.get() == null) {
+ if (INSTANCE == null) {
String cachePath = getCachePath(context);
String apkPath = context.getPackageCodePath();
- INSTANCE = new WeakReference<>(new FileSource(cachePath, apkPath));
+ INSTANCE = new FileSource(cachePath, apkPath);
}
- return INSTANCE.get();
+ return INSTANCE;
}
public static String getCachePath(Context context) {