From 7adb2a523ea7fc8d802d2cad953579f8842edf0b Mon Sep 17 00:00:00 2001 From: Tobrun Date: Fri, 23 Jun 2017 11:32:12 +0200 Subject: [android] - catch render exceptions --- .../src/main/java/com/mapbox/mapboxsdk/maps/MapView.java | 4 ++++ .../src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index c51d9327d2..051a82d6be 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -418,6 +418,10 @@ public class MapView extends FrameLayout { } } + boolean hasSurface() { + return hasSurface; + } + private class SurfaceCallback implements SurfaceHolder.Callback { private Surface surface; diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java index af3b57151d..36377d10e8 100755 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java @@ -176,7 +176,15 @@ final class NativeMapView { if (isDestroyedOn("render")) { return; } - nativeRender(); + + try { + nativeRender(); + } catch (Exception exception) { + Timber.e(exception, + "Exception with state: NativeMapView destroyed: %s, View has surface %s", + destroyed, + mapView.hasSurface()); + } } public void resizeView(int width, int height) { -- cgit v1.2.1