105

このチュートリアルに従ってみまし た:Webからデータを取得する

タブレット用の最新プラットフォームであるAndroid3.0に実装しようとしましたが、「ホスト「www.anddev.org」を解決できません。ホスト名に関連付けられたアドレスがありません。」というエラーが表示されます。

ファイルが存在することを証明するためだけに使用したURLをチェックアウトできます。 http://www.anddev.org/images/tut/basic/getdatafromtheweb/loadme.txt

プライベートクラスを作成し、asynctaskで拡張しました。コードは次のとおりです。

    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);
}
}

どんな助けでもいただければ幸いです。

4

11 に答える 11

148

アプリにインターネットを使用する許可を与えるのを忘れていたに違いありません。これを Android マニフェストに追加してみてください。

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
于 2011-12-15T04:59:32.880 に答える
120

有効なインターネット接続があるかどうかを確認してください。

于 2011-04-29T08:31:43.940 に答える
67

許可を取っていただけたでしょうか

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

しかし

モバイルまたはデバイスを問わず、インターネットをオンにするのを忘れている可能性があります。

于 2013-07-25T11:29:15.720 に答える
12

組み込みのブラウザからその URL にアクセスできますか?

そうでない場合は、ネットワーク設定が正しくないことを意味します。エミュレーターを使用している場合は、ドキュメントのネットワーク セクションを参照してください。

OS/X を使用している場合、エミュレーターはワイヤレス (en1) を使用している場合でも「最初の」インターフェイスである en0 を使用しています。ifconfig en0 downエミュレータを発行して再起動できます。Windows での同様の動作について読んだことがあると思います。

Wifi/3G を使用している場合は、正しい DNS 設定についてネットワーク プロバイダーに問い合わせてください。

于 2011-04-29T08:31:56.057 に答える
11

私のようにUSBインターネットを使用している場合、エミュレータは接続のオンとオフを嫌うようですので、エミュレータを再起動する必要があるかもしれません

于 2012-08-23T09:35:58.180 に答える
6

ホストが DNS 経由で IP アドレスに変換できないため、このエラーが発生します。

この問題の解決:

1- インターネットに接続していることを確認します (ネットワークの品質を確認してください)。

2-ネットワークにアクセスするための適切な許可を得ていることを確認してください

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
于 2015-08-28T01:23:25.873 に答える
5

同じエラーが発生しました。問題は、VPN を使用していて、それを認識していなかったことです。VPNを切断し、wifiを再接続した後、それは解決しました。

于 2014-04-27T15:42:28.650 に答える