dev-client について
デバイスでネイティブコードの変更をテストするため、独自の開発クライアントが必要な Expo 開発者向けのスキルです。EAS Build の設定、ローカルまたはクラウドでのビルド、インストール、Metro への接続を扱います。
主な機能
- 01開発クライアントが必要な状況の説明
- 02EAS 開発プロファイルの設定
- 03EAS クラウドまたはローカルでのビルド
- 04iOS ビルドの TestFlight 提出
- 05デバイスやシミュレーターへのビルドのインストール
- 06クライアントと Metro の接続
活用シーン
- 01デバイス上でローカル Expo モジュールをテスト
- 02Expo Go に含まれないネイティブモジュールを使うアプリのビルド
- 03iOS または Android の開発ビルド作成
- 04インストール済みクライアントをローカル Metro bundler に接続
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ gigs-slc/ react-native-skills --skill dev-clientインストール後、Claude Code で/dev-clientを入力して読み込まれたか確認します。
詳細
EAS Build を使用して、実機でネイティブコードの変更をテストするための開発クライアントを作成します。アプリのブランチをテストするためのカスタム Expo Go クライアントを作成する際に使用します。
重要:開発クライアントが必要な場合
アプリでカスタムネイティブコードが必要な場合にのみ、開発クライアントを作成してください。 ほとんどのアプリは Expo Go で問題なく動作します。
次の場合にのみ開発クライアントが必要です。
- ローカルの Expo モジュール(カスタムネイティブコード)
- Apple のターゲット(ウィジェット、アプリクリップ、拡張機能)
- Expo Go に含まれていないサードパーティ製ネイティブモジュール
まず npx expo start で Expo Go を試してください。すべて正常に動作する場合、開発クライアントは不要です。
EAS の設定
eas.json に開発プロファイルがあることを確認します。
{
"cli": {
"version": ">= 16.0.1",
"appVersionSource": "remote"
},
"build": {
"production": {
"autoIncrement": true
},
"development": {
"autoIncrement": true,
"developmentClient": true
}
},
"submit": {
"production": {},
"development": {}
}
}
主な設定:
developmentClient: true- 開発ビルド用に expo-dev-client をバンドルしますautoIncrement: true- ビルド番号を自動でインクリメントしますappVersionSource: "remote"- バージョン番号の信頼できる情報源として EAS を使用します
TestFlight 用のビルド
1 つのコマンドで iOS 開発クライアントをビルドし、TestFlight に提出します。
eas build -p ios --profile development --submit
これにより、次の処理が行われます。
- クラウドで開発クライアントをビルドします
- App Store Connect に自動で提出します
- TestFlight でビルドの準備ができると、メールが届きます
TestFlight のメールを受信したら:
- デバイスの TestFlight からビルドをダウンロードします
- アプリを起動して expo-dev-client の UI を表示します
- ローカルの Metro バンドラーに接続するか、QR コードをスキャンします
ローカルでのビルド
開発クライアントをマシン上でビルドします。
# iOS (requires Xcode)
eas build -p ios --profile development --local
# Android
eas build -p android --profile development --local
ローカルビルドの出力:
- iOS:
.ipaファイル - Android:
.apkまたは.aabファイル
ローカルビルドのインストール
シミュレーターに iOS ビルドをインストールします。
# Find the .app in the .tar.gz output
tar -xzf build-*.tar.gz
xcrun simctl install booted ./path/to/App.app
デバイスに iOS ビルドをインストールします(署名が必要です)。
# Use Xcode Devices window or ideviceinstaller
ideviceinstaller -i build.ipa
Android ビルドをインストールします。
adb install build.apk
特定のプラットフォーム向けのビルド
# iOS only
eas build -p ios --profile development
# Android only
eas build -p android --profile development
# Both platforms
eas build --profile development
ビルド状況の確認
# List recent builds
eas build:list
# View build details
eas build:view
開発クライアントの使用
インストールすると、開発クライアントで次のことができます。
- 開発サーバーへの接続 - Metro バンドラーの URL を入力するか、QR コードをスキャンします
- ビルド情報の確認 - ネイティブビルドの詳細を表示します
- ランチャー UI - 開発サーバーを切り替えます
ローカル開発環境に接続します。
# Start Metro bundler
npx expo start --dev-client
# Scan QR code with dev client or enter URL manually
トラブルシューティング
署名エラーでビルドに失敗する場合:
eas credentials
ビルドキャッシュをクリアする場合:
eas build -p ios --profile development --clear-cache
EAS CLI のバージョンを確認する場合:
eas --version
eas update