メルカリアッテをRxjava2に 載せ換えて。。

メルカリアッテをRxjava2に 載せ換えて。。

E519edb7ffc107220b60ba98ea66ef9e?s=128

Hiroshi Hashimoto

August 25, 2017
Tweet

Transcript

  1. メルカリアッテをRxjava2に 載せ換えて。。 Souzoh Android Talk

  2. Souzoh confidential and proprietary 自己紹介 2 橋本 泰(@hi6484) Android Developer メルカリ

    アッテ担当 Shibuya.apk運営
  3. Souzoh confidential and proprietary 3

  4. Souzoh confidential and proprietary Rxjava2に載せ替える 4

  5. Souzoh confidential and proprietary なぜ載せ替えるのか? 5

  6. Souzoh confidential and proprietary ってことで、登壇タイトルに設定して 対応することに。 6

  7. Souzoh confidential and proprietary まず先に 7

  8. Souzoh confidential and proprietary 全て終わりませんでした。 8

  9. Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 ComposoteSubcriptionもたくさん使っているなぁ 色々とあるんだろうな 9

  10. Souzoh confidential and proprietary compile 'io.reactivex.rxjava2:rxjava:2.1.2' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' compile "com.jakewharton.rxbinding2:rxbinding:${rx_binding}"

    compile "com.squareup.retrofit2:adapter-rxjava2:${retrofit_version}" とりあえずapp/build.gradle 10 Rxjavaさようなら。今までありがとう。
  11. Souzoh confidential and proprietary buildしてみる 11

  12. Souzoh confidential and proprietary buildしてみる 12 ←101 errors(ファイル数)

  13. Souzoh confidential and proprietary 対応箇所エラー 13

  14. Souzoh confidential and proprietary 対応箇所 import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; import

    rx.subjects.PublishSubject; import rx.subscriptions.CompositeSubscription; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.CompositeDisposable; import io.reactivex.subjects.PublishSubject; import io.reactivex.schedulers.Schedulers; 14 とりあえず、rx.xxxをio.reactivex.xxxに置き換える
  15. Souzoh confidential and proprietary 対応箇所 private final CompositeSubscription compositeSubscription =

    new CompositeSubscription(); compositeSubscription.unsubscribe(); private final CompositeDisposable compositeDisposable = new CompositeDisposable(); compositeDisposable.dispose(); 15 CompositeSubscriptionをCompositeDisposable
  16. Souzoh confidential and proprietary 対応箇所 loadingRequest.onNext(true); ApiCient apiClient = new

    ApiClient(); apiClient.responseFrom(new Offer(id)) .doOnTerminate(() -> loadingRequest.onNext(false)) .subscribe(); loadingRequest.onNext(true); ApiCient apiClient = new ApiClient(); apiClient.responseFrom(new Offer(id)) .doAfterTerminate(() -> loadingRequest.onNext(false)) .subscribe(); 16 doOnTerminate()をdoAfterTerminate()
  17. Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 ComposoteSubcriptionもたくさん使っているなぁ 色々とあるんだろうな 17

  18. Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 ComposoteSubcriptionもたくさん使っているなぁ 色々とあるんだろうな 18

  19. Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 →NullPointerException になるだけ。。。 19 http://qiita.com/kubode/items/aebef4593e42a3b367be

  20. Souzoh confidential and proprietary 対応箇所 http://in.fablic.co.jp/entry/2017/04/27/110000 20

  21. Souzoh confidential and proprietary 黒川さん神!! 21

  22. Souzoh confidential and proprietary 対応箇所 22

  23. Souzoh confidential and proprietary 対応箇所 23 ↑162 matches

  24. Souzoh confidential and proprietary 地道に修正してく 24

  25. Souzoh confidential and proprietary 大変だけど。。 25

  26. Souzoh confidential and proprietary Rxjava2 これから宜しくお願い致します 26

  27. Souzoh confidential and proprietary ご静聴ありがとうございました 27