フレームワークなしで始める
フレームワークではうまく対応できない制約がある場合や、独自のフレームワークを書きたい場合は、フレームワークを使わずにReact Nativeアプリを作成することができます。
そのためには、まず環境をセットアップする必要があります。セットアップが完了したら、以下の手順に従ってアプリケーションを作成し、開発を開始してください。
ステップ1:新規アプリケーションの作成
以前にグローバルな
react-native-cli
パッケージをインストールした場合は、予期せぬ問題を引き起こす可能性があるため削除してください。shellnpm uninstall -g react-native-cli @react-native-community/cli
React Native Community CLI を使って新しいプロジェクトを生成できます。それでは、「AwesomeProject」という名前の新しいReact Nativeプロジェクトを作成しましょう。
npx @react-native-community/cli@latest init AwesomeProject
既存のアプリケーションにReact Nativeを統合する場合、プロジェクトにExpoをインストールした場合、または既存のReact NativeプロジェクトにAndroidサポートを追加する場合(既存アプリとの統合を参照)は、この手順は不要です。Ignite CLI のようなサードパーティ製のCLIを使ってReact Nativeアプリをセットアップすることもできます。
iOSで問題が発生した場合は、以下を実行して依存関係を再インストールしてみてください。
cd ios
でios
フォルダに移動します。bundle install
でBundlerをインストールします。bundle exec pod install
でCocoaPodsが管理するiOSの依存関係をインストールします。
【任意】特定のバージョンやテンプレートを使用する
特定のReact Nativeバージョンで新しいプロジェクトを開始したい場合は、--version
引数を使用できます。
npx @react-native-community/cli@X.XX.X init AwesomeProject --version X.XX.X
--template
引数を使ってカスタムのReact Nativeテンプレートでプロジェクトを開始することもできます。詳細はこちらを参照してください。
ステップ2:Metroの起動
MetroはReact NativeのためのJavaScriptビルドツールです。Metro開発サーバーを起動するには、プロジェクトフォルダから以下を実行します。
- npm
- Yarn
npm start
yarn start
Web開発に詳しい方なら、MetroはViteやwebpackのようなバンドラに似ていますが、React Nativeのためにエンドツーエンドで設計されています。例えば、MetroはJSXのような構文を実行可能なJavaScriptに変換するためにBabelを使用します。
ステップ3:アプリケーションの起動
Metro Bundlerは専用のターミナルで実行したままにしておきます。React Nativeプロジェクトフォルダ内で新しいターミナルを開き、以下を実行してください。
- npm
- Yarn
npm run android
yarn android
すべてが正しくセットアップされていれば、まもなくAndroidエミュレータで新しいアプリが実行されるはずです。
これはアプリを実行する方法の1つです。Android Studio内から直接実行することもできます。
これがうまくいかない場合は、トラブルシューティングのページを参照してください。
ステップ4:アプリの変更
アプリの実行に成功したので、次は変更を加えてみましょう。
- お好みのテキストエディタで
App.tsx
を開き、いくつかの行を編集してください。 - Rキーを2回押すか、開発メニュー(Ctrl + M)から
Reload
を選択すると、変更が反映されます!
以上です!
おめでとうございます!最初のベアボーンなReact Nativeアプリの実行と変更に成功しました。

次は何をしますか?
- この新しいReact Nativeコードを既存のアプリケーションに追加したい場合は、統合ガイドを確認してください。
- React Nativeについてもっと学びたい場合は、React Native入門をご覧ください。