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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
1,000 にも届く AWS Organizations 組織のポリシー運用をちゃんとしたい、という話
kazzpapa3
0
190
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
Exadata Fleet Update
oracle4engineer
PRO
0
1.1k
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
680
コンテナセキュリティの最新事情 ~ 2026年版 ~
kyohmizu
7
2.4k
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
480
AWS DevOps Agent x ECS on Fargate検証 / AWS DevOps Agent x ECS on Fargate
kinunori
2
230
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
410
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
520
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.7k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
[SF Ruby Conf 2025] Rails X
palkan
1
760
Measuring & Analyzing Core Web Vitals
bluesmoon
9
760
Building AI with AI
inesmontani
PRO
1
710
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
KATA
mclloyd
PRO
34
15k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
590
Building Applications with DynamoDB
mza
96
6.9k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
66
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
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