最近は、Expoを挟まず直接ReactNativeでアプリを作っていたのですが、突然実機に転送できなくなったので、今後のためにメモを残しておきます。
環境
- MacOS: 14.3.1
- チップ: Apple M1 Max
- Xcode: 15.2
- iOS: 17.3.1
- ReactNative: 0.73.4
npx pod-installでhermes-engineのインストールがコケる
実機転送ができなくなったので、検証用に新しいアプリを作り直したのですが、この現象にとても悩まされました。
結局、原因はわからないままなのですが、1週間ぐらい毎日検証していたら、ある日突然インストールがうまくいくようになりました。
バージョンに起因していたのかもしれないですが、謎です。なので、また同じ現象に悩む可能性があります。
実機(iPhone)に転送できない
yarn ios
で、実機に転送しようとすると、
xcodebuild: error: Unable to find a destination matching the provided destination specifier:
とエラーになってしまい、実機に転送ができずとても困りました。
「転送先が見つからない」的なことを言われているので、試しにpackage.jsonのscriptsに、
"ios:simulate": "react-native run-ios --simulator=\"iPhone 11\""
を追加し、
yarn ios:simulate
を実行すると、iOSシミュレータでは実行できることがわかりました。
なので、
"ios": "react-native run-ios"
を、
"ios": "react-native run-ios --device=\"📱\""
に変更し、
yarn ios
を実行したところ、無事に実機に転送できるようになりました。(📱は僕のiPhoneのデバイス名です)
今後は、転送先を指定しようと思います。