今天想把做得差不多的 Unity项目 发到手机上看看效果,可是打包时报好多错,都差不多是:
“The type or namespace name `UnityEditor' could not be found. Are you missing a using directive or an assembly reference?”。
点进去看都是项目中用到的特效插件FXMaker的源代码报的。
经分析,原因是 因FXMaker 有自定义的 Inspector面板界面,其源代码引用了 Unity编辑器窗口 相关的代码,而发布到手机或其它平台上时,Unity编辑器窗口 相关的namespace中的代码 是不能被调用的,所以报错了。
解决方法:
根据Console中的报错信息,找到所有的 FXMaker 中用到 “using UnityEditor” 的代码,用条件编译语句:
#if UNITY_EDITOR
... 文件中所有代码 ...
#endif
将文件中所有代码包起来。也不是太多,大概有30几个文件吧。
这样就可以成功发布到手机上了!