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
260
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
51
Android Architecture Blueprints で学ぶ標準的なアプリの作り方
heki1224
1
750
What's new in Android O ? / Android Go
heki1224
0
160
健康と幸せ - Health and Happiness
heki1224
0
92
スマートフォンSDK開発者座談会#1
heki1224
0
76
SDK開発で話したい事
heki1224
0
74
Firebase Authentication
heki1224
0
550
新海誠作品の物語構造
heki1224
0
500
広告SDKの話
heki1224
1
520
Other Decks in Technology
See All in Technology
エラーバジェット枯渇の原因 - 偽陽性との戦い -
phaya72
1
100
Power BI は、レポート テーマにこだわろう!テーマのティア表付き
ohata_ds
0
120
extensionとschema
yahonda
1
100
現実的なCompose化戦略 ~既存リスト画面の置き換え~
sansantech
PRO
0
160
Amazon Aurora バージョンアップについて、改めて理解する ~バージョンアップ手法と文字コードへの影響~
smt7174
1
240
顧客の声を集めて活かすリクルートPdMのVoC活用事例を徹底解剖!〜プロデザ!〜
recruitengineers
PRO
0
200
教師なし学習の基礎
kanojikajino
4
360
横断SREの立ち上げと、AWSセキュリティへの取り組みの軌跡
rvirus0817
3
4.5k
Autify Company Deck
autifyhq
2
41k
インシデントキーメトリクスによるインシデント対応の改善 / Improving Incident Response using Incident Key Metrics
nari_ex
0
4k
Amazon Location Serviceを使ってラーメンマップを作る
ryder472
2
150
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
18k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
171
14k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
Optimizing for Happiness
mojombo
376
70k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
39
1.9k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
270
Optimising Largest Contentful Paint
csswizardry
33
3k
Building Your Own Lightsaber
phodgson
104
6.2k
Docker and Python
trallard
43
3.2k
KATA
mclloyd
29
14k
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