Twitter4J Android搜索查询返回Null

时间:2019-05-25 13:09:16

标签: java android twitter twitter4j

我正在尝试开发一个android应用程序,出于我的目的,我必须能够根据用户搜索的Hashtag搜索推文。我正在使用Twitter4j库,并且还具有使用者API密钥/秘密和令牌。

到目前为止,我已经尝试过:

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        BottomNavigationView navView = findViewById(R.id.nav_view);
        mTextMessage = findViewById(R.id.message);
        navView.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);


        // Twitter 4j 25.May.2019 only for test right now
        ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
        configurationBuilder.setDebugEnabled(true)
                .setOAuthConsumerKey("ABC")
                .setOAuthConsumerSecret("ABC")
                .setOAuthAccessToken("ABC")
                .setOAuthAccessTokenSecret("ABC");

        TwitterFactory tf = new TwitterFactory(configurationBuilder.build());
        final Twitter twitter = tf.getInstance();
        Query query = new Query("twitter4j");
        try {
            QueryResult result = twitter.search(query);
            for (Status status : result.getTweets()) {
                System.out.println("@" + status.getUser().getScreenName() + ":" + status.getText());
            }
        } catch (TwitterException te) {
            System.out.println(te.getMessage());
        }

我希望Twitter发出一些JSON请求,但在我的控制台上什么也没显示。

1 个答案:

答案 0 :(得分:0)

问题不在于代码,也不在于Twitter4j库,问题在于网络配置,特别是“ NetworkOnMainThreadException”。

要解决此问题,请参见此处:How do I fix android.os.NetworkOnMainThreadException?