【问题标题】:Can PCLs created in Visual Studio be used in Xamarin projects?在 Visual Studio 中创建的 PCL 可以在 Xamarin 项目中使用吗?
【发布时间】:2015-08-24 15:24:53
【问题描述】:

前几天我在 VS2013 中创建了一个可移植类库。它针对以下平台:

  • .NET Framework 4.5
  • Windows 8.1
  • Windows Phone 8.1(非 Silverlight)

我的问题是,这可以在 Xamarin.iOS 或 Xamarin.Android 等 Xamarin 项目中使用吗?我找到了一个声称支持 Xamarin 的项目,但是为 "ios""android" 查找解决方案和项目文件却一无所获。如果没有,我该怎么做才能使我的库可移植到这些平台?

谢谢。

【问题讨论】:

  • 是的。根据定义,可移植类库可移植的。您不会在其中找到特定于平台的代码。你有什么问题?
  • @HighCore 我的平台只目标以上平台,不是Xamarin。它可以在 Xamarin.iOS 或 Android 上使用吗?
  • 是的,只需更改目标平台,然后重建。
  • @HighCore 我明白你在说什么。问题是,Visual Studio 不提供此类功能,因为目标 Xamarin.iOS 和 Xamarin.Android 是 Xamarin Studio 的一部分。
  • 如果您检查 .csproj 文件,您的目标是哪个 PCL 配置文件(XML 标记 <TargetFrameworkProfile>)?鉴于上述平台,我猜想 111。配置文件 111 也隐含地针对 Xamarin iOSAndroid,因此即使没有明确指出类库也可以被 iOS 和Android只要是profile 111库。

标签: c# android ios xamarin portable-class-library


【解决方案1】:
  1. 如果尚未安装 Xamarin for Visual Studio,则需要先安装
  2. 打开您的 PCL 项目并更改目标配置文件以包含您想要支持的 Xamarin 平台。 (例如配置文件 78)
  3. 可选择重新定位所有依赖项(项目/nuget)
  4. 重新编译您的 PCL

您现在应该拥有在 Xamarin 中也可以使用的 dll。

【讨论】:

    【解决方案2】:

    您必须使您的项目以这些平台为目标,然后重新编译您的 .dll 以使它们可用于 Android 和 iOS。

    我不知道你的 Visual Studio 是什么版本,但是针对 Android/iOS 的选项应该在 VS2013 中可用。无论如何,请尝试下载 Visual Studio 2015 社区(免费),使用它打开您的项目,该选项应该在那里。

    如果这些都不起作用,您也可以尝试手动将 .csproj 文件更改为其他配置文件。据说这对 this answer 有效。

    【讨论】:

      猜你喜欢
      • 2019-09-30
      • 2017-08-22
      • 1970-01-01
      • 2017-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多