We started getting this error on iOS after rebuilding our client with the latest XCode and macOS.
2022-06-22 15:37:21.378343-0600 MyApp[15502:12848807] [aurioc] AURemoteIO.cpp:1936:Run: AURemoteIO@0x130bcc040: IOThread exiting with error 0x10004006
2022-06-22 15:37:21.410857-0600 MyApp[15502:12848796] [aurioc] AURemoteIO.cpp:1598:Start: AUIOClient_StartIO failed (-66637)
Vivox disconnected from channel 0a-f8-87-73-6b-1e721528228positional
MyApp.VivoxVoiceManager:SourceOnChannelPropertyChanged(Object, PropertyChangedEventArgs)
VivoxUnity.VxClient:InstanceOnMainLoopRun(Boolean&)
MessagePump:RunOnce()
MessagePump:RunUntil(LoopDone)
MyApp.VivoxVoiceManager:Update()
I assume I need to update our vivox libraries.
We have been using Vivox for probably 4 years. We have not updated the libraries in a while. In the meantime, Vivox has been brought in to Unity directly through packages / services. We don’t use other “services”. I am not sure how to go through the transition of updating our libraries to the packages/services model. I have removed the Vivox folder we had in our project, and added the package line in our manifest.json file. That seemed to properly add Vivox to our project, and I had to fix some code that looks like was deprecated.
I was doing this because iOS had stopped working, after building with the latest XCode, and was getting the error above.
But now that I’ve updated to the package path, I can’t even login to the vivox service I don’t think in our code.
I’m now getting this error on Android, the first platform I’ve tried, this is happening in the BeginConnect callback, which happens after logging in:
2022-06-27 15:09:48.331 7836-7857/? E/Unity: <Login>b__0: vx_req_account_anonymous_login_t failed: System.InvalidOperationException: LoginSession: Invalid State - must be logged in to perform this operation.
at VivoxUnity.Private.LoginSession.AssertLoggedIn () [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.Private.LoginSession.GetChannelSession (VivoxUnity.ChannelId channelId) [0x00000] in <00000000000000000000000000000000>:0
at MyApp.VivoxVoiceManager.CreatePositionalChannel (System.String channelName, VivoxUnity.IChannelSession& channelSession) [0x00000] in <00000000000000000000000000000000>:0
at MyApp.VivoxVoiceManager+<>c__DisplayClass29_0.<BeginBuildClient>b__0 (System.IAsyncResult ar) [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.AsyncNoResult.SetComplete () [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.Private.LoginSession+<>c__DisplayClass97_0.<Login>b__0 (System.IAsyncResult result) [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.AsyncResult`1[T]
2022-06-27 15:09:48.332 7836-7857/? E/Unity: Received error while processing Vivox commands: System.InvalidOperationException: Operation is not valid due to the current state of the object.
at VivoxUnity.AsyncNoResult.SetComplete (System.Exception exception) [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.Private.LoginSession+<>c__DisplayClass97_0.<Login>b__0 (System.IAsyncResult result) [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.AsyncResult`1[T].SetComplete (T result) [0x00000] in <00000000000000000000000000000000>:0
at VivoxUnity.VxClient.InstanceOnMainLoopRun (System.Boolean& didWork) [0x00000] in <00000000000000000000000000000000>:0
at MessagePump.RunOnce () [0x00000] in <00000000000000000000000000000000>:0
at MessagePump.RunUntil (LoopDone done) [0x00000] in <00000000000000000000000000000000>:0
at MyApp.VivoxVoiceManager.Update () [0x00000] in <00000000000000000000000000000000>:0
MyApp.VivoxVoiceManager:Update()
Not sure how to get passed this. I think it has something to do with the Unity “services”. We don’t have access now to vivox?