[Flutter]Androidでインターネットに接続するアプリの場合はマニフェストファイルでの接続許可設定が必要です(SocketException: Failed host lookupの対処法)

FlutterでWeb通信を行うアプリを作って、それをAndroidアプリとして動かそうとした場合、デバッグモードの時は問題なく回りますが、これをリリースモード(Terminalから「flutter run –release」で回すと、

SocketException: Failed host lookup: ‘newsapi.org’ (OS Error: No address associated with hostname, errno = 7)

というエラーが出て、インターネット通信してくれない事象が発生してしまいますが、これの対処法です。

 

実は、これはFlutterのissueにもあがっていて、

結論としては、これはAndroidがわかっている方からすれば、「そうなんかい!」という話ですが、インターネット接続するための許可(パーミッション:Permission)の設定が必要になるという話なんです。

ですので、「android」のマニフェストファイル(AndroidManifest.xml)に、その設定を追記してやれば解消します。

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

(詳しくは、下の動画で解説していますので、よろしければご覧ください)

こんな記事も読まれています

おすすめコンテンツ




Flutter(フラッター)


みんプロ作成アプリ




TOP