Nie można rozpoznać hosta „<tutaj adres URL>”; Brak adresu skojarzonego z nazwą hosta [zamknięte]


159

W mojej aplikacji na Androida do odczytywania linków RSS pojawia się ten błąd:

java.net.UnknownHostException: nie można rozpoznać hosta „example.com”; Brak adresu związanego z nazwą hosta.

W moim emulatorze mogę połączyć się z Google przez przeglądarkę. Pomóż mi rozwiązać ten problem.


czy możesz podać adres URL, dla którego
pojawia

15
Czy masz INTERNETpozwolenie?
Felix

@felix: W swojej przeglądarce sprawdziłem połączenie internetowe. działa. JAK mogę włączyć w mojej aplikacji?
bejoy george

3
Upewnij się, że masz włączone połączenie internetowe.
user609239

6
Sprawdź swoje połączenie WiFi
:)

Odpowiedzi:


193

Prawdopodobnie nie masz INTERNETpozwolenia. Spróbuj dodać to do swojego AndroidManifest.xmlpliku, tuż przed </manifest>:

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

Uwaga: powyższe nie musi znajdować się tuż przed </manifest>tagiem, ale jest to dobre / poprawne miejsce na umieszczenie go.

Uwaga: jeśli ta odpowiedź nie pomoże w Twoim przypadku, przeczytaj pozostałe odpowiedzi!


200
Sprawdź swoje połączenie WiFi
:)

120

Widziałem ten problem również w emulatorze. W moim przypadku jest to spowodowane uruchomieniem emulatora, a następnie uśpieniem komputera lub zmianą połączenia sieciowego (przejście z pracy do domu itp.), A następnie próbą ponownego użycia tego samego emulatora. Zamknięcie i ponowne uruchomienie emulatora rozwiązuje problem w tym przypadku.


To jest rzeczywista przyczyna problemu
user606669

1
Napotykam to samo zachowanie, ale zamknięcie / ponowne uruchomienie emulatora niczego nie naprawia. Ale połączenie się z moją służbową siecią VPN ...
pączek

To też był mój problem, próbując pobrać plik z nowej biblioteki. szukam tu i tam przez jakąś godzinę w dokumentacji biblioteki oraz w sieci bo nie udało się pobrać pliku .. okazuje się, że to problem z połączeniem emulatora lol. To marnowanie czasu, ale co mogę zrobić oprócz śmiechu lol. Dziękuję za uratowanie mi dnia
Komang Sidhi Artha

Widziałem tę odpowiedź i szczerze mówiąc, nie wierzyłem, że to będzie rozwiązanie mojego problemu. Dziękuję bardzo Eric! Wciąż ciekawi, jak udało ci się to rozgryźć lol
Roshan

57

Jest to błąd związany z WiFiwifi disable or not properly connected.

Po prostu podłącz ponownie Wi-Fi, aby rozwiązać problem.


41

Nie można rozpoznać hosta „”; Brak adresu związanego z nazwą hosta

musisz sprawdzić poniższy kod na swoim manifeście:

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

a co najważniejsze przynajmniej dla mnie: -

włączone połączenie Wi-Fi lub połączenie internetowe na urządzeniu mobilnym


1
pomogło mi ... Dzięki ... Sprawdź WiFi na swoim emulatorze
Hamreen Ahmad

moja sieć nie była włączona ... opps .. !!! dzięki za czek ... czasami popełnia się dubmest błędów
Aman Satija

10

Czasami, mimo że dodajesz <uses-permission android:name="android.permission.INTERNET" />AndroidManifest i masz połączenie Wi-Fi, ten wyjątek może zostać zgłoszony. W moim przypadku wyłączyłem WiFi, a potem włączyłem je ponownie. To rozwiązało błąd. Dziwne rozwiązanie, ale czasami działa.


Właśnie mi się to przytrafiło. Działa dobrze, a potem nagle pojawia się ten problem. WiFi wyłączone i włączone rozwiązało problem. Dziwny!
EnduroDave,

9

"" wygląda na to, że próbujesz rozwiązać problem z tym hostem.

Sprawdź adres URL rss

Aktualizacja Poniżej przedstawiono możliwości

1 Twoja przeglądarka jest skonfigurowana z proxy, aplikacja nie

System.setProperty("http.proxyHost", "my.proxyhost.com");
System.setProperty("http.proxyPort", "1234");

2 Twoja przeglądarka ma dostęp do internetu. nie aplikacja

3 może być problemem z SSL, jeśli adres URL jest zabezpieczony


Wpisałem swój adres URL w przeglądarce i mam dostęp.
bejoy george

co wpisałeś w przeglądarce?
Jigar Joshi

adres URL do pobierania danych, który kieruje do strony xml.
bejoy george

ale wygląda na to, że Twoja aplikacja nie próbuje uzyskać dostępu do tego ""
adresu

1
Jak mogę skonfigurować moją aplikację przy użyciu - System.setProperty („http.proxyHost”, „my.proxyhost.com”); System.setProperty ("http.proxyPort", "1234");
bejoy george

7

Miałem ten sam problem. Moje urządzenie wirtualne wyświetlało przekreśloną ikonę Wi-Fi na górnym pasku urządzenia. Ponownie uruchomiłem urządzenie wirtualne i wszystko wróciło do normy.


5

Może to być spowodowane poniższymi przyczynami: -

  1. Albo nie masz uprawnień do INTERNETU w pliku manifestu. Jeśli tak, użyj tego oświadczenia<uses-permission android:name="android.permission.INTERNET" />

  2. Lub masz połączenie z siecią, ale połączenie internetowe nie działa. Tak jakbyś był podłączony do Wi-Fi, ale nie ma połączenia z Internetem lub komórkowa transmisja danych w telefonie jest WŁĄCZONA, ale nie masz połączenia danych w telefonie.

Punkt 2 jest interesujący i nie jest to założenie, na końcu testowałem to samo.

Mam nadzieję, że to ci pomoże

Summved


4

To nie twoja wina, bae, zdarzało mi się to czasami, gdy emulator jest w dziwnym stanie. Pomogło mi samo ponowne uruchomienie emulatora.


4

Czasami na emulatorze muszę uruchomić przeglądarkę, zanim moja aplikacja będzie mogła uzyskać dostęp do Internetu.


4

Sprawdź, czy masz:

1- Dostęp do łączności z Internetem.

2- Zezwolenie na korzystanie z Internetu jest zawarte w manifeście.

3- Host adresu URL jest ważny i zarejestrowany na zaufanym serwerze nazw domen.


2

Jeśli uruchamiasz aplikację na emulatorze, upewnij się, że jest ona prawidłowo połączona z Internetem. Jeśli tak nie jest, najłatwiejszym sposobem rozwiązania tego problemu jest ponowne otwarcie emulatora lub utworzenie nowego urządzenia.


2

W moim przypadku miałem ten błąd, gdy jestem połączony z VPN na moim hoście, ale nie na symulatorze. Wyłączenie VPN rozwiązało problem


2

Nie można rozpoznać hosta „”; Brak adresu związanego z nazwą hosta

Miałem ten problem i rozwiązałem go w ten sposób. zmiana

http: //hostname/abc/def/ghi/name.php

do

http: //ipaddress/abc/def/ghi/name.php // http: //97.68.XX.YY/abc/def/ghi/name.php

Rozwiązałem to w ten sposób ... musisz podać adres IP serwera zamiast nazwy hosta / nazwy serwera.

Spróbuj tego i skomentuj swoją opinię.


1
Cóż, to tak, jakby sugerować, aby wsiąść do autobusu, gdy ktoś pyta, dlaczego jego samochód nie działa. W końcu jednym z celów nazw hostów jest to, że podstawowy adres IP może się zmienić w dowolnym momencie.
Manuel



1

Miałem ten sam problem, a to dlatego, że symulator w jakiś sposób dostał się w tryb samolotowy, po wyłączeniu moja aplikacja działała dobrze :-) Próbowałem wszystkiego, odbudowałem, wyczyściłem + zbudowałem i zrestartowałem android studio i zrestartowałem komputer, nawet przeinstalowałem studio android ..

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.