faire quelque chose comme ceci:Abonnez-vous au même abonné 1.x rxJava il était possible rxJava 2
Observable.<Foo>create(subscriber -> {
...
getNewObservable().subscribe(Subscribers.wrap(subscriber));
})
GetNewObservable() retour aussi Observable<Foo>
Je ne trouve pas la même approche dans rxJava 2. Il n'y a pas de méthode d'abonnement acceptant Emitter ou ObservableEmitter sur un objet Observable. Je suppose que je peux faire quelque chose comme ceci:
Observable.<Foo>create((ObservableEmitter<Foo> emitter) -> {
...
getNewObservable().subscribe(emitter::onNext, emitter::onError, emitter::onComplete);
})
Mais je me demande s'il y a une manière plus simple comme dans rxJava 1.
Merci.
Qu'est-ce que vous essayez de réaliser avec cette approche non évidente? Il doit y avoir une façon beaucoup plus propre de le faire. Veuillez décrire l'objectif de votre code. –
Bien sûr, il y a probablement plus de façons de contourner ce problème, mais je suis curieux de savoir s'il n'y a vraiment pas d'équivalent dans rxJava 2. Cette approche est en fait mentionnée dans [Reactive Programming with RxJava] (http://shop.oreilly.com /produit/0636920042228.do) livre. Mais revenons à mon cas, je suis en train de faire android lib et je veux avoir observable sorcière va faire une action toutes les x minutes. J'ai donc une minuterie observable pour cela. Mais le "travail" nécessite certaines autorisations à accorder. Je voulais juste vérifier les permissions d'abord et seulement si c'est ok que m'abonner à la minuterie observable. Sinon, return onError ... – bio007
Que dire de ceci: 'if (permissionGranted) renvoie Observable.interval (...). Map (...); sinon renvoie Observable.error (...); '? –