0
public class StaticDataContainer<T> where T : IStaticData { 
protected static Dictionary<int, T> data;


public static void init(string jsonString){
    //It work fine in Unity,But in Xcode iOS,it will show an error below:
    //ExecutionEngineException: Attempting to JIT compile method
    //'System.Collections.Generic.Dictionary`2<int, AD>:.ctor ()' 
    //while running with --aot-only.
    data = new Dictionary<int, T> ();

我参考:http ://answers.unity3d.com/questions/250803/executionengineexception-attempting-to-jit-compile.html

您的应用程序使用了一些在 AOT 编译期间遗漏的泛型类型。解决方案是:这个问题通常可以通过包含一个引用缺失类型的“虚拟”类来解决。

但我不知道什么是虚拟班级。我该如何解决?

4

1 回答 1

0

这是我的做法。我在具有以下结构的项目中创建了一个名为 AOTDummy.cs 的文件(适用于您的问题):

public static class AOTDummy
{
    public static void Dummy()
    {
        System.Collections.Generic.Dictionary<int, AD> dummy01;
    }
}
于 2014-06-24T19:50:22.123 回答