Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Mensajes de ejemplo
error ADB0020: The package does not support the CPU architecture of this device.
Cuestión
ADB0020 significa que el APK de Android compilado no contenía una arquitectura android coincidente para el emulador o el dispositivo en el que se implementó.
Este mensaje indica que adb (Android Debug Bridge) ha notificado un error INSTALL_FAILED_CPU_ABI_INCOMPATIBLE o INSTALL_FAILED_NO_MATCHING_ABIS.
adb forma parte del SDK de Android y lo usa internamente .NET para Android para comunicarse con dispositivos y emuladores de Android. Obtenga más información sobre adb en la documentación de Android.
Solución
Establezca la propiedad MSBuild RuntimeIdentifier o RuntimeIdentifiers para incluir un RID de .NET cuya ABI de Android coincida con el dispositivo:
-
android-armempaqueta la ABIarmeabi-v7a. -
android-arm64empaqueta la ABIarm64-v8a. -
android-x64empaqueta la ABIx86_64.
Por ejemplo, la siguiente configuración de .NET 11 incluye todas las arquitecturas de CoreCLR admitidas:
<PropertyGroup>
<RuntimeIdentifiers>android-arm;android-arm64;android-x64</RuntimeIdentifiers>
</PropertyGroup>
Android NativeAOT es experimental y admite los mismos tres RID.
Notas de implementación
Tenga en cuenta que nada del repositorio de código abierto https://github.com/dotnet/android emite ADB0020, ya que las características como la depuración y la "implementación rápida" se implementan en las adiciones de .NET propietarias para Android.