У меня есть некоторый код, который 1] выбирает файл JSON и 2] в зависимости от содержимого этого файла JSON выбирает другой файл JSON.Он использует библиотеку ion .
Код выглядит примерно так (Sidenote - этот код используется в методе onCreate
моей деятельности, а e
является объектом типа Exception
):
Ion.with(applicationContext)
.load("someURL")
.asJsonObject()
.setCallback { e, result->
//Do synchronous stuff with the "result" and "e" variables
//that determines whether boolean someCondition is true or false
if(somecondition) {
Ion.with(applicationContext)
.load("https://raw.githubusercontent.com/vedantroy/image-test/master/index.json")
.asJsonObject()
.setCallback { e, result ->
//Some synchronous code in here
}
}
}
Этот код очень уродливый, и я хотел бы улучшить его, чтобы избавиться от вложенности.Возможно ли это, и если да, то как бы я это сделал?
Я экспериментировал, и, кажется, я могу вызвать метод .then()
после setCallback
примерно так, где .then()
принимает параметр, который является callback
объектом:
Ion.with(applicationContext).load("someURL").setCallback { //Lambda Stuff }.then()
так что, возможно, это будет частью решения, но я не уверен.