我正在尝试开发一个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请求,但在我的控制台上什么也没显示。
答案 0 :(得分:0)
问题不在于代码,也不在于Twitter4j库,问题在于网络配置,特别是“ NetworkOnMainThreadException”。
要解决此问题,请参见此处:How do I fix android.os.NetworkOnMainThreadException?