Bug: infinite calls of SBDMain.connect methods

Context:
SendBirdSDK’, ‘= 3.1.2’
iPhone 12 mini, iOS 15 (also reproduced on simulator and other models of iPhones)
application: SendBird UIKit demo app (checked out from GitHub repo), but also reproduced in our production application

Steps:

  1. Predefine appId and access token in codebase
  2. Launch UIKit demo application
  3. Enter user id and nickname
  4. Go to settings and enable “100% loss” mode in network link conditioner
  5. Get back to UIKit demo application, tap Sign In (trigger SBDMain.connect(withUserId userId: String, accessToken: String?, completionHandler: ((SBDUser?, SBDError?) → Void))
  6. In few seconds enable airplane mode on the device
  7. Observe console in Xcode

Result:
Completion block of the connect method is called a lot of times, this leads to many error logs in console. Full console output.

We observe same behavior in our application with integrated SendBird SDK

Hi, An issue has been reported and we will get back to you as soon as it is confirmed

Hi, This issue should be resolved in v3.1.10
Please test with v3.1.10 and let me know if it is resolved.

v3.1.10 (Mar 28, 2022)

  • Fixed error with infinite calls of SBDMain.connect completion.
  • Fixed issue where cachedMetadata is not serialized (not stored in database).