Rate this page:


Voximplant Android SDK changelog



  • Fix: crash on call statistics processing



  • Extend WebRTC API with ability to set a TextureFilter for video frames. Available only with ICustomVideoSource.setSurfaceTextureHelper

  • Add built-in ProGuard rules for Voximplant Android SDK.

  • Bugfix and stability improvements



  • Fix: crash on camera switch on the devices with multiple back cameras

  • Add support for H264 hardware codec on Huawei smartphones

  • Update the SDK compileSdkVersion and targetSdkVersion to 29

  • Bugfix and stability improvements





  • Introduce IAudioFile API

  • Bugfix and stability improvements


  • Update SDK dependencies:

    • OkHttp version: 3.12.11
    • gson version: 2.8.6
  • AndroidX migration: 'support-annotations' dependency is replaced with 'androidx.annotation:annotation:1.1.0'

  • Introduce ICall.startScreenSharing API to share screen during a call

  • Introduce ICameraManager.enableCameraFlash API to control camera flash

  • Bugfix and stability improvements

2.17.1 (Experimental)

  • New dependency: ReLinker 1.4.1

  • New API (only this version): ClientConfig.useReLinker to load native library using ReLinker instead of standard system call.



  • Bugfix and stability improvements


  • Add ability to send video frames as RGB texture ID via ICustomVideoSource

  • Bugfix and stability improvements


  • Fix: preferred video codec is not selected if it was specified in ICall.answer

  • Bugfix and stability improvements


  • Remove deprecated properties:

    • ClientConfig.enableHWAccelerationForEncoding
    • ClientConfig.enableHWAccelerationForDecoding
    • ClientConfig.provideLocalFramesInByteBuffers
  • Introduce ClientConfig.eglBase property that may be used to render video via third-party renderers

  • Fix: crash on getting multiple conversations via IMessenger.getConversations API


  • Fix: audio mode and focus are not abandoned after a call has ended


  • Legacy API removal. Please clean the project after updating to this version


  • Fix: build issue with Android Gradle plugin 3.5.0

  • Add new dependency: 'support-annotations'


  • Fix for crash while establishing the connection to the Voximplant Cloud with connectivity check option enabled

  • Update the SDK compileSdkVersion and targetSdkVersion to 28



  • Fix to enable video receive after answering a video call with audio only



  • Fix for crash on enabling video during a call if camera permission is not granted


  • Handle possible IllegalArgumentException from android media API while collecting information about supported hardware video codecs.

  • Fix for crash related to IClientSessionListener events occuring after the listener was removed

  • Bugfix and stability improvements


  • Handle possible SecurityException from android Bluetooth API on some devices



  • Voximplant.getMessenger() now always returns IMessenger instance even if the client is not logged in

  • Small Messaging API refactoring: renaming of getters and setters.

  • Fix for IMessengerListener.onError() is not invoked sometimes

  • Update SDK dependency:

    • OkHttp version: 3.12.1 (only for non-compat version)
  • Bugfix and stability improvements


  • New Messaging API


  • Fix for no media issues in some specific network conditions

  • Bugfix and stability improvements


  • Introduce IConversationEvent.getTimestamp() and IMessageEvent.getTimestamp()

  • Fix for QualityIssue.NO_AUDIO_SIGNAL issue detection

  • Fix for call total stats calculation

  • Fix for crash on establishing the connection with the Voximplant Cloud with connectivity check enabled

  • Remove MessengerError enum, messenger error code is now available via MessengerException.getErrorCode()

  • Update SDK dependencies:

    • OkHttp version: 3.11.0 (only for non-compat version)
    • gson version: 2.8.5
  • Faster connection establishment to the Voximplant Cloud

  • Bugfix and stability improvements







  • Introduce ClientConfig.packageName field to specify Android application package name to enable push notifications between different Android applications using a single Voximplant application.




  • Fix for login fail with access token, if previously login was performed via one time key

  • Stability improvements for react-native




  • Introduce RejectMode to manage reject call behavior

  • Fix crashes on emulator


  • Improve stability of connection to Voximplant Cloud

  • Introduce new API for audio device management. Please consider the changes in audio device selection described in IAudioDeviceManager documentation

  • Front facing camera is now mirrored rendering by default. Use ClientConfig.enableCameraMirroring to disable camera mirroring.

  • ClientConfig.enableHWAcceleration option is split into 2 options: for hardware acceleration for encoding and decoding. Both are true by default.



  • Deprecated API: fix for remote video rendering issues after midcall operations in the call with web sdk

  • New API: if the call is on hold, using ICall.receiveVideo() will result in the MEDIA_IS_ON_HOLD error that is reported via completion handler callback

  • New API: introduce new API IClient.getClientState() for checking current client state

  • New API: introduce new login errors: INVALID_STATE and TIMEOUT reported via IClientLoginListener.onLoginFailed API

  • IClient.connect API may throw IllegalStateException in case if attempt to connect was performed in invalid state

  • ICall.start and ICall.answer may throw CallException if RECORD_AUDIO (for audio or video call) and CAMERA (for video call) are not granted

  • New API: introduce ILogListener interface to collect and handle Voximplant Android SDK logs

  • Fix for ICallListener.onLocalVideoStreamRemoved event invocation in case if local video stream was not previously added

  • Calling IClient.disconnect API in disconnected state will invoke IClientSessionListener.onConnectionClosed


  • New API: It is now possible to explicitly specify if video send/receive is required while initiating an outgoing call or accepting incoming call. You can find related changes in the IClient.callTo and ICall.answer

  • Bluetooth audio device support is improved. It is now recommended to enable speakerphone after call is connected

  • New API: Fix for crash on calling ICall.getCallDuration() after the call is disconnected

  • Fix for IClientSessionListener.onConnectionFailed is not invoked in some cases

  • ICall.start API now throws CallException if the call has been already started


  • Messaging API


  • Fix for onCallDisconnected event that was not invoked on emulators and devices without bluetooth support


  • Introduce ICustomVideoSource for alternative video frame source for a call

  • Bluetooth device support

  • Add ability to set custom data on call answer

  • New API: introduce onICECompleted and onICETimeout call events

  • New API: if call is on hold, using ICall.sendVideo() will result in the MEDIA_IS_ON_HOLD error that is reported via the completion handler callback.

  • Dependency update for the upstream (without the -compat prefix) Android SDK, okhttp is updated to version 3.8.1


  • Introduce IAudioFocusChangeListener to monitor and handle audio focus change events


  • Fix for crash on slice height check for texture output

  • Fix for camera is not switched if camera is opening

  • Fix for crash on creating EGL context


  • Deprecated API: fix for video rendering issues, if video renderer is set before video stream is added


  • Fix for audio focus is not abandoned in some cases

  • Deprecated API: fix for crash when call is rejected

  • Fix for crash on adding video renderer


  • Default audio device is changed from speakerphone to earpiece

  • Now all SDK logs are printed under the same tag (VOXSDK) in logcat. So it is easier now to grep them and provide to support team in case of any issues

  • Bugfix and improvements

  • New backward-compatible API. Please note, that you should not use old and new API simultaneously.

  • Experimental h.264 support can be enabled via the new API

  • New -compat version that uses legacy dependencies (like old OKHttp 3.4.1 version)

  • Fix for crash on fallback to software encoder or decoder

  • Hold functionality available via new API


  • Fix for inability to select front camera on call start


  • Add support for early media

  • Multiple call management bugfix and improvements

  • Fix for onCallAudioStarted callback that was not invoked in some case

  • Fix for crash on start to render local video on Samsung s3


  • API changes: add the ability to indicate server name for connection. VoxImplantClient.connect(boolean) is changed to VoxImplantClient.connect(boolean, String)


  • Add the ability for custom video renderer implementation

  • Fix for changing speakerphone mode issues on some android devices

  • Fix for crash on cyclic attempts to reconnect when internet is turned off on android device

  • Improve echo cancellation on Xiaomi Mi Note

  • onCallDisconnected event is received if internet connection is lost during active call

  • API changes: VoxImplantClient.enableDebugLogging() method is removed. Use VoxImplantClientConfig to enable debug logging instead

  • API changes: VoxImplantClient.setAndroidContext(Context, boolean, boolean) is changed to VoxImplantClient.setAndroidContext(Context, VoxImplantClientConfig). All configurations for VoxImplantClient can now be set via VoxImplantClientConfig