简体   繁体   English

Android Twitter4j最新热门推文未显示

[英]Android Twitter4j latest popular tweets not showing

I am trying to get all the most recent and popular tweets from a particular keyword using Twitter4J, but the ones I receive are not the ones I get on Twitter when searching using the same keyword. 我正在尝试使用Twitter4J从特定关键字获取所有最新和最受欢迎的推文,但是当使用相同的关键字进行搜索时,我收到的不是我在Twitter上获得的。 Here is my code: 这是我的代码:

public class Wisdom extends SherlockActivity {
Context mContext;
Twitter mTwitter;
ListView mListView;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_hastag_wisdom);
    mListView = (ListView) findViewById(R.id.listView1);
    mContext = getApplicationContext();
    mTwitter = getTwitter();

    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
            .permitAll().build();
    StrictMode.setThreadPolicy(policy);
    showTweetsAbout("proverb");

}

private Twitter getTwitter() {
    ConfigurationBuilder cb = new ConfigurationBuilder();
    cb.setOAuthConsumerKey(xxxxxxx);
    cb.setOAuthConsumerSecret(xxxxxxx);
    cb.setOAuthAccessToken(xxxxxxx);
    cb.setOAuthAccessTokenSecret(xxxxxxx);
    TwitterFactory tf = new TwitterFactory(cb.build());
    Twitter twitter = tf.getInstance();
    return twitter;
}

private void showTweetsAbout(String queryString) {
    ArrayList<String> tweetsArray = new ArrayList<String>();

    Twitter twitter = mTwitter;
    Query query = new Query(queryString);
    query.setResultType(Query.MIXED);
    query.setCount(30);
    QueryResult result;

    try {
        result = twitter.search(query);

        for (Status tweet : result.getTweets()) {
            Log.d("Wisdom", tweet.getUser() + ":" + tweet.getText());
            tweetsArray.add(tweet.getText());
            for (URLEntity urle : tweet.getURLEntities()) {
                System.out.println(urle.getDisplayURL());
            }
        }
    } catch (TwitterException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    ArrayAdapter<String> tweetsAdapter = new ArrayAdapter<String>(this,
            R.layout.row, tweetsArray);

    mListView.setAdapter(tweetsAdapter);
}
  }

On my app, when searching with proverbs as the keyword, I get this: 在我的应用中,当使用谚语作为关键字进行搜索时,我得到以下信息: 在我的应用程式上

But on twitter, the same search yields the following results, very different to my apps results: 但是在Twitter上,相同的搜索会产生以下结果,与我的应用程序结果非常不同: 在Twitter应用上

What am I doing wrong and what do I have to do to get the results on my app to be the same as the ones on twitter? 我在做什么错,我怎么做才能使我的应用程序上的结果与Twitter上的结果相同? Code would be much appreciated, thanks. 代码将不胜感激,谢谢。

https://twitter.com/search,我可以看到结果在几秒/分钟之内得到更新,这可能就是问题所在。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM