brave-author-62043
03/24/2026, 5:54 PMtall-airline-16756
03/24/2026, 5:54 PMtall-airline-16756
03/24/2026, 5:56 PMsetLogExtension((level, msg, context) => console.log(level, msg, context));
• Android
◦ Ensure MediaProjection permissions are granted and that any required screen capture flow completes fully before publishing.
◦ Check Logcat for exceptions coming from the app or native encoder.
• iOS
◦ Confirm you’re using the proper broadcast extension / screen capture flow; improper setup can cause problems.
◦ Gather device crash reports if the app is terminating.
• General
◦ Test with the minimal set of tracks (e.g., stop camera and publish only screen) to see if the combination of camera + screen triggers the crash.
◦ Check device CPU / memory while starting screen share — resource exhaustion can cause native crashes.
◦ If network bandwidth is constrained, try disabling simulcast or lowering screen share resolution/bitrate.
When you reply with the info above (especially platform, SDK version, and any console/crash logs), I’ll analyze the details and give a specific remediation path or next debugging commands to run. If you can paste errors or logs directly here, that will speed up the diagnosis.
Sources: lib/src/participant/local.dart | livekit-android-sdk/src/main/java/io/livekit/android/room/participant/Local... | How to Send Logs from the JavaScript SDK to Providers like Datadog, with interactive elementsbrave-author-62043
03/24/2026, 5:59 PMtall-airline-16756
03/24/2026, 5:59 PMbrave-author-62043
03/24/2026, 6:32 PM// Run LiveKit connection checks with timing
const checker = new ConnectionCheck(url, token);
const ws = await timedCheck(() => checker.checkWebsocket());
const webrtc = await timedCheck(() => checker.checkWebRTC());
const turn = await timedCheck(() => checker.checkTURN());tall-airline-16756
03/24/2026, 6:32 PM