Tidak dapat menyelesaikan host "<masukkan URL di sini>" Tidak ada alamat yang terkait dengan nama host

98

Saya mencoba mengikuti tutorial ini: Mendapatkan Data dari Web

Saya mencoba menerapkannya di Android 3.0, platform terbaru untuk tablet, namun, saya mendapatkan kesalahan ini: " Tidak dapat menyelesaikan host" www.anddev.org "Tidak ada alamat yang terkait dengan nama host. "

Anda dapat memeriksa URL yang saya gunakan hanya untuk membuktikan bahwa file tersebut ada. http://www.anddev.org/images/tut/basic/getdatafromtheweb/loadme.txt

Saya membuat kelas privat dan memperluasnya dengan asynctask. Ini kodenya:

    private class Downloader extends AsyncTask<String,Void,String>{
    String myString = null;
    @Override
    protected String doInBackground(String... arg0) {
        try{
            URL myURL = new URL("http://www.anddev.org/images/tut/basic/getdatafromtheweb/loadme.txt");
            URLConnection ucon = myURL.openConnection();
            InputStream is = ucon.getInputStream();
            BufferedInputStream bis = new BufferedInputStream(is);

            ByteArrayBuffer baf = new ByteArrayBuffer(50);
            int current = 0;
            while((current=bis.read())!=-1){
                baf.append((byte)current);
            }
            myString = new String (baf.toByteArray());
        }catch(Exception e){
            myString = e.getMessage();
        }
        return myString;
    }
@Override
protected void onPostExecute(String result){
    tv.setText(result);
}
}

Setiap bantuan di luar sana akan dihargai.

황현정
sumber
Anda dapat merujuk ke tautan ini . Semoga ini bisa membantu
Disimpulkan Jain

Jawaban:

148

Taruhan saya adalah Anda lupa memberi aplikasi Anda izin untuk menggunakan internet. Coba tambahkan ini ke manifes android Anda:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
lintah
sumber
selalu lihat logcat untuk mendapatkan jenis kesalahan maka konsumsi waktu Anda akan disimpan ...... bila Anda lupa untuk menambahkan izin .. logcat menunjukkan kesalahan ...... atau membuat laporan kerusakan ... ........
Vipin Sahu
14
baik saya juga punya masalah ini. Saya memiliki izin yang disiapkan dengan benar. URLConnection bekerja dengan baik hampir sepanjang waktu. Namun terkadang, saya mendapatkan error ini beberapa kali berturut-turut. Sangat sulit untuk men-debug, karena ini hanya muncul dari waktu ke waktu ...
hendrix
Anda juga memiliki izin saya untuk merasa hebat dalam membantu komunitas
Sebastien FERRAND
Saya telah menambahkan izin ini kemudian saya juga mendapat Kesalahan yang sama, Apakah ada Masalah di Emulator
Pratik Butani
7
Saya mengalami kesalahan ini karena saya telah mematikan data seluler sebelumnya dan lupa menyalakannya kembali. Ini berfungsi dengan baik di kantor, tetapi segera setelah saya mematikan wifi yang biasa, saya mendapatkan kesalahan. Terkadang hal-hal bodoh: |
Karmic Coder
117

Harap periksa apakah Anda memiliki koneksi internet yang valid.

Vladimir Ivanov
sumber
hmm ...: AKU memeriksanya, dan sepertinya kau benar. Saya benar-benar tidak tahu mengapa, tetapi koneksi internet saya baik-baik saja, namun browser di dalam emulator tidak dapat mengakses apa pun. Aneh .. Browser emulator berfungsi dengan baik beberapa menit yang lalu.
황현정
1
Saya merasa seperti orang bodoh terbesar. Saya mengembangkan di rumah, bukan di kantor dan saya lupa mengatur WiFi. Terkadang dibutuhkan hal-hal seperti ini untuk membuat Anda ingat bahwa Anda terkadang idiot. Jadi, terima kasih yang sebesar-besarnya karena telah membuatku merasa seperti orang idiot! :)
RileyE
2
Sama untuk ku! entah bagaimana mode Wifi dan pesawat dapat dipilih jadi saya hanya perlu menonaktifkan mode pesawat (saya tidak benar-benar terhubung ke internet-palmface)
d1jhoni1b
1
Lol tidak tahu mengapa saya mengharapkan S3 saya untuk login tanpa nirkabel dihidupkan.
Declan McKenna
Sial. Saya mematikan koneksi internet ke simulator, kemarin dan lupa menyalakannya pagi ini, Terima kasih!
Robert J. Clegg
65

Semoga Anda telah meminta izin

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

TAPI

Anda mungkin lupa MENGAKTIFKAN Internet di Seluler atau Perangkat Apa Pun.

Pratik Butani
sumber
2
Tidak memiliki perangkat pada wifi adalah hal yang menarik perhatian saya! Ups.
Nico
11
Memulai ulang emulator akan memperbaikinya untuk saya.
Kacy
Terima kasih telah menekankan bagian MOBILE DEVICE. :)
Burak Karakuş
12

Apakah Anda dapat menjangkau url itu dari dalam browser yang ada di dalamnya?

Jika tidak, berarti pengaturan jaringan Anda tidak benar. Jika Anda menggunakan emulator, Anda mungkin melihat bagian jaringan di dokumen.

Jika Anda menggunakan OS / X, emulator menggunakan antarmuka "pertama", en0 meskipun Anda menggunakan nirkabel (en1), karena en0 tanpa kabel masih ditandai sebagai up. Anda dapat mengeluarkan ifconfig en0 downdan memulai ulang emulator. Saya rasa saya telah membaca tentang perilaku serupa di Windows.

Jika Anda menggunakan Wifi / 3G, hubungi penyedia jaringan Anda untuk mendapatkan pengaturan DNS yang benar.

Heiko Rupp
sumber
hmm ...: AKU memeriksanya, dan sepertinya kau benar. Saya benar-benar tidak tahu mengapa, tetapi koneksi internet saya baik-baik saja, namun browser di dalam emulator tidak dapat mengakses apa pun. Aneh .. Browser emulator berfungsi dengan baik beberapa menit yang lalu.
황현정
Terima kasih! Dalam kasus saya, intranet disetel sebagai URL yang menyebabkan kesalahan, menggunakan ekstranet jelas menyelesaikan masalah
CGR
11

kalau kamu punya USB internet seperti saya emulator sepertinya tidak suka koneksi dihidupkan dan dimatikan jadi kamu mungkin perlu restart emulator

Ian
sumber
6

Kesalahan ini karena host Anda tidak dapat diterjemahkan ke alamat IP melalui DNS.

Pecahkan masalah ini:

1- Pastikan Anda terhubung ke internet (periksa kualitas jaringan).

2- Pastikan Anda mengambil izin yang tepat untuk mengakses jaringan

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Mina Fawzy
sumber
4

Saya mendapat kesalahan yang sama dan untuk masalahnya adalah saya menggunakan VPN dan saya tidak menyadarinya. Setelah memutus VPN dan menghubungkan kembali wifi menyelesaikannya.

adubey
sumber
2

Selain itu, pastikan perangkat Anda tidak dalam mode pesawat dan / atau penggunaan data diaktifkan.

Dave Justen
sumber
0

Jika Anda melihat ini sesekali pada wifi atau LAN, tetapi koneksi internet seluler Anda tampaknya baik-baik saja, kemungkinan besar router gateway murah ISP Anda mengalami beban lalu lintas tinggi.

Anda harus menangkap kesalahan ini dan menampilkan pengingat kepada pengguna untuk menutup aplikasi lain menggunakan jaringan.

Uji dengan menjalankan beberapa video youtube HD di desktop Anda untuk mereproduksi, atau cukup pergi ke Starbucks yang sibuk.

Dominic Cerisano
sumber
0

Memulai ulang emulator dapat dilakukan dalam beberapa skenario.

Ramdhas
sumber
0

Saya memiliki masalah yang sama dengan emulator Android 10 dan saya dapat menyelesaikan masalah dengan mengikuti langkah-langkah di bawah ini:

  1. Buka Pengaturan → Jaringan & internet → Lanjutan → DNS Pribadi
  2. Pilih nama host penyedia DNS Pribadi
  3. Masukkan: dns.google
  4. Klik Simpan

Dengan penyiapan ini, URL Anda akan berfungsi seperti yang diharapkan.

Andrey P.
sumber