Android-приложение, подключающееся к веб-сервису - не работает - PullRequest
9 голосов
/ 12 сентября 2010

Я пытаюсь подключить мое приложение к службе WCF, которую я создал в asp.net. Сервис работает на моей локальной машине: http://localhost:8080/Service.svc/

Но по ряду причин мой Android не может подключиться к этому http-адресу.

Это ошибка:

09-12 14: 50: 44.540: WARN / System.err (593): org.apache.http.conn.HttpHostConnectException: соединение с http://127.0.0.1:8080 отклонено
это метод в wcf, я пытаюсь вернуть коллекцию с некоторыми значениями.

        /// <returns>An enumeration of the (id, item) pairs. Returns null if no items are present</returns>
    protected override IEnumerable<KeyValuePair<string, SampleItem>> OnGetItems()
    {
        // TODO: Change the sample implementation here
        if (items.Count == 0)
        {
            items.Add("A", new SampleItem() { Value = "A" });
            items.Add("B", new SampleItem() { Value = "B" });
            items.Add("C", new SampleItem() { Value = "C" });
        }
        return this.items;
    }


А вот так выглядит соединение в андроиде:

public void getData(String url)
{
    HttpClient httpClient = new DefaultHttpClient();
    HttpGet httpGet = new HttpGet(url);
    HttpResponse response;

    try
    {
        response = httpClient.execute(httpGet);
        Log.i(TAG,response.getStatusLine().toString());
} catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }/* catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } */catch (Exception e){
        e.printStackTrace();
    }finally{
        httpGet.abort();
    }
}

1 Ответ

15 голосов
/ 12 сентября 2010

127.0.0.1 относится к локальному узлу в эмуляторе, а не к вашему компьютеру.

Используйте 10.0.2.2 для подключения к вашему хост-компьютеру.

Убедитесь, что вы запросили INTERNET разрешение в вашем AndroidManifest.xml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...