summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2017-03-01 09:46:47 -0500
committerGitHub <noreply@github.com>2017-03-01 09:46:47 -0500
commitf44e4eb2de31192855bcd5c67c2f25d0860b5352 (patch)
tree49e4a726adac500229e8453617a3b0176a70627b /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java
parenta46a57027ecef62c72d6c4763dba49a490e2b053 (diff)
downloadqtlocation-mapboxgl-f44e4eb2de31192855bcd5c67c2f25d0860b5352.tar.gz
Only listen to connectivity broadcast events when needed (#8222)
* [android] - only listen to connectivity change events when needed. * [android] - fix compile var args warning, remove redundant test
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java
index cda79e30c6..8bf19c4065 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/offline/OfflineManager.java
@@ -5,6 +5,7 @@ import android.os.Handler;
import android.os.Looper;
import android.support.annotation.NonNull;
+import com.mapbox.mapboxsdk.net.ConnectivityReceiver;
import com.mapbox.mapboxsdk.storage.FileSource;
import java.io.File;
@@ -39,6 +40,9 @@ public class OfflineManager {
// This object is implemented as a singleton
private static OfflineManager instance;
+ // The application context
+ private Context context;
+
/**
* This callback receives an asynchronous response containing a list of all
* {@link OfflineRegion} in the database, or an error message otherwise.
@@ -83,6 +87,7 @@ public class OfflineManager {
* Constructor
*/
private OfflineManager(Context context) {
+ this.context = context.getApplicationContext();
this.fileSource = FileSource.getInstance(context);
initialize(fileSource);
@@ -180,6 +185,7 @@ public class OfflineManager {
@NonNull byte[] metadata,
@NonNull final CreateOfflineRegionCallback callback) {
+ ConnectivityReceiver.instance(context).activate();
createOfflineRegion(fileSource, definition, metadata, new CreateOfflineRegionCallback() {
@Override
@@ -187,6 +193,7 @@ public class OfflineManager {
getHandler().post(new Runnable() {
@Override
public void run() {
+ ConnectivityReceiver.instance(context).deactivate();
callback.onCreate(offlineRegion);
}
});
@@ -197,6 +204,7 @@ public class OfflineManager {
getHandler().post(new Runnable() {
@Override
public void run() {
+ ConnectivityReceiver.instance(context).deactivate();
callback.onError(error);
}
});