android - 从用户的时间线获取推文

标签 android twitter

我正在尝试从用户的每条推文中检索文本。 我不发送获取请求。 我通过以下方式成功将推特帐户连接到我的应用程序:

activity.client.authorize(activity, new Callback<TwitterSession>()
    {
        @Override
        public void success(Result<TwitterSession> result)
        {
            Toast.makeText(getApplicationContext(), "Login worked", Toast.LENGTH_LONG).show();
            writeInfile(result);
        }
        @Override
        public void failure(TwitterException e)
        {
            Toast.makeText(getApplicationContext(), "Login failed", Toast.LENGTH_LONG).show();
        }
    });

结果我可以访问我的用户的信息,例如他的 ID 或他的名字。

我还有 UserTimeLine

final UserTimeline userTimeline = new UserTimeline.Builder()
            .userId(result.data.getUserId())
            .build();

我如何从那里获取他的推文或他的推文的 ID?

谢谢

最佳答案

我设法通过查看自动完成给出的每个方法来做到这一点,所以如果它可以帮助任何人,我就是这样做的:

void writeData(ContentResolver contentResolver)
{
    activity.client.authorize(activity, new Callback<TwitterSession>()
    {
        @Override
        public void success(Result<TwitterSession> result)
        {
            writeInfile(result);
        }
        @Override
        public void failure(TwitterException e)
        {
            Log.e("Twitter Log in", e.toString());
        }
    });
}


void writeInFile(Result<TwitterSession> result)
{
    userTimeline = new UserTimeline.Builder()
                 .userId(result.data.getUserId())
                 .includeRetweets(false)
                 .maxItemsPerRequest(200)
                 .build();

    userTimeline.next(null, callback);
}

Callback<TimelineResult<Tweet>> callback = new Callback<TimelineResult<Tweet>>()
{
    @Override
    public void success(Result<TimelineResult<Tweet>> searchResult)
    {
        List<Tweet> tweets = searchResult.data.items;

        for (Tweet tweet : tweets)
        {
            String str = tweet.text; //Here is the body
            maxId = tweet.id;
        }
        if (searchResult.data.items.size() == 200)
            userTimeline.previous(maxId,  callback);
        else
            closeOutputFile();

    }
    @Override
    public void failure(TwitterException error)
    {
       //Do something
    }
};

关于android - 从用户的时间线获取推文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44027485/

相关文章:

android - 使用HmsMessageService(HMS推送套件)无法在华为设备上获取通知

java - Android 应用程序计算器在启动时退出

javascript - 显示多个 Twitter 分享按钮?

来自 Twitter REST API 的 Twitter 链接计数

android - 如何更改默认的 SQLite 时区

android - 具有彩色背景和波纹效果的 ListView 选择器

android - 为什么setEnabled(false)不会触发主题Theme.AppCompat.Light的ColorStateList?

html - 在 mozilla 中显示嵌入式推文的突发问题

Twitter 身份验证凭据

twitter - Twitter 上的水合物是什么意思?