Error de migración de Jetpack: no se permiten símbolos sueltos – Cazimir Roman

¿Tiene el error mencionado anteriormente en Android Studio 4.2 Canary 13?

java.lang.AssertionError: Unbound symbols not allowed
Unbound public symbol for public kotlinx.android.synthetic.main.activity_main/coordinator.<get-coordinator>|928291878556573136[0

El motivo de este error es que Jetpack Compose no se puede utilizar además de las importaciones sintéticas habituales para diseños xml:

EDITAR: Problema resuelto en la versión 1.4.20: https://github.com/JetBrains/kotlin/pull/3726

Entonces, si tiene una importación similar a esta en su Actividad y fragmentos:

… tienes 2 opciones para solucionar el problema:

  1. Reemplazar importaciones sintéticas con enlace de datos normal
  2. Actualización a la versión 1.4.20-M2 de Kotlin

La primera opción no era viable para mí, así que cambié a la segunda opción.

Configuración -> Idiomas y marco

Seleccione Early Access Preview 1.4.xy asegúrese de tener instalada la versión 1.4.20-M2.

En popamiAdemás, debe cambiar el complemento Kotlin gradle para usar la versión 1.4.20-M2 también.

Para asegurarse de que la última versión del hito sea visible, debe incluir la siguiente dependencia del repositorio de maven en el proyecto build.gradle expediente.

buildscript {
ext.kotlin_version = "1.4.20-M2"
repositories {
google()
jcenter()
maven {
url "https://dl.bintray.com/kotlin/kotlin-eap/"
}
}
dependencies {
classpath 'com.android.tools.build:gradle:4.2.0-alpha13'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'

// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}

Antes de ir … Si este artículo le resultó útil, haga clic en el botón ❤️ o 👏 a continuación o comparta el artículo en Facebook para que sus amigos puedan beneficiarse de él.

¡Feliz programación!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *