Error de compilación: Error con el proyecto de Android en Xamarin.Forms

Acabo de crear una pequeña aplicación de ejemplo Xamarin.Forms. Cuando construyo mi proyecto de Android consigo algunos errores. Acabo de googled errores y encontrar algunas soluciones. Pero nada funciona bien. El último día que había reinstalado Visual Studio 2015 y Xamarin Studio. Así que probablemente xamarin se actualizará en todos.

Acabo de enumerar mis errores y sugerir soluciones.


Error 1:

Error al descomprimir. Descargue https://dl-ssl.google.com/android/repository/android_m2repository_r10.zip y extráigalo en el directorio … ~ \ Local \ Xamarin \ Android.Support.v4 \ 21.0.3 \ content.

Solución sugerida: El archivo se descarga correctamente y se reemplaza según el mensaje de error.


Error 2: _Por favor, instale el paquete: 'Android Support Library' disponible en el instalador de SDK. El archivo de biblioteca Java … ~ \ Local \ Xamarin \ Android.Support.v4 \ 21.0.3 \ incorporado \ classes.jar no existe. Instale el paquete: 'Android Support Library' disponible en el instalador del SDK. El archivo de biblioteca de Java … ~ \ Local \ Xamarin \ Android.Support.v4 \ 21.0.3 \ embedded \ libs / internal_impl-21.0.3.jar no existe._

Solución sugerida: La Biblioteca de soporte de Android se elimina y se vuelve a instalar.


Error 3: Razón: … ~ \ Local \ Xamarin \ zips \ 1FD832DCC1792D8ACA07FAC3259FC5A9.zip no es un archivo zip válido.

Solución sugerida: No encontré ninguna solución para este error.


Estas soluciones son todavía inútiles. Y no funciona en mi caso.


Estoy usando :

  • Xamarin 4.0.0.1689 (f860fe4)
  • Xamarin.Android 6.0.0.34 (3efa14c)
  • Xamarin.iOS 9.2.1.51 (3c0ec35)

Aquí está el informe detallado:

=== Estudio Xamarin ===

Versión 5.10 (versión 871) Instalación UUID: c5309e12-1ab1-494c-9296-033a0a5c3f24 Tiempo de ejecución: Microsoft .NET 4.0.30319.42000 GTK + 2.24.23 (tema MS-Windows) GTK # 2.12.30

=== Xamarin.Android ===

Versión: 6.0.0 SDK de Android: D: \ Android \ android-sdk Versiones de Android compatibles: 2.3 (nivel de API 10) 4.0.3 (nivel de API 15) 4,1 (nivel de API 16) 4,3 18) 4,4 (API nivel 19) 4,4,87 (API nivel 20) 5,0 (API nivel 21) 5,1 (API nivel 22) 6,0 (API nivel 23)

SDK Tools Versión: 24.4

SDK Platform Tools Versión: 23.0.1

SDK Build Tools Versión: 23.0.1

Java SDK: C: \ Archivos de programa (x86) \ Java \ jdk1.7.0_55 java version "1.7.0_55" Java (TM) SE Runtime Environment (build 1.7.0_55-b13) Cliente Java HotSpot (TM) -b03, modo mixto, compartir)

=== Xamarin Android Player ===

Versión: 0.6.5 Ubicación: C: \ Archivos de programa \ Xamarin Android Player \ DeviceManager.exe

=== Información de compilación ===

ID de la versión: 510000871 Git revision: 4e9c5abb5ffdae12ba02ac49da83f8b2011dbb88 Fecha de creación: 2015-11-12 07: 16: 34-05 Complementos de Xamarin: 55007ed0e56436f385d8e26394a45be563abc7e8 Construir carril: monodevelop-windows-cycle6

=== Sistema operativo ===

Windows 6.3.9600.0 (64 bits)

¿Alguna idea o sugerencia para salir de estos errores?

EDIT: Esta información ahora está incluida en nuestra documentación: https://developer.xamarin.com/guides/android/troubleshooting/resolving-library-installation-errors/

Biblioteca de soporte de Xamarin.Android NuGet m2repository arregla

1. Investigación

Puede encontrar problemas con la descarga del m2repository cuando m2repository referencia a un paquete NuGet de las Bibliotecas de soporte de Android / Servicios de Google Play.

Ejemplo de error:

Download failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r25.zip and put it to the C:\Users\[Username]\AppData\Local\Xamarin\{SUPPORT LIBRARY NAME}\{VERSION NUMBER} directory."

Directorio de Mac: /Users/[Username]/.local/share/Xamarin/

Directorio de Windows: C:\Users\[Username]\AppData\Local\Xamarin\

2. Contenido de la carpeta

Este ejemplo utilizará las rutas de acceso de Windows. Esto se puede aplicar a cualquiera de los sistemas operativos.

  • Teniendo en cuenta lo siguiente: C:\Users\[Username]\AppData\Local\Xamarin\

  • Se mostrará una carpeta para cada una de las respectivas bibliotecas de soporte de Android / Servicios de Google Play.

  • Cada biblioteca debe tener una colección de versiones:

Nota: En este ejemplo estoy mostrando todas las versiones de Android.Support.v4

  • A continuación, investigaremos la versión respectiva en la que estamos interesados. Debemos ver dos carpetas dentro, de content y embedded :

  1. content – Contiene el m2repository
  2. .aar – Contiene los respectivos contenidos .aar

3. Fijación automática

  • Eliminar la carpeta de la biblioteca versionada que está dando errores:

Directorio de Mac: /Users/[Username]/.local/share/Xamarin/{SUPPORT LIBRARY NAME}/{VERSION NUMBER}

Directorio de Windows: C:\Users\[Username]\AppData\Local\Xamarin\{SUPPORT LIBRARY NAME}\{VERSION NUMBER}

  • Reconstruya su proyecto (que iniciará una tarea de compilación para volver a descargar la biblioteca).

4. Reparación manual

Hay dos pasos para corregir manualmente este error.

  1. Agregar la carpeta m2repository a la carpeta /content .
  2. Agregar el contenido de la biblioteca de asistencia de Android / Google Play Services .aar a la carpeta /embedded .

1. Agregar el repositorio m2 a la carpeta / content

Descargue el respectivo m2repository desde google.

https://dl-ssl.google.com/android/repository/android_m2repository_r25.zip

Nota: Este número de versión variará en función de su mensaje de error.

  • Extraiga ese .zip en cualquier directorio. Ahora debería haber una carpeta android_m2repository_r25 .
  • Dentro de la carpeta android_m2repository_r25 , tenemos una carpeta m2repository .
  • Coloque el m2repository en la carpeta {VERSION NUMBER}/content

2. Agregar el contenido .aar a la carpeta / incrustada

  • Dentro de la carpeta m2repository , hay un archivo .aar para que se resuelva la biblioteca de soporte. Se puede encontrar en el directorio com\android\support :

Ejemplo:

m2repository\com\android\support

  • Debería haber un support-v4\{VERSION NUMBER} que contenga el archivo .aar .
  • Extraiga el .aar y coloque el contenido en la carpeta embedded .

Ejemplo:

  • m2repository\com\android\support\support-v4\23.1.1\support-v4-23.1.1 contendrá elementos tales como aapt , aidl , assets , libs , res , AndroidManifest.xml , annotations.zip y classes.jar
  • Coloque todo el contenido en la carpeta {VERSION NUMBER}/embedded .

5. Nuevo arreglo manual

  • Obtener la URL de la m2repository que falta descargar
  • Utilice un hash MD5 en la URL de descarga
  • Cambie el nombre del archivo a {MD5HASH} .zip (Donde MD5HASH es la URL de descarga hash)
  • Coloque el nuevo archivo .zip hash en su directorio Xamarin \ zips

Elimine el zip en \ Local \ Xamarin \ zips \ 1FD832DCC1792D8ACA07FAC3259FC5A9.zip

Limpie y reconstruya su solución.

Elimine todos los archivos zip. Incluso si le pide que descargue y reemplace, se corromperá de nuevo. La forma más rápida es simplemente eliminar todos los archivos zip y reconstruir, se descargará y descomprimirá automáticamente según sea necesario.

El Android m2repository se corrompe a menudo en mi máquina.

Con Android también sugiero, construir en contra de API 23 (6.0) y establecer el nivel mínimo a 15 (a menos que realmente necesita API 10). Asegúrese de que no utilice la selección "SDK más reciente", que se sabe que también causa problemas en el pasado, seleccione la API más alta debajo.

Tengo ese problema cuando he intentado utilizar formularios xamarin 2.0

El problema suele venir cuando IDE (VS2015 por ejemplo) intenta descomprimir ese zip … VS se bloquea y debes forzar cerrarlo … cuando vuelves a abrir el IDE no puedes compilar nada con xamarin que utilice esta versión.

En primer lugar, debe descargar r23 no r10. Cada uno contiene ensamblajes para cada api de la versión.

Cuando lo tengas debes borrar la carpeta de la biblioteca en C: \ Users \% username% \ AppData \ Local \ Xamarin por ejemplo Android.Support.v4

Cree una ruta con el nombre de biblioteca C: \ Users \% username% \ AppData \ Local \ Xamarin {LibraryName} \ 23.0.1

Copiar y descomprimir descarga r23 a C: \ Users \% username% \ AppData \ Local \ Xamarin \ Android.Support.v4 \ 22.2.10 \ content

Vaya a m2repository \ com \ android \ support y bajo libraryname \ version obtendrá un archivo con la extensión ".aar", este es un archivo zip renombrarlo .rar y descomprimirlo en C: \ Users \% username% \ AppData \ Local \ Xamarin {LibraryName} \ 23.0.1 \ embedded

Por cierto, una copia de r23.zip descargado debe ser guardada en:

C: \ Users \% username% \ AppData \ Local \ Xamarin {nombre de biblioteca} \ 23.0.1 \

Cuando lo haya hecho, podrá volver a compilar

Pasé una noche entera luchando por conseguir este trabajo, resultó que había cerrado con fuerza VS durante una construcción inicial pensando que se quedó sin saber que en realidad estaba descargando un archivo de> 200MB a mi C: \ Usuarios [nombre de usuario] \ AppData \ Local \ Xamarin \ carpeta de cremalleras.

Eliminar el archivo zip dañado y ser lo suficientemente paciente como para volver a ejecutar una reconstrucción definitivamente arregló el problema.

  • Mostrar mensaje para conocer la ubicación
  • FormsAppCompatActivity y MasterDetailPage: no hay barra de herramientas
  • Xamarin Android Crash en Inicio "Got a SIGSEGV"
  • Agregue un niño al padre en el botón Haga clic en Xamarin.forms
  • GetObject <T> de Akavache se bloquea cuando se espera. Alguna idea de lo que está mal aquí?
  • Xamarin.forms mezclando ContentPage y la actividad de Android
  • Cómo ocultar las pestañas de Android utilizando Xamarin Formulario renderizador personalizado?
  • Xamarin.Forms acceder a los controles escritos en el código de marcado
  • Cómo desactivar la selección resaltada en listview xamarin.forms en android
  • Xamarin.Forms SetHasNavigationBar causas falsas salto en PushAsync
  • Proguard en gris en ciertas configuraciones de construcción
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.