メインコンテンツへスキップ

Create React Native Appの紹介

·3分で読めます
Adam Perry
Expo ソフトウェアエンジニア

本日、Create React Native App を発表します。これはReact Nativeプロジェクトの開始を大幅に簡単にする新しいツールです。このツールはCreate React Appのデザインに強く影響を受けており、FacebookExpo(旧Exponent)の協力の成果です。

多くの開発者は、React Nativeの現在のネイティブビルド依存関係のインストールと設定、特にAndroid向けで苦労しています。Create React Native Appを使えば、XcodeやAndroid Studioを使用する必要がなく、LinuxやWindowsを使ってiOSデバイス向けの開発ができます。これはExpoアプリを使用して実現されており、ネイティブコードを一切コンパイルすることなく、純粋なJavaScriptで書かれたCRNAプロジェクトを読み込んで実行します。

新しいプロジェクトを作成してみてください(yarnがインストールされている場合は、適切なyarnコマンドに置き換えてください)。

$ npm i -g create-react-native-app
$ create-react-native-app my-project
$ cd my-project
$ npm start

これによりReact NativeのPackagerが起動し、QRコードが表示されます。Expoアプリでそれを開くと、JavaScriptが読み込まれます。console.logの呼び出しはターミナルに転送されます。標準的なReact Native APIのほか、Expo SDKも利用できます。

ネイティブコードはどうなりますか?

多くのReact Nativeプロジェクトには、コンパイルが必要なJavaやObjective-C/Swiftの依存関係があります。Expoアプリにはカメラ、ビデオ、連絡先などのAPIが含まれており、Airbnbのreact-native-mapsFacebook認証などの人気ライブラリもバンドルされています。しかし、Expoがバンドルしていないネイティブコードの依存関係が必要な場合は、おそらく独自のビルド設定が必要になるでしょう。Create React Appと同様に、CRNAでも「eject」がサポートされています。

npm run eject を実行すると、react-native init が生成するものと非常によく似たプロジェクトが得られます。その時点から、react-native init で始めた場合と同様にXcodeやAndroid Studioが必要になり、react-native link でライブラリを追加することができ、ネイティブコードのコンパイルプロセスを完全に制御できるようになります。

質問やフィードバックはありますか?

Create React Native Appは現在、一般利用に十分なほど安定しています。そのため、皆様の使用体験についてぜひお聞かせください。Twitterで私を見つけるか、GitHubリポジトリでissueを開いてください。プルリクエストも大歓迎です!