【发布时间】:2016-07-16 05:11:25
【问题描述】:
您好,我正在使用 Unity3D 为 iOS 构建一个应用程序。我正在使用 UnityWebRequest 从我的服务器获取数据(POST 请求)。它适用于我的 Unity 编辑器,但不适用于我的 iPhone。不过我在XCode的调试窗口中其实可以看到我想要的JSON数据,如下图,
You are using download over http. Currently unity adds NSAllowsArbitraryLoads
to Info.plist to simplify transition, but it will be removed soon. Please
consider updating to https.
Unhandled Exception: System.NotSupportedException:
/Users/builduser/buildslave/unity/build/Tools/il2cpp/il2cpp/libil2cpp/icalls/mscorlib/System.Reflection.Emit/DynamicMethod.cpp(26) : Unsupported internal call for IL2CPP:DynamicMethod::destroy_dynamic_method - System.Reflection.Emit is not supported.
at System.Reflection.Emit.DynamicMethod.Finalize () [0x00000] in <filename unknown>:0
UnityEngine.UnhandledExceptionHandler:PrintException(String, Exception)
UnityEngine.UnhandledExceptionHandler:HandleUnhandledException(Object, UnhandledExceptionEventArgs)
(Filename:/Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 37)
(MY JSON DATA)
所以我的 JSON 数据在调试器信息中正确显示,但为什么我无法从我的代码中获取它?像 string data = MY_JSON_DATA 让我解析?
我检查了ATS 和this answer,但它似乎不起作用。我的方向正确吗?
更新:我的 Unity 是 5.3.4p6,XCode:7.3.1,iOS:9.3
UPDATE2:JSON API:Newtonsoft.JSON,WebRequest:UnityWebRequest
【问题讨论】:
-
什么 Unity 版本?什么iOS版本?您使用的是什么 Json API?这些对于获得合理的答案很重要。
-
@Programmer 谢谢我已经添加了我正在使用的版本
-
好的。你使用的是什么 json API?你是如何从服务器读取接收到的 json 数据的?
-
@Programmer 如果你的意思是在客户端,我使用 Newtonsoft.json 来反序列化我的 JSON 字符串。我只是通过 UnityWebRequest.send() 向我的 API 发送一个 POST 请求。并从 unityWebRequest.downloadHandler 获取内容。
-
那么问题出在哪里?是不是崩溃了?
标签: ios iphone json unity3d httpwebrequest