Before you continue
Before submitting a bug report, please review our troubleshooting documentation at Troubleshoot Issues | Vega Troubleshooting
If you still want to file a bug report, please make sure to fill in all the details below and provide the necessary information.
NOTE: PLEASE ONLY REPORT A SINGLE BUG USING THIS TEMPLATE.
If you’re experiencing multiple issues, please file a separate report for each.
Bug Description
1. Summary
SOFTWARE stick’s version 1401010445450
App Name:
After updating the Kepler SDK / stack to the latest version, we started experiencing severe surface lifecycle issues during video playback.
Our app uses a sequential playback flow:
Jingle image → Ad → Main video content
After the update, the video appears to be rendered on an incorrect or stale surface (likely left from the jingle phase), resulting in broken or invisible video playback.
Even after fully disabling jingles and ads, the issue persists.
“@didomi**/vega-sdk”: “0.0.2”,**
Additionally, when the Didomi SDK (WebView-bas@didomid) is initialized, the problem becomes reproducible 100% of the time. If the WebView instance is not rendered at all, playback works as expected.
The update also introduced a regression where the native system screensaver is broken — instead of the expected screensaver, an unrelated system UI screen (see screenshot) is displayed.
Bug Severity
Select one that applies
- Impacts operation of app
- Blocks current development
- Improvement suggestion
- Issue with documentation (If selected, please share the doc link and describe the issue)
- Other
2. Steps to Reproduce
-
-
Update Kepler SDK / stack to the latest available version.
-
Launch the app and start video playback.
-
Playback flow:
-
Show jingle image (pre-playback placeholder)
-
(Optional) Show ad
-
Start main video playback
-
-
Observe video rendering behavior.
-
Initialize Didomi SDK (WebView-based consent flow).
-
Let the device go idle and enter screensaver mode.
React Native components involved:
-
Custom Video component using native surface
-
Jingle placeholder rendered before playback
-
Ad playback (disabled during testing)
-
Didomi SDK WebView instance
-
3. Observed Behavior
Explain what actually happened, noting any discrepancies or malfunctions.
Video playback starts, audio is present, but video is either:
not visible, or
rendered incorrectly
It feels like the surface remains bound to the jingle image, even though:
jingles are disabled
ads are disabled
When Didomi WebView is rendered, surface issues always occur.
When the WebView instance is not rendered at all, playback works correctly.
Native system screensaver no longer behaves correctly:
Instead of the expected screensaver, a system UI screen (uninstall dialog-style screen) appears.
This happens even though the device simply transitions into native screensaver mode.
4. Expected Behavior
Describe what you expected the SDK to do under normal operation.
The surface used for jingle rendering should be properly released or replaced before video playback starts.
Video playback should always bind to a correct, fresh surface.
Presence of a WebView (Didomi SDK) should not interfere with native video surface handling.
Native system screensaver should appear normally when the device becomes idle.
4.a Possible Root Cause & Temporary Workaround
Fill out anything you have tried. If you don’t know, N/A is acceptable
Possible Root Cause:
Regression in surface lifecycle management after SDK update.
Surface is not released or reattached correctly when switching from:
jingle → ad → main content
WebView (Didomi SDK) likely interferes with surface ownership or z-order.
Screensaver issue may be related to incorrect surface or window state handling.
Temporary Workarounds Tried:
Fully disabling jingles — ❌ does not help
Fully disabling ads — ❌ does not help
Not rendering Didomi WebView at all — ✅ playback works
Delaying video start — ❌ does not help
5. Logs or crash report
(Please make sure to provide relevant logs as attachment)
For crash issues, please refer this guide for faster troubleshooting: Detect Where the App Crash Originates | Design and Develop Vega Apps
-
For issues with Kepler Studio Extension, please share log files from below folders:
~/.vscode/extensions/amazon.kepler-extension-<version>/ExtensionLogs ~/.vscode/extensions/amazon.kepler-ui-extension-<version>/ExtensionLogs
6. Environment
Please fill out the fields related to your bug below:
-
SDK Version: Output of
kepler --version -
App State:
[Foreground/Background] -
OS Information
Please ssh into the device viakepler exec vda shelland copy the output fromcat /etc/os-releaseinto the answer section below. Note, if you don’t have a simulator running or device attachedkepler exec vda shellwill respond withvda: no devices/emulators found<!-- Answer here if applicable -->
7. Example Code Snippet / Screenshots / Screengrabs
Include any relevant code or component setup in React Native that can help reproduce the bug.
import { ExampleComponent } from 'custom-sdk';
<ExampleComponent config={{ key: 'value' }} />
Playback Issues
If this is a playback issue, please provide your content URL, any pre-conditions (like geo-location), and let us know if it’s x86 or arm7.
<!-- Describe your playback issue if applicable -->
Please share the following details in addition:_
- Player SDK:
[Bitmovin, Shaka, ...] - Player SDK Version:
[e.g. 1.23]- Audio Codecs:
[AAC, ...] - Video Codecs:
[h.264, mp4] - Manifest Types:
[m3u8, dash, etc ..]
- Audio Codecs:
Q: If applicable, please provide your media/content url
If this is created dynamically, tokenized, etc please provide a way for us to access it
[N/A or Content / Media Url for testing]
Q: Are there any special headers required to reproduce the issue you are facing?
[N/A or Insert Headers]
Additionally please provide the following if possible
Provide Screenshots / Screengrabs / Logs. Please include as much information as you can that will help debug.
<!-- Answer here if applicable -->
Additional Context
Any Additional Context you would like to provide?
Add any other relevant information, such as recent updates to the SDK, dependencies, or device OS that may affect the bug.
<!-- Answer here if applicable -->