升级到Monotouch 4.0后出现MissingMethodException

本文关键字:MissingMethodException Monotouch | 更新日期: 2023-09-27 17:49:29

是否有人使用优秀的Sparrow 2D monotouch库?

https://github.com/trustme/Sparrow

我刚刚更新到Monotouch 4.0和Monodevelop 2.4.2,什么时候重建并运行SparrowTest给了我这个奇怪的错误:

System.MissingMethodException has been thrown "Method not found:
'Monotouch.ObjCRuntime.Messaging.void_objc_msgSend_Boolean'." at
SparrowTest.AppDelegateIPhone.FinishedLaunching in
AppDelegateIPhone.cs:23

方法是:

SPStage.SupportHighResolutions = true;
当注释

时,它会在许多其他方法上给出相同的错误。我尝试使用不同的SDK版本,但问题仍然存在。

什么线索吗?

升级到Monotouch 4.0后出现MissingMethodException

您需要使用MonoTouch 4的btouch重新生成sparrow.dll

尝试创建一个带有out的脚本来重新生成第三方库避免此问题的另一种方法是,在项目的生成输出中选择:不要链接程序集你的项目将工作

问题解决了!

对于MonoTouch 4.0,我们必须使用smcs而不是gmc。

下面是用MonoTouch 4.0生成sparrow.dll的正确过程,分两步:

/Developer/MonoTouch/usr/bin/btouch Sparrow .cs -s: enums .cs——outdir=gen -ns=Sparrow——unsafe——sourceonly=genfiles

/Developer/MonoTouch/usr/bin/smcs out:sparrow.dll cat genfiles extensions.cs -unsafe -r:/Developer/MonoTouch/usr/lib/mono/2.1/MonoTouch .dll enumt .cs -target:library

感谢Geoff Norton和Duane Wandless的帮助!

相关文章:
  • 没有找到相关文章