2017-05-02 30 views
-3

我正在尋找一種方法在應用程序的主線程中創建HttpUrlConnection。我知道android不讓它發生,並給出NetworkOnMainThread異常,但我正在尋找一種方法來解決它。在Android的主線程中連接到互聯網

*異步任務是不允許

+6

你爲什麼認爲這是明智的做法?你爲什麼認爲你的用戶會希望你的用戶界面凍結,並且你的應用可能會與ANR崩潰? – CommonsWare

+1

我知道它會凍結,但這是我上級的要求。 – Bruce

+4

你的上司爲什麼認爲這是明智的做法?您的上級爲什麼認爲您的用戶會希望您的用戶界面凍結,並且您的應用可能會與ANR崩潰? – CommonsWare

回答

1

試試這個

Executors.newSingleThreadExecutor().submit(new Runnable() { 
    @Override 
    public void run() { 
     // You can perform your task here. 
    } 
}); 
+0

謝謝。讓我看看 – Bruce

1

如果要求是,用戶不能進行交互,直到通信結束我會表現出非撤銷的對話框,很可能是進度對話框,而通信在AsyncTask中運行。