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 を設定します。
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 1Android Studio 3.0+ をインストールします。
ここ から最新の Mac 版をダウンドードしてインストールします。
- Step 2Android SDK Build-Tools のインストールを確認する
Android Studio アプリを起動して、
「Preferences」>「Appearance & Behavior」>「System Settings」>「Android SDK」>「SDK Tools」をクリックします。
その後、「Android SDK Build-Tools」がインストール&チェックされていることを確認します。 - Step 3Android SDK の PATH を指定する
コピーした 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」をクリックするか、Android Studio メイン画面の右上から、「Open AVD Manager」をクリックし、Android Virtual Device Manger を起動します。
+ Create Virtual Device…
をクリックして、エミュレートするハードウェアの種類を選択します。 さまざまなデバイスでテストすることを推奨されますが、まず、最新のデバイス ( Pixel ) を選択します。ハードウェアを選択します。
エミュレートするシステムイメージを選択&インストールします。
System Image のダウンロードが完了したら、「Next」ボタンをクリックします。
必要に応じて AVD の属性を修正します。修正を終えたら「Finish」ボタンをクリックして仮装デバイスの追加作業を終了します。
また、追加したいハードウェアがあれば同じ手順で追加しましょう。
これから AVD Manager からプレイーボタンをクリックして該当デバイスを起動できます。
Android Studio Emulator で Expo アプリを起動します。
expo init your-project
& expo start
を実行している状態で行います。
Metro Bundler から、
❶「CONNECTION」>「Local」を選択、❷「Run on Android device/emulator」をクリックしてアプリを起動します。
正常に起動した場合、下記のように表示されます。
iOS シミュレータ環境を設定する
expo start
コマンドを実行した後、i を押して iOS シミュレータを起動できます。
何もせず、i を押すと ▼ のようにエラーになりますので、これから iOS Simulator を設定します。
Expo Press ? to show a list of all available commands.
※ iOS シミュレータは macOS 以外はインストールできません。
- Step 1最新の Xcode をインストールします。
OS を最新バージョンにアップデートしてから、App Store アプリを起動して Xcode をインストールします。
- Step 2Xcode Command Line Tools をインストールします。
Xcode アプリをオープンして、Xcode メニューから「Preferences…」を選択します。
Locations パネルへ移動し、Command Line Tools ドロップダウンから最新版のツールを選択&インストールします。
- Step 3iOS シミュレータを起動します。
expo start
コマンドを実行して次に i を押すか、Metro Bundler で「Run on iOS simulator」 をクリックします。
※ エミュレータ ( シミュレータ ) のアプリを Reload したり、ファイルが変更すると自動でアプリをアップデートする Fast Refresh 機能を enable/disable するには、
iOS では ⌘+d
を、Android は ⌘+m
でメニューが表示されます。
Expo アプリでデバッグ環境を設定する
以下は、expo init your-project
& expo start
を実行している状態で行います。
Android / iOS 用 Expo アプリを実際のデバイスにインストールしておくと、開発中のアプリを各デバイスで確認できます。
Expo の Metro Bundler や CLI で表示されている QRコード を読み取ってアプリを起動できます。
デバイスで下記のように初期画面が表示されれば、デバイスでの開発環境は完成です。
あとがき
React Native を始めるには Expo.io 環境で!、と推奨されることが多かったのですが、これから実際に開発しながら体験していきたいと思います。。
コメント