Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Przykładowe komunikaty
warning XA1028: The 'AndroidEnableProguard' MSBuild property is set to 'true' and the 'AndroidLinkTool' MSBuild property is empty, so 'AndroidLinkTool' will default to 'proguard'.
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'.
Problematyka
Projekt jest obecnie skonfigurowany do używania kompilatora D8 DEX i ma starszą AndroidEnableProguard właściwość MSBuild ustawioną na true wartość bez żadnego zestawu wartości dla nowszej AndroidLinkTool właściwości MSBuild. Powoduje to błąd XA1011, ponieważ kompresor kodu ProGuard nie jest już zgodny z kompilatorem D8 DEX.
Rozwiązanie
Edytuj plik projektu w programie Visual Studio lub innym edytorze tekstów i usuń wszystkie stare
<AndroidEnableProguard>elementy.Po zapisaniu pliku projektu otwórz go w programie Visual Studio w zwykły sposób i ustaw zmniejszanie kodu na stronach właściwości projektu programu Visual Studio na r8 lub kontynuuj edytowanie pliku projektu w edytorze tekstów i ustaw
AndroidLinkToolwłaściwość MSBuild na :r8<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <AndroidLinkTool>r8</AndroidLinkTool> </PropertyGroup>
R8 może w niektórych przypadkach tworzyć nowe ostrzeżenia kompilacji lub błędy w porównaniu z ProGuard, więc reguły ProGuard dla projektu mogą wymagać kilku aktualizacji w celu rozwiązania wszelkich nowych ostrzeżeń lub błędów, które pojawiają się po tej zmianie.