Fout in .NET voor Android ADB0020

Voorbeeldberichten

error ADB0020: The package does not support the CPU architecture of this device.

Probleem

ADB0020 betekent dat de ingebouwde Android APK geen overeenkomende Android-architectuur voor de emulator of het apparaat bevat waarop deze is geïmplementeerd.

Dit bericht geeft aan dat adb (Android Debug Bridge) een INSTALL_FAILED_CPU_ABI_INCOMPATIBLE- of INSTALL_FAILED_NO_MATCHING_ABIS-fout heeft gerapporteerd. adb maakt deel uit van de Android SDK en wordt intern gebruikt door .NET voor Android om te communiceren met Android-emulators en -apparaten. Meer informatie over adb uit de Android-documentatie.

" needed as the existing translation is correct.

Stel de MSBuild-eigenschap RuntimeIdentifier of RuntimeIdentifiers in op een .NET RID waarvan de Android-ABI overeenkomt met die van het apparaat:

  • android-arm verpakt de armeabi-v7a ABI.
  • android-arm64 verpakt de arm64-v8a ABI.
  • android-x64 verpakt de x86_64 ABI.

De volgende .NET 11-instelling bevat bijvoorbeeld alle ondersteunde CoreCLR-architecturen:

<PropertyGroup>
  <RuntimeIdentifiers>android-arm;android-arm64;android-x64</RuntimeIdentifiers>
</PropertyGroup>

Android NativeAOT is experimenteel en ondersteunt dezelfde drie RID's.

Opmerkingen bij de implementatie

Houd er rekening mee dat niets in de opensource-repository https://github.com/dotnet/android ADB0020 genereert, aangezien functies zoals foutopsporing en snelle implementatie worden geïmplementeerd in de eigendomsmatige .NET voor Android-oplossingen.