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
React Native 入門
Search
Shigeki Yamato (Mori)
March 23, 2018
Technology
0
270
React Native 入門
React Native のはじめ方
Shigeki Yamato (Mori)
March 23, 2018
Tweet
Share
More Decks by Shigeki Yamato (Mori)
See All by Shigeki Yamato (Mori)
DroidKaigi 2019 面白かったセッション
heki1224
1
59
Android Architecture Blueprints で学ぶ標準的なアプリの作り方
heki1224
1
780
What's new in Android O ? / Android Go
heki1224
0
160
健康と幸せ - Health and Happiness
heki1224
0
100
スマートフォンSDK開発者座談会#1
heki1224
0
85
SDK開発で話したい事
heki1224
0
83
Firebase Authentication
heki1224
0
570
新海誠作品の物語構造
heki1224
0
520
広告SDKの話
heki1224
1
530
Other Decks in Technology
See All in Technology
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
1.1k
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
170
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
9
1.1k
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
130
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
1
540
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
230
rubygem開発で鍛える設計力
joker1007
2
200
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
16
5.5k
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
2
110
Кто отправит outbox? Валентин Удальцов, автор канала Пых
lamodatech
0
340
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
430
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
110
Featured
See All Featured
Six Lessons from altMBA
skipperchong
28
3.8k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
Gamification - CAS2011
davidbonilla
81
5.3k
It's Worth the Effort
3n
185
28k
4 Signs Your Business is Dying
shpigford
184
22k
Code Review Best Practice
trishagee
68
18k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Scaling GitHub
holman
459
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
Transcript
React Native 入門 オウチーノ技術部定例LT 2018.03.23 山戸茂樹 1
目次 • React Native とは • はじめ方 • 開発環境 •
UIライブラリ • ルーティング(画面遷移) • 環境変数 • アプリへのコンバート 2
React Native とは • React.js を使ってモバイルアプリ(iOS, Android) を作成出来る JavaScript フ
レームワーク • クロスプラットフォームでネイティブアプリを開発出来るうれしさ • 有名アプリへの導入実績(Facebook, Instagram, Airbnb) • ライフサイクルが React.js と一緒 (みたいになるように裏で動かしてる) 3
React Native とは • まだまだ発展途上 • ドキュメントが弱い • ライブラリが(React.jsほど) ない
• デバイス固有の操作(カメラ、GPS、センサー系)に弱い(作り込みましょう) • クロスプラットフォームとは言っても、iOSだけAndroidだけの機能は普通にある (特にAndroid向けが少ない印象) 4
はじめ方 • create-react-native-app (CRNA) を使ってテンプレートを作る ◦ すぐに書き始められる ◦ アプリをエクスポートする場合に注意が必要 5
開発環境 • expo を使って作りながら動作確認をする環境を作る(CRNA標準) ◦ iOS, Android でそれぞれ Expo アプリをインストール
◦ Expo アプリでQRコードを読み取る(同一ネットワーク内) ◦ 動作確認がすぐに出来る ◦ ファイル保存後、即反映 6
UIライブラリ • React Native 自体でもUIの差異は吸収してくれる • NativeBase を使うとより簡単にUI部品を配置できる ◦ カスタマイズは要確認
7
ルーティング • アプリの画面遷移は少し特殊 ◦ スタック ◦ ナビゲーションドロワー • React Navigation
が公式におすすめされている 8
環境変数 • 開発環境と本番環境で環境変数を切り替えたい場合 ◦ env.js で __DEV__ の true/false をチェック
◦ iOS, Android それぞれで使える 9
アプリへのコンバート • アプリの実ファイルを出力するには eject が必要 ◦ リリース時には eject してから、ファイルを作るのがよさそう ◦
一度 eject すると元に戻りません!!(要注意) 10
まとめ • おすすめする方 ◦ とりあえずクロスプラットフォームでアプリを作りたい ◦ 複雑な要件はない ◦ デバイスもそんなに使わない ◦
React.js 書ける 11
参考文献 ReactNativeの話 https://facebook.github.io/react-native/ https://github.com/react-community/create-react-native-app https://expo.io/ https://nativebase.io/ https://reactnavigation.org/ https://www.manning.com/books/react-native-in-action 12
参考文献 プロジェクト変換の話 http://itexplorer.hateblo.jp/entry/20170904-create-react-native-app-eject https://github.com/react-community/create-react-native-app/blob/master/EJE CTING.md 13
参考文献 アプリ署名の話 https://support.google.com/googleplay/android-developer/answer/7384423?h l=ja https://facebook.github.io/react-native/docs/signed-apk-android.html 14