Fix iOS build: use LiveKit 2.15.3 audio API (drop nonexistent setEngineAvailability)

The build failed: 'AudioManager' has no member 'setEngineAvailability' — that API
is only on unreleased/main docs, not in the resolved LiveKitClient 2.15.3. Use the
API that actually ships (per audio.md): disable LiveKit's automatic AVAudioSession
configuration (AudioManager.shared.audioSession.isAutomaticConfigurationEnabled =
false) and configure the session ourselves in CXProvider didActivate. Removed all
setEngineAvailability(.none/.default) calls.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-31 18:24:54 +05:30
parent 36edc6de12
commit c472ee2618
2 changed files with 12 additions and 11 deletions
@@ -18,8 +18,9 @@ Pod::Spec.new do |s|
s.ios.deployment_target = '14.0'
s.dependency 'Capacitor'
# LiveKit iOS SDK — carries the call media NATIVELY so audio survives backgrounding AND coordinates with
# CallKit's audio session (AudioManager.setEngineAvailability on didActivate/didDeactivate), which the
# WebView's WebRTC could not do. Pulls in the WebRTC binary transitively.
# CallKit's audio session (auto-config OFF via AudioManager.shared.audioSession.isAutomaticConfigurationEnabled;
# we configure the session in CXProvider didActivate), which the WebView's WebRTC could not do. Pulls in the
# WebRTC binary transitively.
s.dependency 'LiveKitClient', '~> 2.0'
# CallKit + PushKit + AVFoundation are system frameworks (no external pod).
s.frameworks = 'CallKit', 'PushKit', 'AVFoundation'