Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog , and this project adheres to Semantic Versioning.
[1.5.4] - [7.1.25.8.85E3F991] - 2025-02-18
Fixed
- Fixed
NavigationService.getTurnId64()
output for waypoints turns (the waypoint side was wrongly reported)
[1.5.3] - [7.1.25.6.A8D23EF5] - 2025-02-06
Added
- Added
SoundPlayingService.setDefaultHumanVoice()
andITTSPlayerInitializationListener.onTTSPlayerInitializationFailed()
methods - Added
ESConfigKeys.Position.ImprovedPosPreferRouteSnap
property
[1.5.2] - [7.1.25.4.8359B06D] - 2025-01-23
Changed
- Improved resume in route over track navigation
[1.5.1] - [7.1.25.3.9ED2450F] - 2025-01-15
Fixed
- Fixed crash when computing a bike route
[1.5.0] - [7.1.25.2.0C32661A] - 2025-01-08
Added
- Added
ElectricBikeProfile.refSpeed
,ElectricBikeProfile.ignoreLegalRestrictions
properties
Fixed
- Fix regarding roundabout turn image
- Fixed issues regarding
AddressInfo
usage
[1.4.0] - [7.1.24.46.2F7651F2] - 2024-11-14
Fixed
- Fix regarding SDK log size
- Fixes regarding
PositionData
:ImprovedPositionData
,AccelearationData
,RotationData
,CameraData
objects construction on ARM32 devices
Changed
- Replaced default GPS arrow
- Improved navigation on a GPX route
[1.3.0] - [7.1.24.43.11923D7B] - 2024-10-25
Added
- Added
MapView.startTrackPositions()
,MapView.getTrackedPositions()
,MapView.isTrackedPositions()
andMapView.stopTrackPositions()
methods
Changed
- Bug fixing and improvements
[1.2.2] - [7.1.24.39.F5DE2589] - 2024-09-25
Changed
- Update consumer proguard file of the SDK
[1.2.1] - [7.1.24.37.74598F2D] - 2024-09-10
Added
- Added a consumer proguard file to the SDK. In this case the optimisation will apply when
minify
with R8 is enabled in client app’s build settings
[1.2.0] - [7.1.24.35.050EFEB7] - 2024-08-29
Added
- New ways to construct
CircleGeographicArea
and Marker objects
Changed
- Refactor Weather class
[1.1.0] - [7.1.24.34.A27F8A0A] - 2024-08-20
Added
- Added
MarkerCollectionRenderSettings.setCustomMarkerSettings()
method Traffic.addPersistentRoadblock()
received event ID parameter. Now can add a persistent roadblock using a geographic area- Added
Traffic.removePersistentRoadblock(id: String)
method
Fixed
- Fixed
PermissionsHelper.notifyOnPermissionsStatusChanged()
call (it did nothing in previous release)
Changed
- Optimizations regarding map rendering & touch events handling
[1.0.2] - [7.1.24.30.FB70C514] - 2024-07-24
Added
Magic Lane provides the Maps SDK for Android also via Maven
Find more information about how to do this at Maps SDK Android Kotlin Maven Package Registry Wiki
- Added
GemSdk.generateGPSLog()
method - Added
MapView.displaySimplifiedRoute
,MapView.displaySimplifiedRouteTurn
- Added
LandmarkStoreService.mapCitiesLandmarkStoreId
property,GemUtil.getFormattedWaypointName
method - Added
save()
,load()
,sketches()
,isSketches()
methods toMapViewMarkerCollections
class. AddedMarkerSketches
class - Added
MarkerCollectionRenderSettings.setCustomMarkerSettings()
method - Provided error codes on
LandmarkStore
’s add, remove, update operations
Fixed
- Fix regarding the provided error message for a caught exception
- Fixed
GemUtil.pairFormatLandmarkDetails
output for situations in which the input landmark is a city / settlement - Fixes regarding missing
MapViewListener.onReady()
notification,onDefaultMapViewCreated()
notification forGemOffscreenSurfaceView
,SearchService.searchByFilter()
reference point - Fixed crash related to
GemOffscreenSurfaceView.destroy()
call
[7.1.24.20.8B92211B] - 2024-05-15
Fixed
- Fix related to route simulation
[7.1.24.19.64184A80] - 2024-05-09
Added
- Added
DataBuffer.defalte()
,DataBuffer.inflate()
methods - Added
MapView.addRouteGeometry
,MapView.removeRouteGeometry()
,MapView.addNavigationInstructionGeometry()
,MapView.removeNavigationInstructionGeometry()
,MapView.removeAllMarkers()
methods - Added
NavigationInstruction.exportAs()
method - Added
RoutePreferences.setBuildConnections()
,RoutePreferences.getBuildConnections()
,RoutePreferences.getBuildConnectionsMaxLength()
methods
Changed
RoutePreferences.setEmergencyVehicleMode(value: Boolean, extraFreedom: EEmergencyExtraFreedomLevels)
becameRoutePreferences.setEmergencyVehicleMode(value: Boolean, extraFreedom: Int = 0)
[7.1.24.16.F295FF8E] - 2024-04-16
Added
- Added
ShowUserImage
toERouteRenderOptions
enum - Added
MapView.getClosestAddress()
method
Fixed
- Fixed regarding reported network connection type
- Fixed crash inside
GemUtil.getDistText()
method
[7.1.24.6.9D80705D] - 2024-02-09
Added
- Added NavigationService.getTurnId32(turnDetails) and NavigationService.getTurnId64(turnDetails)
Fixed
Fixed reported crash regarding GPS map matching
[7.1.24.3.AC9A0B85] - 2024-01-18
Added
- Added support for EV routing
- Added
MapSceneObject.saveState()
,MapSceneObject.restoreState()
methods - Added
DataBuffer.fromStr()
,DataBuffer.toStr()
methods - Added
FollowPositionPreferences.touchHandlerModifyPersistent
property - Added support for reading map styles from assets
- Added
MapViewPreferences.mapLabelsFading
property - Added
EVCarModel
class,RoutingService.evCarModels
property
Fixed
- Fixed regarding SDK reinitialization
- Fixed error regarding sound playing notifications (did not receive any notification on the provided sound playing listener)
- Fixed crash regarding
Pair<Double, Double>
,Pair<Int, Int>
data types usage
Changed
- Changed min SDK level from 19 from 21
PersistentRoadblockListener.onRoadblockExpired(eventId: Int)
becamePersistentRoadblockListener.onRoadblocksExpired(list: TrafficEventList)
,PersistentRoadblockListener.onRoadblockActivated(eventId: Int)
becamePersistentRoadblockListener.onRoadblocksActivated(list: TrafficEventList)
[7.1.23.41.63AB0887] - 2023-10-13
Added
- Added
RouteRenderSettings.lineType
property - Added
GPXThumbnailImage
example - Added
routeRenderSettings
parameter toMapView.presentRoute()
Removed
- Removed
zoomLevel
parameter fromMapView.presentRoute()
andMapView.presentRoutes()
[7.1.23.41.CD21BBB5] - 2023-10-11
Added
- Added
GemOffscreenSurfaceView
class (for rendering the map inside an offscreen view) - Added
onStatusChanged
lambda toRoutingService
(this is the only way in which user can be notified about “Waiting Internet Connection” state)
Fixed
- Fixed memory leaks. Fixed SDK reinitialization
- Fixed crash regarding
RoutingService.calculateRoute()
usage
Removed
- Removed
RoutePreferences.svSortingStrategy
[7.1.23.40.3E31A25A] - 2023-10-04
Changed
- Bug fixing and improvements.
[7.1.23.34.BD3E9DF4] - 2023-08-22
Added
- Added
RoutePreferences.departureHeading
,RoutePreferences.setDepartureHeading(head, accuracy)
,RouteInstruction.hasRoadInfo
,RouteInstruction.roadInfo
,RouteInstruction.roadInfoImage
- Added
Hydrants
,EmergencyServicesSupport
andCivilEmergencyInfrastructure
toEGenericCategoriesIDs
enum
Changed
- Documented
RoutePreferences.setBuildTerrainProfile()
[7.1.23.33.8BAF5E3B] - 2023-08-18
Changed
- Bug fixing and improvements.
[7.1.23.29.6D0B6AFC] - 2023-07-22
Added
- Added
GLCall
object (to be used for posting calls on GL thread)
Fixed
- Fixed reported crash regarding markers display
[7.1.23.24.F818CE1B] - 2023-06-14
Changed
- Bug fixing and improvements.
[7.1.23.21.0B8B1AC2] - 2023-05-25
Changed
- Bug fixing and improvements.
[7.1.23.20.D1E234B6] - 2023-05-18
Added
- Added
GemUtilImages.setDpi(dpi: Int)
method - Added
RouteSimulationWithoutMap
example
Changed
MagicADASListener.onVehicleData(timestamp: Long, headway: Float, distance: Float)
becameMagicADASListener.onVehicleData(timestamp: Long, vehicle: Obstacle)
Fixed
- Fixed crash inside
SetTTSLanguage
example
[7.1.23.14.BF4263FC] - 2023-03-30
Added
- Added
RoutePreferences.setEmergencyVehicleMode(Boolean, EEmergencyExtraFreedomLevels)
method - Added
MapViewPreferences.setViewAngle(value: Int, animated: Boolean = false)
method - Added center parameter to
CanvasListener.onPinch()
method
Removed
- Removed
CanvasListener.onRotate()
method
[7.1.23.13.68D7B4E1] - 2023-03-30
Added
- Added
FollowPositionPreferences.setViewAngle(angle, animated)
method - Added
Inertial
toPositionData.EFixQuality
enum (this fixes reported crash regardingPositionData.fixQuality
usage)
[7.1.23.13.00B7E257] - 2023-03-28
Fixed
- Fixed issue regarding global reference table overflow
[7.1.23.12.9D4F3B36] - 2023-03-21
Added
- Added
ExternalBattery
,ExternalCompass
,ExternalAcceleration
,ExternalTemperature
,ExternalMagneticField
,ExternalOrientation
,ExternalAttitude
,ExternalActivity
,ExternalCamera
(to be used to push data from corresponding sensors to an external data source) - Added
RoadSafetyAlerts.createSensorDataLogger()
,RoadSafetyAlerts.saveSensorDataLog()
methods - Added
allowOnline
parameter toGemSdk.initSdkWithDefaults()
method
Changed
- Renamed
SenseDataSource.getLastData()
toSenseDataSource.getLatestData()
- Renamed package
aidashcam
toadas
- Moved
Recorder
from packagesensordatasource
to newdashcam
package - Renamed
RoadSafetyAlerts
toMagicADAS
,RoadSafetyAlertsListener
toMagicADASListener
Removed
- Removed
SenseDataSource.getFirstData()
[7.1.23.5.0AA862C4] - 2023-02-01
Changed
- Bug fixing & improvements.
[7.1.23.4.8D1F18B9] - 2023-01-25
Added
- Format landmark details methods to
GemUtil
- New
postLambdasOnMain
parameter toGemSurfaceView
constructor - Support for saving / restoring map state inside surface view, for situations in which surface is recreated
- New
onMapAngleUpdated
API method toMapViewListener
class
Changed
- Fix regarding free text search
- Fix postal code search via address search service
Removed
MapView.onTouchRotate()
method
[7.1.23.2.F5465C47] - 2023-01-11
Added
- New viewAngle parameter for
MapView.centerOnRouteInstruction()
,MapView.centerOnRouteTrafficEvent()
methods - New initial parameter for
MapView.shove()
method
Changed
- Refactored AI Dash Cam
CalibrationConfiguration
class (some members disappeared, others have been renamed) - Fixed crash regarding
Coordinates
object usage - Fixed crash regarding overlay items handling
- Fixed crash regarding SDK objects list usage
Removed
MapView.onTouchShove()
method
[7.1.22.46.8999C03E] - 2022-11-14
Changed
- Bug fixing & improvements.
[7.1.22.44.2B4D1305] - 2022-11-01
Changed
- Bug fixing & improvements.
[7.1.22.41.6B0D8D54] - 2022-10-10
Changed
- Bug fixing & improvements.
[7.1.22.39.4A2FB489] - 2022-09-27
Added
- SDK log is written to a private file (which can be sent to GM, if something wrong is happening)
- Added
onInitSdk
lambda toGemSurfaceView
class that allows user to perform a custom SDK initialization (see above) - Added
sdkToken
attribute toGemSurfaceView
class (the user can now specify SDK token inside layout xml, as an attribute ofGemSurfaceView
element) - Added
SendDebugInfo
,SpeedTTSWarning
,BLEServer
,BLEClient
examples
Changed
- Used
Context.getExternalFilesDirs("")
output for default app internal / external paths. If the user wants to keep previous default paths, a custom SDK initialization should be done:
gemSurfaceView.onInitSdk = { sdkToken ->
val internalPath = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
{
dataDir.absolutePath
}
else
{
filesDir.absolutePath
}
GemSdk.initSdkWithDefaults(this, sdkToken, null, internalPath, getExternalFilesDir("")?.absolutePath)
}
PositionService
is now an object. FixedDriverBehavior
andVoiceInstrRouteSimulation
examples- Fixed crash regarding search operation
- Improved
Favourites
example behavior - Fixed turn appearance inside
RouteSimulationWithInstructions
example - Refactored
LocationWikipedia
,MapGestures
,MapPerspectiveChange
,MultipleSurfacesInFragment
,MultipleSurfacesInFragmentRecycler
examples
[7.1.22.31.A096D237] - 2022-08-04
Added
- Bug fixes and improvements
- Add new SDK examples:
RangeFinder
,SetTTSLanguage
[7.1.22.26.D501C72F] - 2022-06-30
Added
- Enum:
EMarkerLabelingMode
,ETouchGestures
,ETrafficAvoidance
- Member:
MapViewPreferences.trafficVisibility
ERouteRenderOptions.ShowHighlights
MarkerCollectionRenderSettings
:labelingMode
,labelTextColor
,labelTextSize
,labelGroupTextColor
,labelGroupTextSize
,imageSize
TruckProfile.maxSpeed
- Methods:
MapViewPreferences
:enableTouchGestures
,isTouchGestureEnabled
Changed
PathCollection
had been renamed toMapViewPathCollection
SdkSettings.setAllowMapUpdate
renamed tosetAllowAutoMapUpdate
MarkerCollection.name
is var now.MapViewPreferences.paths
returnsMapViewPathCollection
now.RoutePreferences.avoidTraffic
is nowETrafficAvoidance
instead ofBoolean
.
Removed
MarkerCollectionRenderSettings.pointsTextSize
- MapCamera :
getTopographyAltitudeMeters
,setCameraPositionAboveTopography
,setCameraBoundingBoxCentered
[7.1.22.18.90A12C26] - 2022-05-04
Added
- Class:
ObjectLaneDetector
,ObjectLaneDetectorOutput
,MapViewRoutesCollection
,RouteRenderSettings
,MapViewRoute
- Enum:
ERouteRenderOptions
- Enum Value:
EFrameFit.ZoomFill
EEngineType.ImageProcessing
EExecutionType.CPU_GPU
- Method:
MapScene.getDefScene
Path.getCoordinatesAtPercent
SettingsService.flush
NavigationListener.onTraveledRouteTrackTrimmed
PositionData.produceMockPosition
Datasource
:isMockData
,setMockData
MapViewListener
:onCursorSelectionUpdatedPath
,onCursorSelectionUpdatedMapSceneObject
MapView
:scroll
,fling
MapCamera
:setCameraBoundingBoxCentered
,setCameraRelativeToTarget
,generatePositionAndOrientationRelativeToTarget
,setCameraRelativeToCenteredTarget
,generatePositionAndOrientationRelativeToCenteredTarget
,setCameraTargetCentered
,generatePositionAndOrientationTargetCentered
,setCameraOrientation
,setCameraPositionAboveTopography
,getTopographyAltitudeMeters
,setCameraPosition
,generatePositionAndOrientationWithHeading
,generatePositionAndOrientation
Recorder.isAudioRecording
Rgba.isLight
- Method params:
SenseDataSource.addListener
addedpreferences
as optionalGemSdk.initSdkWithDefaults
added:timer
,internalPath
,externalPath
,language
,languageTts
,savePolicy
,listener
,appVariant
,useApiExceptions
,logger
,breakpadCallback
pos
toMapSceneObject.produce
- Members:
MapView.cursorSelectionSceneObject
MapSceneObject.scaleFactor
,MapSceneObject.maxScaleFactor
,NavigationInstruction.routeTrack
SdkSettings.isMapDataReady
,CameraConfiguration.rotation
,Rgba.luma
MapScene : scaleFactor
,maxScaleFactor
CameraData.orientation
Changed
- Default save policy had been changed to
UseBothPreferInternal
instead ofUseBothPreferExternal
CanvasBufferRenderer.updateImage
’s orientation input type is nowEOrientationType
CameraData.rotation
had been renamed to orientation with data type :EOrientationType
OffboardListener
relatedEStatus
,EReason
had been renamed toEOffboardListenerStatus
,EOffboardListenerReason
NativeRefObj
renamed toGemNativeObj
SdkList
renamed toGemList
SdkLog
renamed toGemLog
UtilGemImages
renamed toGemUtilImages
SdkHandler
renamed toGemSdkHandler
SdkUtil
renamed toGemUtil
SdkMap
renamed toGemMap
SdkCall
renamed toGemCall
MapViewPreferences.routes
will now returnMapViewRoutesCollection
MarkerCollectionDisplaySettings
renamed toMarkerCollectionRenderSettings
OverlayDisplaySettings
renamed toOverlayRenderSettings
- Renamed
SenseDataSource.get/setConfiguration
toget/setPreferences
. - Renamed
ConfigKey
toESConfigKey
- Renamed
ESConfigKey.key*
toESConfigKey.*
- Refactored
EFrameFit
’s values.
Removed
ECameraStateExtraData
MapCamera
:restoreCameraState
/saveCameraState
’sextraData
paramCanvasBufferRenderer.updateCameraData
’s rotation input paramENavigationStatus.WaitingData
RoutesCollection
:getLabel
,setLabel
,getImages
,setImages
,hideLabel
RoutesCollection.add
input param :label
,image
CameraData.rotation
[7.1.22.8.567F8EF8] - 2022-02-21
Added
- Enum:
EFollowPositionMapRotationMode
ERouteType
EWheelchairAccessible
EBikesAllowed
- Enum member:
ESdkCapabilities
:Timezone
,Sound
,Projection
EHighlightOptions.Bubble
- Class member:
FollowPositionPreferences.mapRotationMode
IOpenGLContext.textureScaleFactor
FollowPositionPreferences.accuracyCircleVisible
- Method:
FollowPositionPreferences
:setMapRotationMode
,isTrackObjectFollowingMapRotation
OverlayItem
:getPreviewData
,hasPreviewExtendedData
,getPreviewExtendedData
,cancelGetPreviewExtendedData
,RouteTrafficEvent
TrafficEvent
:getPreviewData
,cancelGetPreviewData
- Method param:
startStamp
:Time
to LogUploaderListener.onLogStatusChanged
albumName
:String
toRecorderBookmarks.exportLog
Changed
- Renamed
RecorderConfiguration.diskSpaceLimit
todiskSpaceLimitMb
- Renamed
SensorDelay
toESensorDelay
- Renamed
StringIds
toEStringIds
- Replaced
IOpenGLContext.fontScaleFactor
withIOpenGLContext.fontModifiers
Removed
- Class member:
MapServiceExtensions.gpsAccuracyCircleEnabled
- Method:
MapViewPreferences.toggle2DWithAltitude
Fixed
- TTS not playing while navigating.
[7.1.22.6.6BACA322] - 2022-02-08
Added
- Class:
SceneObjectData
- Methods:
MapView.getHighlightArea
MapView.getOptimalHighlightCenterViewport
- Enum values to
ESdkCapabilities
:Content
,Dashcam
,Weather
,Vrp
,Sense
,Places
.
Changed
LandmarkStoreService.createLandmarkStore
return type toPair<LandmarkStore?, ErrorCode>
EExtendedDataType
is deprecated now.EExtendedDataType
renamed toEPreviewDataType
MapViewPreferences.getMapViewPerspective
is used as memberMapViewPreferences.mapViewPerspective
MapViewPreferences.getViewAngle
is used as memberMapViewPreferences.viewAngle
MapViewPreferences.getTiltAngle
is used as memberMapViewPreferences.tiltAngle
MapViewPreferences.followPositionWithRoutePreferences
renamed tofollowPositionPreferences
- Moved following from
MapViewPreferences
toFollowPositionPreferences
:followPositionCameraFocus
,setFollowPositionTouchHandlerModifyLimits
,getFollowPositionTouchHandlerExitAllow
,getFollowPositionTouchHandlerModifyHorizontalAngleLimits
,getFollowPositionTouchHandlerModifyVerticalAngleLimits
,getFollowPositionTouchHandlerModifyDistanceLimits
HighlightRenderSettings.iconSz
is deprecated now.iconSz
renamed toimageSize
MapView.getZoomLevel
is used as memberMapView.zoomLevel
MapView.getSlippyZoomLevel
is used as memberMapView.slippyZoomLevel
- Renamed enum
SceneObjectFileFormat
toESceneObjectFileFormat
MapSceneObject.produce
is based now on aSceneObjectData
instead ofDataBuffer
and its format.MapSceneObject.customizeDefPositionTracker
’s input toSceneObjectDataList
MapSceneObject.producePositionTracker
return type toPair<MapSceneObject?, ErrorCode>
Removed
- enum
ECameraFollowMode
FollowPositionPreferences
’s default constructor.- param mode:
ECameraFollowMode
from:MapViewPreferences.setMapViewPerspective
and from get. - param mode:
ECameraFollowMode
from:MapViewPreferences.setViewAngle
and from get. - param mode:
ECameraFollowMode
from:MapViewPreferences.setTiltAngle
and from get. - param mode:
ECameraFollowMode
from:MapView.setZoomLevel
,MapView.setSlippyZoomLevel
, and from corresponding getters. - field
MapView.cameraFollowMode
- method
MapView.cursorSelectionRouteInstruction
- Library dependency:
com.google.android.gms:play-services-location
[7.1.22.2.417AD833] - 2022-01-11
Added
- Class:
ImprovedPositionData
- Enum:
GemSdk.ESdkCapabilities
- Member:
ConfigKey.kKeyImprovedPositionUpdateFreq
ConfigKey.kKeyImprovedPositionDefTransportMode
OverlayItem.categoryId
GemSdk.capabilities
GemError.MissingCapability
EViewOnlineServiceType.External
Changed
PositionService.addListener
and PositionService.position
is usingImprovedPosition
by default instead of direct sensor Position.AddressInfo.format
allows null inputs as default.
Fixed
GemGlSurfaceCallback
zoom in/out in default map view not pan around anymore.AddressInfo.format
works properly now.
[7.1.21.50.7E1BDC39] - 2021-12-16
Added
- Class:
GemSurfaceContainerAdapter
FollowPositionPreferences
- Enum:
ELandmarkFileFormat
AcclerationData.EUnitOfMeasurement
- Method:
BasicShapeDrawer.createTexture
with image paramMapView.getOptimalRoutesCenterViewport
LandmarkStore
:importLandmarksBuffer
,importLandmarks
,cancelImportLandmarks
,startFastUpdateMode
,stopFastUpdateMode
,isFastUpdateMode
Image.produceWithPath
RoutePreferences
:isAutomaticTimestamp
,setIsAutomaticTimestamp
EnumHelper.fromOrdinal
MapViewListener
andMapView
’s lambdas:onHoveredMapLabelHighlightedLandmark
,onHoveredMapLabelHighlightedOverlayItem
,onHoveredMapLabelHighlightedTrafficEvent
, MapView.highlightHoveredMapLabel
- Member:
AccelerationData.unit
MapView.cursorSelectionPath
- Auto fetch offline maps from assets. See
RouteSimulationOffline
example.
Changed
BasicShapeDrawer.renderShapes
nullable paramsRectF
:center
anddimensions
to Float types.GemGlSurfaceCallback
renamed toGemGlSurfaceAdapter
PermissionsHelper
is singleton now. SeePermissionsHelper.instance
Removed
- Member :
LandmarkStore.fastUpdateMode
Android Auto direct dependency. End user have to match min sdk requirements for android auto dependency when implementing.
[7.1.21.46.DA24169E] - 2021-11-15
Added
- Class:
ElectricBikeProfile
- Fields:
RoutePreferences
:eBikeProfile
,defaultEBikeProfile
AbstractGeometryImage.aspectRatio
,Image.aspectRatio
GemGlSurfaceCallback
:onVisibleAreaChanged
,visibleArea
MapViewPreferences
:mapDetailsQualityLevel
- Method:
MapViewPreferences
:isMapSceneObjectVisible
,setMapSceneObjectVisibility
TruckProfile
: constructor with param.GeographicArea.convert
- Method Params:
RoutePreferences.setBikeProfile
addedeProfile: ElectricBikeProfile
- Enum:
EEBikeType
,EMapDetailsQualityLevel
- EnumValue:
ERouteType.Economic
Changed
TruckProfile.weight
renamed toTruckProfile.mass
.GemGlSurfaceCallback
is available only in minApi 23 SDK.
Removed
GlSurfaceHolderAdapter
is internal now.
Fixed
- Startup crash on Android 8 or lower devices.
[7.1.21.43.0A164E49] - 2021-10-30
Added
- Class:
BrakeDetector
TrafficSignDetector
ClassifiedObject
Enum:EClassificationFilter
- Member:
NativeRefObj.address
SocialReportsOverlayCategory
:uid
,overlayUid
,name
,image
IBitmap
:width
,height
DetectedObject.classifiedObject
ObjectDetector.classificationFilter
Rgba.argbValue
,Rgba.bgraValue
MapCamera.position
,MapCamera.orientation
TrafficSignClassifier.classificationTime
BrakeClassifier.classificationTime
ObjectDetector.detectionTime
LaneDetector.detectionTime
Landmark.extraImage
MapDetails.isoCodeForCurrentPosition
- Method:
SocialReportsOverlayCategory.hasSubcategories()
SdkSettings.setAllowConnection(value: Boolean)
LogUploaderListener
constructor(postOnMain: Boolean = false
)NavigationListener.create
AlarmListener.create
- MapView :
produce
andproduceByContext
without listener:MapViewListener
SocialOverlayItemListener.create
LogUploaderListener.create
RoadSafetyAlertsListener.create
LandmarkStoreListener.onLandmarkStoreRegistered
SdkCall.execute
withmaxWaitMs
DataSource.addListener
with array oufEDataType
TrafficSignClassifier.classifyList
TrafficSignClassifier.getOutput
ObjectDetector.updateClassificationFilter
BrakeClassifier.classifyList
BrakeClassifier.getOutput
Rgba
: constructor withColor
,swapRedBlue
,asColor
MapViewPreferences.setDrawFPS
SearchPreferences.removeAllCategoryFilters
MapView.invalidate
OverlayService
:enableOverlayOfflineDataGrabber
,disableOverlayOfflineDataGrabber
,isOverlayOfflineDataGrabberEnabled
,isOverlayOfflineDataGrabberSupported
MapViewPreferences.getDrawFPS
- Param:
autoInitLiveDataSource
toGemSdk.initSdkWithDefaults
rect
toTrafficSignClassifier.classify
rect
toBrakeClassifier.classify
postLambdasOnMain
toMapView.produce
,MapView.produceByContext
allowChargeNetwork
,roadMapAutoUpdateListener
toSdkSettings.setAllowMapUpdate
address
toNativeRefObj.release
onStarted
to :RoutingService.calculateRoute
methodscritical
toTrafficSignClassifier.produce
,ObjectDetector.produce
,LaneDetector.produce
,BrakeClassifier.produce
completionCallback
toRecorderBookmarks.exportLog
Changed
SdkError
is now considered asInt
instead of enum.MainSceneObjects
renamed toEMainSceneObjects
NNEngineType
renamed toEEngineType
NNExecutionType
renamed toEExecutionType
TrafficSignClassifier.detect
renamed toclassify
BrakeClassifier.detect
renamed toclassify
EExtraInfo.AttachedTrainstation
renamed toEExtraInfo.AttachedTrainStation
OffboardListener.onOnlineWorldMapSupportDisabled
renamed toonWorldwideRoadMapSupportDisabled
OffboardListener.onOnlineWorldMapSupportEnabled
renamed toonWorldwideRoadMapSupportEnabled
OffboardListener.onOnlineWorldMapSupportStatus
renamed toonWorldwideRoadMapSupportStatus
OffboardListener.onWorldMapVersionUpdated
renamed toonWorldwideRoadMapVersionUpdated
OffboardListener.onOnlineWorldMapUnsupportedCapabilities
renamed toonWorldwideRoadMapUnsupportedCapabilities
DataSourceListener.onNewData
’s SenseData param replaced withEDataType
SdkError.ResourcesMissing
renamed toSdkError.ResourceMissing
SdkError.getDescriptionText
renamed togetMessage
SdkError
renamed toGemError
RoadSafetyAlerts.setWindshieldLateralDisplacement
renamed tosetCameraLateralDisplacement
Size
,SizeF
,Xy
,XyF
,Tuple4d
,Tuple3d
,Rect
,RectF
RoutePreferences.routeResultType
used as member instead of method.NavigationListener.canPlayNavigationSound
used as member instead of method.SocialOverlay.prepareReporting
param reorder.ImageDatabase.import
replacedString
param withdata: DataBuffer, format: EImageFileFormat
ImageDatabase.remove
replacedImage
param withimageId: Int
Removed
CameraConfiguration.autoFocusEnabled
ELandmarkStoreType.Last
EGlobalLandmarkCategory.Base
,EGlobalLandmarkCategory.Last
EContactInfoFieldType.Last
Canvas.isView
EMapProviderId.Last
GemSurfaceView
:getGlContext
,getScreen
,getDefaultMapView
EContentType.First
,EContentType.Last
MapView.defaultMapViewListener()
SocialOverlayItemListener
constructor with lambdaLogUploaderListener
constructors with paramsScreen.fps
Fixed
SearchService
not clearing category filters before any search is made.TextState
not allocating object.
[7.1.21.38.70F93E78] - 2021-09-20
Added
- Enum
ETrackingModeUpdateRequest
,ECameraStateExtraData
- Member:
MapSceneObject.visibility
PTRoute.polygonGeographicArea
Route.polygonGeographicArea
LandmarkBrowseSession.settings
- Param:
removeLmkContent
toLandmarkStore.removeCategory
breakpadCallback
toGemSdk.initialize
- Method:
MapViewListener
:onEnterManuallyAdjustedFollowingPosition
,onExitManuallyAdjustedFollowingPosition
MapView
:restoreFollowingPosition
,isFollowingPositionTouchHandlerModified
MapSceneObject
:getDefPositionTracker
,customizeDefPositionTracker
MapScene.getDefScene
IBitmap
:produce
,produceBgr888
,produceAlpha8
LaneDetector.computeAccuracy
TrafficSignClassifier.computeAccuracy
BrakeClassifier.computeAccuracy
Rect.pointInRectangle
RectF.pointInRectangle
MapViewPreferences
:setFollowPositionTouchHandlerModifyLimits
,getFollowPositionTouchHandlerExitAllow
,getFollowPositionTouchHandlerModifyHorizontalAngleLimits
,getFollowPositionTouchHandlerModifyVerticalAngleLimits
,getFollowPositionTouchHandlerModifyDistanceLimits
LandmarkStoreListener
:onLandmarksUpdated
,onLandmarksRemoved
LandmarkStore
:removeAllLandmarks
,setLandmarkCategory
,getLandmarksByArea
MapCamera
:saveCameraState
,restoreCameraState
ImageDatabase.getTrafficSignImage
Changed
SceneObjectFileFormat
’s values.ETrafficSignType
’s values.MapSceneObject.produce
methods require lists of DataBuffer and formats instead of one of each.LandmarkStore.createLandmarkBrowseSession
input params- Preset member images of
ImageDatabse
are now static. (tollImage
,ferryImage
,greenBallImage
,yellowBallImage
,redBallImage
) - Renamed method:
MapViewListener
:onEnterManuallyAdjustedFollowingPosition
toonEnterTouchHandlerModifyFollowingPosition
MapViewListener
:onExitManuallyAdjustedFollowingPosition
toonExitTouchHandlerModifyFollowingPosition
- Renamed class:
SdkIcons
toSdkImages
SdkImages.Other_Engine
toSdkImages.Engine_Misc
Removed
- Classes:
Bitmap
,AdjustableBitmap
- Member:
MapView.followingPositionDisplayMode
- Enum :
EPositionDisplay
- Method:
AbstractGeometryImage.renderInto
Image.produceWithPath
LandmarkStore
:removeLandmarkFromCategory
,removeLandmarkFromAllCategories
- Param:
blend
fromImage.render
,AbstractGeometryImage.render
,AbstractGeometryImage.renderArrow
,RoadInfoImage.render
,LaneImage.render
- Enum value:
ETrafficSignType.All
,EBrakeType.All
,EObjectType.All
[Unreleased] - 2021-09-01
Added
- Class
MapSceneObject
- Enum
MainSceneObjects
- Method:
PathCollection.clear
Rect.center
,Rect.dimensions
. Same forRectF
.Screen.needsRender
MapServiceExtensions.getHighlightGroupItemIndex
MapView.deactivateAllHighlights
Marker.setCoordinates
MarkerCollectionDisplaySettings.setPointMarkerLabelExtractor
Route.getDominantRoads
,PTRoute.getDominantRoads
CanvasBufferRenderer.updateCameraData
,CanvasBufferRenderer.updateImage
- Property:
MarkerCollectionDisplaySettings.pointsTextSize
Coordinates.sceneObject
- Method input param:
SocialOverlay.report
: addedcategoryId
highlightId
toMapView.activateHighlightLandmarks
,MapView.activateOverlayItemsHighlight
,MapView.deactivateHighlight
MapView.startFollowingPosition
:navArrow
,trackMethod
MapView.followPosition
:navArrow
,trackMethod
parentSceneObject
toCoordinates
’s constructor,Coordinates.assignValues
Changed
- Method inputParam:
SocialOverlay.prepareReportingWithCoordinates
,SocialOverlay.prepareReporting
: removeddryRun
- Renamed class
ViewCustomization
toMapServiceExtensions
- Renamed
MapView.customization
toMapView.extensions
- EasyAccess:
object.getMember
changed toobject.member
for easy access. - EasyAccess:
object.setMember(value)
changed toobject.member = value
for easy access.
Removed:
- Method:
Image.renderWithMask
,AbstractGeometryImage.renderWithMask
MapServiceExtensions.setCursorTexture
CanvasBufferRenderer.uploadFrame
[Unreleased] - 2021-08-09
Added
- Enum Value:
EValueType.ListValue
- Method:
Parameter
:key
,valueList
SocialOverlay
:getReportSnapshot
,prepareReportingWithCoordinates
,prepareReporting
report
,confirmReport
,denyReport
,updateReport
,deleteReport
,addComment
SocialReportsOverlayCategory
:parameters
Time.getTimeZoneMillisecondsTime
CanvasBufferRenderer
:frameFit
,scaleFactor
,translateFactor
BasicShapeDrawer
:createTexture
with image asByteArray
Size.isEmpty
,SizeF.isEmpty
GemSdk.produceDefaultLiveDataSource
SdkCall.lock
,SdkCall.unlock
- Method input param:
BasicShapeDrawer.renderShapes
:translationFactor: XyF?
,scaleFactor: XyF?
SocialOverlay.cancel
:listener: ProgressListener
GemSdk.initialize
:autoInitLiveDataSource: Boolean = false
- Method output param: In
NavigationService
added SdkError as Int forstartNavigationWithRoute
,startSimulation
,startSimulationWithRoute
- Class:
SocialUsersOverlayInfo
,LaneDetector
,LaneDetectorOutput
,TrafficSignClassifierOutput
,TrafficSignClassifier
,Obstacle
,CalibrationConfiguration
,RoadSafetyAlertsListener
,InitializationConfiguration
,RoadSafetyAlerts
,BrakeClassifierOutput
,BrakeClassifier
Changed
- Renaming:
SocialReportsOverlayCategory
:getCountry
tocountry
,getSubcategories
tosubcategories
SocialOverlay
:getReportsOverlayInfo
toreportsOverlayInfo
,getUsersOverlayInfo
tousersOverlayInfo
,registerIMarkerListener
toregisterOverlayItemListener
,unregisterIMarkerListener
tounregisterOverlayItemListener
Removed
SocialReportsOverlayCategory
:getValidity
,getImpactRadius
[7.1.21.30.F7B1DCD6] - 2021-07-27
Added
- Class:
SocialReportsOverlayCategory
SocialReportsOverlayInfo
- Methods:
Rect.toRectF
for fast conversionRectF.toRect
for fast conversionRectangleGeographicArea.set
with coords, horizontal and vertical radiusMarkerCollectionDisplaySettings.polylineInnerSize
andMarkerCollectionDisplaySettings.polylineOuterSize
OverlayCategory.subcategories
andOverlayCategory.hasSubcategories
OverlayInfo.getCategory
andOverlayInfo.hasCategories
SocialOverlay.getReportsOverlayInfo
SocialOverlay.getUsersOverlayInfo
- Static in
Time
:daysFromMilliseconds
,hoursFromMilliseconds
,minutesFromMilliseconds
,secondsFromMilliseconds
- Method Param:
categoryId
forOverlayService
:enableOverlay
,disableOverlay
,isOverlayEnabled
Changed
- Method Param: In
OverlayMutableCollection
:add
,addByCategory
,remove
,removeByCategory
,contains
,containsByCategory
. Only the overlayId is required instead of whole object.
[7.1.21.29.5996E8AB] - 2021-07-21
Added
- Class:
BasicShapeDrawer
for drawing basic things overGemSurfaceView
. - Methods:
GemSurfaceView.onDrawFrameCustom
for custom gl drawing support. - Other: More predefined colors as static in
Rgba
Changed
object.getMember
changed toobject.member
for easy access.object.setMember(value)
changed toobject.member = value
for easy access.- Renamed:
Util.getPhonePath
toUtil.getAppDirInternalPath
Util.getSdCardPath
toUtil.getAppFilesDirExternalPath
Removed
ISOCode
object replaced withString
.
[7.1.21.27.F0A8520E] - 2021-07-08
Added
- Enum values:
ERoutingAlgoModifiers.DisableFallbacks
- Methods:
Screen.getFPS
GuidedAddressSearchPreferences.setAllowFuzzyResults
GuidedAddressSearchPreferences.getAllowFuzzyResults
SearchPreferences.setAllowFuzzyResults
SearchPreferences.getAllowFuzzyResults
Changed
EBuildingsVisibility
’s valuesSteepSection.getCateg
renamed toSteepSection.getCategory
SteepSection.setCateg
renamed toSteepSection.setCategory
[7.1.21.26.568B4C80] - 2021-07-02
Added
- Shortcuts:
PositionListener
can be used directly with a lambda instead of extend and override its methods.LogUploaderListener
can be used directly with a lambda instead of extend and override its methods.SocialOverlayItemListener
can be used directly with a lambda instead of extend and override its methods.MapViewPreferences.landmarkStores
can be called instead ofMapViewPreferences.lmks
SearchPreferences.landmarkStores
can be called instead ofSearchPreferences.lmks
AlarmService.landmarkStores
can be called instead ofAlarmService.lmks
ContentUpdater.getContentType
returns enum type.getContentTypeInt
returns only an int- Constructor with nullable params for
DetectorConfiguration
- Constructor with nullable params for
DetectedObject
- Constructor with nullable params for
AbstractGeometryImageRenderSettings
- Constructor with params for
ProxyDetails
- Class:
SizeF
AdjustableBitmap
IAdjustableBitmap
LaneImageRenderSettings
- Methods:
MapView.setEdgeAreaInsets
GemSurfaceView.hadBeenInitialized
GemSurfaceView.hadBeenReleased
AbstractGeometryImage.renderWithMask
RoadInfoImage.render
LaneImage.render
ContentUpdater.isStarted
- Input parameter:
isMapReady
forSdkSettings.onMapDataReady
displayMode
forMapView.presentRoute
(s)edgeAreaInsets
forMapView.presentRoute
(s)
- Other:
EMapExtendedCapability.HighPrecisionBuildings
- app:autoReleaseOnDetachedFromWindow attribute to
GemSurfaceView
for preventing auto release whenonDetachedFromWindow
is triggered.
Changed
- Renamed:
TimerListener
renamed toITimerListener
Canvas.isView
toCanvas.isMapView
Removed
- Input param:
type: EDirectBufferType
away fromCanvasBufferRenderer.uploadFrame
[7.1.21.25.51BBEB8E] - 2021-06-24
Added
- Shortcuts:
mapView.defaultMapViewListener
lambdas can be set directly in mapView . E.g.: mapView.onRender instead ofmapView.defaultMapViewListener.onRender
.- When providing null Coordinates for
SearchService.searchAroundPosition
it will use current position instead.
- Helper methods:
AlarmService.startAlarmForOverlay
(s)AlarmService.stopAlarmForOverlay
(s)MapView.presentPath
MapView.displayPaths
OverlayService.getOverlaysById
with inputs:ECommonOverlayId
andonCompleted
- Animation constructor with lambdas.
- Classes:
OverlayMutableCollection
OverlayDisplaySettings
MapViewOverlayCollection
- Enums:
IOpenGLContext.EOutputBufferType
ECameraFollowMode
- Input parameter:
zoomLevel
forMapView.presentRoute
(s)mode
forMapViewPreferences
:setMapViewPerspective
,getMapViewPerspective
,getViewAngle
,setViewAngle
,getTiltAngle
,setTiltAngle
mode
forMapView
:setZoomLevel
,setSlippyZoomLevel
,getZoomLevel
,getSlippyZoomLevel
restoreCameraMode
forMapView.stopFollowingPosition
- Methods:
IOpenGLContext.getOutputBufferType
DataBuffer.empty
ContentStoreItem.setProgressListener
OverlayService.getAvailableOverlays
only withonCompleted
trigger as input.OverlayMutableCollection.getOverlayByUid
with enum type input.OverlayMutableCollection.add
withArrayList<OverlayInfo>
input.OverlayMutableCollection.remove
withArrayList<OverlayInfo>
input.SdkSettings.isMapDataReady
MapView.getCameraFollowMode
Changed
- Method signature:
AlarmService : external fun overlays(): ArrayList<OverlayInfo>?
toexternal fun overlays(): OverlayMutableCollection?
MapViewPreferences : external fun overlays(): ArrayList<OverlayInfo>?
to externalfun overlays(): MapViewOverlayCollection?
MapView.setZoomLevel
allows nullxy
input.MapView.setSlippyZoomLevel
allows nullxy
input.
Removed
- Methods:
MapViewPreferences
:enableMapRenderingFeature
,isMapRenderingFeatureEnabled
,setMapRenderingFeaturePosition
,setMapRenderingFeatureRect
,getMapRenderingFeatureRect
Fixed
- Issue regarding
SdkSettings
when releasing the sdk then recreate it again. - Touch events not triggered.
[7.1.21.24.F957BE25] - 2021-06-15
Added
- Easy searching methods for
SearchService
. - Methods: in
MapDetails : getCountryNameByIndex
,getCountryImageByIndex
,getCountryIsoByIndex
. - Methods:
Route.getInstructions
- Methods:
ContentStore.checkForUpdate
,OffboardListener.onAvailableContentUpdate
- Methods:
MapView.presentRoutes
,MapView.hideRoutes
- Methods: in
ImageDatabase
:getTollImage
,getFerryImage
,getGreenBallImage
- Enum:
EGenericCategoriesIDs
and afferent methods inGenericCategories
- Methods:
getCurrentPosition
,getCurrentImprovedPosition
- Interface:
INetworkListener
- Methods:
MapView.defaultMapViewListener
if no listener was provided when view had been created. - SDK token can also be passed through
GemSurfaceView
’s constructor or through surface’s xml tag:app:sdkToken="YOUR_TOKEN"
- Methods:
ContentStore
’s methods related toEContentType
. - Methods: produce for
Path
. - Methods: in
MapViewListener
:onEnterFollowingPosition
,onExitFollowingPosition
,onCursorSelectionUpdatedLandmarks
,onCursorSelectionUpdatedOverlayItems
onCursorSelectionUpdatedTrafficEvents
,onCursorSelectionUpdatedRoutes
,onCursorSelectionUpdatedMarkerMatch
ContentStore.asyncGetStoreContent
will return the list on complete trigger (OnContentStoreAsyncCompleted
)- Methods:
ContentStoreItem.asyncDownload
with lambdaonStarted
,onProgress
andonCompleted
. - Methods: in
SearchPreferences
:addCategoriesFilter
,removeCategoriesFilter
for fast adding category filters. - Methods: produce for
Image
. - Default animation for
MapView
center on or follow position methods. Landmark
constructor with name, latitude, longitude for fast writing.- Methods:
NavigationService.startNavigation
only with destinationLandmark
. - Methods:
RoutingService.calculateRoute
only with destinationLandmark
. - Methods:
Path.toLandmark
to avoid usingRouteBookmarks.setWaypointTrackData
as conversion. - Methods:
MapView.display
,MapView.hidePath
- Methods:
Rgba.red
,Rgba.green
,Rgba.blue
- Methods:
PTRouteInstruction.isCommon
,RouteInstruction.isCommon
- Methods:
PTRouteSegment.isCommon
,RouteSegment.isCommon
RouteSegment.isPublicTransportSegment
which is an alias forRouteSegment.isCommon
- Methods:
PTRouteSegment.isStationWalk
- Methods: Easy search in current visible area on a map. see
SearchService
- Category filters can be passed directly to
SearchService
methods. MapView.transformScreenToWgsListArea
allows null input.- Methods:
DataBuffer
constructor with ByteBuffer input. - Methods:
MapView.activateHighlight
method only for an element. MarkerCollectionDisplaySettings
builder constructor, all inputs are null by default.- Methods:
Marker.add
,Marker.update
with latitude and longitude for fast writing. - Methods:
PositionService.getImprovedPosition
Changed
ETurnInfoType
,ETurnType
,ETurnWaypointType
merged intoETurnEvent
MarkerCollection.getGroupHeadMarker
renamed toMarkerCollection.getPointsGroupHead
MarkerCollectionDisplaySettings.groupingMaxZoomLevel
renamed topointsGroupingZoomLevel
MarkerCollectionDisplaySettings.lowDensityGroupImage
renamed toMarkerCollectionDisplaySettings.lowDensityPointsGroupImage
MarkerCollectionDisplaySettings.mediumDensityGroupImage
renamed toMarkerCollectionDisplaySettings.mediumDensityPointsGroupImage
Route.exportGPX
renamed toRoute.exportAs
EPathImportFormat
renamed toEPathFileFormat
- Parameters order for:
NavigationService.startSimulation
RouteBookmarks
’s memberssetWaypointTrackData
,getWaypointTrackData
,waypointHasTrackData
,reverseWaypointTrackData
,setWaypointTrackDepartureAndDestination
moved as statistics since they are helper methods.- Renamed
EAnimation.AnimationLinear
toEAnimation.Linear
. Same for rest of members. - Removed method input parameter for
PositionService.getPosition
.
Removed
TurnDetails.getInfoType
ERouteSegmentType
PTRouteInstruction/RouteInstruction.getInstructionType
PTRouteSegment/RouteSegment.getSegmentType
RouteSegment.isSignificant
[7.1.21.22.98275CBE] - 2021-06-02
Added
GemSdk.initWithDefaults(context, token)
. Token is optional. Initializes the Sdk in a easy to use manner by providing default: Timer Service, Application Paths, Language, Network Provider. Also if the token is not provided it will finally attempt to retrieve it fromAndroidManifest.xml
as seen in examples before. Initializes theDefaultSoundSession
- Ease of use constructors for:
SearchService
,RoutingService
. Allows user to provide directly onStarted andonCompleted
lambdas. ProgressListener.onComplete
’s reason code is now directly aSdkError
instead of Int.GemSurfaceView
will initGemSdk
if not already initialized by callingGemSdk.initWithDefaults
- By default
GemSurfaceView
will create aMapView
. To disable this please use the attributeapp:createDefaultMapView="false"
- Exposed access to the default MapView created by the
GemSurfaceView
. seegetDefaultMapView()
,releaseDefaultMapView()
GemSdk.release
is called by default onSdkCall.execute{ }
[7.1.21.18.0D3FDE9D] - 2021-05-06
Added
- Method:
PositionData.isValid
- Methods:
PermissionHelper
:hasPermission
,hasPermissions
,requestPermissions
,onRequestPermissionsResult
Removed
- Enums:
EApiCustomer
,EApiProduct
,EApiHosting
,EApiFlavor
- Class:
AppVariant
Fixed
= Bad method name: getTruckProfile(value)
to setTruckProfile(value)
[7.1.21.17.B6FA7F67] - 2021-04-26
Added
- Enum value:
EContentUpdaterStatus.CheckForUpdate
. - Method:
CommonSettings.setLanguageAsString
. - Value:
FeatureIds.MapDebugDetalisFeatureId
. - Methods:
MapView.getNorthFixedFlag
,MapView.setNorthFixedFlag
. - Methods:
MapViewPreferences.getsetRotationAngle
,MapViewPreferences.setRotationAngle
. - Method:
MapViewPreferences.setMapStyleByDataBuffer
. - Method:
MapViewPreferences.setMapStyleByContentStoreItem
. - Method:
MapViewMarkerCollections.removeCollection
. - Class:
OverlayCategory
. - Method:
OverlayInfo.getCategories
. - Class:
TruckProfile
. - Methods:
RoutePreferences.getsetTruckProfile
,RoutePreferences.setTruckProfile
- EnumValues:
EDataInterruptionReason
:AudioDeviceInUseByAnotherClient
,VideoDeviceInUseByAnotherClient
Changed
- Renamed class
MapService
toMapView
. - Renamed class
MapServiceConfiguration
toMapSceneConfiguration
. - Renamed class
MapServiceConfigurationListener
toMapSceneConfigurationListener
. - Renamed
EImagePixelFormat.UNKNOWN
toEImagePixelFormat.Unknown
. - Renamed enum value:
EAnimation.Fly
toEAnimation.AnimationLinear
.
[7.1.21.15.B5218653] - 2021-04-14
Added
- Method:
ProgressListener.create
based on provided lambdas - Method:
CommonSettings.setDefaultNetworkProvider
Changed
CommonSettings
is object now instead of class- No longer need to manually create the
DefaultNetworkManager
. UseCommonSettings.setDefaultNetworkProvider
method instead. - Renamed
d3scene.GemMapSurface
tocore.GemSurfaceView
. - Simplified APIS for:
SearchService
,RoutingService
,SocialOverlay
,CommonSettings
,ContentStore
,GuidedAddressSearchService
.
[7.1.21.14.7762644] - 2021-04-05
Added
- Param:
GemSdk.initialize
needs ISO3 language string and TTS language string or use defaults. - Method:
MapView.transformScreenToWgsListArea
. - Method:
SdkCall.postAsync
andSdkCall.postSync
. - Method:
Screen.getOpenGLContext
. - Method:
GemSdk.getAppVariant
. - Enum Value:
EMapExtendedCapability.TrimmedHeader
Changed
- Renamed class
VectorItem
toMarker
. - Renamed class
VectorDataSource
toMarkerCollection
. - Renamed class
VectorMatch
toMarkerMatch
. - Renamed class
VectorDataSourceCollection
toMapViewMarkerCollections
. - Renamed class
VectorItemCustomRenderData
toMarkerCustomRenderData
. - Renamed class
VectorDataSourceDisplaySettings
toMarkerCollectionDisplaySettings
. - Renamed enum
EVectorDataType
toEMarkerType
- Renamed enum
EVectorMatchType
toEMarkerMatchType
- Renamed package
routingandnavigation
toroutesandnavigation
. - Renamed package
searching
toplaces
. - Renamed package
datasource
tosensordatasource
. - Renamed method
SignpostImageRenderSettings.setBorderSizePx
toSignpostImageRenderSettings.setBorderSize
, analog for get - Renamed enum
EEntranceLocationsType
toEEntranceLocationType
- Renamed method
LandmarkStoresCollection.getCategoriesCount
toLandmarkStoresCollection.getCategoryCount
. - Renamed method
LandmarkBrowseSession.getLandmarksCount
toLandmarkBrowseSession.getLandmarkCount
. - Renamed method
LandmarkStore.getLandmarkStoreId
toLandmarkStore.getId
. - Renamed method
LandmarkStore.getLandmarkStoreType
toLandmarkStore.getType
. - Renamed method
LandmarkStore.getLandmarkStoreName
toLandmarkStore.getName
. - Renamed method
MapView.activateMarkersHighlight
toMapView.activateOverlayItemsHighlight
. - Renamed method
MapView.cursorSelectionMarkers
toMapView.cursorSelectionOverlayItems
. - Renamed method
MapServiceConfiguration.setMapServiceConfigurationListener
toMapServiceConfiguration.setListener
. - Renamed method
MapServiceConfiguration.loadConfiguration
toMapServiceConfiguration.load
. - Renamed method
MapServiceConfiguration.saveConfiguration
toMapServiceConfiguration.save
. - Renamed method
MapViewPreferences.markers
toMapViewPreferences.overlays
. - Reorganized classes in the new packages.
Fixed
- Android plays iOS recorded Log and vice versa.
[7.1.21.10.A60EFE2C] - 2021-03-11
Added
ApiCallLogger.onUseSytemLogging
Canvas.getViewportF
GemSdk.getDataSavePolicy
andGemSdk.setDataSavePolicy
GeographicArea.makeIntersection
andGeographicArea.makeUnion
MarkerOverlaysService.enableOverlay
,MarkerOverlaysService.disableOverlay
andMarkerOverlaysService.isOverlayEnabled
RecorderConfiguration.deviceModel
and set for it.SdkList
ofLandmarkPosition
andMarkerPosition
.SocialOverlay.searchAroundPOIAndReports
,searchAround
,searchAlongRoute
,searchReportsForPOIs
,refreshReports
Time.getLocalTime
andTime.getUniversalTime
Changed
Animation.getMethod
renamed toAnimation.getType
Animation.getFly
renamed toAnimation.getFlyType
[7.1.21.10.39CEC079] - 2021-03-09
Added
- constructor to
GemMapSurface
AlarmListener insideCityArea
flag for:onHighSpeed
,onNormalSpeed
,onSpeedLimit
- default implementation for:
NetworkManager
,NetworkProvider
,TimerService
Removed
AlarmListener.onLowSpeed
AlarmService.setHighSpeedThreshold
andAlarmService.getHighSpeedThreshold
AlarmService.setLowSpeedThreshold
andAlarmService.getLowSpeedThreshold
Fixed
- Dealloc of SDK, surface.
[7.1.21.8.95555709] - 2021-02-26
Added
- Added missing doc
isReference
method toNativeRefObj
. Will tell if a certain object is Ref or not.
Changed
- Renamed all enums starting with T* to E*. ex:
TRouteType
toERouteType
- Renamed some non upper camel case classes to met upper camel case
- Sdk packages
Removed
- Duplicate classes that hold Ref. ex:
RouteInstructionRef
merged intoRouteInstruction
.
Fixed
- Map not working well when put in fragment
- Crash due to bad handling of
gem::ApiRef<T>
[7.1.21.8.ECCB3B03] - 2021-02-22
Added
- Param:
CanvasBufferRenderer.uploadFrame
addedbufferType : EDirectBufferType
Changed
- Renamed class:
View
toMapView
- Renamed class:
ViewListener
toMapViewListener
- Renamed class:
Camera
toMapCamera
- Renamed class:
ViewPreferencesRef
toMapViewPreferencesRef
- Renamed class:
Scene
toMapScene
- Renamed method:
GuidedAddressSearchService.cancelRequest
toGuidedAddressSearchService.cancelSearch
- Renamed method:
SearchPreferences.maxMatches
toSearchPreferences.getMaxMatches
[7.1.21.6.3S80B91A] - 2021-02-12
Added
- new enum:
TViewCameraTransitionStatus
- new param:
ViewListener.onViewRendered
,camStatus: TViewCameraTransitionStatus
- new method:
ViewListener.onMarkerItemRender
- new methods:
RectangleGeographicArea
: intersects, contains, setIntersection, setUnion - new method:
ViewPreferencesRef.vectors
- new param:
Recorder.addUserData
,dataTypeIdentifier: Long
- constructor:
MarkerCollection
MountInformationData
andEDataType.MountInformation
Changed
TPositionDisplay
’s values changed fromEPosition*
toEPD_*
TRouteDisplayMode
’s values changed fromERouteDisplay*
toERDI_*
TPathImportFormat
’s values changed fromE*
toEPI_*
- renamed:
TViewTransitionStatus
toTViewDataTransitionStatus
- renamed:
TTransportMode
toTRouteTransportMode
- renamed:
TResultDetails
toTRouteResultDetails
- renamed:
TAlternativesSchema
toTRouteAlternativesSchema
- renamed:
TPathAlgorithm
toTRoutePathAlgorithm
- renamed:
TSortOrder
toTRouteBookmarksSortOrder
- renamed:
DataSourceListener.onDataInterruption
toDataSourceListener.onDataInterruptionEvent
and added param ended:Boolean
Removed
- method:
TRgba.defaultColor
- param:
MarkerCollection.add
’s paramname: String
- method:
OrientationData.isMountedForCameraUse
- methods:
ViewListener
:onMarkerRender
,onMarkerItemRender
[7.1.21.3.E776B859] - 2021-01-18
Added
- Weather Service. See
Weather.kt
TimeDistanceCoordinate
structureMarker
methods:getId
,getPartCount
,delPart
,getPartArea
and part param toadd
,del
,update
,getCoordinates
SenseData.getTime
methodOrientationData.isMountedForCameraUse
methodRouteBase.getTimeDistanceCoordinates
methodTSoundMark
structure andLogMetadata.getSoundMarks
LogMetadata.getLogSize
methodView.cursorSelectionVectors
andView.isCameraMoving
methodsTExtraInfo
enum andLandmark.getExtraInfo
method based on enum.Debug.getAllWeatherConditions
andDebug.getResourceUpdaterTransferStats
methods
Changed
- All timestamps are now expressed in Long UTC milliseconds instead of Double seconds.
- Some return types or input params are not
ArrayList<Abc>
they are nowAbcList
. TPathAlgorithm.EPA_Osrm
changed intoTPathAlgorithm.EPA_ExternalCH
.- Renamed
SenseData.getTimestamp
toSenseData.getAcquisitionTimestamp
.
Removed
ERecorderStatus.Saving
.TWgsRectangle
structure.MarkerOverlayInfoRef.getNearbyInfoUrl
.RectangleGeographicArea.set(value: TWgsRectangle)
.
[7.1.20.51.E4F23422] - 2020-12-23
Added
LogMetadata.produ
.TProxyDetails
Changed
TRecorderConfiguration.recordingAudio
renamed toTRecorderConfiguration.enableAudio
.Recorder.setAudioMuted
split intoRecorder.startAudioRecorder
,Recorder.stopAudioRecorder
.NetworkListener.onConnectDidFinished
andNetworkListener.onConnectFinished
signature.DataSource.addListener
signature.
Removed
DataSource.startNotifyCameraBuffers
,DataSource.stopNotifyCameraBuffers
.
Fixed
- Crash when using
PTRouteInstructionRef
.
[7.1.20.51.BD965DE6] - 2020-12-16
Added
CanvasListener
:onPointerDown
,onPointerMove
,onPointerUp
,onPinchSwipe
.TCameraConfiguration
, get/set for:focalLength
,physicalSensorWidth
,physicalSensorHeight
.TMarkerMatchType.EVMT_CoordinateGroup
.TMarkerCollectionDisplaySettings
.MarkerCollection.getArea
.TTSLocalization
.FeatureIds.TTS_LOCALIZATION_FEATURE_ID
.
Changed
- CanvasListener ’s onRotate signature.
[7.1.20.50.9977856E] - 2020-12-09
Added
DataSource
:getConfiguration
andsetConfiguration(dataType)
.DataSource
: configuration param to addListener, default null.TRecorderConfiguration
:keepMinimumSeconds
,diskSpaceLimit
,recordingAudio
and setters.Recorder
:setKeepMinimumSeconds
,setDiskSpaceLimit
,getConfiguration
,setChunkDurationInSeconds
,setMinimumBatteryPercent
,setContinuousRecording
.TLandmarkBrowseSessionSettings
:coordinates
andsetCoordinates
.Playback
:step
.
Changed
TRecorderConfiguration
: renamedtempDir
tologsDir
.
[7.1.20.48.F5AF9EE2] - 2020-11-23
Added
BatteryData.EPluggedType
.BatteryData.getLowBatteryNoticed
.BatteryData.getPluggedType
.BatteryData.getVoltage
.BatteryData.getTemperature
.PositionData.getLocationTime
.TLandmarkBrowseSessionSettings
objectTLandmarkOrder
enum
Changed
ActivityData.EType
.BatteryData.EState
.BatteryData.EHealth
.CompassData.EAccuracy.Unreliable
renamed toUnknown
.- return type of
startNotifyCameraBuffers
. createLandmarkBrowseSession
input param.- renamed camera frame’s field
recordedAngle
torotationAngle
. - merged
EVideoQuality
,Resolutions
andCameraResolutions
enums intoEResolution
.
[7.1.20.47.F1A369D1] - 2020-11-16
Added
PermissionsHelper
andPermissionsListener
.LandmarkStoreListener.onBrowseSessionInvalidated
.DataSource.startNotifyCameraBuffers
.DataSource.stopNotifyCameraBuffers
.SenseDataSource enum EPlayingStatus
.DataSourceListener.onPlayingStatusChanged
.
Changed
LandmarkStore
’s methods:registerBrowseSession
,unregisterBrowseSession
,getBrowseSessionLandmarksCount
,getBrowseSessionLandmarks
merged intoLandmarkBrowseSession
object.
Fixed
- Recorded video’s orientation for external players like VLC.
Removed
DataSource.getLastUpdateTimestamp
.ViewPreferences.enableAutomaticZooming
.ViewPreferences.isAutomaticZoomingEnabled
.
Issues
DataSource
Pause/Resume might go into deadlock.
[7.1.20.44.4215D8A2] - 2020-11-1
Added
CommonSettings.verifyAppAuthorization
.
Fixed
Datasource
’sgetPlayback()
not returning null.
[7.1.20.44.4FA0F84F] - 2020-10-26
Added
RecorderBookmarks.markLogProtected
.TRecorderConfiguration.continuousRecording
.MarkerCollectionCollectionRef.indexOf
.MarkerMatch.getItemIndex
.MarkerCollection.indexOf
.RouteBookmarks.getFilePath
.EnumHelp
to cast easier an int to a specific enum type.- Added
TFrameFit
enum and used intoCanvasBufferRenderer
. recordedAngle
inTCameraConfiguration
.PermissionsHelper
to notify when permissions status has been changed.
Changed
GEMSdk
renamed “mmc” naming to “sdcard”.RecorderBookmarks
“saved logs” renamed to “protected logs”.- Input parameters of
RouteBookmarks.Produce
. EVideoQuality
enum values.RecorderListener
replaced withProgressListener
.TEncoding
,EPixelFormat
,ImageFormat
all replaced withEImagePixelFormat
.
Removed
Recorder.saveRecording
TRecorderConfiguration.loopRecordingSeconds
LandmarkStoreService.getGenericCategoriesLandmarkStoreId
- Removed buffer type from
CameraData.getDirectBuffer
.
Fixed
- Crash when releasing
CanvasBufferRenderer
. - Bluish image when recording/play video log.
- Video rotation when playing a log.
- Bad
TCameraConfiguration
when playing a log.
[Unreleased]
- [7.1.20.43.693001B4]: Update demo apps for SDK v7.1.20.43.693001B4
- [7.1.20.42.AF307B1F]: Update demo apps for SDK v7.1.20.42.AF307B1F
- [7.1.20.41.37C8C713]: Update demo apps for SDK v7.1.20.41.37C8C713
- [7.1.20.40.76465CE8]: Update demo apps for SDK v7.1.20.40.76465CE8
- [7.1.20.39.5E1A0550]: Initial release