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
ExpoRouterとEASを使った爆速MVP開発
Search
YuMatsumura
March 19, 2024
Programming
0
150
ExpoRouterとEASを使った爆速MVP開発
ReactNativeMeetup #15. 23/03/19 のLTで発表しました
YuMatsumura
March 19, 2024
Tweet
Share
More Decks by YuMatsumura
See All by YuMatsumura
プロジェクト管理ツールLinearの紹介
mattzn
1
210
大企業から17人目のスタートアップに転職しての変化
mattzn
0
330
OculusConnect
mattzn
0
21
MicrosoftFlow勉強会
mattzn
0
23
Other Decks in Programming
See All in Programming
EMになってからチームの成果を最大化するために取り組んだこと/ Maximize team performance as EM
nashiusagi
0
100
役立つログに取り組もう
irof
28
9.6k
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
2
1.1k
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
200
Better Code Design in PHP
afilina
PRO
0
130
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
120
as(型アサーション)を書く前にできること
marokanatani
10
2.7k
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.3k
Tauriでネイティブアプリを作りたい
tsucchinoko
0
370
Click-free releases & the making of a CLI app
oheyadam
2
120
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
327
38k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Visualization
eitanlees
145
15k
Designing for Performance
lara
604
68k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Docker and Python
trallard
40
3.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
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 バックエンドのアプリがアプデされた時の対 強制アップデート