Я изо всех сил пытаюсь заставить свою первую функцию Coroutine работать! У меня есть блокирующая функция GetContacts, которая выбирает контакты устройства. И я хочу обновить Livedata с результатом этого запроса. Этот запрос прекрасно работает сам по себе, но я не могу заставить его работать внутри Coroutine.
Вот мой код
val contactsList: MutableLiveData<List<ContactModel>> = MutableLiveData()
fun getContactList(){
viewModelScope.launch() {
var contacts: List<ContactModel>? = null
withContext(Dispatchers.IO){
contacts = getListOfContactsOnDeviceAsync()
}
contactsList.value = contacts
}
}
private fun getListOfContactsOnDeviceAsync(): List<ContactModel> = GetContactHelper.getContacts()
Я получаю сообщение об ошибке "Модуль с главнымдиспетчер отсутствует. Добавьте зависимость, обеспечивающую главного диспетчера, например, 'kotlinx-coroutines-android' ", когда у меня явно добавлена зависимость Android Coroutine.
dependencies {
implementation 'com.android.support:multidex:1.0.3'
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.2'}
Чего мне не хватает? Любая помощь приветствуется!