如何使用twitter4j

时间:2016-05-05 15:09:44

标签: java android twitter

这是我的第一个问题。我需要从位置附近的任何用户处获取推文,然后将这些推文作为标记放在地图中。 我写了这段代码来进行搜索:

private AsyncTwitter twitter;
twitter = new TwitterHelper(this).getAsyncTwitter();   //Twitter helper is a helper class to connect to Twitter using Twitter4J library
twitter.addListener(new TwitterListener() {

        @Override
        public void searched(QueryResult queryResult) {

            List<Status> qrTweets = queryResult.getTweets();

            for (Status tweet : qrTweets ) {
                Log.v("Results",tweet.getId() + " " + "@" + tweet.getUser().getScreenName()  + " : " + tweet.getText() + " :::" + tweet.getCreatedAt() + " :::" + tweet.getUser().getLocation());
                GeoLocation geoLocation = tweet.getGeoLocation();
                if (geoLocation != null) {
                    LatLng latLng = new LatLng(geoLocation.getLatitude(), geoLocation.getLongitude());
                    Log.v(TAG, "Tweet:" + latLng.toString());
                    map.addMarker(new MarkerOptions().position(latLng).title(tweet.getText()));
                } else {
                    Log.v(TAG, "No location");
                }

            }
        }
}
twitter.search(new Query().geoCode(new GeoLocation(latLng.latitude, latLng.longitude),10,Query.KILOMETERS.toString()));

我收到了很多推文,但没有一条推文有GeoLocation数据,我无法添加到地图中。

我一直在搜索此论坛并阅读twitter4j个文档,我发现了QueryFilters但我不知道是否可以申请此问题,因为在这种情况下没有TwitterStream来过滤。

任何帮助将不胜感激。 提前谢谢。

0 个答案:

没有答案