如何使用Visual Studio for Mac在Xamarin.Forms中多目标?

乐乐乐

我开始创建一个.NET Standard Library我打算做NuGet的-但后来发现我还需要特定于平台的功能。

因此,我发现了这个堆栈溢出问题-这表明我可以改用Multiplatform Library模板。但是在这里,我遇到了DependencyService问题-以及问题Custom Renderer-有效地意味着,非平台特定的库无法与平台特定的代码进行通信。

我还尝试编辑csproj文件,例如:ABC并通过使用以下csproj:

<Project Sdk="MSBuild.Sdk.Extras/2.0.29">
  <PropertyGroup>
    <TargetFrameworks>netstandard2.0;Xamarin.ios10</TargetFrameworks>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Xamarin.Forms" Version="4.1.0.581479" />
  </ItemGroup>
</Project>

...生成以下解决方案:

在此处输入图片说明

但是,Class1在中Xamarin.iOS不能Xamarin.Forms.Platform.iOS访问Visual Studio for Mac我最近检查了一下,发现它可以Visual Studio在Windows上运行-使用相同的csproj。

有什么办法可以实现多目标Visual Studio for Mac


编辑1:我发现了一个问题,MSBuild.Sdk.ExtrasGitHub上导致这一职务看来可以安装一个扩展名为DotNetCoreSupportAnyTargetFramework.DotNetCoreSupportAnyTargetFramework_1.0但是它不会在VSfM 8.1.5中正确安装:

在此处输入图片说明

在较旧的VSfM中进行尝试,我无法打开项目或创建新项目-因此无法测试扩展是否有效。它可能与以下错误消息有关:

在此处输入图片说明

打开旧的VSfM时显示。


编辑2:更改顺序后,Xamarin.ios10首先给出目标框架,即可以访问Xamarin.iOS和Xamarin.Forms.Platform.iOS,正如Matt Ward所述。

但是,我无法将对NetStandard库的引用添加到Xamarin.Forms项目中以实际测试该库:

在此处输入图片说明

并切换回首先放置netstandard:

项目/MyStandardLibrary/MyStandardLibrary/MyButtonRender.cs(12,12):错误CS0246:找不到类型或名称空间名称“ ExportRendererAttribute”(您是否缺少using指令或程序集引用?)(CS0246)(MyStandardLibrary)等。

布兰登·明尼克(Brandon Minnick)

当前版本的Visual Studio for Mac,v8.2不支持多目标。

根据Visual Studio for Mac路线图,Visual Studio for Mac v8.3中将提供多目标支持:

https://docs.microsoft.com/visualstudio/productinfo/mac-roadmap#2019-q3-july-september

编辑:您可以在以下位置关注团队在添加多目标支持方面的进展:https : //github.com/mono/monodevelop/pull/7848

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Visual Studio和Mac中同时使用Xamarin

Xamarin Forms Android - 如何在 Visual Studio for Mac 2019 中启用 Proguard Shrinker

Xamarin Forms 和 Visual Studio for Mac - 编译时出错

使用Visual Studio在Mac上连接Xamarin

使用Visual Studio和.NET Framework进行多目标构建

在Visual Studio中编译MonoMac和Xamarin.Mac库

在Mac OS Visual Studio上的Xamarin表单应用程序中,如何设置iOS构建级别?

带有 Visual Studio 2017 的多目标框架

无法在Mac的Visual Studio中找到Xamarin.Forms PCL模板

在 Mac 上的 Xamarin Studio 中使用 SVN

尝试生成Xamarin.iOS应用时,Visual Studio for Mac中的sgen TypeLoadException

Visual Studio 2017 mac 中的 xamarin.android.common.target 内存不足

无法连接到 Visual Studio 中的 mac 构建服务器(Xamarin 表单)

如何在Visual Studio 2019 4.4+和Xamarin.Forms中使用CarouselView?

Xamarin.Droid使用Xamarin.Forms时在Visual Studio 2015中导致生成错误

使用Xamarin的Visual Studio 2015中缺少模拟器目标下拉列表

我无法使用Visual Studio 2015的Xamarin Mac Agent连接到Mac

如何从Visual Studio为Xamarin Forms项目创建IPA文件

Xamarin Forms:使用Visual Studio的Droid项目中的错误

在 Visual Studio 2017 中找不到 ClassLibrary(Xamarin.Forms)

Xamarin Forms在Visual Studio中的编译错误

在Visual Studio 2017中没有xamarin.forms BlankApp

Visual Studio 2017 Pro 中的 Xamarin.Forms Azure

没有Mac的Xamarin Visual Studio IOS开发?

Xamarin 项目的 Visual Studio 社区版本 (MAC) 的限制

无法将Visual Studio连接到MAC Mini-Xamarin

Xamarin UI 测试 - 不会从 Visual Studio for Mac 运行测试

新的 Visual Studio for Mac (Xamarin Studio) 与 Windows 上的 Visual Studio 有什么不同吗?

如何在Aeron库中创建多目标广播