我在 documents 中使用了确切的示例代码,但我根本没有收到 SearchTimeline 的推文,即

No Tweet

如果我用 UserTimeline 替换,我会得到结果,但当然我的用例需要 SearchTimeline。有没有人设法让 SearchTimeline 工作?另外(仅供引用)我为我的应用程序设置了 Fabric,并且能够使用他们的 Twitter 帐户登录用户。

来自文档的确切代码失败了:
public class SearchTimelineFragment extends ListFragment {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        final SearchTimeline searchTimeline = new SearchTimeline.Builder()
                .query("#twitterflock")
                .build();
        final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(getActivity())
                .setTimeline(searchTimeline)
                .build();
        setListAdapter(adapter);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        return inflater.inflate(R.layout.timeline, container, false);
    }
}

此外,我正在开发中没有 PlayStore 的存在,以防万一。

更多

添加回调块不会导致失败或成功消息。就好像代码完全没有执行一样:没有服务器调用。但是,onCreate 被调用。再次,如果我用 UserTimeline 替换,我会得到结果。
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d(TAG, "onCreate");
        final SearchTimeline searchTimeline = new SearchTimeline.Builder()
                .query("#twitterflock")
                .build();
        final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(getActivity())
                .setTimeline(searchTimeline)
                .setOnActionCallback(new Callback<Tweet>() {
                    @Override
                    public void success(Result<Tweet> result) {
                        Log.d(TAG, "SearchTimeline successful");
                    }

                    @Override
                    public void failure(TwitterException e) {
                        Log.d(TAG, "SearchTimeline failed");
                        e.printStackTrace();
                        ;
                    }
                })
                .build();
        setListAdapter(adapter);
    }

我也在使用 android.support.v4.app.ListFragment;

最佳答案

那是因为您在 onCreate 中设置了列表适配器,而 onCreateView 在 onCreate 之后调用。

在 OnCreateView 中设置 listAdapter。

关于android - Twitter UserTimeline 有效,但 SearchTimeline 似乎从未调用过服务器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33351661/

10-10 01:51