Я экспериментирую с Kotlin Coroutines в моем текущем приложении для Android.
У меня есть случай, когда пользователь может искать текст с помощью удаленного API RestFul.
Что бы я хотелдостичь следующего: -
1). Используйте типы "ABC", и я запускаю свой Remote API в этой строке поиска
viewModelScope.launch {
repository.searchAPI(searchString)
}
2). Теперь пользователь печатает больше, так что моя строка поиска теперь "ABCXYZ"
Теперь я хочу отменить начальный поиск "ABC" и заменить его новой строкой поиска "ABCXYZ"
Я думал, что смогу использовать этот код ...
viewModelScope.launch {
if (isActive) {
this.coroutineContext.cancelChildren()
}
repository.searchAPI(searchString)
}
Однако это отменяет весь процесс
Как мне достичь желаемого результата, заменив текущий выполняемый поиск на самый последний? строка поиска?