addImprovedPositionListener static method

GemPositionListener addImprovedPositionListener(
  1. void positionUpdatedCallback(
    1. GemImprovedPosition position
    )
)

Registers a callback to receive improved position updates from the active data source.

The provided callback is invoked whenever a new improved GemImprovedPosition is available from the configured position data source (live GPS or an external source). The returned GemPositionListener can be passed to removeListener to stop receiving updates.

Parameters

Returns

Also see:

Implementation

static GemPositionListener addImprovedPositionListener(
  final void Function(GemImprovedPosition position) positionUpdatedCallback,
) {
  final GemPositionListenerImpl posListener = GemPositionListenerImpl(
    onNewImprovedPosition: positionUpdatedCallback,
  );
  final String result = GemKitPlatform.instance
      .callObjectMethod(<String, Object>{
        'id': 0,
        'class': 'PositionService',
        'method': 'registerSenseDataListener',
        'senseDataType': DataType.improvedPosition.id,
      });

  posListener.id = jsonDecode(result)['result'];
  GemKitPlatform.instance.registerEventHandler(posListener.id, posListener);
  return posListener;
}