はじめに
MacでAndroid Studioを使ってiPhoneアプリをデバッグ実行した際に、以下のようなエラーが発生しました。
Error: Flutter could not connect to the Dart VM service.
Please ensure your IDE or terminal app has permission to access devices on the local network. This allows Flutter to connect to the Dart VM.
You can grant this permission in System Settings > Privacy & Security > Local Network.
SocketException: Send failed (OS Error: No route to host, errno = 65), address = 0.0.0.0, port = 5353
一見ネットワークやiPhone側の設定を疑ってしまいますが、Mac側の設定が原因でした。
解決方法
解決策はシンプルで、Macの「システム設定」からAndroid Studioにローカルネットワークへのアクセスを許可することです。
手順は以下の通りです。
- システム設定を開く
- プライバシーとセキュリティ > ローカルネットワークに進む
- Android Studioをオンにする
これで問題なくiPhone上で実行できるようになりました。
私は最初にiPhoneの「設定」だと思いましたが、、Mac側での許可設定が必要です。たしかに「your IDE」と書いてあります、、、
他に試したこと(ネット上の情報)
今回のエラーについてネットで調べたところ、他にもいくつかの対処法が紹介されていました。
- iPhone端末を再起動する
- IDE(Android StudioやXcode)を再起動する
- Macを再起動する
ただし、今回はこれらでは解決には至らず、最終的にローカルネットワークの許可設定が有効でした。
その他の対処法(調査メモ)
さらに調べた限りでは、以下の方法も一部で有効とされていました。
- Xcodeで「開発者モード」を有効化して再ビルドする
- iPhoneの信頼設定(接続時に表示される「このコンピュータを信頼」)をやり直す
- iOSデバイスを一度接続解除 → 再接続して認識させ直す
まとめ
- エラー内容:
SocketException: Send failed (OS Error: No route to host, errno = 65)
- 解決策: Mac側でAndroid Studioにローカルネットワークアクセスを許可する
- 他の方法: 端末再起動、IDE再起動、Mac再起動、Xcode設定確認 など
同じエラーで悩んでいる方の参考になれば幸いです。
参考
-
Next
記事がありません