Java Twitter4j TwitterStream不';我没有收到所有的推特

Java Twitter4j TwitterStream不';我没有收到所有的推特,java,twitter,twitter4j,Java,Twitter,Twitter4j,我试图通过twitter4j TwitterStream对象获取twitter上的所有推文。我不确定我是否收到了所有的推特。为了测试流式API返回tweet的延迟,我在twitter上发布了一条来自我账户的tweet。但是,即使过了很长时间,我也没有收到那条推特 twitter4j是捕捉到了twitter上发布的每一条推文,还是丢失了大部分推文?还是我做错了什么? 下面是我用来获取推文的代码: StatusListener listener = new StatusListene

我试图通过twitter4j TwitterStream对象获取twitter上的所有推文。我不确定我是否收到了所有的推特。为了测试流式API返回tweet的延迟,我在twitter上发布了一条来自我账户的tweet。但是,即使过了很长时间,我也没有收到那条推特

twitter4j是捕捉到了twitter上发布的每一条推文,还是丢失了大部分推文?还是我做错了什么? 下面是我用来获取推文的代码:

        StatusListener listener = new StatusListener(){
        int countTweets = 0;    // Count to implement batch processing

        public void onStatus(Status status) {
            countTweets ++;
            StatusDto statusDto = new StatusDto(status);
            session.saveOrUpdate(statusDto);

            // Save 1 round of tweets to the database
            if (countTweets == BATCH_SIZE) {
                countTweets = 0;
                session.flush();
                session.clear();
            }
        }

        public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) {}

        public void onTrackLimitationNotice(int numberOfLimitedStatuses) {}

        public void onException(Exception ex) {
            ex.printStackTrace();
        }

        public void onScrubGeo(long arg0, long arg1) {
            // TODO Auto-generated method stub
        }           
    };

    ConfigurationBuilder cb = new ConfigurationBuilder();
    cb.setDebugEnabled(true)
      .setOAuthConsumerKey(Twitter4jProperties.CONSUMER_KEY)
      .setOAuthConsumerSecret(Twitter4jProperties.CONSUMER_SECRET)
      .setOAuthAccessToken(Twitter4jProperties.ACCESS_TOKEN)
      .setOAuthAccessTokenSecret(Twitter4jProperties.ACCESS_TOKEN_SECRET);

    TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance();
    twitterStream.addListener(listener);

    session = HibernateUtil.getSessionFactory().getCurrentSession();
    transaction = session.beginTransaction();

    // sample() method internally creates a thread which manipulates TwitterStream and calls these adequate listener methods continuously.
    twitterStream.sample();

我对这一点持开放态度,但我相信它是这样运作的

流式API仅提供非合作伙伴的tweet示例。这是“花园软管”,而不是一些推特合作伙伴得到的“消防软管”。但您可以申请完全访问权限

.sample()给出了这个“花园软管”。你的twitter帐户将无法访问消防水管,尽管我认为如果你有访问权,消防水管会有一个twitter流

在此页面上搜索“状态/样本”以了解详细信息: