Что мне использовать теперь, когда Anko устарела?
Как исправить предупреждение об устаревании в этом коде? В качестве альтернативы, есть ли другие варианты для этого?
runOnUiThread {
doAsync {
// room insert query
}
}
// anko Commons
implementation "org.jetbrains.anko:anko-commons:0.10.8"
2 ответа
TL ; DR: Честно говоря, я НАСТОЯТЕЛЬНО рекомендую в полной мере использовать.
Поскольку я не знаю вашего точного назначения, я отвечу очень в общих чертах.
было здорово, но теперь пора двигаться дальше ... Хотя есть несколько альтернатив,
Kotlin
сам по себе является "Лучшей" альтернативой
Вы можете сделать все общие вспомогательные методы из
Anko
с использованиемKotlin's Extension functions
. (читать дальше )Как это:
fun MutableList<Int>.swap(index1: Int, index2: Int) { val tmp = this[index1] // 'this' corresponds to the list this[index1] = this[index2] this[index2] = tmp } val list = mutableListOf(1, 2, 3) list.swap(0, 2) // 'this' inside 'swap()' will hold the value of 'list'
Вы можете использовать современную библиотеку асинхронного программирования под названием
Coroutine
который Waaaaay быстрее, чемRxJava
. (читать дальше )fun main() = runBlocking { // this: CoroutineScope launch { // launch a new coroutine and continue delay(1000L) // non-blocking delay for 1 second (default time unit is ms) println("World!") // print after delay } println("Hello") // main coroutine continues while a previous one is delayed }
И многое другое для удовлетворения ваших потребностей.
Дайте знать, если у вас появятся вопросы.