0.4.9-android
This is a major update to the Tangram Android SDK. There are breaking changes to the API in this release, as well as some new interfaces.
Features
- The Tangram Android SDK now uses the CMake external native build process introduced in Android Studio 2.2. This simplifies Android build process and enables building Tangram for Android on Windows (#1152).
- Scene updates can now be applied when a scene is first loaded. This is a faster, more convenient way to apply settings like API Keys. (#1173).
- BREAKING CHANGE: Previously
queueSceneUpdate
required 2 string arguments, this is now updated with an overloaded method. It either required a list ofSceneUpdate
s or aSceneUpdate
object (#1173). - Markers on the map can now be queried like other features (#1161).
- Feature (and Marker) picking now allows setting a radius to account for pointer size (#1230).
- Added support for label placement parameters:
placement
,placement_spacing
andplacement_min_length_ratio
(#1211). repeat_distance
andrepeat_group
logic now applies to all 'points' styles (#1228).dash
style parameter now accepts floating point values (#1249).
Fixes
- Fixed application of JS functions in Marker styling (#1201).
- Clarified centroid calculations for degenerate polygons (#1221).
- Fixed some uninitialized variables (#1250).
- Fixed inconsistent parsing of Boolean values between GeoJSON and TopoJSON data sources (#1274).
- Text stroke width now scales correctly with display density (#1259).
- Fixed crashes during screen orientation change on a small number of devices/emulators (#1206, #1234).
- Fixed a data race in textures for font atlases (#1202).
Enhancements
- Font loading is faster now (#1194, #1176).
- A new shader cache improves load times for scenes with lots of custom styles (#1225).
DataSource
has been refactored to better support offline map data (#1014).- Simplified handling of EGL context loss on Android; this behaves correctly on all devices we've tested but if you notice problems on a very old Android phone when apps resume from pause, let us know and we'll try to help (#1234).
- Refactored label pipeline in preparation for curved label support (#1205).
- Reduced log verbosity (#1259 and #1258).
- Text draw parameter
required
is replaced byoptional
(#1209). - Networking now uses OkHTTP 3.5 on Android (#1171).
- BREAKING CHANGE: The
setCache
method ofHttpHandler
has been replaced with a new constructor overload, due to changes in OkHTTP 3.0 (#1171).