[Android:异步回调

问题描述 投票:0回答:1

如何实现返回回调对象的方法,这样我就可以像这样在回调中获取结果

resultObj.onSuccess()
.onFailure()

我知道我可以通过在接口中定义事件方法来实现此行为,例如下面的代码

val obj = CustomObj()

obj.addOnSuccessListener(object: CustomObjListener {
@Override
fun onSuccess(){
}
})

请告知是否有可能实现或分享您的想法

我想实现react-native中的联网api的过程,

https://facebook.github.io/react-native/docs/network

fun getResult(){
    val promise =  fetch('https://facebook.github.io/react-native/movies.json')
return promise

}

val promise = getResult

  promise.then((response) => response.json())  
        .then((responseJson) => {
          return responseJson.movies;
        })
        .catch((error) => {
          console.error(error);
        });

类似于Java语言中的[[promise概念。

android android-studio kotlin android-asynctask android-developer-api
1个回答
0
投票
[Future kotlin / java / dart等效于JS中的Future

但是在Kotlin Promise中,FuturePromise均可用。建议使用

coroutine以获得相同的结果。

您可以参考这些文章以了解更多详细信息:

coroutines

  • 但是,如果要在类中链接多个方法的函数调用,则可以使用https://medium.com/@elizarov/futures-cancellation-and-coroutines-b5ce9c3ede3a
  • 在这种模式下,所有的setter方法都返回该类的实例。例如:

    Builder Pattern

    现在您可以像下面这样调用多个设置器:

    Builder Pattern
  • © www.soinside.com 2019 - 2024. All rights reserved.