Troubleshooting Twilio's Android Video SDK can vary based on a number of factors including the SDK version used, Android version, hardware, and more. This guide includes a checklist to help you begin troubleshooting Android Video SDK issues, as well as a list of recent media improvement features.
Notice: Twilio support highly recommends reading through our Getting Started on Android SDK guide before reading the rest of this document, as it typically helps solve the majority of the issues developers will encounter.
- Build Prerequisites: Ensure your build system is inline with our Android Prerequisites.
- Recent SDK Version: Keep your application current by using the latest version. As mentioned in the Platform SDK Support Policy, we recommend updating the SDK at a bare minimum once a quarter.
- Changelog: Read through the Known Issues, New Features, and Bug Fixes in the most recent Android SDK Changelog as we often will add new functionalities to the SDK, which may solve an issue a developer and/or end-user may encounter.
- API Documentation: Whether using our Android API or our Kotlin Extension, ensure that you are reading the correct API documentation for the same version as the SDK version being deployed. The Changelog will have the proper documentation linked with the version released.
- Supported Devices: Often end-users will not be using supported devices, therefore it is important for developers to inform their end-users of our Supported Devices requirements.
- Audio: As Android can be deployed on a wide variety of devices, by a plethora of manufacturers, Android devices may encounter audio issues. For more information please review the dedicated Troubleshooting Android Audio section in our documentation. Additionally, the Twilio Video Android SDK does not officially support audio device management, please use AudioSwitch to manage audio focus and audio devices in your application.
- Physical Devices: Don’t trust simulators! As the Android SDK is using WebRTC technology and depends heavily on the capabilities of the device, often simulators and actual devices have inconsistent behavior, therefore if possible, test on physical devices.
- Reproduce with the Quickstart: Twilio offers an Android Video Quickstart which allows developers to clone the repository to reproduce the error to share with Twilio engineers via Android Quickstart GitHub Issues.
- Reproduce with the Ahoy! Demo App: Twilio offers an Ahoy! Android Demo App which is a great way to check if an issue can be replicated with our out of the box Twilio Android App. If the issue cannot be reproduced, that indicates that the issue lies within the app in development, or it’s a unique device, or environment issue.
- Diagnostics: Video Insights in the console can provide information about an Android participant, as long as it hasn’t been disabled in the Android SDK’s connect options (insights is enabled by default). Twilio’s Hosted Video Diagnostic App or a developer's white labeled Diagnostic App can also be used for testing via Mobile Chrome on the Android device.
- Debug Log: Often engineering and support will need the debug log from the Android device for troubleshooting, please review How to enable Debug Logging.
- Support submission: Before submitting a support request, please first look at the “Issues” section on our Video Android Quickstart GitHub repository to see if you can find your issue with an answer posted, and the Getting Help with Android SDK section of our documentation, as this outlines what information is needed when submitting a request to speed up the support process.
Recent Android Media Improvement Features
- Krisp: In the 7.5.1 changelog, we released Krisp, a custom audio device utilizing the SDK's AudioDevice framework that uses Krisp's audio processing solution called NoiseCancellationAudioDevice.
- Adaptive Simulcast: In the 7.4.0 changelog, we released Adaptive Simulcast for Android which, when enabled in group rooms of 3 or more participants, may significantly reduce bandwidth consumption, thereby improving overall media quality.
- MediaTek Chipsets: In the 7.3.1 changelog, we added a configuration property to support MediaTek hardware encoding.
- Encoders: Rarely, some devices have issues with encoders. Please review our 7.1.0 changelog, describing the ability to configure enabling/disabling support for video codec hardware encoders via global configuration and a properties file.