Expo Goとdevelopment build
ほとんどのデザインはExpo Goで動作します。動作しない場合のバッジの意味。
バッジの意味
すべてのデザインにはExpo Go対応のバッジが付くか、付きません。これは主観的な判断ではなく、そのデザインが実際にインポートしているパッケージを、ネイティブコードを必要とするかどうかの一覧と照合して導き出されています。Expo Goに含まれないものをインポートしているデザインは、バッジが消え、詳細ページでどのパッケージが理由かを説明し、プロンプトにも同じ警告が繰り返されます。
| バッジ | 実行すること | タイミング |
|---|---|---|
| Expo Go対応 | npx expo start | ほぼすべてのデザイン。QRコードをスキャンすれば動作します。 |
| バッジなし | npx expo run:ios | そのデザインには、自分のマシンで一度だけコンパイルするdevelopment buildが必要です。 |
ほとんどのデザインが対応している理由
デザインが基づいているライブラリはすべてExpo Goに含まれています:Reanimated、gesture-handler、safe-area-context、svg、expo-image、Google Fontsパッケージ、Phosphorアイコン。ハウススタイルにはカスタムネイティブモジュールが一切不要なため、多くの場合スキャンして実行するだけです。
- モーションはバンドルされているReanimatedです。
- アイコンはPhosphorで、同じくバンドルされているreact-native-svgを通じて描画されます。
- 画像はexpo-image経由のリモートURLなので、ビルドすべきバンドル済みアセットはありません。
development buildを作成する
1回だけのコマンドです。完了後は通常どおりnpx expo startを使い続けます。変わるのはシミュレーターやデバイス上のクライアントアプリだけです。
npx expo run:ios
# or, without Xcode locally:
npx eas build --profile development --platform iosバッジは導出されるもので、手で指定されません
誰も手で入力しません。ビルド時のデザインの実際のインポートリストから決まるため、デザインが編集されても古い情報のまま残ることがありません。