我一直在尝试使用Fabric获取用户的最新5条推文列表。它在前几个小时内表现得很好,但后来停止工作了。我希望不需要用户登录即可完成此操作,据我所知,API允许访客登录以读取推文,但这可能会对速率限制产生更大的影响?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
Fabric.with(this, new Twitter(authConfig), new Crashlytics());
TwitterCore.getInstance().logInGuest(new Callback() {
@Override
public void success(Result result) {
AppSession session = (AppSession) result.data;
getTweets();
}
@Override
public void failure(TwitterException exception) {
// unable to get an AppSession with guest auth
}
});
}
public void getTweets() {
TwitterApiClient twitterApiClient = TwitterCore.getInstance().getApiClient();
StatusesService statusesService = twitterApiClient.getStatusesService();
statusesService.userTimeline([USERID], null, 5, null, null, null, true, null, false, new Callback<List<Tweet>>() {
@Override
public void success(Result <List<Tweet>> result) {
for(Tweet Tweet : result.data) {
tweetList.add(Tweet.text);
}
createListView();
}
public void failure(TwitterException exception) {
Log.e("Failure", exception.toString());
exception.printStackTrace();
}
});
}
当我没有收到403错误时,所有功能都可以完美运行并且我的列表也被填充了。
现在,有可能是我的代码出了问题导致了速率限制黑名单?否则,我需要让用户登录才能显示5条推文吗?或者我应该实现一些服务器端缓存?
非常感谢任何提示/帮助。