您好我正在使用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数据在调试器信息中正确显示,但为什么我无法从我的代码中获取它?像字符串数据= MY_JSON_DATA,让我解析?
我已查看ATS和this answer,但似乎无效。我的方向正确吗?
更新:我的Unity是5.3.4p6,XCode:7.3.1,iOS:9.3
UPDATE2:JSON API:Newtonsoft.JSON,WebRequest:UnityWebRequest
答案 0 :(得分:0)
虽然在评论中找到了问题的解决方法,但我在此提及此错误消息的含义。发生的错误是:
未处理的异常:System.NotSupportedException: /Users/builduser/buildslave/unity/build/Tools/il2cpp/il2cpp/libil2cpp/icalls/mscorlib/System.Reflection.Emit/DynamicMethod.cpp(26):对IL2CPP不支持的内部调用:DynamicMethod :: destroy_dynamic_method - System.Reflection .Emit不受支持。
IL2CPP转换器仅提前工作(AOT)。因此它无法在运行时创建代码,因此,不支持System.Reflection.Emit,因为错误消息指示。
一些JSON实用程序在运行时发出代码,但许多实际上没有AOT友好模式。在这种情况下,解决方法&#34;工作&#34;因为现在使用的JSON实用程序是AOT友好的。