Release Notes for Mobile SDK 5.2.57
User documentation
2022-09-20
Release Notes for Mobile SDK 5.2.57¶
Issues Fixed¶
Android¶
- If the app does not gain the
RECORD_AUDIO
permission, dialing will throw aSecurityException
immediately, instead of the WebRTC driver crashing and terminating the call before it is started. - #2055: if the app does not gain
BLUETOOTH
orBLUETOOTH_CONNECT
permissions, dialing would no longer cause a crash. Instead the call will start without Bluetooth (even if a Bluetooth headset is connected) and setting the Bluetooth audio route will be ignored. - #2060: Calling shutdown while the VoIP service is being stopped will no longer cause a crash.
- #2061: Allow starting the VoIP service from the background in apps built for API level 31 (or later) even if the app is not exempt from starting foreground services.
Partial fixes & Workarounds:¶
Android¶
- #2057: When running on Android 12 devices, the VoIP service can be shutdown after 1 minute of inactivity. For supporting applications that do not use SIP registrations, a "lazy mode" workaround is introduced: if the application starts the SDK service using the new
CloudonixSDKClient.startLazy()
method, the SDK will start the service immediately (as it is done for otherstart*()
methods), but if the service disconnects during idle time - the SDK will not try to immediately restart the service. Instead the SDK will verify that the service is running just before performing a dial command. If the service is down, the dial command will start the service, wait until it has issued theonSipStarted()
event and only then continue with the dial. This introduces a delay during dial (when the service has been shutdown) of up to 2 seconds. A more correct behavior for both Registration-Free and class SIP registration workflow is currently scheduled for release 5.2.58.