无法在Xamarin iOS中解析System.Void UIKit.UITableView

时间:2015-01-20 21:31:07

标签: xamarin.ios xamarin

如果我为Xamarin.iOS构建我的Visual Studio项目并将链接器行为设置为“不要链接”,那么一切正常,除了生成的IPA文件是30MB(在应用程序商店中扩展到101MB!)。 / p>

如果我将链接器行为更改为其他任何内容(Link All或Link SDK),则会收到以下编译错误;

Error   32  Failed to resolve "System.Void UIKit.UITableView::set_DataSource(UIKit.UITableViewDataSource)" reference from "Xamarin.iOS, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065"

我想使用链接器,以便项目的大小降低到可观的大小。任何人都可以使用此错误吗?

2 个答案:

答案 0 :(得分:2)

问题是因为您的旧版sqlite基于统一API的旧版(预览版)。

在这种情况下,某些API签名发生了变化,以便更容易使用协议(这意味着使用接口而不是类型)。

请注意,关闭链接器会删除构建失败 - 但该符号仍然缺失,您可以在运行时遇到此问题(由于您和# 39;需要仔细测试以确保不会被击中。

答案 1 :(得分:0)

我删除了对sqlite的引用,并通过nuget重新添加它。这解决了这个问题。