.NET für Android - Warnung XA1040

Beispielnachrichten

warning XA1040: The NativeAOT runtime on Android is an experimental feature and not yet suitable for production use. File issues at: https://github.com/dotnet/android/issues

Thema

NativeAOT ist eine experimentelle Laufzeitoption für .NET für Android. Wenn Sie NativeAOT über $(PublishAot)=true für einen unterstützten Veröffentlichungsvorgang oder einen optimierten Build aktivieren, wird diese Warnung ausgegeben, um darauf hinzuweisen, dass NativeAOT noch nicht für den Produktionseinsatz geeignet ist.

Die unterstützten Laufzeiten sind:

  • CoreCLR (standard für Android-Anwendungen in .NET 11 und höher)
  • MonoVM, der Standard für .NET 10 und früher und über $(UseMonoRuntime)=true nur auf unterstützten Zielplattformen verfügbar
  • NativeAOT, ausgewählt von $(PublishAot)=true für unterstützte Veröffentlichungen oder optimierte Builds

Ab .NET 11 wird $(UseMonoRuntime)=true mit NETSDK1242 zurückgewiesen; es ist keine Hintertür aus CoreCLR.

Lösung

Um diese Warnung zu stillen, können Sie eine der folgenden Aktionen ausführen:

  • Verwenden Sie eine unterstützte Laufzeit, indem Sie $(PublishAot)=true aus Ihrer Projektdatei entfernen.

  • Setzen Sie $(EnablePreviewFeatures) auf true in Ihrer Projektdatei, um die experimentelle Natur von NativeAOT zu bestätigen.