Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 仅对RxJava链中的最后一项引发异常_Android_Rx Java_Rx Java2 - Fatal编程技术网

Android 仅对RxJava链中的最后一项引发异常

Android 仅对RxJava链中的最后一项引发异常,android,rx-java,rx-java2,Android,Rx Java,Rx Java2,我的Android应用程序中有一个wifi地址列表。此外,还有一个WifiManager,它接受地址并在可能的情况下进行连接。连接过程是RxJava Completable的,在连接失败时抛出异常。如何逐个检查所有地址,并仅在最后一个地址失败时抛出异常?仅抑制除最后一个完全表之外的所有地址中的错误 List<String> addresses = ... int s = address.size(); Flowable.range(0, s) .flatMapCompletable

我的Android应用程序中有一个wifi地址列表。此外,还有一个WifiManager,它接受地址并在可能的情况下进行连接。连接过程是RxJava Completable的,在连接失败时抛出异常。如何逐个检查所有地址,并仅在最后一个地址失败时抛出异常?

仅抑制除最后一个完全表之外的所有地址中的错误

List<String> addresses = ...
int s = address.size();

Flowable.range(0, s)
.flatMapCompletable(index -> {
    Completable c = manager.checkAddress(addresses.get(index));
    if (index != s - 1) {
        c = c.onErrorComplete();
    }
    return c;
}, false, 1)
.subscribe(...)