Remote via Virtual Studio on M1 Still shows error System.DllNotFoundException: TODO_DOES_NOT_EXIST

Include the following details while filing a bug report (edit as applicable):

  • Issue category: / Unity Example Package / PlaneAnchors
  • Device type & OS version: Android / iOS (Galaxy S21 & iPhone7)
  • Host machine & OS version: Mac on Monterey 12.3
  • Issue Environment : Unity Remote
  • Xcode version: 13.3
  • ARDK version: 1.2.0

Console Log:
DllNotFoundException: TODO_DOES_NOT_EXIST assembly: type: member:(null)
Niantic.ARDK.AR._VideoStreamHelper._DecompressForVideo (Niantic.ARDK.AR.CompressedImage compressedImage) (at Assets/ARDK/AR/_VideoStreamHelper.cs:89)
Niantic.ARDK.AR.Image._SerializableImageBufferSerializer.DoDeserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/AR/Image/_SerializableImageBufferSerializer.cs:50)
Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.BaseItemSerializer1[T].Deserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/BaseItemSerializer.cs:41) Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.BaseItemSerializer1[T].Niantic.ARDK.Utilities.BinarySerialization.IItemSerializer.Deserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/BaseItemSerializer.cs:75)
Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer.Deserialize () (at Assets/ARDK/Utilities/BinarySerialization/BinaryDeserializer.cs:50)
Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.ArrayOfUnsealedSerializer1[T].DoDeserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/ArrayOfUnsealedSerializer.cs:55) Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.BaseItemSerializer1[T].Deserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/BaseItemSerializer.cs:41)
Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.SimpleSerializableSerializer.Deserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/SimpleSerializableSerializer.cs:154)
Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer.Deserialize () (at Assets/ARDK/Utilities/BinarySerialization/BinaryDeserializer.cs:50)
Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.ArrayOfUnsealedSerializer1[T].DoDeserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/ArrayOfUnsealedSerializer.cs:55) Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.BaseItemSerializer1[T].Deserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/BaseItemSerializer.cs:41)
Niantic.ARDK.Utilities.BinarySerialization.ItemSerializers.SimpleSerializableSerializer.Deserialize (Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer deserializer) (at Assets/ARDK/Utilities/BinarySerialization/ItemSerializers/SimpleSerializableSerializer.cs:154)
Niantic.ARDK.Utilities.BinarySerialization.BinaryDeserializer.Deserialize () (at Assets/ARDK/Utilities/BinarySerialization/BinaryDeserializer.cs:50)
Niantic.ARDK.Utilities.BinarySerialization.GlobalSerializer.Deserialize (System.IO.Stream stream) (at Assets/ARDK/Utilities/BinarySerialization/GlobalSerializer.cs:412)
Niantic.ARDK.Utilities.Extensions._ObjectSerializationExtensions.DeserializeFromArray[T] (System.Byte byteArray) (at Assets/ARDK/Utilities/Extensions/_ObjectSerializationExtensions.cs:32)
Niantic.ARDK.VirtualStudio.Remote._EasyConnection._MessageReceived (UnityEngine.Networking.PlayerConnection.MessageEventArgs args) (at Assets/ARDK/VirtualStudio/Remote/_EasyConnection.cs:109)
Niantic.ARDK.VirtualStudio.Remote.RemoteMessageHandler.Callback (UnityEngine.Networking.PlayerConnection.MessageEventArgs e) (at Assets/ARDK/VirtualStudio/Remote/_UsbRemoteConnection.cs:184)
UnityEngine.Events.InvokableCall1[T1].Invoke (T1 args0) (at /Users/bokken/buildslave/unity/build/Runtime/Export/UnityEvent/UnityEvent.cs:219) UnityEngine.Events.UnityEvent1[T0].Invoke (T0 arg0) (at /Users/bokken/buildslave/unity/build/Runtime/Export/UnityEvent/UnityEvent/UnityEvent_1.cs:58)
UnityEngine.Networking.PlayerConnection.PlayerEditorConnectionEvents.InvokeMessageIdSubscribers (System.Guid messageId, System.Byte data, System.Int32 playerId) (at /Users/bokken/buildslave/unity/build/Runtime/Export/Networking/PlayerConnection/PlayerEditorConnectionEvents.cs:66)
UnityEditor.Networking.PlayerConnection.EditorConnection.MessageCallbackInternal (System.IntPtr data, System.UInt64 size, System.UInt64 guid, System.String messageId) (at /Users/bokken/buildslave/unity/build/Editor/Mono/Networking/PlayerConnection/EditorConnection.cs:190)

  • Unity version:

Bug reproduction steps:
This happens when I tap in the example to place the red cube. The scene seems to work up until that point. The mesh appears in the editor, but the feature points appear on the phone. Not sure if that is what is intended.

Previously reported and marked as fixed here: System.DllNotFoundException: TODO_DOES_NOT_EXIST - I’m Stuck - Lightship Community

Thank you @Sam_Garfield! I was able to reproduce this on an M1 Mac in ARDK 1.2.0. I should also note that building the remote feed app on the M1 didn’t appear to be the problem. But connecting to the Unity editor running on an M1 device did produce the error.

You should also see the camera feed in the editor when it is working correctly.

I also wanted to add that this appears to be specific to the remote feed app connecting to the Unity editor when running on an M1. The issues with mock mode in earlier versions of ARDK have been resolved.

A bug has been filed, thanks again!

FYI for M1 users that are on a native Apple Silicon Unity build such as 2021.2.16f1 (Apple Silicon), the error will be slightly different:

DllNotFoundException: ardk_client_platform assembly:<unknown assembly> type:<unknown type> member:(null)
Niantic.ARDK.AR._VideoStreamHelper._DecompressForVideo (Niantic.ARDK.AR.CompressedImage compressedImage) (at Assets/ARDK/AR/_VideoStreamHelper.cs:89)