Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ExpoRouterとEASを使った爆速MVP開発
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
YuMatsumura
March 19, 2024
Programming
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ExpoRouterとEASを使った爆速MVP開発
ReactNativeMeetup #15. 23/03/19 のLTで発表しました
YuMatsumura
March 19, 2024
More Decks by YuMatsumura
See All by YuMatsumura
プロジェクト管理ツールLinearの紹介
mattzn
1
24k
大企業から17人目のスタートアップに転職しての変化
mattzn
0
500
OculusConnect
mattzn
0
44
MicrosoftFlow勉強会
mattzn
0
46
Other Decks in Programming
See All in Programming
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
220
JRuby: Past, Present, and Future
headius
0
210
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
270
Heart of Swift Concurrency
koher
0
1k
カツオ、ご期待ください
suneo3476
0
110
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
7
5k
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
440
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
350
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
110
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
8.7k
Webの地図
yosuke_furukawa
PRO
6
4.8k
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
150
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
19k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
330
Producing Creativity
orderedlist
PRO
348
41k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
330
New Earth Scene 8
popppiees
4
2.6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
420
Ethics towards AI in product and experience design
skipperchong
2
390
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
310
Leo the Paperboy
mayatellez
10
2.3k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Transcript
ExpoRouterとEASを使った爆速MVP開発 React Native Meetup #15 ft. RevenueCat 24/03/19 アセンド株式会社 柗村裕
柗村 裕 w アセンド株式会社 プロダクトエンジニ w 物流スタートアップ1年) w 1社目・2社目はVR/ARの研究開発(Unity( w
ReactNative + Unity調 w ReactNativeのアプリ開S w 趣味:VALORANT, LoL, Twice, シーシ w 共通のものあればお声がけください! 自己紹介 @yu_mattzn
質問 Expoを使って開発したことある ExpoRouterを使って開発したことある EASを使ったことがある
はじめに モバイルアプリを開発することになった ReactNativeの経験はあったがCI/CDが完全に整った環境だっ Bitrise, fastlane, DeployGate, GithubActions, どれ使うか・・y
チームにモバイルアプリ開発の経験者がいなかっ 環境構築コストが面倒・・。watchman, cocoapods入れて・・y 時間が無い中人も足りなr が、メンバー全員フロントエンドもバックエンドもTypescriptで実装して フロントはNextJsでファイルベースルーティング => Expo RouterとEASで初速を上げよう!!!
Expo Expoの各サービスの理解 Expo SD ReactNativeでWeb/iOS/Androidのアプリを開発できるOSP React(UIライブラリ)に対するNextjsのような位
EAS (ExpoApplicationServicesE ExpoアプリをDeliveryするクラウドサービ Vercelのような位 Expo Route` 最近のSDKで搭載されたルーティングライブラS 海外の開発者がYoutubeで騒いでたことで知ってた
Expo 始め方 create-expo-appでNavigation (Typescript)を選択 -> Expo Routerが使えるように!
Expo 起動 expo starR D QRコードを読み取ると実機のExpoGo アプリで立ち上が0 D iでiOSシミュレー D
aでAndroidエミュレー D wでWebページで立ち上がる
Expo Expo Go k Expoで開発する際のサンドボックスツー k ExpoSDKに入ってるライブラリは全て利用可e k シミュレータや実機にビルドを入れ直す必要な k
CameraやNotificationsなどだけでなく SkiaやFlashListなども入っていまy k ExpoGoで開発できる範囲ならネイティブコードにコンパイルする必要な k watchman, CocoaPods, JDKなども不要
Expo Router Expo Router appフォルダ直下のファイル名が全てRoutingされ Webで開くときはリンクになるしアプリはdeeplinkにもな /
=> index.ts7 /about => about.ts7 /user/1234 => [id].tsx (動的ルーティング@ 共通のレイアウトを組むには_layout.tsxを使 同じ階層にあるページには全てlayout.tsxのレイアウトが適用
Expo Router 動的ルーティング
Expo Router Typed Routes h 遷移先を指定する際に、フォルダ構造からRoutingを判断し、Typescriptによる型推 論が効く(好き)
Expo Router Tabs React Navigationの知識が活き2 TabNavigatorのOptionが効く
Expo Router Tabsおまけ D フォルダ構造から勝手にタブを生I D 全てのRoutingがタブになってしまうので 子側のレイアウトを設定する必要がある
EAS EAS(Expo Application Services) 複数のサービス EAS BuilT アプリのバイナリをビルドするためのクラウドサービ
Storeに配布する用のビルド、内部のみの配布のビルドなどを簡単に設定可5 EAS Updat OTAアップデート. 再インストールさせることなくアプリをアップデートすX EAS SubmiQ AppStore, PlayStoreにアプリを配布する
EAS EAS(Expo Application Services) ある程度無料!!
EAS EAS Build D 30ビルドまで無$ D eas.jsonで設 D わずか3コマンドでビルド がホストされる
EAS EAS Update @ OTA Updat0 @ ストアのUpdateを挟まずにアプリをアップデート可能
EAS EAS Submit c EAS BuildでProductionBuildを行った後、Storeに提出でき1 c コマンドを打った後にAppStoreConnectにアプリが生成されていH c TestFlightですぐにダウンロードして動かせた
おまけ Expoのドキュメントについて i HomeとGuideg i この二つで左のメニューが切り替わ6 i ずっと気づかなかったけど、Homeにしかない 有益な情報やチュートリアル動画があるので 両方見ると良さそう
終わり ご静聴ありがとうございました ExpoRouter + EASを使って面倒な環境構築などを省いて初速を上げれたS 爆速開発をしていきたく、仲間募集中! こんな課題があるので詳しい方いたらぜひ話しかけてくださいS
モノリポでの開発の課c バックエンドのアプリがアプデされた時の対 強制アップデート