Java 已在单独的线程中获取NetworkOnMainThreadExeption

Java 已在单独的线程中获取NetworkOnMainThreadExeption,java,android,Java,Android,我正在尝试将android应用程序与Twitter连接,但我不知道我的这部分代码有什么问题: Thread thread = new Thread(){ @Override public void run() { ConfigurationBuilder builder = new ConfigurationBuilder(); builder.setOAuthConsumerKey(

我正在尝试将android应用程序与Twitter连接,但我不知道我的这部分代码有什么问题:

Thread thread = new Thread(){
            @Override
            public void run() {
                ConfigurationBuilder builder = new ConfigurationBuilder();
                builder.setOAuthConsumerKey(TWITTER_CONSUMER_KEY);
                builder.setOAuthConsumerSecret(TWITTER_CONSUMER_SECRET);
                Configuration configuration = builder.build();

                TwitterFactory factory = new TwitterFactory(configuration);
                twitter = factory.getInstance();
                try {
                    // Error is here
                    requestToken = twitter.getOAuthRequestToken(TWITTER_CALLBACK_URL); 
                    startActivity(new Intent(Intent.ACTION_VIEW, Uri
                            .parse(requestToken.getAuthorizationURL())));
                } catch (TwitterException e) {
                    e.printStackTrace();
                }
            }
        };

    thread.run();
为什么在使用新线程的情况下仍出现NetworkOnMainThreadException?
感谢您的帮助。

呼叫而不是
thread.run()
run()
方法不会生成新线程。

如果我使用start()而不是run(),我会遇到其他异常:调用FromErrorThreadException。请发布堆栈跟踪,然后在
runOnUIThread
中尝试catch块。您不能在另一个线程而不是UI线程本身中启动活动或修改UI。希望这有帮助。@Kai-hmm。。我也想到了。但是,
startActivity
是线程安全的,请根据Use AsyncTask。