使用 Fabric 获取 "Have you authenticated with Twitter" 并使用 Twitter API 客户端

Getting "Have you authenticated with Twitter" using Fabric and using Twitter API Client

我正在尝试使用 Fabric 创建推文的回收视图。但是每次我在使用 Fabric 进行身份验证后尝试创建一个 TwitterApiClient 时,我得到的都是错误 "Have you Authenticated with Twitter?" 这是代码。

    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
    Fabric.with(this, new Twitter(authConfig));
    setContentView(R.layout.activity_main);
    ButterKnife.inject(this);

    TwitterApiClient twitterApiClient = Twitter.getApiClient();
    StatusesService statusesService = twitterApiClient.getStatusesService();
    statusesService.userTimeline(null, "rickygervais", null, null, null, null, null, null, null,
            new Callback<List<Tweet>>() {
                @Override
                public void success(Result<List<Tweet>> listResult) {
                    Log.i(TWITTER_USER_TIMELINE_REQUEST, "Successfully retrieved tweets");
                    feedAdapter.updateItems(listResult.data);
                }

                @Override
                public void failure(TwitterException e) {
                    Log.e(TWITTER_USER_TIMELINE_REQUEST, e.toString());
                }
            });
}

请告诉我我是个白痴,漏掉了一些明显的东西。

更新

这是我收到错误消息的行

TwitterApiClient twitterApiClient = Twitter.getApiClient();

您的状态服务热线不正确。

你有

statusesService.userTimeline(null, "rickygervais", null, null, null, null, null, null, null,new Callback<List<Tweet>>() {

应该是

statusesService.userTimeline(session.getId(), null, null, null, null, null, null, null, null, new Callback<List<Tweet>>() {

https://dev.twitter.com/rest/reference/get/statuses/home_timeline

TwitterApiClient 需要会话才能进行 Twitter API 调用。

查看此处的文档:https://dev.twitter.com/twitter-kit/android/twitter-login

此外,要在 android 上使用来宾身份验证,请务必更新到最新版本的 SDK,1.3.0。