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
STORES_決済端末2ってAndroidなんでしょ__ほんとうかな__.pdf
tomorrowkey
0
9
モバイルとRubyとわたし
tomorrowkey
0
21
BiDiってなんだ?
tomorrowkey
2
540
文字列操作の達人になる ~ Kotlinの文字列の便利な世界 ~ - Kotlin fest 2025
tomorrowkey
2
990
Ebisu mobile #11 - Predictive Backに対応する
tomorrowkey
1
120
AI協同時代にモバイルエンジニアが備えるべき開発環境の話
tomorrowkey
2
410
5分で完全理解するNav3との向き合い方
tomorrowkey
0
180
テストを楽に書きたい
tomorrowkey
2
400
Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
tomorrowkey
2
1.3k
Other Decks in Technology
See All in Technology
20260204_Midosuji_Tech
takuyay0ne
1
160
今日から始めるAmazon Bedrock AgentCore
har1101
4
420
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
AWS DevOps Agent x ECS on Fargate検証 / AWS DevOps Agent x ECS on Fargate
kinunori
2
250
Tebiki Engineering Team Deck
tebiki
0
24k
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
170
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
620
Cosmos World Foundation Model Platform for Physical AI
takmin
0
980
旅先で iPad + Neovim で iOS 開発・執筆した話
zozotech
PRO
0
100
Featured
See All Featured
Everyday Curiosity
cassininazir
0
130
Raft: Consensus for Rubyists
vanstee
141
7.3k
A Soul's Torment
seathinner
5
2.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
How to make the Groovebox
asonas
2
1.9k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Unsuck your backbone
ammeep
671
58k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
57
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Scaling GitHub
holman
464
140k
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