c# android xamarin.android aapt

c# - “Aapt.exe” salió del código 1 al crear Mono para el proyecto de Android



xamarin.android (9)

Paso 1: obtener más información

Si se encuentra con este error, con suerte, también encontrará una publicación de Jonathan Pryor que responde a otra persona con el mismo problema. La sugerencia es activar un registro más detallado de MSBuild para ver si obtiene algo útil de esos mensajes.

En el cuadro de diálogo Opciones de Visual Studio, vaya a "Proyectos y soluciones" y luego "Crear y ejecutar". Cambie la "verbosidad de la salida de compilación del proyecto MSBuild" de "Mínimo" a "Normal" y compile nuevamente su proyecto. Después de hacerlo, recibí este mensaje que fue mucho más útil. Aparentemente, los recursos no pueden incluir nada más que letras, números, puntos y guiones bajos ( [a-z0-9_.] ).

Solución

Renombrar archivo dentro de las restricciones requeridas y construir nuevamente

Si bien este mensaje de error puede surgir para muchas más situaciones que problemas de restricción de nombre de archivo, un cambio de nombre de archivo solucionó este problema en particular por completo.

Preparé una aplicación Mono para Android bastante simple que no hace más que reproducir un MP3 "AndroidResource" en un servicio en segundo plano (copiado del último artículo de Greg Studio de Visual Studio Magazine sobre Background Services en MfA ). Puse el código junto con mi propio archivo MP3 personalizado, y traté de construirlo, solo para obtener este hermoso error.

"aapt.exe" exited with code 1

Esa es la única información en la lista de errores y el registro de salida de compilación.


En Mono.Android proyecta que se produce este error cuando un archivo axml Resources / Layout tiene espacios en blanco en el nombre, por ejemplo. "Copia de xxxx.xaml"


En los proyectos de Mono.Android, este error puede ocurrir cuando el nombre de un archivo Recursos / Dibujable tiene, en el nombre, por ejemplo: "Nombre de archivo.png intente con guión bajo:" Nombre_de_archivo.png "


Lo resolví eliminando la biblioteca portátil que contiene la lógica empresarial del Android y luego la reconstruí por separado. Después de la reconstrucción, limpie su proyecto de Android y agregue nuevamente la referencia a su biblioteca de clases portátil. Finalmente construir el proyecto android.


Para mí fue un problema con un nombre de recurso. Una de mis imágenes era de MonoTouch y, como tal, su nombre de archivo incluía un ''@ 2x'' en el nombre de archivo. Después de eliminar este aapt.exe ya no se quejó y la solución se construyó.


Sí, recuerda no tener:

  1. Recursos, imágenes, activos, diseño de axml que comienza con números
  2. Para comprobar sus nombres de archivo con espacios. (Tuve este problema. Uno de mis diseños tenía un espacio final justo antes de la extensión ".axml")
  3. Para verificar si alguna de sus imágenes, recursos, archivos, diseños u otros tiene algún guión (-). Se supone que no deben estar allí.

Siga los pasos a continuación para identificar el problema:

1 - En Visual Studio: Herramientas> Opciones> Proyectos y soluciones> Construir y ejecutar.

1.1 - En el menú desplegable: MSBuild proyecto de verbosidad de salida de compilación:> Diagnóstico.

1.2 - Cerrar el cuadro de diálogo.

2 - Ver> Salida (Ctrl + W, O).

3 - Ejecutar la construcción o la reconstrucción.

En la salida encontramos esta línea:

C: / Archivos de programa (x86) / MSBuild / Xamarin / Android / Xamarin.Android.Common.targets (1665.3): error MSB6006 "aapt.exe" salió del código 1

Lo que está justo arriba de este error es lo que causó el error.


Una solución similar para mí, necesitaba eliminar los guiones (''-'') de mis nombres de archivo PNG en la carpeta de recursos


Verifique sus imágenes / png (s) en la carpeta de Drawable. Me dio un error debido a una imagen png, una vez que se excluye del proyecto. Funciona bien...