Временная шкала Twitter в приложении без аутентификации? - PullRequest
2 голосов
/ 19 февраля 2012

В последнее время я работаю над приложением, чтобы посмотреть, смогу ли я правильно сделать что-то вроде временной шкалы Twitter.

Я создал симпатичный маленький ListView, позволил некоторым опциям связываться с сайтом, позволил одному из вариантов вызвать Dialog для выбора учетной записи Twitter и завершил просмотр канала Twitter.

Тем не менее, кажется, что на самом деле невозможно получить временную шкалу пользователя без аутентификации через Twitter? Или это возможно? Если да, то как мне это сделать?

Можно ли получить и отобразить ленту Twitter пользователя без аутентификации и как?

1 Ответ

2 голосов
/ 19 февраля 2012

Да, вы можете использовать API поиска в Твиттере, который возвращает данные в формате json, которые вы должны проанализировать, просто ищите документацию.Кроме того, вы можете использовать прямую ссылку на временную шкалу пользователя, например, так:

https://twitter.com/statuses/user_timeline/user.json

РЕДАКТИРОВАТЬ: Это возвращает ответ как .json для меня, затем он должен быть проанализирован.Убедитесь, что вы анализируете ответ ПОСЛЕ его получения, похоже, что вы запускаете запрос, а затем переходите к его синтаксическому анализу до того, как запрос будет завершен.

public ArrayList<Tweet> getTweets(String Account, int page) {
        String accountUrl = "http://search.twitter.com/search.json?q=@" 
                            + Account + "&rpp=100&page=" + page;


        ArrayList<Tweet> tweets = new ArrayList<Tweet>();


        HttpClient client = new  DefaultHttpClient();
        HttpGet get = new HttpGet(accountUrl);


        ResponseHandler<String> responseHandler = new BasicResponseHandler();


        String responseBody = null;
        try{
            responseBody = client.execute(get, responseHandler);
            Toast.makeText(this, responseBody, Toast.LENGTH_LONG).show();
                    // parse response, return arraylist
        }catch(Exception ex) {
            ex.printStackTrace();
        }


}
...