Intenté usar Room Api y tuve que lidiar con tareas asincrónicas, ya sabes por qué. Elegí kotlin coroutines y androidx.lifecycle. Intenté escribir un código y obtuve 2 errores que se muestran en IDE
No se puede acceder a 'kotlinx.coroutines.CoroutineScope', que es un supertipo de 'androidx.lifecycle.LifecycleCoroutineScope'. Verifique la ruta de clases de su módulo en busca de dependencias faltantes o conflictivas. No se puede acceder a la clase 'kotlinx.coroutines.Job'. Verifique la ruta de clase de su módulo en busca de errores de dependencias faltantes o conflictivas
Aquí está mi módulo Gradle
plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-kapt' } android { compileSdk 31 defaultConfig { applicationId "com.jacksafblaze.sqlitedemo" minSdk 21 targetSdk 31 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildFeatures{ viewBinding true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } } dependencies { implementation "androidx.room:room-ktx:2.3.0" implementation "androidx.room:room-runtime:2.3.0" kapt "androidx.room:room-compiler:2.3.0" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0" implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.4.0" implementation'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0' implementation'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.4.0' implementation 'com.google.android.material:material:1.4.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.2' implementation 'androidx.legacy:legacy-support-v4:1.0.0' testImplementation 'junit:junit:5' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' }y proyecto gradle
buildscript { repositories { google() mavenCentral() } dependencies { classpath "com.android.tools.build:gradle:7.0.3" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.0" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } task clean(type: Delete) { delete rootProject.buildDir }Traté de invalidar los cachés y reiniciar, recrear la aplicación desde cero y reinstalar Android Studio y todavía recibo este error.
actualizado 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0' a 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.0-RC' y todo funciona bien
Tengo el mismo problema, si agrego manualmente importaciones en la clase, el proyecto se compilará pero el IDE seguirá mostrando un error.
Si no desea esperar a que coroutines-android 1.6 se publique, agregar manualmente la importación es una solución alternativa, pero no tendrá autocompletado.
Compilación de Android Studio sin ejemplo de autocompletado
También podría tener algunos problemas con room, moshi y todas las bibliotecas que usan kapt, puede intentar actualizar a la última versión (beta/RC) para ver si el problema se solucionará en las nuevas versiones.
Por ejemplo, cuando escribo estas líneas, moshi aún no es compatible con kotlin 1.6, y se planea lanzar una solución lo antes posible, consulte aquí para obtener más detalles.