我有一些使用SDK连接到MQTT服务器的任务。因此任务结果将异步返回。
service.doConnect(paramVar1,new IResultListener<Boolean>() {
@Override
public void success(Boolean response) {
doSuccessConnect();
}
@Override
public void failed(int statusCode, Exception exception) {
doFailConnect();
}
};
service.doFunction1(paramVar2,new IResultListener<Boolean>() {
@Override
public void success(Boolean response) {
doSuccessFunction1();
}
@Override
public void failed(int statusCode, Exception exception) {
doFailFunction1();
}
};
service.doFunction2(paramVar3,new IResultListener<Boolean>() {
@Override
public void success(Boolean response) {
doSuccessFunction2();
}
@Override
public void failed(int statusCode, Exception exception) {
doFailFunction2();
}
};
我想按顺序执行任务。 service.doConnect※仅成功-> service.doFunction1※仅成功-> service.doFunction2并且不想将service.doFunction1放在doSuccessConnect()中。
有人可以告诉我在Android Java中执行此操作的方法。谢谢!
使用RxJava,您可以使用Singles
包装API调用。如果只想发出成功(有结果)或错误,则使用Singles
: