handleCallInterruptionCallbacks method
Future<void>
handleCallInterruptionCallbacks(
- void onInterruptionStart()?,
- void onInterruptionEnd()?, {
- AndroidInterruptionSource androidInterruptionSource = AndroidInterruptionSource.audioFocusAndTelephony,
- AndroidAudioAttributesUsageType? androidAudioAttributesUsageType,
- AndroidAudioAttributesContentType? androidAudioAttributesContentType,
Implementation
Future<void> handleCallInterruptionCallbacks(
void Function()? onInterruptionStart,
void Function()? onInterruptionEnd, {
AndroidInterruptionSource androidInterruptionSource =
AndroidInterruptionSource.audioFocusAndTelephony,
AndroidAudioAttributesUsageType? androidAudioAttributesUsageType,
AndroidAudioAttributesContentType? androidAudioAttributesContentType,
}) async {
if (!Platform.isAndroid && !Platform.isIOS) {
throw UnimplementedError(
'handleCallInterruptionCallbacks is only supported on Android and iOS');
}
await WebRTC.invokeMethod(
'handleCallInterruptionCallbacks',
<String, dynamic>{
if (Platform.isAndroid)
'androidInterruptionSource': androidInterruptionSource.name,
if (Platform.isAndroid && androidAudioAttributesUsageType != null)
'androidAudioAttributesUsageType':
androidAudioAttributesUsageType.name,
if (Platform.isAndroid && androidAudioAttributesContentType != null)
'androidAudioAttributesContentType':
androidAudioAttributesContentType.name,
},
);
final mediaDeviceNative = mediaDevices as MediaDeviceNative;
mediaDeviceNative.onInterruptionStart = onInterruptionStart;
mediaDeviceNative.onInterruptionEnd = onInterruptionEnd;
}