From b18bd55c2c7494ce320c533468260debe292fa56 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 17 Jun 2026 09:39:32 +0000 Subject: [PATCH] v2.26.1 --- .changeset/audioswitch-stale-switch-on-restart.md | 5 ----- .changeset/dirty-cherries-thank.md | 5 ----- CHANGELOG.md | 8 ++++++++ README.md | 4 ++-- gradle.properties | 2 +- package.json | 2 +- 6 files changed, 12 insertions(+), 14 deletions(-) delete mode 100644 .changeset/audioswitch-stale-switch-on-restart.md delete mode 100644 .changeset/dirty-cherries-thank.md diff --git a/.changeset/audioswitch-stale-switch-on-restart.md b/.changeset/audioswitch-stale-switch-on-restart.md deleted file mode 100644 index 37994cb5a..000000000 --- a/.changeset/audioswitch-stale-switch-on-restart.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"client-sdk-android": patch ---- - -Fix audio output getting stuck on the earpiece after reconnecting on a reused `Room` (Android 12+). `AudioSwitchHandler.stop()` now clears its `audioSwitch` reference synchronously (and the field is `@Volatile`) so a subsequent `start()` reliably observes the teardown and re-creates the switch, instead of racing the posted teardown runnable and reusing a stale, already-stopped switch. diff --git a/.changeset/dirty-cherries-thank.md b/.changeset/dirty-cherries-thank.md deleted file mode 100644 index 30c865d91..000000000 --- a/.changeset/dirty-cherries-thank.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"client-sdk-android": patch ---- - -Emit `TrackSubscriptionFailed` events through `Room` and `RemoteParticipant` when the server detects a subscription failure diff --git a/CHANGELOG.md b/CHANGELOG.md index 03db6b129..2092b0ec1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # client-sdk-android +## 2.26.1 + +### Patch Changes + +- Fix audio output getting stuck on the earpiece after reconnecting on a reused `Room` (Android 12+). `AudioSwitchHandler.stop()` now clears its `audioSwitch` reference synchronously (and the field is `@Volatile`) so a subsequent `start()` reliably observes the teardown and re-creates the switch, instead of racing the posted teardown runnable and reusing a stale, already-stopped switch. - [#967](https://github.com/livekit/client-sdk-android/pull/967) ([@YashJainSC](https://github.com/YashJainSC)) + +- Emit `TrackSubscriptionFailed` events through `Room` and `RemoteParticipant` when the server detects a subscription failure - [#959](https://github.com/livekit/client-sdk-android/pull/959) ([@davidliu](https://github.com/davidliu)) + ## 2.26.0 ### Minor Changes diff --git a/README.md b/README.md index db8415a7d..cc7345b19 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ LiveKit for Android is available as a Maven package. ```groovy title="build.gradle" ... dependencies { - def livekit_version = "2.26.0" + def livekit_version = "2.26.1" implementation "io.livekit:livekit-android:$livekit_version" @@ -58,7 +58,7 @@ dependencies { implementation "io.livekit:livekit-android-track-processors:$livekit_version" // Snapshots of the latest development version are available at: - // implementation "io.livekit:livekit-android:2.26.1-SNAPSHOT" + // implementation "io.livekit:livekit-android:2.26.2-SNAPSHOT" } ``` diff --git a/gradle.properties b/gradle.properties index 2254cf893..d1a9ea6c5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -33,7 +33,7 @@ kapt.use.worker.api=true ############################################################### GROUP=io.livekit -VERSION_NAME=2.26.1-SNAPSHOT +VERSION_NAME=2.26.1 POM_DESCRIPTION=LiveKit Android SDK, WebRTC Rooms diff --git a/package.json b/package.json index a1d5ff485..c6296ea9c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "client-sdk-android", - "version": "2.26.0", + "version": "2.26.1", "repository": "https://github.com/livekit/client-sdk-android.git", "license": "Apache License 2.0", "private": true,