JSON数据无法在我的应用程序中获取,但在XCode调试区域中显示

时间:2016-07-16 05:11:25

标签: ios iphone json unity3d httpwebrequest

您好我正在使用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,让我解析?

我已查看ATSthis answer,但似乎无效。我的方向正确吗?

更新:我的Unity是5.3.4p6,XCode:7.3.1,iOS:9.3

UPDATE2:JSON API:Newtonsoft.JSON,WebRequest:UnityWebRequest

1 个答案:

答案 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友好的。