diff options
author | Leith Bade <leith@mapbox.com> | 2015-11-09 21:33:30 +1100 |
---|---|---|
committer | Leith Bade <leith@mapbox.com> | 2015-11-09 21:33:30 +1100 |
commit | 1a68241bb0dc916f1fc1a780f7eddddf42bf892a (patch) | |
tree | e87f33b982e019a82b054d1d4235b9b0aae8a6f6 /android | |
parent | 83cf2197fa544481295d62221d7d7f294d466d6f (diff) | |
download | qtlocation-mapboxgl-1a68241bb0dc916f1fc1a780f7eddddf42bf892a.tar.gz |
[android] Fix Canvas.quickReject() crash on API 15
Also tidy android.os.Build refs
Fixes #2976
Diffstat (limited to 'android')
3 files changed, 7 insertions, 5 deletions
diff --git a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/SpriteFactory.java b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/SpriteFactory.java index 78f7673f89..3395c5039d 100644 --- a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/SpriteFactory.java +++ b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/SpriteFactory.java @@ -35,7 +35,7 @@ public final class SpriteFactory { DisplayMetrics metrics = new DisplayMetrics(); WindowManager wm = (WindowManager) mMapView.getContext().getSystemService(Context.WINDOW_SERVICE); - if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { realMetrics = new DisplayMetrics(); wm.getDefaultDisplay().getRealMetrics(realMetrics); } diff --git a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java index f3493d721f..eeca273b6e 100644 --- a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java +++ b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java @@ -617,7 +617,7 @@ public final class MapView extends FrameLayout { .getSystemService(Context.ACTIVITY_SERVICE); activityManager.getMemoryInfo(memoryInfo); long maxMemory = memoryInfo.availMem; - if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { maxMemory = memoryInfo.totalMem; } mNativeMapView = new diff --git a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/UserLocationView.java b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/UserLocationView.java index db5b320ba6..b36ac1ab6d 100644 --- a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/UserLocationView.java +++ b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/UserLocationView.java @@ -227,8 +227,10 @@ final class UserLocationView extends View { RectF dotBounds = mShowDirection ? mUserLocationBearingDrawableBoundsF : mUserLocationDrawableBoundsF; dotBounds = mStaleMarker ? mUserLocationStaleDrawableBoundsF : dotBounds; - boolean willDraw = - mShowAccuracy && !mStaleMarker && !canvas.quickReject(mAccuracyPath, Canvas.EdgeType.AA); + boolean willDraw = true; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN || !canvas.isHardwareAccelerated()) { + willDraw = mShowAccuracy && !mStaleMarker && !canvas.quickReject(mAccuracyPath, Canvas.EdgeType.AA); + } willDraw |= !canvas.quickReject(dotBounds, Canvas.EdgeType.AA); if (willDraw) { @@ -463,7 +465,7 @@ final class UserLocationView extends View { private boolean isStale(Location location) { if (location != null) { long ageInNanos; - if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { ageInNanos = SystemClock.elapsedRealtimeNanos() - location.getElapsedRealtimeNanos(); } else { |