Чтение данных JSON из сети (Twitter) - PullRequest
1 голос
/ 23 июля 2011

Я нашел этот замечательный учебник о том, как использовать JSON для получения обновлений Twitter и опубликовать его в TextView: http://www.ibm.com/developerworks/xml/library/x-andbene1/

Я следовал этому учебнику шаг за шагом, поэтому мой код такой же.

В методе examineJSONFile() у нас есть эта строка:

InputStream is = this.getResources().openRawResource(R.raw.jsontwitter);

Этот файл загружается непосредственно с сайта Twitter, как упоминалось во втором абзацеиз http://www.ibm.com/developerworks/xml/library/x-andbene1/#aotf.

Все это прекрасно, за исключением одной вещи: абсолютно бесполезно загружать обновления (твиты) в Твиттере, а затем создавать приложение, используя его в виде необработанного файла.Должна быть возможность загрузить этот файл JSON во время выполнения, а затем показать твиты в TextView.

Я попытался создать InputStream другим способом, например так:

String url = "http://twitter.com/statuses/user_timeline/bbcnews.json";
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(new HttpGet(url));
InputStream is = response.getEntity().getContent();
BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
StringBuffer sb = new StringBuffer();
try
{
    String line = null;

    while ((line = br.readLine())!=null)
    {
        sb.append(line);
        sb.append('\n');                
    }
}
catch (IOException e)
{
        e.printStackTrace();
}
String jsontext = new String(sb.toString());

Но похоже эта строка: HttpResponse response = httpclient.execute(new HttpGet(url)); выдает исключение.

Любая помощь, пожалуйста?

1 Ответ

1 голос
/ 23 июля 2011

Похоже, вам не хватает разрешения ИНТЕРНЕТ. Посмотри логи и будет понятно, в чем именно проблема.

...