Freigeben über


.NET für Android–Fehler/Warnung XA4301

Problem

Diese Meldung zeigt ein Problem beim Hinzufügen einer nativen Android-Bibliothek (*.so-Datei ) zur APK-Datei Ihres .NET für Android-Projekts während des Builds an.

Dies betrifft u. a. folgende Fälle:

  • .NET für Android kann die Android-ABI für die Bibliothek nicht ermitteln.
    • Wenn sie aus einem Assemblyverweis stammen, überspringt .NET für Android diese Datei und gibt eine Warnung aus, in der die Datei erwähnt wird.
    • Wenn es aus dem .NET für Android-Projekt stammt, wird .NET für Android einen Fehler melden, der die Datei erwähnt.
  • Es wurden doppelte Instanzen von Native-Bibliotheken gefunden.
    • .NET für Android enthält den ersten Eintrag in der APK und gibt eine Warnung aus, die auf die duplizierte Datei hinweist.

Weitere Informationen zu Android-ABIs finden Sie in der Android-Dokumentation .

Häufige Ursachen:

  • Das .NET für Android-Projekt enthält entweder eine @(EmbeddedNativeLibrary)- oder eine @(AndroidNativeLibrary)-Buildaktion in einem Verzeichnis, das keinen gültigen Android-ABI-Namen hat.
  • Das .NET für Android-Projekt verweist auf zwei Android-Bibliotheksprojekte, die dieselbe systemeigene Bibliothek über ein @(EmbeddedNativeLibrary) oder @(AndroidNativeLibrary) buildelement enthalten.

Lösung

  • Platzieren Sie alle nativen Android-Bibliotheken in einem Verzeichnis in Ihrem .NET für Android-Projekt, das mit der entsprechenden ABI benannt ist, z. B. arm64-v8a, armeabi-v7a, x86 oder x86_64.
  • Entfernen Sie alle doppelten Instanzen der nativen Bibliothek.