Xamarin 共享项目或添加为链接?
Posted
技术标签:
【中文标题】Xamarin 共享项目或添加为链接?【英文标题】:Xamarin shared projects or Add as Link? 【发布时间】:2017-07-15 23:07:05 【问题描述】:如果我理解正确,Xamarin 共享项目允许我们在 Xamarin 移动项目(android、ios、Windows Phone)之间共享代码。
如果我需要在 Xamarin 项目和其他一些项目类型(如 WPF 或 GTK)之间共享源文件,有哪些选项? 我不使用 Eto Forms,因为它不支持我的项目平台所需的所有内容。
在这种情况下,“添加为链接”选项是否可用?
【问题讨论】:
您可以创建一个可移植的项目,您的平台特定项目可以引用该项目。我有一个便携式项目的解决方案。它有一个 XForms 项目和一个 WPF 项目,它们都引用了可移植项目。然后它有一个 Android 项目和一个 iOS 项目,它们都引用了 XForms 项目。它工作得很好。 但是我的项目不能引用常规的 .Net 库项目。例如 Bridge.Net。 【参考方案1】:刚才我已经尝试了所有可用的项目类型。
也许我可以声称共享项目至少受到以下项目类型的支持:
1) Xamarin(很明显)。 2) WPF 应用程序。 3) 常规 .Net 类库。 4) 便携式图书馆。 5) Bridge.NET 项目。
并且不支持:
1) .Net Core 项目。我们必须使用 project.json 来包含文件:
"buildOptions":
"compile":
"include": [
"../../SharedProject1/**/*.cs"
]
或者,我们必须等待 VS 2017 有效。 我建议检查 MonoDevelop 和 Xamarin Studio。
作为一些临时技巧,我们可以将共享项目包含到常规 .Net 库中,并将该库包含到 .Net Core 项目中。
2) 另一个共享项目。它们不能嵌套..所以像常规项目那样的项目层次结构是不可能的。但是当抽象分布在多个项目上时,它是有意义的。
【讨论】:
以上是关于Xamarin 共享项目或添加为链接?的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin.Auth 或 IdentityModel + IdentityServer4
Xamarin Forms:获取存储在共享项目中的图像文件的路径?
构建不成功:Xamarin.Forms 中的 Android 项目出错