android.arch.lifecycle.ViewModelProviders не распознается в коде Kotlin - PullRequest
0 голосов
/ 21 декабря 2018

Для проекта Java, чтобы распознать android.arch.lifecycle.ViewModelProviders, я просто определяю следующее в своем сборочном билде

Проект Java

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    def lifecycle_version = "1.1.1"
    // ViewModel and LiveData
    implementation "android.arch.lifecycle:extensions:$lifecycle_version"
    // alternately - if using Java8, use the following instead of compiler
    implementation "android.arch.lifecycle:common-java8:$lifecycle_version"

Однако в проекте Kotlin я вряд ли могусделать это признает android.arch.lifecycle.ViewModelProviders.Я пытался

Котлинский проект

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')

    def lifecycle_version = "1.1.1"
    // ViewModel and LiveData
    implementation "android.arch.lifecycle:extensions:$lifecycle_version"
    kapt "android.arch.lifecycle:compiler:$lifecycle_version"

Он все еще не может распознать android.arch.lifecycle.ViewModelProviders

enter image description here

Полный build.gradle выглядит следующим образом - https://github.com/yccheok/AndroidDraw/blob/748baf44571c5b83d0c6e5b6a7137eef9cb17cdc/app/build.gradle

Могу я узнать, есть ли что-то еще, что я пропустил?

Ответы [ 4 ]

0 голосов
/ 15 апреля 2019

В моем случае мне также нужно удалить из gradle.properties эти строки:

android.useAndroidX=true
android.enableJetifier=true
0 голосов
/ 21 декабря 2018

Используя kapt, вы также должны apply plugin: 'kotlin-kapt'.

0 голосов
/ 21 декабря 2018

Пожалуйста, попробуйте это, Измените вашу модель и расширение версии '1.1.0'

def lifecycle_version = "1.1.0" // change in this line

implementation "android.arch.lifecycle:extensions:$lifecycle_version"
implementation "android.arch.lifecycle:viewmodel:$lifecycle_version"

Примечание: Я также использовал этот вид сообщения об ошибке, но моя проблема была решена, когда японижение version 1.1.1 с version 1.1.0.

Вам необходимо проверить понижение номера версии.

0 голосов
/ 21 декабря 2018

Пожалуйста, попробуйте это:

implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
implementation 'androidx.lifecycle:lifecycle-viewmodel:2.0,0'
implementation 'androidx.lifecycle:lifecycle-livedata:2.0.0'

Это то, что я использую сейчас, когда я конвертировал в androidX.

Надеюсь, это поможет.

...