.NET för Android-fel XA1011

Exempelmeddelanden

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'.

Problematik

Projektet är för närvarande konfigurerat för att använda D8 DEX-kompilatorn i kombination med ProGuard-kodkrymaren. Tidigare var det tillåtet att använda ProGuard-kodkryssaren med D8 DEX-kompilatorn, men nu stöds endast R8-kodkryssaren för användning med D8 DEX-kompilatorn.

Lösning

Ange kodkrynklaren i Visual Studio-projektegenskaperna till r8, eller redigera projektfilen i Visual Studio eller en annan textredigerare och ange AndroidLinkTool egenskapen MSBuild till r8:

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

R8 kan i vissa fall generera nya byggvarningar eller fel jämfört med ProGuard, så ProGuard-reglerna för projektet kan kräva några uppdateringar för att lösa eventuella nya varningar eller fel som visas efter den här ändringen.