我一直在 Hololens 上进行开发。该项目位于 .NET 4.x 上,带有 IL2CPP 和 API 兼容性 4.x。我正在使用 Unity 2018.3.6f。
我需要添加外部 DLL (IdentityClient.dll)
此 dll 依赖于 Newtonsoft.Json 和 System.Text.Encodings.Web。
经过大量工作,我现在可以使用 dll 部署我的应用程序,但是当我使用它们时,它会使我的应用程序崩溃。问题在于 Newtonsoft.Json。
由于 IL2CPP 使用 AOT 编译和 newtonsoft 使用反射,它会崩溃。我已经用这个 https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347替换了 Newtonsoft.Json.dll
我已经能够在我的代码中使用 Newtonsoft,但 IdentityModel.dll 仍然引用旧的实现,即使我删除了它。所以它又崩溃了。我现在有点卡住了,我想知道你们中是否有人有解决方案!
我也在想如果我也不能解决它:
- fork IdentityModel的github项目并进行调整
- 只需手动制作所有内容,而不是在 IdentityModel 上中继,但这可能需要一些时间。
此外,在 Unity 编辑器中一切正常,但在部署时会崩溃。