Skip to content
Kezdőlap » Failed host lookup: ‘www.xyz.com’ (OS Error: No address associated with hostname, errno = 7)

Failed host lookup: ‘www.xyz.com’ (OS Error: No address associated with hostname, errno = 7)

A Failed host lookup hibaüzenet, ahogy olvastam elsősorban Android emulátoron és készüléken jelentkezik tesztelési időben.

Nálam a konkrét eset úgy jött, hogy adatfájlban tárolt képeket használtam, amiket a NetworkImage widgettel jelenítettem meg:

NetworkImage(meal.imageUrl)

A képek pedig url-el voltak megadva, tehát az alkalmazás az valahonnét a netről hívta le a képet. A képek valamiért nem töltődtek be:

Megoldás

A megoldást ebben az esetben az jelenti, hogy az AndroidManifest.xml fájlba kell elhelyezni két sort:

AndroidManifest.xml

Ahogy a képen is látszik két helyen is megvan ez a fájl. Mindkettő az andoid\app\src útvonalon van. Az egyik a debug, a másik a main alkönyvtárban.

Amit az egyes fájlokba be kell szúrni az pedig ez a két sor:

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

Amikor megnyitjuk a fájlokat, akkor zöld komment jelzi is, hogy nem árt jogosultságot adni az INTERNET-hez, fejlesztési időben („The INTERNET permission is required for development.”):

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- The INTERNET permission is required for development. Specifically,
         the Flutter tool needs it to communicate with the running application
         to allow setting breakpoints, to provide hot reload, etc.
    -->
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>

Látszik, hogy a <uses-permission…/> sorokat hová kell pontosan a fájlba illeszteni.

Bár a második sort nem minden megoldás javasolta, néhány helyen láttam, hogy ezt sem árt megadni:

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

Ez az egyik része a megoldásnak.

Emulátor restart

A másik, amit meg kell tenni, az magának az emulátornak az újraindítása. Először be kell zárni:

emulátor bezárása

Aztán a VSCode-ban kiválasztjuk a rendelkezésre álló eszközök közül az emulátort:

eszközök listája VSCode-ban

Majd nyomunk egy hidegindítást:

Emulator cold boot

VSCode-ban elindítjuk az applikációt: Run / Run Without Debugging

És tárááám, meg is jelent a kép:

Külső forrás

Megosztom hol akadtam a hiba megoldására végül: itt

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük