Я хочу сделать простой HTTP-заголовок для URL-адреса, который извлекается из текстового поля. Каждый раз, когда я ввожу URL-адрес и нажимаю для получения ответа HTTP, приложение становится нерепрессивным. Вот код:Android HTTP Request Making App Irresponsive
public void MakeRequest(View v)
{
EditText mEdit;
TextView txtresponse;
txtresponse = (TextView)findViewById(R.id.textView1);
mEdit = (EditText)findViewById(R.id.editText1);
HttpClient httpClient = new DefaultHttpClient();
HttpHead httphead = new HttpHead(mEdit.getText().toString());
try {
HttpResponse response = httpClient.execute(httphead);
txtresponse.setText(response.toString());
} catch (ClientProtocolException e) {
// writing exception to log
e.printStackTrace();
} catch (IOException e) {
// writing exception to log
e.printStackTrace();
}
}
При выполнении сетевого ввода-вывода из потока пользовательского интерфейса, приложение будет замерзать до тех пор, пока операция занимает. После того, как приложение завершится, приложение должно снова стать отзывчивым. Рассмотрите возможность выполнения операций блокировки в другом потоке, например, через «AsyncTask». – JimmyB