SocketException を解決する方法: ホスト検索に失敗しました: 'www.xyz.com' (OS エラー: ホスト名に関連付けられたアドレスがありません、errno = 7) 質問する

SocketException を解決する方法: ホスト検索に失敗しました: 'www.xyz.com' (OS エラー: ホスト名に関連付けられたアドレスがありません、errno = 7) 質問する

約 20 秒後に http 呼び出しを実行しようとすると、コンソールに次のエラーが表示されます。

E/flutter ( 8274): [ERROR:flutter/shell/common/shell.cc(184)] Dart Error: Unhandled exception:
E/flutter ( 8274): SocketException: Failed host lookup: 'flutter-project-xxxxx.firebaseio.com' (OS Error: No address associated with hostname, errno = 7)

このエラーは、アプリの http パッケージを通じて呼び出すすべてのメソッドとすべてのルートで発生します。

Android Studio の AVD 仮想デバイスを使用して、Windows 上で Flutter アプリを開発しています。

バージョン:

  http: ^0.12.0+1
  flutter: 1.0

事例:

  1. 自宅から、または携帯電話からのテザリングを通じて: 仮想デバイスのすべての部分で接続は正常に機能します

  2. 職場のネットワーク(ファイアウォールの内側)から:

Android Web View のみで、問題なくインターネットを閲覧できます (コードで使用している同じ URL を呼び出すこともでき、動作します)。仮想デバイスで他のアプリケーション (Chrome、Google Play など) を使用すると接続エラーが発生し、アプリをテストするときに「SocketException」が発生します。

そのアプリからの呼び出しの違いは何ですか? アプリの呼び出しを Web ビューの呼び出しと同じようにルーティングする方法はありますか?

ありがとう!

ベストアンサー1

追加インターネット許可解決策だけではありません。
オンラインであることを確認する必要があります。モバイルまたはエミュレータ

  1. モバイルでもエミュレータでもオンラインであることを確認してください

  2. アプリのandroid/app/src/main/AndroidManifest.xmlでインターネット権限が付与されていることを確認してください。

    <uses-permission android:name="android.permission.INTERNET"/>

おすすめ記事