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
60
Android Architecture Blueprints で学ぶ標準的なアプリの作り方
heki1224
1
790
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
84
Firebase Authentication
heki1224
0
580
新海誠作品の物語構造
heki1224
0
530
広告SDKの話
heki1224
1
530
Other Decks in Technology
See All in Technology
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
110
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
190
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
420
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
400
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.3k
Agile PBL at New Grads Trainings
kawaguti
PRO
1
390
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
210
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
330
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
460
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
170
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
100
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
The Pragmatic Product Professional
lauravandoore
36
6.9k
It's Worth the Effort
3n
187
28k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
520
Optimizing for Happiness
mojombo
379
70k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
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