Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

406
Vistas
Problemas para construir Crashlytics en Unity en Android

Estoy intentando y fallando en lograr que Crashlytics se construya en la unidad.

Estoy usando la unidad 2018.4.30. Se agregó a Unity como un paquete (7.0.2). Otros paquetes de firebase ya estaban en el proyecto y funcionando. Inicialmente ejecuté el solucionador de dependencias e intenté construirlo. El resolutor agregó estos:

 implementation 'com.google.firebase:firebase-crashlytics:17.2.2' //Packages/com.google.firebase.crashlytics/Firebase/Editor/CrashlyticsDependencies.xml:13 implementation 'com.google.firebase:firebase-crashlytics-unity:7.0.2' //Packages/com.google.firebase.crashlytics/Firebase/Editor/CrashlyticsDependencies.xml:20

que se construyó pero se estrelló al iniciarse con un mensaje de error que me indicaba una configuración específica de Android que tenía que agregarse al archivo Gradle (es extraño que el resolutor no lo haya hecho...)

Seguí esas instrucciones y agregué

 classpath 'com.google.gms:google-services:4.3.5' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.5.0'

a las dependencias

también agregué

 apply plugin: 'com.google.gms.google-services' apply plugin: 'com.google.firebase.crashlytics'

al archivo gradle

mis herramientas gradle son:

 classpath 'com.android.tools.build:gradle:3.4.3'

mi mensaje de error es:

 * What went wrong: A problem occurred configuring root project 'gradleOut'. java.lang.ClassCastException: org.gradle.api.internal.file.DefaultFilePropertyFactory$DefaultDirectoryVar$1 cannot be cast to org.gradle.api.file.Directory
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Actualizar gradle wrapper a la versión 5.6.4 (de 5.4.1) resolvió mi problema con este error.

gradle-wrapper.propiedades

distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip

Mis herramientas Android Build Gradle son 3.5.4

com.android.tools.build:gradle:3.5.4

over 4 years ago · Santiago Trujillo Denunciar

0

No vale la pena que si está usando Unity, no debería tener que editar archivos gradle en absoluto. Puede agregar un archivo mainTemplate.gradle si lo desea por otras razones (me gusta hacer esto para que EDM4U no agregue un montón de bibliotecas a Assets/Plugins/Android ) pero debe ser un poco cauteloso (en las versiones más nuevas de Unity , como finales de 2019 y toda la rama de 2020, también debe agregar gradleTemplate.properties ).

Por lo general, solo debe seguir los pasos de integración de Unity en lugar de los de Android . La línea apply plugin: 'com.google.gms.google-services' en realidad entra en conflicto con lo que hace el complemento Firebase Unity. apply plugin: 'com.google.firebase.crashlytics' se puede hacer para que funcione con algo de esfuerzo, pero tampoco es necesario a menos que esté experimentando con la integración de NDK (esta es una configuración no admitida en Unity SDK y el reportero de fallas nativo no actualmente no funciona con Unity 2020 en mis propias pruebas).

Recomendaría revertir cualquier cambio de configuración de compilación que haya realizado para intentar que Crashlytics funcione con Unity e intente volver a importar. También vale la pena mantener el SDK lo más actualizado posible, aunque al mirar las notas de la versión no debería haber cambios en Crashlytics entre 7.0.2 y 7.1.0.

Si lo anterior no funciona, hubo un problema en la rama SDK 6.x con Unity 2020.1. Puede probar esta solución alternativa (tenga en cuenta que estoy reemplazando todo con mainTemplate.gradle ya que 2018 no dividió proyectos como finales de 2019 y 2020):

Ahora abra mainTemplate.gradle y busque algo que se parezca más o menos a:

 allprojects { buildscript { repositories {**ARTIFACTORYREPOSITORY** google() jcenter() } dependencies {

Dentro allprojects.buildscript.dependencies (las dependencies { bit en este ejemplo), agregue este código para informarle a Gradle sobre Crashlytics:

 // Add the Crashlytics Gradle plugin. classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0'

y esta línea de código hasta el final de mainTemplate.gradle para agregar el complemento Crashlytics a su aplicación:

 // Apply the Crashlytics Gradle plugin apply plugin: 'com.google.firebase.crashlytics'

Si Crashlytics aún no funciona, puede presentar un informe de error . Si la segunda solución funciona o no le importa depurar su proyecto en público, puede presentar un problema de GitHub aquí .

over 4 years ago · Santiago Trujillo Denunciar

0

en resumidas cuentas, mi resolución de dependencias no generaba crashlytics_build_id.xml y algunos otros archivos. El mensaje de error me llevó a una solución Gradle específica de Android que no estaba destinada a los clientes de Unity. Una vez que deshice mis cambios de Gradle y tuve esos archivos generados, todo estuvo bien.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda