如果我为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"
我想使用链接器,以便项目的大小降低到可观的大小。任何人都可以使用此错误吗?
答案 0 :(得分:2)
问题是因为您的旧版sqlite
基于统一API的旧版(预览版)。
在这种情况下,某些API签名发生了变化,以便更容易使用协议(这意味着使用接口而不是类型)。
请注意,关闭链接器会删除构建失败 - 但该符号仍然缺失,您可以在运行时遇到此问题(由于您和# 39;需要仔细测试以确保不会被击中。
答案 1 :(得分:0)
我删除了对sqlite的引用,并通过nuget重新添加它。这解决了这个问题。