waarschuwing XA4257 voor .NET voor Android

Voorbeeldbericht

warning XA4257: Skipping Java peer type 'Google.Android.Material.Shadow.ShadowDrawableWrapper' from assembly 'Xamarin.Google.Android.Material' because referenced type 'AndroidX.AppCompat.Graphics.Drawable.DrawableWrapper' from assembly 'Xamarin.AndroidX.AppCompat.AppCompatResources' could not be resolved in '/home/user/.nuget/packages/xamarin.androidx.appcompat.appcompatresources/1.6.0/lib/net6.0-android31.0/Xamarin.AndroidX.AppCompat.AppCompatResources.dll'. This type will not be included in the trimmable type map.

Issue

De toewijzingstabel voor trimbare typen heeft een Java-peer-type gevonden waarvan het beheerde basistype, de geïmplementeerde interface of de beperking van een algemene typeparameter verwijst naar een type dat niet aanwezig is in de verzameling opgeloste assemblies.

Dit kan gebeuren wanneer NuGet-pakketten in de Android-bindingsgrafiek zijn gebouwd op basis van verschillende versies van een ander bindingspakket. Het type kan niet worden gebruikt door de app, maar NativeAOT compileert een gesloten wereld en moet geroote beheerde typen gretig oplossen.

Solution

Als uw app gebruikmaakt van het overgeslagen type, werk dan de betrokken NuGet-pakketten bij zodat het type waarnaar wordt verwezen bestaat, of werk bij naar versies van de bindingspakketten die compatibel zijn met elkaar.

Als uw app het overgeslagen type niet gebruikt, is er geen actie vereist. Het type wordt weggelaten uit de getrimde typekaart, zodat NativeAOT niet mislukt tijdens het oplossen van ongebruikte verouderde metagegevens.