我的Xamarin Android项目引用了.NetStandard项目。
Android项目中的断点可以正常工作,但它们不在.NetStandard代码中。有解决此问题的解决方法吗?

最佳答案

我相信Xamarin对ppdb的支持还不够。因此,dotnet标准.csproj中隐含的<DebugType>portable</DebugType>不兼容。

通过将以下内容添加到dotnet标准库的.csproj中,您应该能够在dotnet标准库中达到断点:

<DebugType>Full</DebugType>

这将返回到默认的调试类型“full”,而不是ppdb(便携式pdb)

https://github.com/dotnet/core/blob/master/Documentation/diagnostics/portable_pdb.md#supported-scenarios

如果需要有条件,可以返回到以下内容:
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugType>Full</DebugType>
  </PropertyGroup>

要么
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>pdb-only</DebugType>
  </PropertyGroup>

但是,发布<DebugType>有点多余。

关于xamarin - 断点未在Android项目引用的netstandard项目中受到影响,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43311768/

10-09 10:09