2017-01-08 95 views
1

我一直有這個問題,反覆幾次請求(Url不同參數仍然),永久掛起/卡住的NetworkManager。大多數情況下,它一直運行到第四個請求,然後在第五個請求掛起。Codenameone NetworkManager掛起幾個請求後

請查看代碼

ConnectionRequest r = new ConnectionRequest(); 
r.setUrl(url); 
r.setPost(false); 
r.setDuplicateSupported(true); 
NetworkManager.getInstance().addToQueueAndWait(r); // hangs right here  
Reader reader = new InputStreamReader(new ByteArrayInputStream(r.getResponseData()), "UTF-8"); 

我看過其他幾個人有同樣的問題,我確實添加了setDuplicateSupported(真)仍然得到同樣的錯誤。

任何幫助真的很感激。我非常感謝Shai(來自代號1)非常支持。

謝謝,

回答

0

addToQueueAndWait字面上等待,直到網絡請求完成並且在這種情況下,它不能完成或超時。您可以將超時設置爲較低的值,以使其更優雅地失敗。我建議您查看您正在製作的請求以及它失敗的原因。

我也建議看看網絡監視器,看看發生了什麼。

+0

嗨shai, 我確實看過網絡監視器,因爲它沒有顯示任何錯誤信息,而是看到了響應文本。這是我正在做的。 我有一個對話框中的電子郵件按鈕和文本框。當我點擊按鈕時,事件將被解僱,並調用該方法來拉取傳遞電子郵件的信息。 addToQueueAndWait響應前4次然後掛起,但在網絡監視器中,每次單擊時都會看到請求,並且還會看到響應。 – Ravimaran

+0

你在你的回調方法中做什麼,比如顯示一個對話框什麼的?如果您在調試器中按暫停,您應該看到線程卡住的位置。 –