我的团队正在使用Unity 5.1.1开展项目。我们正在使用Parse在线存储数据。在编辑器上工作很好。使用Mono构建项目作为脚本后端没有问题。但使用IL2CPP构建会导致问题。
初始化Parse时,会出现如下错误
missingMethodException:找不到方法:'找不到默认构造函数... Parse.PlatformHooks的ctor()'。
我做了研究并发现,如果项目已启用优化,通常会发生此错误,但我的项目已关闭
我已经失去了2天试图修复此问题,但尚未找到解决方案
答案 0 :(得分:2)
使用IL2CPP脚本后端,即使“剥离级别”选项设置为“已禁用”值,也始终启用某种级别的剥离。我们这样做是为了保持二进制大小合理。
我们可能很快会改变这种行为,并允许剥离真正被禁用,但与此同时,你可以解决这个问题。
您可以使用link.xml文件来要求Unity剥离代码保留某些类型。请参阅此处的文档:
http://docs.unity3d.com/Manual/iphone-playerSizeOptimization.html
虽然根据错误信息,我猜你想要这样的东西:
<linker>
<assembly fullname="Parse">
<type fullname="Parse.PlatformHooks" preserve="all"/>
</assembly>
</linker>