addPositionListener method

GemPositionListener addPositionListener(
  1. void positionUpdatedCallback(
    1. GemPosition position
    )
)

Register a new listener for updates.

The listener also gets updates when the availability state of the data type provider changes.

Parameters

  • IN positionUpdatedCallback The callback the listener registers for.

Returns

  • GemPositionListener

Throws

  • An exception if it fails.

Implementation

GemPositionListener addPositionListener(
  final void Function(GemPosition position) positionUpdatedCallback,
) {
  final GemPositionListener posListener = GemPositionListener(
    onNewPositionCallback: positionUpdatedCallback,
  );
  final String result = GemKitPlatform.instance.callObjectMethod(
    jsonEncode(<String, Object>{
      'id': 0,
      'class': 'PositionService',
      'method': 'registerSenseDataListener',
      'senseDataType': DataType.position.id,
    }),
  );

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