天天看点

IOS错误Could not produce class with ID

Unity 5.3.5f1 (IL2CPP)编译IOS版本

XCode Version 7.2.1 (7C1002)

Mac OS X 10.11.3 (15D21) (Mac mini)

iPhone 5,6 ,iPad

Could not produce class with ID XXX.

This could be caused by a class being stripped from the build even though it is needed. Try disabling 'Strip Engine Code' in Player Settings.:<LoadWWWIEnumerator>c__Iterator99:MoveNext()

具体表现:可能是APP闪退,提示上示错误信息

1. 在上面的错误提示中,有提示 disabling “Strip Engine Code”

所以我们要做的就是在Player Setting – Other Setting,去掉勾选 Strip Engine

IOS错误Could not produce class with ID

如果要Strip Engine,那就需要把不想被strip的添加进来。

1. 新建link.xml放在Assets目录下,里面添加不想被strip的dll的名字

下面是导入高通Vuforia之后,SDK中默认的link.xml的内容

<a></a>

如果提示的ID的是Editor的,比如 AnimatorController(ID 91)属于Editor包里的,不能用link.xm加回来,可以在Resource下建一个空的prefab,在上面挂一个AnimatorController,打包时留下这个prefab就可以确保这个类不被strip掉了。

以Unity5.3.5为例

ios平台,默认勾选了 Strip Engine Code,且Script Background为I2CPP

IOS错误Could not produce class with ID

android平台,默认disabled Strip Engine Code,且Script Background为Mono2x

IOS错误Could not produce class with ID

本文转自赵青青博客园博客,原文链接:http://www.cnblogs.com/zhaoqingqing/p/6080075.html,如需转载请自行联系原作者

继续阅读