Repository navigation
Shoplive Android SDK 3.0.2
Shoplive Android SDK 3.0.2
No SDK sources — AAR / POM artifacts only.
What's changed
Breaking
ShopliveStreamer.intent(...)is removed. Launch the broadcast screen withprepareIntentand start theIntentdelivered to its callback.start(), the streamer delegate, broadcast state, and state/error events are unchanged.- The previous studio screens and static studio entry points are removed. Update any code that still starts those screens before upgrading.
- RTMP and SRT publishing no longer uses the previous encoder stack.
shoplive-rootencoderis published with this release and is pulled in automatically when you depend onshoplive-streamer-sdk.
Changed
- Leaving the app no longer destroys the player. HLS pauses and resumes on return (a live stream reloads at the live edge). WebRTC closes its connection in the background and opens it again on return.
- WebRTC playback starts only when both the signaling URL and the discovery URL are present.
- Volume keys and audio-focus options are now applied:
sound.isVolumeKeyEnabledandsound.autoResumeOnFocusGained. Turning the volume all the way down mutes playback; raising it unmutes. HLS pauses when another app takes audio focus and can resume when focus returns. - The player notifies the page when the app moves to the background and back to the foreground.
- Ending a broadcast stays on the same screen instead of closing it. A fatal broadcast error keeps the screen and offers retry or exit. Retry does not show the start countdown again and keeps the elapsed time.
- A broadcast that stays in the background for about five minutes returns to idle.
- The on-screen bitrate readout is removed. Connection and reconnect status stay on the status chip.
- If you set a WebView domain allowlist, navigation is limited to those hosts plus
shoplive.cloud,shopliveapi.com, andshoplive.show. An empty list still allows navigation. The native bridge is available only on Shoplive pages, including when the allowlist is empty.
Fixed
- A long uninterrupted broadcast could abort the process after native memory grew without bound on some OS versions.
- Muted WebRTC playback could become audible when the media volume was lowered.
- A live HLS stream could fail a few seconds after returning from the background.
setAccessKeyno longer crashes when the key format is invalid. An invalid key is ignored and the previous key is kept. Issued alphanumeric keys are accepted.
Gradle
maven {
url = uri("https://sdk.shoplive.cloud/maven-repo")
}
// Declaring the entry points is enough — submodules resolve as POM transitive dependencies.
implementation("cloud.shoplive:shoplive-player-sdk:3.0.2")
implementation("cloud.shoplive:shoplive-streamer-sdk:3.0.2")Requirements
| Minimum Android | API 23 |
| compileSdk | 36 |
| Kotlin | 1.9.25 |
| Distribution | Maven repository (Gradle) |
Artifacts
Every .aar and .pom ships with a .sha256 companion — the same value that is
published to the Maven repository, so integrity can be checked before use.
cloud.shoplive:shoplive-android-webrtc:3.0.2cloud.shoplive:shoplive-core:3.0.2cloud.shoplive:shoplive-exoplayer:2.19.1.12cloud.shoplive:shoplive-media3:1.10.1.2cloud.shoplive:shoplive-player-sdk:3.0.2cloud.shoplive:shoplive-rootencoder:3.0.2cloud.shoplive:shoplive-rtmp:3.0.2cloud.shoplive:shoplive-streamer-sdk:3.0.2cloud.shoplive:shoplive-webrtc:3.0.2
Build provenance
- Source:
matrix-sdk-android@ededd8dd219fbe57ec7a60e026df52e94f4938af - Line:
international - Tag:
3.0.2