summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortobrun <tobrun.van.nuland@gmail.com>2019-05-03 20:13:48 +0200
committertobrun <tobrun.van.nuland@gmail.com>2019-05-03 20:13:48 +0200
commita04402727ed418eed5a1c7d23d4c80b4e9acdc2b (patch)
tree2242aba07c7f096f5b3a0053d032a118121758d2
parent4557f254fa6bbe08f8a750a4c140c133fdcad362 (diff)
downloadqtlocation-mapboxgl-upstream/14297-fix-offline-callbacks-2.tar.gz
[android] - losing callback referenceupstream/14297-fix-offline-callbacks-2
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java8
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/FileUtils.java3
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/FeatureOverviewActivity.java16
3 files changed, 23 insertions, 4 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 cc4988b549..d72c8a35e4 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
@@ -30,7 +30,7 @@ import java.util.concurrent.locks.ReentrantLock;
*/
public class FileSource {
- private static final String TAG = "Mbgl-FileSource";
+ public static final String TAG = "Mbgl-FileSource";
private static final String MAPBOX_SHARED_PREFERENCE_RESOURCES_CACHE_PATH = "fileSourceResourcesCachePath";
private static final Lock resourcesCachePathLoaderLock = new ReentrantLock();
private static final Lock internalCachePathLoaderLock = new ReentrantLock();
@@ -291,18 +291,18 @@ public class FileSource {
final ResourcesCachePathChangeCallback callback = callbackWeakReference.get();
if (callback == null) {
- Logger.w(TAG, "Lost callback reference.");
+ Logger.e(TAG, "Lost callback reference.");
return;
} else if (context == null) {
String lostContextMessage = "Lost context reference.";
- Logger.w(TAG, lostContextMessage);
+ Logger.e(TAG, lostContextMessage);
callback.onError(lostContextMessage);
return;
}
// verify fileSource's activation again after the async task returns
if (getInstance(context).isActivated()) {
- Logger.w(TAG, fileSourceActivatedMessage);
+ Logger.e(TAG, fileSourceActivatedMessage);
callback.onError(fileSourceActivatedMessage);
} else {
final SharedPreferences.Editor editor =
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/FileUtils.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/FileUtils.java
index 95509b670c..e218d05129 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/FileUtils.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/FileUtils.java
@@ -80,6 +80,7 @@ public class FileUtils {
@Override
protected Boolean doInBackground(File... files) {
try {
+ Thread.sleep(3000);
return files[0].canWrite();
} catch (Exception ex) {
return false;
@@ -88,6 +89,7 @@ public class FileUtils {
@Override
protected void onCancelled() {
+ Logger.e(TAG, "On cancelled.");
OnCheckFileWritePermissionListener localListener = listener;
listener = null;
localListener.onError();
@@ -95,6 +97,7 @@ public class FileUtils {
@Override
protected void onPostExecute(Boolean result) {
+ Logger.e(TAG, "On postExecute.");
OnCheckFileWritePermissionListener localListener = listener;
listener = null;
if (result) {
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/FeatureOverviewActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/FeatureOverviewActivity.java
index 9279472cb5..cc18aaecb6 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/FeatureOverviewActivity.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/FeatureOverviewActivity.java
@@ -8,10 +8,14 @@ import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.os.AsyncTask;
import android.os.Bundle;
+import android.os.Environment;
import android.support.annotation.StringRes;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import com.mapbox.mapboxsdk.log.Logger;
+import com.mapbox.mapboxsdk.storage.FileSource;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.adapter.FeatureAdapter;
import com.mapbox.mapboxsdk.testapp.adapter.FeatureSectionAdapter;
@@ -44,6 +48,18 @@ public class FeatureOverviewActivity extends AppCompatActivity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_feature_overview);
+ FileSource.setResourcesCachePath(this, Environment.getExternalStorageDirectory().getPath(), new FileSource.ResourcesCachePathChangeCallback() {
+ @Override
+ public void onSuccess(String path) {
+ Logger.e(FileSource.TAG, "Path updated:" + path);
+ }
+
+ @Override
+ public void onError(String message) {
+ Logger.e(FileSource.TAG, "Error updated:" + message);
+ }
+ });
+
recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.addOnItemTouchListener(new RecyclerView.SimpleOnItemTouchListener());