Почему мое Android-приложение сломалось из-за openstream ()? - PullRequest
0 голосов
/ 07 марта 2012

Я просто хочу использовать API погоды Google

mButton.setOnClickListener(new OnClickListener() {

    public void onClick(View v) {   // TODO Auto-generated method stub
        try {
        InputStream is = new URL("http://www.baidu.com").openStream();
        } catch (MalformedURLException e) {
        // TODO Auto-generated catch block  e.printStackTrace();
        } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        }

}

Я не знаю, почему этот код вызывает сбои. Это должно быть правильно в Java? Пожалуйста, помогите мне

Мое устройствоGoogle Nexus S, и я тоже пытался работать над AVD, он тоже давил

Ответы [ 2 ]

1 голос
/ 09 декабря 2012

У меня тоже такая же проблема. Но теперь, я решил эту проблему по ссылке об использовании темы.

Вам нужно создать рабочий поток для работы с открытым потоком URL, а не с использованием основного потока (потока пользовательского интерфейса).

1 голос
/ 07 марта 2012

Вероятно, сбой, потому что вы выполняете сетевые операции в потоке пользовательского интерфейса.

Поместите работу в AsyncTask или Thread, и она должна работать.

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