0

我正在编写一个需要使用 websockets 抛出信息的应用程序。我遇到了websocket-sharp library。如指南中所述,我已将 .dll 文件放入该Assets/Plugins/位置。但是,经常发生在我的统一系统重新启动后,它开始抛出错误Websocket sharp namespace or directive could not be found。我必须重新导入或复制和粘贴。还有一些基于 Websockt 的相关脚本或资源,例如unityros,而使用 .NET 后端脚本构建时无法构建抛出错误,例如:

using System.Threading
using WebsocketSharp

我发现的一个修复是使用:

#if UNITY_EDITOR
   using System.Threading
   using WebsocketSharp
#endif

并且还需要在使用包含头文件的相同 if 和 endif 条件中添加函数(对不起,我是 C++ 语言专家 - 对包含头文件等术语表示歉意)。但是,当我从 Unity Player Settings 将后端脚本设置为 IL2CPP 来构建这些项目时,不会引发错误。

我可以使用 IL2CPP 文件将其部署在 hololens 等 MR 设备中吗?MR 设备的构建配置将是Release, x64, Remote Device。好心提醒。

4

1 回答 1

1

您在问题中描述的问题与使用 IL2CPP 或 .NET 作为后端无关。

最大的问题是System.ThreadingHoloLens 不支持。UNITY_EDITORHoloLens 使用 UWP,它剥离了许多 .NET API,因此在为不支持的平台构建时,您必须使用指令删除任何使用它的代码。

MessageWebSocket在为 HoloLens 构建和为其他平台构建websocket-sharp时使用。MessageWebSocket有关如何使用它的许多示例,请参见github。

于 2018-01-03T02:56:20.640 回答