使用Android中的Fabric从用户的时间轴获取具有特定主题标签的推文

时间:2015-07-22 07:45:07

标签: android twitter hashtag timeline twitter-fabric

我正在尝试使用Android中的Fabric从用户的时间轴(ex- @kkajnabi#suman)获取具有特定主题标签的推文。

我可以使用以下代码从%23suman(#suman)获取推文。但我想收到%40kkajnabi%23suman(@ kkajnabi#suman)的推文。

public class TimelineActivity extends ListActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.timeline);

        TwitterAuthConfig authConfig =  new TwitterAuthConfig("xxxxxxbbbbwdqddq", "eieuhquifhioqhfiohqoifhoi");
        Fabric.with((this), new TwitterCore(authConfig), new TweetUi());

        final SearchTimeline searchTimeline = new SearchTimeline.Builder()
                .query("%40kkajnabi%23suman")
                .build();

我认为这种做法是错误的。任何人都帮助我编写%40kkajnabi%23suman的查询,或者还有其他方法可以做到这一点。

1 个答案:

答案 0 :(得分:1)

这有点粗糙,但是如何获取用户推文

ArrayList<Tweet> tweets = new ArrayList<>();
TwitterCore.getInstance().getApiClient(session).getStatusesService()
    .userTimeline(null,
            "screenname",
            10 //the number of tweets we want to fetch,
            null,
            null,
            null,
            null,
            null,
            null,
            new Callback<List<Tweet>>() {
                @Override
                public void success(Result<List<Tweet>> result) {
                    for (Tweet t : result.data) {
                        tweets.add(t);
                        android.util.Log.d("twittercommunity", "tweet is " + t.text);
                    }
                }

                @Override
                public void failure(TwitterException exception) {
                    android.util.Log.d("twittercommunity", "exception " + exception);
                }
            });

然后我会做的是一个快速条件,以确定Tweet对象是否包含您想要从entities属性的主题标签。 我需要稍微玩这个来给你提供你需要的确切答案。我查看了API,遗憾的是,我找不到用于获取用户时间线并随后按标签过滤的参数。所以我认为你需要迭代。这里是对StatusesService类https://twittercommunity.com/t/android-usertimeline-question/30263/2

的userTimeline()方法的一个很好的引用

同样,我今天晚些时候有机会更新这个答案