MTOUCH:错误 MT0034 Xamarin.iOS 和 Catel

Posted

技术标签:

【中文标题】MTOUCH:错误 MT0034 Xamarin.iOS 和 Catel【英文标题】:MTOUCH: error MT0034 Xamarin.iOS and Catel 【发布时间】:2015-12-22 18:48:14 【问题描述】:

我在尝试编译我的 Xamarin.ios 应用程序时收到此错误。我引用的是 Catel.MVVM 和 Catel.Fody。

知道该怎么做吗?

MTOUCH: error MT0034: Cannot include both 'monotouch.dll' and 'Xamarin.iOS.dll' in the same Xamarin.iOS project - 'Xamarin.iOS.dll' is referenced explicitly, while 'monotouch.dll' is referenced by 'Catel.MVVM, Version=4.4.0.0, Culture=neutral, PublicKeyToken=null'.

【问题讨论】:

尝试从您的项目中删除 Xamarin.iOS.dll 引用。 耶。是我尝试的第一件事......让它变得更糟。 【参考方案1】:

您的项目部分之一使用 UnifiedAPI (Xamarin.iOS.dll),另一个使用经典 API (monotouch.dll)。他们不能同时是项目的一部分。

您的目标应该是使用 UnifiedAPI/Xamarin.iOS.dll 而不是旧的 monotouch 程序集,因为有了新的程序集,您就可以在商店中获取您的应用程序。 Xamarin Studio 能够将您的项目转换为 UnifiedAPI。我不确定,但请查看 Project > "Convert to UnifiedAPI" 或类似的内容。

【讨论】:

会做,听起来很有希望。 看来项目已经在使用Unified API了……难道不是Catel.MVVM不应该使用monotouch.dll吗? 我查看了 github 上的源代码,看起来 Catel.MVVM.Xamarin.iOS 没有更新为 UnifiedAPI。我查看了似乎是最新的 Release 4.3.0 分支。 啊。这可以解释。谢谢。当我有更多信息时,我会联系 Catel 的开发人员并添加到这个问题。 如果您将我的答案标记为适合您的答案,如果它对您有帮助,我们会很高兴。

以上是关于MTOUCH:错误 MT0034 Xamarin.iOS 和 Catel的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin Firebase iOS Analytics 抛出 AOT MTOUCH ERROR MT3001 - Firebase.Analytics.dll

MT5211:本机链接失败,未定义的Objective-C类

由于 Xamarin iOS SDK 版本,AzureDevops 构建失败

Visual Studio 2015 / Xamarin,调试不工作:执行 MTouch 时出错

模拟器和设备的 Xamarin.iOS 部署终止。错误 MT1001:在指定目录中找不到应用程序

无法编译生成的注册码 - MT4109