setSpeaker method

Future<void> setSpeaker(
  1. AudioSpeakerKind speaker, {
  2. bool force = false,
})

Sets the speaker to use for audio output.

Only meaningful on mobile devices.

Implementation

Future<void> setSpeaker(
  AudioSpeakerKind speaker, {
  bool force = false,
}) async {
  Log.debug('setSpeaker(${speaker.name}, force: $force)', '$runtimeType');

  if (_isMobile && (this.speaker.value != speaker || force)) {
    this.speaker.value = speaker;

    try {
      await _setSpeaker();
    } catch (e) {
      Log.warning(
        'Unable to `_setSpeaker(${speaker.name})` due to $e',
        '$runtimeType',
      );
    }
  }
}