Freigeben über


.NET-Fehler für Android XA1011

Beispielnachrichten

error XA1011: Using ProGuard with the D8 DEX compiler is no longer supported. Please set the code shrinker to 'r8' in the Visual Studio project property pages or edit the project file in a text editor and set the 'AndroidLinkTool' MSBuild property to 'r8'.

Thema

Das Projekt ist derzeit für die Verwendung des D8 DEX-Compilers in Kombination mit dem ProGuard-Codeschrumpfer konfiguriert. In der Vergangenheit war die Verwendung des ProGuard-Code-Schrumpfers mit dem D8 DEX-Compiler zulässig, aber jetzt wird nur der R8-Code-Schrumpfer für die Verwendung mit dem D8 DEX-Compiler unterstützt.

Lösung

Legen Sie den Code-Schrumpfer auf den Visual Studio-Projekteigenschaftenseiten auf r8 fest, oder bearbeiten Sie die Projektdatei in Visual Studio oder einem anderen Text-Editor, und legen Sie die AndroidLinkTool MSBuild-Eigenschaft auf r8:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
  <AndroidLinkTool>r8</AndroidLinkTool>
</PropertyGroup>

R8 kann in einigen Fällen neue Buildwarnungen oder Fehler im Vergleich zu ProGuard erzeugen, sodass die ProGuard-Regeln für das Projekt möglicherweise einige Aktualisierungen erfordern, um neue Warnungen oder Fehler zu beheben, die nach dieser Änderung angezeigt werden.