9
เมื่อใดที่ควรใช้ RxJava Observable และเมื่อโทรกลับอย่างง่ายบน Android
ฉันกำลังทำงานกับเครือข่ายสำหรับแอปของฉัน ดังนั้นผมจึงตัดสินใจที่จะลองของจัตุรัสติดตั้งเพิ่ม ฉันเห็นว่าพวกเขาสนับสนุนเรียบง่ายCallback @GET("/user/{id}/photo") void getUserPhoto(@Path("id") int id, Callback<Photo> cb); และ RxJava's Observable @GET("/user/{id}/photo") Observable<Photo> getUserPhoto(@Path("id") int id); ทั้งคู่ดูคล้ายกันตั้งแต่แรกเห็น แต่เมื่อนำไปใช้งานมันน่าสนใจ ... ในขณะที่การใช้งานการโทรกลับง่ายจะมีลักษณะคล้ายกับนี้ api.getUserPhoto(photoId, new Callback<Photo>() { @Override public void onSuccess() { } }); ซึ่งค่อนข้างง่ายและตรงไปตรงมา และด้วยObservableอย่างรวดเร็วได้รับ verbose และค่อนข้างซับซ้อน public Observable<Photo> getUserPhoto(final int photoId) { return Observable.create(new Observable.OnSubscribeFunc<Photo>() { @Override public Subscription …