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
複雑なステート管理をらくにするステートマシンを使ったアプローチ
Search
Tomoki Yamashita
December 22, 2022
Technology
0
1.5k
複雑なステート管理をらくにするステートマシンを使ったアプローチ
モバイルアプリのステート管理に役立つステートマシンの紹介をします。
Tomoki Yamashita
December 22, 2022
Tweet
Share
More Decks by Tomoki Yamashita
See All by Tomoki Yamashita
文字列操作の達人になる ~ Kotlinの文字列の便利な世界 ~ - Kotlin fest 2025
tomorrowkey
2
890
Ebisu mobile #11 - Predictive Backに対応する
tomorrowkey
0
110
AI協同時代にモバイルエンジニアが備えるべき開発環境の話
tomorrowkey
1
400
5分で完全理解するNav3との向き合い方
tomorrowkey
0
160
テストを楽に書きたい
tomorrowkey
2
390
Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
tomorrowkey
2
1.3k
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
960
Strong Skipping Modeをはじめよう
tomorrowkey
0
5.6k
あなたの知らないJetpackの世界 - DroidKaigi.collect { #7@Tokyo }
tomorrowkey
0
610
Other Decks in Technology
See All in Technology
ESXi のAIOps だ!2025冬
unnowataru
0
440
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
260
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
520
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
150
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.2k
Claude Skillsの テスト業務での活用事例
moritamasami
1
120
MySQLのSpatial(GIS)機能をもっと充実させたい ~ MyNA望年会2025LT
sakaik
0
160
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
9.9k
Entity Framework Core におけるIN句クエリ最適化について
htkym
0
130
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
200
NIKKEI Tech Talk #41: セキュア・バイ・デザインからクラウド管理を考える
sekido
PRO
0
240
コールドスタンバイ構成でCDは可能か
hiramax
0
120
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
0
2.5k
How to Ace a Technical Interview
jacobian
281
24k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
97
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
880
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
180
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
22
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.2k
A Soul's Torment
seathinner
1
2k
Music & Morning Musume
bryan
46
7k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
180
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.1k
Transcript
potatotips #80 - 2022.12.22 @tomorrowkey
/ STORES STORES <- <- Android @tomorrowkey
STORES
https://www.st.inc/news/2022-12-19-brandedapp-shopify
WebView
WebView (Native/HTML/Javascript ) WebView
WebView (Native/HTML/Javascript ) WebView
WebView viewDidLoad(), onCreate() API …
WebView viewDidLoad(), onCreate() API … Web Web API JavaScript
None
Web
None
None
Event.LoginPageShown Event.LoginPageShown Event.LoginScriptExecuted Event.TopPageShown Event.LoadingObserverLaunched Event.LoginPageShown Event.CheckInButtonClicked Event.CheckOutButtonClicked CheckInScriptExecuted Event.ClockShown
Event.ErrorShown Event.ClockShown State.Init State.WaitForLogin State.WaitForAuth State.WaitForLoadingObserverLaunch State.WaitForCheckIn State.WaitForCheckInScriptExecuted State.CheckInLoading State.ErrorShown
StateMachine.create { initialState(Init) state<Init> { on<LoginPageShown> { transitionTo(WaitForLogin) } }
state<WaitForLogin> { on<LoginPageShown> { transitionTo(WaitForLogin) } on<LoginScriptExecuted> { transitionTo(WaitForAuth) } } state<WaitForAuth> { on<TopPageShown> { transitionTo(WaitForLoadingObserver on<LoginPageShown> { transitionTo(WaitForLogin) } } state<WaitForLoadingObserverLaunch> { on<LoadingObserverLaunched> { transitionTo(WaitForChec Tinder/StateMachine
None
None