所以我正在使用Xamarin创建一个Android应用程序。所有的android“东西”都将出现在Android项目中,我创建了一个共享项目来存放业务逻辑,这样我就可以使用它来创建一个IOS应用程序。
我已成功引用Android项目中的共享项目 - 到目前为止一切顺利。因此,我的数据库代码位于共享项目中,可供任何平台使用。
我的应用程序需要连接到Web服务,所以我想在共享项目中存放所有内容,但似乎无法向共享项目添加引用(Web或其他) - 这是正确的吗?肯定它不能或我不能在共享项目中使用JSON.net或任何其他需要引用外部DLL的东西......?这将导致我多次复制任何类似的代码,每个平台一次。
我肯定在这里遗漏了一些东西 - 任何谷歌搜索都会返回如何从另一个项目引用共享项目......不是我需要的。
所以问题是,我可以将共享项目中的引用添加到Web服务/第三方DLL,如果是这样,我该怎么做?
感谢您的帮助。
答案 0 :(得分:0)
在共享项目中无法使用reference指令。您必须在平台特定项目(Project.iOS)上实例化引用,并将其传递给共享项目中的类。
使用AppDelegate定义Web服务引用。
答案 1 :(得分:-1)
iOS应用不能使用您自己创建的共享库。您可以使用的唯一一个是Apple在系统框架中提供的,您可以在iOS SDK中找到的。
您可以使用静态库。这可能会或可能不会解决您的问题。
可能Xcode正在执行此规则。
对于简单的测试,您可以共享单个源文件,而不是库吗?
他们也没有被称为" DLLs"在iOS或Mac OS X上,他们被称为" dylibs"。