Release Notes - Android SDK
See how the Sinch In-app Voice and Video SDK for Android is evolving and find out about new features and bug fixes.
4.11.16
- Upgrade gradle build tools versions of samples.
4.11.14
- Fix issue that prevented user that did not start Sinch client for over a year authenticating on Sinch backend.
4.11.3
- Fix screenshot and filter video sample applications threading issues.
4.10.18
- Update WebRTC to M96.
4.9.21
-
Refactor
AudioController.enableAutomaticAudioRouting()
to acceptAudioController.AudioRoutingConfig
parameter. - Fix potential crash in the JNI layer that could happen if null-body reply is unexpectedly returned from the backend.
4.8.6
-
Add
android:exported
attribute to the internal service manifest in conformance with new Android S+ rules (Android 12).
4.7.3
- Fix crash on Huawei devices that support Google Play Services when Huawei HMS Messaging is used.
4.6.8
-
Fix crash in the
AudioManagerInternal
caused by unregistering of not-yet-registered Wired Headset Receiver.
4.5.8
- Stop storing Sinch FCM token in SharedPreferences. Sometimes when the new FCM token is acquired, if update of the SharedPreferences fails/slow - the old FCM token is sent again to the Sinch backend.
4.4.5
-
Removed
SinchClient.setMediaHandover(boolean)
,SinchClientBuilder.enableMediaHandover(boolean)
, andCall.setMediaHandover()
. Media handover and reconnection behaviour is now handled internally.
4.3.9
-
Check CAMERA permission before video capture starts to avoid crash in case the user revoked permission.
If not granted - black video. If granted during the call, video can be resumed with call to
Call.resumeVideo()
. The responsibility to ensure that CAMERA permission is granted lies on the application. - Fixed crash when setting video frame listeners during audio-only call.
-
Removed
Beta.setMediaHandoverConfig(SinchClient client, MediaHandoverConfig config)
andMediaHandoverConfig
class as a whole. Media handover behaviour is now handled internally.
4.2.5
- Fixed memory leak in LocalVideoFrameListener and RemoteVideoFrameListener implementations.
4.1.4
- Switch to new release tools and process.
4.0.7
- Fixed crash in SinchClient when the client is terminated during incoming call processing.
-
Added VideoController
setLocalVideoResizeBehaviour()
to allow full-screen local video experience.
4.0.6
- Failure of internal database initialization at SinchClient/UserController creation time will now cause IOException, instead of failing silently.
- Fixed rare crash in SinchClient that happened during 'fast' start after graceful termination.
- Updated sample application with SinchClient lifecycle management comments.
4.0.5
-
Aligned SinchClient registration experience with UserController's one by extending SinchClientListener
interface and providing a way to register a user with the HMS Push Token via SinchClient by adding
Huawei HMS specific methods to SinchClientBuilder:
- hmsDeviceToken(String deviceToken);
- hmsApplicationId(String applicationId);
- Extended SinchClientListener interface by both UserRegistrationCallback and PushTokenRegistrationCallback interfaces.
- Removed SinchClientListener.onRegistrationCredentialsRequired(SinchClient client, ClientRegistration registrationCallback) in favor of inherited UserRegistrationCallback.onCredentialsRequired(ClientRegistration registrationCallback).
-
Renamed PushTokenRegistrationCallback methods to follow the same naming pattern:
- tokenRegistered() -> onPushTokenRegistered()
- tokenRegistrationFailed(...) -> onPushTokenRegistrationFailed(...)
- Removed deprecated SinchClient's stop() and unregisterPushProfile() APIs.
4.0.4
- Removed MissingFCMException.
- Added SinchHelper methods to check availability of the Google FCM or Huawei HMS services.
4.0.3
- Moved from deprecated appcompat to AndroidX.
4.0.2
- Fixed potential crash in logging when receiving weird-looking media streams.
4.0.1
- Added support specifying/modifying call headers via ICE callback response.
4.0.0
- Sinch environment host changed to ocra.api.sinch.com
-
Removed support for legacy push data (
SinchClient.registerPushNotificationData()
). -
Removed
ErrorType.CAPABILITY
,ErrorType.OTHER
. AddedErrorType.GENERIC
. -
Removed deprecated
SinchClient.stop()
(andSinchClientListener.onClientStopped()
). UseSinchClient.terminateGracefully()
instead. -
CallDetails
getStartedTime()
,getEstablishedTime()
andgetEndedTime()
returnjava.util.Date
instead of long. -
AudioController has new APIs:
isMute()
andisSpeakerOn()
. - Fixed AudioController bug that change microphone state when disengaging Automatic Audio Routing.