gianpaolo:
Tratando de construir un simple ejemplo que usa Kotlin corrutinas en una actividad:
lifecycleScope.launch {
val result = httpGet("http://hmkcode-api.appspot.com/rest/api/hello/Android")
textView.setText(result)
}
No puede deshacerse de error "lifecycleScope referencia sin resolver"
Parte pertinente del archivo Gradle:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.2'
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-rx2:1.3.2"
def androidArchVersion = '1.1.1'
implementation "android.arch.lifecycle:viewmodel:$androidArchVersion"
implementation "android.arch.lifecycle:livedata:$androidArchVersion"
annotationProcessor "android.arch.lifecycle:compiler:$androidArchVersion"
testImplementation "android.arch.core:core-testing:$androidArchVersion"
implementation "android.arch.lifecycle:extensions:$androidArchVersion"
}
kotlinOptions {
jvmTarget = '1.8'
apiVersion = '1.3'
languageVersion = '1.3'
}
}
ianhanniballake:
De acuerdo con la documentación del ciclo de vida KTX , debe incluir el lifecycle-runtime-ktx
artefacto si quieres extensiones específicas corrutina.
Tenga en cuenta que lifecycle-runtime-ktx
solamente se introdujo en ciclo de vida 2.2.0 , por lo que tendrá que migrar a AndroidX , a continuación, actualizar a ciclo de vida 2.2.0
si desea utilizar esta funcionalidad.