Android: использование HttpGet для отправки URL - PullRequest
0 голосов
/ 14 июня 2011

Я пытаюсь отправить URL на мой сервер, который использует значения из полей edittext.В настоящее время он продолжает принудительно закрываться при нажатии кнопки.Вот что у меня есть:

Button testbtn = (Button) findViewById(R.id.Testbtn);
testbtn.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {
        HttpGet method = new HttpGet("http://mysite.com/test.php?first=<>&last=<>&address=<>&phone=<>&zip=<>&email=<>");
        HttpClient client = new DefaultHttpClient();
        try {
            client.execute(method);
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
});

Я еще не помещал значения текста редактирования в <> URL-адреса, но я предполагаю, что это не вызовет никаких проблем.Почему он не отправляет URL-адрес?

Я не хочу, чтобы он открывал браузер или что-то подобное, но отправлял URL-адрес в фоновом режиме, и тогда у меня было бы намерение вернуть их к предыдущемуэкран.

Ответы [ 2 ]

9 голосов
/ 14 июня 2011

В данный момент вы ничего не отправляете.

HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://www.yoursite.com/");

    try {
        // Execute HTTP Post Request
        HttpResponse response = httpclient.execute(httppost);

        HttpEntity ht = response.getEntity();

            BufferedHttpEntity buf = new BufferedHttpEntity(ht);

            InputStream is = buf.getContent();

            BufferedReader r = new BufferedReader(new InputStreamReader(is));

            StringBuilder total = new StringBuilder();
            String line;
            while ((line = r.readLine()) != null) {
                total.append(line);
            }

    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

Надеюсь, это поможет!

ОБНОВЛЕНИЕ

Измените HttpPost на HttpGet оба работают;)

1 голос
/ 14 июня 2011

client равно нулю.Вы должны инициализировать его.

...