Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
メルカリアッテをRxjava2に 載せ換えて。。
Search
Hiroshi Hashimoto
August 25, 2017
Technology
1.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
メルカリアッテをRxjava2に 載せ換えて。。
Hiroshi Hashimoto
August 25, 2017
More Decks by Hiroshi Hashimoto
See All by Hiroshi Hashimoto
Biometric Prompt
hi6484
1
440
What's new in Android
hi6484
1
1.5k
Google I/O Extended Tokyo 2017
hi6484
0
240
ヌガー対応 potatotios #33
hi6484
0
79
Other Decks in Technology
See All in Technology
Bet AI Day 2026丨バクラク Autopilot、業務システムの再設計
layerx
PRO
1
810
IDperturb: Enhancing Variation in Synthetic Face Generation via Angular Perturbation
sansantech
PRO
0
100
人気商品が「ちゃんと買える」をつくる ー ECの負荷改善
ykagano
1
190
Guerilla InnerSource in enterprises, during the AI hype
onenashev
PRO
0
130
指示待ちから変化に応じるClaude Codeへ!~環境からAgentへの帰り道を作る~
gotalab555
9
1.8k
みてねにおけるAI-DLC導入活動とAIドリブン開発の現在地/JAWS-UG AI-DLC #2
isaoshimizu
2
320
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
2
170
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
Genie Code ワークショップ 応用編 / Genie-Code-Workshop-advanced
databricksjapan
PRO
0
250
Webとヘルスデータ
yukukotani
0
110
VPCでもFloatingIPを使いたいんだ
y_kotani
1
140
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
25k
Featured
See All Featured
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Tell your own story through comics
letsgokoyo
1
1.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
WCS-LA-2024
lcolladotor
0
820
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Paper Plane (Part 1)
katiecoart
PRO
1
10k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
370
Building AI with AI
inesmontani
PRO
1
1.2k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
800
Ethics towards AI in product and experience design
skipperchong
2
360
Transcript
メルカリアッテをRxjava2に 載せ換えて。。 Souzoh Android Talk
Souzoh confidential and proprietary 自己紹介 2 橋本 泰(@hi6484) Android Developer メルカリ
アッテ担当 Shibuya.apk運営
Souzoh confidential and proprietary 3
Souzoh confidential and proprietary Rxjava2に載せ替える 4
Souzoh confidential and proprietary なぜ載せ替えるのか? 5
Souzoh confidential and proprietary ってことで、登壇タイトルに設定して 対応することに。 6
Souzoh confidential and proprietary まず先に 7
Souzoh confidential and proprietary 全て終わりませんでした。 8
Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 ComposoteSubcriptionもたくさん使っているなぁ 色々とあるんだろうな 9
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さようなら。今までありがとう。
Souzoh confidential and proprietary buildしてみる 11
Souzoh confidential and proprietary buildしてみる 12 ←101 errors(ファイル数)
Souzoh confidential and proprietary 対応箇所エラー 13
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に置き換える
Souzoh confidential and proprietary 対応箇所 private final CompositeSubscription compositeSubscription =
new CompositeSubscription(); compositeSubscription.unsubscribe(); private final CompositeDisposable compositeDisposable = new CompositeDisposable(); compositeDisposable.dispose(); 15 CompositeSubscriptionをCompositeDisposable
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()
Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 ComposoteSubcriptionもたくさん使っているなぁ 色々とあるんだろうな 17
Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 ComposoteSubcriptionもたくさん使っているなぁ 色々とあるんだろうな 18
Souzoh confidential and proprietary アッテで大変そうなところ Subject.onNext(null);ってのが大量にある。。。 →NullPointerException になるだけ。。。 19 http://qiita.com/kubode/items/aebef4593e42a3b367be
Souzoh confidential and proprietary 対応箇所 http://in.fablic.co.jp/entry/2017/04/27/110000 20
Souzoh confidential and proprietary 黒川さん神!! 21
Souzoh confidential and proprietary 対応箇所 22
Souzoh confidential and proprietary 対応箇所 23 ↑162 matches
Souzoh confidential and proprietary 地道に修正してく 24
Souzoh confidential and proprietary 大変だけど。。 25
Souzoh confidential and proprietary Rxjava2 これから宜しくお願い致します 26
Souzoh confidential and proprietary ご静聴ありがとうございました 27