PR
Expo.iomacOSReactReact Native Android StudioEmulatorexpo-cliSimulatorXcode

Expo で React Native の開発環境を構築する〜macOS〜

steelworkers-1029665 Expo.io

この記事は 2020 年当時の記録です(2026 年 7 月 追記)

エミュレータやシミュレータを用意して、QR コードで実機に飛ばす——という流れは今も同じです。ただしいちばん最初のコマンドが変わりました。そこから順に補足します。

1. expo-cli のグローバルインストールは不要になりました

本文の最初にあるこのコマンドは、現在は使いません。

npm install -g expo-cli   // ← 現在は不要

従来のグローバル版 expo-cli は廃止され、CLI は expo パッケージそのものに含まれる形になりました。プロジェクトごとにバージョンが揃うため、SDK との食い違いが起きません。

npx create-expo-app my-app
cd my-app
npx expo start

グローバルに入れておくのは Node.js(LTS 版)だけで足ります。すでに古い expo-cli を入れている場合は、混乱の元なのでアンインストールしておくとよいです。

2. 環境変数は ANDROID_HOME を使います

本文では ANDROID_SDK という名前で設定していますが、現在は ANDROID_HOME が標準です。

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/platform-tools

書き込む先にもご注意ください。本文は ~/.bash_profile ですが、macOS の既定のシェルは変わっています。echo $SHELL で確認して、zsh なら ~/.zshrc に書いてください。「設定したのに adb が見つからない」という場合、たいていここです。

3. Expo Go だけでは足りない場面があります

本文の「Expo アプリ」は、現在 Expo Go という名前です。QR コードを読んで実機で確認する流れは変わっていません。

ただし Expo Go は、あらかじめ組み込まれたネイティブモジュールしか動かせません。カメラや決済など、Expo Go に含まれないネイティブコードを使うライブラリを入れた時点で、Expo Go では動かなくなります。

その場合に使うのが開発ビルド(development build)です。自分のアプリ専用の「Expo Go のようなもの」を一度作っておき、以後はそれで確認します。かつて「eject」と呼ばれていた作業の多くは、今はこの方法で置き換えられています。

ローカルでビルドして実機・エミュレータに入れる場合は、次のコマンドになります。

npx expo run:android
npx expo run:ios

4. スクリーンショットについて

本文の Android Studio は 3.5.3 の画面です。SDK Manager や AVD Manager の位置・見た目は変わっていますが、やることは同じです。「システムイメージを選んで仮想デバイスを作り、先に起動しておく」という手順で読み替えてください。

※ 上記は 2026 年 7 月時点の Expo 公式ドキュメントの記載に基づく整理であり、当方の環境での再検証は行っていません。

Expoでアプリを開発する為には、ローカル開発ツール ( Expo CLI ) と開発中のアプリを確認する為の Expo クライアント or エミュレータが必要です。expo-cli をインストールした後、アプリを確認する為の環境を二つに分けて設定していきます。

  • Android エミュレート・iOS シミュレータ環境
  • Expoアプリ・Expo Client のインストールによるデバイス環境

スポンサーリンク

現状・条件

  • MacBook Pro / macOS Catalina 10.15.3
  • node@v12.14.1 / npm@6.13.4 ( by nodebrew )
  • expo-cli@3.11.9
  • Android Studio 3.5.3 for Mac
  • Xcode 11.3.1

ローカル開発ツールをインストールする

Expo CLI は CLI と GUI ツールを提供します。
インストール前に 最新版の Node.js をインストールしてください。( Git を使用するなら同じくインストールを!)

npm install -g expo-cli でグローバル環境にインストールします。

try🐶everything ~$ mkdir ReactNative
try🐶everything ~$ cd ReactNative 
try🐶everything ReactNative$ npm install -g expo-cli
...
+ expo-cli@3.11.9
updated 1 package in 83.125s
try🐶everything ReactNative$ 

macOS の場合、一部 Watchman をインストールしないと問題になるので、ここ からダウンロード&インストールします。

Android エミュレータ環境を設定する

expo start コマンドを実行した後、a を押して Android エミュレータを起動できます。

何もせず、a を押すと ▼ のようにエラーになりますので、これから Android Studio Emulator を設定します。

Trying to open the project on Android…
Couldn’t start project on Android: Error running adb: No Android device found. Please connect a device and follow the instructions here to enable USB debugging:
https://developer.android.com/studio/run/device.html#developer-device-options. If you are using Genymotion go to Settings -> ADB, select “Use custom Android SDK tools”, and point it at your Android SDK directory.


Expo  Press ? to show a list of all available commands.

Android Studio Emulator を設定します。

Expo.io の Android Studio Emulator ガイドラインに沿って設定を行います。

  • Step 1
    Android Studio 3.0+ をインストールします。

    ここ から最新の Mac 版をダウンドードしてインストールします。

    howto-expo-io-04
    ▲ Android Studio 3.5.3
  • Step 2
    Android SDK Build-Tools のインストールを確認する

    Android Studio アプリを起動して、
    Preferences」>「Appearance & Behavior」>「System Settings」>「Android SDK」>「SDK Tools」をクリックします。
    その後、「Android SDK Build-Tools」がインストール&チェックされていることを確認します。

    howto-expo-io-05
    Android SDK Build-Tools オプションを確認
  • Step 3
    Android SDK の PATH を指定する
    howto-expo-io-06
    ▲ Android SDK Location をコピーします。

    コピーした Android SDK Location を自分のローカル PATH に指定します。macOS や Linux であれば、下記のコマンドを実行します。

    try🐶everything ~$ echo "export ANDROID_SDK=/Users/myuser/Library/Android/sdk" >> ~/.bash_profile

    macOS の場合、さらに下記のコマンドを実行してください。

    try🐶everything ~$ echo "export PATH=/Users/myuser/Library/Android/sdk/platform-tools:$PATH" >> ~/.bash_profile

    adb コマンドが下記のように実行できれば OK です。

    try🐶everything ~$ source ~/.bash_profile
    try🐶everything ~$ adb
    Android Debug Bridge version 1.0.41
    Version 29.0.5-5949299
    Installed as /Users/rnuser/Library/Android/sdk/platform-tools/adb
    
    global options:
     -a         listen on all network interfaces, not just localhost
     -d         use USB device (error if multiple devices connected)
     -e         use TCP/IP device (error if multiple TCP/IP devices available)
     -s SERIAL  use device with given serial (overrides $ANDROID_SERIAL)
     -t ID      use device with given transport id
     -H         name of adb server host [default=localhost]
     -P         port of adb server [default=5037]
     -L SOCKET  listen on given socket for adb server [default=tcp:localhost:5037]
    
    general commands:
     devices [-l]             list connected devices (-l for long output)
     help                     show this help message
     version                  show version num
    ...
    
  • Step 4
    仮想デバイスを設定する

    Android Studio アプリを起動して、
    Tools」>「AVD Manager」をクリックするか、

    howto-expo-io-07

    Android Studio メイン画面の右上から、「Open AVD Manager」をクリックし、Android Virtual Device Manger を起動します。

    howto-expo-io-08

    + Create Virtual Device… をクリックして、エミュレートするハードウェアの種類を選択します。 さまざまなデバイスでテストすることを推奨されますが、まず、最新のデバイス ( Pixel ) を選択します。

    ハードウェアを選択します。

    howto-expo-io-09
    ▲ Pixel XLを追加します。

    エミュレートするシステムイメージを選択&インストールします。

    howto-expo-io-10
    ▲ 必要な System Image を追加します。

    System Image のダウンロードが完了したら、「Next」ボタンをクリックします。

    howto-expo-io-11
    ▲ 他の追加したい System Image があれば「Download」リンクをクリックします。

    必要に応じて AVD の属性を修正します。修正を終えたら「Finish」ボタンをクリックして仮装デバイスの追加作業を終了します。

    howto-expo-io-12

    また、追加したいハードウェアがあれば同じ手順で追加しましょう。

    howto-expo-io-13

    これから AVD Manager からプレイーボタンをクリックして該当デバイスを起動できます。

    howto-expo-io-14
    ▲ Expo アプリをエミュレートする為にはこの仮装デバイスを事前に起動しておく必要があります。

Android Studio Emulator で Expo アプリを起動します。

expo init your-project & expo start を実行している状態で行います。

Metro Bundler から、
❶「CONNECTION」>「Local」を選択、❷「Run on Android device/emulator」をクリックしてアプリを起動します。

Android エミュレータで Expo アプリをエミュレートする際の注意点

Connection」を「local」にしないと真っ白な画面しか表示されません!

howto-expo-io-15

※ iOS Simulator では 「Connection」の Tunnel、LAN、Local いずれも起動できます。

正常に起動した場合、下記のように表示されます。

howto-expo-io-16

iOS シミュレータ環境を設定する

expo start コマンドを実行した後、i を押して iOS シミュレータを起動できます。

何もせず、i を押すと ▼ のようにエラーになりますので、これから iOS Simulator を設定します。

Simulator not installed. Please visit https://developer.apple.com/xcode/download/ to download Xcode and the iOS simulator. If you already have the latest version of Xcode installed, you may have to run the command `sudo xcode-select -s /Applications/Xcode.app`.

Expo  Press ? to show a list of all available commands.

※ iOS シミュレータは macOS 以外はインストールできません。

  • Step 1
    最新の Xcode をインストールします。

    OS を最新バージョンにアップデートしてから、App Store アプリを起動して Xcode をインストールします。

  • Step 2
    Xcode Command Line Tools をインストールします。

    Xcode アプリをオープンして、Xcode メニューから「Preferences…」を選択します。

    Locations パネルへ移動し、Command Line Tools ドロップダウンから最新版のツールを選択&インストールします。

    howto-expo-io-17
  • Step 3
    iOS シミュレータを起動します。

    expo start コマンドを実行して次に i を押すか、Metro Bundler で「Run on iOS simulator」 をクリックします。

    howto-expo-io-18

※ エミュレータ ( シミュレータ ) のアプリを Reload したり、ファイルが変更すると自動でアプリをアップデートする Fast Refresh 機能を enable/disable するには、
iOS では ⌘+d を、Android は ⌘+m でメニューが表示されます。

expo-tutorial-imageshare-04
▲ iOS Simulator & Android Studio Emulator

Expo アプリでデバッグ環境を設定する

以下は、expo init your-project & expo start を実行している状態で行います。

Android / iOS 用 Expo アプリを実際のデバイスにインストールしておくと、開発中のアプリを各デバイスで確認できます。

Expo の Metro Bundler や CLI で表示されている QRコード を読み取ってアプリを起動できます。

argon-react-native-03
▲ Android:Expoアプリ内からスキャン
argon-react-native-04
▲ iOS : カメラアプリからスキャン

デバイスで下記のように初期画面が表示されれば、デバイスでの開発環境は完成です。

howto-expo-io-19
▲ Galaxy S6
howto-expo-io-20
▲ iPhone XS

あとがき

React Native を始めるには Expo.io 環境で!、と推奨されることが多かったのですが、これから実際に開発しながら体験していきたいと思います。。

コメント

タイトルとURLをコピーしました