结合使用JsonConvert.SerializeObject和Unity IL2CPP脚本后端的问题

时间:2018-10-23 12:33:50

标签: json unity3d dll hololens hololens-emulator

在使用Unity IL2CPP脚本后端时,使用JsonConver.SerializeObject函数将字符串序列化时遇到问题。我的理解是,由于JsonConvert使用反射,因此IL2CPP无法使用此函数,因为它已预先编译。我还使用了使用Newtonsoft.dll的Holotoolkit,所以我认为使用JSON .NET for Unity包不可行,因为它将与Newtonsoft.dll冲突

有人遇到这个问题或对如何解决有任何建议吗?

1 个答案:

答案 0 :(得分:1)

我通过删除Holotoolkit目录结构中的Newtonsoft.dll以及引用了Newtonsoft.dll的GLTFSerialization.dll使其工作。然后,由于我正在为Hololens编写代码,因此可以注释掉所有引用GLTFSerialization.dll的代码。然后,我从Unity资产存储中为.NET Unity资产安装了JSON,一切恢复正常。

我相信所有引用GLTFSerialization.dll的代码仅用于混合现实设备开发,因此,如果您是为MR开发此解决方案,则可能无法使用,并且您可能希望使用extern别名方法进行研究。