【问题标题】:JSON-Parser for Unity3D and FlashUnity3D 和 Flash 的 JSON 解析器
【发布时间】:2012-11-03 00:12:21
【问题描述】:

目前我正在 Unity3D (C#) 中实现一个应用程序,该应用程序将导出到 Flash 和 WebPlayer 版本。 应用程序使用 JSON 与服务器通信。 我的问题是:是否有任何适用于 Unity WebPlayer 和 Flash 的 JSON 解析器? 我已经尝试过MiniJSON Flash Version。在花费数小时使其干净导出后,它在 UnityWebPlayer 中解码 JSON,但在 Flash 中返回 NULL。 有没有其他方法可以在 Unity WebPlayer 和 Flash 中解析 JSON 字符串?或者是否还有另一个可以在 Flash 中工作的 JSON 解析器? 我真的搜索了很多,但要么人们提供了 MiniJSON 的链接,要么建议等待 Unity3D 4.0 版。 我什至尝试了 unity3D 的代理类功能,但无法在 Flash 端运行它。也许有人可以提供一个例子?

非常感谢

【问题讨论】:

    标签: c# json flash parsing unity3d


    【解决方案1】:

    我使用LitJSON for Unity 并且在不久前构建一个用于测试目的的网络播放器版本时没有任何问题。我没有使用 Flash 播放器的经验,但根据此演示文稿Unity and Flash, the best of both worlds! - Unite presentation slides 第 18 页 ff。它应该可以完成这项工作。

    【讨论】:

      【解决方案2】:

      没有任何用 C# 编写的 JSON 库可能适用于 Unity 的 flash 导出(如果您希望在客户端使用强类型对象),因为某些关键的 .net 反射片段不受支持,即使在官方 4.0 版本中也是如此。我要求 Unity 批准一个支持的 JSON 解析器,该解析器可以跨桌面、网络播放器和 Flash 使用,但这个版本没有发生。

      我最终在客户端使用原生 AS3 字符串化和解析方法,在服务器端使用 JSON.net。棘手的部分是补偿 Unity 在将 C# 转换为 ActionScript 时所做的名称修改。通过使用一些标准方法来覆盖解析和序列化 JSON 字符串,使用大量的 describeType(),我能够在不进行硬编码的情况下完成这项工作。由于他们的网络播放器支持 JSON.net,因此我可以使用一些 #if FLASH 编译指示来让两者都能正常工作,具体取决于构建目标。

      所以....这是可能的,也许我已经为你做了很多艰苦的工作。如果您需要一些示例,请告诉我。

      -托盘杂草

      【讨论】:

        【解决方案3】:

        试试这个:https://github.com/ironmagma/jsonparse

        它完全用 UnityScript 编写。可能它在 Flash 导出中有所帮助和工作。但我没有测试它。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-01-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多